In our days, electric and hybrid cars are developing rapidly and getting more widespread. A common way is to drive them with Brushless Direct Current (BLDC) or Permanent Magnet Synchronous Machines (PMSM). The main advantages of these motors are high power density and controllability of speed and torque on wide range. These are particularly desirable in hub motor applications, where the electric motors are placed inside the wheels of the car. My work is an initial part of the Autonomous Driven Electric Vehicle (ADEV) project, in which the construction of the aforementioned applications are planned.
Driving BLDC and PMSM motors require specific control algorithms. Writing these algorithms, testing them in laboratory setup and validate the results with simulations is my task in order to prepare for further development. I use a DRV8302 Digital Motor Control board from Texas Instruments to drive a NT Dynamo 3-phase BLDC motor with a power output of 15 Watts, the board is controlled by a TMS320F28035 microcontroller unit of the Piccolo C2000 series. The codes are developed using the Embedded Coder library in MATLAB Simulink, which compiles block-models into C code, which is uploaded on the controller. With small adjustments the Simulink control models are also used to simulate the running of my algorithms on the test setup.
I start with getting acquainted with the equipment and programming environment. Required features for the control program are real-time communication between a PC and the microcontroller, measurement of system variables and generation of Pulse Width Modulated (PWM) signals for the motor driver inverter in order to make the machine rotate.
BLDC motors can be controlled with sinusoidal voltage generated by PWM, or rectangular signals where the gates of the inverter transistors are switched according to the six-step method. My plan is to implement both methods and compare the results.