关键词:
ROS有很多架构及概念,例如工作空间,功能包,消息,服务等等。
我们先从最开始的工作空间说,工作空间在其它里面,有的叫作项目,有的叫作解决方案。其实就是一个项目的根目录地址。
例如,我们在/home里创建一个工作空间叫作workspace的。
注意,ros的所有运行的程序文件都要写在叫作src的文件。
之后我们可以先尝试在terminal中进入workspace中,
使用 cd ~/workspace/ 指令进入
可以使用mkdir src 指令创建文件夹src。
在workspace 的根目下catkin_make,就可以编译整个项目了
(注意,catkin_make 要在workspace根目录下面使用,不要在其它文件夹下编译 。)
之后就是功能包了,
在src文件中,我们需要进入src文件夹里。
通过cd ./src进入
使用catkin_create_pkg 名称 创建你想要的package。
同样的,在package文件夹下也要建立一个src文件夹,
并且将所有的执行文件,节点文件要放在这里面。
(注意,catkin_make会在workspace中生成三个文件夹,一个install,一个devel,一个build)
其实catkin_make
实际和下面的指令是等效的
$ cd ~/workspace $ cd src $ catkin_init_workspace $ cd .. $ mkdir build $ cd build $ cmake ../src -DCMAKE_INSTALL_PREFIX=../install -DCATKIN_DEVEL_PREFIX=../devel $ make
之后就是消息,在相应的package下,建立相关的消息,可参考ROS Wiki中的章节:
http://wiki.ros.org/ROS/Tutorials/CreatingMsgAndSrv
在package根目录下创建msg文件夹写入msg文件。
这些就是最基本的文件夹结构和文件框架。
示意图可以更清楚地表示这些结构。
workspace_folder/ -- WORKSPACE src/ -- SOURCE SPACE CMakeLists.txt -- ‘Toplevel‘ CMake file, provided by catkin package_1/ src/ node.cpp include/ CMakeLists.txt -- CMakeLists.txt file for package_1 package.xml -- Package manifest for package_1 ... package_n/ src/ node.py include/ CMakeLists.txt -- CMakeLists.txt file for package_n package.xml -- Package manifest for package_n
一个基本的ros项目的文件结构基本就是这样啦。
ros入门必了解的ros文件系统和软件包
...件系统概念及创建和编辑ROS软件包进行讲解,便于初学者入门。1、ROS文件系统概念:(1)功能包集(stack)将几个具有某种功能的包组织在一起,就是一个功能包集,在ROS系统中,存在大量不同用途的功能包集,例如导航功能... 查看详情
ros开机自动启动节点
...具实现守护进程开机启动功能.1 systemd工具简介Systemd入门教程:命令篇Systemd入门教程:实战篇2 robot_upstart安装节点sudo apt-get install ros-kinetic-robot-upstartrosrunrobot_upst 查看详情
ros从入门到精通系列--ros客户端(上)roscpp
目录一、ROS支持的客户端库和整体的包结构分布二、roscpp:1.主要部分 查看详情
ros从入门到精通系列--ros客户端(上)roscpp
目录一、ROS支持的客户端库和整体的包结构分布二、roscpp:1.主要部分 查看详情
ros1/ros2机器人编程光速入门指南(2021)
标题很滑稽可笑,写这一篇有点无奈,如果有这样的文章,一定是骗人的。'Romaindienonaedificata'Theproverb‘Romewasn’tbuiltinaday’statesthatgreatthingsandachievementstaketimeandshouldn’tberushed.ThecityofRome,wh 查看详情
ros1/ros2机器人编程光速入门指南(2021)
标题很滑稽可笑,写这一篇有点无奈,如果有这样的文章,一定是骗人的。'Romaindienonaedificata'Theproverb‘Romewasn’tbuiltinaday’statesthatgreatthingsandachievementstaketimeandshouldn’tberushed.ThecityofRome,wh 查看详情
ros从入门到精通系列(十八)--rostf(上)
目录1.官方文档 2.TF介绍3. TF原理3.1TF树的结构 查看详情
ros从入门到精通系列(十八)--rostf(上)
目录1.官方文档 2.TF介绍3. TF原理3.1TF树的结构 查看详情
mysql从入门到精通高级篇mysql目录结构与表在文件系统中的表示(代码片段)
...网打尽,9.9元买不了吃亏,买不了上当。Python从入门到精通❤️2.Python爬虫专栏,系统性的学习爬虫的知识点。9.9元买不了吃亏,买不了上当。python 查看详情
数据结构和算法入门初识篇
目录一、前言二、数据结构的理解物理结构和逻辑结构1.逻辑结构2.物理结构一、前言我们前面我学了Java的内部类,现在来学习一下数据结构和算法,多科齐下不仅可以学科交插学习互相帮助,还可以锻炼跳跃性思维... 查看详情
详解ros文件系统(代码片段)
本章主要介绍了ROS的工程结构,也就是ROS的文件系统结构。要学会建立一个ROS工程,首先要认识一个ROS工程,了解它们的组织架构,从根本上熟悉ROS项目的组织形式,了解各个文件的功能和作用,才能正确的进行开发和编程。本... 查看详情
《java从入门到放弃》javase篇:程序结构
程序的结构一般分为三种:顺序结构。选择结构。循环结构。一、顺序结构:这个不用多说吧,跟我们平时写文章的顺序一样,从上往下。650)this.width=650;"src="https://s3.51cto.com/wyfs02/M01/A2/70/wKioL1mf0MqwRCa0AAA_SnPBxrY664.png"title="11.png"style... 查看详情
《java从入门到放弃》javase篇:程序结构
程序的结构一般分为三种:顺序结构。选择结构。循环结构。一、顺序结构:这个不用多说吧,跟我们平时写文章的顺序一样,从上往下。650)this.width=650;"src="https://s3.51cto.com/wyfs02/M01/A2/70/wKioL1mf0MqwRCa0AAA_SnPBxrY664.png"title="11.png"style... 查看详情
ros从入门到精通系列(十七)--机械臂驱动器方案
目录舵机原理简介结构组成工作原理与性能指标角度伺服力矩伺服 查看详情
ros从入门到精通系列(十七)--机械臂驱动器方案
目录舵机原理简介结构组成工作原理与性能指标角度伺服力矩伺服 查看详情
ros从入门到精通系列ros系统整体架构详解(上)
目录一、理解ROS文件系统级1.1 Catkin编译系统1.1.1Catkin特点1.1.2Catkin编译原理 查看详情
hbase入门修行基础篇
HBase入门修行基础篇 HBase是一个分布式的、面向列的开源数据库,该技术来源于FayChang所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(FileSystem)所提供的分布式数据存储一... 查看详情
《java从入门到放弃》javase篇:程序结构
程序的结构一般分为三种:顺序结构。选择结构。循环结构。 一、顺序结构:这个不用多说吧,跟我们平时写文章的顺序一样,从上往下。 二、选择结构:从名字就能看出,要选择嘛,到底是要漂亮滴妹子,还是要有钱... 查看详情