Friday, December 20, 2019

The joy of safety interlocks









Interlocks are safety features designed to keep something dangerous from happening accidentally. As is shown above, they chain together two or more operations.

 

For example, if you were busy talking on a cell phone (as shown above) you might forget to put a foot on the brake pedal before trying to shift the automatic transmission from park into reverse or drive. Cars made after 2006 have a mechanism called a Brake-Transmission-Shift-Interlock-(BTSI) which keeps you from moving the shift lever until you have depressed the brake pedal.




























There is an interlock in the natural gas control valve on our water heater. An adjustable thermostat turns the gas supply for a main burner on and off to keep the water at a set temperature. There is a standing pilot light (a small flame) to light the main burner. The pilot light has a safety interlock that prevents the main gas flame from trying to go on, unless the pilot has been previously lit.



























A thermocouple exposed to the pilot flame holds a solenoid valve for its gas supply open. As shown above, this results in complicated Lighting Instructions. Step 8 calls for holding down the gas control knob for a minute after the pilot is lit (so the thermocouple can heat up).

During servicing or maintenance of equipment it may be possible to defeat interlocks, and create hazardous conditions. This can be avoided using safety procedures known as Lock Out Tag Out. Back on February 18, 2011 I blogged about More on mistake-proofing: lock out what you don’t want to happen. An article by John A. Palmer and David A. Danaher at EC&M on November 1, 2004 titled A series of preventable events leading to a power plant explosion described a horrible example with $500 million in damages.




























Software also need interlocks. An article in Shark Tank at Computerworld on December 6, 2019 titled Shell Game described debugging of a shell script which ran a chain of nine programs (as shown above). Each was to have produced an output file for use as input in the following program. The debugger tried working backwards, and eventually found all the output files were missing, but the programs didn’t check before trying to run!

A cartoon of a driver talking on his cell phone was adapted from one at Wikimedia Commons.  

No comments: