Control Logix Servo Control

Amebeo

Member
Join Date
Apr 2008
Location
Kokomo, IN
Posts
10
I would like to use a motion control to maintain a specified torque value.

The basic concept I'm going for is to move one servo to move a rotary device while another servo releases the device.

The first servo will need to hold a specified load while the second servo releases the device. I will then capture the load require to release the device under load.

I don't know how to effectively maintain my load against the rotary device.
 
any chance for a simple diagram

does the rotary servo push a widget against something then a different servo releases the widget from the rotary servo?
 
Peter:

I'm using and Ultra 3000 external drive.

The torque is a calculated value using the linear force measured by a load cell at a (x) moment arm.

Michael:

I'll see what I can do about a diagram, but that is not something I have access to. The part of the device that can rotate has an actuator arm protruding out from it and a hole through the center on the axis of rotation. The first servo (actuator servo) pins through the axis at the center of the rotation and has an additional pin, at (x) moment arm, that will move the actuator to rotate the device.

The device is locked in place and released by a button. The second servo (button servo) will slowly apply force to the button until the actuator servo moves which will already have the torque force applied. I will then record the force applied by the button servo to see how much force was required to release under the specified load.
 
Best method is to get a dedicated servo controller

next best is to "roll your own" using torque servo (scary as if you had the knowledge to do this you would not be asking on this form)

after all that use position control and limit the torque available for moves


Possible notes to put you into the right place

servo set up as Axis_Servo_Drive (ultra 3000 on SERCOS)

use a "Motor Position Servo" so you are controlling position
Tune without integrators for position control

on the "rotary axis" you will need to change the "TorqueLimitBipolar" using SSV, value is in % - you will have to work out the % to Nm (or whatever your force units are) for your feedback device

What you are doing is limiting the torque that the servo can deliver
you lower the torque available for a move then ask the servo to move say 20 deg
- a position error occurs as it cannot perform that move as it does not have enough torque (The servo gains are saturated and limited by torque)
- you are then able to slowly increase the torque available using SSV until it moves
- the move to the commanded position will follow a step change in torque I would try tuning the axis using a bandwidth of 1.2 instead of 0.8 so that the response is overdamped instead of underdamped or critically damped (1.0)
 
This appears to be a testing application

Best method is to get a dedicated servo controller
I agree. Our RMC75 could do this easily. The whole program can be done on the RMC75. The is no need for a PLC unless there is a lot of external I/O that hasn't been mentioned. Only an PC for setup, control and recording data. The RMC75 can record at 2K Hz.

The RMC75 has built in speed/torque limit so it will move to reach either the target speed or torque which ever comes first. This is necessary so that the first motor doesn't run away when the load from the second motor is removed.

There is no way a Contrologix and external drive are going to be able to communicate quickly enough.

The only other option I see is to do the whole project on the drive if the drive is able to be programmed.
 
For your reference the Ultra 3000 does have a SERCOS option so not as bad as a complete external drive using analogs etc
Yes one could output the required torque value over Sercos but what will happen when the load disappears? The motor will accelerate and spin wildly unless there is also a speed limit. We use a low select and it happens at the closed loop update rate. There is no delay due to transferring data from the drive to the PLC and then back to the other drive. If all of this could be handled on one drive and the drive had a low select option then it would work with the drive. The point is that all the smarts must be in one place.
 
We use a low select and it happens at the closed loop update rate.

Control logix standard cannot do this hence the get a real controller
custom code could but would have an update rate at best of 2 to 3 ms and why bother, to code, debug and maintain would probably cost more than a RM750
install anyway and still be a poor solution

The point is that all the smarts must be in one place.

agreed
 
Thanks for the feedback guys.

We are communicating via SERCOS.

Its been a hectic couple days. Priorities have fluctuated some, and I don't have the time to work on this at the moment.

This is an existing on-line system tester. It is extremely unlikely that I will be afforded the flexibility to change out any existing devices. I will have to figure out a way to handle this as best as possible with the ultra 3000.

There is a fair amount of external I/O with this tester, so the PLC is required. There is also various points of data recorded from this PLC to a datalogger.

Hopefully I can get back to this the beginning of next week.
 
I found an old file that did basically what I need.

I will try to attach images of both the logic and the trend I captured showing the relationship between servo positions and torque applied.

I does pretty well for the application I need it for.

I've never attached files here. Hopefully it works

In the trend, You can see the button position is moved to a starting location, then the rotary encoder moves toward the part until a load is built. It maintains the specified load and the button gradually moves in. The rotary servo eventually gives and moves slightly. At that point you see a drop in torque and a bit of overcompensation rebuilding the load where it maintains until it moves slightly again. In this case the rotary did not move far enough after moving the button in to the maximum stroke. This part failed to open and the rotary moved back and removed the load.

I hope this helps clarify what I was trying to do, and even though I don't control the Loop quite as well as I would like to when the load drops off, It is adequate for the application.

Thank you for the help

Again using Cotrol Logix to control an ultra3000 drive with SERCOS.

PID Load Control.jpg Torque_Trend.jpg
 

Similar Topics

Hello automation experts, I'm trying to learn about servo axis control in AB ControlLogix PLCs (L33ERMS). Attached is an example of a servo...
Replies
4
Views
1,075
Hello everyone, So on Monday morning I'm expecting to have a box of random parts dumped in front of me. I'll create another thread with more...
Replies
1
Views
1,968
Has anyone had any experience with controlling a Yamaha Servo Drive with a Micrologix plc. hate to ask so many questions but have a lot of...
Replies
0
Views
1,170
Hello all, Quick question. We have several machines that use Control logix 5000 and kinetix servo controllers, and when I look at the programs...
Replies
2
Views
2,489
I recently was talking to a vendor that was telling me that one of his customers is using a micrologix 1400 plc to control a Kinetx 300 servo...
Replies
6
Views
5,112
Back
Top Bottom