Ats

From HSYCO
Revision as of 12:34, 18 February 2014 by Hsyco (talk | contribs) (→‎Communication)
Jump to navigation Jump to search

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.

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:

Ats RS232 cable.png

RS-232 parameters:

Baud rate same as panel settings (default 4800)
Data bits 8
Stop bit 1
Parity none
Flow control RTS/CTS

CSx75 Configuration

The panel must be previously configured to have the serial port enabled and to use the binary control protocol. Refer to its configuration manual for more details.

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
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:

Ats UI Object 1.png Ats UI Object 2.png Ats UI Object 3.png

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. Supports Redirect variables
  • 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

You can use any object that accepts a text attribute, usually text but also marquee and others, according to the following table:

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

The ATS I/O Server supports system commands to be inserted within the Web interface to directly send commands to the panel. Use any ordinary (user) button, setting the name and param fields according to this table:

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.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.