Modbus Monitor XPF

User's Guide

Modbus Monitor XPF application allows communication to Modbus devices using Windows-based Personal Computer. The application is currently distributed in Microsoft Store and runs on the Windows Platform. The application can be downloaded and installed on a trial basis to try the features before purchasing the full license.

The Modbus Monitor XPF application contains two applications in one and each application contains two communication options. The application contains Modbus Master and Modbus Server along with Serial and TCP options for each option.

This guide helps you get started with the basic operation and covers some of the advanced scripting commands available for purchased applications.

Main UI

The Main Screen is divided into three parts (1) Control Panel (2) Navigation Panel (3) Monitor Point List Table

  1. Control Panel

    • Shows Options for Tab chosen in Navigation Panel

    • Details for each option in the control panel can be found in later sections of this document.

  2. Navigation Panel

    • Shows Main Features of the application as Tabs (Shows List, Master, Server, etc.) similar to File Menu in classic Windows Application.

    • Details of each Tab or feature can be found in sections listed in this document

  3. Monitor Points List Table

    • Shows all monitor points defined for Modbus Master and/or Server mode

    • Add or Remove monitor points in the List Tab

List (Tab)

This tab allows managing the Monitor Points List for Modbus Master and Server mode.

  • + Add New Monitor Point with Default Values

  • - Remove Selected Monitor Point from Monitor Point List Table

  • Import CSV file containing list of all Monitor Points and Settings

  • Export CSV file containing list of all Monitor Points and Settings

  • Delete All monitoring points from Monitor Point List Table

  • Filter: Filter the list matching the value contained in the Name field

  • One Based: Addresses values in the list starts with 1 (1-65536) instead of 0 (0-65535)


There are two ways to add new Monitor Point:

1) Click + icon to let the program automatically add monitor points with all Modbus related defaults. This is the best way to add a new monitor point.

2) Just start typing in the empty cell on the new Row. Be sure to fill out all cells to correct values or error will be shown.

In both cases, the monitor points must be loaded with correct values and formatting. See Monitor Point Table section for details on formatting for each cell.

Monitor Point Table

Columns

  1. Name

    • Text/String value of the Register

    • Add ":##" for string size. Example "GetUName:3" (gets String of size 3 words or 6 bytes)

    • Example: Water Temperature

  2. Address

    • 6 Digit Modbus register value

    • Integer Value (0 to 465536)

    • Address are 0 based or 1 based depending on "One Based" check-mark in List Tab

    • Example: 000001 or 100001 or 400001 or 300001

    • 4x Example: 400001 (One based checked, 1st Register, Function 3, Read/Write)

    • 4x Example: 400000 (One based un-checked, 1st Register, Function 3, Read/Write)

    • 3x Example: 300001 (One based checked, 1st Register, Function 4, Read Only)

    • 0x Example: 000001 (One based checked, 1st Register, Function 1)

    • 1x Example: 100001 (One based checked, 1st Register, Function 2)

  3. Unit ID

    • Unit ID or Slave ID of the register for Master and Server

    • Byte Value (1-247)

    • Example: 1

  4. Gain/Offset

    1. Value to be multiplied and Offset Added to result obtained from the Server

    2. Server Mode: Gain and Offset will be applied before the value is sent to remote Master

    3. Float Value Column = Gain x [Modbus Value Obtained] + Offset (Linear Formula)

    4. Example: 1.00 (default Gain, Multiple 1), 0.00 (Default, no Offset)

  1. Data Type

    • Converted Data Value from Modbus poll

    • Example: BIT

    • 2 Registers are polled for 32-bit Data Type

    • 4 Registers are polled for 64-bit Data Type

    • Displays value based on the selection:

      • BIT = Binary value

      • INT16 = Display as 16-bit Signed value

      • UINT16 = Display as 16-bit Unsigned value (Default)

      • INT32 = Display as Signed 32-bit value

        • Two Registers are automatically polled

      • UINT32 = Display as Signed 32-bit value

      • FLOAT32 = Display as 32-bit Float

      • INT64 = Display as 64-bit Integer

      • UNIT64 = Display as 64-bit Unsigned Integer

      • DOUBLE64 = 64-bit Double Float

      • HEX = Display as Hex value (16-bits)

      • STRING = Display as Text Value

        • Add ":##" to Name Text to get string of ## words).

        • Example ":3" (gets String of size 3 words or 6 bytes)

        • Use "Swap Type" column to put string in correct order and control character swaps

  2. Swap Type

    • Byte and Word Swap when multiple registers are polled based on the Data Type

    • Swaps multiple Registers based on the selection:

      • ABCD_BE: ABCD swap or Big-Endian (Default)

      • CDBA_LE: CDBA swap or Little-Endian

      • BADC_BEBS: BADC swap or Big-Endian Byte Swap

      • CDAB_LEBS: CDAB swap or Little-Endian Word swap

  3. Value

    • Display Value from Master based on Data Type

    • Send Value to Server based on the Data Type

    • Modbus Master: Shows value polled from the remote device after applying Swap type, Gain/Offset, and Data Type

    • Modbus Server: Value to send to the remote Master device. Click a cell to change send the new value to send to remote Master (All conversions are applied per settings before sending the new value)


Modbus Master (Tab)

The Master Mode (tab) polls remote Modbus TCP or RTU devices and displays data in the selected format.

Modbus TCP Settings

  1. IP Address

    • IP Address of remote TCP server

  2. Port Modbus

    • Port of remote TCP Server

  3. Enable

    • Enable the Modbus TCP Polling

Poll Rate Settings

  1. Poll Rate

    • Time to wait before polling full list, in milliseconds.

    • For example: Wait 1 second before polling entire list again

  2. Inter-Frame

    • Time to wait between each item in the list, in milliseconds.

    • For example: Wait 20ms before polling next item in the list

COM Port Settings (Modbus RTU)

  1. COM Port

    • Select COM Port for Modbus RTU Polling

  2. Settings

    • Shows Serial port-related settings

  3. Enable

    • Enables Modbus RTU polling on selected Serial Port

Write Value Settings

  1. Auto

    • Atomically Select Single or Multiple Coil or Registers based on the Data Type selected

  2. Enable

    • Enable Write from Value Column

  3. Coil Write

    • Manually select function code for Write for Coil(s)

  4. Register Write

    • Select function code for Write for Register(s)

Server (Tab)

Modbus TCP Server Settings

  1. Port

    • Port to use for Modbus TPC Server on PC

  2. Enable

  • Enable the Modbus TCP Server. Uncheck when using the Modbus RTU server only.

Modus RTU Server Settings

  1. COM Port

    • Select COM Port for Modbus RTU Server. Multiple RTU servers are started when selecting multiple Serial ports are selected.

  2. Settings

    • Shows Serial port-related settings

  3. Enable

    • Enables Modbus RTU Server Mode on Serial Ports. Uncheck when using TCP server only