Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Programming (http://www.chiefdelphi.com/forums/forumdisplay.php?f=51)
-   -   Sensorless back_emf speed controller (http://www.chiefdelphi.com/forums/showthread.php?t=77160)

vamfun 07-05-2009 15:10

Re: Sensorless back_emf speed controller
 
Quote:

Originally Posted by Gdeaver (Post 857724)
There is a 0.0005 ohm current sense resistor on the h bridge low and ground. On page 2 of the schematic lower left the current sense amplifier is shown. Appears they are filtering it a bit. Currently this is only being used for over current protections. This could be sampled when the H bridge is in the on state of the PWM period. This would give the current draw of the motor and if the motor RPM- current curve is known the the approximate velocity can be found. Is this the focus of the post?


This might be a viable alternative to estimate back_emf and probably deserves its own thread. It introduces motor L , total system R and current rate into the equation. I.e. v_bemf = Vm - L*di/dt - i*R . We know that in the short term current rates can be very high and the motor inductance is a big unknown. Also R varies all over the place...particularly when the motors are heating up from stall conditions and battery resistance unknowns also factor in. However, if we wait until the current rates are negligible, then v_bemf = Vm -i*R and under stable R conditions, this is a good approx. When the duty cycle is high, we measure current during the ON phase of pwm cycle so v_bemf = Vsupply -i*R , where Vsupply is the sensed supply voltage which the JAG already has. For low duty cycles, probably best to use current on the OFF phase so v_bemf = - i*R. Of course, we would have to be in the braked mode to see the current.

The same v_bemf equation enters into my proposed project...but we shut down momentarily so that i= 0, di/dt=0 and then measure Vm with an a/d dynamically while in the coast mode. So this eliminates some error sources but places extra constraints on the controller.

vamfun 07-05-2009 15:15

Re: Sensorless back_emf speed controller
 
Quote:

I have not counted up the commutator segments on any of the motors so I can't give you an idea of frequency vs. motor rpm.
Last time I counted there were 20 clicks per rev on the CIM01 so I'm guessing 10 segments. At 5310 rpm the segments are zipping by every 1.1 ms but we still get 15 jag pwm cycles to average over that time. The Victor 884 (120 Hz) only gets 1/8 of a pwm cycle while the Victor 883(2khz) get 2 cycles to average. I suspect this contribtes to the Victor nonlinear xfer function but I've never proven it to myself.

AustinSchuh 07-05-2009 17:50

Re: Sensorless back_emf speed controller
 
Quote:

Originally Posted by vamfun (Post 857915)
At 5310 rpm the segments are zipping by every 1.1 ms

Here's a totally crazy uneducated idea, but could you count the segments?

Al Skierkiewicz 07-05-2009 18:17

Re: Sensorless back_emf speed controller
 
Quote:

Originally Posted by vamfun (Post 857915)
The Victor 883 (120 Hz) only gets 1/8 of a pwm cycle while the Victor 884(2khz) get 2 cycles to average. I suspect this contribtes to the Victor nonlinear xfer function but I've never proven it to myself.

It is actually the other way around. The 883 is 2kHz and the 884 is 150Hz. I suspected early on that the 15kHz PWM frequency on the Jags would play havoc with winding inductance. Of course it varies from motor to motor. We have not done any serious research into this though. We did not use a Jag on the robot after we killed one in practice with the dreaded one way only U6 failure. Since it was in a steering motor, no one wanted to use them after that. I did not coorelate the noise spikes and the switching frequency. Scott had asked me to try and duplicate the problem but I never did. I did beat the heck out of the pair without failure.
BTW, be advised the current monitored across the 0.0005 ohm resistor will have pulses that mimic the output until the device is sent to full throttle.

EricVanWyk 07-05-2009 19:34

Re: Sensorless back_emf speed controller
 
AustinSchuh -

I think FRC20 counted back EMF pulses for autonomous in Overdrive.

vamfun -

My thoughts exactly. If the victor is missing entire commutations, it is very hard to make the assumption that the motor is acting as the old "inductor resistor back-emf" model. When you commutate mid-pulse, you change the effective duty cycle.


Quote:

Originally Posted by Al Skierkiewicz (Post 857961)
I suspected early on that the 15kHz PWM frequency on the Jags would play havoc with winding inductance. Of course it varies from motor to motor. We have not done any serious research into this though.

Al -

Since we last discussed this, I've had more time to pull out the math-hammer and analyze your theory a bit more. As far as I can tell, more hertz is more better, once you get over the initial low-nyquist weirdness.

I believe the response will be similar to that of the "sample and dump" oversampling that was implemented in the FPGA. They both act as low-pass filters, but inputs reflect across nyquist boundaries created by the chopping. In the FPGA, the chopping is from the "and dump". In the motor, the chopping is from brush commutation.

If the chop frequency and the input frequency perfectly align, it can completely attenuate the signal. The frequency response of the entire system would look like a low-pass filter with periodic ripple or dents. This may explain the perceived improvement of going to a chop rate.

However, I still hold that the attenuation from increasing the chop freq by two decades completely swamps the nyquist attenuation, and it is more reliable as it doesn't depend on motor speed.

As for "playing havoc with the winding inductance", I still don't understand what you mean by this. I can't imagine we'd be near self resonance...

Al Skierkiewicz 08-05-2009 08:58

Re: Sensorless back_emf speed controller
 
Eric,
The winding inductance forms an L/R filter with the winding resistance and the wiring and controller series resistance. This produces a low pass filter that affects the current in the motor windings. I no longer have my notes and we are short handed here at work so I can't reproduce the calculations right now. I believe I opened both the CIM and FP motors and found that 150 Hz chosen by IFI in the 884 seemed to fit with the commutator spacing PRR to optimize the current when the motors were spinning near peak efficiency. I am running on my audio experience here with 15kHz being the edge of normal hearing range and the effects of series inductance in audio circuits particularly telephone links.

Since the average winding current is directly related to the behavior of the motor, anything affecting motor current affects the motor behavior. Nyquist might be the wrong way to analyze this since the commutator spacing (between segments) is much less than the contact size and the output PWM is a fixed frequency while the commutator PRR is variable depending on the motor speed.

This is what I have been thinking...If we consider a set speed, how many pulses supply current to a particular winding at 150 Hz or 15Khz and how does the L/R affect the current? If we set this limit...at some speed a motor is spinning at a rate that allows a 150 Hz PWM at 50% duty cycle to supply current to an entire commutator segment, that is 3.3msec. Then the current rise time is a small fraction of the total current for that time period. For the same speed, segment length and duty cycle, a 15kHz PWM would make 100 on/off transitions and the L/R rise time over the same period becomes a significant portion of the supplied current over that same segment. Although at 150Hz the next segment would receive no current, the overall long term average current in both cases would seem to be 50% until you consider the rise time of the L/R equivalent. In addition, when either input pulse returns to zero, the inductance will try to cause the current to continue flowing. It is this that forms the sparking at the commutator/brush interface. That might prove to be useful in that an arc detector could be used to synchronize the sample circuitry. If that were possible, then a sample taken after the pulse would be by definition the back EMF. This of course, will become impossible when the duty cycle approaches 100%.


All times are GMT -5. The time now is 20:36.

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