Turtlebot2i软件包的安装与配置

前言

Turtlebot2i是针对turtlebot2-arm版本的软件安装包,这里简单介绍一下它的的安装与变异,根据实际情况与官方教程有所不同。

硬件列表

Kubuki底座;sr300摄像头;astra摄像头;phantomx机械臂,工控机(这里我用了自己的笔记本代替)。


软件列表

系统:ubuntu16.03LTS(建议安装最新核的系统,本人系统核为4.13.0-32-generic,用uname -r命令查看,ubuntu14编译需要更改相关库文件以及部分lanuch文件)

Ros版本:ros-kinectic

软件包下载:https://github.com/Interbotix/turtlebot2i

软件包编译

参考:https://github.com/Interbotix/turtlebot2i/wiki/Full-Build-Instructions

  • GTK安装

# sudo apt-get install build-essential libgtk-3-dev

  • 安装源

# sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

  • 添加key并更新

# sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116

# sudo apt update && sudo apt upgrade

  • ssh安装(远程控制)

# sudo apt install vino ssh gedit

修改参数,勾选允许其他人查看您的桌面允许其他用户控制您的桌面,取消勾选必须对本机器的每次访问进行确认

# vino-preferences


  • 安装ros-kinetic安装包

# sudo apt install git build-essential ros-kinetic-desktop

# sudo rosdep init

# rosdep update

# sudo apt install python-rosinstall

  • Realsense安装包安装

原教程中需要更新系统核到4.0.4.10以上,如何核的版本在此以上则无需升级,直接安装:

# sudo apt install ros-kinetic-librealsense ros-kinetic-realsense-camera

安装过程中会报错,但是貌似不影响使用。

# sudo apt-get install libglfw3-dev

# cd librealsense

# mkdir build && cd build

# cmake ../

# cmake ../ -DBUILD_EXAMPLES=true

# make && sudo make install

# cd ..

# sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/

# sudo udevadm control --reload-rules && udevadm trigger

# ./scripts/patch-realsense-ubuntu-xenial.sh

安装结束后可以测试demo,进入~/librealsense/build/examples/capture/目录,执行:

# ./rs-capture

  • Turtlebot官方安装包安装

# sudo apt install ros-kinetic-turtlebot* libudev-dev ros-kinetic-find-object-2d ros-kinetic-rtabmap-ros ros-kinetic-moveit ros-kinetic-octomap-ros ros-kinetic-manipulation-msgs ros-kinetic-controller-manager python-wxgtk3.0

  • Turtlebot2i包下载和编译

# source /opt/ros/kinetic/setup.bash

# cd ~

# mkdir -p ~/turtlebot2i/src

# cd ~/turtlebot2i/src

# git clone https://github.com/Interbotix/turtlebot2i.git .

# git clone https://github.com/Interbotix/arbotix_ros.git -b turtlebot2i

# git clone https://github.com/Interbotix/phantomx_pincher_arm.git

# git clone https://github.com/Interbotix/ros_astra_camera -b filterlibrary

# git clone https://github.com/Interbotix/ros_astra_launch

# cd ~/turtlebot2i

# catkin_make

  • 修改shell环境变量

打开~/.bashrc文件,修改环境变量:

# gedit ~/.bashrc

添加以下内容:

# source /opt/ros/kinetic/setup.bash

# source /home/用户名/turtlebot2i/devel/setup.bash

# alias goros='source devel/setup.sh'

# export ROS_HOSTNAME=example.hostname

# export TURTLEBOT_3D_SENSOR=astra

# export TURTLEBOT_3D_SENSOR2=sr300

# export TURTLEBOT_BATTERY=None

# export TURTLEBOT_STACKS=interbotix

# export TURTLEBOT_ARM=pincher

最后source脚本文件:

# source ~/.bashrc

  • 建立端口的udev规则

# sudo usermod -a -G dialout turtlebot

# cd ~/turtlebot2i/

# goros

# rosrun kobuki_ftdi create_udev_rules

# rosrun astra_camera create_udev_rules

# cd ~/turtlebot2i/src/turtlebot2i_misc

另外还需要建立机械臂端口的udev规则,这里与教程有所不同,教程中再次设定了底座的端口名,但是前面其实已经设定了,所以不需要再次设定,而且原教程的方法在我的电脑上不适用。这里介绍我自己的方法:

先打开99-turtlebot2i.rules规则文件:

# gedit 99-turtlebot2i.rules

插入arbotix机械臂控制板(控制板需要烧录固件,并且安装驱动,参照arbotix控制板使用),查看其端口名

# lsusb


其中的FT232端口即为arbotix驱动板的端口,查看usb

# ls /dev -l


端口为ttyUSB0端口,底座端口为ttyUSB1,注意最好记录两者所插的USB口,两者端口插反的话有可能导致端口识别错误。

查看ttyUSB0端口的信息:

# udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)

找到对应的KERNELS(为第一个带有:的KERNELS的之后那个)2-1

建立uedv规则:KERNELS=="2-1", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE="0777", SYMLINK+="arbotix"

复制到规则目录,重启规则:

# sudo cp ./99-turtlebot2i.rules /etc/udev/rules.d/

# sudo udevadm control --reload-rules && sudo service udev restart && sudo udevadm trigger

可以进行测试机械臂,连接电源,重接跳线帽,输入:

# arbotix_terminal

# ls

可以得到各个舵机的编号:1,2,3,4,5.....

  • 测试demo

连接好底座,机械臂控制板(底座供电,注意usb口要保持保持一致接入),astra摄像头以及sr300摄像头。

测试demo

打开端口输入:

# roscore

再输入:

# roslaunch turtlebot2i_bringup turtlebot2i_demo1.launch rviz:=true

得到:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值