switched reluctance motor speed control using microcontroller
DESCRIPTION
This is the presentation about speed control of switched reluctance motor using microcontroller.TRANSCRIPT
SPEED CONTROL
OF SWITCHED RELUCTANCE MOTOR
USING PWM
PREPARED BY:- JADAV KRISHNARAJSINH A. [email protected] Rajkot.
Introduction
A speed control algorithm is proposed for variable speed switched reluctance motor (SRM) drives taking into account the effects of mutual inductances.
The control scheme adopts two or more phase excitation: exciting two or more adjacent phases can overcome the problems associated with single-phase excitation such as large torque ripple, increased acoustic noise, and rotor shaft fatigues.
2 Phase
4 Stator pole, 2 Rotor pole
5 Phase
10 Stator pole, 8 Rotor pole
4 Phase
8 Stator pole, 6 Rotor pole
3 Phase
6 Stator pole, 4 Rotor pole
Multiphase SRM
Converter Configuration
Asymmetric bridge converter
Switching Strategy for Control Classical sequence:
Switching Strategy for Control Improved sequence:
Software Code &
Simulation
Microcontroller Programingo #include <reg51.h>o #define off 0o #define on 1o sbit pin7 = P1^7; // label pin7 is port 1 pin 7 a
phaseo sbit pin6 = P1^6; // label pin6 is port 1 pin 6 b
phaseo sbit pin5 = P1^5; // label pin5 is port 1 pin 5 c
phase
o void delay(void);o main()o {o TMOD = 0x01;o // timer 0 mode 1,o // TH0 TL0 = 16 bit registero while(1)// keep repeating the following sectiono {o pin5= off;o pin6= off;o pin7 = on;o // pin 7 to 5 volts, i.e. logic 1o // use timer 0 to generate delayo delay();o pin7 = off;
o // pin 7 to 0 vlts, i.e. logic 0o // repeat timer delayo pin6= on;o delay();o pin6= off;o pin5= on;o delay();o pin5= off;o }
o }
o void delay(void)//20 ms loopo {
o TH0 = 0xB9; // hex B9 into TH0o TL0 = 0x90; // hex 90 into TL0o TR0 = on; // start timero while(!TF0);// wait here until TF0 = 1o TR0 = off; // stop timero TF0 = off; // clear overflow flag
o }
Programing For improved sequence #include <reg51.h> #define off 0 #define on 1 sbit pin7 = P1^7; // label pin7 is port 1 pin 7 a
phase sbit pin6 = P1^6; // label pin6 is port 1 pin 6 b
phase sbit pin5 = P1^5; // label pin5 is port 1 pin 5 c
phase void delay(void); main() { TMOD = 0x01; // timer 0 mode 1, // TH0 TL0 = 16 bit register while(1)// keep repeating the following section { pin6=pin5=0; pin7=1; delay(); pin6=1; delay(); pin7=0;
delay(); pin5=1; delay(); pin6=0; delay(); pin7=1; delay();
} }
void delay(void)//20 ms loop { TH0 = 0xB9; // hex 6F into TH0 TL0 = 0x90; // hex FF into TL0 TR0 = on; // start timer while(!TF0);// wait here until TF0 = 1 TR0 = off; // stop timer TF0 = off; // clear overflow flag
}
Matlab Simulation Circuit
Improved Sequence
PROTEUS SIMULATION
THANK YOU