|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||
|
|||
|
CIM Motor Reversing
We're having an issue with a CIM motor operating in reverse. In our code, we have a CIM motor set to go forward for half a second and then in reverse for half a second (both at full speed) at the press of a button. The issue is that the motor does not go back to it's starting position like we thought it would. It goes further back than it was when it started, which is causing an arm to move further and further back with each button press.
Any ideas? Thanks! |
|
#2
|
||||
|
||||
|
Re: CIM Motor Reversing
I'd try to put an encoder on the motor and controlling it through a PID loops.
|
|
#3
|
||||
|
||||
|
Re: CIM Motor Reversing
Electric motors are designed to operate with more effective power in one direction than another. This is done through the timing of where the armature and commutator in relation to the field magnets.
It sounds as if your initial button push is spinning the motor in "reverse" and your second movement is the motors "forward" rotation. If you're trying to stop an arm at a specific point then limit switches or a potentiometer would really be the best option. |
|
#4
|
||||
|
||||
|
Re: CIM Motor Reversing
Quote:
|
|
#5
|
|||
|
|||
|
Re: CIM Motor Reversing
Quote:
You will need to put a sensor on the arm joint to measure the angle of the arm, and use that measured angle in code with a control loop to control the position of the arm. |
|
#6
|
|||||
|
|||||
|
Re: CIM Motor Reversing
In particular with an arm, the load on the arm is almost always preferentially in one direction (probably what you are referring to as "back"). All other things being equal or even close, it will take more volt-seconds to raise a load than to lower it. If you need to get it to a certain spot, use an encoder, potentiometer, limit switch, or other sensor to tell when the process is complete.
|
|
#7
|
||||
|
||||
|
Re: CIM Motor Reversing
Quote:
That said, the other suggestions mentioned above are all far preferable to the option I just described. A physical dead stop for a mechanism should almost always be a last resort. ![]() |
|
#8
|
|||||
|
|||||
|
Re: CIM Motor Reversing
Quote:
|
|
#9
|
|||
|
|||
|
Re: CIM Motor Reversing
Encoders are easy to use and take no time to install. Look into that before doing something like dead stopping your arm. That could cause many other issues with voltage spikes and brownouts.
|
|
#10
|
|||
|
|||
|
Re: CIM Motor Reversing
Quote:
Also, a previous post talked about loads. Not knowing your system, I am going to make a wild guess that the first direction arm moves is "up" (against gravity) and the second, faster direction is "down" (with gravity). Gravity always wins - common design challenge with rotating arms. |
|
#11
|
||||
|
||||
|
Re: CIM Motor Reversing
Potentiometers work too, but they can be harder to program.
|
|
#12
|
||||
|
||||
|
Re: CIM Motor Reversing
If you decide to go with limit switches, make sure to mount them in such a way that they don't also serve as a hard stop. Common mistake. |
|
#13
|
||||
|
||||
|
Re: CIM Motor Reversing
Quote:
-Knowledge from experience. It boggles my mind that there are still people that think motors/gearboxes/axles are going to perfectly turn in opposite directions at the same speed/distance/force. |
|
#14
|
||||
|
||||
|
Re: CIM Motor Reversing
That happened enough times that we had to fashion a new 'detector' (the part that is hit and turns on the switch, not sure what it's called) out of a zip tie. It actually worked better than the metal did by not bending out of shape and staying there for the rest of the offseason event.
|
|
#15
|
|||||
|
|||||
|
Re: CIM Motor Reversing
Quote:
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|