ROS知识点总结
1、ROS功能包的目录下不能有中文
2、
WorkSpace --- 自定义的工作空间|--- build:编译空间,用于存放CMake和catkin的缓存信息、配置信息和其他中间文件。|--- devel:开发空间,用于存放编译后生成的目标文件,包括头文件、动态&静态链接库、可执行文件等。|--- src: 源码|-- package:功能包(ROS基本单元)包含多个节点、库与配置文件,包名所有字母小写,只能由字母、数字与下划线组成|-- CMakeLists.txt 配置编译规则,比如源文件、依赖项、目标文件|-- package.xml 包信息,比如:包名、版本、作者、依赖项...(以前版本是 manifest.xml)|-- scripts 存储python文件|-- src 存储C++源文件|-- include 头文件|-- msg 消息通信格式文件(话题通信,发送方---订阅方)|-- srv 服务通信格式文件(服务通信,服务端,客户端)|-- action 动作格式文件|-- launch 可一次性运行多个节点 (launch文件)|-- config 配置信息|-- CMakeLists.txt: 编译的基本配置
devel目录下:
include:存放C++编译生成的头文件,my_mag和my_msg2是自己创建的两个功能包
lib:存放C++生成的可执行文件,Python对应的依赖和可执行文件。
my_msg是自己创建的功能包名称,里面存放C++的可执行文件
python2.7里面存放python相关的文件,包括依赖项等。
3、catkin_make编译流程
首先去搜索src里面的每个功能包中是否有package.xml文件,如果有的话,就去执行该目录下的CMakeList.txt文件
4、ros搜索功能包的路径
在主目录下运行 gedit .bashrc
可见在执行source .bashrc的时候,会执行 /opt/ros/melodic/setup.bash,库的搜索路径为 /opt/ros/melodic目录下。
下面的ros_extern_package是自己创建的用来存放额外的功能包的目录
5、VScode中相关配置
c_cpp_properties.json
主要是设置C++程序库的搜索路径
{"configurations": [{"browse": {"databaseFilename": "","limitSymbolsToIncludedHeaders": true},"includePath": ["/home/dk/ros_extern_package/devel/include/**","/opt/ros/melodic/include/**","/home/dk/ros_extern_package/src/vision_opencv/cv_bridge/include/**","/home/dk/ros_extern_package/src/ddynamic_reconfigure/include/**","/home/dk/ros_extern_package/src/eigen_stl_containers/include/**","/home/dk/ros_extern_package/src/vision_opencv/image_geometry/include/**","/home/dk/ros_test/src/my_msg/include/**","/home/dk/ros_extern_package/src/realsense-ros/realsense2_camera/include/**","/home/dk/ros_extern_package/src/geometry2/tf2/include/**","/home/dk/ros_extern_package/src/geometry2/tf2_bullet/include/**","/home/dk/ros_extern_package/src/geometry2/tf2_eigen/include/**","/home/dk/ros_extern_package/src/geometry2/tf2_geometry_msgs/include/**","/home/dk/ros_extern_package/src/geometry2/tf2_kdl/include/**","/home/dk/ros_extern_package/src/geometry2/tf2_msgs/include/**","/home/dk/ros_extern_package/src/geometry2/tf2_ros/include/**","/home/dk/ros_extern_package/src/geometry2/tf2_sensor_msgs/include/**","/home/dk/ros_extern_package/src/usb_cam/include/**","/usr/include/**","/home/dk/ros_test/devel/include/**"],"name": "ROS","cppStandard": "c++17"}],"version": 4
launch.json
args参数可以进行设置
setting.json
可以设置python中import的搜索路径,字体大小,行间距等参数
{"python.autoComplete.extraPaths": ["/home/dk/ros_extern_package/devel/lib/python2.7/dist-packages","/opt/ros/melodic/lib/python2.7/dist-packages","/home/dk/ros_test/devel/lib/python2.7/dist-packages"],"python.analysis.extraPaths": ["/home/dk/ros_extern_package/devel/lib/python2.7/dist-packages","/opt/ros/melodic/lib/python2.7/dist-packages","/home/dk/ros_test/devel/lib/python2.7/dist-packages"],"editor.fontSize":18,"window.zoomLevel":0.8,"editor.lineHeight": 27,"python.pythonPath": "/usr/bin/python"
}
相关文章:

Effective Java:对于全部对象都通用的方法
前言: 读这本书第1条规则的时候就感觉到这是一本非常好的书。可以把我们的Java功底提升一个档次,我还是比較推荐的。这里我主要就关于覆盖equals、hashCode和toString方法来做一个笔记总结。希望可以与君共勉。 概述: 这一章主要是说明一些对…

HashSet中的add()方法( 一 )(详尽版)
让我们用例子来理解add()方法的底层代码吧,Let’s go: import java.util.HashSet;public class Test {public static void main(String[] args) {HashSet<String> names new HashSet<String>();names.add("Jim");//向HashMap集合…

Ansible03-管理变量、加密、事实
目录 一、管理变量 1.1、变量的基本用法 1.2、使用已注册变量捕获命令输出 二、管理加密 2.1、ansible-vault常用场景 三、管理事实 3.1、事实基本用法 3.2、创建自定义事实 3.3、魔法变量hostvars、group_names、groups、inventory_hostname 一、管理变量 1.1、变量…

HashSet中的add()方法( 零 )(详尽版)
我们知道在使用HashSet集合时,也就是在用HashMap集合,这是因为HashSet的底层是HashMap, public HashSet() {map new HashMap<>(); }在详述HashSet中的add()方法之前,我们要知道HashMap中的hash,因为在add()的底…

layui上传图片接口
mvc中 前台调用接口 url:"../upload/uploadfiles/" 然后开始接口 代码: string a ""; try { HttpFileCollection file context.Request.Files;//获取选中的文件 for (int i 0; i < file.Count; i) { string cFileName Path.G…

shell与 .sh文件与 .bash文件
一、shell和bash shell是LInux系统下的解释器,类似于windows下的cmd。shell对用户输入到窗口中的命令行进行解释,输入到内核。 bash同样是Linux系统下的解释器,是bash的改进版。 二、.sh文件与.bash文件 .sh文件和.bash文件都是脚本文件&a…

php session存入redis
一、 安装phpredis扩展php连接redis需要安装phpredis扩展。下载地址:https://github.com/phpredis/phpredis/releases,选用相应版本。笔者用的是php5.6.29,下载了phpredis-3.0.0安装出了问题,于是换成phpredis-2.2.8,正…

Ansible04-任务控制
目录 一、循环 二、条件 三、handlers 四、失败的处理 一、循环 使用 loop 关键字对一组项目迭代任务,循环变量 item 保存每个迭代过程中使用的值。 [studentworkstation ansible]$ vim loop.yml --- - name: Test loophosts: devgather_facts: novars:num:- …

HashSet中的add()方法( 三 )(详尽版)
上接HashSet中的add()方法( 二 )(详尽版) ,前两篇说的是泛型为String类的add()方法的具体执行过程,此后三篇说说泛型为自定义类的add()方法的具体执行过程: 首先让我们来自定义一个学生类: public class …

mono修改配置
当前mono安装目录为:/home/mono,安装成功后修改配置需进入这个路径: cd /home/mono 1.修改TcpBinaryFrameManager.cs文件 cd /home/mono/mono-2.10.8 vim mcs/class/System.ServiceModel/System.ServiceModel.Channels.NetTcp/TcpBinaryFrameManager.cs …

[Java in NetBeans] Lesson 01. Java Programming Basics
这个课程的参考视频在youtube。 主要学到的知识点有: Create new project, choose Java Application.one .jar file/ package(.jar name with the same as package), one package can contains mutiple .java files.Comment mutiple lines by using "/* */&quo…

ubuntu中常用指令
常用指令 清空命令行 CtrlL Conda 创建虚拟环境 conda create -n 虚拟环境名称 python3.7.10 查看虚拟环境列表 conda info --envs 激活虚拟环境 conda activate 虚拟环境名 退出虚拟环境 conda deactivate 虚拟环境名称 安装功能包 conda install 功能包名称 卸载功能包 con…

Ansible05-部署文件
目录 一、部署文件的常用模块 二、使用jinja2文件部署自定义文件 一、部署文件的常用模块 部署文件常用模块有 file 创建、删除文件或目录,修改selinux上下文。copy 复制文件到受控节点上,也可以直接在受控结点上创建文件。fetch 从受控结点获取文件…

HashSet中的add()方法( 四 )(详尽版)
上接 HashSet中的add()方法( 三 )(详尽版) ,我们重写一下Student类中的hashCode()方法来看看是否还能不能添加重复的学号了, 在学生类中重写hashCode()方法: public class Student {private String id;public Studen…

Laravel框架中的event事件操作
有时候当我们单纯的看 Laravel 手册的时候会有一些疑惑,比如说系统服务下的授权和事件,这些功能服务的应用场景是什么,其实如果没有经历过一定的开发经验有这些疑惑是很正常的事情,但是当我们在工作中多加思考会发现有时候这些服务…

yolact_ros出坑记录
教程:https://github.com/Eruvae/yolact_ros 下载通信中的话题msg 创建虚拟环境 conda create -n yolact python3.7.10 conda activate yolact 配置yolact环境 https://github.com/dbolya/yolact 运行效果如下所示: 在虚拟环境中安装需要的包 conda …

堡垒机高危命令正则表达式
堡垒机可以设置高危命令阻断,防止操作人员误操作造成删库跑路。但是什么是高危命令,需要管理员通过配置正则表达式,进行命令匹配。 今天2021年8月6日先匹配最常见的删库跑路命令 rm -rf / ,以下几种表达式联合起来就可以阻断这类…

实验吧 速度爆破
题目链接:http://ctf5.shiyanbar.com/ppc/sd.php 这道题很简单呀,一点斜的歪的都没有,只是我一个小菜鸟在完成时会遇到一些小麻烦,几度想去看wp,最后还是忍住了。。。 思路很简单 1、 先抓取页面里生成的hash值 2、 循…

返回一个二维整数数组中的最大的子数组和
一。题目: 1、输入一个二维整形数组,数组里有正数有负数。 2、二维数组中连续的一个子矩阵组成一个子数组。 3、求所有子数组的和的最大值。 二.设计思想: .定义一个二维数组,使用二重循环对其进行赋值,对其进行遍历&a…

HashSet中的add()方法( 五 )(详尽版)
上接 HashSet中的add()方法( 四 )(详尽版) ,我们再重写一下equals()方法来看看是否可以不能存入相同的id: 在学生类中再重写equals()方法: public class Student {private String id;public Student(String id) {thi…

ROS话题通信中创建自定义数据类型的两种方式
一、在同一个功能包下创建.msg文件 1、在功能包目录下创建msg文件夹 2、在文件夹中创建.msg文件 3、在该功能包的package.xml文件中加入: <build_depend>message_generation</build_depend><exec_depend>message_runtime</exec_depend>4、在…

2542513 - AS Java fails to start - Initialization of destination UMEBackendConnection failed
今天发现SAP As Java 开发机无法启动,根据 Note 2542513 处理该问题并记录。 今天发现SAP EPBPM服务器不能正常启动,jstart.exe进程显示 some process running 的黄灯状态。重启也不管用。到SAP官网 https://wiki.scn.sap.com/wiki/display/ASJAVA/%28J…

WordCount扩展与优化
合作者:201631062327,201631062128码云地址:https://gitee.com/LIUJIA6/WordCount3 一:项目说明 本次项目是在上次作业WorldCount的基础上,利用结对编程的思想,完成对WorldCount项目的功能扩展 -s 递归处理…

进制转换 位运算(包括补码、原码、反码、~0等一些零碎东西一次说清)
我发现网上关于标题上的内容介绍的都很零碎,因此为了方便查找、也为了本人对这一部分的充分理解,就想着写一篇这样的博客(我分成了几个部分,以便查找): 一、进制转换 让我们先来看看各个进制的定义&#…

第三方物流是什么
第三方物流是指生产经营企业为集中精力搞好主业,把原来属于自己处理的物流活动,以合同方式委托给专业物流服务企业,同时通过信息系统与物流企业保持密切联系,以达到对物流全程管理的控制的一种物流运作与管理方式。 第三方物流…

ROS中cv_bridge如何用python3进行编译
最近遇到了个问题,cv_bridge实现了opencv和ros中图像数据类型的转换,但ros-melodic默认python版本是python2。在配置yolact环境的时候,要求是python3。 这就导致在ros自带的cv_bridge是python2版本,想使用python3的话需要自己去编…

Ansible06-管理roles
目录 一、roles的结构 二、RHEL系统roles 三、创建角色 四、部署角色 随着 playbook 的增多,有很多代码重用的机会。ansible 提供了一种方式——roles,只需将 roles 从一个项目复制到另一个项目,然后用 play 调用即可实现代码重用。这里的…

用Java中的HashSet写一个学生管理系统(添加、删除、修改、查询学生信息)
不废话,上代码: 先创建一个Student类: public class Student {private String id;private String name;private String mobile;private String address;public String getId() {return id;}public void setId(String id) {this.id id;}pub…

[BZOJ 2054]疯狂的馒头(并查集)
Description CQF十分喜欢吃馒头。兴奋之下他一下子买了N 个馒头请所有认识他的人吃。 但是CQF不喜欢白色,喜欢红色、黄色、绿色等鲜艳的颜色。于是他把所有白色的馒头排成一列。然后进行M 次染色操作。每个染色操作都是用一个神奇的刷子把连续的多个馒头染成特定的某…

RealSenseD435与ORB-SLAM2实现稠密建图
一、RealSenseD435介绍 RealSenseD435是一款结构光相机,使用左右目相机和红外光实现测距。有效测距范围为0.2~10m 二、ORBSLAM2_with_pointcloud_map的安装 git clone https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map.gitclone代码,无法…