ROS学习篇第(二):基础知识

自问自答v1

一、echo $ROS_PACKAGE_PATH 这句话是什么意思

echo 英文意思:回响; 回声; 回音; 映现; 暗示; 启示; 反响; 共鸣; 附和; 重复
在linux下的作用:就是文本输入,然后显示

#To make sure your workspace is properly overlayed by the setup script, make sure ROS_PACKAGE_PATH environment variable includes the directory you're in.
zyf@zyf-TM1707:~$ echo $ROS_PACKAGE_PATH
/home/zyf/chuankou/src:/home/zyf/catkin_ws/src:/opt/ros/melodic/share

答:显示ROS_PACKAGE_PATH 的路径内容,输出的文本可以看出有三个路径在里面

echo "int64 num" > msg/Num.msg

echo也可以向文件中写入数据。

二、source devel/setup.bash 这句话什么意思

用法:

source filename							# filename必须是可执行的脚本文件
或者
. filename								# 注意“.”号后面还有一个空格

区别

当shell脚本具有可执行权限时,用sh filename与./filename是没有区别的。
./filename是因为当前目录没有在PATH中,所以"."是用来表示当前目录的。
source filename读取脚本里面的语句依次在当前shell里面执行,没有建立新的子shell。那么脚本里面所有新建、改变变量的语句都会保存在当前shell里面。

答:测试可以知道source 和 . 都是运行一个二进制文件的 (.bash)

三、shell 与 bash

Shell俗称壳(用来区别于内核),是指“提供使用者使用界面”的软件,就是一个命令行解释器。
bash 是一个为GNU项目编写的Unix shell,也就是linux用的shell。
就是说,bash是一种shell

答:bahs是shell的一种,可以理解成 命令窗口 :terminal

四、$ 这个符号什么意思

答:$ 符号用在什么地方,使用在不同的地方,其所代表的定义也就不同。比如在bash里 $ 符号表示当前用户为普通用户;在bash脚本里。$开头表示变量。

五、ros 里 int main(int argc, char **argv) 怎么理解

答:c++中的理解是:第一个参数,int型的argc,为整型,用来统计程序运行时发送给main函数的命令行参数的个数
第二个参数,char*型的argv[],为字符串数组,用来存放指向的字符串参数的指针数组,每一个元素指向一个参数。
ros里用起来的意义是:argc 即 运行改节点时的输入参数个数,argv[] 参数字符数组,其中第0个参数是程序本身(包括路径)

六、ros工作空间里的文件夹都是放什么的

在这里插入图片描述

自问自答v2

一、添加srv、msg消息的时候怎么配置CMakeLists.txt 和 package.xml

官网:http://wiki.ros.org/ROS/Tutorials/CreatingMsgAndSrv
①其实以上两个文件已经备注好了,当要添加消息的时候,package.xml 需要添加 创建依赖和执行依赖

<build_depend>message_generation</build_depend>
<exec_depend>message_runtime</exec_depend>

②在CMakeList.txt 中根据注释也可发现

find_package
  • 8
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值