Difference between revisions of "Hephais"

From HSYCO
Jump to navigation Jump to search
(Created page with "The SD3 HEPHAIS 1600 is a multi-zones fire panel. The integration with HSYCO can be accomplished via a standard Modbus RTU slave interface. This I/O Server requires HEPHAIS 16...")
 
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
The SD3 HEPHAIS 1600 is a multi-zones fire panel. The integration with HSYCO can be accomplished via a standard Modbus RTU slave interface.
 
The SD3 HEPHAIS 1600 is a multi-zones fire panel. The integration with HSYCO can be accomplished via a standard Modbus RTU slave interface.
This I/O Server requires HEPHAIS 1600 with protocol modbus JBUS V0.13
+
This I/O Server requires HEPHAIS 1600 with protocol modbus JBUS V0.13.
 +
 
 +
[[File:IO Servers Hephais Panel.png]]
  
  
Line 7: Line 9:
 
== Modbus Connections ==
 
== Modbus Connections ==
  
The HEPHAIS 1600 has a Modbus interface. The default connection parameters are:
+
The HEPHAIS 1600 has a Modbus interface.
Modbus address: 1 (can be set to 1 - 247)
+
 
communication parameters: 9600 bps, 8 bits, 1 stop bit, no parity.
+
*Modbus address: 1 (can be set to 1 - 247)
 +
 
 +
*RS-422 parameters:
 +
{| class="wikitable"
 +
| '''Baud rate'''
 +
| 9600
 +
|-
 +
| '''Data bits'''
 +
| 8
 +
|-
 +
| '''Stop bit'''
 +
| 1
 +
|-
 +
| '''Parity'''
 +
| none
 +
|-
 +
| '''Flow control'''
 +
| none
 +
|}
 +
 
 
Refer to the HEPHAIS 1600 manuals for installation, wiring and power supply requirements.
 
Refer to the HEPHAIS 1600 manuals for installation, wiring and power supply requirements.
  
Line 15: Line 36:
  
 
The Modbus-TCP/IP gateway used for the connection must support RS-422/JBUS.
 
The Modbus-TCP/IP gateway used for the connection must support RS-422/JBUS.
 +
 +
[[File:IO Servers Hephais Connections.png]]
  
 
== HSYCO Configuration ==
 
== HSYCO Configuration ==
 +
You can define and connect more than one HEPHAIS panel on the same Modbus bus gateway or through different gateways.
 +
 +
Add an Hephais I/O Server in the [[Settings#I/O Servers|I/O Servers section of the Settings]] and set its parameters:
 +
 +
=== Communication ===
 +
*'''Comm ID''': select a MODBUSTCP I/O server if using a Modbus gateway, or the serial port id when using a direct RS-485 port with HSYCO acting as Modbus RTU master.
 +
 +
=== High Availability ===
 +
*'''Shutdown when inactive''': defaults to false.
  
 
=== Options ===
 
=== Options ===
Line 90: Line 122:
  
 
<pre>
 
<pre>
fire.m1.l1.1.name = Entrance
+
fire.m1.l1.1.name = Entrance
fire.m1.l1.1.zone = 1
+
fire.m1.l1.1.zone = 1
fire.m1.l1.2.name = Corridor
+
fire.m1.l1.2.name = Corridor
fire.m1.l1.2.zone = 2
+
fire.m1.l1.2.zone = 2
  
fire.z1.name = Zone 1
+
fire.z1.name = Zone 1
fire.z2.name = Zone 2
+
fire.z2.name = Zone 2
 
</pre>
 
</pre>
  
Line 106: Line 138:
 
!R/W
 
!R/W
 
!Description
 
!Description
 
 
|-
 
|-
  
Line 117: Line 148:
 
|R
 
|R
 
|HSYCO can't connect to the panel
 
|HSYCO can't connect to the panel
 
 
|-
 
|-
  
 
|rowspan="2" |alarm
 
|rowspan="2" |alarm
|0
 
|R
 
|no partition is alarmed
 
|-
 
 
|1
 
|1
 
|R
 
|R
|at least one partition is alarmed
+
|fire panel in alarm
 
 
|-
 
 
 
|rowspan="6" |armed
 
|rowspan="2" |0
 
|R
 
|all partitions are disarmed
 
|-
 
|W
 
|disarm all partitions
 
|-
 
|1
 
|R
 
|the system is (partially) armed
 
|-
 
|away
 
|W
 
|arm all partitions in away mode
 
|-
 
|stay
 
|W
 
|arm all partitions in stay mode
 
|-
 
|auto
 
|W
 
|initiate auto-arm for all partitions
 
 
 
|-
 
 
 
|rowspan="7" |p<n>.armed
 
|rowspan="2" |0
 
|R
 
|partition <n> is disarmed
 
|-
 
|W
 
|disarm partition <n>
 
|-
 
|rowspan="2" |away
 
|R
 
|partition <n> is armed in away mode
 
|-
 
|W
 
|arm partition <n> in away mode
 
|-
 
|rowspan="2" |stay
 
|R
 
|partition <n> is armed in stay mode
 
|-
 
|W
 
|arm partition <n> in stay mode
 
|-
 
|auto
 
|W
 
|initiate auto-arm on partition <n>
 
 
 
 
|-
 
|-
 
|rowspan="2" |p<n>.alarm
 
 
|0
 
|0
 
|R
 
|R
|partition <n> is not in an alarm state
+
|no alarm
 
|-
 
|-
|1
 
|R
 
|partition <n> is in an alarm state
 
  
|-
+
|rowspan="2" |fault
 
 
|rowspan="2" |p<n>.tamper
 
|0
 
|R
 
|no tamper condition for partition <n>
 
|-
 
 
|1
 
|1
 
|R
 
|R
|partition <n> has been tampered
+
|fire panel fault
 
 
 
|-
 
|-
 
|p<n>.last.user
 
|<num>
 
|R
 
|last user number entered was <num>
 
 
|-
 
 
|rowspan="2" |p<n>.fire
 
 
|0
 
|0
 
|R
 
|R
|no fire on partition <n>
+
|no fault
 
|-
 
|-
|1
 
|R
 
|fire on partition <n>
 
  
|-
+
|rowspan="2" |oos
 
 
|rowspan="2" |p<n>.fire.trouble
 
|0
 
|R
 
|no fire trouble on partition <n>
 
|-
 
 
|1
 
|1
 
|R
 
|R
|fire trouble on partition <n>
+
|at least one point out of service
 
 
 
|-
 
|-
 
|rowspan="3" |p<n>.buzzer
 
 
|0
 
|0
 
|R
 
|R
|buzzer off on partition <n>
+
|no point out of service
 
|-
 
|-
|rowspan="2"|1
 
|R
 
|buzzer on on partition <n>
 
|-
 
|W
 
|start buzzer on partition <n>
 
  
|-
+
|rowspan="2" |test
 
 
|rowspan="2" |p<n>.tlm.fault
 
|0
 
|R
 
|TLM ok
 
|-
 
 
|1
 
|1
 
|R
 
|R
|TLM memory fault
+
|at least one zone in test mode
 
 
 
|-
 
|-
 
|rowspan="2" |p<n>.instant
 
 
|0
 
|0
 
|R
 
|R
|instant flag not set on partition <n>
+
|no zone in test mode
|-
 
|1
 
|R
 
|instant flag set on partition <n>
 
 
 
 
|-
 
|-
  
|rowspan="2" |p<n>.siren
+
|rowspan="2" |error.sys
|0
 
|R
 
|siren off on partition <n>
 
|-
 
 
|1
 
|1
 
|R
 
|R
|siren on on partition <n>
+
|system fault
 
 
 
|-
 
|-
 
|rowspan="2" |p<n>.steady.siren
 
 
|0
 
|0
 
|R
 
|R
|steady siren off on partition <n>
+
|no system fault
 
|-
 
|-
|1
 
|R
 
|steady siren on on partition <n>
 
  
|-
+
|rowspan="2" |prealarm
 
 
|rowspan="2" |p<n>.alarm.mem
 
|0
 
|R
 
|alarm memory flag not set on partition <n>
 
|-
 
 
|1
 
|1
 
|R
 
|R
|alarm memory flag set on partition <n>
+
|fire panel in pre-alarm
 
 
 
|-
 
|-
 
|rowspan="3" |p<n>.cancel
 
 
|0
 
|0
 
|R
 
|R
|no cancel command entered on partition <n>
+
|no pre-alarm
 
|-
 
|-
|rowspan="2" |1
 
|R
 
|cancel command entered on partition <n>
 
|-
 
|W
 
|issue cancel command
 
 
|-
 
 
|rowspan="3" |p<n>.exit.silent
 
|0
 
|R
 
|silent exit disabled on partition <n>
 
|-
 
|rowspan="2" |1
 
|R
 
|silent exit enabled on partition <n>
 
|-
 
|W
 
|enable silent exit for this arm cycle on partition <n>
 
  
|-
+
|rowspan="2" |alarm.tec
 
 
|rowspan="3" |p<n>.chime.mode
 
|0
 
|R
 
|chime mode off on partition <n>
 
|-
 
 
|1
 
|1
 
|R
 
|R
|chime mode on on partition <n>
+
|fire panel in technical alarm
|-
 
|toggle
 
|W
 
|toggle chime mode on partition <n>
 
 
 
 
|-
 
|-
 
|rowspan="2" |p<n>.entry
 
 
|0
 
|0
 
|R
 
|R
|entry inactive on partition <n>
+
|no technical alarm
 
|-
 
|-
|1
 
|R
 
|entry active on partition <n>
 
  
|-
+
|rowspan="2" |sound
 
 
|rowspan="2" |p<n>.delay.exp
 
|0
 
|R
 
|delay expiration warning off
 
|-
 
 
|1
 
|1
 
|R
 
|R
|delay expiration warning on
+
|H.S. speaker active
 
 
 
|-
 
|-
 
|rowspan="2" |p<n>.exit.1
 
 
|0
 
|0
 
|R
 
|R
|exit 1 inactive on partition <n>
+
|H.S. speaker not active
 
|-
 
|-
|1
 
|R
 
|exit 1 active on partition <n>
 
  
|-
+
|rowspan="2" |error.com
 
 
|rowspan="2" |p<n>.exit.2
 
|0
 
|R
 
|exit 2 inactive on partition <n>
 
|-
 
 
|1
 
|1
 
|R
 
|R
|exit 2 active on partition <n>
+
|fire panel communication error
 
 
 
|-
 
|-
 
|rowspan="2" |p<n>.exit.error
 
 
|0
 
|0
 
|R
 
|R
|exit error not triggered on partition <n>
+
|no fire panel communication error
 
|-
 
|-
|1
 
|R
 
|exit error triggered on partition <n>
 
  
|-
+
|rowspan="2" |error.battery
 
 
|rowspan="2" |p<n>.night.mode
 
|0
 
|R
 
|night mode inactive on partition <n>
 
|-
 
 
|1
 
|1
 
|R
 
|R
|night mode active on partition <n>
+
|fire panel battery error
 
 
 
|-
 
|-
 
|rowspan="2" |p<n>.reexit
 
 
|0
 
|0
 
|R
 
|R
|re-exit inactive on partition <n>
+
|no fire panel battery error
|-
 
|1
 
|R
 
|re-exit active on partition <n>
 
 
 
 
|-
 
|-
  
|rowspan="2" |p<n>.force.arm
+
|rowspan="2" |error.sector
|0
 
|R
 
|no force arm triggered on partition <n>
 
|-
 
 
|1
 
|1
 
|R
 
|R
|force arm triggered by auto arm on partition <n>
+
|fire panel sector fault
 
 
 
|-
 
|-
 
|rowspan="2" |p<n>.arm.ready
 
 
|0
 
|0
 
|R
 
|R
|partition <n> not ready to arm
+
|no fire panel sector fault
|-
 
|1
 
|R
 
|partition <n> ready to arm
 
 
 
|-
 
 
 
|rowspan="2" |p<n>.force.arm.ready
 
|0
 
|R
 
|partition <n> not ready to force arm
 
|-
 
|1
 
|R
 
|partition <n> ready to force arm
 
 
 
|-
 
 
 
|rowspan="2" |p<n>.chime
 
|0
 
|R
 
|chime off on partition <n>
 
|-
 
|1
 
|R
 
|chime on on partition <n>
 
 
 
|-
 
 
 
|rowspan="2" |p<n>.error.beep
 
|0
 
|R
 
|error beep off on partition <n>
 
|-
 
|1
 
|R
 
|error beep on on partition <n>
 
 
 
|-
 
 
 
|rowspan="2" |p<n>.tone
 
|0
 
|R
 
|activation tone off on partition <n>
 
|-
 
|1
 
|R
 
|activation tone on on partition <n>
 
 
 
|-
 
 
 
|rowspan="2" |p<n>.entry.1
 
|0
 
|R
 
|entry 1 inactive on partition <n>
 
|-
 
|1
 
|R
 
|entry 1 active on partition <n>
 
 
 
|-
 
 
 
|rowspan="2" |p<n>.phone.1.alarm
 
|0
 
|R
 
|no alarm sent using phone number 1 on partition <n>
 
|-
 
|1
 
|R
 
|alarm sent using phone number 1 on partition <n>
 
 
 
|-
 
 
 
|rowspan="2" |p<n>.phone.2.alarm
 
|0
 
|R
 
|no alarm sent using phone number 2 on partition <n>
 
|-
 
|1
 
|R
 
|alarm sent using phone number 2 on partition <n>
 
 
 
|-
 
 
 
|rowspan="2" |p<n>.phone.3.alarm
 
|0
 
|R
 
|no alarm sent using phone number 3 on partition <n>
 
|-
 
|1
 
|R
 
|alarm sent using phone number 3 on partition <n>
 
 
 
|-
 
 
 
|rowspan="2" |p<n>.keyswitch.armed
 
|0
 
|R
 
|keyswitch not armed on partition <n>
 
|-
 
|1
 
|R
 
|keyswitch armed on partition <n>
 
 
 
 
|-
 
|-
  
Line 549: Line 263:
 
|<text>
 
|<text>
 
|R
 
|R
|name of zone <n> is set to <text>
+
|name assigned to zone <n>
 
 
 
|-
 
|-
  
|rowspan="2" |z<n>.open
+
|rowspan="2" |z<n>.alarm
|0
 
|R
 
|zone <n> is closed
 
|-
 
 
|1
 
|1
 
|R
 
|R
|zone <n> is open
+
|fire panel in alarm
 
 
 
|-
 
|-
 
|rowspan="2" |z<n>.tamper
 
 
|0
 
|0
 
|R
 
|R
|zone <n> is not tampered
+
|no alarm
 
|-
 
|-
|1
 
|R
 
|zone <n> is tampered
 
  
|-
+
|rowspan="2" |z<n>.oos
 
 
|rowspan="2" |z<n>.trouble
 
|0
 
|R
 
|zone <n> OK
 
|-
 
 
|1
 
|1
 
|R
 
|R
|troubles on zone <n>
+
|fire panel in alarm
 
 
 
|-
 
|-
 
|rowspan="3" |z<n>.bypassed
 
 
|0
 
|0
 
|R
 
|R
|zone <n> not bypassed
+
|no alarm
|-
 
|1
 
|R
 
|zone <n> bypassed
 
 
|-
 
|-
|toggle
 
|W
 
|toggle the bypass status on zone <n>
 
  
|-
+
|rowspan="2" |z<n>.fault
 
 
|rowspan="2" |z<n>.inhibited
 
|0
 
|R
 
|zone <n> not inhibited
 
|-
 
 
|1
 
|1
 
|R
 
|R
|zone <n> inhibited
+
|fire panel in alarm
 
 
 
|-
 
|-
 
|rowspan="2" |z<n>.battery.low
 
 
|0
 
|0
 
|R
 
|R
|zone <n> battery OK
+
|no alarm
|-
 
|1
 
|R
 
|zone <n> battery low
 
 
 
 
|-
 
|-
  
|rowspan="2" |z<n>.supervision.loss
+
|rowspan="2" |z<n>.test
|0
 
|R
 
|supervision OK on zone <n>
 
|-
 
 
|1
 
|1
 
|R
 
|R
|loss of supervision on zone <n>
+
|fire panel in alarm
 
 
 
|-
 
|-
 
|rowspan="2" |z<n>.alarm.mem
 
 
|0
 
|0
 
|R
 
|R
|alarm memory flag not set on zone <n>
+
|no alarm
 
|-
 
|-
|1
 
|R
 
|alarm memory flag set on zone <n>
 
  
|-
+
|m<m>.l<l>.<n>.name
 
 
|rowspan="2" |z<n>.bypass.mem
 
|0
 
|R
 
|bypass memory flag not set on zone <n>
 
|-
 
|1
 
|R
 
|bypass memory flag set on zone <n>
 
 
 
|-
 
 
 
|user<n>.name
 
 
|<text>
 
|<text>
 
|R
 
|R
|name of user <n> is set to <text>
+
|name assigned to point P of module <m> in loop <l>
 
 
 
|-
 
|-
  
|rowspan="2" |comm.fail
 
|0
 
|R
 
|communication OK
 
|-
 
|1
 
|R
 
|communication failure
 
 
|-
 
  
|rowspan="2" |fuse.fault
+
|rowspan="2" |m<m>.l<l>.<n>.oos
|0
 
|R
 
|fuse OK
 
|-
 
 
|1
 
|1
 
|R
 
|R
|fuse fault
+
|point <n> of module <m> in loop <l> out of service
 
 
 
|-
 
|-
 
|rowspan="2" |panel.tamper
 
 
|0
 
|0
 
|R
 
|R
|panel box not tampered
+
|point <n> of module <m> in loop <l> not out of service
|-
 
|1
 
|R
 
|panel box tampered
 
 
 
 
|-
 
|-
  
|rowspan="2" |siren.tamper
+
|rowspan="2" |m<m>.l<l>.<n>.alarm
|0
 
|R
 
|siren OK
 
|-
 
 
|1
 
|1
 
|R
 
|R
|siren tampered
+
|point <n> of module <m> in loop <l> in alarm
 
 
 
|-
 
|-
 
|rowspan="2" |battery.low
 
 
|0
 
|0
 
|R
 
|R
|battery OK
+
|point <n> of module <m> in loop <l> not in alarm
|-
 
|1
 
|R
 
|battery low
 
 
 
 
|-
 
|-
  
|rowspan="2" |ac.fail
+
|rowspan="2" |m<m>.l<l>.<n>.fault
|0
 
|R
 
|AC OK
 
|-
 
 
|1
 
|1
 
|R
 
|R
|AC failure
+
|point <n> of module <m> in loop <l> out of fault
 
 
 
|-
 
|-
 
|rowspan="2" |expander.tamper
 
 
|0
 
|0
 
|R
 
|R
|expander box not tampered
+
|point <n> of module <m> in loop <l> out not in fault
 
|-
 
|-
|1
 
|R
 
|expander box tampered
 
  
|-
+
|rowspan="2" |m<m>.l<l>.<n>.alarm.test
 
 
|rowspan="2" |expander.ac.fail
 
|0
 
|R
 
|expander’s AC OK
 
|-
 
 
|1
 
|1
 
|R
 
|R
|expander’s AC failure
+
|point <n> of module <m> in loop <l> alarm test
 
 
 
|-
 
|-
 
|rowspan="2" |expander.battery.low
 
 
|0
 
|0
 
|R
 
|R
|expander’s battery OK
+
|point <n> of module <m> in loop <l> not in alarm test
 
|-
 
|-
|1
 
|R
 
|expander’s battery low
 
  
|-
+
|}
  
|rowspan="2" |expander.fault
+
== User Interface ==
|0
 
|R
 
|expander OK
 
|-
 
|1
 
|R
 
|general fault for the expander
 
  
|-
+
=== Hephais Object ===
  
|rowspan="2" |buzzer
+
{{:Hephais_(UI Object)}}
|0
 
|R
 
|global buzzer off
 
|-
 
|1
 
|R
 
|global buzzer on
 
  
|-
+
=== UISET Actions ===
  
|rowspan="2" |siren
+
{| class="wikitable"
|0
+
!ID
|R
+
!Attribute
|global siren off
+
!colspan="2"|Set to
 
|-
 
|-
|1
 
|R
 
|global siren on
 
  
 +
|rowspan="2"|connection.label.online
 +
|rowspan="2"|visible
 +
|true
 +
|when datapoint connection = online
 
|-
 
|-
 
+
|false
|rowspan="2" |steady.siren
+
|when datapoint connection = offline
|0
 
|R
 
|global steady siren off
 
 
|-
 
|-
|1
 
|R
 
|global steady siren on
 
  
 +
|rowspan="2"|connection.label.offline
 +
|rowspan="2"|visible
 +
|true
 +
|when datapoint connection = offline
 
|-
 
|-
 
+
|false
|rowspan="2" |bus.fault
+
|when datapoint connection = online
|0
 
|R
 
|bus line OK
 
 
|-
 
|-
|1
 
|R
 
|bus device had line seized
 
  
 +
|rowspan="2"|alarm.label.1
 +
|rowspan="2"|visible
 +
|true
 +
|when the fire panel is in alarm
 
|-
 
|-
 
+
|false
|rowspan="2" |ac.power
+
|when the fire panel is not in alarm
|0
 
|R
 
|AC power off
 
 
|-
 
|-
|1
 
|R
 
|AC power on
 
  
 +
|rowspan="2"|alarm.label.0
 +
|rowspan="2"|visible
 +
|true
 +
|when the fire panel is not in alarm
 
|-
 
|-
 
+
|false
|rowspan="2" |battery.low.mem
+
|when the fire panel is in alarm
|0
 
|R
 
|low battery memory flag not set
 
 
|-
 
|-
|1
 
|R
 
|low battery memory flag set
 
  
 +
|rowspan="2"|fault.label.1
 +
|rowspan="2"|visible
 +
|true
 +
|when the fire panel is in fault
 
|-
 
|-
 
+
|false
|rowspan="2" |powerup.delay
+
|when the fire panel is not in fault
|0
 
|R
 
|no power up delay in progress
 
 
|-
 
|-
|1
 
|R
 
|power up delay in progress
 
  
 +
|rowspan="2"|fault.label.0
 +
|rowspan="2"|visible
 +
|true
 +
|when the fire panel is not in fault
 
|-
 
|-
 
+
|false
|rowspan="4" |walk.test
+
|when the fire panel is in fault
|rowspan="2" |0
 
|R
 
|walk-test mode off
 
 
|-
 
|-
|W
 
|stop walk-test mode
 
|-
 
|rowspan="2" |1
 
|R
 
|walk-test mode active
 
|-
 
|W
 
|start walk-test mode
 
  
 +
|rowspan="2"|oos.label.1
 +
|rowspan="2"|visible
 +
|true
 +
|when at least one point is out of service
 
|-
 
|-
 
+
|false
|rowspan="2" |time.loss
+
|when no one of the points is out of service
|0
 
|R
 
|system time ok
 
 
|-
 
|-
|1
 
|R
 
|loss of system time
 
  
 +
|rowspan="2"|oos.label.0
 +
|rowspan="2"|visible
 +
|true
 +
|when no one of the points is out of service
 
|-
 
|-
 
+
|false
|aux1<br />p<n>.aux1
+
|when at least one point is out of service
|1
 
|W
 
|activate auxiliary function 1
 
 
 
 
|-
 
|-
  
|aux2<br />p<n>.aux2
+
|rowspan="2"|test.label.1
|1
+
|rowspan="2"|visible
|W
+
|true
|activate auxiliary function 2
+
|when at least one zone is in test mode
 
 
 
|-
 
|-
 
+
|false
|rowspan="3"|panic<br />p<n>.panic
+
|when there aren't zones in test mode
|fire
 
|W
 
|issue the fire panic command
 
 
|-
 
|-
|medical
 
|W
 
|issue the medical panic command
 
|-
 
|police
 
|W
 
|issue the police panic command
 
  
 +
|rowspan="2"|test.label.0
 +
|rowspan="2"|visible
 +
|true
 +
|when there aren't zones in test mode
 
|-
 
|-
 
+
|false
|smoke<br />p<n>.smoke
+
|when at least one zone is in test mode
|reset
 
|W
 
|smoke detector reset
 
 
 
 
|-
 
|-
  
|test<br />p<n>.test
+
|rowspan="2"|error.sys.label.1
|1
+
|rowspan="2"|visible
|W
+
|true
|perform test
+
|when there is a system fault
 
 
 
|-
 
|-
 
+
|false
|command
+
|when there is not a system fault
|restart
 
|W
 
|restart the driver
 
 
 
 
|-
 
|-
  
|rowspan="3"|clock
+
|rowspan="2"|error.sys.label.0
|read
+
|rowspan="2"|visible
|W
+
|true
|request the reading of the panel’s clock value
+
|when there is not a system fault
 
|-
 
|-
|rowspan="2"|<val>
+
|false
|R
+
|when there is a system fault
|the panel’s clock is set to <val>. The used format is "yyyy-mm-dd hh:mm:ss" (e.g. 2012-08-30 16:30:00). This datapoint is only updated after a request with the command "clock = read"
 
 
|-
 
|-
|W
 
|set the panel’s clock to <val>. One of the following formats must be used:
 
*"yyyy-mm-dd hh:mm", e.g. 2012-08-30 16:30
 
*"yy/mm/dd-wd-hh:mm", where “wd” represents the day of the week (1 = Sunday, 2 = Monday, ..., 7 = Saturday), e.g. 12/08/30-5-16:30
 
|}
 
 
=== CS507 configuration ===
 
The I/O Server also allows to configure and to check the saved configuration of a CS507 add-on module connected to the panel.
 
 
To read and write the configuration saved on the module use the following datapoints:
 
 
{| class="wikitable"
 
!ID
 
!Value
 
!R/W
 
!Description
 
  
 +
|rowspan="2"|prealarm.label.1
 +
|rowspan="2"|visible
 +
|true
 +
|when the fire panel is in pre-alarm
 
|-
 
|-
 
+
|false
|rowspan="3"|cs507.<addr>.out<n>
+
|when the fire panel is not in pre-alarm
|read
 
|W
 
|request the reading of the configuration of output <n> on the module with address <addr>
 
 
|-
 
|-
|rowspan="2"|[[#Outputs configuration values|<out_value>]]
 
|R
 
|output <n> on the module with address <addr> is configured as described by [[#Outputs configuration values|<out_value>]], updated only after a read request
 
|-
 
|W
 
|write [[#Outputs configuration values|<out_value>]] to output <n> on the module with address <addr>
 
  
 +
|rowspan="2"|prealarm.label.0
 +
|rowspan="2"|visible
 +
|true
 +
|when the fire panel is not in pre-alarm
 
|-
 
|-
 
+
|false
|rowspan="3"|cs507.<addr>.prog<n>
+
|when the fire panel is in pre-alarm
|read
 
|W
 
|request the reading of the configuration of time-program <n> on the module with address <addr>
 
 
|-
 
|-
|rowspan="2"|[[#Time-programs configuration values|<prog_value>]]
 
|R
 
|the time-program <n> on the module with address <addr> is configured as described by [[#Time-programs configuration values|<prog_value>]], updated only after a read request
 
|-
 
|W
 
|write [[#Time-programs configuration values|<prog_value>]] to the time-program <n> on the module with address <addr>
 
  
 +
|rowspan="2"|alarm.tec.label.1
 +
|rowspan="2"|visible
 +
|true
 +
|when the fire panel is in technical alarm
 
|-
 
|-
 
+
|false
|rowspan="3" style="white-space:nowrap"|cs507.<addr>.holidays.<n>
+
|when the fire panel is not in technical alarm
|read
 
|W
 
|request the reading of the days set as holidays for month <n> (1 = January, 12 = December) on the module with address <addr>
 
 
|-
 
|-
|rowspan="2"|[[#Holidays configuration values|<holidays_value>]]
 
|R
 
|the holidays for month <n> on the module with address <addr> are set to [[#Holidays configuration values|<holidays_value>]], updated only after a read request
 
|-
 
|W
 
|set [[#Holidays configuration values|<holidays_value>]] as holidays for month <n> on the module with address <addr>
 
  
 +
|rowspan="2"|alarm.tec.label.0
 +
|rowspan="2"|visible
 +
|true
 +
|when the fire panel is not in technical alarm
 
|-
 
|-
 
+
|false
|rowspan="3"|cs507.<addr>.user<n>
+
|when the fire panel is in technical alarm
|read
 
|W
 
|request the reading of the configuration of user <n> on the module with address <addr>
 
 
|-
 
|-
|rowspan="2"|[[#Users configuration values|<user_value>]]
 
|R
 
|user <n> on the module with address <addr> is configured as described by [[#Users configuration values|<user_value>]], updated only after a read request
 
|-
 
|W
 
|write [[#Users configuration values|<user_value>]] to user <n> on the module with address <addr>
 
|}
 
 
===== Outputs configuration values =====
 
The output configuration value <out_value> has the following format:
 
 
<pre>
 
<ev>,<par>,<d>,<f1>,<f2>,<f3>,<f4>,<f5>,<f6>,<f7>,<f8>,<a1>,<a2>,<a3>,<a4>,<a5>,<a6>,<a7>,<a8>,<p1>,<p2>,<p3>,<p4>,<p5>,<p6>,<p7>,<p8>,<X10_addr>
 
</pre>
 
 
it is a comma-separated list of the following parameters:
 
*ev = number of the event associated to this output
 
*par = value of the parameter associated to the specified event (e.g. user or zone number)
 
*d = duration of the event
 
*f1 ... f8 = '1' if the flag is set, '0' otherwise. f1 sets the “Timing in minutes” flag; f2 corresponds to “Memorized”; f3 to “Interrupt with code”; f4 to “Outside time slot”; f5 to “Inside time slot”; f6 to “Inverted”; f7 to “Save in events memory”; f8 to “Disable new auto-arm”
 
*a1 .. a8 = '1' if the area flag is set, '0' otherwise. a1 corresponds to area 1 and so on
 
*p1 .. p8 = '1' if the time-program flag is set, '0' otherwise. p1 corresponds to program 1 and so on
 
*X10_addr = X10 address associated with the output (e.g. "A3")
 
 
===== Time-programs configuration values =====
 
The time-program configuration value <prog_value> has the following format:
 
 
<pre>
 
<start>,<end>,<sun>,<mon>,<tue>,<wed>,<thu>,<fri>,<sat>,<holidays>
 
</pre>
 
 
it is a comma-separated list of the following parameters:
 
*start = starting time of the program. It must be formatted as HH:MM (e.g. 14:30)
 
*end = ending time of the program. It must be formatted as HH:MM (e.g. 14:30)
 
*sun ... sat = '1' if the program is active on the corresponding day, '0' otherwise
 
*holidays = '1' if this program is disabled during the configured holidays, '0' otherwise
 
 
===== Holidays configuration values =====
 
The holidays configuration value <holidays_value> has the following format:
 
 
<pre>
 
<d1>,<d2>,<d3>,<d4>,<d5>,<d6>,<d7>,<d8>
 
</pre>
 
 
it is a comma-separated list of the 8 days set as holidays for the specified month. If less than 8 days are set, then the remaining days are set to 0.
 
 
===== Users configuration values =====
 
The user configuration value <user_value> has the following format:
 
 
<pre>
 
<o1>,<o2>,<o3>,<o4>,<o5>,<o6>,<o7>,<o8>
 
</pre>
 
 
where <o1> ... <o8> are set to '1' if the corresponding output is enabled for the user, '0' otherwise.
 
 
== User Interface ==
 
 
=== CSx75 Object ===
 
 
{{:CSx75_(UI Object)}}
 
 
=== UISET Actions ===
 
 
{| class="wikitable"
 
!ID
 
!Attribute
 
!colspan="2"|Set to
 
  
 +
|rowspan="2"|sound.label.1
 +
|rowspan="2"|visible
 +
|true
 +
|when H.S. sound speaker is active
 
|-
 
|-
 
+
|false
|log
+
|when H.S. sound speaker is not active
|value
 
|colspan="2"|latest security log lines (as many as specified by the 'logsize' option)
 
 
 
 
|-
 
|-
  
|log0
+
|rowspan="2"|sound.label.0
|value
+
|rowspan="2"|visible
|colspan="2"|latest line of the security log when a new entry is added, set back to blank after a short period
+
|true
 
+
|when H.S. sound speaker is not active
 
|-
 
|-
 
+
|false
|z<n>.name
+
|when H.S. sound speaker is active
|value
 
|colspan="2"|name assigned to zone <n> (base or double) or its number if no name is defined
 
 
 
 
|-
 
|-
  
|p<n>.last.user
+
|rowspan="2"|error.com.label.1
|value
+
|rowspan="2"|visible
|colspan="2"|ID of the last user who logged in on partition <n>
+
|true
 
+
|when there is a communication fault
 
|-
 
|-
 
+
|false
|user<n>.name
+
|when there is not a communication fault
|value
 
|colspan="2"|name assigned to user <n>
 
 
 
 
|-
 
|-
  
|rowspan="2"|connection.label
+
|rowspan="2"|error.com.label.0
 
|rowspan="2"|visible
 
|rowspan="2"|visible
 
|true
 
|true
|when datapoint connection = offline
+
|when there is not a communication fault
 
|-
 
|-
 
|false
 
|false
|when datapoint connection = online
+
|when there is a communication fault
 
 
 
|-
 
|-
  
|rowspan="2"|p<n>.armed.0.label
+
|rowspan="2"|error.battery.label.1
 
|rowspan="2"|visible
 
|rowspan="2"|visible
 
|true
 
|true
|when partition <n> is disarmed
+
|when there is a battery fault
 
|-
 
|-
 
|false
 
|false
|when partition <n> is armed
+
|when there is not a battery fault
 
 
 
|-
 
|-
  
|rowspan="2"|p<n>.armed.away.label
+
|rowspan="2"|error.battery.label.0
 
|rowspan="2"|visible
 
|rowspan="2"|visible
 
|true
 
|true
|when partition <n> is armed in "away" mode
+
|when there is not a battery fault
 
|-
 
|-
 
|false
 
|false
|when partition <n> is not armed in "away" mode
+
|when there is a battery fault
 
 
 
|-
 
|-
  
|rowspan="2"|p<n>.armed.stay.label
+
|rowspan="2"|error.sector.label.1
 
|rowspan="2"|visible
 
|rowspan="2"|visible
 
|true
 
|true
|when partition <n> is armed in "stay" mode
+
|when there is a sector error
 
|-
 
|-
 
|false
 
|false
|when partition <n> is not armed in "stay" mode
+
|when there is not a sector error
 
 
 
|-
 
|-
  
|rowspan="2"|<datapoint_id>.1.label
+
|rowspan="2"|error.sector.label.0
 
|rowspan="2"|visible
 
|rowspan="2"|visible
 
|true
 
|true
|when datapoint with ID <datapoint_id> has value '1'
+
|when there is not a sector error
 
|-
 
|-
 
|false
 
|false
|when datapoint with ID <datapoint_id> has value '0'
+
|when there is a sector error
 
 
 
|-
 
|-
  
|rowspan="2"|<datapoint_id>.0.label
+
|rowspan="2"|z<n>.alarm.label.1
 
|rowspan="2"|visible
 
|rowspan="2"|visible
 
|true
 
|true
|when datapoint with ID <datapoint_id> has value '0'
+
|when the zone <n> is in alarm
 
|-
 
|-
 
|false
 
|false
|when datapoint with ID <datapoint_id> has value '1'
+
|when the zone <n> is not in alarm
|}
 
 
 
=== USER Commands ===
 
 
 
{| class="wikitable"
 
!Name
 
!Param
 
!Action
 
 
 
 
|-
 
|-
  
|rowspan="4" |armed<sup>[[#note|[Note]]]</sup>
+
|rowspan="2"|z<n>.alarm.label.0
|0
+
|rowspan="2"|visible
|disarm all partitions
+
|true
 +
|when the zone <n> is not in alarm
 
|-
 
|-
|stay
+
|false
|arm all partitions in "stay" mode
+
|when the zone <n> is in alarm
 
|-
 
|-
|away
 
|arm all partitions in "away" mode
 
|-
 
|auto
 
|initiate auto-arm on all partitions
 
  
 +
|rowspan="2"|z<n>.oos.label.1
 +
|rowspan="2"|visible
 +
|true
 +
|when the zone <n> is out of service
 
|-
 
|-
 
+
|false
|rowspan="4" |p<n>.armed<sup>[[#note|[Note]]]</sup>
+
|when the zone <n> is not out of service
|0
 
|disarm partition <n>
 
 
|-
 
|-
|stay
 
|arm partition <n> in "stay" mode
 
|-
 
|away
 
|arm partition <n> in "away" mode
 
|-
 
|auto
 
|initiate auto-arm on partition <n>
 
  
 +
|rowspan="2"|z<n>.oos.label.0
 +
|rowspan="2"|visible
 +
|true
 +
|when the zone <n> is not out of service
 
|-
 
|-
 
+
|false
|p<n>.cancel<sup>[[#note|[Note]]]</sup>
+
|when the zone <n> is out of service
|1
 
|issue cancel command on partition <n>
 
 
 
 
|-
 
|-
  
|p<n>.buzzer
+
|rowspan="2"|z<n>.fault.label.1
|1
+
|rowspan="2"|visible
|start buzzer on partition <n>
+
|true
 
+
|when the zone <n> is in fault
 
|-
 
|-
 
+
|false
|p<n>.exit.silent
+
|when the zone <n> is not in fault
|1
 
|enable silent exit for this arm cycle on partition <n>
 
 
 
 
|-
 
|-
  
|Z<n>.bypassed
+
|rowspan="2"|z<n>.fault.label.0
|toggle
+
|rowspan="2"|visible
|toggle the bypass status of zone <n>
+
|true
 
+
|when the zone <n> is not in fault
 
|-
 
|-
 
+
|false
|p<n>.chime.mode
+
|when the zone <n> is in fault
|toggle
 
|toggle chime mode on partition <n>
 
 
 
 
|-
 
|-
  
|rowspan="2" |walk.test<sup>[[#note|[Note]]]</sup>
+
|rowspan="2"|z<n>.test.label.1
|0
+
|rowspan="2"|visible
|stop walk-test mode
+
|true
 +
|when the zone <n> is in test
 
|-
 
|-
|1
+
|false
|start walk-test mode
+
|when the zone <n> is not in test
 
 
 
|-
 
|-
  
|aux1<br />p<n>.aux1
+
|rowspan="2"|z<n>.test.label.0
|1
+
|rowspan="2"|visible
|activate auxiliary function 1
+
|true
 
+
|when the zone <n> is not in test
 
|-
 
|-
 
+
|false
|aux2<br />p<n>.aux2
+
|when the zone <n> is in test
|1
 
|activate auxiliary function 2
 
 
 
|-
 
 
 
|rowspan="3" |panic<br />p<n>.panic
 
|fire
 
|issue the fire panic command
 
|-
 
|medical
 
|issue the medical panic command
 
|-
 
|police
 
|issue the police panic command
 
 
 
 
 
 
|-
 
|-
  
|smoke<br />p<n>.smoke
 
|reset
 
|smoke detector reset
 
 
|-
 
 
|test<br />p<n>.test
 
|1
 
|perform test
 
 
|-
 
 
|command
 
|restart
 
|restarts the driver
 
|}
 
 
<span id="note">
 
;Note: To perform this operation it is necessary to enter the user code first. To enter the user code through the user interface use [[User|user buttons]] to create a virtual keypad and assign them name and param values according to this table:
 
</span>
 
 
{| class="wikitable"
 
!Name
 
!Param
 
!Action
 
|-
 
|rowspan="2"|digit
 
|{0 ... 9}
 
|append the specified digit to the entered user code
 
|-
 
|c
 
|delete the last entered digit
 
 
|}
 
|}
  
To visualize the number of entered digits use 4 or 6 [[Text|text objects]] (depending on the number of digits used for user codes) and set their IDs to:
+
== Release Notes ==
 +
=== 3.3.0 ===
 +
*initial release
  
{| class="wikitable"
+
----
!ID
 
!Description
 
|-
 
|pin.<n><br />(0 &le; <n> &le; 5)
 
|shows the character '*' when the corresponding digit has been entered, shows '_' otherwise
 
  
|}
 
  
The entered code will be cleared after a short period of inactivity.
+
''SD3 and HEPHAIS are registered trademarks owned by SD3.''

Latest revision as of 13:35, 27 April 2015

The SD3 HEPHAIS 1600 is a multi-zones fire panel. The integration with HSYCO can be accomplished via a standard Modbus RTU slave interface. This I/O Server requires HEPHAIS 1600 with protocol modbus JBUS V0.13.

IO Servers Hephais Panel.png

Modbus Connections

The HEPHAIS 1600 has a Modbus interface.

  • Modbus address: 1 (can be set to 1 - 247)
  • RS-422 parameters:
Baud rate 9600
Data bits 8
Stop bit 1
Parity none
Flow control none

Refer to the HEPHAIS 1600 manuals for installation, wiring and power supply requirements.

The modbus wires terminal is the “Block 11”. Modbus type is RS-422/JBUS (IN+/OUT+, IN-/OUT-, GND).

The Modbus-TCP/IP gateway used for the connection must support RS-422/JBUS.

IO Servers Hephais Connections.png

HSYCO Configuration

You can define and connect more than one HEPHAIS panel on the same Modbus bus gateway or through different gateways.

Add an Hephais I/O Server in the I/O Servers section of the Settings and set its parameters:

Communication

  • Comm ID: select a MODBUSTCP I/O server if using a Modbus gateway, or the serial port id when using a direct RS-485 port with HSYCO acting as Modbus RTU master.

High Availability

  • Shutdown when inactive: defaults to false.

Options

ID Default Values Description
gui true true enable support for the UI object, UISET actions and USER commands
false disable UI support
startupevents false true generate IO events also during the driver’s start-up phase
false start generating events only after HSYCO is aligned with the current status of the system
address 1 1...247 the panel's Modbus address
pollinterval 3 n > 0 the data acquisition interval, in seconds
maxpoint m4.l2.200 point id id of the highest point used on the panel. The number after ‘m’ represents the number of the module, the number after ‘l’ represents the loop number of the module and the last number is the address of the point within the loop. Acceptable values range from “m1.l1.1” to “m9.l2.200”
hysteresis 0 <n> if different than zero, the datapoints’ values are checked <n> times before being set. Setting this option to a value different from zero will decrease the responsiveness of the driver

hephais.ini

The hephais.ini file is a specific configuration file located in the root directory. Here you can define the names of the users so that they will be automatically added to the user interface. Add a new line for each user using this format:

<io_server_id>.m<m>.l<l>.<addr>.name = <name>

Add a new line to specify the zone the point belongs using this format: <io_server_id>.m<m>.l<l>.<addr>.zone = <name>

Add a new line to define the name of a zone using this format: <io_server_id>.z<n>.name = <name>

For instance:

fire.m1.l1.1.name = Entrance
fire.m1.l1.1.zone = 1
fire.m1.l1.2.name = Corridor
fire.m1.l1.2.zone = 2

fire.z1.name = Zone 1
fire.z2.name = Zone 2

Datapoints

ID Value R/W Description
connection online R connection established
offline R HSYCO can't connect to the panel
alarm 1 R fire panel in alarm
0 R no alarm
fault 1 R fire panel fault
0 R no fault
oos 1 R at least one point out of service
0 R no point out of service
test 1 R at least one zone in test mode
0 R no zone in test mode
error.sys 1 R system fault
0 R no system fault
prealarm 1 R fire panel in pre-alarm
0 R no pre-alarm
alarm.tec 1 R fire panel in technical alarm
0 R no technical alarm
sound 1 R H.S. speaker active
0 R H.S. speaker not active
error.com 1 R fire panel communication error
0 R no fire panel communication error
error.battery 1 R fire panel battery error
0 R no fire panel battery error
error.sector 1 R fire panel sector fault
0 R no fire panel sector fault
z<n>.name <text> R name assigned to zone <n>
z<n>.alarm 1 R fire panel in alarm
0 R no alarm
z<n>.oos 1 R fire panel in alarm
0 R no alarm
z<n>.fault 1 R fire panel in alarm
0 R no alarm
z<n>.test 1 R fire panel in alarm
0 R no alarm
m<m>.l<l>.<n>.name <text> R name assigned to point P of module <m> in loop <l>
m<m>.l<l>.<n>.oos 1 R point <n> of module <m> in loop <l> out of service
0 R point <n> of module <m> in loop <l> not out of service
m<m>.l<l>.<n>.alarm 1 R point <n> of module <m> in loop <l> in alarm
0 R point <n> of module <m> in loop <l> not in alarm
m<m>.l<l>.<n>.fault 1 R point <n> of module <m> in loop <l> out of fault
0 R point <n> of module <m> in loop <l> out not in fault
m<m>.l<l>.<n>.alarm.test 1 R point <n> of module <m> in loop <l> alarm test
0 R point <n> of module <m> in loop <l> not in alarm test

User Interface

Hephais Object

The user interface for the Hephais I/O Server:

Hephais UI Object.png

The (hephais) object is listed in the Project Editor’s new object list only when at least one Hephais I/O Server is defined

Parameters

  • server id: the server ID. Supports Redirect variables
  • position: the object's position. Use the pixels or rows and columns coordinates format

Syntax

(hephais <server id>; <position>)

E.g.

(hephais heph; r1c1)

UISET Actions

ID Attribute Set to
connection.label.online visible true when datapoint connection = online
false when datapoint connection = offline
connection.label.offline visible true when datapoint connection = offline
false when datapoint connection = online
alarm.label.1 visible true when the fire panel is in alarm
false when the fire panel is not in alarm
alarm.label.0 visible true when the fire panel is not in alarm
false when the fire panel is in alarm
fault.label.1 visible true when the fire panel is in fault
false when the fire panel is not in fault
fault.label.0 visible true when the fire panel is not in fault
false when the fire panel is in fault
oos.label.1 visible true when at least one point is out of service
false when no one of the points is out of service
oos.label.0 visible true when no one of the points is out of service
false when at least one point is out of service
test.label.1 visible true when at least one zone is in test mode
false when there aren't zones in test mode
test.label.0 visible true when there aren't zones in test mode
false when at least one zone is in test mode
error.sys.label.1 visible true when there is a system fault
false when there is not a system fault
error.sys.label.0 visible true when there is not a system fault
false when there is a system fault
prealarm.label.1 visible true when the fire panel is in pre-alarm
false when the fire panel is not in pre-alarm
prealarm.label.0 visible true when the fire panel is not in pre-alarm
false when the fire panel is in pre-alarm
alarm.tec.label.1 visible true when the fire panel is in technical alarm
false when the fire panel is not in technical alarm
alarm.tec.label.0 visible true when the fire panel is not in technical alarm
false when the fire panel is in technical alarm
sound.label.1 visible true when H.S. sound speaker is active
false when H.S. sound speaker is not active
sound.label.0 visible true when H.S. sound speaker is not active
false when H.S. sound speaker is active
error.com.label.1 visible true when there is a communication fault
false when there is not a communication fault
error.com.label.0 visible true when there is not a communication fault
false when there is a communication fault
error.battery.label.1 visible true when there is a battery fault
false when there is not a battery fault
error.battery.label.0 visible true when there is not a battery fault
false when there is a battery fault
error.sector.label.1 visible true when there is a sector error
false when there is not a sector error
error.sector.label.0 visible true when there is not a sector error
false when there is a sector error
z<n>.alarm.label.1 visible true when the zone <n> is in alarm
false when the zone <n> is not in alarm
z<n>.alarm.label.0 visible true when the zone <n> is not in alarm
false when the zone <n> is in alarm
z<n>.oos.label.1 visible true when the zone <n> is out of service
false when the zone <n> is not out of service
z<n>.oos.label.0 visible true when the zone <n> is not out of service
false when the zone <n> is out of service
z<n>.fault.label.1 visible true when the zone <n> is in fault
false when the zone <n> is not in fault
z<n>.fault.label.0 visible true when the zone <n> is not in fault
false when the zone <n> is in fault
z<n>.test.label.1 visible true when the zone <n> is in test
false when the zone <n> is not in test
z<n>.test.label.0 visible true when the zone <n> is not in test
false when the zone <n> is in test

Release Notes

3.3.0

  • initial release


SD3 and HEPHAIS are registered trademarks owned by SD3.