Ats
Aritech ATS panels are multi-area intrusion detection systems. The integration with HSYCO can be accomplished via direct control through the RS-232 port on the serial module. The ATS I/O Server supports the integration of more than one unit within the same HSYCO interface.
Contents
Communication
Employ an RS-232 cable to connect the panel directly to HSYCO or to an Ethernet/RS-232 gateway.
The cable must follow this pinout diagram:
RS-232 parameters:
Baud rate | same as panel settings (default 4800) |
Data bits | 8 |
Stop bit | 1 |
Parity | none |
Flow control | RTS/CTS |
HSYCO Configuration
Add an ATS I/O Server in the I/O Servers section of the Settings and set its parameters:
Communication
- Comm ID: select the comm port connected to the panel.
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 | ||
pollinterval | 5 | n > 0 | the data acquisition interval, in seconds |
logsize | 20 | n ≥ 0 | the number of log lines to display in the UI object |
maxzone | 256 | 0 ... 256 | highest zone index set on the panel. This option is recommended to improve the I/O Server's performances |
maxoutput | 256 | 0 ... 256 | highest output index set on the panel. This option is recommended to improve the I/O Server's performances |
maxras | 16 | 0 ... 16 | highest RAS (Remote Arming Station) index set on the panel. This option is recommended to improve the I/O Server's performances |
ats.ini
The ats.ini file is a specific configuration file located in the root directory. Here you can define the names of zones and areas so that they will be automatically added to the user interface.
Add a new line for each name using this format:
<io_server_id>.zone.<n> = <name> <io_server_id>.area.<n> = <name>
For instance:
ats.zone.1 = Kitchen ats.zone.2 = Corridor ats.area.1 = Floor 1
Datapoints
ID | Value | R/W | Description |
---|---|---|---|
connection | online | R | connection established |
offline | R | HSYCO can't connect to the panel | |
armed | 1 | R | at least one area is armed |
W | arm all active areas | ||
0 | R | no area is armed | |
W | disarm all active areas | ||
alarm | 1 | R | at least one area is in alarm |
0 | R | no area is in alarm | |
reset | W | reset system alarms | |
clock | read | W | request the reading of the panel’s clock value |
<date_time> | R | the panel’s clock is set to <date_time>. The value has the format "yyyy-mm-dd hh:mm:ss" (e.g. "2012-12-30 16:59:23").
This event is only triggered after a request. | |
a<n>.name | <text> | R | area <n> has been assigned the name <text> |
z<n>.name | <text> | R | zone <n> has been assigned the name <text> |
a<n>.armed | 1 | R | area <n> is armed |
W | arm area <n> | ||
0 | R | area <n> is disarmed | |
W | disarm area <n> | ||
force | W | force arm area <n> | |
a<n>.alarm | 1 | R | area <n> is in alarm |
0 | R | area <n> is not in alarm | |
a<n>.open | 1 | R | area <n> has open zones |
0 | R | area <n> has no open zones | |
a<n>.isolated | 1 | R | area <n> has isolated zones |
0 | R | area <n> has no isolated zones | |
a<n>.exit | 1 | R | exit time is active on area <n> |
0 | R | exit time is not active on area <n> | |
a<n>.entry | 1 | R | entry time is active on area <n> |
0 | R | entry time is not active on area <n> | |
a<n>.alarm.local | 1 | R | local alarms are active on area <n> |
0 | R | no local alarm is active on area <n> | |
a<n>.warning | 1 | R | console warning is active on area <n> |
0 | R | console warning is not active on area <n> | |
z<n>.state1[Note] | tamper | R | tamper active on zone <n> |
alarm | R | alarm active on zone <n> | |
closed | R | zone <n> closed | |
night | R | night holdup active on zone <n> | |
local | R | local alarm active on zone <n> | |
isolated | R | zone <n> isolated | |
z<n>.state2[Note] | short | R | zone <n> in short circuit |
open | R | zone <n> open | |
closed | R | zone <n> closed | |
active | R | zone <n> active | |
masked | R | zone <n> masked | |
z<n>.isolated | 1 | W | isolate zone <n> |
0 | W | de-isolate zone <n> | |
z<n>.alarm | reset | W | reset alarms on zone <n> |
o<n>.active | 1 | R | output <n> is active |
W | activate output <n> | ||
0 | R | output <n> is not active | |
W | deactivate output <n> | ||
o<n>.inverted | 1 | R | output <n> is inverted |
0 | R | output <n> is not inverted | |
ras<n>.offline | 1 | R | RAS <n> is offline |
0 | R | RAS <n> is online | |
ras<n>.tamper | 1 | R | RAS <n> is tampered |
0 | R | RAS <n> is not tampered | |
ras<n>.isolated | 1 | R | RAS <n> is isolated |
0 | R | RAS <n> is not isolated | |
ras<n>.inhibited | 1 | R | RAS <n> is inhibited |
0 | R | RAS <n> is not inhibited | |
dgp<n>.offline | 1 | R | DGP <n> is offline |
0 | R | DGP <n> is online | |
dgp<n>.isolated | 1 | R | DGP <n> is isolated |
0 | R | DGP <n> is not isolated | |
dgp<n>.inhibited | 1 | R | DGP <n> is inhibited |
0 | R | DGP <n> is not inhibited | |
dgp<n>.battery.missing | 1 | R | battery missing on DGP <n> |
0 | R | battery ok on DGP <n> | |
dgp<n>.battery.low | 1 | R | battery low on DGP <n> |
0 | R | battery ok on DGP <n> | |
dgp<n>.battery.test | 1 | R | battery test active on DGP <n> |
0 | R | no battery test active on DGP <n> | |
dgp<n>.battery.test.fail | 1 | R | battery test failed on DGP <n> |
0 | R | battery test ok on DGP <n> | |
dgp<n>.mains.fail | 1 | R | mains failure on DGP <n> |
0 | R | mains ok on DGP <n> | |
dgp<n>.fuse.fail | 1 | R | fuse failure on DGP <n> |
0 | R | fuses ok on DGP <n> | |
dgp<n>.siren.fail | 1 | R | siren failure on DGP <n> |
0 | R | siren ok on DGP <n> | |
dgp<n>.tamper | 1 | R | DGP <n> is tampered |
0 | R | DGP <n> is not tampered |
- Note
- The value of a zone status (datapoints z<n>.state1 and z<n>.state2) depends on the configuration of the zone typology.
User Interface
Ats Object
The user interface for the Aritech ATS multi-area intrusion detection system:
The Ats object is listed in the Project Editor’s new object list only when at least one Aritech ATS I/O Server is defined.
Parameters
- server id: the server ID
- position: the object's position. Use the pixels or rows and columns coordinates format
Syntax
(ats <server id>; <position>)
E.g.
(ats serverid; x10y20)
UISET Actions
ID | Attribute | Set to | |
---|---|---|---|
log<n> | value | the line <n> of the log list (<n> from 1 to 20, <n> = 1 : latest entry) | |
log0 | value | the latest line of the log for a short period | |
a<n>.name | value | the name assigned to area <n> | |
z<n>.name | value | the name assigned to zone <n> | |
connection.label | visible | true when the system is not connected to HSYCO, false otherwise | |
armed.label.1 | visible | true when at least one area is armed, not visible otherwise | |
armed.label.0 | visible | true when no area is armed, not visible otherwise | |
alarm.label.1 | visible | true when at least one area is in alarm, not visible otherwise | |
alarm.label.0 | visible | true when no area is in alarm, not visible otherwise | |
a<n>.armed.label.1 | visible | true when area <n> is armed, not visible otherwise | |
a<n>.armed.label.0 | visible | true when area <n> is not armed, not visible otherwise | |
a<n>.alarm.label.1 | visible | true when area <n> is in alarm, not visible otherwise | |
a<n>.alarm.label.0 | visible | true when area <n> is not in alarm, not visible otherwise | |
a<n>.open.label.1 | visible | true when area <n> has open zones, not visible otherwise | |
a<n>.open.label.0 | visible | true when area <n> has no open zone, not visible otherwise | |
a<n>.isolated.label.1 | visible | true when area <n> has isolated zones, not visible otherwise | |
a<n>.isolated.label.0 | visible | true when area <n> has no isolated zone, not visible otherwise | |
a<n>.exit.label.1 | visible | true when the exit time is active on area <n>, not visible otherwise | |
a<n>.exit.label.0 | visible | true when the exit time is not active on area <n>, not visible otherwise | |
a<n>.entry.label.1 | visible | true when the entry time is active on area <n>, not visible otherwise | |
a<n>.entry.label.0 | visible | true when the entry time is not active on area <n>, not visible otherwise | |
a<n>.alarm.local.label.1 | visible | true when local alarms are active on area <n>, not visible otherwise | |
a<n>.alarm.local.label.0 | visible | true when no local alarm is active on area <n>, not visible otherwise | |
a<n>.warning.label.1 | visible | true when the console warning is active on area <n>, not visible otherwise | |
a<n>.warning.label.0 | visible | true when the console warning is not active on area <n>, not visible otherwise | |
o<n>.active.label.1 | visible | true when output <n> is active, not visible otherwise | |
o<n>.active.label.0 | visible | true when output <n> is inactive, not visible otherwise | |
o<n>.inverted.label.1 | visible | true if output <n> is inverted, not visible otherwise | |
o<n>.inverted.label.0 | visible | true if output <n> is not inverted, not visible otherwise | |
ras<n>.offline.label.1 | visible | true if RAS <n> is offline, not visible otherwise | |
ras<n>.offline.label.0 | visible | true if RAS <n> is online, not visible otherwise | |
ras<n>.tamper.label.1 | visible | true when RAS <n> is tampered, not visible otherwise | |
ras<n>.tamper.label.0 | visible | true when RAS <n> is not tampered, not visible otherwise | |
ras<n>.isolated.label.1 | visible | true if RAS <n> is isolated, not visible otherwise | |
ras<n>.isolated.label.0 | visible | true if RAS <n> is not isolated, not visible otherwise | |
ras<n>.inhibited.label.1 | visible | true if RAS <n> is inhibited, not visible otherwise | |
ras<n>.inhibited.label.0 | visible | true if RAS <n> is not inhibited, not visible otherwise | |
dgp<n>.offline.label.1 | visible | true if DGP <n> is offline, not visible otherwise | |
dgp<n>.offline.label.0 | visible | true if DGP <n> is online, not visible otherwise | |
dgp<n>.isolated.label.1 | visible | true if DGP <n> is isolated, not visible otherwise | |
dgp<n>.isolated.label.0 | visible | true if DGP <n> is not isolated, not visible otherwise | |
dgp<n>.inhibited.label.1 | visible | true if DGP <n> is inhibited, not visible otherwise | |
dgp<n>.inhibited.label.0 | visible | true if DGP <n> is not inhibited, not visible otherwise | |
dgp<n>.battery.missing.label.1 | visible | true if the battery of DGP <n> is missing, not visible otherwise | |
dgp<n>.battery.missing.label.0 | visible | true if the battery of DGP <n> is ok, not visible otherwise | |
dgp<n>.battery.test.label.1 | visible | true if the battery test is active on DGP <n>, not visible otherwise | |
dgp<n>.battery.test.label.0 | visible | true if the battery test is not active on DGP <n>, not visible otherwise | |
dgp<n>.battery.low.label.1 | visible | true if the battery of DGP <n> is low, not visible otherwise | |
dgp<n>.battery.low.label.0 | visible | true if the battery of DGP <n> is ok, not visible otherwise | |
dgp<n>.mains.fail.label.1 | visible | true if a mains failure is active on DGP <n>, not visible otherwise | |
dgp<n>.mains.fail.label.0 | visible | true if no mains failure is active on DGP <n>, not visible otherwise | |
dgp<n>.battery.test.fail.label.1 | visible | true if the battery test failed on DGP <n>, not visible otherwise | |
dgp<n>.battery.test.fail.label.0 | visible | true if the battery test succeeded on DGP <n>, not visible otherwise | |
dgp<n>.fuse.fail.label.1 | visible | true if a fuse failed on DGP <n>, not visible otherwise | |
dgp<n>.fuse.fail.label.0 | visible | true if no fuse failed on DGP <n>, not visible otherwise | |
dgp<n>.siren.fail.label.1 | visible | true if a siren failed on DGP <n>, not visible otherwise | |
dgp<n>.siren.fail.label.0 | visible | true if no siren failed on DGP <n>, not visible otherwise | |
dgp<n>.tamper.label.1 | visible | true when DGP <n> is tampered, not visible otherwise | |
dgp<n>.tamper.label.0 | visible | true when DGP <n> is not tampered, not visible otherwise |
USER Commands
Name | Param | Action |
---|---|---|
armed | 1 | arm all active areas |
0 | disarm all active areas | |
alarm | reset | reset system alarms |
a<n>.armed | 1 | arm area <n> |
0 | disarm area <n> | |
force | force arm area <n> | |
z<n>.isolated | 1 | isolate zone <n> |
0 | de-isolate zone <n> | |
z<n>.alarm | reset | reset alarms on zone <n> |
o<n>.active | 1 | activate output <n> |
0 | deactivate output <n> |
Release Notes
3.4.0
- bug fix: polling failure occurring for a high number of zones
3.2.0
- added event “ID.clock”
- removed I/O Server option “maxdgp”
3.1.0
- initial release
ATS and Aritech are registered trademarks of UTC Fire & Security.