Maker Pro
Maker Pro

pic things (BLDC motor speed controller)

C

colin

Hi,
Ive got my pic to control my motor to a certain extent,
I found a usefull tip on usenet for a crude sine aproximation
sine=3/4-x^2 +x
where the range of x is -0.5 to 0.5 for angle of 0-90 degrees

What I need now is a way to smooth out the hall sensing signals to produce a
smooth rotor phase angle,
wich is derived from the measured rotor speed and last know position and
time.
this works fairly well exept at low speeds where the rotor can wobble about
a fair bit in certain positions and the hall inputs can change back and
forth over 1 or 2 states wich confuses things a bit, even though its
digitaly filtered ie has to be in the same state for a certain time.
the speed is correct becuase it counts forwards and backawrds at each wobble
and uses several cycles to measure, but the last known position can become
way off.

Anyone seen any good ideas ? most systems seem to rely on reasonably steady
progresion of position signals.

So far im thinking of using the amount of time spent in each state over a
few cycles to detemine an average current position,
but this seems a bit complicated at this time of night. maybe I'l just make
the digital filter time proportional to the cycle time.

Im attempting to use open loop to control the speed but use the position
information to maintain sync while speeding up overloaded etc, and also hope
to maintain the correct voltage using relative angle as feedback.

Colin =^.^=
 
Top