Other Parts Discussed in Thread: LAUNCHXL-F28027F, DRV8301
Hi everyone,
I'm trying to control a 12V sensorless BLDC (hard disk drive motor) using Arduino Uno and BOOSTXL-DRV8301 boards. Since the sensorless BLDC control requires 6-PWM mode, I made 6 soft PWM signals from the Arduino at around 7.8KHz, 30% duty cycle. To control the BLDC I implement 6 steps switching. Each step is switched each 0.6ms. (the below image shows 2 of 6 PWM channels (PWM-AH, PWM-BH) from the Arduino)
I connected these 6 PWM channels to the BOOSTXL-DRV8301 board without any level shifter since the datasheet only said that the minimum high logic for input pins is 2V. I used the default configuration setting for the BOOSTXL-DRV8301 so there was no SPI connection between 2 boards. Without any load at the output of the BOOSTXL-DRV8301 board, phase A and B are shown in the below image
When I plugged the motor in, the motor didn't work and the phase voltage in phase A and B were like that:
When I tried changing the PWM to 0.98kHz and step switching time to 5.1ms
the motor started to work but rotated at low speed and quickly became hot.
Could anyone explain the problem?
Thank you so much in advance.