Hello everyone, I am reaching out for assistance as I am currently facing a challenge. I am trying to use my Schneider M580-Unitypro PLC as a Modbus TCP Master to communicate with slave devices using the read_var block. The reason for this is because the IO scanning feature does not support modbus FC4 (Read input register 3x). Unfortunately, I am having trouble setting the slave ID on the ADDMX block in the M580 PLC. The PLC is sending out commands with a default slave ID of 0, but the slave devices do not respond to requests from a slave ID of 0, which is preventing communication from being established. Has anyone successfully used the READ_VAR and ADDMX blocks with a slave ID and IP address instead of just an IP address? Any suggestions or advice would be greatly appreciated. Thank you in advance!
Explore the benefits of forumADDM version 0.0.3, specifically designed for TCP modbus applications. The '0.0.3{192.168.0.2}11' module enables Modbus serial communication over TCP for slave 11. Utilize the ADDM block for M340 and M580 CPU's local rack, with 0.0.3 as the rack/slot address for the CPU's Ethernet port. For remote applications with M580 CPU, the ADDX block is recommended for CRA racks.
In discussing the configuration of Modbus communication protocols, Lare pointed out that the ADM 0.0.3{192.168.0.2}11 device functions as Modbus serial over TCP, specifically as slave 11. This differs from Modbus RTU over TCP, as it operates as simple Modbus TCP with UnitID 11. While Modbus RTU over TCP can be configured, it is important to note the distinctions between Modbus TCP and Modbus RTU over TCP. Schneider provides further details on these variances. An example scenario involves utilizing an Ethernet - RS-485 converter with the M580 controller to retrieve data from Modbus RTU devices connected to the converter.
Indeed, the M580's modbus master functionality can be a bit tricky to set up, particularly with slave ID handling. What you can do is to hard code the equipment id into the CtrlStrg (control structure) field of the READ_VAR function. You should declare a STRING variable for the CtrlStrg and in runtime, you can set the value as per the format "EId=1;Tout=3000". Here, EId represents the slave id of the modbus device. Once you populate CtrlStrg with these values, the M580 should communicate with slave ID 1 and a timeout of 3000 milliseconds. Hope this is helpful. Let me know how it goes!
Hey there! I’ve had a similar issue with configuring the ADDMX block in the M580 for Modbus TCP communication. From my experience, make sure you’re correctly setting the slave ID in the parameters of the ADDMX block; sometimes it can be overlooked if the configuration settings aren't explicitly clear. Additionally, double-check the communication settings of your slave devices to ensure they're configured to accept the specified slave IDs. If you haven't already, consider utilizing the diagnostic features available in UnityPro to see if any error codes can give you a clue on what might be going wrong. Good luck, and I hope you find a solution soon!
Hey there! I had a similar issue when I first set up my M580 as a Modbus TCP Master. One thing that worked for me was double-checking the configuration of the ADDMX block parameters; specifically, ensure that you’re correctly setting the “Slave Address” field to match the intended slave device ID. Also, remember that the slave ID might need to be specified based on the addressing mode supported by your Modbus devices. Sometimes, it also helps to verify that there isn't an IP communication issue by testing with a simple ping or using another Modbus tool to see if you can read from the slave directly. Good luck, and I hope you get it sorted out soon!
âś… Work Order Management
âś… Asset Tracking
âś… Preventive Maintenance
âś… Inspection Report
We have received your information. We will share Schedule Demo details on your Mail Id.
Answer: 1. How can I set the slave ID on the ADDMX block in Schneider M580-Unitypro PLC for Modbus TCP communication? - To set the slave ID on the ADDMX block in Schneider M580-Unitypro PLC, you need to configure the specific slave ID along with the IP address in the block settings. Make sure to input the correct slave ID to establish communication with the slave devices.
Answer: - Slave devices typically do not respond to requests from a default slave ID of 0. It is important to configure the correct slave ID in the PLC settings to ensure successful communication with the slave devices.
Answer: - The successful usage of READ_VAR and ADDMX blocks with a slave ID and IP address in Schneider M580 PLC may require proper configuration and troubleshooting. It is recommended to follow the PLC documentation and seek advice from experienced users or Schneider support for assistance.
Answer: - If the IO scanning feature does not support modbus FC4 (Read input register 3x), utilizing the READ_VAR and ADDMX blocks with proper configuration for slave ID and IP address can be an alternative method to communicate with slave devices in
Join hundreds of satisfied customers who have transformed their maintenance processes.
Sign up today and start optimizing your workflow.