You are on page 1of 15

ABSTRACT

Motor controllers are devices that regulate the operation of an electric motor by taking
input from various sensors, processing the data, and controlling the motor as per the code
that has been dumped in the controller. In typical motor-controller design, both hardware
and software considerations are involved in the process of generating the PWM signals that
are ultimately used to turn on or off the power devices in the three-phase inverter. A motor
controller determines the duty cycle of the PWM gate signal used for controlling a rotor
speed. The operation of driving a 3-phase BLDC motor by Power MOSFETs involves
providing PWM pulses to the Gate driver circuit, which in turn controls the switching of
the MOSFETs in a specific sequence to generate torque and rotate the motor.
TABLE OF CONTENTS

SI CONTENTS
1 Abstract
2 Chapter 1
 Introduction
3 Chapter 2
 Literature Survey
4 Chapter 3
 Methodology
a) Hardware
b) Software
5 Chapter 4
 Result
6 Chapter 5
 Conclusion
7 References

LIST OF FIGURES

SI FIGURE
1 H-Bridge Configuration
2 Bootstrap Configuration
3 Overall Circuit Diagram
4 DC-DC Buck Convertor
5 Flowchart
6 Output from pin 2
7 Output from pin 4
8 Output from pin 5
9 Output from pin 9
10 Output from pin 10
11 Output from pin 11

LIST OF TABLES

SI List of Tables
1 Sequence of Excitation of Phases
2 Connections Made to gate driver

CHAPTER 1
INTRODUCTION
The report describes the process flow for causing a 3-phase BLDC motor to run in
accordance with the controller command. Any process always starts with prior knowledge
of what we do and how we do it. In order to implement the project, a literature survey on
the available methodologies has to be done, and the best method out of many has to be
chosen as per the project requirements. The major task in implementing the project is
designing the hardware and coding the microcontroller that controls the motor. A
methodology includes the hardware flow and software flow of the project. The report
includes the details of project implementation, results obtained, and conclusions drawn
from them.

CHAPTER 2
LITERATURE SURVEY
A literature review is an examination of existing knowledge in order to identify methods,
theories, and gaps in current research. Both hardware and software parts need to coordinate
one another’s working, and with different kinds of technologies and information at hand, it
becomes easier to choose the best method.
The wheel speed can be controlled by some control parameters namely, scalar control
variables and vector control variables. In scalar, by varying voltage and frequency speed of
the motor can be controlled whereas in vector control, flux has to be controlled along with
decoupled torque. In the first method, variables can be controlled in many ways. There are
techniques such as Pulse Width Modulation technique, Hall sensor, timers etc. The second
method involves complex mathematical computations. Selection of motor controllers
depends upon the application environment and the algorithm. The application which uses
many sensors, actuators, communication between networks, transfer of data or display of
processed data, storage of information, for all these things ARM based microcontrollers are
suited. DSPs have high mathematical processing capabilities therefore in applications like
torque decoupling, vectoring use of DSPs are recommended. For the customised motor
controller, the software remains the same or at least similar in every implementation but
design of power electronic circuits are the challenge.

CHAPTER 3
METHODOLOGY
a) HARDWARE
The BLDC motor we are using is an outrunner motor. The outrunner configuration
allows for higher torque. Since the windings carrying current from the power source
are not rotating the same method of commutation as a brushed motor. it will not work.
Instead now controller circuitry is needed to know when to apply the correct voltages
to the windings. In our case we will be using a Arduino uno microprocessor to
determine when to correctly change the supplies connected to the motor windings.
The Input to the system is taken from the voltage reference via a potentiometer which
input to the micro controller. Rotors position is known through the hall sensors ,Which
is given to the Arduino uno board. Arduino processes the input and gives the output in
the form of 6 PWM signals with phase differences of 120 degrees.
3 Phase H-Bridge controller- Our controller contains 3 bi-directional outputs (i.e.
frequency controlled three phase output), which are controlled by microcontroller.
These three bi-directional outputs are controlled by switches. In order to spin the motor
at appreciable speeds these switches need to be able to turn on and off very fast. Hence
we use a MOSFET as a switch. These MOSFETs need a gate driver
According to the above mentioned needs the components we are using are.
 MOSFET - IRF540n
 Gate driver – IR2101
H-Bridge configuration

Figure 1-H-bridge configuration

The H-Bridge is the circuit that converts the DC voltage to the 3-Phase AC voltage
which is needed to spin the motor. The conversion takes place by having 6 MOSFETs
in a specific way as shown in Figure.
Time Instant High side MOSFET Low Side MOSFET
turned on turned on
1 Phase U Phase V
2 Phase U Phase W
3 Phase V Phase W
4 Phase V Phase U
5 Phase W Phase U
6 Phase W Phase V
7 Phase U Phase V

Table 1-Sequence of Excitation of Phases

Here MOSFETs are working as switches turning on and off the current to motor. In
order to work as switches they must operate in saturation region. 2 MOSFETs are
needed for each phase thus a total of 6 are needed.
The way the current flows in the H-Bridge is very unique because it only uses 2 of the
3 phases in every instant in time. Current flows from the positive terminal of the power
supply to the negative terminal. The Current starts by going through the MOSFET in
phase U on the high side. The Current continues to the winding in phase U then goes
through the phase V winding. From there current goes through the MOSFET in phase
V on the low side. Then the timing from the microcontroller will make the current flow
through the different phases at different times indicated in Figure.
The power MOSFET used is IR540n and we use IR2101 IC to drive these MOSFETS.
We are using all N-Channel MOSFET because of it’s low Rdson(0.007 Ω) which
results in less power dissipation and its low cost compared to P-channel MOSFET.

GATE DRIVER (IR2101)


Features
 Floating channel designed for bootstrap operation Fully operational to+600V
Tolerant to negative transient voltage dV/dt immune
 Gate drive supply range from 10 to 20V
 Undervoltage lockout
 5V Schmitt-triggered input logic
 Matched propagation delay for both channels
 Outputs in phase with inputs

MOSFET needs gate driver for high switching applications. We need 3 -phase H
bridge configuration to drive 3-Phase high side load(MOTOR).
The input to gate driver is PWM signal generated through microcontroller.

PIN NUMBER I/O pins INPUT/OUTPUT


connections
1 VCC 12V
2 HIN Connected to 11,10,9
output pins from arduino
3 LIN Connected to 5,4,3 output
pins from arduino
4 COM Connected to ground
through capacitor from
pin 1
5 Vb Connected through
bootstrap diode from VCC
and bootstrap capacitor
between pin 5 and 7.
6 HO Connected to gate of high
side MOSFET through
resistor
7 Vs
8 LO Connected to gate of low
side MOSFET through
resistor

Table 2-The connections made to gate driver are as follows

As shown in the below figure such 3 configurations are made for 3 phase . This is a
bootstrap configuration
Figure 2-Bootstrap configuration

Advantage of using bootstrap configuration are .it’s simple and of low cost.
Construction of it requires a bootstrap capacitor and a bootstrap diode -This circuit is
used since input voltage levels of PWM signals don’t let us use direct – gate drive
circuits for High side N channel power MOSFET(IRF540n)
During charging of bootstrap capacitor input from PWM signals will be low and low
side MOSFET Conducts .Voltage flows to ground without providing the voltage to the
respective phase of motor.
During discharging of bootstrap capacitor input from PWM signals will be high and
bootstrap capacitor discharges .this voltage drives the high side MOSFET in return
providing the voltage to the respective phase of motor to turn it on.
Each such configuration is given to each phase of motor

Figure 3- Overall circuit diagram

Since there is only one power source and components we use needs either standard 12V or
5V to operate the components used. We convert the main voltage source to 5V and 12V
using DC-DC buck converter
A DC-to-DC buck converter is an electronic device that is used to reduce the input voltage
to a lower output voltage. It works by using a switch and a capacitor to regulate the
voltage. The buck converter operates by switching the input voltage on and off at a high
frequency, storing energy in the capacitor, and then releasing it to the output at a lower
voltage.
Buck converters are widely used in a variety of applications, including power supplies for
electronic devices, battery chargers, and voltage regulation for automotive systems. They
are especially useful in applications where the input voltage may be higher than the
required output voltage, as they allow for efficient conversion of voltage while maintaining
a high level of power efficiency.
Another advantage of the buck converter is its versatility. They can be designed to operate
over a wide range of input voltages and output voltages, making them suitable for use in a
wide variety of applications. They can also be easily modified to meet the specific
requirements of a particular application, such as adjusting the switching frequency, adding
voltage feedback, or including protection against over-voltage or over-current conditions.
In conclusion, the DC-to-DC buck converter is a versatile and efficient device that is
widely used in a variety of applications. Its simple design, high efficiency, and versatility
make it an attractive option for voltage regulation and conversion in a wide range of
applications.
But here in our project,s we used IRN540 MOSFET, a voltage regulator (TL431), and
resistors and capacitors.
DC-DC BUCK CONVERTER
Figure 4-DC-DC buck convertor

The IRF540 is a metal-oxide-semiconductor field-effect transistor (MOSFET) that is


commonly used in a variety of applications, such as power switching circuits, voltage
regulators, motor controllers, and amplifiers.
In a buck converter, the IRF540 MOSFET is used as a switch to control the flow of current
from the input voltage source to the output load. The IRF540 MOSFET's low on-resistance
and fast switching speeds make it well-suited for use in a buck converter. Its ability to
handle high currents and voltages, combined with its low on-resistance, helps to reduce
power loss and increase efficiency in the converter. Additionally, the IRF540 MOSFET's
N-channel configuration allows for easy control and efficient operation, making it a
popular choice for use in buck converters.

The TL431 is a three-terminal adjustable shunt regulator that operates as a precision


voltage reference. The voltage reference is set by two external resistors and it regulates the
output voltage by comparing the reference voltage with a fraction of the output voltage.
The TL431 has an internal error amplifier that compares the reference voltage with a small
fraction of the output voltage. If the output voltage exceeds the reference voltage, the error
amplifier will drive the control pin ( Pin 3) higher, causing the output current to decrease
and the output voltage to drop. If the output voltage is lower than the reference voltage, the
error amplifier will drive the control pin lower, causing the output current to increase and
the output voltage to rise.
The TL431 is designed to be used as a replacement for Zener diodes in many applications.
The TL431 is used in a variety of applications, including voltage regulation in power
supplies, voltage reference generation, and voltage level shifting. The small size, low cost
and simple external component requirements make it a popular choice for many different
design projects.
b) SOFTWARE

FLOWCHART

Figure 5-Flowchart

Code for the program


#include <SoftwareSerial.h>
SoftwareSerial mySerial(9,10);
char msg;
char call;
int buttonpin=12;
void setup()
{
pinMode(buttonpin,INPUT);
mySerial.begin(9600); // Setting the baud rate of GSM Module
Serial.begin(9600);// Setting the baud rate of Serial Monitor (Arduino)
Serial.println("press button");
}

void loop()
{
if(digitalRead(buttonpin)==HIGH)
{

Serial.println("button pressed");
delay(2000);
SendMessage();
}

if (mySerial.available()>0)
Serial.write(mySerial.read());
}

void SendMessage()
{
mySerial.println("AT+CMGF=1"); //Sets the GSM Module in Text Mode
delay(1000); // Delay of 1000 milli seconds or 1 second

mySerial.println("AT+CMGS=\"+918618126297\"\r"); // Replace x with mobile


number
delay(1000);

mySerial.println("Agnie Racing");// The SMS text you want to send


delay(100);
mySerial.println((char)26);// ASCII code of CTRL+Z
delay(1000);
Serial.begin(9600);
Serial.println("ATD+918618126297;");
delay(1000);
Serial.println("ATD+918618126297;");
delay(1000);
}

CHAPTER 4

RESULT
The output of PWM signals from Arduino Uno is as follows
1) Output from pin 2

Figure 6

2) Output from pin 4


Figure 7

3) Output from pin 5

Figure 8

4) Output from pin 9

Figure 9
5) Output from pin 10

Figure 10

6) Output from pin 11

Figure 1

CHAPTER 5
CONCLUSION
In conclusion, the motor was successfully run using the motor controller circuit. The circuit
was able to effectively control the speed and direction of the motor, allowing it to operate
as intended. The successful operation of the motor highlights the effectiveness of the motor
controller circuit and its ability to control the motor with precision. The result of this
experiment demonstrates the potential for this circuit to be used in a variety of applications
where motor control is necessary.

REFERENCES

You might also like