Arduino SimpleFOClibrary has a goal to support as many BLDC and stepper motor drivers as possible. Till this moment there are two kinds of motor drivers supported by this library:
- BLDC motor driver
- 3 PWM signals ( 3 phase )
- 6 PWM signals ( 3 phase )
- gimbal motor drivers or high-performance boards
- Stepper drivers
- 4 PWM signals ( 2 phase )
- Stepper drivers or double DC motor drivers
Before running any BLDC motor with the SimpleFOClibrary please make sure your hardware can handle the currents your motor requires.
The simplest way to do it is by checking the motor phase resistance
R. Either check the datasheet of your motor and search for the resistance value or measure it yourself using a multimeter. Then check the value of your power supply voltage
V_dc and once when you have the values you can find the maximum current
I_max value by calculating:
I_max = V_dc/R
Finally check the value of the maximum current
I_max with the datasheet of your driver board. If the
I_max is too high you can lower the power supply voltage
V_dc in order prevent too high peaks of the current. If you are not able to change your power supply voltage you can limit the voltage set to motor in software.
NOTEThe equation above calculates the worst case maximum current
I_maxand in most cases calculated
I_maxis higher than the actual value. Maximum current depends both of the motor hardware such as winding configuration and the control algorithm.