02-06-2015 11:34 AM
Hoping someone has an idea as to how can resolve this. Any help is greatly appreciated.
I am attempting to read/write complex tags (a tag composed of other tags) between a PC and CompactLogix 1769 PLC. I have managed to get the read from PLC to work and am having trouble getting the write to PLC to work. I am currently getting the error -251723760, CIP Status: 0x13 (Not enough data), but have also gotten the error: -251723760, CIP Extended Status: 0x2105 (Address and count out of range). I am not sure what I've done to get two different error codes. My suspicion is that the information that is to preceed my data is incorrect.
I have attached my test code. I have verified the tag should contain 64 bytes of data. The EthernetIP Tag Read is there to get the prepend information for the data. This seems to be working for the read case, but not the write.
If I do an EthernetIP Tag Read from the tag, I get four bytes for the zero element read and 204 bytes for a one element read. Writing 204 bytes produces the same error codes.
I have downloaded the CIP specification. Unfortunately, that has not been helpful in identifying what needs to be sent.
I have the Ethernet/IP toolkit v14.0 installed.
02-08-2015 11:34 PM
02-09-2015 08:46 AM
02-09-2015 04:02 PM
Talking with my coworker again, there was tag-based communication going on, however we're starting to think the issues the supplier was having may have been related to writing to the individual tags within the complex tag rather than the complex tag itself. The system was changed to communicating through assmblies (implicit communication) after performance problems were detected in real-world conditions.
02-11-2015 09:03 PM
Hi tstahl,
" writing to the individual tags within the complex tag rather than the complex tag itself" - this one looks definitely not feasible. Writing complex tag as a single/whole tag could work.
I'm confused that in your attached VI, you write it as a whole. but that is not what the original problem was (writing individual tags inside a complex tag was.)?
Also, by specifying NumberOfElements zero in TagReadRaw, you can read the header for the complex tag? Have you verified that this is how complex tag data structure is organized in the PLC? I mean they could have addtional marker about all the element tags inside. I suggest to find such info in Rockwell manuals.
02-13-2015 07:43 AM
01-04-2017 02:17 PM
Was running into this error and found this that helped solve my problem in case some one else searches by the error code of "not enough data". The issue is the length (number of UDT elements you are writing to) must be encoded just after the firs 4 bytes of header information. Solution was found here.
So it sometimes thinks that you didn't send enough data because it thinks the first bytes of your data as the length it should be expecting.