From dab1c45b7f38a49cce96f2f5e2d74db31fef9a0d Mon Sep 17 00:00:00 2001 From: jbruce12000 Date: Wed, 11 May 2022 09:23:02 -0400 Subject: [PATCH] removing config.py.EXAMPLE and docs describing it --- README.md | 6 +- config.py.EXAMPLE | 150 ---------------------------------------------- 2 files changed, 2 insertions(+), 154 deletions(-) delete mode 100644 config.py.EXAMPLE diff --git a/README.md b/README.md index c00c9c4..580abb4 100644 --- a/README.md +++ b/README.md @@ -84,11 +84,9 @@ If you want to deploy the code on a PI for production: ## Configuration -All parameters are defined in config.py, just copy the example and review/change to your mind's content. +All parameters are defined in config.py, review/change to your mind's content. - $ cp config.py.EXAMPLE config.py - -You should change, test, and verify PID parameters in config.py. Here is a [PID Tuning Guide](https://github.com/jbruce12000/kiln-controller/blob/master/docs/pid_tuning.md). +You should change, test, and verify PID parameters in config.py. Here is a [PID Tuning Guide](https://github.com/jbruce12000/kiln-controller/blob/master/docs/pid_tuning.md). There is also an [autotuner](https://github.com/jbruce12000/kiln-controller/blob/master/docs/ziegler_tuning.md). Be patient with tuning. No tuning is perfect across a wide temperature range. You may want to change the configuration parameter **sensor_time_wait**. It's the duty cycle for the entire system. It's set to two seconds by default which means that a decision is made every 2s about whether to turn on relay[s] and for how long. If you use mechanical relays, you may want to increase this. At 2s, my SSR switches 11,000 times in 13 hours. diff --git a/config.py.EXAMPLE b/config.py.EXAMPLE deleted file mode 100644 index f03f2e4..0000000 --- a/config.py.EXAMPLE +++ /dev/null @@ -1,150 +0,0 @@ -import logging - -# uncomment this if using MAX-31856 -#from lib.max31856 import MAX31856 - -######################################################################## -# -# General options - -### Logging -log_level = logging.INFO -log_format = '%(asctime)s %(levelname)s %(name)s: %(message)s' - -### Server -listening_ip = "0.0.0.0" -listening_port = 8081 - -### Cost Estimate -kwh_rate = 0.1319 # Rate in currency_type to calculate cost to run job -currency_type = "$" # Currency Symbol to show when calculating cost to run job - -######################################################################## -# -# GPIO Setup (BCM SoC Numbering Schema) -# -# Check the RasPi docs to see where these GPIOs are -# connected on the P1 header for your board type/rev. -# These were tested on a Pi B Rev2 but of course you -# can use whichever GPIO you prefer/have available. - -### Outputs -gpio_heat = 23 # Switches zero-cross solid-state-relay - -### Thermocouple Adapter selection: -# max31855 - bitbang SPI interface -# max31856 - bitbang SPI interface. must specify thermocouple_type. -max31855 = 1 -max31856 = 0 -# see lib/max31856.py for other thermocouple_type, only applies to max31856 -# uncomment this if using MAX-31856 -#thermocouple_type = MAX31856.MAX31856_S_TYPE - -### Thermocouple Connection (using bitbang interfaces) -gpio_sensor_cs = 27 -gpio_sensor_clock = 22 -gpio_sensor_data = 17 -gpio_sensor_di = 10 # only used with max31856 - -######################################################################## -# -# duty cycle of the entire system in seconds -# -# Every N seconds a decision is made about switching the relay[s] -# on & off and for how long. The thermocouple is read -# temperature_average_samples times during and the average value is used. -sensor_time_wait = 2 - - -######################################################################## -# -# PID parameters -# -# These parameters control kiln temperature change. These settings work -# well with the simulated oven. You must tune them to work well with -# your specific kiln. Note that the integral pid_ki is -# inverted so that a smaller number means more integral action. -pid_kp = 25 # Proportional -pid_ki = 200 # Integral -pid_kd = 200 # Derivative - - -######################################################################## -# -# Initial heating and Integral Windup -# -# During initial heating, if the temperature is constantly under the -# setpoint,large amounts of Integral can accumulate. This accumulation -# causes the kiln to run above the setpoint for potentially a long -# period of time. These settings allow integral accumulation only when -# the temperature is close to the setpoint. This applies only to the integral. -stop_integral_windup = True - -######################################################################## -# -# Simulation parameters -simulate = True -sim_t_env = 60.0 # deg C -sim_c_heat = 100.0 # J/K heat capacity of heat element -sim_c_oven = 5000.0 # J/K heat capacity of oven -sim_p_heat = 5450.0 # W heating power of oven -sim_R_o_nocool = 0.1 # K/W thermal resistance oven -> environment -sim_R_o_cool = 0.05 # K/W " with cooling -sim_R_ho_noair = 0.1 # K/W thermal resistance heat element -> oven -sim_R_ho_air = 0.05 # K/W " with internal air circulation - - -######################################################################## -# -# Time and Temperature parameters -# -# If you change the temp_scale, all settings in this file are assumed to -# be in that scale. - -temp_scale = "f" # c = Celsius | f = Fahrenheit - Unit to display -time_scale_slope = "h" # s = Seconds | m = Minutes | h = Hours - Slope displayed in temp_scale per time_scale_slope -time_scale_profile = "m" # s = Seconds | m = Minutes | h = Hours - Enter and view target time in time_scale_profile - -# emergency shutoff the profile if this temp is reached or exceeded. -# This just shuts off the profile. If your SSR is working, your kiln will -# naturally cool off. If your SSR has failed/shorted/closed circuit, this -# means your kiln receives full power until your house burns down. -# this should not replace you watching your kiln or use of a kiln-sitter -emergency_shutoff_temp = 2264 #cone 7 - -# If the kiln cannot heat or cool fast enough and is off by more than -# kiln_must_catch_up_max_error the entire schedule is shifted until -# the desired temperature is reached. If your kiln cannot attain the -# wanted temperature, the schedule will run forever. This is often used -# for heating as fast as possible in a section of a kiln schedule/profile. -kiln_must_catch_up = True -kiln_must_catch_up_max_error = 5 #degrees - -# thermocouple offset -# If you put your thermocouple in ice water and it reads 36F, you can -# set set this offset to -4 to compensate. This probably means you have a -# cheap thermocouple. Invest in a better thermocouple. -thermocouple_offset=0 - -# some kilns/thermocouples start erroneously reporting "short" -# errors at higher temperatures due to plasma forming in the kiln. -# Set this to False to ignore these errors and assume the temperature -# reading was correct anyway -honour_theromocouple_short_errors = False - -# number of samples of temperature to average. -# If you suffer from the high temperature kiln issue and have set -# honour_theromocouple_short_errors to False, -# you will likely need to increase this (eg I use 40) -temperature_average_samples = 40 - -# Thermocouple AC frequency filtering - set to True if in a 50Hz locale, else leave at False for 60Hz locale -ac_freq_50hz = False - -# There are all kinds of emergencies that can happen including: -# - temperature is too high (emergency_shutoff_temp exceeded) -# - lost connection to thermocouple -# - unknown error with thermocouple -# - too many errors in a short period from thermocouple -# and some people just want to ignore all of that and just log the emergencies but do not quit -ignore_emergencies = False