Studio 5000 IO Mapping Preferences

churcherikc

Member
Join Date
Jun 2019
Location
Alabama
Posts
1
Hi all,

New to the forums and wanted to ask you guys a preferential question. With the newer versions of Studio you have various options on how to map your raw data into your program. The ones I can think of off the bat are mapping routines, aliasing, and program parameter connections. Which ones do you prefer? Personally, I've always leaned towards mapping routines because a) you can change IO online in the case of channel failure/module failure/etc. (unlike aliasing) and b) because you can still cross reference from the raw datatype (unlike program connections). What are your thoughts? Always looking for best practices.
 
I like to map all the physical IO, as you said, for testing, but then you can run a "read input" routine at the beginning and a "write output" routine at the end. This allows you to make the asynchronous PLC function as a synchronous system, which I prefer.
 
Hi all,

New to the forums and wanted to ask you guys a preferential question. With the newer versions of Studio you have various options on how to map your raw data into your program. The ones I can think of off the bat are mapping routines, aliasing, and program parameter connections. Which ones do you prefer? Personally, I've always leaned towards mapping routines because a) you can change IO online in the case of channel failure/module failure/etc. (unlike aliasing) and b) because you can still cross reference from the raw datatype (unlike program connections). What are your thoughts? Always looking for best practices.




anyone that aliases IO is the debil
 
I do what sparkie suggests.
I may even use more than one IO map for inputs, and more than one for outputs, if I have that many.


For bits, I just make a rung for each module (*), with branches for each input (output) bit, whether or not it is used in the program. If not used, they drive a NOP (for inputs) or have an AFI in front (for outputs.


I also do the mapping in the same order the modules are in the IO rack.
Makes it easy to find unused points in the future and assign them.


(*) Actually, I usually do this with UltraEdit just in text, and then import it into Logix. Much faster that way.
 
I do what sparkie suggests.
I may even use more than one IO map for inputs, and more than one for outputs, if I have that many.


For bits, I just make a rung for each module (*), with branches for each input (output) bit, whether or not it is used in the program. If not used, they drive a NOP (for inputs) or have an AFI in front (for outputs.


I also do the mapping in the same order the modules are in the IO rack.
Makes it easy to find unused points in the future and assign them.


(*) Actually, I usually do this with UltraEdit just in text, and then import it into Logix. Much faster that way.

I second this. In addition, I typically replicate a rung which contains a debounced version of every input with a timer that I can modify if needed.
 
By mapping, are you guys talking about creating a BOOL instruction for every input and every output, and using the bool only?

What's wrong with using alias? I usually use alias a lot more. I only create BOOLs if I need to send it to my HMI program. I thought using alias was easier than creating a separate BOOL for each i/o.
 
I'm an alias guy myself. But I can see the point the mapping guys make when it comes to quickly shifting I/O. If you cook an input and you have the I/O mapped, you change that input in one place and it carries through the program. If you are aliased you need to replace the input in every location it is used.

Keith
 
By mapping, are you guys talking about creating a BOOL instruction for every input and every output, and using the bool only?

What's wrong with using alias? I usually use alias a lot more. I only create BOOLs if I need to send it to my HMI program. I thought using alias was easier than creating a separate BOOL for each i/o.

When you try to test with alias it is trickier because the system will always be updating the inputs or turning on outputs. If you map the IO you don't have to put in a bunch of forces to test.

As far aa rdast said, +1 for mapping in the same order as the rack. I'm also ANAL about labeling my spares in the program so I don't have to fight for them.
 
I do what sparkie suggests.

(*) Actually, I usually do this with UltraEdit just in text, and then import it into Logix. Much faster that way.

I wish to learn this power. :) I have imported L5K many times but are you importing just rungs in plain text? as in SOR XIC OTE ETC? I have never had the need but thats about to change with a 30 PLC project coming up.
Please show me an example.

+1 for UltraEdit BTW... Regex expression editing was a blessing from above.
 

Similar Topics

Hi, I trying to figure, how to map local inputs to an array. I've attaches some images; the FROM image has the the local inputs (from 0 to 5...
Replies
9
Views
2,786
Hi everyone, I have an issue with installation of Studio 5000 33.00.02 DVD Media disc 2 with View Designer on Windows 11. After installation...
Replies
0
Views
16
Anyone have problems/solutions with Rehosting Studio 5000 to a new computer. Our IT department successfully Rehosted 2 laptops, but the other 2...
Replies
1
Views
103
Hi, I'm quite new to Rockwell PLC and currently trying to implement the following if Sw1 then for i:=1 to 20 by 1 do xEnable := 1...
Replies
4
Views
123
Hello! Hope you are great. I need to make a change in a PLC with ladder logic. I will mount a analog valve and I need to control it in ramp up...
Replies
7
Views
272
Back
Top Bottom