Technical FAQs

Ask a Question

How to setup Advanced Modem Reset Procedure

Issue

In my FAQ272373 reset procedure is fixed and based on the certain time. Purpose of this resolution is to describe more efficient way to reset the modem in case of interrupted comms. Obviously, communication drop can be caused by another reason.

Product Line

SCADAPack E RTUs

Environment

E Configurator, SCADAPack Workbench 6, Telnet

Resolution

SCADAPack E range products provides valuable communication statistics which can be accessed through the System Analog Points:

Description System Analog Point Number
Total DNP3 Master 1 Fragments Received 53000
Master 1 Unsolicited Fragments Transmitted 53001
Master 1 Unconfirmed (timed-out) Unsolicited Responses 53002
Total DNP3 Master 2 Fragments Received 53003
Master 2 Unsolicited Fragments Transmitted 53004
Master 2 Unconfirmed (timed-out) Unsolicited Responses 53005
Total DNP3 Master 3 Fragments Received 53006
Master 3 Unsolicited Fragments Transmitted 53007
Master 3 Unconfirmed (timed-out) Unsolicited Responses 53008

 

 

 

 

 

 

 

In this resolution we will rely on value provided by the point #53000. In case of unsolicited only data exchange mode system point #53002 can be used. 

First we need to define derived boolean point 1100 in the database which will be used as a trigger to perform the modem reset in RTU application:

SCADAPacks of E range has built-in alarm functionality so we will reference our binary point as an alarm for no-change:

If Total value of DNP3 Master 1 Fragments Received has no changes after 600 seconds binary point 1100 value will be set to true.

The advanced modem reset procedure is based on manipulation with modem Initialisation string. When binary point 1100 is set to true Initialisation string is changed to AT+CFUN=1. Th GPRS Disconnect routine is triggered with consequent port reopen routine with configurable timeout. In the end AT String is set back to defalut to allow the modem to reconnect.

This FAQ contain the function block that can be used to perform the required routine.



The block needs to be enabled by setting resetEnabled Input to TRUE. Output resetCounter can be used to count how many times reset was performed.
initString has to be connected to IO Device linked to the System String point associated with AT Init String:

Below you can find the table with System Point mubers and relevant Serial ports:

SCADAPack Serial Port System String Point Number
Port 0 50200
Port 1 50201
Port 2 50202
Port 3 50203
Port 4 50204








More details how to write String points could be obtained in the SCADAPack E Reference Manuals > Target 5 I/O Device Technical Reference Manual > I/O Devices > RTU Database I/O Devices > Writing RTU String Points
Was this helpful?
What can we do to improve the information ?