Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Electrical (http://www.chiefdelphi.com/forums/forumdisplay.php?f=53)
-   -   New Talon Speed Controller (http://www.chiefdelphi.com/forums/showthread.php?t=108727)

Al Skierkiewicz 25-10-2012 08:25

Re: New Talon Speed Controller
 
Tom,
I don't remember seeing inductance numbers on most of the motors. Just having a larger motor doesn't mean the inductance is higher. It is more a function of the number of turns of wire in the motor. In the case of the CIM motors, as in most motors, the brush assy actually contacts more than one of the many windings. In the case of the window motor, (trying to remember from several years ago), there are three windings and a three segment commutator. So while running, one of the windings is always shorted out by the brushes. My gut tells me that the window motor has a higher inductance.
Holding the motor shaft on the CIM should not affect linearity but will cause max current all the time. This would be bad for both the motor and the speed controller.
As an explanation, inductance tends to oppose a change in current. So there is a definite length of time for the current to reach maximum when voltage is applied. When the pulse length is short, the current does not have a chance to reach maximum. The designers of the Victor took that into account when they reduced the switching frequency to 150 Hz. The Jag designers on the other hand were looking for fine motor control/linearity and that was accomplished by increasing the switching frequency to 15 kHz. For most of the motor we use, the low throttle values are significantly shorted than the time needed to reach full current. As memory serves, Ether did a simulation a few years back to demonstrate this.

Tom Bottiglieri 25-10-2012 10:48

Re: New Talon Speed Controller
 
For what it's worth, we usually linearize our motor controllers based on output velocity and not voltage. This seems to work well.

Tom Line 31-10-2012 22:43

Re: New Talon Speed Controller
 
Quote:

Originally Posted by Tom Bottiglieri (Post 1191503)
For what it's worth, we usually linearize our motor controllers based on output velocity and not voltage. This seems to work well.

Tom, can you elaborate more?

Do you use the encoders in your drivetrain to measure the rate at different PWM outputs, create a polynomial from the resulting values, then use function in between the user input and motor set command?

Do you do it free in the air, or under some type of load?

Al Skierkiewicz 01-11-2012 07:40

Re: New Talon Speed Controller
 
Tom,
We use the rotary encoders attached to a shaft in the transmission usually. This helps with autonomous as well.

Gdeaver 01-11-2012 08:03

Re: New Talon Speed Controller
 
Couple comments. The window motor problem seams to only be experienced with positional control under PID. There are 2 parts The locking pins locking and the unit becomes locked up. The other is the heating of the PTC. The window motor test should not experience these problems. We only had problems with the window motor in 2010 while using them for our swerve steering.
Over the years many teams have used a joystick to victor function to change the response. Many times when the drivers get involved the function does not linearize the response. It is set for a " feel" that the drivers like. We have done this with jags too. We Got our Talon last week and will install it tonight for this weekends' competition. Will probably put it on the shooter motor.

Pat Fairbank 01-11-2012 13:51

Re: New Talon Speed Controller
 
Quote:

Originally Posted by Tom Line (Post 1192389)
Tom, can you elaborate more?

Do you use the encoders in your drivetrain to measure the rate at different PWM outputs, create a polynomial from the resulting values, then use function in between the user input and motor set command?

Do you do it free in the air, or under some type of load?

We did it in the air using the encoders. Basically, we wrote an autonomous routine that sets the output PWM from 0 to 1 in steps of 0.01, pausing for a second on each value to achieve steady-state and recording only the last speed measurement.

We then normalized the speeds to [0,1] and plotted the results in Excel (PWM on the Y-axis, measured speed on the X). Playing around with Excel's trendline tool gave us the polynomial that looked the best, and we just took the coefficients and plugged them right back into our code.

Afterwards, we ran through the entire exercise again with the linearization function in place to verify that PWM was now linear with speed.

mikets 01-11-2012 14:12

Re: New Talon Speed Controller
 
Doesn't linearity depend on the load? Running the wheels in the air doesn't give you a realistic scenario. This is a long thread and I did not follow it very closely so I may be missing the point but if the goal is to make joystick drive of the robot more smoothly and more linear with respect to the joystick movement, shouldn't PID control on speed automatically do that? (i.e. the joystick reading specifies the "speed" instead of "power" of the robot).

Pat Fairbank 01-11-2012 14:17

Re: New Talon Speed Controller
 
Quote:

Originally Posted by mikets (Post 1192446)
Doesn't linearity depend on the load? Running the wheels in the air doesn't give you a realistic scenario. This is a long thread and I did not follow it very closely so I may be missing the point but if the goal is to make joystick drive of the robot more smoothly and more linear with respect to the joystick movement, shouldn't PID control on speed automatically does that? (i.e. the joystick reading specifies the "speed" instead of "power" of the robot).

To some extent, sure, but the frictional load of the gearboxes and wheels was close enough for our purposes, plus we were too lazy to figure out a way to apply a constant load while keeping the robot stationary. If we needed perfect linearity with the joysticks we would have implemented closed-loop control (as we did with the shooter after first linearizing with this method).

Tom Line 01-11-2012 17:04

Re: New Talon Speed Controller
 
Quote:

Originally Posted by Pat Fairbank (Post 1192444)
We did it in the air using the encoders. Basically, we wrote an autonomous routine that sets the output PWM from 0 to 1 in steps of 0.01, pausing for a second on each value to achieve steady-state and recording only the last speed measurement.

We then normalized the speeds to [0,1] and plotted the results in Excel (PWM on the Y-axis, measured speed on the X). Playing around with Excel's trendline tool gave us the polynomial that looked the best, and we just took the coefficients and plugged them right back into our code.

Afterwards, we ran through the entire exercise again with the linearization function in place to verify that PWM was now linear with speed.

Neat. Add a file-write to your auton routine, then a file-read on your actual linearization routine and you could do this in a minute or two in the pits and have it load the coefficients automatically when your robot boots up. Labview has a built in polynomial fitting VI that could be used to generate the coefficients.

Did you also attempt to correct for inequalities between the left and right sides of your drivetrain when you did this?

Thanks! I think we'll give that try for Beta.

Ether 01-11-2012 18:18

Re: New Talon Speed Controller
 
Quote:

Originally Posted by Pat Fairbank (Post 1192444)
We then normalized the speeds to [0,1] and plotted the results in Excel (PWM on the Y-axis, measured speed on the X). Playing around with Excel's trendline tool gave us the polynomial that looked the best, and we just took the coefficients and plugged them right back into our code.

This might be of interest:

http://www.chiefdelphi.com/forums/sh...3&postcount=10



Pat Fairbank 01-11-2012 19:57

Re: New Talon Speed Controller
 
Quote:

Originally Posted by Tom Line (Post 1192470)
Did you also attempt to correct for inequalities between the left and right sides of your drivetrain when you did this?

We didn't try; I don't recall that we noticed any significant difference between the sides or the directions of motor rotation, but that would have been a good place to fix it. We just took one set of data and used it for all four side/direction combinations (Tom and I are lazy and like to stop at "good enough", unlike some of the other mentors :)).

Something else I forgot to mention before -- we also tweaked the constant term in the polynomial such that the output is saturated slightly before the input reaches 1, to guarantee that the Victors receive a full-power signal at the extents of the joystick travel even if there's something slightly off mechanically or if there's rounding/precision error in the code.

inkspell4 01-11-2012 21:23

Did u guys hear that the same people now are making jaguars and victors

IndySam 02-11-2012 07:47

Re: New Talon Speed Controller
 
Quote:

Originally Posted by inkspell4 (Post 1192508)
Did u guys hear that the same people now are making jaguars and victors

Yes and you would have known that if you had read this thread :)

Ether 02-11-2012 14:23

Re: New Talon Speed Controller
 

Talon, Victor888, Victor884, and Black Jaguar speed vs torque tests at various PWM command levels.



Richard Wallace 02-11-2012 15:14

Re: New Talon Speed Controller
 
Nice job on the testing and presenting the data!

Based on these results, the Talon is looking pretty good. Nice linearity, both speed vs. torque for constant demand, and speed vs. demand for constant torque. Like a Jag. Should produce a nice intuitive feel for drivers.


All times are GMT -5. The time now is 03:39.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi