Board safety

From RepRap
Revision as of 06:16, 31 July 2016 by PRZ (talk | contribs) (Implementation: Restructure table)
Jump to: navigation, search

Board/Firmware Safety of a FFF printer

An important part of 3D printer safety is handled by its control board and firmware combination.

The purpose of this page is to evaluate the implementation of safeties. Other safeties shall be considered for 3D printers, but they are outside the scope of this page.

Codes used

The following table could be based on the analysis of the software or on tests
Results :

  • 'X' if analysis confirm compliance, 'N' if not, 'NP' if partial (e.g. not all loops)
  • 'I' indicates that the safety could be implemented but depends from hardware choices, e.g. killing the power supply depends from installation of a relay
  • 'T' if safety physically tested ok, 'F' if physical failed completely 'FP' if failed partially

Tests and analysis shall be carried on all loops, a partial failure or non compliance shall be explained in notes
If analysis is not possible (closed source software) and test impossible to do, e.g. a watchdog in the processor, test shall be considered failed

  • '-' indicates that it is not applicable
  • a value could follow the result tag (e.g. delay to stop X2000 or T1850)
  • a note reference could follow the result tag (e.g. NP (12))
  • '?' for unknown answer

One column is for a combination of hardware and firmware, so there could be multiple columns for one board/one firmware

Phases

Four phases could be defined for safety handling, as in some phases, incident detection by analysis may not be possible. By example, if you are in ramp-up phase, you may not detect a shorted circuit as it is normal that the power is at its maximum, while max power when stabilised is abnormal. However, you can link the power to the temperature increase/decrease rate which allow detecting other problems.

The phases for heaters are:

A. Printer is idle and heater is supposed to be cold.

B. Heater is supposed to be heating up.

C. Heater is close to target temperature and is supposed to maintain that temperature.

D. Heater is supposed to be cooling down.


Implementation

Board/firmware safety
Firmware myfirm
Firmware revision 0.0
myBoard
Board revision 0.9
1 Thermistor shorted/disconnected warning at startup – all heaters – define warning type
2 Thermistor shorted/disconnected at startup prevent heating – all heaters
3 Thermistor shorted/disconnected during run warning – all heaters – define warning
4 Thermistor shorted/disconnected during run stop heating – all heaters
5 Temperature rise too slow stop heating – all heaters
6 Temperature rise too fast stop heating – all heaters
7 Too high temperature stop heating – all heaters
8 Too low temperature stop heating (untrustable sensor) – all heaters
9 Unstable temperature stop heating – all heaters
10 Filter thermal sensor noise – all heaters
11 Temperature rising while heating stopped give local warning (sound) – all heaters
12 Temperature rising while heating stopped give warning on remote controller – all heaters
13 Temperature rising while heating stopped kill power – all heaters
14 Heating active while printer not running stopped after a timeout for hotends – delay in sec .
15 Heating active while printer not running stopped after a timeout for bed heater
16 Heating active while printer not running stopped after a timeout for chamber heater
17 Reset/boot stop all heating
18 Reset/boot kill power (relay command or ATX power supply deactivation)
19 Watchdog in the processor (interruption while software is freezing)
20 Watchdog external (tick on a processor pin)
21 E-stop connected on board – precise action
22 Fuse/safety on board on 3.3V – precise type and current
23 Fuse/safety on board on 5V – precise type and current
24 Fuse/safety on board for heating power voltage (12/24V) – precise type and current
25 Beep output or beeper on board
  • Stop heater mean the FET is in non conductive state or SSR/relay signal is down.
  • Kill power means that all heater FET are no longer electrically supplied (in case of heater FET failure conductive).

Watchdog [1] (firmware freeze detection)

Watchdog are delicate to implement [1] in multitasking processus [2] and they could work in one case and not in another case.

To check if they are working in all cases need deep understanding of the firmware and guaranty their proper operation is not easy.
It is advisable that the reviewer justify his position on this particular subject.
In addition, if the watchdog is not physically implemented (say it is an interrupt in the processor and not a pin activation), its action cannot be easily tested.

See also

References

External links


In addition to site licence GFDL1.2, this page is also released under license CC BY-SA 4.0