学习《ROS2机器人开发从入门到实践》Passage1


前言

这是我第一次接触机器人开发,起因是一个研究生朋友正在学这块,而我又恰好感兴趣,因此我在网上寻找资源,刚好找到了《ROS2机器人开发从入门到实践》系列高质量教程,便因此开始我的学习之旅。这里也由衷感谢恩师鱼香ROS(fishros),本人写此文章以记录我的学习过程,他人可借鉴参考,有误请指正!


一、ROS是什么?

ROS 是一个适用于机器人开发的开源操作系统,当然区别于传统的Windows/Linux操作系统,毕竟它依赖于底层操作系统,本人认为可以把它理解为数据库管理系统同层次的一种操作系统。ROS感觉就像是网线,用来实现进程与进程之间的通信。

二、Linux常用命令

1.gedit命令使用

gedit命令用来打开一个文件,使用Windows熟悉的文本编辑器来打开一个文件。首先打开Linux终端,在终端输入

gedit hello.txt

在这里插入图片描述

按下回车键后就可以打开一个文本编辑器,输入文本
在这里插入图片描述

保存后关闭文本编辑器,回到终端,输入ls,发现多了hello.txt的文件
在这里插入图片描述使用cat命令查看文件内容
在这里插入图片描述

2.删除文件

我们可以使用rm命令来删除文件或文件夹,使用rm --help命令来查看rm的使用方法

rm --help

在这里插入图片描述输入rm hello.txt删除文件
在这里插入图片描述

3.创建一个a.sh文件

gedit a.sh

在文本编辑器中输入内容如下
在这里插入图片描述
保存内容后关闭文本编辑器,使用cat命令查看内容
在这里插入图片描述

4.source命令执行文件

在这里插入图片描述

三、终端窗口执行文件

1.使用ls -a命令查看所有文件

ls -a

在这里插入图片描述
可以看到一个.bashrc的文件,这个文件是每次终端打开时都会先执行的一个文件

2.修改.bashrc文件内容

在终端输入,打开文件

sudo gedit .bashrc

文件.bashrc

.
在最后一行输入如下内容
在这里插入图片描述
保存后关闭文本编辑器,关闭终端后重新打开终端
在这里插入图片描述

四、编写第一个python文件

1.编写python文件

在终端输入code打开vscode

code

在这里插入图片描述点击文件夹工作区,右键新建文件,将文件命名如下:

在这里插入图片描述
编写python文件后保存文件

print('Hello World!')

2.执行hello_world.py

在vscode中打开集成终端
在这里插入图片描述在集成终端中输入

python3 hello_world.py

执行命令结果如下
在这里插入图片描述

输入./hello_world.py显示权限不够,这是因为当前文件没有可执行的权限
在这里插入图片描述

因此我们要给该文件可执行权限,在终端输入

chmod a+x hello_world.py

然后使用ls命令查看,发现该python文件变成绿色,说明该文件已经有可执行
权限。在Linux中,蓝色表示文件夹,绿色表示可执行文件,白色表示为普通文件。在这里插入图片描述

这时我们在终端输入,会显示python3的路径

whereis python3

在这里插入图片描述接下来将python文件修改为

#!/usr/bin/python3
print('Hello World!')

然后在终端输入 ./hello_world.py 执行文件
在这里插入图片描述

3.恢复python文件为普通文件

在终端输入

chmod a-x hello_world.py

在这里插入图片描述发现python文件变成白色,说明已恢复成普通文件

五、编写第一个C++文件

1.编写C++文件

在vscode中新建一个C++文件

#include <iostream>
using namespace std;
int main(){
    cout<<"Hello World!"<<endl;
    return 0;
}

2.编译并执行hello_world.cpp

在集成终端中输入

g++ hello_world.cpp

在这里插入图片描述
可以发现多了一个绿色的可执行文件(a.out),该文件为C++文件经g++编译器编译后形成的可执行文件
在终端输入

./a.out

执行文件
在这里插入图片描述
到此,说明C++文件已成功编译运行!

参考

小鱼的一键安装系列
ubuntu安装ROS2

如有其他问题,或者发现文章有错误,请在评论区留言
Keep learning!

### ROS 2机器人开发教程推荐 对于希望从零基础开始深入理解并掌握ROS 2机器人开发的技术人员而言,《ROS2机器人开发入门实践》是一本非常有价值的参考资料[^1]。这本书籍不仅涵盖了基础知识介绍,还提供了丰富的实例项目指导。 #### 基础概念讲解 书中开篇即对ROS进行了定义:ROS是一种针对机器人的操作系统,它并非传统意义上的操作系统,而是提供了一系列软件库和服务,旨在简化机器人应用的创建过程。通过阅读这部分内容,读者可以建立起对ROS基本架构的理解。 #### 学习路径规划 为了帮助初学者更好地构建自己的知识体系,该书按照循序渐进的原则安排章节顺序: - **第一章至第三章** 主要介绍了安装配置环境以及核心概念; - **第四章以后的内容** 则逐步引入更复杂的主题,如传感器数据处理、运动控制算法实现等实际应用场景下的编程技巧; 此外,在每一节课程结束后都会附带练习题目和思考题,鼓励学习者动手操作来巩固所学知识点。 #### 实战案例分享 除了理论教学外,《ROS2机器人开发入门实践》特别注重实战能力培养。全书穿插多个完整的工程项目解析,让读者能够跟随作者的脚步完成一个个具体的目标,从而积累宝贵的实践经验。 ```python import rclpy from rclpy.node import Node class MinimalPublisher(Node): def __init__(self): super().__init__('minimal_publisher') self.publisher_ = self.create_publisher(String, 'topic', 10) timer_period = 0.5 # seconds self.timer = self.create_timer(timer_period, self.timer_callback) self.i = 0 def main(args=None): rclpy.init(args=args) minimal_publisher = MinimalPublisher() rclpy.spin(minimal_publisher) minimal_publisher.destroy_node() rclpy.shutdown() if __name__ == '__main__': main() ``` 这段简单的Python代码展示了如何利用rclpy包快速搭建一个发布字符串消息的小型节点程序,这正是新手进入ROS世界时不可或缺的基础技能之一。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值