Troubleshooting Modbus TCP Communication with UDC2500: Resolving Exception Code 3 Issues

Question:

Greetings! I am currently attempting to implement Modbus TCP communication with a UDC2500 controller. However, I consistently encounter exception code 3 (Illegal Value) for any register I try to access. My approach involves utilizing function code 6 to write to a single register. Despite thoroughly reviewing the manual multiple times, I sense that I'm overlooking a crucial detail. Specifically, I am trying to modify the working setpoint at register 40003. Any assistance or insights from the community would be immensely valuable!

Top Replies

Been there, done that. You cannot write a setpoint across Modbus to a hardware high limit; you can only read it. A high limit with "FM Approval" does not permit remote setpoint adjustments to a safety instrument. This restriction likely stems from concerns about accidentally sending incorrect data or potential communication errors causing erroneous data input. This limitation frustrates me as well. My solution involves reading the setpoint and comparing it to the highest soak in the process cycle. Then, via the Human-Machine Interface (HMI, such as InTouch), I inform the operator of the need for adjustment. The benefit I have is controlling the process cycle (ramps/soaks) directly from my PLC logic, giving me access to the data required to determine the highest soak point. I'm unsure if you have this advantage.

Thank you for your prompt reply! According to the UDC2500 manual, the setpoint register is classified as a read/write (R/W) register. However, this issue seems to be occurring with all write-access registers.

The UDC2500 user guide offers somewhat generic information regarding Modbus communication across various models. While it's possible to modify the setpoint on a UDC2500 Controller, adjusting the High Limit is not allowed.

In the UDC2500 manual, the setpoint register is designated as a read/write (R/W) register. However, encountering issues with all write registers can be common. Are you successfully retrieving data from the device? It's important to note that around 90% of Modbus-related problems stem from incorrect addressing or byte order errors. Once these are addressed, the process typically becomes straightforward. If you're unable to write to any registers, double-check your addressing to ensure you're not off by one.

Bmoore14 commented: Appreciate the reply! According to the UDC2500 manual, the setpoint register is designated as a Read/Write register, yet this issue affects all writeable registers. Expand the discussion... Which other registers are you attempting to modify on a High Limit controller?

Hey there! It sounds like you're running into a common hurdle with Modbus TCP. Exception code 3 typically indicates that the value you’re trying to write is not acceptable for the specified register. Double-check the data type and range for register 40003 in the UDC2500 manual—sometimes, there are specific conditions or limits on what you can send. If it's a working setpoint, ensure that you're sending a valid setpoint value that the controller can accept. Also, verify you're using the correct addressing method, as some devices might use 1-based addressing rather than the 0-based that’s common in Modbus. Hope that helps, and good luck!

More Replies →

Streamline Your Asset Management
See How Oxmaint Works!!

✅   Work Order Management

✅   Asset Tracking

✅   Preventive Maintenance

✅   Inspection Report

We have received your information. We will share Schedule Demo details on your Mail Id.

To add a comment, please sign in or register if you haven't already..   

Frequently Asked Questions (FAQ)

Ready to Simplify Maintenance?

Join hundreds of satisfied customers who have transformed their maintenance processes.
Sign up today and start optimizing your workflow.

Request Demo  â†’