Brushless Motor Direction control - Electronics Forums

Author Topic: Brushless Motor Direction control  (Read 20860 times)

mamette

  • Trusted Member
  • *
  • Posts: 14
  • Karma: +0/-0
  • I have a soldering iron and I'm not afraid to use it!
    • View Profile
Brushless Motor Direction control
« on: May 02, 2013, 11:10:54 AM »
Hi, i want to make my own version of brushless gimbal. For first step i want to know how to control brushless motor, especially for direction control. Is there any reference that i can learn?

And i will use this motor:
http://www.rctimer.com/index.php?gOo=goods_details.dwt&goodsid=871&productname=

Thank You for your help..

Electronics Forums

Brushless Motor Direction control
« on: May 02, 2013, 11:10:54 AM »

ElectroNick

  • The forum moderator
  • Administrator
  • Full Member
  • *****
  • Posts: 154
  • Karma: +3/-0
  • The soldering iron is ON!
    • View Profile
    • Electronics Blog
Re: Brushless Motor Direction control
« Reply #1 on: May 02, 2013, 02:31:27 PM »
Hi, i want to make my own version of brushless gimbal. For first step i want to know how to control brushless motor, especially for direction control. Is there any reference that i can learn?
The direction control per se comes from commutating the ends of the three windings in such order that the rotor can only follow it in one direction. Three phase brushless DC motors like the one you're planning on using can turn in either direction - basically, you can switch the direction by connecting it's leads like A-C-B instead of A-B-C .

For a general reference on how to drive these in a position - holding mode, such as what will be needed for the gimball project, you can check out this brushless DC driving animation/diagram here.

Thank you for the link to the motor, by the way - I had no idea brushless DC gimballs - an absolutely obscure and unique item only 6 months ago - have become so mainstream that there are already specialized high-Ohm motors for that.

I don't have the ready-to-go software for driving gimballs specifically but I can refer you to this post here where I describe software and hardware for driving brushless DC motors with PWM - this is the technique that was used in the BLDC gimball implementations I've seen so far. You can use it to adapt to the gimball application.

I am very interested in learning how you did with the project and will be happy to help you along any way I can. be sure to post more about your progress!

Cheers!

mamette

  • Trusted Member
  • *
  • Posts: 14
  • Karma: +0/-0
  • I have a soldering iron and I'm not afraid to use it!
    • View Profile
Re: Brushless Motor Direction control
« Reply #2 on: May 02, 2013, 07:14:02 PM »
Thank you for the reply ElectroNick...

Well, i will use L6234D as the motor driver too.

There is an open source project about brushless gimbal. The hardware and software is open source, you can find it here:
https://code.google.com/p/brushless-gimbal/

But, I find it hard for understanding the concept and overall programming code. So I must to learn step by step, start from how to control Brushless Motor Direction....And when i see your post about Brushless Motor control, it's really help me..

Sure, i will post more about my progress..

Thank you..
« Last Edit: May 02, 2013, 07:35:30 PM by mamette »

mamette

  • Trusted Member
  • *
  • Posts: 14
  • Karma: +0/-0
  • I have a soldering iron and I'm not afraid to use it!
    • View Profile
Re: Brushless Motor Direction control
« Reply #3 on: May 05, 2013, 03:55:49 AM »
Hi, i want to make my own version of brushless gimbal. For first step i want to know how to control brushless motor, especially for direction control. Is there any reference that i can learn?
The direction control per se comes from commutating the ends of the three windings in such order that the rotor can only follow it in one direction. Three phase brushless DC motors like the one you're planning on using can turn in either direction - basically, you can switch the direction by connecting it's leads like A-C-B instead of A-B-C .

For a general reference on how to drive these in a position - holding mode, such as what will be needed for the gimball project, you can check out this brushless DC driving animation/diagram here.

Thank you for the link to the motor, by the way - I had no idea brushless DC gimballs - an absolutely obscure and unique item only 6 months ago - have become so mainstream that there are already specialized high-Ohm motors for that.

I don't have the ready-to-go software for driving gimballs specifically but I can refer you to this post here where I describe software and hardware for driving brushless DC motors with PWM - this is the technique that was used in the BLDC gimball implementations I've seen so far. You can use it to adapt to the gimball application.

I am very interested in learning how you did with the project and will be happy to help you along any way I can. be sure to post more about your progress!

Cheers!

I have question again. To drive brushless motor, we can give Sin wave signal, Square signal, or trapezoid signal, right? Then What is the difference if we give Sin wwave, square or trapezoid signal to the motor?

ElectroNick

  • The forum moderator
  • Administrator
  • Full Member
  • *****
  • Posts: 154
  • Karma: +3/-0
  • The soldering iron is ON!
    • View Profile
    • Electronics Blog
Re: Brushless Motor Direction control
« Reply #4 on: May 05, 2013, 12:50:38 PM »
I have question again. To drive brushless motor, we can give Sin wave signal, Square signal, or trapezoid signal, right? Then What is the difference if we give Sin wwave, square or trapezoid signal to the motor?
Since your control is all digital, it is much easier to drive the BLDC motor with square wave signals which are very compatible with digital (i.e. 0 = Ground, 1=Vmotor) , and that's exactly why PWM (Pulse Width Modulation) is used. By using PWM you emulate the effect of lowering the amplitude of the signal while still keeping it digital.

mamette

  • Trusted Member
  • *
  • Posts: 14
  • Karma: +0/-0
  • I have a soldering iron and I'm not afraid to use it!
    • View Profile
Re: Brushless Motor Direction control
« Reply #5 on: May 11, 2013, 03:02:58 PM »
Quote
The direction control per se comes from commutating the ends of the three windings in such order that the rotor can only follow it in one direction. Three phase brushless DC motors like the one you're planning on using can turn in either direction - basically, you can switch the direction by connecting it's leads like A-C-B instead of A-B-C .

How to switch the connection llike that? Does it require an additional circuit? Like H Bridge?

And i got something from here:
http://www.affordengtech.co.za/11/brushless-dc-motor-control-speed-and-direction/

He said, "if you reverse two of the three phase windings, the machine will rotate in the opposite direction"

So, It's like change A-C-B to of A-B-C?
« Last Edit: May 11, 2013, 03:12:40 PM by mamette »

ElectroNick

  • The forum moderator
  • Administrator
  • Full Member
  • *****
  • Posts: 154
  • Karma: +3/-0
  • The soldering iron is ON!
    • View Profile
    • Electronics Blog
Re: Brushless Motor Direction control
« Reply #6 on: May 11, 2013, 03:07:40 PM »
How to switch the connection llike that? Does it require an additional circuit? Like H Bridge?
No, I meant the direction of rotation is defined by the sequence of winding commutations. That sequence is created in the software. Let's say it's A->B->C . You can change that in the software (reverse the internal steps count) but you can also just physically connect the windings of the motor to different outputs of your controller, like A->C->B and it will start rotating in opposite direction without changing anything in the software. 

mamette

  • Trusted Member
  • *
  • Posts: 14
  • Karma: +0/-0
  • I have a soldering iron and I'm not afraid to use it!
    • View Profile
Re: Brushless Motor Direction control
« Reply #7 on: May 11, 2013, 03:15:53 PM »
Quote
No, I meant the direction of rotation is defined by the sequence of winding commutations. That sequence is created in the software. Let's say it's A->B->C . You can change that in the software (reverse the internal steps count) but you can also just physically connect the windings of the motor to different outputs of your controller, like A->C->B and it will start rotating in opposite direction without changing anything in the software.

So, there is will be 2 winding commutations sequence? For CW and CCW rotation?

ElectroNick

  • The forum moderator
  • Administrator
  • Full Member
  • *****
  • Posts: 154
  • Karma: +3/-0
  • The soldering iron is ON!
    • View Profile
    • Electronics Blog
Re: Brushless Motor Direction control
« Reply #8 on: May 11, 2013, 03:26:31 PM »
So, there is will be 2 winding commutations sequence? For CW and CCW rotation?
Without knowing the exact details of the software I'm almost certain that the part of the software that created the sequence is the same for CW and CCW rotations. It's just a matter of incrementing the step count variable for CW and decrementing the same variable for CCW.

mamette

  • Trusted Member
  • *
  • Posts: 14
  • Karma: +0/-0
  • I have a soldering iron and I'm not afraid to use it!
    • View Profile
Re: Brushless Motor Direction control
« Reply #9 on: May 11, 2013, 03:45:52 PM »
Ok, thank you ElectroNick...

Well, looks like i will need more help from you when my project started. Now i still wait for my component to come (need 2 weeks delivery). May be i will post more question later, is it okay?

ElectroNick

  • The forum moderator
  • Administrator
  • Full Member
  • *****
  • Posts: 154
  • Karma: +3/-0
  • The soldering iron is ON!
    • View Profile
    • Electronics Blog
Re: Brushless Motor Direction control
« Reply #10 on: May 11, 2013, 03:47:17 PM »
That sounds good, post more when you have the parts!

mamette

  • Trusted Member
  • *
  • Posts: 14
  • Karma: +0/-0
  • I have a soldering iron and I'm not afraid to use it!
    • View Profile
Re: Brushless Motor Direction control
« Reply #11 on: May 16, 2013, 01:30:58 AM »
Quote
Since your control is all digital, it is much easier to drive the BLDC motor with square wave signals which are very compatible with digital (i.e. 0 = Ground, 1=Vmotor) , and that's exactly why PWM (Pulse Width Modulation) is used. By using PWM you emulate the effect of lowering the amplitude of the signal while still keeping it digital.

In brushless gimbal system, the rotation speed of the motor is very slow or even not moving. So maybe sometimes the permanent magnet will be between 2 electromagnet coil, and will float in that position. Is it better to use Sine or Trapezoid wave than Square wave for this condition? Or may be i am wrong?
« Last Edit: May 16, 2013, 01:32:32 AM by mamette »

ElectroNick

  • The forum moderator
  • Administrator
  • Full Member
  • *****
  • Posts: 154
  • Karma: +3/-0
  • The soldering iron is ON!
    • View Profile
    • Electronics Blog
Re: Brushless Motor Direction control
« Reply #12 on: May 16, 2013, 01:06:34 PM »
In brushless gimbal system, the rotation speed of the motor is very slow or even not moving. So maybe sometimes the permanent magnet will be between 2 electromagnet coil, and will float in that position. Is it better to use Sine or Trapezoid wave than Square wave for this condition?
Well, since they will all in the end create the same result (the rotor will be positioned in a particular way), you just have to consider that digital systems, such as the microcontrollers used in these projects,  do not create sine, trapezoid, saw tooth or any other wave shape. Digital systems naturally create only square waves. You will have to jump through hoops to make that square wave into any other form, if the form of the wave really mattered to you (say, you were building a waveform generator). So, if the end result is still going to be the same, why bother? Just stick with square and use PWM.
Cheers!   

mamette

  • Trusted Member
  • *
  • Posts: 14
  • Karma: +0/-0
  • I have a soldering iron and I'm not afraid to use it!
    • View Profile
Re: Brushless Motor Direction control
« Reply #13 on: May 22, 2013, 10:00:31 AM »
In brushless gimbal system, the rotation speed of the motor is very slow or even not moving. So maybe sometimes the permanent magnet will be between 2 electromagnet coil, and will float in that position. Is it better to use Sine or Trapezoid wave than Square wave for this condition?
Well, since they will all in the end create the same result (the rotor will be positioned in a particular way), you just have to consider that digital systems, such as the microcontrollers used in these projects,  do not create sine, trapezoid, saw tooth or any other wave shape. Digital systems naturally create only square waves. You will have to jump through hoops to make that square wave into any other form, if the form of the wave really mattered to you (say, you were building a waveform generator). So, if the end result is still going to be the same, why bother? Just stick with square and use PWM.
Cheers!   

Oh, OK..

The motor has come, but i still wait for L6234D. And for the motor, what  battery that i must use? is 2200mAh 3S Li-Po good? How if i use 6 pieces of 2200 AA battery (7.2 total Voltage)?

« Last Edit: May 22, 2013, 10:05:32 AM by mamette »

mamette

  • Trusted Member
  • *
  • Posts: 14
  • Karma: +0/-0
  • I have a soldering iron and I'm not afraid to use it!
    • View Profile
Re: Brushless Motor Direction control
« Reply #14 on: June 07, 2013, 11:49:31 AM »
Hi ElectroNick, my componen was arrived and i  have made the motor driver. Then, i try your code from here:
http://elabz.com/bldc-motor-with-arduino-circuit-and-software/

and it's works well, the brushless motor was rotating, although a bit shaky. Is my motor runs at full speed with that code? How can i change the motor speed?

And according to your blog post, the PWM signal is sine wave, and that signal is generate from this code:
Code: [Select]
int pwmSin[]={511,444,379,315,256,200,150,106,68,39,17,4,0,4,17,39,68,106,150,200,256,315,379,444,511,578,643,707,767,822,872,916,954,983,1005,1018,1022,1018,1005,983,954,916,872,822,767,707,643,578,511
}; //

So, to drive brushless motor, the PWM signal must be sine wave? Can we use other Wave form?

Thank You..

 

Related Topics

  Subject / Started by Replies Last post
22 Replies
33925 Views
Last post June 06, 2013, 11:39:44 PM
by sa898
1 Replies
14543 Views
Last post February 11, 2013, 12:15:21 PM
by ElectroNick
6 Replies
8263 Views
Last post June 14, 2013, 12:56:18 PM
by antmabee
0 Replies
6480 Views
Last post June 14, 2013, 10:23:16 AM
by ElectroNick
0 Replies
11280 Views
Last post April 05, 2015, 07:30:53 PM
by earslan

anything