Fast outputs controlling servomotors

Dr4k3

Member
Join Date
Feb 2010
Location
Sorocaba-SP
Posts
14
Hello for all !

I have a new question, and i want to know if any friend here can help me. So let's go...
I want to control a servomotor with fast digital outputs from my PLC, but i dont know how it works. I've listened something about "pulse blocks" or "pulse trains" where PLC informs the position via fast outputs to servodrive.
So i want some explain or example of this application, i think this is not so hard to develope, but i dont know how to do.

Thank you friends,

Dr4k3
 
It may help if we knew exactly what I/O you plan to use and which servo motor you plan to use.
Personally I would not try, servo controllers already do this very well.
Seems like it would be similar to playing a symphony with with a pail full of piano keys.
 
Actually i did not defined devices yet. I saw an application with Mitsubishi FX3G and a Mitsubishi servodrive, but i want to know how to create a PLC ladder logic to use in fast outputs... or... what is the philosophy into this method of control... what these pulses generated by PLC represents for servodrive? Or...for example, what is the reaction by servo if i'll to generate pulses in the same frequency or with variable frequencies...
Did u understand?
 
Actually i did not defined devices yet. I saw an application with Mitsubishi FX3G and a Mitsubishi servodrive, but i want to know how to create a PLC ladder logic to use in fast outputs... or... what is the philosophy into this method of control... what these pulses generated by PLC represents for servodrive? Or...for example, what is the reaction by servo if i'll to generate pulses in the same frequency or with variable frequencies...
Did u understand?

Are you sure that it wasn't a stepper motor? Servos are typically controlled by an analog voltage signal; steppers are often controlled by pulse trains, which yes can be sent by PLC digital outputs if the outputs are fast enough.

You have to watch that, though, because an output capable of sending a kHz pulse train is not necessarily the same as one that is described as "fast" by the vendor. Check the specs on the output; it will usually mention that it CAN control a stepper motor in the literature for the PLC.
 
The majority of newer servo drives on the market today have the capability of controlling position using high speed digital step and direction inputs vs. the archaic analogue inputs.

To complement these advances most PLC manufacturers now offer models [even in the smaller brick style units] that have high speed outputs configurable for step and direction capable of driving servo inputs.

Some PLC's even have high speed outputs that can implement motion profiles with configurable position/accel/decel parameters.

Joining the two together offers a very low cost and simple solution for motion control.

GO DIGITAL!!
 
Something to think about

Good motion controllers have 16 bit analog outputs and if they update every 250 microseconds then the count rate must be 4096x65536 are your counters that fast? Can the outputs change within a few nano seconds seconds?
It takes special hardware to do PWM properly and usually this is in the drives themselves but not in the PLCs. Yes it is preferable that the analog stage be eliminated but this is not easy to do from the PLC. It is doubtful that PLC analog outputs change fast enough.

Stepper motors are a different issue but ramping up the pulse rate smoothly is not easy either. Most do a crude job and only support linear ramps.

I think Dr4K3 should just get a motion controller.
 
I already listened about this method (using fast outputs) controlling stepper motors, but i think that may exist an easier and with more precision method.
In other projects i already used very fast counters to know the position of servomotor, but this way offers less positioning precision because of physic system delays. So i just want to learn the best way to control servomotors with more positioning precision !
 
Last edited:
I already listened about this method (using fast outputs) controlling stepper motors, but i think that may exist an easier and with more precision method.
In other projects i already used very fast counters to know the position of servomotor, but this way offers less positioning precision because of physic system delays. So i just want to learn the best way to control servomotors with more positioning precision !


It really depends on what your motion requirements are. There is no "best" way until you have a specification. Even then, every solution has tradeoffs.

There are dozens of motion control products (hundreds maybe?) on the market, and they all do a good job. Some are better than others at specicific tasks, coordinated motion say. Usually, the choice comes down to price, your past experience with the product, and always the needs of the specific job you're working on.

The most expensive, most capable systems always use a dedicated motion controller that commands the servo drives. You write a motion control program in the controller. Sometimes, that motion controller can run the entire machine or process, sometimes it communicates with a PLC. Generally, if it's communicating with a PLC, that will be over a network and the PLC will not be sending a pulse train - it will be requesting a move and waiting for the controller to tell it the move is done. Some PLCs have dedicated motion control capability and can do a lot of this themselves, communicating to the drives over dedicated networks

There are lots of variations on this, but what are your specific needs? That's what really drives the choice of solutions.

And BnB, thanks! I usually use something like a Parker or Yaskawa system when I need servo axes; most of our stuff is just material handling, not high precision. I guess I'll have to see what is in the middle ground between a stepper and that.
 
Peter,

If the PLC is controlling the servo motor thru pulse outputs, doesn't that require that the PLC actually run the PID(E) loop as well, including acquiring the feedback signals ? That would seem a tall order (again depending on the application)for a "brick" PLC. I assume that it could be run "open loop", but that really defeats the purpose of a servo...
:unsure::unsure::unsure:
 
Peter,

If the PLC is controlling the servo motor thru pulse outputs, doesn't that require that the PLC actually run the PID(E) loop as well, including acquiring the feedback signals ? That would seem a tall order (again depending on the application)for a "brick" PLC. I assume that it could be run "open loop", but that really defeats the purpose of a servo...
:unsure::unsure::unsure:
Yes, a PID is required. At the simplest level it is similar to doing a on-off temperature system only much faster.

The most difficult part is the motion profile generator.
 
Peter,

If the PLC is controlling the servo motor thru pulse outputs, doesn't that require that the PLC actually run the PID(E) loop as well, including acquiring the feedback signals ? That would seem a tall order (again depending on the application)for a "brick" PLC. I assume that it could be run "open loop", but that really defeats the purpose of a servo...
:unsure::unsure::unsure:


Yeah... who's closing the loop? I suppose that a PLC could generate a slightly more accurate trajectory profile using step/direction to the drive rather than voltage to the drive if the quanitization error is less than the analog output error? Yes? No? Depends on how much you have to spend? (g!) Or is it just a compatibility thing so that the servo vendor can sell you his servo to put on a uLogix?

For a lot of applications, though, you wouldn't notice the difference. Where you did notice, you're getting back towards dedicated motion controllers, or hybrid systems that are primarily motion control but also have analog and discrete IO capability. Actually, in the lower end market, the advent of DNet, ENet, and ProfiBus IO has made it pretty easy for motion controllers to suddenly look at becomming the machine controller, period. In the higher end market... well, I've never really been there so I'm interested in Pete's view too.

At least some PLCs over the years have had servo control modules that sent analog signals to a drive. I guess that changing that output to step/direction isn't a big deal, and for servo drives to accept it isn't either.
 

Similar Topics

Hi to every one i want to know what is fast inputs and fast outputs? and example for this. i heard digital I/O and Analog I/O what is the...
Replies
1
Views
1,629
D
I am currently working on a shaking machine to remove metal parts after they have been punched on a punch press. I can't seem to figure out how to...
Replies
3
Views
3,634
Hi All, I've been playing with 2 stratix switches in my test bench and seeing how different configurations affect the behaviour when 2 managed...
Replies
3
Views
228
Dear all, Im using Allen Bradley Compact Logix L36ERM as a PLC. and facing a problem where I need to create a FIFO buffer that fills an...
Replies
5
Views
1,659
Dear Members; We have Fluke 754 hart communicator. We have wired up three transmitters of Rosemount Model C3051 with this input module. But when...
Replies
4
Views
1,850
Back
Top Bottom