Replies: 2 comments 2 replies
-
|
It sounds like something got corrupted or messed up when that tag was created, if you have a backup copy of the program I would be curious to see what happened. Have you enabled logging? Sending logs in this case would be really helpful, the verbose option shows the actual packet contents and would show us what's wrong. I would like to eventually skip errors/tags in the tag upload, but last time I looked into it I remember it being much more complicated and decided to hold off. Those tag definitions are used extensively, it's how the structured support, request size tracking, and other features are built upon. I'm currently refactoring the CIP and EIP implementations inside the library to make them more generic/in line with the spec, instead of being mostly based around the Rockwell-specific services. After that work is done, I plan to look into this and couple other improvements. |
Beta Was this translation helpful? Give feedback.
-
|
Due to the sequence of events between Christmas a New Year it is a bit hard to isolate the exact cause. Unfortunately I wasn't running verbose logging at the time. I do still have the last lot of exception errors when the program failed which I've included below. _Traceback (most recent call last): The above exception was the direct cause of the following exception: Traceback (most recent call last): The above exception was the direct cause of the following exception:_ _Traceback (most recent call last): I don't have a copy of the program that failed. If I see the problem again I'll get a verbose log and a copy of the failed program to you. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi,
Only recent user of pycomm3 and congratulations on a great project. I have an issue recently where a PLC connection and tag reading that was working started to fail. No program changes to the python script but some PLC changes made to the processor.
The script was failing with an exception error during connection to the processor with init_tags=True. It was also causing issues connecting to the processor with programming software so it is an supplier issue, however the PLC program was still running and working as normal. The exception error showed the instance_id that caused the problem but that didn't help identify the tag. The exception was around an invalid/undefined type.
In fact the driver reported:
(send_unit_data returned not valid data', 'Destination unknown, class unsupported, instance undefined or structure element undefined (see extended status) - Extended status out of memory (05, 00)'
pycomm3.exceptions.ResponseError: failed isolating user tags
I temporarily modified the driver code to display the tag name during init_tags() and identified the tag name that was causing the problem. I was able to remove the tag from the PLC and everything was working properly again. Tag reading and PLC programming software connecting. I re-created the tag and logic and everything continues to work.
What I thought would be that if a tag is going to fail, that it should be detected and alarmed but allow the init_tags() to continue so the connection can complete. As it turns out the tag that caused the failure was not one of the ones that I was reading so the script could have kept running. An alert on the bad tag would have made it much quicker to identify the problem. An export from the programming software was also failing due to the same problem but the error was CIP Error with no additional information.
Andrew
Beta Was this translation helpful? Give feedback.
All reactions