8.3 机器人平台设计之电机驱动

对于构建轮式机器人而言,电机驱动是一重要实现环节。

场景:在机器人架构中,如果要实现机器人移动,其中一种实现策略是:控制系统会先发布预期的车辆速度信息,然后驱动系统订阅到该信息,不断调整电机转速直至达到预期速度,调速过程中还需要时时获取实际速度并反馈给控制系统,控制系统会计算实际位移并生成里程计信息。

在上述流程中,控制系统(ROS端)其实就是典型的发布和订阅实现,而具体到驱动系统(Arduino)层面,需要解决的问题有如下几点:

  • 一个周期伊始,Arduino 如何订阅控制系统发布的速度相关信息?

  • 一个周期结束,Arduino 如何发布实际速度相关信息到控制系统?

  • 一个周期之中,Arduino 如何驱动电机(正传、反转)?

  • 一个周期之中,Arduino 如何实现电机测速?

  • 一个周期之中,Arduino 如何实现电机调速?

在整个闭环实现中,前两个问题涉及到驱动系统与控制系统的通信,其中控制系统会将串口通信的相关实现封装,暂时不需要关注,而Arduino端数据的接收与发送都可以通过之前介绍的 Serial 相关API实现,本节主要介绍后面三个问题的解决方式也即电机基本控制、电机测速以及电机调速实现,主要内容如下:

  • 硬件:主要介绍电机类型与结构以及电机驱动板;

  • 电机转向控制与电机转速的控制;

  • 电机测速实现;

  • 电机调速实现。

results matching ""

    No results matching ""