Alarm disabling unit for production equipment

From uCtrl
This page is kept for historical interest. It may document projects or methods that are obsolete and/or no longer relevant. The information here is not kept up-to-date.

I built this module for Sensonor ASA back in 2007, I have no idea if it is alive today.
ADU2 installed on equipment

Information

The purpose of this module is to make it possible to the operator to reset the alarm on the production equipment, but still make sure that the alarm sounds at the next fault. Today there is no way to turn off the alarm until the situation is cleared, but with this module that is now possible. Earlier the operators would remove the relay for the alarm, this gave an unfortunate long stop time if the relay was not placed back and the equipment faulted silently.

Alarm reset

When a alarm situation occurs the red LED flashes and the production alarm sounds, by pressing "reset alarm" the voltage to the sound alarm is cut. The red LED lights continuously when the alarm is reset. When the alarm situation is no more the red LED turns off and the voltage to the sound alarm is restored. When a new fault occurs the procedure is repeated.

I/O

Inputs

  1. PD.0 Reset button
  2. PD.1 Stack lights signal

Outputs

  1. PB.0 Red LED
  2. PB.1 Power LED
  3. PB.2 Stack lights relay N.O

D-Sub 9-pins

Pin Function Color
1 24V Orange
2 0V Orange/white
3 Stack lights in + (to optoisolator) Green
4 Stack lights in - (to optoisolator) Green/white
5 Stack lights relay + Blue
6 Stack lights relay - N.O Blue/white

Drawings

Panel front

Panel-alarm-avstilling-rtc-4lw80q.png

Inside equipment

Alarm-disabling-unit-2-connections-z4nxzg.png

Schematic drawing

Alarm-disabling-unit-2-circuit-8g2m14.png

Internal connectors

Alarm-disabling-unit-2-internal-connections-v4l1zg.png

  1. Signal from internal reset button (With resistor)
  2. 24V supply voltage
    • Red : + (D-sub 1)
    • Blue : - (D-sub 2)
  3. Status LEDs
    • Red : + Red LED
    • Green : + Green LED
  4. Signal from stack lights
    • Red : + (D-sub 3)
    • Blue : - (D-sub 4)
  5. GND to LEDs and switch
  6. 24V to stack lights relay (D-sub 5)
  7. GND to stack lights relay (D-sub 6)

Images

Parts list

Qty. Part
1 AVR ATtiny2313-20PU, DIL-20, 20 MHz, 18 I/Os
1 Capacitor, aluminium electrolytic, 10 µF, 25V
2 Capacitor, aluminium electrolytic, 47 µF, 25V
1 Capacitor, ceramic, 1 nF, 100V
2 m Control cable, 8-cores, shield, 0.14mm2, 250 V, Ø 5.1mm
1 D-Sub plastic hood, 9-pin, black
1 D-Sub soldering cups, 9 pin female
1 D-Sub soldering cups, 9 pin male
1 DIL socket, 20-pin, 7.62mm
1 DIL socket, 6-pin, 7.62mm
1 Diode, rectifier, 1 A, 400V, 1N4004
1 Enclosure, plastic (1591 FL), 120x65x40mm, flange
1 Fuse 5x20 mm, 400 mA, fast-acting
1 Fuse holder, open, PCB, 5x20mm
1 Fuse holder, open, PCB, Protective cover
1 Heat conducting film for heatsink, Adhesive, TO220
1 Heatsink, 15K/W @ 4W, 28mm 7g, TO220
1 LED 5mm clear, Red, 2.1V, 20mA, 7.000mcd, 20°
1 LED 5mm coloured clear, Green, 2.1V, 20mA, 30mcd, 10°
1 LED holder 5mm, Black plastic
1 LED lens 5mm, CLF 280, Red
1 Optocoupler, single, CNY17F-3, DIL-6
32 cm2 PCB, stripboard, 100x160mm, 160cm2
1 Resistor, carbon film, 0.25W, 150 Ω, 5%
3 Resistor, carbon film, 0.25W, 330 Ω, 5%
2 Resistor, carbon film, 0.25W, 4.7 kΩ, 5%
2 Resistor, carbon film, 0.25W, 10 kΩ, 5%
1 Resistor, metal film, 0.6W, 2.2 kΩ, 1%
1 Spacer, round unthreaded, 3mm, Ø6mm, Delrin
11 Straight pin header, female, Single row, 2.54mm
11 Straight pin header, male, Single row, 2.54mm
1 Switch, push-button, 1-pole, 1A, 50VAC, on-(off)
1 Transistor, NPN, 100 mA, 45V, 0.5W, BC547B
1 Voltage regulator +5V, 1 A, 7805PI

Source code

Template:Basic code

'--------------------------------------------------------------
' Thomas Jensen
'--------------------------------------------------------------
' file: ALARM_DISABLING_UNIT_SA_TEST_v2.1_No_Long_Stop_RTC
' date: 01/05/2010
'--------------------------------------------------------------
$regfile = "attiny2313.dat"
$crystal = 8000000
Config Watchdog = 1024
Config Portb = Output
Config Portd = Input

Dim A As Byte
Dim Lifesignal As Integer
Dim Lystaarn_delay As Integer
Dim Reset_aktiv As Bit
Dim Led As Integer
Dim Service_exit As Word
Dim Service_enter As Integer

Lifesignal = 11
Lystaarn_delay = 20
Reset_aktiv = 0
Led = 0
Service_enter = 0
Service_exit = 0

Portb = 0

Portb.1 = Not Portb.0 'boot
For A = 1 To 10
    Portb.0 = Not Portb.0
    Waitms 200
Next A

Portb = 0

Waitms 1000

Start Watchdog

Main:
'no longer alarm situation
If Lystaarn_delay = 0 Then
   Reset_aktiv = 0
   Portb.2 = 0
   End If

'stack light status
If Pind.1 = 0 Then Lystaarn_delay = 20
If Lystaarn_delay > 0 Then Decr Lystaarn_delay

'alarm triggered, reset possible
If Lystaarn_delay > 0 And Pind.0 = 1 Then Reset_aktiv = 1

'set red led
If Lystaarn_delay > 0 Then
   If Reset_aktiv = 0 And Led = 0 Then
      Led = 5
      Portb.2 = 0
   End If
   If Reset_aktiv = 1 Then
      Led = 5
      Portb.2 = 1
   End If
End If

'handle red led
If Led > 0 Then Decr Led
If Led = 4 Then Portb.0 = 1
If Led = 2 Then Portb.0 = 0

'lifesignal
If Lifesignal > 0 Then Lifesignal = Lifesignal - 1
If Lifesignal = 3 Then Portb.1 = 1
If Lifesignal = 1 Then Portb.1 = 0
If Lifesignal = 0 Then Lifesignal = 11

'handle service mode timer
If Pind.0 = 1 And Portb.0 = 0 Then Incr Service_enter
If Pind.0 = 0 Then Service_enter = 0
If Service_enter = 200 Then
   Service_enter = 0
   For A = 1 To 10
      Portb.0 = Not Portb.0
      Reset Watchdog
      Waitms 100
   Next A
   Goto Service
End If

Reset Watchdog
Waitms 100
Goto Main
End

'service loop
Do
Service:
Portb.0 = 0
Portb.2 = 1

'lifesignal
Portb.1 = Not Portb.1

'exit loop
If Pind.0 = 1 Or Service_exit > 54000 Then
   Portb.1 = 0
   Lifesignal = 11
   Service_exit = 0
   Lystaarn_delay = 20
   Reset_aktiv = 1
   Goto Main
End If

'do loop
Incr Service_exit
Reset Watchdog
Waitms 100
Loop
End