Blocks IPWatchdog

From IPLOG
Revision as of 11:12, 15 April 2020 by Z013 (talk | contribs)
Jump to: navigation, search

Description:

The IPWatchdog blocks are used to verify the availability of a remote IP address based on an ARP or ICMP query.

Back to Libraries


IPWDG_ARP

Returns ARP ping status of given ip address

IPWDG ARP.png

Asynchronous interface
in IP_ADDR string ip address
in TMO_S int timeout in seconds
out Q bool status


IPWDG_ICMP

Returns ICMP ping status of given ip address

IPWDG ARP.png

Asynchronous interface
in IP_ADDR string ip address
in TMO_S int timeout in seconds
out Q bool status


Block behavior:

The pulse on EXEC triggers the IPWDG block. In the beginning ICMP/ARP request is send to the IP address. At the same time BUSY output changing the status of the log. 0 to 1, TMO_S running and block is waiting for response.


1. If a response is received during TMO_S, TMO_S is reseted. BUSY is set to log. 0, VALID is set to 1 (operation successful, output set) and Q is set to log. 1 (IP is available).

2. If a response is not received, BUSY remains in the log. 1 until TMO_S expires. After TMO_S expires BUSY goes to log.0, VALID goes to log.1 (operation successful, output set). Q remains in log. 0 (IP is not available).


Note: EXEC should be set to a value greater than TMO_S to avoid unnecessary restart when the block cycle is not completed and waits for TMO_S.


Examples

GEN_PULSE generates pulse every T#2s (2 seconds) to trigger IPWDG block. Within one cycle block waits to answer from the remote device (IP_ADDR) for TMO_S timer. If the remote device does not respond by this time, the output is set to log. 0. Otherwise, the output is set to log. 1.


IPWDG_ICMP

IPWDG ICMP Example.png

IPWDG_ARP

IPWDG ARP Example.png

Back to Libraries