RSLogix 5000 data file advice/preference

rta53

Lifetime Supporting Member
Join Date
Feb 2003
Location
North Carolina
Posts
619
I am getting ready to start on my first RSLogix 5000 project and was wondering if any of you have a standard for naming data files. I have worked with RSLogix 500 for many years and of course never had to be that concerned with data file nomenclature. I know you can call files whatever you like in 5000 but it would be nice to know of a good standard or practice to follow. Any advice would be appreciated.

By the way, I had to troubleshoot a ControlLogix program that someone else had written and he/she actually used file designations just like in 500, ie timers were T4 and bits were B3. I almost wondered if they had just converted an RSLogix 500 program to 5000.
 
We have developed UDT's for the majority of our devices - all based on our programming standards. Most of the overhead is incorporated into the UDT.
 
Develop a well thought out and modular UDT Structure for everything. The only place for non-structure tags is to alias physical I/O.

Simply creating 'Files' to make Logix Programs look like PLC/SLC programs should be listed under "Logix Platform Programming WORST Practices".
 
rdrast said:
Simply creating 'Files' to make Logix Programs look like PLC/SLC programs should be listed under "Logix Platform Programming WORST Practices".

That was one of the reasons I asked. I would like to develop good practices from the get go. Looks like it's going to take some time to do this but it will be worth it in the long run.

Would it be too much to ask for an example of your UDTs? Or maybe point me to some examples if you know of any.
 
Last edited:
okay, say you need to make 50 pumps.

you make a UDT called Pump.

Then you add tags like running (bool), start_command(bool), Stop_command(bool), Local/remote, etc. Speed (int), etc.

Then you create a tag with the type selected as "Pump", and then to use the running signal, you would say pump.running

that's a quick overview
 
Here is a program I wrote tonight to wash trucks. Look at CM's and UDT's to get an Idea how to get the most from your Contrologix.

Even though it looks somewhat complicated it took me less that 6 hours to write this program because once I mapped the I/O I modified an existing program. Standards.

Bob
 
Bob,

Thanks much for the sample program. It would be nice if my company would do more "standard" systems. They talk about it but it never seems to happen. With rare exceptions every job we do is a custom system. Fortunately there are parts of our systems that are standard, such as backwashing of filters. There are elements of your program that are similar to what we do (water purification systems).

Is there a particular reason you used ladder logic to configure your analog input module instead of doing it in module configuration? Using ladder logic is, of course, what I am familar with when programming with RSLogix 500, but I thought in 5K you didn't need to do it this way.

Randy
 
If you are using 1756 I/O, you can scale your analog on the module. If your scaling is pretty static, this is a good way to go. If you need to be able to modify scaling from an HMI screen, it can be easier to scale in ladder code. You can access the module object directly, but you have to trigger an "update" message to the module before it "accepts" the changes. Some people find this more cumbersome.
 
When creating UDT's, make sure you have your UDT member names finialized before you start programming. If you change the name of a UDT member and it is used in your program, you will have to manually replace the old tag names with the new tag name. A painful lesson.
 
What will happen if you add to the UDT. For example, a UDT has 30 bools and 12 DINTs. Then 10 bools and 4 DINTs are added. Would this be a problem?
 
AJZ, there's no problem with this. It's "tag based" so the only time you'll have a problem is if you delete or rename a member. Adding is okay, although you'll have to do it offline, and then download the changes. UDT changes can't be made online.
 
Be a little heads up with modifying UDTs in earlier versions of Logix5K (V12 and before???). An instance of a UDT occupies a continuous block of memory in the PLC. Earlier versions of Logix5K didn't do a good job of managing the memory shuffle required if a UDT grows. Logix5K would simply set all the element values to 0 after the modification was made. As long as you have no 'constants' in the block it's not a big deal. But if you do you may lose those values.


Keith
 

Similar Topics

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
101
I have a micrologix 1100 that I am trying to read three data points from it on my safety plc using studio 5000. Any tips or guidance is appreciated.
Replies
4
Views
815
I want transfer my I/O data from schneider (Unity Pro) as a write data and RS Logix 5000 as a read data. I use Ethernet as an communication...
Replies
0
Views
682
Im trying to sum a running "Shift Total" production value and move it into a Month Total value that will continuously update for viewing...
Replies
1
Views
1,517
It has been a while since I used RSLogix 5000. Is there a way for me to save data in excel, notepad, etc?? I want data to be saved when a user...
Replies
4
Views
1,748
Back
Top Bottom