InimPrevidia
INIM PREVIDIA are multi-zone fire panels. The integration with HSYCO can be accomplished via a standard Modbus TCP/IP connection. This I/O server was developed following the MODBUS documentation: "INIM Guida all'integrazione con sistemi di supervisione"
This driver has been tested on INIM PREVIDIA Ultra, Max and Compact panels.
Communication
INIM PREVIDIA panels can be connected via ethernet. A valid IP address must be assigned to the panel. MODBUS PROTOCOL must be enabled. Please refer to the manual for detailed instruction about MODBUS protocol configuration.
HSYCO Configuration
Add an INIMPREVIDIA I/O Server in the I/O Servers section of the Settings and set its parameters:
Communication
- Comm ID: select the comm port the device is connected to.
High Availability
- Shutdown when inactive: defaults to true.
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 | ||
unitid | 1 | n ≥ 0 | MODBUS unit ID of the INIM PREVIDIA panel |
pollingtime | 1000 | n > 1000, n < 30000 | the data acquisition interval, in seconds |
loopsnumber | 16 | n = 1..16 | the number of configured loops |
groupsnumber | 240 | n = 1..240 | the number of configured groups |
zonessnumber | 1000 | n = 1..1000 | the number of configured groups |
model | ultra | ultra | Inim Previdia Ultra panel |
max | Inim Previdia Max panel | ||
compact | Inim Previdia Compact panel |
INIM PREVIDIA Compact panel requires loopsnumber set to 2
inimprevidia.ini
The inimprevidia.ini file is a specific configuration file located in the root directory.
This file is required to provide the I/O Server the name assignment of zones and devices.
This is an example of the file content:
previdia.z1 = Zone 1
previdia.g2 = Group 2
previdia.l1.d1 = Device 1 Loop 1
previdia.l8.d4 = Device 8 Loop 4
Where "previdia" is the I/O Server id of the INIM PREVIDIA I/O Server
If you have multiples INIM PREVIDIA I/O Servers:
previdia1.z1 = Zone 1 Previdia 1
previdia2.z1 = Zone 2 Previdia 2
previdia1.l1.d1 = Device 1 Loop 1 Previdia 1
previdia2.l2.d1 = Device 1 Loop 1 Previdia 2
Datapoints
ID | Value | R/W | Description |
---|---|---|---|
connection | online | R | connection established |
offline | R | HSYCO can't connect to the panel | |
reset | 1 | W | force panel reset |
buzzeroff | 1 | W | force buzzer off |
prealarmoff | 1 | W | force pre alarm off |
patrol | 1 | W | start patrol mode |
mute | 0 | W | disable panel mute |
1 | W | enable panel mute | |
l<k>.d<n> | enable | W | device <n> of loop <k> is enabled |
disable | W | device <n> of loop <k> is disabled | |
z<n> | enable | W | zone <n> is enabled |
disable | W | zone <n> is disabled | |
global.night.mode | 0 | R | night mode is not active |
1 | R | night mode is active | |
global.silence | 0 | R | panel is not muted |
1 | R | panel is muted | |
global.patrol | 0 | R | patrol mode is not active |
1 | R | patrol mode is active | |
global.buzzer.silence | 0 | R | buzzer is active |
1 | R | buzzer is not active | |
global.access.level | <n> | R | panel access level 1..4 |
global.alarm | 0 | R | no active alarms |
1 | R | at least one active alarm | |
global.prealarm | 0 | R | no active pre alarms |
1 | R | at least one active pre alarm | |
global.notice | 0 | R | no active notice |
1 | R | at least one active notice | |
global.fault | 0 | R | no faults |
1 | R | at least one fault | |
global.disabled | 0 | R | panel is enabled |
1 | R | panel is disabled | |
global.fault.rs485.1 | 0 | R | no rs485 1 power supply fault |
1 | R | rs485 1 power supply fault | |
global.fault.rs485.2 | 0 | R | no rs485 2 power supply fault |
1 | R | rs485 2 power supply fault | |
global.fault.battery | 0 | R | battery is ok |
1 | R | battery fault | |
global.low.battery | 0 | R | battery is ok |
1 | R | low battery | |
global.fault.net | 0 | R | 220V voltage is ok |
1 | R | 220V fault | |
global.rt.net | 0 | R | rt net is ok |
1 | R | rt net problem | |
global.fault.ground | 0 | R | ground is ok |
1 | R | ground fault | |
global.fault.ifm16io.<n> | 0 | R | ifm16io module <n> is ok |
1 | R | ifm16io module <n> fault | |
global.fault.ifmlan | 0 | R | ifmlan is ok |
1 | R | ifmlan fault | |
global.fault.emergency.cpu | 0 | R | cpu is ok |
1 | R | cpu fault | |
global.fault.ifmnet | 0 | R | ifmnet is ok |
1 | R | ifmnet fault | |
global.fault.ifmdial | 0 | R | ifmdial is ok |
1 | R | ifmdial fault | |
global.fault.ifm2l.<n> | 0 | R | ifm2l module <n> is ok |
1 | R | ifm2l module <n> fault | |
global.fault.ifmext.<n> | 0 | R | ifmext module <n> is ok |
1 | R | ifmext module <n> fault | |
global.fault.ifm4io.<n> | 0 | R | ifm4io module <n> is ok |
1 | R | ifm4io module <n> fault | |
global.fault.power.supply.<n> | 0 | R | power supply <n> is ok |
1 | R | power supply <n> fault | |
global.fault.fpmled.<n> | 0 | R | fpmled module <n> is ok |
1 | R | fpmled module <n> fault | |
global.fault.ifmr4.<n> | 0 | R | ifmr4 module <n> is ok |
1 | R | ifmr4 module <n> fault | |
global.loop.fault.<n> | 0 | R | loop <n> is ok |
1 | R | loop <n> fault | |
global.loop.disabled.<n> | 0 | R | loop <n> is enabled |
1 | R | loop <n> disabled | |
global.loop.alarm.<n> | 0 | R | loop <n> has at least one device in alarm |
1 | R | loop <n> no devices in alarm | |
global.loop.prealarm.<n> | 0 | R | loop <n> has at least one device in prealarm |
1 | R | loop <n> no devices in prealarm | |
z<n>.alarm | 0 | R | no alarm on zone <n> |
1 | R | alarm on zone <n> | |
z<n>.prealarm | 0 | R | no prealarm on zone <n> |
1 | R | prealarm on zone <n> | |
z<n>.notice | 0 | R | no notice on zone <n> |
1 | R | notice on zone <n> | |
z<n>.fault | 0 | R | no fault on zone <n> |
1 | R | fault on zone <n> | |
z<n>.disabled | 0 | R | zone <n> is enabled |
1 | R | zone <n> is disabled | |
z<n>.test | 0 | R | zone <n> is not in test mode |
1 | R | zone <n> is in test mode | |
z<n>.test | 0 | R | zone <n> smoke detection enable |
1 | R | zone <n> smoke detection disabled | |
g<n>.alarm | 0 | R | no alarm on group <n> |
1 | R | alarm on group <n> | |
g<n>.prealarm | 0 | R | no prealarm on group <n> |
1 | R | prealarm on group <n> | |
g<n>.notice | 0 | R | no notice on group <n> |
1 | R | notice on group <n> | |
g<n>.disabled | 0 | R | group <n> is enabled |
1 | R | group <n> is disabled | |
l<n>.d<k>.alarm | 0 | R | device <k> of loop <n> is not in alarm |
1 | R | device <k> of loop <n> alarm | |
l<n>.d<k>.prealarm | 0 | R | device <k> of loop <n> is not in prealarm |
1 | R | device <k> of loop <n> prealarm | |
l<n>.d<k>.notice | 0 | R | device <k> of loop <n> is not in notice |
1 | R | device <k> of loop <n> notice | |
l<n>.d<k>.fault | 0 | R | device <k> of loop <n> is not in fault |
1 | R | device <k> of loop <n> fault | |
l<n>.d<k>.disabled | 0 | R | device <k> of loop <n> is enabled |
1 | R | device <k> of loop <n> is disabled | |
l<n>.d<k>.out | 0 | R | device <k> of loop <n> out open |
1 | R | device <k> of loop <n> out closed | |
l<n>.d<k>.test | 0 | R | device <k> of loop <n> is not in test mode |
1 | R | device <k> of loop <n> is in test mode | |
ifm4io.<n>.c<o> | 0 | W | turn off channel <o> of module ifm4io <n> |
1 | W | turn on channel <o> of module ifm4io <n> | |
ifm4io.<n>.c<o> | enable | W | enable channel <o> of module ifm4io <n> |
disable | W | disable channel <o> of module ifm4io <n> | |
ifm4io.<n>.c<o>.alarm | 0 | R | ifm4io <k> channel <o> is not in alarm |
1 | R | ifm4io <k> channel <o> alarm | |
ifm4io.<n>.c<o>.prealarm | 0 | R | ifm4io <k> channel <o> is not in prealarm |
1 | R | ifm4io <k> channel <o> prealarm | |
ifm4io.<n>.c<o>.notice | 0 | R | ifm4io <k> channel <o> is not in notice |
1 | R | ifm4io <k> channel <o> notice | |
ifm4io.<n>.c<o>.fault | 0 | R | ifm4io <k> channel <o> is not in fault |
1 | R | ifm4io <k> channel <o> fault | |
ifm4io.<n>.c<o>.disabled | 0 | R | ifm4io <k> channel <o> is enabled |
1 | R | ifm4io <k> channel <o> is disabled | |
ifm4io.<n>.c<o>.out | 0 | R | ifm4io <k> channel <o> out is not active |
1 | R | ifm4io <k> channel <o> out is not active | |
ifm4io.<n>.c<o>.test | 0 | R | ifm4io <k> channel <o> is not in test mode |
1 | R | ifm4io <k> channel <o> is in test mode | |
io.<n>.alarm | 0 | R | io <n> is not in alarm |
1 | R | io <n> alarm | |
io.<n>.prealarm | 0 | R | io <n> is not in alarm |
1 | R | io <n> prealarm | |
io.<n>.notice | 0 | R | io <n> is not in notice |
1 | R | io <n> notice | |
io.<n>.fault | 0 | R | io <n> is not in fault |
1 | R | io <n> fault | |
io.<n>.disabled | 0 | R | io <n> is enabled |
1 | R | io <n> is disabled | |
io.<n>.out | 0 | R | io <n> out is not active |
1 | R | io <n> out is active | |
io.<n>.out | 0 | W | de-activate io <n> |
1 | W | activate io <n> | |
io.<n> | disable | W | disable io <n> |
enable | W | enable io <n> | |
io.<n>.test | 0 | R | io <n> is not in test |
1 | R | io <n> in test | |
write.coil.register.<r> | 1 | W | write "true" on the generic coil register <r> |
0 | W | write "false" on the generic coil register <r> |
User Interface
UISET Actions
ID | Attribute | Value | Set to |
---|---|---|---|
z<n>.name | value | <String> | name assigned to zone <n> |
g<n>.name | value | <String> | name assigned to group <n> |
l<k>.d<n>.name | value | <String> | name assigned to device <n> of loop <k> |
connection.label | visible | true | when datapoint connection = offline |
false | when datapoint connection = online | ||
<datapoint_id>.1.label | visible | true | when datapoint with ID <datapoint_id> has value '1' |
false | when datapoint with ID <datapoint_id> has value '0' | ||
<datapoint_id>.0.label | visible | true | when datapoint with ID <datapoint_id> has value '0' |
false | when datapoint with ID <datapoint_id> has value '1' |
Release Notes
3.8.0
- initial version release
Inim and Previdia are registered trademarks of Inim Electronics s.r.l.