Knowledge Base
cancel
Showing results for 
Search instead for 
Did you mean: 

How to use Function code 15 (Write Multiple Digital Outputs) with the Modbus RTU X Driver

Issue

 Setting the values of the X Driver points that is set up for Function code 15 (Force Multiple Coils) does not send out data.

Environment

bCX1 4040, 9640

Netcontroller II with X Driver, XDriver, X-Driver.

Cause

As an array of bits has to be transmitted to the 3rd party system it has to come from the Annex point not the X Driver point itself.

Resolution

The data to be sent to the 3rd party Modbus device is held in a manual array in the AnnexPoint not the X Driver point itself.

Create an X Driver point on the required Comm port and define:

  • The correct slave number
  • Function code 15.
  • Define the Start channel address
  • Enter the number of Bits to be written in the "Number Of Channels"
  • In the AnnexPointName enter the name of the separate Numeric point that will hold the data to be written.

Ensure that the Annex point has a manual array of at least the size of the number of channels (bits) to be written.

Fill each of the array entries with 0 or 1 as required to be sent.

This can be done through Command line or Plain English:

For example if the system is writing to 4 relay outputs, through command line you would enter the data as:

Annexpt = 1      'Relay 1 = On
Annexpt[1] = 1 'Relay 2 = On
Annexpt[2] = 1 'Relay 3 = On
Annexpt[3] = 0 'Relay 4 = Off

 

Then change the value of the X Driver point to force the data to be sent.

Tags (1)
Labels (1)
Version history
Revision #:
1 of 1
Last update:
‎2018-09-06 01:36 PM
Updated by: