第二篇:基于 RA-ECO-RA4M2 开发板的四轮小车运动控制评测
1. 前言在完成 RA-ECO-RA4M2 开发板的基础点灯、串口输出和按键测试后我进一步尝试将其应用到四轮小车运动控制中。相比简单的 LED 或按键实验小车控制更能体现开发板在实际嵌入式控制场景中的能力因为它同时涉及 GPIO 输出、PWM 调速、电机驱动、供电隔离、运动逻辑设计和串口调试等多个方面。本次评测以 RA-ECO-RA4M2 作为小车主控配合两个TB6612 电机驱动模块控制四个直流减速电机实现小车前进、后退、左转、右转、停止等基本运动功能。通过这一实验可以比较直观地验证 RA4M2 在多路 GPIO 控制和 PWM 输出方面的实际表现。2. 系统硬件组成本次四轮小车控制系统主要由以下部分组成RA-ECO-RA4M2 开发板作为主控TB6612 电机驱动模块作为电机功率驱动四个直流减速电机组成小车底盘18650 电池或其他独立电源为电机供电USB 接口为开发板供电并提供串口调试后续直接用TB6612对单片机供电进行短暂循迹。在实际接线中需要特别注意开发板电源和电机电源的关系。RA-ECO-RA4M2 的 IO 输出能力有限不能直接驱动直流电机因此必须通过 TB6612 这类电机驱动模块进行功率放大。开发板只负责输出方向控制信号和 PWM 调速信号真正给电机供电的是电池侧电源。其中一个非常重要的细节是开发板 GND、TB6612 GND 和电池负极必须共地。如果没有共地开发板输出的 PWM 和方向信号对 TB6612 来说就没有统一参考电平可能会出现电机不转、乱转或者响应不稳定的问题。3. 四轮运动控制方案本次小车采用常见的左右差速控制方式。也就是说四个轮子并不是完全独立控制而是将左侧前后两个轮子作为一组右侧前后两个轮子作为一组。左侧电机组由 TB6612 的一路通道控制右侧电机组由另一路通道控制。这种方式结构简单、控制逻辑清晰适合教学实验和项目演示。小车的运动方向主要由左右两侧电机的转向和速度差决定。小车前进时左侧电机和右侧电机同时正转小车后退时左侧电机和右侧电机同时反转小车左转时右侧电机正转左侧电机停止或反转小车右转时左侧电机正转右侧电机停止或反转小车停止时两侧电机全部停止输出。这种差速控制方式虽然没有四轮独立控制那么复杂但对于普通循迹小车、环境巡检小车和移动监测平台来说已经足够使用。如果后期需要实现更精细的四轮独立控制也可以增加第二片 TB6612 或更换四路电机驱动模块。4. TB6612 驱动逻辑TB6612 的控制逻辑比较清楚每一路电机通常需要两个方向控制引脚和一个 PWM 调速引脚。以一路电机为例AIN1 和 AIN2 控制电机方向PWMA 输入 PWM 信号用于控制电机速度STBY 为待机控制脚需要拉高后模块才能正常工作VM 接电机电源VCC 接逻辑电源GND 接公共地。方向控制逻辑可以简单理解为AIN1 1AIN2 0电机正转AIN1 0AIN2 1电机反转AIN1 0AIN2 0电机停止AIN1 1AIN2 1通常用于刹车模式。在 RA-ECO-RA4M2 上方向控制可以使用普通 GPIO 完成PWM 输出则可以使用 GPT 定时器完成。通过调节 PWM 占空比可以改变电机平均输入电压从而改变小车速度。5. RA-ECO-RA4M2 的 PWM 输出体验在本次评测中RA-ECO-RA4M2 的 PWM 输出是小车控制的核心。电机调速不是简单地输出高低电平而是需要稳定的 PWM 波形。RA4M2 片上集成 GPT 定时器资源可以用于产生 PWM 信号。使用 e² studio 和 FSP 配置 PWM 时需要注意三个关键点。第一GPT 通道要正确选择。第二PWM 输出引脚要在 Pins 配置中打开对应功能。第三代码中不仅要配置占空比还要调用定时器 open 和 start 函数。在调试过程中如果电机始终不转不能只检查代码还要检查 FSP 中对应 GPT 输出是否真正使能。有时程序看起来没有问题但引脚并没有被配置为 GPT 输出功能这种情况下 TB6612 收不到 PWM 信号电机自然不会转。从实际体验来看RA-ECO-RA4M2 用于两路 PWM 电机控制是比较稳定的。通过串口输出当前电机状态例如目前为方便调试没有让电机一直转动。可以很方便地观察程序当前运行状态也便于后续排查问题。6. 小车基本运动测试完成底层驱动后可以按照以下顺序测试小车运动功能。首先测试单侧电机。先让左侧电机正转、反转、停止再测试右侧电机。这样可以确认每一路 TB6612 输出和电机接线是否正确。然后测试双侧电机同步运动。左右两侧同时正转时小车应该前进左右两侧同时反转时小车应该后退。最后测试转向。左转和右转可以通过两种方式实现一种是一侧停止另一侧转动另一种是一侧正转另一侧反转。前者转向较平缓后者可以实现原地转向。实际测试时如果小车前进时出现偏航通常有三个原因第一左右电机本身转速存在差异第二左右轮胎摩擦力不同第三左右 PWM 占空比虽然设置相同但电机负载不同。解决方法可以是在程序中加入左右轮速度补偿。例如左侧偏快就适当降低左侧 PWM 占空比或者提高右侧占空比。对于没有编码器反馈的普通小车这种开环补偿是比较常见的做法。小车运行7. 评测总结通过四轮小车运动控制实验可以看出RA-ECO-RA4M2 不仅适合做基础入门实验也可以承担实际运动控制任务。它的 GPIO 可以完成方向控制GPT 定时器可以输出 PWM串口调试可以实时观察电机状态整体开发流程比较完整。本次实验中RA-ECO-RA4M2 的主要优势有三点。第一PWM 和 GPIO 配置规范适合做小型运动控制项目。第二e² studio 和 FSP 可以图形化配置引脚和定时器减少底层初始化工作量。第三串口调试方便适合在小车运动过程中观察运行状态。当然在使用过程中也需要注意一些问题。例如电机电源和主控电源不能混淆TB6612 必须共地PWM 引脚必须正确配置电机方向需要通过实际测试确认。总体来说RA-ECO-RA4M2 可以较好地完成四轮小车的基本运动控制。它不仅能够实现前进、后退、转向和停止等基础功能也为后续加入循迹、避障、传感监测和无线通信功能打下了基础。