Converting a Brushed Dc Motor Into Bldc

by yash yash in Circuits > Reuse

14324 Views, 47 Favorites, 0 Comments

Converting a Brushed Dc Motor Into Bldc

temp_-1404948359.jpg
A BLDC in the market is too costly also we need an electronic speed controller to drive it which costs almost as same as the motor.
So i decieded to make one by using arduino as a controller but i found myself too lazy to make the perfect casing and finding and fitting and winding and so on. so I thought why not convert a brushed motor into bldc?

Material Required

temp_189729891.jpg
temp_1739841208.jpg
temp_-1744665337.jpg
1. A brushed motor
2. Arduino
3. L293D motor driver(or any channel motor driver will work)
4. A pc to program arduino

Modifying the Motor

temp_1772583472.jpg
temp_1673623115.jpg
temp_-1693466171.jpg
temp_1447259114.jpg
temp_-5335834.jpg
Convert a brushed dc motor into bldc

open the motor, remove the brushes and keep them aside. take three wires and solder them to the three points on the windings as shown in the photo above.
remove the small disc from the back of the commutator and put it in the front of the drive shaft and it's done!
you can also watch video here https://youtu.be/Bmr_uPuiWjw

The Arduino Code

mybldc.JPG

int a = 0;
int b = 1;
int c = 2;
int t = 20;
void setup(){
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
}
void loop(){
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, LOW);
delay(t);
digitalWrite(b, LOW);
delay(t);
digitalWrite(c, HIGH);
delay(t);
digitalWrite(a, LOW);
delay(t);
digitalWrite(b, HIGH);
delay(t);
digitalWrite(c, LOW);
delay(t);
}

Downloads

Connections

temp_1506400939.jpg
temp_1294948617.jpg
temp_-1290617375.jpg

Join jumper wires from arduino to the motor driver in any order. Connect motors to the motor driver in any order.
Power motor driver with logic level voltage by arduino(5 volts).
Power arduino. Power motor driver with the voltage you want to drive the motor but within the driver's range(mine is 9 volt adapter) and watch your motor rotating without brushes.
Since the voltage given to the motor is in high and low, it will not run smoothly. To make it run smoothly follow next step.

Reprogramming Arduino and Using 2 Motor Drivers

temp_1818882015.jpg
bldcs.JPG

Now program arduino with this code to run motor with sine wave.
code

#define a 3
#define b 5 #define c 6 #define t 10 //duration of a state void setup() {

pinMode(a, OUTPUT); pinMode(b, OUTPUT); pinMode(c, OUTPUT); }

void loop() { for(double i=0.0;i<6.28;i+=0.01745){ analogWrite(a, 255*sin(i)); analogWrite(b, 255*sin(i+1.04719)); analogWrite(c, 255*sin(i-1.04719)); delay(t); }

}


new connections
now connect the three wires of the motor to the different sections of the motor driver as shown in the picture as there is only 2 enable(pwm supporting) pins.
connect the arduino to motor driver as shown and power it to run the bldc made by you smoothly. Happy Making!!!

Downloads