基于ROS的智能考古土方运输系统开源代码
Ubuntu18.04+ROS Melodic
煜禾森FR-07底盘+Intel第11代NUC+DWM1000-UWB基站与标签+思岚A1激光雷达+维特智能HWT905-IMU+维特智能WT53D激光测距模块+优信电子XY-15AS电机驱动+SENKYLASER SK-Z激光测距模块+大疆A板+创芯科技CANalyst-II分析仪
软件架构说明
├─ackermann_msgs-master
├─archaeology ---------------------- // 主板
├─archaeology_sub ------------------ // 副板
├─d435i ---------------------------- // 深度相机
├─imu ------------------------------ // imu
├─navigation-noetic-devel ---------- // 导航包
├─roborts_common
├─roborts_decision ----------------- // 决策
├─roborts_msgs --------------------- // ros消息
├─robot_setup_tf ------------------- // tf设置
├─rplidar_ros-master --------------- // 思岚雷达
├─serial --------------------------- // 串口
├─socket_server -------------------- // socket通信
├─stm32_master --------------------- // 主板
├─stm32_sub ------------------------ // 副板
├─teb_local_planner_tutorials ------ // teb规划
├─test_package --------------------- // 测试
├─yhs_can_control ------------------ // 底盘控制
└─yhs_can_msgs --------------------- // 底盘消息
- roslaunch teb_local_planner_tutorials test.launch
- rosrun roborts_decision along_attack_node启动决策节点
- rosrun socket_server socket_server_node //[注] 服务器运行后 手机端小程序根据IP连接到服务器 在小程序端发出指令后 服务器会向决策模块发送对应指令(格式见msg中appdata)
关于串口通信部分可查看知乎文章
四个核心函数
数据流向
向单片机发送数据
关于固定端口的方法可参考
Ubuntu系统 USB设备端口绑定
详情见utils/STM32toPC.txt中
STM32与PC通信协议