1.在ubuntu条件下,tab是有用的,但是安装ros的tab属于无效按键。则需要更改镜像源来,更改为清华园之后就可以用了,至于为什么我也不知道。
2.
ros2 命令行和linux相似
但是所有的命令行全部集中在某一个命令行中
对于小乌龟来说:
topic话题可以看话题的数据
node 查看终端
ros2 bag 里面有录制小海龟的路径
3.clone和vscode是属于一个对应的东西
4.vim和gedit是属于一样的东西
古月居五章视频 :
安装了一系列的插件
6.A)流程
形成空间,有了代码,编译空间(colcon build,然后形成完整的工作空间),配置环境变量(执行一个setup.sh文件就可以在install中,source install/local_setup.sh)这里的目的是属于让系统知道需要的文件在哪里(也可以手动将这个命令放入电脑主目录的bachrc中,从而使得系统每一次都自行运动),运行功能
B)
src代码空间(唯一的常用)
install安装空间
build编译空间
log日志空间
一般来讲是需要src属于自己构建,其余的均可以用编译器合成编译
具体操作不会,到时候看古月居31将的6在9:10分钟内
(环境配置)也可以将setup.sh放在主目录下(隐藏文brsh中)
C)功能包
ros2 pkg creat–创建功能包 包内存在 package.xml和CMakellists.txt
古月居有着明确的链接可以学习,放在了视频最后。
此外每一个具体执行的py文件任然需要将其放到setup.py文件中
7***.ros的实际运行问题***
ros系统的功能是将不同的电脑进行管理
不同的进程就是不同节点,独立运行不同的文件,可以通过节点名称进行管理
节点编程问题:
编程接口初始化,(python或者c对于接口的初始化)
创建节点初始化 ,python还需要对但对setup进行控制
实现节点功能 ,这里就是属于具体的功能
销毁节点并且关闭接口
class和def的区别:def属于函数不需要初始化,定义后可以直接使用,然而class是定义一个类,在使用之前需要进行一个初始化定义,并且应用的时候需要具体到内部的具体函数。
但是我不理解为啥在当前目录下直接跑程序是不可以的,只能回到工作室根目录下运行才行,这里很重要,home或者某一个文件都不可以,只有在工作总空间那个位置才行。
这里用到了opencv的阈值处理,这里单纯涉及了opencv的算法
8.话题作用:
话题是沟通各个节点;属于节点传送数据的桥梁。
节点介绍:遥感节点,运动节点,图像节点,设置节点,监控节点。
这里是真的属于傻der问题,这里准确来说完全可以放弃了、
准确来说这里的订阅者和发布者根本的链接途径书用话题这个(创建的时候属于第二个话题)
话题中所用的打开摄像头好像和数据中的不太一样
话题通信*
ros的目的是增加不同结构之间的复用性,所以用了视频8,23.32位置的三个指令进行配置,可以通用指令
topic list 看发布 info用来看发布信息 bw用来看带宽
rqt_gragh用来查看节点的传输情况
9## 通讯方式,你问我答,servece模式
初始化接口
初始化节点
创建服务器
通过回调函数服务
反馈结果
销毁节点结束
通信方式可以分为三种:话题 服务和动作
但是动作的逻辑其实是基于话题和服务的方式来进行实现的。