C620电调 + M3508电机
- 控制电流范围为-16384~16384(-20A~20A),超过该范围电调自动限制
- 转速存在上限,额定转速为469rpm,空载转速为482rpm(减速后大轴输出,非直接读取到的转速)。换算为转子转速约为9217rpm,以官方麦轮直径计算可知最高车速约为3.7m/s
- 发送频率最高至1kHz,更高的频率电调无法响应
- 发送ID为0x700的CAN包(数据段为空)会设置总线上所有的3508电机进入快速设置ID模式
- 控制流程图(图源自RoboMaster开发板C型嵌入式软件教程文档.pdf)
在RoboMaster系列电机中,GM6020电机是通过CAN总线控制电机电压,M3508电机是通过CAN总线控制电机电流。故而当M3508电机接收到CAN总线发送的电流设定值后,会通过一套控制算法来保证电机电流恒定
M3508电机比GM020电机相比,多了电流比较部分,通过一套控制算法调节电机电压,保证电机电流恒定,由于电机扭矩与电机电流成正比,进而控制电机扭矩恒定。M3508在空载启动时,电机负载扭矩较小,即使设定较小的电流控制值,电机也会很快加速,直至电机电压到达最大电压,之后电流逐渐减少,直至最大转速。
GM6020电机
控制电流范围为-30000~30000,超过该范围仍然会输出,但是到达转速上限后电流会被抑制。已知转速存在限制(默认60rpm),需要外接串口修改上限,上限最高为300rpm。超过对应上限输出电压将被抑制
发送频率最高至1kHz,更高的频率无法响应;
发送频率最低约为5Hz,即为在间隔大于约200ms时间内CAN不发送数据时,电调将默认把输出电流置零
输出电压 = 反电动势 + 转矩电压(电机反馈数据) = 转速/转速常数(Ke)+ 转矩电压
控制流程
控制带宽
电机原始角度输出带低通滤波器,其闭环控制传递函数-3dB点<10Hz(1kHz控制频率测试,只有比例环节,kp=10,系统总是稳定)
电机原始转速输出无滤波,其闭环控制传递函数-3dB点约为75Hz(1kHz控制频率测试,只有比例环节,kp=30,穿越频率位于79Hz,幅频尖峰出现在约50Hz附近)
电机电流环带宽在80Hz~100Hz之间(1kHz控制频率堵转测试,直接输出扫频电压设定值)