编写代码
当你确定了电路板的合适硬件配置,并且所有硬件
- 微控制器
- BLDC 电机
- 位置传感器
- 电源
都已准备好连接后,就可以开始最令人兴奋的部分——编码了!
Arduino SimpleFOCShield 完全受 Arduino SimpleFOClibrary 支持,因此请确保你安装了该库的最新版本。如果你还没有获取该库,请按照安装说明进行操作。
开始为 Arduino SimpleFOCShield 编码时,建议采用以下步骤:
你也可以遵循我们的入门指南!
步骤1:测试传感器
首先确保你的传感器正常工作。运行库中特定于你的传感器的示例之一。你可以在以下路径找到库示例:
utils >
sensor_test >
encoder >
- encoder_example
- encoder_software_interrupts_example
magnetic_sensors >
- magnetic_sensor_i2c_example
- magnetic_sensor_spi_example
- magnetic_sensor_analog_example
hall_sensors >
- hall_sensor_example
- hall_sensor_software_interrupts_example
当传感器读取到正确的值后,你可以继续测试电机和传感器的组合。
警告:更新示例引脚分配
测试传感器时,请确保更新你在 硬件配置中选择的引脚分配。
步骤 2:测试电机
在运行 FOC 算法之前测试 BLDC 电机,我们建议运行开环示例!
motion_control >
open_loop_motor_control >
- open_loop_position_example
- open_loop_velocity_example
警告:更新示例引脚分配
测试电机时,请确保更新你在 硬件配置中选择的引脚分配。
如果你不确定你的电机有多少极对,请查看示例代码:
utils >
find_pole_pair_number >
- encoder
- magnetic_sensor
这段代码将估算你的电机的极对数量。请多次运行此代码以获得良好的估算结果。通常,该代码 10 次中有 7 次会显示良好的读数。
步骤 3:电压运动控制
当你的传感器正常工作,并且你知道了电机的正确极对数量后,就可以开始使用 FOC 算法了。最佳实践是从电压控制的示例开始:
motion_control >
torque_voltage_control >
- encoder
- magnetic_sensor
- hall_sensors
步骤 4:更复杂的控制策略
当你准备好使用电压进行 torque 控制后,就可以继续学习位置和速度控制算法了。它们需要更多的时间来调试,但能让你获得更好的结果。你可以通过以下路径找到运动控制环路的库示例:
motion_control >
position_motion_control >
- encoder
- magnetic_sensor
- hall_sensors
torque_voltage_control >
- encoder
- magnetic_sensor
- hall_sensors
velocity_motion_control >
- encoder
- magnetic_sensor
- hall_sensors
有关可能的 SimpleFOCShield 项目的更多信息,请访问示例项目