基于qualcomm平台的kincet应用系列一之Turtlebot(自动跟随机器人)中篇

继上次《基于qualcomm平台的kincet应用系列一之Turtlebot(自动跟随机器人)上篇》文章发布后,没想到很多童鞋对这个都很感兴趣,并根据此文进行了配置操作。当然,基础好的童鞋都一次性成功,而一些之前对此接触比较少的童鞋遇到了不少问题,纷纷私信咨询我。在这里,我特地为问题集开个新帖,详细简述下解决方法和原理,希望能降低大家开发中遇到的难度。

一.问题点:

1.dragonboard410c开发板如何安装ubuntu core系统?

答:这是比较初级的问题,很多童鞋手里拿到的410c板子都是预装android系统,大家看我上一篇博客都是上传要烧录的镜像都是属于linux系统类的,烧录指令难免有所差异,这里我们直接将烧录的指令完全总结在以下的flash.sh里,大家下载后设置到fastboot mode后直接运行即可。

#!/bin/sh

fastboot flash partition gpt_both0.bin
fastboot flash hyp hyp.mbn
fastboot flash modem NON-HLOS.bin
fastboot flash rpm rpm.mbn
fastboot flash sbl1 sbl1.mbn
fastboot flash sec sec.dat
fastboot flash tz tz.mbn
fastboot flash aboot emmc_appsboot.mbn

fastboot erase boot
fastboot erase rootfs
fastboot erase devinfo

fastboot flash boot boot-linaro-jessie-qcom-snapdragon-arm64-20160630-110
fastboot flash rootfs linaro-jessie-developer-qcom-snapdragon-arm64-20160630-110
图1 flash.sh

2.install_ros_410c.sh运行有问题.
2.1."./install_ros_410c.sh:bad interpreter: No such file or directory" :
答:主要是因为大家从windows系统将install_ros_410c.sh拷到我们的linux系统导致的格式错误!
解决方式
#sh>vi filename 

利用如下命令查看文件格式 
:set ff 或 :set fileformat 

可以看到如下信息 
fileformat=dos 或 fileformat=unix 

利用如下命令修改文件格式 
:set ff=unix 或 :set fileformat=unix 

:wq (存盘退出) 
最后再执行文件即可.

2.2./install_ros_410c.sh:
 The following packages have unmet dependencies:
 ros-kinetic-audio-capture : Depends: libgstreamer-plugins-good1.0-0 but it is not installable
 ros-kinetic-audio-play : Depends: libgstreamer-plugins-good1.0-0 but it is not installable
 ros-kinetic-people : Depends: ros-kinetic-leg-detector but it is not installable
                      Depends: ros-kinetic-people-velocity-tracker but it is not installable
 ros-kinetic-sound-play : Depends: libgstreamer-plugins-good1.0-0 but it is not installable
E: Unable to correct problems, you have held broken packages.
答:这里是因为ros这几个库官网未更新导致,但不影响我们turtlebot的功能,这里我们可以直接忽略,为了大家以后安装turtlebot更简便快捷,这里我们重新上传新的更新脚本,并命名为:turtlebot_follower.sh
#turtlebot update manual


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

# setup the keys
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 0xB01FA116

# update repo list
sudo apt-get update

# tmux

sudo apt-get install tmux

sudo apt-get install ros-kinetic-desktop-full

#initialize rosdep
sudo rosdep init
rosdep update

# install tools
sudo apt-get install python-rosinstall

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

#  specialized installation for certain turtlebot packages
rosinstall_generator --rosdistro indigo --exclude RPP --deps --repos turtlebot_apps > ~/turtlebot_overlay.rosinstall
mkdir -p ~/turtlebot/src
wstool init ~/turtlebot/src ~/turtlebot_overlay.rosinstall

# blacklist some packages we don't want to build
cd ~/turtlebot/src
mkdir -p warehouse_ros openni2_camera openni2_launch turtlebot_apps/pano_py turtlebot_apps/turtlebot_panorama turtlebot_apps/pano_ros turtlebot_apps/turtlebot_rapps turtlebot_apps/pano_core freenect_stack/freenect_launch freenect_stack/freenect_camera world_canvas_server
touch ./warehouse_ros/CATKIN_IGNORE ./openni2_camera/CATKIN_IGNORE ./openni2_launch/CATKIN_IGNORE ./turtlebot_apps/pano_py/CATKIN_IGNORE ./turtlebot_apps/turtlebot_panorama/CATKIN_IGNORE ./turtlebot_apps/pano_ros/CATKIN_IGNORE ./turtlebot_apps/turtlebot_rapps/CATKIN_IGNORE ./turtlebot_apps/pano_core/CATKIN_IGNORE ./freenect_stack/freenect_launch/CATKIN_IGNORE ./freenect_stack/freenect_camera/CATKIN_IGNORE ./world_canvas_server/CATKIN_IGNORE
a
# add rosdeps
cd ..
rosdep install --from-path src --ignore-src -y --skip-keys freenect_launch --skip-keys openni2_launch

# install kobuki udev rules
rosrun kobuki_ftdi create_udev_rules

echo "source /opt/ros/kinetic/setup.bash" >> $HOME/.bashrc
echo "export TURTLEBOT_3D_SENSOR=kinect" >> ~/.bashrc
echo "export TURTLEBOT_3D_SENSOR=kinect" >> .bashrc
图2 turtlebot_follower.sh

3.dragonboard410c系统编译ros系统源码崩溃?
答:很多基础比较好的童鞋拿 410c的linux系统当编译环境使用,直接用来编译ros系统源码,导致系统内存崩溃。在这里,我们是不推荐拿 410c当编译环境使用,原因如下:
a.410c的闪存只有1G,不适合做中大型系统的编译环境,容易引起内存溢出,从而导致系统崩溃。哪怕你插U盘或者SD卡做swap区分享,也相当不稳定。这点我已经做过大量实测,因此还是建议大家将编译工作放到你的PC机上实现。
b.ros的官网已经有现成编译好的运行工具可以安装,大家在刚开始进行功能体验的时候完全不需要自己手动编译。

4.turtlebot如何手动启动?
答:这里我们推荐使用tmux工具进行手动启动,操作如下:

1).tmux
2).roslaunch turtlebot_bringup minimal.launch
3).Crtl+B,再按C键
4).roslaunch turtlebot_follower follower.launch
5).连接kobuki,kinect到410c板子上,稍等十秒左右即可运行。

5.turtlebot整机调试困难?
答:很多童鞋反馈410c不带LCD,平时调试都要接HDMI到电视显示和外接键盘,太不方便。在这里,我推荐使用ssh的方式进行登陆调试,具体操作如下:
1).启动410c,并使用linaro用户登陆;
2).使用nmcli连接wifi,同时将你的PC机连接到 同一wifi下
3).在PC机采用ssh的方式(我采用win7的SecureCRT)登陆到410c的linux系统,默认用户和密码为linaro。
4).登陆到410c板子的linaro系统,即可撤掉板子上的HDMI和键盘,进入无线调试模式。

二.更新脚本链接:
1.flash.sh                     下载链接:  http://pan.baidu.com/s/1hrD5048
2.turtlebot_follower .sh 下载链接: http://pan.baidu.com/s/1mhOmF24

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值