Welcome! Log In Create A New Profile

Advanced

Easy Failsafe Temptable Idea

Posted by epengr 
Easy Failsafe Temptable Idea
June 09, 2011 01:07PM
My Prusa's down with a broken thermistor (damn glass beads...), so I haven't tried this yet.

It has always bothered me that an open circuit reads as 3 degrees, which would result in full-time full power to the heater if there was a wiring problem (unless there's something in the PID loop to catch this?).

Assuming this is a real issue and not something I've made up, and easy solution would be to add another value at the end of the temptable:

{32,767, 10000}

or something like that. Since (at least tonokip) only uses 2-point interpolation, an analog value over 1008 will read as a very high temp and shut the heater off.

Thoughts?
Re: Easy Failsafe Temptable Idea
June 10, 2011 08:14PM
Well...

Adding {1010, 1234} as a 21st entry does give a temp of 1234 for an open thermistor circuit, but that doesn't seem to result in the power being cut to the heater. The sudden change must confuse the PID loop. I guess a fail-safe check would require digging into the firmware directly.
Re: Easy Failsafe Temptable Idea
June 14, 2011 02:53AM
i thought these were done in hardware, specefically to protect against firmware glitches?
Re: Easy Failsafe Temptable Idea
June 14, 2011 07:39PM
epengr Wrote:
-------------------------------------------------------
> Well...
>
> Adding {1010, 1234} as a 21st entry does give a
> temp of 1234 for an open thermistor circuit, but
> that doesn't seem to result in the power being cut
> to the heater. The sudden change must confuse the
> PID loop. I guess a fail-safe check would require
> digging into the firmware directly.

I think the look-up table routine that converts readings to temperature assumes a monotonic function.
Re: Easy Failsafe Temptable Idea
June 14, 2011 09:16PM
@hintss: The firmware IS the hardware's software, and protection would have to be there. It could be protected in the PID loop, but if mine goes open circuit and reads 3, the power stays on. It may take time, I have experimented too far as it make me nervous.

The only other hardware failsafe possible would be to choose a resistance that would reach an safe equilibrium temperature at full power. I've read that this has been considered in some designs, but there are enough variables in any given build that it could be substantially different.

@brnrd: From what I saw of the temp table function, it just uses a two point linear interpolation. If analog value is over X, determine slope between X and X+1 and use that to determine the temperature.
Re: Easy Failsafe Temptable Idea
June 15, 2011 07:28AM
Why not panic/pause/shut down heat if the temp reads below a previously set ambient temperature, like 10-20 deg C?
Or panic if the difference between two readings are above 100 deg C, as something clearly is wrong.


--
-Nudel
Blog with RepRap Comic
Re: Easy Failsafe Temptable Idea
June 17, 2011 11:09PM
Teacup has a (default disabled) heater sanity check feature. If we're pouring power into the heater but the temperature isn't rising, we panic and shut everything down. If we turn the heater off and temperature isn't falling, we panic and shut everything down (as this may indicate a fire). It hasn't been tested much and almost definitely needs tweaking, but it may be what you're looking for.

With this approach, even if you encounter a failure mode where the thermistor constantly reads (eg) 55 degrees, it'll be picked up as a fault.


-----------------------------------------------
Wooden Mendel
Teacup Firmware
Sorry, only registered users may post in this forum.

Click here to login