Motor Speed Control through PLC

sherman4

Member
Join Date
Jun 2002
Posts
46
Hello.

I would like to find out if implementing a speed closed cotrol loop for an AC Motor is an adequate task for a Siemens S7-300 PLC, or if I should get me an AC Drive with speed control features instead and leave the PLC CPU available for other tasks.

I Know that In order to control the motor speed through the PLC (and using a standard 4-20mA AC Drive)I must feedback the motor´s speed using an encoder (or a Tacometer - speed transducer), if I use the encoder, should I use high speed digital input modules?

All help and suggestions are greatly appreciated.. I have done other kind of closed loops (PID) but never have done a speed control for an AC motor before.

Thank you,

SH4
 
Info about your application is scant. However my first inclination would be to find a closed loop drive whereas the encoder will feed back directly to a module on the drive. The idea of using the PLC to feedback the speed using an HSC module, and running the drive with an analog output has long passed. If your application dosnt require a super precise low speed / high torque control you may be able to get away with one of thoes encoderless closed loop vector drives.
 
Priveate Message from Sherman:


Motor Drives and PLC

Hi and thanks for posting a helpful reply to my post.

More information regarding my application:
I Have four AC motors (2 HP each one) to drive four pumps. Speed regulating is a critical issue for my pumping system, therefore I just wanted to make sure If I really need to use a speed closed-loop control, but it seems nowadays Vector AC Drives are quite accurate and I will be able to reach my goals, even If I do not feedback them with an encoder.

What I plan to do now is to get me four AC Drives with the Profibus DP comm. Interface, (I believe Yaskawa V7 Drives should do), and connect them to my Siemens S7-300 which is Profibus DP Enabled. Any suggestions? I thik my idea sounds nice in terms of cable savings and control.

Thanks for the help.


Sherman,

To be honest I cant anwer intelligently, I have no expierance with Profibus, the S7-300, or Yaskawa Drives... Hopefully someone else could chime in...


 
Sherman4,

If, as you say, the speed regulation is truely "critical" then I wouldn't even consider inserting a PLC into the speed regulation loop. You are just asking for trouble.

I assure you that the positive results you will get from not taking risks with "critical" control systems will far out-weigh any attaboys you will get for saving a few short-term dollars on a poorly conceived one.

Should your system fail one day, the one that was built using "best practices" will not hurt your reputation. The other one will. And at the end of the day, our reputations are our most valuable professional assets.

Steve
 
I agree with Mike and Steve on this one. Your time is worth more than any cost you will pay for a good sensorless vector or closed loop FOC drive. I like challenges as much as the next guy but this isn't the challenge to dive into. To many others have already done it and do it well.

I have never specifically used a Yaskawa drive but I have used the S7-3152DP with a few drives. The S7-300 with built-in Profibus is pretty easy to use if the drive has any flexibility at all (and all the required documentation). With only four drives you may not see any direct cost savings going with fieldbus connections. But the flexibility a fieldbus provides gives you a cost advantage that isn't easy to quantify.
It sounds like you know how fast the motor needs to go you just need to make sure the motor goes that fast. Just let the drive do that.

Keith
 
I agree with the advice above. The types of parameters involved in this type of operation are very specific to the motor your using. I don't have the info for your motor but just as an example of a AB Ultra 100 series drive for a custom motor files the PLC would have to handle
number of poles
torque constant 0.61 N-m/amp
Jm(inertia)2.26 kg-cm^2
feedback
linecount 1500 lines/rev
index offset 0 degrees
startup commutation Hall/hall=x degrees offset

other parameters you would need are
reduction ratio
rated current
max current
max speed
bemf
motor resistance
motor induction
thermal time constant
moment of inertia
encoder linecount

these are the various parameters that are needed on this particular drive how that would get implemented onto a PLC I wouldn't even hazard a guess.
 
Sherman,

What are the pumps controlling??? Why do you need such precise control over pump speed? Is this a hydraulic motion control, or water pressure/flow control?
 
Technically he has a plc with profibus, 4 drives and 4 motors. I dont think he ever planned to run the motors without a drive.

To much is unknown about the application to state HOW to do it.
Can you use a plc with drives and control speed...yes.
Should you....Depends.

Sherman if you have a couple of hours read this thread, it doesnt use Siemens or Yaskawa but has alot of relevant info.
http://www.plctalk.net/qanda/showthread.php?t=11015&highlight=Learning

When you get time also provide more details about what you are doing with the motors...ie where will the encoder (or encoders) be connected. What are you pumping? Flow or pressure may be more applicable. What you are considering critical may not be what others would consider critical.

You can easily use a plc to command a drive WHEN to run and allow the drive to regulate speed based on feedback. Its also fairly common to use a high speed counter connected to a plc and let the plc control the speed. With Profibus involved you may not need the analog.

If you need to learn more about Profibus there is free online training at: http://www.profibus.com/training.html
 
Let's put it this way: a PLC is just not fast enough to reasonably control motor speed. Not to mention that one would have to program in all the math involved - and this is not for faint-hearted.

A combination of a Siemens PLC with Profibus-enabled Yaskawa AC drives looks like a solid set of hardware for the task (as much as I understand it). The PLC would just set the target speed, all the necessary parameters, start/stop the drives and monitor their operation. All the calculations and analisys required to maintain the correct speeds would be done within each drive - and that is what those drives are designed to do.
 
"Let's put it this way: a PLC is just not fast enough to reasonably control motor speed."

I have LOTS of apps where the PLC is directly controlling the drive via encoder input & analog output. However as drives became "smarter", this became unecessary. However controlling 4 drives would likely be VERY taxing..I wouldnt even consider it.


"Not to mention that one would have to program in all the math involved - and this is not for faint-hearted."

Very True...

Ron's reccomendation to read the "Learning by Doing" thread is a good one. However it really not a closed loop in regards to speed control. On this application the encoder provides the position/length of the wire. The drive is actually operating in an open loop mode.
 
There were alot of fancy terms used and alot of assumptions.
Where or why would you use an encoder on a pump?
PID was mentioned but is it needed?
What exactly is being controlled?

Personally havent seen enough detailed info to offer anything, that was the point of my previous post.
 
elevmike said:
I have LOTS of apps where the PLC is directly controlling the drive via encoder input & analog output.

Do any of those applications involve controlling speed? I've also done a few in the past where position was being controlled - very slow and not awfully accurate though...

Just getting reliable and stable speed calculation from encoder feedback in ladder code is a challenge, especially if the scan time varies.
 
I use timed interrupts (10ms) to control three motors with the speed loop implemented in the plc (317-2DP). The motors have their speed demand trimmed with dancer feedback. Implementing friction/inertia/tension feedforward terms in the plc and generating a torque demand from the speed error means the drive can be set up as a torque amplifier with speed feedback (via Profibus or analogue). If a different drive is specified, getting the system working is usually no problem.
 
LadderLogic said:
Do any of those applications involve controlling speed? I've also done a few in the past where position was being controlled - very slow and not awfully accurate though...

Just getting reliable and stable speed calculation from encoder feedback in ladder code is a challenge, especially if the scan time varies.

Yes & Yes.

Short history on elevator motion control:

About 60 years ago elevators were typically generator field control. Born in the East Prussian ship yards the concept is also known as Ward-Leonard. The s-curves were provided via a dampening motor. Quite a contraption, but it was the standard up to the mid 1980s.

Then came DC drives that replaced the generator. The early DC drives only provided an analog input, and the motion control was typically done with a gen-tach feedback to a separate motion controller like this:
http://www.ipcautomation.com/s-300.html

Then came higher performance PLCs and AC drives. The early AC drives also were equipped only with an analog input. So the choice of a closed loop system was either using the PLC as a motion controller, or using the separate pattern generator like the one above. However since an elevator is Not a production machine, and requires a comfortable ride, the accel/decel ramps are much longer then you might expect. A Typical ramp would require about 2-3" per 10fpm of rated speed. So if the rated speed of the elevator is 500fpm the accel distance would be up to 12.5ft. So the requirements for fast response isn’t that great and could and is easily handled by a PLC using an analog out and encoder or analog tach-gen input. Our 1st app of this type was done with the TI 405. (Koyo/AD 405).

About 10+ years ago we were the guinea pigs on the 1st "digital" drive installed on an elevator, whereas the drive provided the motion control autonomously. This was a rough go at fist (4 revisions in the software), but we've never looked back since.

Positioning is provided directly back to the PLC via an encoder, usually mounted on the governor which is driven by a cable that is attached to the elevator car safety device. Final floor level position sensors are typically mounted on the cartop which cause the car to level at low speeds into the floor. AMSE A17.1 2000 requires 1/4" floor level accuracy, but we can easily get it dead nuts every stop.

To quote Medocraties...good enough for the elevator, but I wouldn’t attempt using the PLC for the closed loop control on a large mass high-speed flying shear.

 

Similar Topics

Does anyone have any experience with working on piezoelectric motor control? I want to use off the shelf components to hopefully change the...
Replies
5
Views
713
So it looks like i am stuck with an old reliance DC drive on this project instead of the powerflex dc w/ 22-COMM-E. That being said i am trying to...
Replies
0
Views
1,184
powerflex755,,,, I set ptp as per page 128 of this document, but the motor does not work. I try to control using Absolute Encoder. Please let me...
Replies
0
Views
1,538
Hi all, Got an application where the customer is looking to use a servo motor, purely because of the very wide speed range required for different...
Replies
12
Views
3,657
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...
Replies
10
Views
2,118
Back
Top Bottom