Nvidia TX2+rplidar+autolabor pro1实现自主导航机器人

该博客介绍了如何利用Nvidia TX2作为主控,搭配Autolabor pro1底盘和rplidar A1激光雷达,实现室内自主导航机器人。通过ROS进行配置,包括底盘驱动、里程计标定、rplidar驱动、SLAM建图、AMCL定位、任务规划等步骤,展示了完整的机器人导航系统搭建过程。
摘要由CSDN通过智能技术生成

简介

  • 程序实现了室内自主导航机器人。基本功能有激光SLAM建图、AMCL定位、机器人运动规划、车辆监控和任务规划。
  • 底盘采用Autolabor公司的autolabor pro1,激光雷达选用rplidar A1,Nvidia TX2 作为主控,操作系统Ubuntu 16.04,基于ROS kinetic实现。
  • Github

配置步骤

1.安装依赖项

$ sudo apt-get install ros-kinetic-joy ros-kinetic-teleop-twist-joy ros-kinetic-teleop-twist-keyboard
$ sudo apt-get install ros-kinetic-gmapping ros-kinetic-move-base ros-kinetic-amcl \
  ros-kinetic-map-server ros-kinetic-dwa-local-planner ros-kinetic-global-planner

2.建立ros工作空间,clone 代码

$ mkdir -p ~/auto_ws/src
$ cd ~/auto_ws/src
$ git clone https://github.com/kinglintianxia/autolabor_pro1.git
$ cd ~/auto_ws
$ catkin_make

代码树形图:

.
├── autolabor_pro1
├── autolabor_pro1_description
├── autolabor_pro1_driver
├── autolabor_pro1_nav
└── README.md

3.autolabor pro1 底盘配置

autolabor pro1底盘驱动下载与解压,代码中底盘驱动位于autolabor_pro1_driver目录下

$ wget http://autolabor.cn/file/AutolaborPro1_ROS_Driver_Package20180115.zip
$ unzip -d ./ AutolaborPro1_ROS_Driver_Package20180115.zip

autolabor_pro1_driver节点

autolabor_pro1_driver节点通过串口和底盘进行通讯,实现控制。具体通讯协议见AutolaborPro1产品使用手册.pdf

  • 发布的topic:
轮式⾥程计:/wheel_odom (nav_msgs/Odometry),
剩余电池电量:/remaining_battery (std_msgs::Int32)
  • 发布的tf:
odom->base_link
  • 订阅的topic:
/cmd_vel (geometry_msgs/Twist)

添加udev rules

机器人中可能会使用多个串口,比如本例中底盘和rplidar都是串口通讯,所以在ubuntu /dev目录下会出现 /dev/ttyUSB0 和 /dev/ttyUSB1,为了使程序识别正确对应的器件,使用udev rules对串口进行重映射并赋权限。格式如下:

KERNEL=="ttyUSB*", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE:="0666", SYMLINK+="autolabor_pro1"

获取Vendor id和Product id,有两种方法:

  • 在能分辩串口器件的情况下,使用
$ lsusb
> ID `
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值