Big E

rs logix 5000 cross referencing

9 posts in this topic

Hello, Can anyone tell me where to find where i have to go to enable the cross referencing under the instructions in ladder logic as seen in the picture below ( picture from rslogix 500 program ) I am working with versions 13 and 15 at the time. I find it hard to beleive that Rockwell would not carry this feature over to the 5000 series programming software. It saves a quite a bit of time as opposed to clicking the instruction, then pressing CTRL+E, and then going to the appropriate instruction. In rs logix 500 it is under Tools - Options -XRef / Address Wizard Tab -select Enable Cross Reference Online and Enable Cross Reference Offline

Share this post


Link to post
Share on other sites
Hi Big E, I don't think it is possible in RS5000. But if you click Ctrl + E then the cross reference page will appear, and for me it is good enough.

Share this post


Link to post
Share on other sites
I would say that the most useful thing about those cross references is that just by looking at the reference under a conditional instruction ( xic, xio, neq, etc ), you can see if there is a destructive instruction for that address or tag ( ote, otl, otu, etc). Its a very quick and effective way of making sure you didint forget anything... and cross referencing each tag using CTRL+E woud be very time consuming for the size project I do...

Share this post


Link to post
Share on other sites
You cannot do this with RS5000. Omron can do something you'll like: when you hit space bar when you are on a contact, software bring you to the coil (if coil exist), then if you hit space bar again, software bring you back to the original position. It's faster a little bit. But for RS5000, you must open a cross ref window. I resize my window for see crossref and ladder. But I need to crossref tag by tag.

Share this post


Link to post
Share on other sites

Dragging one up from the antique bin...

If you are looking at fixing a fairly large program that someone imported from a SLC, that has a lot of routines programmed that aren't used, the cross reference feature would be very handy. It doesn't look like it has been revived from what I can see but I thought I would ask anyway. There are over 4000 tags in this program, most of which just occupy space, in this piece of SHcrap program. The vendor wrote it so they could turn on or off a few bits here and there and make the program fit a wide variety of equipment that they sell. Laziness passed on to the customer is not cool... yup... laziness. Being able to import an SLC program into CLX is one the worst idea AB ever had. I have a much longer rant but I'll just leave it at that. 

1 person likes this

Share this post


Link to post
Share on other sites

If you upgrade from where you're at to V21 (where the name changed from RS5000 to Studio5000), the cross reference tool is readily available. You just right-click on any tag in a rung, a dialogue box pops up, you choose "cross reference", and the cross reference report is immediately displayed. It has a lot more info than what it did in RS500. It now shows everywhere the tag is used in the project, including the task, program, routine, and rung number, as well as whether the instruction it's used on is destructive.

Hope this helps.

1 person likes this

Share this post


Link to post
Share on other sites

I’ve got Studio. Since we are upgrading to Win 10 I probably have the version just below the one that works with 10. The program I’m trying to decipher is version 21. 

I need to be able to cross reference the entire program not one tag. There are over 4000 tags, most are aliases, in the program I’m working with. Some are for routines that don’t have any function in service that the program is in but some are used in more than one routine. For instance, there are routines for oil fired burners but there is no oil fired burner. I’m trying to build an alarm and shutdown list then build a cause and effect. Cross referencing IO doesn't insure that I have all of the info I need to do that.

Share this post


Link to post
Share on other sites

Version 30 is the first one that is supposed to be 100% Windows 10 compliant. V32 is the highest version currently available. However, V21 will work in Windows 10; just make sure you're using an older version of Adobe, as there are known conflicts with Adobe 11, such as online books not working, etc.

It sounds like you've got your work cut out for you. The cross reference tool is a method of determining every location and type of use a given tag is being utilized for in a project.  I don't know of any way to cross reference multiple tags simultaneously and even if you could, 4,000 tags would contain so much data that I don't know how you'd sort through it all. You mentioned that most of your tags are aliases; this can be to your advantage, as the aliases are probably the ones that are most important, because it's rare in a large project to use a module defined tag without an alias.

If I were tackling this, I would probably go through the project routine by routine, cross referencing the tags on the rung instructions as I go. As you likely already know, right-clicking on any given tag, then clicking cross reference, will pull up the report. The report defaults to the "By Logic" tab, which shows everything about that tag. If you change that to the "By Hierarchy" tab, you just get the scope of that tag, which may help more readily identify which tags you're going to keep and continue to use, and which are obsolete. That, of course, will depend on how well the project is organized to begin with. If they scoped tags locally for each of the individual burners, you're likely in luck. If almost everything is controller scoped, not so much. Either way, there's no silver bullet I'm aware of that's going to automatically sort out 4,000 tags.

 

Share this post


Link to post
Share on other sites

I've rebuilt a lot of programs from electrical drawings and ladder logic but this one is the most daunting. It's a boiler burner management system and it's written for oil fired burner(s), gas fired burner(s) (mulitiple burners), and a myriad of different process configurations. There are an obscene qty of routines and tags. However the old joke "how do you eat an elephant / one bite at a time" applies. I've already documented the IO. I'll cross reference IO to aliases (more than one alias per IO point), pick the alias that applies and document it, then start weeding out the non-functioning routines. It'll eventually come together. In the end, once I figure out the program well enough to develop the cause and effect, I'll rewrite it to fit the application.

Side note- I despise aliases. I wish I could go back and rewrite every program that I ever wrote that used an alias. I switched to User Defined Data Types a long time ago (with the old S7-300 and 400). They make the program easy to follow, the tagname database is easier to navigate, writing the HMI program is easier, and programming in general takes orders of  magnitude less time.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now