Commit Graph

125 Commits

Author SHA1 Message Date
Andrew de Quincey
ec3c825e8e fix percent calculation 2021-05-01 20:27:48 +01:00
Andrew de Quincey
83512b1faf fix simulated sensor 2021-05-01 17:34:13 +01:00
Andrew de Quincey
610ad4cdcd calculate bad percent in temperature thread to prevent threading/boundary issues 2021-05-01 17:32:44 +01:00
Andrew de Quincey
c955c1f595 detect too many errors and shutdown 2021-05-01 15:37:30 +01:00
Andrew de Quincey
74a4aa3770 fix config.temperature_average_samples 2021-05-01 15:16:03 +01:00
Andrew de Quincey
9c77d1ab30 add config parameters for controlling temperature 2021-05-01 15:02:51 +01:00
Andrew de Quincey
816043b012 Merge branch 'master' into ziegler
# Conflicts:
#	lib/oven.py
2021-05-01 11:51:46 +01:00
Andrew de Quincey
7bbc241578 Merge branch 'master' into temp
# Conflicts:
#	lib/oven.py
2021-05-01 11:50:40 +01:00
Andrew de Quincey
93332b7d47 Merge branch 'master' into logger
# Conflicts:
#	lib/oven.py
2021-05-01 11:49:24 +01:00
Jason Bruce
d60cc535d0 adding support to prevent integral windup 2021-04-30 20:27:19 -04:00
Andrew de Quincey
a7fafeed65 add recorder code 2021-04-30 22:23:11 +01:00
Andrew de Quincey
6af55eeac6 simple kiln data logger 2021-04-29 23:02:54 +01:00
Jason Bruce
775eb0a0f2 fixing divide by zero bug when thermocouple read fails five times in a
row
2021-04-29 15:08:53 -04:00
Andrew de Quincey
e1be00e2e3 fix comment 2021-04-28 23:38:36 +01:00
Andrew de Quincey
2963f7363b Merge branch 'master' into temp 2021-04-28 23:16:32 +01:00
Jason Bruce
f1b8cdc91c added config.gpio_sensor_di to the config file and the code for
max-31856. Thanks Mark Tilles.
2021-04-28 23:15:54 +01:00
Andrew de Quincey
9b08342038 rebuild temperature error handling and smoothing 2021-04-28 23:10:48 +01:00
Jason Bruce
e16aab8e66 added config.gpio_sensor_di to the config file and the code for
max-31856. Thanks Mark Tilles.
2021-04-28 16:17:22 -04:00
Jason Bruce
1d26ae973f removed MAX31956Error import because it does not exist 2021-04-19 08:05:40 -04:00
Jason Bruce
d2206a82b2 Merge branch 'master' of github.com:jbruce12000/kiln-controller 2021-04-14 18:16:57 -04:00
Jason Bruce
c76b4331f1 - added a few significant digits in logging statements to temps
- changed the wording of the emergency shutoff temp setting
2021-04-14 18:16:03 -04:00
Andrew de Quincey
07dbae9398 Add name of profile so secondary displays can work 2021-04-08 23:51:49 +01:00
Jason Bruce
eb4c212471 - show better estimation of time kiln elements are being heated
in web client
2021-03-29 19:22:35 -04:00
Jason Bruce
a3243097c7 - big change to PID class. It was not properly handling the integral.
Essentially it was never large enough to impact the loop. The integral
has been inverted so if you want more integral, define it as a smaller
number.
- added a comment to the config about changing the temp scale
2021-03-24 08:32:06 -04:00
Jason Bruce
2831c3094a - schedule shifting when cooling too slowly added
- increase window size where PID control takes effect
- average thermocouple readings instead of taking max
2021-03-20 22:09:44 -04:00
jbruce12000
b524360443 - another comment for a feature to fix 2021-03-17 20:14:00 -04:00
jbruce12000
a27acbace5 - comments for future work 2021-03-17 20:05:38 -04:00
Jason Bruce
8603138e66 - fixing bugs with real hardware 2021-03-14 15:45:24 -04:00
Jason Bruce
c5b7f21044 - complete rewrite of oven class
- simulation more accurate
- added kiln_must_catch_up functionality
- added max31856 support
2021-03-14 15:16:03 -04:00
Ryan J. Dillon
bac1a2d789 Remove space in print statements 2020-12-22 15:31:06 +01:00
Ryan J. Dillon
084d302b43 Prevent CPU overload on idle condition 2020-12-22 15:29:11 +01:00
Ryan J. Dillon
9de2db739a Remove trailing whitespace 2020-12-22 15:27:55 +01:00
Jason Bruce
217482b10c - adding a smoker service that restarts a specific schedule if the power goes out 2020-03-18 04:31:37 -09:00
Jason Bruce
8046d9c214 - bug with skipping data, index must be an int 2019-04-24 22:33:00 -04:00
Jason Bruce
3718d0952a - first stab at getting code python3 compliant 2019-04-18 11:44:54 -04:00
Jason Bruce
edea921d88 - never used spi, so fixing some leftovers for an issue 2019-03-03 18:24:52 -05:00
jbruce12000
e72cbe0b6c - implemented thermocouple_offset 2019-02-27 21:33:10 -05:00
jbruce12000
6e2ac3c05b - more filtering 2018-12-23 13:13:38 -05:00
jbruce12000
85dad99945 - filtering still 2018-12-23 13:03:40 -05:00
jbruce12000
ed2445be4f - trying more filtering 2018-12-23 12:46:22 -05:00
jbruce12000
4b7d30754a - more filtering 2018-12-23 12:37:49 -05:00
jbruce12000
3a89a6149f - trying to filter thermocouple noise in software 2018-12-23 12:14:08 -05:00
jbruce12000
5e5abe5b32 - add startat parameter to profile runs to allow for restarting at any point in a run. handle power outages, accidently hitting stop button etc. 2018-12-21 15:13:12 -05:00
jbruce12000
d8d389d3c7 - must import math module 2018-12-06 18:00:03 -05:00
jbruce12000
505e2c0aca - remove door and cool from gpio init 2018-12-01 19:54:29 -05:00
jbruce
871f5fe65e - added another FIXME to move the FIXMEs to the Oven class 2018-11-30 15:27:10 -05:00
jbruce
e25a37c867 - adding some FIXME ideas for later implementation 2018-11-29 11:21:33 -05:00
jbruce
9641cf2b7c - last_log historical data was too big for long runs. made it always about the same size regarless of schedule length 2018-11-29 10:14:37 -05:00
jbruce12000
ef5cb6d49d - adding logging for completion 2018-11-27 16:10:36 -05:00
jbruce
b87deab01c - added shut down temp if it's exceeded, kiln shuts down 2018-11-27 13:49:46 -05:00
jbruce
6986c29de0 - removed some commented out code. added some ideas about what I might do in the future. 2018-11-27 11:42:34 -05:00
jbruce12000
624ae9e739 adding systemd service script and a script to install it as a service that runs during startup 2018-11-26 21:15:24 -05:00
jbruce12000
e8bf698212 fix init script to work with virtualenv 2018-11-26 20:36:32 -05:00
jbruce
46b0e659df - mv'ed init.d script to kiln-controller 2018-11-26 19:49:25 -05:00
jbruce
2e88f30cf6 - add NIST-linearized thermocouple conversion for accurate thermocouple readings 2018-11-26 12:57:36 -05:00
jbruce
3c04761bd0 - changing logging for seconds to integers 2018-11-23 18:16:49 -05:00
jbruce
9d5beab15f - changed hazard led temp to 1300
- removed old logging code in oven.py
2018-11-23 18:04:56 -05:00
jbruce
37a58818bb - changed the logging to record heat on/off times plus time left 2018-11-22 13:41:29 -05:00
jbruce
3cc7c4a11b - changed time step to one sec in config
- added sleep for simulations to accurately reflect a real run
2018-11-22 09:48:22 -05:00
jbruce
46ff62c9b8 - removing most of the air and cool stuff 2018-11-21 15:18:25 -05:00
jbruce
3c1f0848af - commented out a check so sim would run
- made force param always on so saves of schedule changes work as expected
2018-11-21 11:35:28 -05:00
benkrasnow
377e27e9da
Update oven.py 2018-06-09 16:22:40 -07:00
benkrasnow
35eb7d3346
Update oven.py
Added proportional output funtionality by turning the oven (SSR) on for a portion of the time_step determined by the pid loop output. So, if time_step = 1, and the pid loop is calling for .3 heat, the SSR will be on for .3 seconds, and off for .7 seconds.  I did this by adding an additional sleep.  Previously, the SSR would be on whenever pid > 0.
2018-06-09 13:42:55 -07:00
Andrew Malota
de0d3baadb add a note about GPIO collisions with system SPI 2017-12-01 18:59:07 -06:00
Andrew Malota
9874aeb1d8 another stupid oops 2017-11-30 20:05:16 -06:00
Andrew Malota
40bb54e521 be a little 'softer' with errors 2017-11-30 19:09:29 -06:00
Andrew Malota
e95a61fe3e fix a bug or two 2017-11-30 18:58:47 -06:00
Andrew Malota
87778d8c2b support for kernel spi (not bitbang) MAX38155 interface 2017-11-30 18:48:39 -06:00
Tom
9ca2842b0e unary operation made safe in error handler for Thermocouple
unary & is used with 32 bits operands. If the operand literal is not
explicitly expressed as  32bits, it can create random casting errors
depending on the Python version and the underlying implementation.
2017-09-15 15:58:29 -04:00
I.C.E.C
c31a1af8a1 add init script so we can make the picoReflow server autostart on boot, just run the commands (see readme) and it should start on boot 2016-09-03 16:34:36 +02:00
Andy Rawson
43ed42245e Add time and temperature options 2016-07-07 23:41:06 -05:00
Rob Shaw
0e14a20cbf Added config option to invert the polarity of the heater 2016-04-07 15:51:46 +01:00
sbman
00ed33b002 Added non responsive sensor emergency stop
Added an 'emergency stop' feature to stop a run if the temperature
sensor is no longer providing data.  If the temperature sensor values
are remaining stable and exactly the same for 20 time cycles
consecutively while the heat is on, the run is reset to prevent damage
to the part or the oven.
2015-07-02 10:47:34 -07:00
Thorsten Eggert
950cee1160 added MAX6675 support 2014-12-19 08:54:15 +00:00
chrono
4f7beb5238 Moved python libs to ./lib 2013-12-10 09:34:32 +00:00