Announcement

Collapse
No announcement yet.

Modbus comm issue between DCS and PLC Controller

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts


  • Modbus comm issue between DCS and PLC Controller

    New here and learning so forgive me if lacking proper terminology, ect. Looked through the FAQ and searched the forum but could not find anything about my issue. Here is the overview: Using a PI-540 CPU with logic to control a customers process through their DCS. We will use process inputs from the DCS and provide some outputs through Modbus TCP/IP Ethernet. We are the slave and can write data to the DCS however, when the customer tries to write data to the CPU they get an exception error. Specifically: Unable to write to address "the address is a register created in Productivity Suite" on device Channel 2.Device1: Device responds with exception code 2. Any one experience this before with a resolution or have an idea on where the issue might be? Thanks.


  • #2
    What is the modbus address specified in the tagname database?
    What datatype and how many bytes is the master device writing?
    What modbus function code is the master device using in the modbus write request?

    Comment



    • #3
      Thanks for the questions techme: Modbus address: 400104 Type: Float, 32 Bit Function Code: OPC

      Comment



      • #4
        Modbus address: 400104 - So your device should be writing 4 bytes starting at 400104 (400104 & 400105). Make sure you are not writing to more than 4 bytes. If you are you will need to have the modbus addresses assigned to something in the tag database. The unable to write to address usually means you are writing to the incorrect address or writing to addresses not available in the slave device. See help topic P194 in Productivity software.

        Function Code: OPC - This should be a number. See the Slave/ Server section for the function code table in help topic P198 of the Productivity sw. If writing to a single register it should be function code "06" if writing to multiple registers it should be function code "16"

        Comment

        Working...
        X