Rslogix 5000 weird issue

bornwild

Member
Join Date
May 2010
Location
Riyadh
Posts
429
Hello all,

I have a weird problem in rslogix 5000. Few of rungs the instruction shows UNK. I have the attached the screenshot of the program. I want to edit the rungs and I dont know what to do as I am little worried as I dont have the good back up pf the program. Is there a way to recover this without downloading.??

Capture.JPG
 
I've seen something like this while doing some online edits and loosing the connection with the PLC before finishing.

Save your existing logic and then I would try doing an upload from the PLC and saving that as a different file. This will show you exactly what the processor has in memory. Then you can decide on corrective actions from there.

If, like me, this happened while doing online edits, you'll probably have to re-do the affected rungs of logic by hand. I wouldn't think that you would not have to do a download, you should be able to correct the problem online.

If the problem your showing did not happen because of a connection loss, then it's a problem beyond my experience but I would be concerned about bad memory in the processor.
 
Thanks Lynx .I was able to upload new program without comments ofcourse and later imported the comments from the old program and it worked.
 
I had that last week, where a rung in the program got an unknown instruction.
Only found it when trying to edit the program elsewhere and it gave me an error, but it was also showing "no edits" when I started.

I had to go back to an older copy of the program, find what it was supposed to be, modify that rung first, then carry on with my edits.

Very strange..............
 
Known Unknowns...

Lynx777 said:
I've seen something like this while doing some online edits and loosing the connection with the PLC before finishing.

Save your existing logic and then I would try doing an upload from the PLC and saving that as a different file. This will show you exactly what the processor has in memory. Then you can decide on corrective actions from there...

To further qualify that statement...

The UNK Unknown instructions we see are only present in the offline image of the project, stored on the workstation (your computer) and are not present in the online image, in the controller's memory. The corruption, however it may have happened, in the offline image has lead to the loss of the structure for the ASCII mnemonics for those particular instructions. As a result, the software simply cannot display them as intended. So Rockwell use the special UNK instruction as holders to display "something". In this case, we can see that each UNK instruction has a valid instruction type (XIC, etc.) included in its "Value" field. This is just a result of this particular instance of corruption and is not indicative of how all instances of UNK instructions will be displayed. The corruption here has mistakenly parsed the instruction type as being the value for the UNK instructions, which we know does not really make much sense. You may not always be so lucky that the corrupt logic will even indicate what instruction should be there.

Depending on how I choose to type (or mistype) mnemonics into the editor, the UNK instructions will display in all manner of forms...

Known%20Unknowns.jpg


So that is just to make those of us unaware that the instructions we are seeing above are both only offline and not "known unknowns", but more "who knows unknowns".

Lynx777 said:
...If, like me, this happened while doing online edits, you'll probably have to re-do the affected rungs of logic by hand. I wouldn't think that you would not have to do a download, you should be able to correct the problem online...

Normally, if you attempt to go online, after the corruption, it should prompt you of a difference between the online and offline images. In this case, you can simply choose to perform an Upload while using the corrupted offline project file. This should update the offline image, restoring the corrupted logic. Even if not prompted of a difference, and you can go online, and the logic still displays as corrupt, you can still perform a normal Upload to the file and it should restore the logic.

Normally, you should not need to download and you should not need to redo any logic, or transfer rungs & comments. But I cannot speak for everyone's experiences here, just my own.

Regards,
George
 
Last edited:
It looks like the Logix 5000 software is an older version than the version in the PLC the older Logix Software dose not recognize the functions you need to make sure that you are using the most up to date software
 
GaryS said:
It looks like...

Hi GaryS,

What are you basing that conclusion upon?

Let's think about what you wrote there...

Are you saying there was/is no corruption involved here at all and it is simply that the wrong version of software is being used?

First - let us note that it is "usually" while online with a controller, and/or online and editing with a controller, that this type of corruption occurs. If you were using an older version of "Logix 5000 software", than the version of project that was last downloaded to the controller, then how would you go online with that controller using the older "Logix 5000 software"? You would not be able to go online or upload from the controller without the correct newer version of "Logix 5000 software" i.e. you cannot get into this situation by simply having an older software version. You would have to have been using the correct version to begin with.

Second - I cannot fathom the possibility of the existence of an incompatibility between versions of RSLogix 5000/Logix Designer where any version of "Logix 5000 software" cannot decipher long standing and common ladder logic "functions" containing the likes of XIC, XIO, NEQ, MOV or OTE instructions (all of which are apparently present above) from within any other version of Logix 5000 project, be it older or newer. RSLogix 5000 v8 can decipher an XIC instruction just as well as Logix Designer v31 can.

I'm sorry to say, but it looks like your logic is definitely corrupted here.

G.
 
I hope this helps it's just offered as a possibility it may not apply to you.

There are many possibilities but
The processor is running the program without problems so I really don’t think the program is corrupt it wouldn’t run if it was.
if RSlinx detects an error I the communication it would fag it (Yellow or Red Flag on the device network tree) that’s not happening. Logix 5000 would also show a communication problem and would disconnect the program. None of this is happening the communication must be working.

The fact that Logix 5000 displays “unknown instruction” tells me that it doesn’t recognize that instruction so it doesn’t know how to display it on the screen.
The Logix software reads in the stored code d from the PLC and then interrupts what it sees to display it on the screen for us mere humans to understand. As the Logix soft evolves Rockwell keeps adding functions to it. Functions are just caned subprograms the plc executes then it runs. Part of the upgrade process is to load this added function (subprograms) into the logix program so it can interrupt it as display it but you case that upgrade was not done so the software doesn’t have the a way to know what to display it just know it’s a function but it does not know what function so it displays unknown
And example would be the program in the plc is version 30 but your software is only revision 26.
There have been many function added to the Logix software that would be downloaded to the plc. At version 30.
You must the software version on your computer to match the version in plc. Some are back words compatible but not forward compatible.
Also keep in mind that version 10 – 28 were just software updates version 30 – and completely separate programs in Logix 5000 ( I think that’s the break point)
When to connect with Studio 5000 it should find the version in the plc when it connects and start the correct software.
Some companies don’t say current on the software. Corporate doesn’t want to keep up on the tech connect contract.
I have been on jobs where they specked older version firmware and software in the plc so they can maintain access with put having to upgrade their software. Many time I have been told do not upgrade the firmware or they will tell me what version firmware to load. It’s not uncommon.
Make sure you software matches the plc firmware

This may not apply to you but it’s a place to start looking
Let us know what you fine
 
You running logic is fine. The little e on the left means the rung in NOT part of the program but just a new rung entry that has NOT been accepted. You can delete that with no effect on your running program.
It's like going to the END rung and just start typing stuff and hit enter. The rung is just ready to be accepted. Until it's accepted it is just in the programming software.
 
GaryS,

I'll come back to you tomorrow. I need to sleep before attempting to decipher, digest and reply to all that!

JaxGTO said:
You running logic is fine. The little e on the left means the rung in NOT part of the program but just a new rung entry that has NOT been accepted. You can delete that with no effect on your running program.
It's like going to the END rung and just start typing stuff and hit enter. The rung is just ready to be accepted. Until it's accepted it is just in the programming software.

JaxGTO,

We need to be careful here. As I pointed out, and you are now reiterating; the logic on the above rung, as it appears above, is indeed not in the controller's memory. It is, as it appears above, only present in the offline image in the project file open on the OP's workstation. However, if the OP was online with the intention of editing an existing rung of logic, which is in the controller's memory, and corruption then occurred to this existing rung, then the now corrupted same rung in the offline image is not just a "new rung entry that has NOT been accepted". It is an existing rung which the software can no longer display correctly. The software is attempting to display the logic as best it can decipher while using the UNK instruction as a placeholder for each corrupted instruction instance. As the rung of logic in the offline image is not verifiable, the software automatically places the rung status in edit (e). But this rung does exist in the controller in its correct format and is still important to the offline image.

So, even though you can "delete that rung with no effect on your running program", it is still an existing rung which is now corrupted and needs to be recovered, in the offline image. It should not be discarded as if it's a new rung that you may decide you now don't want to add. Again, the controller's compiled code for this rung is intact and will execute as it has been all along. But with the offline image corrupted, the OP's copy of the project now does not reflect what is actually in the controller and needs to be recovered, not deleted or forgotten about.

While explaining to you here - that just because you see "e" for edit on a rung, especially with UNK instructions, the rung is not automatically like any other new rung with pending edits, and you should not just discard them; it actually should not matter in the greater scheme of things. When you perform an upload, using the corrupted offline copy of the project, the controller will restore the rung of logic either way. So even if it had been deleted, it does not really matter.

I just emphasised not deleting them off-handedly above as I wanted to make the distinction here that these corrupted "e" rungs are not to be dismissed off hand as unimportant with respect to the code running in the controller. If you were at a customer's installation and this happened, and you deleted an apparently innocuous "e" rung that you didn't know where it came from, and then saved offline and left, you would now not have a current matching offline image for the customer's controller.

What I'm explaining here are facts, not opinions. I'm reading well intentioned guidance here but the conclusions have been somewhat misguided.

G.
 
Hi

I see this happen when there are multiple programmers making edits online to the same PLC. An upload is what fixes it for me.

Aidan
 
Hi

I see this happen when there are multiple programmers making edits online to the same PLC. An upload is what fixes it for me.

Aidan

Multiple programmers making edits within the same Program is a definite no-no IMHO.

When one Accepts, Tests, or Assembles edits, he will be doing that to ALL the edits within that program.

However, it is acceptable to have multiple programmers working in different Programs....
 

Similar Topics

Hi, Guys i'm having a weird issue with RsLogix 5000, it started last friday after going online with a compactlogix 5318ER-BB1B rev 20.xx, some or...
Replies
7
Views
2,170
Hello all, I have a question in regards to RSlogix 5000. I am having issues with the program force closing when I try to make online edits. We...
Replies
0
Views
95
Greetings ... someone sent me a request for some student handsouts that I developed ... turns out that I had this hosted on my business website...
Replies
0
Views
111
Thank you for any and all responses/help. I have an RSLogix 5000 v20 and a Cognex In-Sight v5.9 spreadsheet (8502P). I can not figure out how to...
Replies
0
Views
102
Hi All, I've been pulling my hair out trying to fix this for a few days and need some advice. I have V19.01, v20.05, V21, V24, V30, V31, V32...
Replies
5
Views
354
Back
Top Bottom