![]() |
Re: Robot Jumping on Power Up
Quote:
From the user initialization: Code:
void User_Initialization (void)Mke |
Re: Robot Jumping on Power Up
Quote:
|
Re: Robot Jumping on Power Up
Quote:
|
Re: Robot Jumping on Power Up
1 Attachment(s)
Quote:
See the data at the beginning of this thread. I confirmed the data by experiment. The Victor has a zero output when given PWM values of 125 to 138 (mean 132). A lot of the referenced thread goes into what might be causing the problem. I do not know why the Victors are non-linear. IFI claims that that they are linear (see this) but this assertion is not backed up by experiment. I have attached my data, taken with this year's kit frame, gearbox, CIM motors and wheels using the kit Hall effect sensors counting sprocket teeth with the frame on blocks (free speed except for bearing and gear friction). However, this is getting off topic... Regards, Mike |
Re: Robot Jumping on Power Up
Quote:
This is seen with a servo attached to any PWM output. It is not a Victor problem... Regards, Mike |
Re: Robot Jumping on Power Up
Quote:
Continuing your off topic comments... I think I have an explanation for the data you have and it is consistent with IFI's claim of linear PWM output. In my day job, we were breaking gear teeth on an actuator when the actuator was lightly loaded. No problem, we thought, we will just PWM the motor input and slow the actuator down. To our surprise, unless we got to very low PWM values, the free speed of our actuator stayed pretty much constant with respect to PWM value (we generated a chart very like the one you have shared with us). Here is what we think we understand now: It boils down to the fact that we THINK that Vmotor = Vbatt X (PWM %) but that is only an approximation and it does not always hold true, especially if the PWM is the type that switches between Vbatt and OPEN CIRCUIT*, as my actuator driver and Victors do. This is what happens as best as I can explain it. During the ON pulse, the motor accelerates (unless it is at its Vbatt Free Speed). During the OFF pulse the motor just coasts (recall that the motor is lightly loaded and that Newton's Laws apply: objects in motion remain in motion unless something slows it down). So... ...over successive ON pulses, the motor keeps accelerating until it reaches the Vbatt free speed. The approximation of Vmotor = Vbatt * (PWM %) is much better for stall torque by the way. Comments? Joe J. * There are other PWM types. For example the H-bridge could switch between Vbatt and Dynamic Brake (by holding both motor leads to Vbatt or both to Ground). Another example is that the H-bridge could switch between Vbatt and -Vbatt (in this case "off" is a 50% duty cycle which hits the motors with Vbatt for half the time and -Vbatt for half the time) These other driver schemes are not as crazy as they may seem at first. In fact, based on my non-FIRST experience with these types of drive schemes, I STRONGLY URGE IFI to offer these drive methods to FIRST teams in the future. They are useful in 2 ways. #1 If used for drive motors, the robot acts much more like a driver is commanding "speed" rather than commanding "gas" so the robot is easier to drive. #2 if used for large robot arms, the arms are orders of magnitude easier to control. On the down side, they do pound more heat into the FETs but I'm an M.E. not a E.E. ;-) Bottom line, they make for well behaved robots. We should use them, even if they do stress the Victor a bit more. In my opinion, the Victors have the design margin in them. JJ |
Re: Robot Jumping on Power Up
presently you need to create a closed loop feedback control system to have your commands correspond to 'speed' instead of torque.
Im not sure closing the bridge would really map directly to speed- it sounds too easy to be true :^) an out-of-the-box motor 'speed' controller from Victor would be super. I think it would have to measure the back emf and close the loop on itself. |
Re: Robot Jumping on Power Up
Quote:
What I AM saying is that whether you are driving a robot via open loop or closed loop the job is considerably easier in the case where you have the H-bridge configured in this way. I do not have time right now to explain, but essentially this drive circuit effectively adds a term to the dynamic equations that helps to stabilize velocity of the motor. Joe J. |
| All times are GMT -5. The time now is 20:17. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi