整体上采用上位机(树莓派,Raspberry)控制下位机(Tiva™ C Series TM4C123G LaunchPad),再通过下位机控制电机驱动模块(AT8236)和直流电机。最终实现网联、闭环控制小车,使其具备基础但是完整的轮式移动机器人整体架构。 在功能上可以实现联网远程键盘控制小车进行:前进后退、左右转、加减速和停止的功能。 在实现细节上主要有四个目标:
- 使用TM4C控制电机驱动模块(AT8236)通过PWM驱动直流电机,并通过编码器读取电机实际转速,对电机实现PID闭环控制;
- 实现上下位机之间的UART(Universal Asynchronous Receiver/Transmitter)通信;
- 在上位机部署ROS系统,并成功向下位机读取/发送信息;
- 实现键盘控制节点。
- robot 文件夹为CCS(单片机)项目源码
- src 文件夹为小车ROS源码
https://zhuanlan.zhihu.com/p/495247904
https://blog.mbedded.ninja/programming/operating-systems/linux/linux-serial-ports-using-c-cpp/