Modbus writing to ABlogix PLC intermittent faults


Another question on the same project as my others. While commissioning the system I observed that on full system power up sometimes the Flexy 201 would not write values to the PLC.
I am using the Flexy 201 to read modbus values and directly write them into a Allen Bradley PLC. To fix the issue while I was in the field I manually changed the value of the PLC from eWON web page and then it started writing as normal.

Just fishing but has anyone seen this or know why it may happen? I am concerned that this will happen again and cause a bigger issue.

What exactly do you mean by write them to the PLC? Are you using Modbus TCP to send write commands to the AB PLC? It would be very helpful if we can get a backup of the device with the logs (using eBuddy, select device and click Backup/Restore, check “Include Support Files”, and then download). We should be able to figure out what’s going on by seeing the logs when this is happening.

Hi Kyle,
You are correct. I am using Modbus TCP to read values from Modbus IO devices and then the Basic IDE to write them to ABLogix Tags. The ABlogix tags are on the PLC.
I think the last time this happened was around 26th or 27th of March 2020.

Can you also explain exactly what you did here:

You changed the tag values manually?

Unfortunately, the logs only go back about an hour due to repeating errors with the IO servers. Are you using the DF1 IO server? If not, can you make sure it’s disabled.

I went into the values page and selected the tag that was playing up. I clicked edit value and hit apply. After this the value started changing as it should according to the Basic IDE scripts.

The DF1 IO server is not enabled. Currently the following IO servers are enabled.

  1. Modbus Topic A Enabled, Slave Address (blank) IP Address (blank) Poll Rate (200ms)
  2. Modbus Topic B Enabled, Slave Address (blank) IP Address (blank) Poll Rate (200ms)
  3. ABlogix Topic A Enabled, Global Device Address (xxx) Poll Rate (200ms)

We have IO that is electrically isolated based on water level so there is a chunk of IO that will not be reachable occasionally.

And this “lock up” condition only happens occasionally on power on? It does not happen after the Flexy begins writing values?

When it happens, are the Modbus tags updating still? We need to determine if it’s due to the Modbus IO server or the ABLogix IO server.

Can you try the following script with the code moved from the Cyclic to the Init section?

program_57171_2.bas (5.9 KB)