重要参考:
课程链接:https://www.bilibili.com/video/BV1Ci4y1L7ZZ
讲义链接:Introduction · Autolabor-ROS机器人入门课程《ROS理论与实践》零基础教程
8.4.3 底盘实现_02Arduino端编码器驱动
测速是整个PID闭环控制中的必须环节,我们必须修改代码适配当前AB相编码器,虽然需要重写功能,但是测速部分内容已经封装,只需要实现编码器计数即可,大致实现流程如下:
- ROSArduinoBridge.ino 中需要注释之前的编码器驱动,添加自定义编码器驱动;
- encoder_driver.h 中设置编码器引脚并声明初始化函数以及中断函数;
- encoder_driver.ino 中实现编码器计数以及重置函数;
- ROSArduinoBridge.ino 中 setup 函数调用编码器初始化函数。
- 测试
1.定义编码器驱动
ROSArduinoBridge.ino需要添加编码器宏定义,代码如下:
#define USE_BASE // Enable the base controller code
//#undef USE_BASE // Disable the base controller code
/* Define the motor controller and encoder library you are using */
#ifdef USE_BASE
/* The Pololu V