![]() |
Resilience of Motors using PID
Hi teams,
We're thinking of using PID to hold our shooter angle using a PG71 gearmotor. Our shooter requires 6Nm of torque to be held up and the PG71 is capable of approximately 22Nm. Using a PID loop, will the motor draw stall current as it's holding an angle or will it only draw current required to move 6Nm? Is this a reliable way to run the motor? |
Re: Resilience of Motors using PID
If you are trying to use power to the motor to hold a position, you'll have a cloud of smoke and no more motor. The best thing that I could think to do is to use the brake function on your motor controller to keep the motor from turning while it is stopped.
Good luck! |
Re: Resilience of Motors using PID
1 Attachment(s)
Quote:
See attached PDF. To hold 6Nm at zero RPM will take about 3.3 volts. The motor will be generating about 20 watts of waste heat at that operating point. To get some idea of what this means, the motor is generating 21 watts of waste heat when it is running at 12 volts at maximum efficiency. Of course, at that operating point the motor's internal fan is spinning quite fast and cooling the motor's innards. If you stall the PG71 at 12 volts, the waste heat is 264 watts. So your scenario is generating only 7.5% of that. Bottom line, I don't think it will smoke immediately. How long do you intend to hold it like that? Could you add some surgical tubing to relieve some of the load? |
Re: Resilience of Motors using PID
We'll hold the position momentarily for shooting, but when we don't need to hold an angle, the motor will rest on a hard stop.
|
Re: Resilience of Motors using PID
Quote:
The PG71 is a gearmotor, which means there's a potentially usable amount of friction. You want that friction to help you hold the position. So if you could figure out a way to back off the motor command just a bit once you're at the desired position, and let the friction take some of the load, you'd reduce the heat generated in the motor. |
Re: Resilience of Motors using PID
Quote:
Many teams will use some kind of mechanical brake or locking mechanism, or gear their motor down so that it won't move unless the motor moves it. But having it stalled for 10 seconds every 30, for 3 minutes, shouldn't smoke it. Have spares in case it does, though... (I cannot speak for the KoP motors, but some window lifter motors have an internal thermal circuit breaker that will cut power to prevent overheating) |
Re: Resilience of Motors using PID
The rated torque for the PG71 gearmotor is 1.5Nm. Manufacturers' rated figures are usually those that the motor can handle continuously, and are therefore much lower than the peak figures. They are what the motor could be run at all day long without overheating.
The 6Nm that you've calculated is needed to support this shooter is 4 times the rated torque, so the motor will definitely heat up:(. The question is how long will it take the motor to get to an unacceptable temperature. A clue to the answer is the relatively short thermal time constant that this motor will have - it is a small motor. The brush and armature assembly will also be small, and these are the parts that will heat up and fry. Small means they will heat up fast. As others have said above, the motor is stationary in this application with no circulating air cooling, the rated torque under these conditions will be even lower than the manufacturer's quoted figure of 1.5Nm. The other thing to consider is the dynamic loading (as the robot bobs up and down and accelerates) that will be present and must be added to your calculated 6Nm figure. Plus there is friction in the gearbox and shooter pivot mechanism. Plus there is the reaction force from the ball being ejected from the shooter. All up, the motor could be seeing double the static torque. My guess is that it will work, but only for a limited time, then it will fry and go open circuit. Graham. |
Re: Resilience of Motors using PID
Quote:
|
Re: Resilience of Motors using PID
Quote:
A motor thats not turning generates no current, and thus cannot stop (or hold in place) the motor. |
Re: Resilience of Motors using PID
Quote:
|
Re: Resilience of Motors using PID
Quote:
Original Poster: Building on what I said above, I would recommend replacing the PG71 with a window motor. The window motors have a similar power, RPM and torque output to the gear motor, along with locking pins, which essentially means that the shaft won't spin unless electrons are applied to the window motor. That sounds like what you are looking for. Since you will want to use the locking pins, you can't use the motor with a Jaguar. Spike or Victor only. |
Re: Resilience of Motors using PID
Quote:
Code:
Data from FRC motor data table "MotorInfo4.1.pdf" as of 1/18/2012 12:30pm |
Re: Resilience of Motors using PID
I tend to use the term similar lightly. A window motor should do the job though. Also, since there are left and right hand motors you could gang to of them together doubling the output. You may or may not have to account for the different power levels for left and right hands.
|
Re: Resilience of Motors using PID
Quote:
|
Re: Resilience of Motors using PID
You may want to consider using the Current Mode control of a CAN enabled Jaguar. This will create less waste heat in your motor, assuming you properly tune the PID parameters.
I'm using the parameters found here, please let me know if I'm looking at the wrong motor. You should expect to use about 6 amps to develop 6 Nm with this motor. It uses 22 Amps to generate 22.5 Nm at stall, so a rough pass is 6 Nm * ((22 A) / (22.5Nm)) = ~6Amps. The no-load current (which is really just another word "the sum of the parasitic torques in the system") is small enough that I'm willing to ignore it for the time being. With a "perfect" motor controller, you will apply a perfectly flat 6 amps. The motor's resistance is roughly half an ohm, so your best case is (6 A)^2 * .5 ohms = 18 Watts. Any imperfections in the motor controller will cause that current to oscillate a bit and become less efficient. For example, lets take one that applies 12 Amps half the time, and 0 amps the other half. Then our heating becomes (12 A) ^2 * .5 ohms * .5 duty = 36 Watts. Worst case scenario, we'd expect something approaching stall current: (22 A)^2 * .5 ohms * (6/22) duty cycle = 66 Watts. This is 3.6 times the heat output! The "flatness" of the current is a function of the ratio of the time constants of the motor and the motor controller. The faster the controller is, with respect to the motor, the flatter the current waveform. The flatter the current waveform, the more efficient the use of that current. I don't know what the time constant of this particular motor is, so I can not calculate where victors and jaguars fall on the continuum. However, the Jaguar's time constant is over a 100 times faster. Note that for this, I've assumed that the mechanical time constants are WAY slower than all of the electrical time constants. As long as you don't see any twitching, this is likely a safe assumption. |
Re: Resilience of Motors using PID
Ether helpfully pointed out that the first sentence of my previous post makes a few too many leaps. The remainder of the post supports only that higher frequency motor controllers produce less waste heat. This in turn is based on the premise that torque is proportional the algebraic mean of current, but power is proportional to the geometric mean.
The comment on using Current Mode was unsupported, so let me take a whack at that now. If a PID is not well tuned, it can oscillate. These oscillations can create efficiency losses just like having a low frequency motor controller can. A pathologically mis-tuned loop can have efficiency as bad as a Victor. Using CAN allows the Jaguar to do the PID itself, and runs at 1kHz. Running the PID on the cRIO introduces some communication time, so the loop runs a bit slower. Using current mode removes several variables from the equations, and makes the effective loop quicker: The loop isn't waiting on anything mechanical, and can therefore respond on an electrical time line. It is quite possible to achieve the same stability with other control modes, I just find it easier in current mode generally. For your application, CAN Position Mode might be easiest. |
Re: Resilience of Motors using PID
Quote:
|
Re: Resilience of Motors using PID
Quote:
Quote:
|
Re: Resilience of Motors using PID
Quote:
High gearing stages on said non-moving motor would amplify this effect (Have you ever tried spinning a CIM connected to a tough box via the tough box output shaft?). If the motor happens to be non-moving, like it was stated in the original post, then the static friction from such a motor could prevent movement. It also could easily slow down a running motor, even with open leads, although the how-much depends on context. Although, I do agree with the original's rough intent: the back-EMF from a motor shorting into itself DOES NOT apply to a non-moving motor (no EMF overall), and so brake/coast mode does not apply. The "motor", though, isn't just an electrical energy transducer. |
Re: Resilience of Motors using PID
The context of the sentence to which you were responding was about motor-generated current, so it wasn't clear you were referring to friction instead. Ok, so let's talk about friction. Take a toughbox with CIM attached. With the motor leads unshorted, measure the breakaway torque with an appropriately-sized torque wrench. Now short the leads and repeat the same test. If you see any difference, it's probably due to cogging torque in the motor, not motor friction. The lion's share of the friction is in the gearbox, not the motor. Your conclusion is correct though. A motor with high cogging torque, connected to a high-ratio gearbox, may be capable of supporting a static load. |
Re: Resilience of Motors using PID
I would recommend taking the load off the motor using a mechanical device like others have said.
I'm not sure which locking pins they are talking about in the window motor, but I do know they utilize a worm "drive". You can read more about them on wikipedia (search worm drive), but if the window motor won't give you enough power to move the device using to hold your shooter(not hold it in place) then buy your own worm and worm gear(mcmaster,etc) and make your own worm drive with a more powerful motor. "Worm gear configurations in which the gear can not drive the worm are said to be self-locking. Whether a worm and gear will be self-locking depends on the lead angle, the pressure angle, and the coefficient of friction; however, it is approximately correct to say that a worm and gear will be self-locking if the tangent of the lead angle is less than the coefficient of friction." This is pretty much a super high gear ratio, but typically you will see self locking effects from a worm drive device meaning you DON'T have to provide a constant torque to hold your device in place. |
Re: Resilience of Motors using PID
Quote:
|
Re: Resilience of Motors using PID
Quote:
More on locking pins: http://wiki.team1640.com/index.php?t...r_Locking_Pins Removing the pins is legal, but for a non-backdriving design, it is essential to leave them in. |
| All times are GMT -5. The time now is 02:12. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi