Allen Bradley PLC tag preparation

Hello-

I apologize if this is a repeat topic but I couldn’t find anything is broad as I’m looking for on the forum.

I have a few years of experience building HMI/SCADA with Ignition, but no experience directly programming with Allen Bradley/RSLogix etc. I also have no experience with any other SCADA besides Ignition, for context.

We are getting a new piece of equipment with AB PLC (still waiting on model# and firmware but I believe either ControlLogix or CompactLogix). They have quoted me $10,000 addition for “setup” of connection to SCADA. This is for hardware addition of external ethernet card (this makes sense) but also for “preparing program tags” to be accessible by SCADA. I’m not familiar with what would be required on the RSLogix side but in the past I have had no issues connecting ‘plug and play’ to our other AB PLCs to find the data I need- the biggest challenge was browsing through huge amounts of tags to find what I was looking for without guidance from the program. I was just hoping for them to point me to the tags (probably less than 30) that I would need that would be useful for tracking machine performance, status, alarms, OEE, etc. Is the manufacturer possibly confused about what I need? It seems like a huge cost for what I imagine to be a small ask. This is not a custom piece of equipment and I can’t imagine I’m the first to want to connect to SCADA.

To put in simpler- what do I need to communicate to a vendor about what I need from them to connect Ignition to AB PLC besides an ethernet card with IP address on our SCADA subnet? Is it standard to have to “prepare” a list of tags or should they be able to easily point me to the location of tags in OPC browser?

I can’t think of any thing that would be required on the programming side to ‘prepare the tags’. I suppose it depends on the OEM’s experience with SCADA systems. Some systems I have run into in the past like to argue if you try to access tags outside of the controller scope. Ignition does this without issue though.

I believe that they are most likely confused about what it is you need from them.

Also, if they are charging you for an additional Ethernet Card then it is most likely a ControlLogix platform. CompactLogix has on board ethernet, the New versions have Dual IP and all but the L43/45 models of the 1769 line do not allow for additional Ethernet Cards.

Thank you!

What should I tell them I need, then? Are there any resources on this forum or somewhere else to describe to an RSlogix programmer who is not familiar with Igniton how to find tag address location?

For other manufacturers, I’ve shown OEM service technicians the tag browsing screen in Ignition for their PLC and they were confused about the folder structure, etc and unclear about how to look at a tag in RSlogix and tell me where it was in the OPC folders. Since I know very little about RSlogix we basically hit a wall and I was forced to just hunt around OPC folders until I found what I needed.

All you need from them is a list of Tag Names, down to the bit level(if valid), which represents the information you are interested in.

The folder structure is actually quite simple, and is the same one used by Rockwell for their SCADA system (FactoryTalk View).

If the Tag Data type is complex in other words not a BOOL, SINT, INT, DINT, or REAL, then it is represented by a Folder where the Name matches the Tag Name in the PLC.

This means that any Array, Timer, Counter, UDT, or Add-On Defined Type will be shown as a folder. Expand the folder to find tags contained within the Data Type.

Thank you, this is great information for me to have.

When I look through one of our other AB PLCs it looks like the ‘home folder’ has 3 types of folders:

[Diagnostics]
Controller:Global
Program: programName ( a lot of these)

This particular PLC has about 30 different program folders. And then inside these folders I can recognize what you’re talking about- there are ‘alarm’ folders that look like UDT type, timer folders, etc and some ‘simple’ tags like you mentioned (BOOL, etc) that are just in the starting program folder.

Sorry if this is obvious if you’re in RSlogix but how are these tags organized into program folders? If we’re looking at the tag in RSLogix will it be obvious which program its assigned to?

Thank you :slight_smile:

The Controller:Global folder is all tags in the ControllerTags, these are tags created with Controller Scope.

Any Folder of the format Program:ProgramName will have the Tags created within that Program’s Scope.

So for instance, a Tag Created with the Controller Scope in RSLogix5000 or Studio5000 can be found in the Controller Tags.

A Tag Created with the MainProgram Scope can be found in the ProgramTags under the MainProgram.

As an example if you were looking for the Done bit of a Timer tag called TIMER1 which was scoped to the MainProgram you would find that in the OPC browser at the following path:

Controller/Program:MainProgram/TIMER1/DN

Thank you again. Final question, I hope:

Is a list of PLC tags/addresses with descriptions something that is generally provided as part of the purchase of new equipment? It feels like being charged (a lot) to have this prepared is kind of like being charged for a hefty amount for an electrical schematic- it would be a little crazy if they didn’t have one prepared already and should just be standard with equipment. Let me know if I’m off base though or if that is not industry standard.

Having worked with OEM stuff, I’ll say this is not an automatic yes. Schematics yes, but program related stuff is not necessarily available. In fact, if not specified otherwise in the contract, an OEM would be well within their rights to deny all outside access to PLC and HMI (not that this is common, or would go over well in a lot of industries).

In our case, during commissioning, we would gladly provide whatever addresses the customer wanted their central SCADA to connect to and even provide additional tags/programming if they wanted something customized. They didn’t pay anything specifically for these changes, but they were paying over $1000/day to have a programmer there for commissioning. If we had remote access (without going to client site), they would just pay an hourly rate for any changes/additions–or production of documentation beyond the provided schematics, user, and maintenance manuals.

All that said, if you need access to 30 tags, $10k is a pretty high price tag. @lrose is exactly right on how the AB tags and processors work–you may not even need another Ethernet card.

It’s possible that rather than giving you access to the tags in the program they’re using, that they plan to create tags for what you want and then sync those with the tags used in the logic. There are reasonable reasons to do this, and it’s a bit of work, but I’d expect under 4 hours for 30 tags if your needs are clearly defined before the programmer jumps into it.

Well that is a broad question and it is very industry, supplier, and company specific. It isn’t unheard of for a list of PLC tags/addresses with descriptions to be requested, and a lot of times the list is generated during the design process. This was especially true with AB PLC’s prior to the introduction of tag addressing. Now that a tag can be named specifically to it’s function/data the practice has declined a lot.

In industries like Oil and Gas or Pharmaceutical, I could see this being a very common practice. Generally though, with tag addressing and aliasing, there really isn’t a need for a list, as you can just export it from the program if you need it in any format other than it is.

I work in Food & Beverage and I would say in my experience this is something that is rarely included as just a list. It is often noted for field I/O points, but Tags that are machine specific and independent of field I/O are rarely if ever provided without being requested.

I agree as well with everything that @witman said, $10K seems fairly heavy for what should be a simple task.

Ignition can see the tags from AB PLC thru the Controller:Global.
Better make sure that the PLC program tags used are on Controller Scope.

image
check

hope itll help

AG_201 and AG_801 are UDTs for motors. All tags contained in that specific Motor UDT are inside that folder.

Drag that UDTs to your Tag Browser for you to use inside Ignition Development.

Ignition can also see Tags in Program scope, as detailed above. They will be listed as Program:ProgramName.

1 Like

IMO, the supplier is just afraid to use a new SCADA system (rightfully so, getting connected to a random SCADA can cause a lot of headaches), and his price accounts for the risk factor.

I would suggest you negotiate an hourly rate, and perhaps let the programmer come over to make the connection together. By using an hourly rate, the supplier won’t have any risk factor left, so it will likely turn out to be cheaper.

The risk will become yours though. But since you have experience with Ignition and with creating a connection to AB, you’re actually better suited at estimating the risk.

2 Likes

Thank you for the advice.

What is the risk in connecting to a SCADA system? In my limited experience I have never had an issue/headache pop up. Are you talking about IP conflicts?

Lost developer time without a result, unhappy customers when the result turns out to be bad, having to support an unknown piece of software, …

There are a lot of things that can go wrong when connecting two pieces of equipment. And if you have no experience with one of the pieces, it’s hard to estimate the risk.

The main thing I’ve seen is a client may change tags they shouldn’t causing support calls they think are due to OEM errors when in reality they caused the problem by changing things they didn’t understand. A way to mitigate this is to give them their own tags and then sync them to the logic tags with whatever value checking is required to ensure only valid settings are passed through to the application logic. If they link to any other tags, expect to pay for any support calls that may result.