第1部分 硬件介绍
1.1硬件清单
序号 | 品名 | 数量 |
---|---|---|
1 | ODRIVE主板 | 1 |
2 | CH340 USB TO TTL | 1 |
3 | MKS X2212电机 | 1 |
4 | 12V 2.0A电源适配器 | 1 |
5 | 杜邦线 | 3 |
6 | 编码器连接线 | 1 |
7 | 50W 2欧 耗散电阻 | 1 |
8 | micro USB 线 | 1 |
硬件清单如下图所示。
1.2 硬件连接
电机与ODrive主板接线参考之前课程,这次需要介绍的是Arduino UNO主板与ODrive主板的Step/Dir连接。
-
ODrive主板的GPIO1为Axis0 Step功能,GPIO2为Axis0 Dir功能;Arduino UNO主板在本次教程中作用为输出脉冲及Dir控制。3端口作为输出脉冲的端口;4端口为Dir控制端口,控制电机方向。如下表格所示。
功能 ODrive主板 Arduino UNO主板 Step GPIO1 3 Dir GPIO2 4 -
两主板连线,一共连接3根线:
GPIO1----3,
GPIO2----4,
GND----GND。如下图所示。 -
用USB数据线将Arduino UNO主板与PC连接。
-
micro USB 线一端连接oDrive主板,另一端连接PC。
-
硬件连接如下图所示:
第2部分 下载文件
-
本次测试源代码可通过Q群(732557609)下载,如下图所示。
-
解压后源代码文件如下图所示。
第3部分 Step/Dir配置
3.1 Step/Dir功能简介
-
需要启用Step/Dir功能,禁止UART功能。
-
通过脉冲频率与每圈步数控制电机转速,通过Dir高低电平控制电机转动方向。(默认步数为1024(turns_per_step=1/1024),即电机每接收到1024个脉冲转动一圈。)
-
本次测试分别通过改变脉冲频率与每圈步数来验证ODrive的Step/Dir功能。
3.2 Step/Dir功能配置
-
打开命令终端,输入
odrivetool
,如下图1所示。 -
启用Step/Dir功能,如下图2所示。
odrv0.axis0.config.enable_step_dir = True
-
禁用UART,如下图3所示。
odrv0.config.enable_uart = False
-
配置每圈步数。
odrv0.axis0.config.turns_per_step = 1/1024
-
保存配置,如下图4所示。
odrv0.save_configuration()
-
重启主板,如下图5所示。
odrv0.reboot()
第4部分 脉冲频率控制转速
固定每圈步数“turns_per_step”为1/1024,
通过改变脉冲频率来控制电机转速。
源代码在MKS_StepDir压缩包,解压即可,如下图所示。
完整程序如下图所示。
将引脚3定义为Step脉冲输出端口,
将引脚4定义为Dir控制端口,如下图1所示;
将引脚3、4配置为输出模式,如下图2所示。
4.1 低频率脉冲
将Dir引脚置高电平,Step引脚输出低频率脉冲(delay(5)),如图3所示。
控制电机慢速正转2圈。
4.2 高频率脉冲
将Dir引脚置低电平,Step引脚输出高频率脉冲(delay(0)),如图4所示。
控制电机快速反转10圈。
4.3 试验现象
程序上传成功后,电机会慢速正转2圈,然后快速反转10圈,不断循环该动作。
第5部分 每圈步数控制转速
固定脉冲频率,通过改变每圈步数来控制电机转速。
源代码在MKS_StepDir2压缩包,解压即可,如下图所示。
-
脉冲频率输出设为一致,如下图1,2所示。
-
上传程序。
-
程序上传成功后,电机会正转2圈,反转2圈,不断循环该动作。
-
上传程序。程序上传后下一步需要对ODrive GPIO配置进行修改。
5.1 设置每圈步数为512
将每圈步数改为512步,保存配置并重启,如下图1所示。
odrv0.axis0.config.turns_per_step = 1.0/512.0
odrv0.save_configuration()
odrv0.reboot()
观察电机转速,此时电机转速是步数为1024时的2倍。
5.2 设置每圈步数为32
将每圈步数改为32步,保存配置并重启,如下图2所示。
odrv0.axis0.config.turns_per_step = 1.0/32.0
odrv0.save_configuration()
odrv0.reboot()
观察电机转速,此时电机转速是步数为1024时的32倍。
至此,ODrive Step_Dir测试完成。
创客基地oDrive第七课 ODrive Step_Dir测试 到此结束。
对应的视频课程,可在Q群(732557609)下载,欢迎加入。
请继续关注后续课程。