pic things (BLDC motor speed controller)

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 =^.^=

Reply to
colin
Loading thread data ...

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.