Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

3phase BLDC rpm question

Status
Not open for further replies.

moro

Member level 3
Joined
Jul 12, 2009
Messages
65
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
2,013
Hello,

i am working on a school project. I want to control a 3 phase BLDC motor.... the software will be managed by a stm32f103 arm device via a 3 phase mosfet bridge with ir2110 drivers

The motor which i have is a 24dc 3 phase star connection motor, with 6 poles and 3 hall sensors

The hall sensors timings are shown here

hall.png

As i can see for 1 mechanical rotation, on a 3 pole machine i would require acording to the formula "electrical degrees" = 3 x "mechanical degrees", thus for 360 mech degrees i would require a 1080 electrical degrees.
Since every hall event happens at 60e.degrees that means for a complete mechanical rotation i need 18 steps, is this correct?

I said to my self to try this "by hand", so i hooked the 3 hall sensors to a logic analyzer, and try to rotate by hand the motor shaft... indeed it takes 18 hall events to reach a complete mechanical rotation


Now my question is regarding the determination of rpm value.

So suposing every hall event happens at 1ms ( 1000hz), that means my comutation would have a (1/6)/(transition time between 2 hall events), in my case (1/6)/(0.001 second)


Normaly in my case for 1000hz hall event and 18 steps/mech revolution that would yeld 1 rotation every 18ms, that means in a 60second period i would have 60000ms/18ms = 3333 rpm. Is my presumption correct?

What is the formula for determining the rpm value?

Thank you
 
Last edited by a moderator:

I said to my self to try this "by hand", so i hooked the 3 hall sensors to a logic analyzer, and try to rotate by hand the motor shaft... indeed it takes 18 hall events to reach a complete mechanical rotation...

So you turn the shaft by 360 deg and observe 18 "hall events", right?

In one turn, each pole passes over all the three sensors producing 3 pulses. There are 6 poles and each of them shall produce 3 pulses in the same way- hence you see a total of 18 "hall events"

I presume that the sensors are going to be used for speed control and not for positioning.

Hence 18 hall pulses in one second corresponds to one rps (or 18 pulses /min corresponds to 1 rpm)

So if every pulse appears every 1ms, there will be 1000 pulses per second and 60,000 pulses per min- this will correspond to 60,000/18 rpm.

I guess your calculation is correct.
 

Hi,

You say your motor is a six pole one...
But your calculations are for three pole motors.

So the calculations are correct for a three pole motor, but not for your motor.

Klaus
 

Hello,
what is the formula for calculating rpm value for a six pole?
 

Hi,

1 pole --> 1 x 360° electrical
2 pole --> 2 x 360° electrical
3 pole --> 3 x 360° electrical
6 pole --> 6 x 360° electrical

Klaus
 
Hello Klaus,

so for 6 pole i understand its 360° mech = 6 x 360° electrical?
From the picture above i see it takes 6 steps to perform 360° electrical, i presume this is defined for 1 pole only.

Like i said earlier, when i rotate the motor shaft manualy, i am reading 18 steps on the hall sensors

If i would to perform the calculations based o "6 x 360° electrical".... that would give 36 steps for 360° mechanical, which is twice what i "measured", why is this?
 

Hi,

, i am reading 18 steps on the hall sensors
How did you read this?

We don't know what you measured, we even can't verify if it really is a 6 pole motor.

Klaus
 

1 pole --> 1 x 360° electrical
2 pole --> 2 x 360° electrical
3 pole --> 3 x 360° electrical
6 pole --> 6 x 360° electrical

Can you be bit more detailed? I have difficulty in imagining a 1 pole motor; I always presumed that motor rotor always have even number of poles.
 

Hello Klaus

Hi,
we even can't verify if it really is a 6 pole motor.
Klaus

the motor has 6 magnets on the rotor side, and 9 coils on the stator side, i presume its a 6 pole. Its also specified in the datasheet its a 6 pole/3 phase bldc motor

Hi,
How did you read this?
Klaus

i had a logic analyzer conected to the 3 hall sensors ( beside the 5V supply for hall, and pull-up resitor on each hall output).... ok so i had the logic analyzer hooked to the motor sensors.

I marked with some pencil a point on the rotor shaft, and a point on the stator side.. just for visual reference....

Then i started to rotate the rotor by hand 360° ... After that i read on the logic analyzer the following patern

H1 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 0
H2 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1
H3 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 1 0
 

Hi,

Can you be bit more detailed? I have difficulty in imagining a 1 pole motor; I always presumed that motor rotor always have even number of poles.
You are very correct.
Speaking of "3 poles" is not exact. The better phrase is "3 pole pairs" or "3 magnets".

Unfortunately I folowed the OP's way of expression of his first post.

From now on I will use "pole pairs".

*************
@OP:
Please post the exact motor type and manufacturer, or datasheet.

Klaus
 

Hello,

bellow i have attached the datasheet of the motor.

Ok, so in the end 360 mech degrees = 3 (pole pairs) x 360 electrical degrees, that would result in 18 steps x 60 electrical degree for 1 mechanical rotation. Which makes sense with my "manual experiment"



And for example if the hall events occur every 1ms(1000hz), that would mean in 18ms i have 1 rotation.

Then for RPM this would be 60000ms/18ms = 3333,33 rpm?

Thanks
 

Attachments

  • motor datasheet.pdf
    94.6 KB · Views: 69

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top