GE RX3I Motor Speed Control

ZestyMozzarella

Lifetime Supporting Member
Join Date
Jun 2019
Location
Massachusetts
Posts
79
Quick question on my first from scratch program needing to control the speed of a motor via controlled input to a motor drive; is it more applicable to use a GE/LE Comparison Scale to turn the motor output ON/OFF or should I used a PID_ISA function block? Curious if one is superior to the other?

I would assume the PID is superior. I have seen them used for temperature before but not witnessed them used for motor control, assuming you could though. It should be noted, I only have a drive input via %AQ out. I do not have feedback from the drive. My feedback will be RPM from an encoder.

I'm aware the PID block sets up a 40 WORD array that needs configuration and can get a little involved. It sounds easier to use a series of GE/LE commands and make calculations according to turn the output ON/OFF but it feels sloppy like the PID is intended for true control. Any advice on which one should be opted for or is suited best for this?

Thank you!
 
What is RPM range?

You will probably need to configure speed output to drive to be RPM and not frequency or 0-100% speed
This way you are monitoring RPM from Encoder (PV) and outputting speed to drive in RPM (CV) to make them match to Setpoint (SP) which is also in RPM.

These are the (parameters) for the PID block, and they must be INT, not real.

What is the motor doing? Is RPM very responsive to change in speed?
How close do you want to control RPM to process?
 
What's the application Flow controls , Pressure control , Level control
all of these are can be controlled with a PID Motion run to stop are nor good PID applications.
al PID calculated the difference between the set point and measured feedback and calculated a motor speed to get then match
there are many ways to control a motor speed but we need to know just what we are controlling
 
When you say you're thinking about controlling a motor's speed by turning it on and off are you thinking along the lines of the way a thermostat controls the temperature in a room by turning the heater on and off? If so that's not a good way to control the speed of a motor.
Using a PLC analog output as a speed command to a VFD is a much better method. Whether or not you need the encoder feedback depends on how accurately you need to control motor speed at all load levels and how sophisticated a VFD you plan to use.
 
I have seen a couple applications with GE/LE comparisons but I agree that an ON/OFF sounds like a terrible idea which lead me here. The RPM range of the motor is standard industrial 0-1760 RPM. The drive does not support feedback in. I have it currently controlled with an analog output from PLC card to the drive but it has no limitation without feedback, it just wants to go to max unless I put a choke on the drive. I agree that a PID loop is what makes the most sense here, just new to setting one up.

The line is an aqueous wash line, payoff and take-up, take-up motor doing all the pulling after a manual JOG gets the material through the line to the take-up. I have a majority set up so far. I read in my encoder which is a 1:1 RPM/FPM as my wheel circumference is one foot of travel which makes it easier. I read in the encoders RAW counts and convert it to RPM. The lines set point is also in FPM which directly converts to RPM since 1:1. I also already calculate the live RPM scale to what the equivalent drive analog scale 0-32767 input would be (though don't think I use that here).

For the PID loop I figured I can use RPM's in Integer type and then do a calculation off the CV result to provide my drive with a constant live scaled analog input. I'm new to the PID loop though. I'm looking through the 40 WORD array and realizing you need to preload some values for this to work. Most stay blank and are calculated by the loop I presume, but the first 2-18 WORDS or so need configuring with respect to the motor. The first few words are easy, I'm working my noggin' around the error and bias WORDS I need to load. Once I figure that out, I'm off to the races. Given my motor RPM, curious if anyone can advise here or give some familiarity.

I'm reading through the PID Programming manual now for referencing as I build. From what Nathan said, the line plans to run anywhere from 30-50 FPM max. Would be nice to have the speed stay within ± 1 FPM if possible. Not sure if that is demanding or not as my direct motor interaction with drives to this point is fairly limited in experience.

Thanks, I appreciate everyone's input!
 
Last edited:
Also for anyone that does come across this article in the future, I found this nifty little PID tuning pocket guide that shares a plethora of PLC brands and seems very useful. Thought I would post it here for reference in case it helps someone else that comes across our topic.
 
It may not work as well on PLC PID algorithms but I was taught the simplest way on older controllers by an instrumentation guy must have been 100 years old lol. turn I & D off or min, set P to about 40-50 %, watch process, reduce P until it becomes unstable, increase until stable, add I and if required add D.
A lot of systems probably do not need the derivative.
I once watched him set up a loop that a Eurotherm tech was struggling with for over 4 hours, he used this method & got it right within 10 mins.
 
A few thoughts
Is this a system you have setup from scratch or are you modifying and existing system ?
You said the drive does not support feedback and you set the speed command from an analog output from a plc but without limitations and the drive just goes to max speed
First separate the drive from the plc for the moment and make sue the drive can control the motor at the set speed. If the drive can’t control the speed stand alone then you have zero chance of controlling it from plc.

I really don’t see this as a application for a PID control. But I am wondering it was not originally setup ad a torque control, if so then the motor speed could be fixed possibly at max speed and the analog signal to the drive would be the motor torque limiter command. The problem with that is if there is no load on the motor the motor can not develop torque and it will run at max speed. I usually set up torque control drives with a speed limit to prevent this type of operation.
You said it was a winder unwinder application
As for the encoder a single pulse per revolution is not an encoder you should have at least 100 PPR I typically like to see encoder values of 2500ppr to 5000ppr the higher the PPR the better control you will have. It sounds like the single pulse per rev is used as a counter to count the material length and would have little to no value is speed control
I would like to see some pictures of this machine even a video they would be very helpful
Let us know how you make out
 
Modifying an existing system. Beyond setting a drive bias of operating at say 70% it's RPM capacity, there is no control on it. As you imply, it simply continues to ramp until it hits maximum RPM allowance which is why we have employed the encoder approach as our feedback. The drive has proven to support the motor at the required setpoint. Only issue is the setpoint will change from 30-50FPM depending on the part being cleaned, so control is now needed, cannot rely on one stable percentage point to choke the motors highest RPM limit.

The encoder currently is a 10 PPR but I have a 100 PPR preferred in the mail coming in to swap out with. My scaling is with 10 for now but I will change it once the 100 comes in. The 10 at least gets me testing. I meant 1:1 for RPM to FPM. My diameter wheel is 3.8125 which gives me 1ft per one full rotation, so if I have 50 revolutions per minute, likewise I have 50 FPM.
 
A few things if you are trying to run at 50 RPM on the motor you will need a vector drive with encoder to do it.
it still sounds like you are running in torque mode.
What are you doing to" choke " the motor loading to slow it up , again it's in torque mode
if you need to regulate speed then you need to change the drive to speed regulation mode
It looks to me like you are trying to run the drive at just over 1HZ
1760 rpm motor is a 4 pole motor base speed in 1800 rpm no load
the only way to run any motor that slow is with a good flux vector drive
if you run in torque mode then you can run all the way down to 0 but controlling speed using torque is tricky it usually done in the older servo drives with encoder feedback for speed regulation
I am surd it can help you PM me it will work better
 

Similar Topics

I have a system using Rx3I CRU320 redundant CPU with Proficy Machine Edition Software. In the hardware configuration of each CPU module, under...
Replies
14
Views
389
Hi, we are using Rx3i CRU320 redundant PLC system and we noticed a discrepancy between Primary and Secondary controller. Couple of variables (DI)...
Replies
8
Views
284
Hi there, I'm doing some extensive testing and commissioning with a slew of new Emerson PACSystems RX3i PLCs. It would be convenient to...
Replies
5
Views
104
Hi there, Trying to get some ascii serial communications working via RS485 (COMMREQ functions). I have attached our wiring for the COM2...
Replies
1
Views
975
Hello all, First time poster, long time viewer of these forums. Could not find my solution on here. We have had issues with a Comm Fail on an...
Replies
2
Views
383
Back
Top Bottom