You are not registered yet. Please click here to register!


 
 
plc storereviewsdownloads
This board is for PLC Related Q&A ONLY. Please DON'T use it for advertising, etc.
 
Try our online PLC Simulator- FREE.  Click here now to try it.

---------->>>>>Get FREE PLC Programming Tips

New Here? Please read this important info!!!


Go Back   PLCS.net - Interactive Q & A > PLCS.net - Interactive Q & A > LIVE PLC Questions And Answers

PLC training tools sale

Reply
 
Thread Tools Display Modes
Old February 16th, 2017, 03:20 PM   #1
wildswing
Member
Canada

wildswing is offline
 
wildswing's Avatar
 
Join Date: May 2005
Location: Sault Ste Marie, Ontario
Posts: 281
PLC5 PID translation to ControlLogix

Hey fellas,

I'm in the midst of doing my first translation from 5 to 5000 that also includes PID instructions. I'm just looking for any helpful tips or tricks you may have.

The L71 logix processor will run the original 1771 IO over RIO via DHRIO modules. Analog modules are 1771 NIC and NOC.

The original PLC5 program contained a 100 msec STI file in which all the PIDs were run. All have 100 msec update times. The translated program has them all in an STI file as well. 100 msec timing confirmed.

I've looked through some docs in the Rockwell tech KB and I see the phrase "many things do not translate" (or something similar). Looking through and comparing the first one I found, I think I understand most things that do and they look ok.

I see, on the scaling page, min/max for cv and both are zero. This is obviously different from low/high cv limits on the config tab. I assume leaving these zeros is a bad thing and the output would not work if left as is. Correct?

Any other things I should pay close attention to? Is there a specific Rockwell doc I should be reading?

As always, your input and feedback is very much appreciated. Many thanks in advance.
__________________
Mark
Hard work never killed anyone, but why take the chance?
  Reply With Quote
Old February 16th, 2017, 03:29 PM   #2
wildswing
Member
Canada

wildswing is offline
 
wildswing's Avatar
 
Join Date: May 2005
Location: Sault Ste Marie, Ontario
Posts: 281
I did a search and didn't find anything but now I see some in the similar topics display below. Maybe my wording was off. I'll go read those.
__________________
Mark
Hard work never killed anyone, but why take the chance?
  Reply With Quote
Old February 16th, 2017, 03:55 PM   #3
gclshortt
Member
Canada

gclshortt is offline
 
gclshortt's Avatar
 
Join Date: Dec 2014
Location: Cobourg
Posts: 1,908
CompactLogix use asynchronous I/O scan. This means the that the updating of I/O will happen whenever it can. n an asynchronous I/O scan, you typically will only use the actual I/O reference once in your program. Most programmers of these systems will transfer the I/O to internal memory first. They will then use the internal memory in the program code. This will now act like a synchronous, predictable scan.

Just a heads up,
Regards,
__________________
Garry
http://www.accautomation.ca
  Reply With Quote
Old February 17th, 2017, 09:52 AM   #4
wildswing
Member
Canada

wildswing is offline
 
wildswing's Avatar
 
Join Date: May 2005
Location: Sault Ste Marie, Ontario
Posts: 281
Thanks Gary.

Yes, I'm way ahead of you on that one. Since this is a translation from RSL 5 to RSL 5000, it creates I and O arrays that I then have to tie to the real IO. I do that in a preliminary input file and a final output file. I've also put the MSG read and write blocks for the analog IO into them as well so all the IO will behave as if it were synchronous.

Anybody else? I'm particularly curious about that max/min cv on the scaling tab. I would assume max must be set to 100 if I'm dealing with a 0 - 100% output. Is the cv the same as the .out as it is in the 5?
__________________
Mark
Hard work never killed anyone, but why take the chance?
  Reply With Quote
Old February 17th, 2017, 09:56 AM   #5
robertmee
Member
United States

robertmee is offline
 
robertmee's Avatar
 
Join Date: Feb 2008
Location: NC
Posts: 1,415
Quote:
Originally Posted by wildswing View Post
Thanks Gary.

Yes, I'm way ahead of you on that one. Since this is a translation from RSL 5 to RSL 5000, it creates I and O arrays that I then have to tie to the real IO. I do that in a preliminary input file and a final output file. I've also put the MSG read and write blocks for the analog IO into them as well so all the IO will behave as if it were synchronous.

Anybody else? I'm particularly curious about that max/min cv on the scaling tab. I would assume max must be set to 100 if I'm dealing with a 0 - 100% output. Is the cv the same as the .out as it is in the 5?
The Min/Max scales the CV into engineering units....So if you're controlling a Pump, that might be 0 to 60Hz. The OUT is always 0 to 100% of the min/max of the CV. So when CV is at 60 (Hz), OUT is at 100. So you can always (I do), use the OUT to scale your analog. Use the CV for displaying real engineering units, if 0 to 100% doesn't make sense.
  Reply With Quote
Old February 17th, 2017, 09:59 AM   #6
wildswing
Member
Canada

wildswing is offline
 
wildswing's Avatar
 
Join Date: May 2005
Location: Sault Ste Marie, Ontario
Posts: 281
Thanks Robert. I think I follow that. FYI, we've always set our PID out as 0 - 100% then done any scaling either on the way to or in the analog output card.
__________________
Mark
Hard work never killed anyone, but why take the chance?
  Reply With Quote
Old February 17th, 2017, 10:03 AM   #7
robertmee
Member
United States

robertmee is offline
 
robertmee's Avatar
 
Join Date: Feb 2008
Location: NC
Posts: 1,415
Quote:
Originally Posted by wildswing View Post
Thanks Robert. I think I follow that. FYI, we've always set our PID out as 0 - 100% then done any scaling either on the way to or in the analog output card.
You still do scaling as normal for any analog. But use the .OUT, as it is always 0 to 100% (barring any clamps you've set). So 0 to 100 is always equal to 0 to max scale of anlaog (37267, 4095, whatever). The .CV may or may not be 0 to 100 depending on the min/max of the CV in the PID.
  Reply With Quote
Old February 17th, 2017, 10:09 AM   #8
wildswing
Member
Canada

wildswing is offline
 
wildswing's Avatar
 
Join Date: May 2005
Location: Sault Ste Marie, Ontario
Posts: 281
Thanks again Robert. Things have clouded over slightly. So if I have an analog output that's expecting data value from the PID controller of 0 - 999 (4-20ma) the PID .out will continue to be 0 - 100% but I would set my min cv to 0 and max cv to 999. Yes?

The cv max limits are still there only to clamp the output and prevent the PID from winding up, correct?
__________________
Mark
Hard work never killed anyone, but why take the chance?
  Reply With Quote
Old February 17th, 2017, 10:18 AM   #9
wildswing
Member
Canada

wildswing is offline
 
wildswing's Avatar
 
Join Date: May 2005
Location: Sault Ste Marie, Ontario
Posts: 281
I have to run out for a bit so will skip ahead and confirm that obviously leaving the max cv at 0 is not a good thing and must be set to the max value that your output is expecting. Yes?

Any other hints, tips or tricks for the Logix PID?
__________________
Mark
Hard work never killed anyone, but why take the chance?
  Reply With Quote
Old February 17th, 2017, 11:08 AM   #10
robertmee
Member
United States

robertmee is offline
 
robertmee's Avatar
 
Join Date: Feb 2008
Location: NC
Posts: 1,415
Quote:
Originally Posted by wildswing View Post
Thanks again Robert. Things have clouded over slightly. So if I have an analog output that's expecting data value from the PID controller of 0 - 999 (4-20ma) the PID .out will continue to be 0 - 100% but I would set my min cv to 0 and max cv to 999. Yes?

The cv max limits are still there only to clamp the output and prevent the PID from winding up, correct?
Yes and No....If you want to use the CV as a direct scale to your Analog Output, then yes you could do that. However, I usually scale CV to a meaningful unit of measurement....IE 0 to 60Hz speed, or 0 to 100% opening of a valve, or 0 to 10 inches of position, etc.

Then elsewhere in ladder, I will use a CPT statement to convert the .OUT (0-100%) to my analog output. Something like CPT MyAnalog PID.Out/100 * 999
  Reply With Quote
Old February 17th, 2017, 12:13 PM   #11
wildswing
Member
Canada

wildswing is offline
 
wildswing's Avatar
 
Join Date: May 2005
Location: Sault Ste Marie, Ontario
Posts: 281
Gotcha. I think I understand now. Thanks again Robert. Much appreciated.
__________________
Mark
Hard work never killed anyone, but why take the chance?
  Reply With Quote
Reply
Jump to Live PLC Question and Answer Forum

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Topics
Thread Thread Starter Forum Replies Last Post
PID in ControlLogix and CompactLogix Environments devo.xx LIVE PLC Questions And Answers 13 August 21st, 2013 09:09 PM
FT View read/write Controllogix mapping PLC5 data files? wilsonzhu LIVE PLC Questions And Answers 0 April 11th, 2008 01:44 PM
ControlLogix and PLC5 Remote I/O Rack tgoulding LIVE PLC Questions And Answers 23 February 21st, 2007 10:51 AM
How many PID loops that can execute correctly in Controllogix? bundhit LIVE PLC Questions And Answers 17 June 19th, 2006 07:13 AM
Msg instruction ControlLogix PLC5 svetagl LIVE PLC Questions And Answers 16 June 16th, 2006 09:26 AM


All times are GMT -5. The time now is 12:00 AM.


.