|
|
Topic: P140 |
Network Read (RX) Instruction |
|
Icon / Button =
![]()
Perform Read requests to other P Series CPU by Reading the Tags of specified CPUs over the Ethernet, RS232 or RS485 Ports on the CPU.
|
Parameter |
Parameter Type |
Requirements |
Description |
|
Enable |
Ladder Input |
Must Have |
Edge-driven. If Automatic Polling is selected, the instruction becomes Level-driven. When Enable is ON, the instruction will operate every scan. When Enable is OFF, the instruction is not solved, and its outputs are not updated. |
|
Ethernet Port |
Selectable Option with Drop-down Selection |
Must Select Ethernet Port or Serial Port |
CPU External Ethernet Port that will send Read requests. |
|
IP Address |
Constant |
Must Have when Ethernet Port Selected |
IP Address of the CPU server that the Read Request will be sent to. Enabled when Ethernet Port is selected. |
|
TCP Port Number |
Constant |
Default is 502 (number specified by Modbus TCP specification). Some devices will require a different value. Enabled when Ethernet Port is selected. |
|
|
Serial Port |
Selectable Option with Drop-down Selection |
Must Select Ethernet Port or Serial Port |
RS232 or RS485 CPU Port that will Perform Read Requests. |
|
Slave Node Number |
Constant |
Must Have when Serial Port Selected |
Enter the Slave Node Number of the CPUfrom which toRead. The Slave Node Number is found in the Hardware Configuration for the Port on the CPU. |
|
Use Structure |
Checkbox |
Optional |
Enables the use of Structure. |
|
In Progress |
Boolean Tag |
Optional |
Status Bit that specifies a Read Request is in progress inside of the CPU (sent from the instruction but not yet sent out the Ethernet Port). The Status Bit reflects the Status of the individual Read Request. |
|
Complete |
Boolean Tag |
Optional |
Status Bit that specifies a Read Request has been sent and a reply has been received, but it may not necessarily have been a good reply. The Status Bit reflects the Status of the individual Read Request. |
|
Success |
Boolean Tag |
Optional |
Status Bit that specifies a Read Request has been sent and a good reply has been received. The Status Bit reflects the Status of the individual Read Request. |
|
Error |
Boolean Tag |
Optional |
Status Bit that specifies a Read Request has been sent and a reply with an Error has been received from the Slave device within the specified Timeout period. Check the Exception Response String to see if it's an Error returned from the Slave device or check the Error Logs to see if it is an Internal Error. The Status Bit reflects the Status of the individual Read Request. |
|
Timeout |
Boolean Tag |
Optional |
Status Bit that specifies a Read Request has been sent but no reply was received within the specified Timeout value time.> Timeout value is set up in the External Ethernet Port and RS232/RS485 Serial Ports of the Hardware Configuration. The Status Bit reflects the Status of the individual Read Request. |
|
Exception Response String |
String |
Optional |
String that holds the exception response Error. View the Communication Error Codes section of the help file for detailed information on Error Codes and possible corrective actions. |
|
Automatic Polling |
Checkbox |
Optional |
The CPU will send out a request at the specified Poll Rate + Offset Time Value (msec). |
|
|
|||
|
Parameter |
Parameter Type |
Requirements |
Description |
|
Skip Execution if Buffer is Greater Than |
Checkbox |
Optional |
Used with Automatic Polling, allows the user to back-off an instruction if the buffer is getting too full (for CPU ports only). Set by a percentage. See more details in the Communications topic. |
|
Remote Project |
Constant |
Must Have |
Allows the user to select the Project's Tagname Database of the CPU that the instruction is targeting. Use the Read button to view Remote Projects. |
|
Non- Array |
Selectable Option |
Must Select Non-Array or Array |
Allows user to specify non-sequential Tags that can be Read in Read Request. The number of Tags entered determines Request size. |
|
Tags of This Project |
Numerical Tag |
Must Have when Non-Array is Selected |
Allows the user to select the Tags of this Project/CPU that the data will be Read into. Enabled when Non-Array is selected. |
|
Tags of Remote Project |
Numerical Tag |
Allows the user to select the Tags in the target Project/CPU that the data will be Read from. Enabled when Non-Array is selected. |
|
|
Array |
Selectable Option |
Must Select Non-Array or Array |
Allows the user to select the starting Tag and sequential number of Tags that will be Read in the Read Request. |
|
Array Tag of This Project |
Numerical Tag |
Must Have when Array is Selected |
Allows the user to select an Array Tag of this Project/CPU that the data will be Read into. Enabled when Array is selected. |
|
Array Tag of Remote Project |
Numerical Tag |
Allows the user to select an Array Tag in the target Project/CPU that the data will be Read from. Enabled when Array is selected. |
|
|
Starting Index |
Constant |
Starting Index position within the specified Array. Enabled when Array is selected. |
|
|
End Index |
Constant |
Ending Index position within the specified Array. Enabled when Array is selected. |
|
|
String Tag of This Project |
String Tag |
Must Have when String is Selected |
Allows the user to select a String Tag of this Project/CPU that the data will be Readinto. Enabled when String is selected. |
|
String Tag of Remote Project |
String Tag |
Allows the user to select a String Tag in the target Project/CPU that the data will be Read from. Enabled when String is selected. |
|
|
Number of Characters |
Constant |
Enter number of characters, max 128. |
Note:
Communications using this instruction are performed through the
External Ethernet Port
located on the CPU.
P1 Single Ethernet Port Upper (P3) or forward (P2) of the Dual
Ethernet Ports RS232 Port CPU (RJ12 Port) RS485 Port (3-pin Terminal
Block).
Uses
Modbus based protocol
exclusive to the
P Series CPUs.
Note: For Automatic Polling, the instruction will execute at the selected Poll Rate + the Poll Rate Offset if used.
Note: Tag Values are updated immediately as each Ladder Rung is executed, top to bottom. However, Tag Values representing physical Outputs are only applied to the physical Output after the END statement of the last Task to be scanned is reached. Outputs in Remote Base Groups have additional limitations regarding Update Intervals.
Note: Auto polling minimum value is determined by the end device response time. If you are getting errors due to requesting data too frequently, the auto polling rate will need to be increased until error condition clears.
When Network Read Instruction is selected the window shown below opens with defaults shown.
Note: Another side effect of the queuing mechanism is that the instruction status bits may not be seen in the ladder. When an instruction has completed (Success, Exception Response, or Timeout), the CPU firmware will set the appropriate status bits. At the point that the CPU firmware pulls another message off the queue, it will reset the status bits of that instruction. The timing can work out in such a way that the status bits get set but the CPU firmware pulls off the instruction that contains those same status bits and resets them to start another iteration before the ladder code examines those bits.
Two things can be done to ensure reliable detection of status bits:
1. Do not use Automatic Poll and use interlocking logic to detect status completion of an instruction before enabling that instruction again. This is the most reliable method.
2. Ensure that the Automatic Poll time is long enough to prevent queueing of that same instruction.
See Communications Modbus Functionality help topic for more details.
In the following example, the CPU Ethernet Port is performing a Network Read of two Tags from another CPU in the network.