Selecting a monitoring method, Sending periodic heartbeats – Echelon ISI User Manual
Page 95

93
ISI Programmer’s Guide
2. If the device supports automatic enrollment for monitoring and but does
not support connection extension, the device calls the the
IsiIsConnected() function to determine if the monitored NV is already in
a connection. If the monitored NV is not already in a connection, the
device accepts the connection invitation from the monitor point. If the
monitored NV is already in a connection, the device does not accept the
invitation.
If a device has accepted an automatic monitoring connection, and later needs to
create a connection due to a manual request or other automatic request, it either
extends the connection if it supports connection extension, or it replaces the
monitoring connection if it does not or if it cannot extend the connection due to
lack of an available alias and connection table entries. In the latter case, the
controller will lose its monitoring connection. The controller can detect this by
monitoring CSMO and CSMA messages. When either is received from a
monitored device, the controller must map the assembly number to monitored
network variables as described in
ISI Connection Model
in Chapter 2 and silently
join the connection. If the device supports heartbeats, the controller can also
detect lost monitoring connections by detecting lost heartbeat messages.
Selecting a Monitoring Method
A controller should implement all three monitoring methods described in this
section to support all device types with the best response time supported by each.
Device manufacturers can choose from the monitoring methods described in this
section depending on how time-critical monitored data is for each device, and
depending on available code space. The following are the recommended
monitoring methods for devices, in decreasing order code size and functionality:
1. Support automatic enrollment to monitor points with connection
extension and heartbeats.
2. Support automatic enrollment to monitor points with connection
extension.
3. Support automatic enrollment to monitor points with connection
replacement.
4. Support controlled enrollment with connection extension.
5. Support controlled enrollment with connection replacement.
6. Support controlled enrollment without connection extension or connection
replacement.
7. Support polling.
Sending Periodic Heartbeats
boolean IsiQueryHeartbeat(unsigned
NvIndex
);
boolean IsiIssueHeartbeat(unsigned
NvIndex
);