Hephais
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.
Contents
Modbus Connections
The HEPHAIS 1600 has a Modbus interface. The default connection parameters are: Modbus address: 1 (can be set to 1 - 247) communication parameters: 9600 bps, 8 bits, 1 stop bit, no parity. 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.
HSYCO Configuration
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:
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 |