←back to thread

325 points ragebol | 1 comments | | HN request time: 0.211s | source
Show context
ManDeJan ◴[] No.41530162[source]
A neat project for sure but as it stands this has major safety issues. The control logic is able to lock up and keep the boilers heating element in an forever "on" state till something snaps. I couldn't find a mention of safety in the manual nor see any mechanical safety failsafes in case of overheating.
replies(5): >>41530411 #>>41531453 #>>41532029 #>>41532521 #>>41532848 #
1. cruffle_duffle ◴[] No.41532029[source]
Lots of 3d printers used to have issues like this with the firmware controlling their hotends. They’d fail on and start a fire. Modern Klipper and Marlin firmware detect wild or unexpected temp swings and pull the “emergency stop” cord to shut it all down.

And speaking of safety, old FPV flight control software didn’t handle a very common mistake. It is very easy to put the wrong propeller on a motor. For example you might accidentally put on the counterclockwise propeller on the motor that spins clockwise. The result is when you arm the quad (as in turn on the motors), it flips its shit because the quad starts moving in a completely unexpected way. The flight control software is designed to “lock the angle (attitude) of the quad in and fight any uncommanded deviation”. Well, a backwards prop produces a hell of an uncommanded deviation!! So the controller tells the motor to spin faster to compensate but all that does is make things worse as the backwards prop pushes the thing in the exact wrong way. So it becomes an out of control quad that can and will cause property damage and injury (the propellers on a quad are large, very sharp and attached to very powerful motors. Coming into contact with a spinning propeller will send you to the hospital). This was a big problem in tight spaces like races and stuff.

A while ago somebody submitted a pull request that added a safety. When first arms, if the quad starts to behave “wrong” or “unexpected”, it immediately disarms. From what I recall it was actually fairly simple to detect too… if the “error” in the PID loop got too high it means something is very wrong mechanically and it’s best shut down. Countless fingers have no doubt been saved by this patch.

It’s probably very similar detection code to what is in 3d printer firmware or espresso machine firmware. If the PID error is “unexpected” something is mechanically wrong and it needs to shut down before Bad Things happen.