Quantcast
Channel: Sam的技术Blog
Viewing all articles
Browse latest Browse all 158

HANDS-FREE学习 

$
0
0
作者:Sam (甄峰)  sam_code@hotmail.com


之前介绍过Hands-Free,现在开始介绍如何下载Hands-Free相关ROS Package, 并编译运行之。

0. ROS版本,Cmake版本:
强烈建议使用indigo.   CMake:2.8.12.2或之上
Sam之前使用hydio, cmake 版本也较低, 结果编译时出各类错误。


1.  下载Hands-Free相关ROS Package-----ROS_DEMO
https://github.com/HANDS-FREE是Hands-Free的github仓库,其中https://github.com/HANDS-FREE/ROS_DEMO 是ROS Package.

https://github.com/HANDS-FREE/ROS_DEMO.git

Sam在catkin_ws/src/hands-free目录下,运行:
$sudo git clone https://github.com/HANDS-FREE/ROS_DEMO.git
将ROS_DEMO加入catkin workspace.

2. 运行脚本,安装依赖包:
在catkin_ws/src/hands-free/ROS_DEMO/Documention/中,有个environment_config.sh, 它里面描述了要安装的一些依赖包。
$sudo  apt-get install xxxx

3. 修改main.cpp内容
catkin_ws/src/hands-free/ROS_DEMO/handsfree_hw/src/main.cpp 的第7行,修改为自己的路径。

4. catkin_make


5. 
source catkin_ws/devel/setup.bash

下面就可以运行ROS_DEMO的例子了。






附1:
setup.bash和setup.sh解读:

$(BASH_SOURCE[0]) 
这个用法很关键, 在不同目录下,不同调用方式下,要获取BASH SOURCE File name, 就可以使用它来获取。
例如:
test/build/目录内,有个env.bash文件,
可以在test/build目录内,./env.bash 调用, 也可以对本bash起效的方式:

A:不同调用方式:
. ./env.bash  或:bash  env.bashsource env.bash
都想获取Bash Source 文件。
echo ${BASH_SOURCE[0]}
则以上调用方式,都得到env.bash.

B:不同调用目录:
在 build目录,在test目录,在test/build目录下,分别调用:
得到 build/env.bash
test/build/env.bash
env.bash

所以,很好的得到了bash 文件。


dirname : 取目录名

所以:setup.bash
_CATKIN_SETUP_DIR=$(builtin cd "`dirname "${BASH_SOURCE[0]}"`" > /dev/null && pwd)
. "$_CATKIN_SETUP_DIR/setup.sh"
含义是,找到这个目录,并运行: . /home/sam/catkin_ws/devel/setup.sh





 

Viewing all articles
Browse latest Browse all 158

Trending Articles