Productivity 1000 PLC to Modbus TCP Remote IO

The Productivity Series of PLC can use Modbus TCP remote IO (inputs and outputs) from Stride. The Stride Field I/O Modules are simple and compact. They provide an economical means to connect inputs and outputs to an Ethernet Modbus TCP communication network. Every module operates as a standalone Modbus TCP server and can be configured via a built-in web server.
Previously we looked at the Stride Field Remote IO Modules Modbus TCP Ethernet wiring and configuration.
Stride Field Remote IO Modules Modbus TCP Ethernet
Unboxing SIO MB12CDR and SIO MB04ADS Video
Powering and Configuring Video

We will be connecting two Stride remote inputs and outputs to the P1000 PLC. Modbus TCP will be the protocol over Ethernet to communicate to the SIO-MB12CDR and SIO-MB04ADS units.
productivity plc modbus tcp remote io

SIO-MB12CDR
– STRIDE discrete combo module, Input: 8-point, 12-24 VDC, sinking, Output: 4-point, relay, (4) Form C (SPDT) relays, 2A/point, (1) Ethernet (RJ45) port(s), Modbus TCP server.
SIO-MB04ADS
– STRIDE analog input module, 4-channel, current/voltage, 16-bit, isolated, input current signal range(s) of +/- 20 mA, input voltage signal range(s) of +/- 10 VDC, (1) Ethernet (RJ45) port(s), Modbus TCP server.

We will be reading an analog voltage into the Productivity 1000 PLC from the remote IO unit. We will then set an output to pulse on and off at a time range indicated by this analog signal. The output will be on the other remote IO unit and will trigger the input to signal. We will look at the Frequency, Count, and Status of this input. Our Productivity 10000 PLC program will also take into consideration watchdog (communication time out) and power-up events for the Stride remote input and output units.
Let’s get started.

Previously in this Productivity 1000 series PLC, we have discussed:
System HardwareVideo
Installing the SoftwareVideo
Establishing CommunicationVideo
First ProgramVideo
Documenting the ProgramVideo
Monitoring and Testing the ProgramVideo
Online Editing and Debug ModeVideo
Numbering Systems and Tag DatabaseVideo
Contact and Coil InstructionsVideo
Timer InstructionsVideo
Counter InstructionsVideo
Math InstructionsVideo
Data Handling Instructions Part 1Video
Data Handling Instructions Part 2Video
Array Functions Part 1Video
Array Functions Part 2Video
Array Functions Part 3Video
Program ControlVideo
Drum Sequencer InstructionsVideo
Data LoggerVideo
Web ServerVideo
Modbus RTU Serial CommunicationVideo
Modbus TCP Ethernet CommunicationVideo
Firmware UpdateVideo
AdvancedHMI Modbus TCP Ethernet CommunicationVideo
Email and Text CommunicationVideo
PID InstructionVideo
PID Ramp Soak InstructionVideo
Stride Field Remote IO Modules Modbus TCP Ethernet
Unboxing SIO MB12CDR and SIO MB04ADS Video
Powering and Configuring Video

Our entire series can be found here.
https://accautomation.ca/series/productivity-1000-plc/
The programming software and manuals can be downloaded from the Automation Direct website free of charge.
Watch the video below to see P1000 Productivity PLC control analog and digital inputs and outputs remotely.

Productivity 1000 PLC System IP Addresses

Our P1000 plc will act as the Modbus Client (Master). It will communicate to the stride remote I/O which are Modbus Servers (Slaves).
Call up the hardware configuration window by using the main menu | Setup | Hardware Config…
productivity plc modbus tcp remote io
Click on the CPU in the picture and select the Ethernet Port tab on the P1-540 window.
productivity plc modbus tcp remote io
Here is where we can set our IP address for the P1000 PLC Ethernet port.
We will set the Stride SIO-MB12CDR and Stride SIO-MB04ADS to 131 and 132 respectfully. This is shown in the configuration of the Stride remote IO above.

System Wiring Remote IO

productivity plc modbus tcp remote io
The first relay output of the Stride SIO-MB12CDR will be wired to the input of the first 24-volt sourcing input. This will allow us to see the input working and view the frequency and count values of the unit.
productivity plc modbus tcp remote io
Using the voltage input tester that we created previously, we will be wiring this up to the first voltage input on the Stride SIO-MB04ADS unit.
Create an Analog Voltage Input Tester for a PLCVideo

Productivity P1000 Modbus TCP Remote IO Program

productivity plc modbus tcp remote io
Our program has three sections that will run every scan.
SIO MB12CDR Communication – This will update the Field IO module using Modbus read and write commands. (Modbus TCP)
SIO MB04ADS Communication – This will update the Field IO module using Modbus read and write commands. (Modbus TCP)
Main Logic – This will keep track of the watchdog counters and power up counters. We will cycle a relay, based upon the analog input signal. The number of scans before a relay is turned on will be counted. This will give us an idea of the throughput of the system.

SIO MB12CDR Modbus TCP Communication

productivity plc modbus tcp remote io
Here is the Modbus address chart for the remote IO unit.
Note: We have included all of the addresses and features of the card in our sample program. Your program may not need all of these features. The productivity series uses tags. These tags are easily understood in our sample program.
productivity plc modbus tcp remote io
Upon the first scan of the PLC or when the communications have completed for both units, we will start our communication. We will read the system flags, power up / safe and watchdog timer. The first switch 1 is also included to start the communication.
productivity plc modbus tcp remote io
After a successful read, we will look at the watchdog event enable flag. If the watchdog event is enabled then keep it enabled with the write data to the system flags. This will also clear the power-up and watchdog event flags.
Power Up / Safe Bits for Outputs
Upon power-up the four outputs automatically are either on / off according to Bits 08, 09, 10, or 11 in the SIOMB12CDR Power Up Safe Write tag. Upon the watchdog event happening the four outputs automatically are either on/off according to Bits 00, 01, 02 or 03.
productivity plc modbus tcp remote io
Read the status of the SIO-MB12CDR remote IO. See the list of Modbus registers above.
productivity plc modbus tcp remote io
Determine if there are rising or falling edge inputs that need to be reset. If an edge flag is on then reset both rising and falling edge inputs by writing a 0 into the registers.
productivity plc modbus tcp remote io
Write the outputs to the four relays.
productivity plc modbus tcp remote io
A flag is set to indicate that the update for the SIO-MB12CDR is now complete.

SIO-MB04ADS Modbus TCP Communication

productivity plc modbus tcp remote io
Here is the Modbus address chart for the remote IO unit.
productivity plc modbus tcp remote io
The first Modbus read will read the system flags and watchdog timer.
productivity plc modbus tcp remote io
If the watchdog event is enabled then keep it enabled with the write data to the system flags. This will also clear the power-up and watchdog event flags.
Write the following information:
System Flags – Clearing any watchdog or power-up event flags.
WatchDog Timer – Set the watchdog timer.
productivity plc modbus tcp remote io
Read the input type of the SIO-MB04ADS remote IO.
productivity plc modbus tcp remote io
Read the status of the SIO-MB04ADS Analog Signals remote IO.
productivity plc modbus tcp remote io
A flag is set to indicate that the update for the SIO-MB04ADS is now complete. This will trigger the communication for the first unit again.

Main Modbus TCP Remote IO Program

When the watchdog timer event happens for the SIO-MB12CDR, tag SIO MB12CDR WD counter will increment by one.
Ladder Logic Sample Program Code
When the power-up event happens for the SIO-MB12CDR, tag SIO MB12CDR Pup counter will increment by one.
Ladder Logic Sample Program Code
When the watchdog timer event happens for the SIO-MB04ADS, tag SIO MB04ADS WD counter will increment by one.
Ladder Logic Sample Program Code
When the power-up event happens for the SIO-MB04ADS, tag SIO MB04ADS Pup counter will increment by one.
Ladder Logic Sample Program Code
The analog input will control the on and off timer delay. This delay will control the first relay output.
Ladder Logic Sample Program Code
The following lines of code will count the number of scans based on the relay output for the remote turning on and then the acknowledgment read that the output is on from the remote IO unit. This will give us a good idea of the throughput of the system.
Ladder Logic Sample Program Code
Watch the video below to see the Stride remote inputs and outputs in action on our P1000 productivity PLC.
productivity plc modbus tcp remote io

Download the productivity P1000 PLC program here.

Productivity 1000 Series PLC from Automation Direct
Overview Link (Additional Information on the Unit)
Configuration (Configure and purchase a system – BOM)
User Manual and Inserts (Installation and Setup Guides)
Productivity Suite Programming Software (Free Download Link)
This software contains all of the instruction sets and help files for the Productivity Series.

Stride Field Remote IO Modules Modbus TCP Ethernet Links:
Stride Remote Field IO Overview
Stride Field IO Modules Specifications

SIO-MB12CDR – Discrete Combination Module
SIO-MB12CDR User Manual

SIO-MB04ADS – Analog Input Module
SIO-MB04ADS User Manual

Modbus Learning Links:
Simply Modbus Frequently Asked Questions
Modbus TCP/IP Overview – Real Time Automation
All You Need to Know About Modbus RTU – Video

Watch on YouTube: Productivity 1000 PLC to Stride Field IO Modbus TCP


If you have any questions or need further information please contact me.
Thank you,
Garry



If you’re like most of my readers, you’re committed to learning about technology. Numbering systems used in PLC’s are not difficult to learn and understand. We will walk through the numbering systems used in PLCs. This includes Bits, Decimal, Hexadecimal, ASCII and Floating Point.

To get this free article, subscribe to my free email newsletter.


Use the information to inform other people how numbering systems work. Sign up now.

The ‘Robust Data Logging for Free’ eBook is also available as a free download. The link is included when you subscribe to ACC Automation.


Leave a Comment