Modbus interface configurator
- Last UpdatedNov 05, 2024
- 8 minute read
The Modbus Interface Configurator (PI MIC) is a tool for configuring the ModbusE interface and the Ethernet nodes in the interface configuration file.
The Modbus Interface Configurator provides a graphical user interface for configuring every Ethernet node used by an instance of a ModbusE interface and the interface itself. If the interface is configured by the utility, the comma-separated values interface configuration file (e.g. ModbusEConfig.csv) for the interface will be maintained by the utility and all configuration changes will be kept in that file.
The user can either launch the PI MIC from the ModbusE page of the ICU or run PIModbusE_Configurator.exe , located in the installation directory.
The following sections describe the procedures to use the Modbus Interface Configurator tool and the elements of the graphical user interface of the application.
-
Preview
Use the preview button to view the pending configuration file without saving it:
.
-
Edit
Use the Edit button to add, remove, copy, or rename a Modbus device. Note that this button is only available when the Nodes tab is active.
-
Interface tab
The interface tab of the utility contains all the interface configuration parameters that are specific to ModbusE interface and that can be changed at run time (unless otherwise noted).
-
Interface ID
The Interface ID field allows the user to select the interface identifier for which the interface configuration file will be associated ( /id=#). The /id parameter value is not a configurable value in the sense that it is used to configure the interface. Its sole purpose is to verify that the configuration file corresponds to the instance of the interface that read the file.
Note: The interface ID value is not editable when the configurator is launched from the PI Interface Configuration Utility (ICU). Since the ID of the interface being configured in the ICU has already been determined, the configurator disables the value as shown in the figure above.
-
Runtime configuration
The runtime configuration group of checkbox buttons gives the user the ability to enable runtime configuration of Ethernet nodes for the interface
.
-
Allow configuration
This enables run-time configuration of Ethernet nodes (/pcf = #).
-
Reduced logging
The reduced logging group of fields allows the user the ability to enable reduced logging and set the maximum number of messages that may be logged within an interval of time:
.
-
Reduce logging
This enables reduced logging. If reduce logging is not checked, the messages per interval and log suspension interval values is disabled.
-
Messages per interval
This value is used to specify the maximum number of messages that may be logged during the log suspension interval (/mpi=#).
-
Log suspension interval
This value is used to specify the log suspension interval, in seconds, that messages may be logged until the maximum limit is reached (/lsi=#).
-
System status codes
The system status codes group of fields allow the user the ability to set a custom value for the system digital state to be used for the status of a tag when the device it is associated with is disabled. The default value is 213 which is the system number for the unit down state, but the user can create a custom system digital state name for any unused state number:
.
-
Device disabled
This value is used to specify the system digital state number to be used when a device is disabled (/ddsysstate=#).
-
Output Point Values
The Output Point Values group allows the user the ability to record the value of the source tag as the output tag value without any preprocessing of the value. The default state is that output point values may be processed with conversion formulas before being recorded:
.
-
Timestamps
The Timestamps group gives the user the ability to set the tag timestamps when a request is performed. The default state is that tag timestamps are set when a response is received:
.
-
Set on requests
This value is used to enable the setting of the tag timestamps when a request is performed ( /reqts=#).
-
Ignore Flags
The Ignore Flags group of checkboxes allows the user the ability to ignore some or all of the Modbus and unknown exceptions that may occur when communicating with a device and to ignore the failover triggers caused by a change to a device status.
.
-
All exceptions
This value is used to specify that all exceptions will be ignored and a retry of the request will be done ( /ialler=#).
-
CRC and unknown exceptions
This value is used to specify that the CRC exception and all unknown exceptions will be ignored and a retry of the request will be performed ( /icrcer=#). Note that this will be automatically set if All exceptions is set.
-
Device Status failover triggers
This value is used to specify that a change to the device status will not trigger a failover ( /idevstat)=#.
-
Logging
The Logging group of checkbox buttons gives the user the ability to turn on and off logging for particular types of PI log messages ( logging=#):
.
-
Communications
Log communications issues.
-
Requests
Log Modbus request buffer issues.
-
Responses
Log Modbus response buffer issues.
-
Tags
Log tag issues.
-
Parameters
Log parameter issues.
-
Configuration
Log configuration failures
-
Exceptions
Log Modbus exception responses.
-
Warnings
Log warning messages.
-
Information
Log informational messages.
-
Nodes tab
The Nodes Tab of the utility contains all of the Ethernet node configuration parameters that can be changed at run-time (unless otherwise noted) as shown below:
-
Nodes
The Nodes group of fields allows the user the ability to add, remove and edit the Ethernet nodes and their related parameters.
-
Nodes list
Lists each configured Ethernet node. Any Ethernet node listed that is not checked is disabled ( /disabled=1).
-
IP Address/Hostname
The IP address or hostname ( /dn=address:#).
-
Port
The Ethernet port number ( /dn=address:#).
-
Add
Adds the node identified by the values in the IP Address/Hostname and Port fields to the Nodes list.
-
Remove
Removes the node selected in the Nodes list from the list.
-
Timing
The Modbus Ethernet communications timing group of controls allows the user the ability to set the following communications delays and timeouts for the selected Ethernet node:
-
Min. Delay
Use this parameter to specify the minimum time in milliseconds between requests to the selected node ( /mindelay=#). For example, setting this value to 50 guarantees that successive requests to the device are at least 50 milliseconds apart.
-
Max. Requests
Use this parameter to limit the maximum number of simultaneous requests that the interface will send to the selected node ( /maxrequests=#). The interface will send up to this many requests to the node before waiting for a response or timeout. For best performance, set this parameter equal to the value of NumberMaxOfServerTransaction specified in the device's documentation.
-
Response Timeout
This is used to specify a maximum wait time for a response, specified in seconds ( /to=#).
-
Request Retries
This is used to specify a maximum number of requests before a failure is logged and IO Timeout is written to all affected tags ( /cn=#).
-
Request Length
This is used to specify the request length, specified in bytes, of Modbus messages ( /requestlen=#). If the request length is set to 0, the interface automatically uses 100 bytes for function codes 1 and 2 and 200 bytes for all other function codes. Otherwise, all requests will use the number of bytes specified.
-
Reconnect Interval
This is used to specify the reconnect interval, specified in seconds, between any disconnect from and an attempt to reconnect to an Ethernet device ( /rci=#). The reconnect interval defaults to 30 seconds but can be set from 1 to 100 seconds.
-
Byte Swap
The byte swap group of controls allows the user the ability to change the byte order from the default order for tags of a specified data type on the selected Ethernet node that the ModbusE interface is expecting.
-
Data Type 4
This parameter ( /swap4) is used only in conjunction with points of data type 4.
-
Data Type 6
This parameter ( /swap6) is used only in conjunction with points of data type 6.
-
Data Type 7
This parameter ( /swap7) is used only in conjunction with points of data type 7.
-
Data Type 13
This parameter ( /swap13) is used only in conjunction with points of data type 13.
-
Data Type 15
This parameter ( /swap15) is used only in conjunction with points of data type 15.
-
Data Type 16
This parameter ( /swap16) is used only in conjunction with points of data type 16.
-
String
This parameter ( /swapstring) is used only in conjunction with points of string data types.
-
MBAP Header
Since some Modbus systems may not support the standard Modbus Application Protocol (MBAP) header, an optional parameter ( /hcp) is provided so that the message packets do not use the standard header:
.
-
Node Debug Trace
The trace group of buttons and fields gives the user the ability to turn on and off debug tracing for the selected Ethernet node. In general, tracing need only be turned on when instructed by our technical support personnel.
-
Trace All I/O for this Node
Trace all packets sent to or received from the selected node.
-
Trace I/O for Specific Point
Trace all packets sent to or received from the selected node that contain requests or responses relevant to a particular PI point. Entries in the trace file includes the point name.