We have a customer that has a lot of Omrons, and our next project involves an older CV2000. We are migrating a legacy SCADA app over into Ignition, and the goal is to be as hands-off on the PLC as possible.
For some reason we are not able to read CIO memory from this CV PLC.
I don't think we've ever had a problem reading CIO with the CS or CJ PLCs here, and I'm pretty sure the legacy "FactoryLink" application that we're replacing with Ignition is accessing CIO ok. It's using an "OMRON CV-Series Ethernet" driver. The legacy system is mid-90's era,
Before we get intrusive in the PLC and start mapping things to DM registers, we wanted to check and see if anybody here has successfully accessed Core I/O on Omron "CV" PLCs using the Ignition FINS/UDP driver.
More Info:
We are using the Omron FINS/UDP driver to connect to the device. DM memory access is working as expected.
Example OPC Item Paths we've tried for a single bit are:
ns=1;s=[CV2000_Lab_UDP]CIO1255.3
ns=1;s=[CV2000_Lab_UDP]CIO<UInt16>1255.3
Tag Diagnostic shows: null, Uncertain_InitialValue
and usually ends up as null, Bad
The export from the legacy FactoryLink application shows it's configured as:
TAG |
STATION |
DATAAREA |
DATAADDR |
BITOFFSET |
DATA_TYPE |
ThisTagname |
0 |
CIO |
1255 |
3 |
UBIN16 |
Lastly, reading a value from a DM such as:
ns=1;s=[CV2000_Lab_UDP]D<String14>7101
... is working fine.
Thanks!
Can you switch to TCP and get Wireshark captures of both applications?
edit: nevermind, UDP should be fine too, thought the Wireshark dissector only supported TCP.
Thanks for the quick response!
The TCP driver works for the CS's and CJ's here, but did not work for the CV, it gets stuck in the "ReconnectWait" state. We punted and used the UDP driver which went "bound" and let us communicate.
I'm not terribly fluent in Wireshark and it's currently not installed on this particular gateway. The customer is slowly bringing down the area over the next couple of days for year-end maintenance. I'd feel more comfortable installing and trying that while they are down, stay tuned!
I installed wireshark and think I've got some packets to look at.
I tried reading from a DM area that I know works:
ns=1;s=[CV2000_Lab_UDP]D<String14>7101
... and get
Response code: Unknown (0x0040)
Response data: 0000000000000000000000000000
which I think is correct, because it should be returning 14 "spaces" since the line is down (28 zeros should represent 14 characters?).
When I tried either of the CIO variations:
ns=1;s=[CV2000_Lab_UDP]CIO1255.03
ns=1;s=[CV2000_Lab_UDP]CIO<UInt16>1255.3
... I get the following with no response data:
Response code: Unknown (0x1141)
... and no Response Data at all.
I saved the filtered packets to a file, let me know what else I might be able to provide.
OmronFINSUDP_CIO_ReadAttempt.pcapng (1.8 KB)
Looks like the memory area codes for CV-series are different than the rest:
The FINS driver has no notion of being in a different mode for older models.
If you continue using Ignition's driver then you'll have to map them into the DM area as you suggested in your original post. This happens to be the only area with a shared memory area code between the two models.
We can look at adding support for CV-series, or a separate driver, whatever it might be, but that won't be a quick solution. Everyone is busy now and for the foreseeable future working on Ignition 8.3 and I we'd need to acquire some CV-series hardware as well.
Thanks for confirming what we sort of suspected. We'll map over the CIO addresses we need into the DM memory area. Thanks so much for the quick responses.