| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> ROS教程 -> 正文阅读 |
|
[系统运维]ROS教程 |
目录 一、ROS安装1、安装虚拟机2、安装Ubuntu3、安装ROS
?打开“软件和更新”对话框后,按下图配置? ?
快捷键Ctrl?+?Alt?+?T打开一个终端 来自国内清华的安装源:
回车后需要输入管理员密码(注:此时输入密码时不会显示密码长度)
apt是用于从互联网仓库搜索、安装、升级、卸载软件或操作系统的工具。
这里安装的是完整桌面版(Desktop-Full,官网推荐):除了桌面版的全部组件外,还包括2D/3D模拟器(simulator)和2D/3D 感知包(perception package)。
这里需要长时间等待,由于网络原因,导致连接超时,可能会安装失败,可以多次重复调用?更新和?安装?命令
二、话题通信概念:以发布订阅的方式实现不同节点之间数据交互的通信模式,适用于不断更新的数据传输相关的应用场景 1、理论模型:
管理者负责保管发布者和订阅者注册的信息,并匹配话题相同的发布者和订阅者,帮助其建立连接,连接建立后,订阅者可以接收到发布者发布的消息。 2、基本操作(python)需求:编写发布订阅实现,要求发布方以10HZ的频率发布文本消息,订阅方订阅消息并将消息内容打印输出。 流程:
CTRL+Alt+T打开命令行 输入mkdir -p 工作空间名/src
?进入工作空间
?此命令后会生成与src同级的devel和build文件夹
?
右击src,新建功能包(Create Catkin Package),输入功能包名字(此处是pub_sub) ?导入依赖
? ?
右击第一级src,创建文件夹srcipts,然后右击srcipts创建文件,取名后缀加上.py。 开始编写:
?右击scripts,点“在集成终端打开”
ll查看是否成功添加可执行权限
CTRL+/ 放开这段注释,并将my_python_script改为python文件名(此处为pub_p.py)
快捷键CTRL+shift+B,输入catkin_make:build进行编译 ctrl+Alt+T打开终端,输入roscore启动ros核心,另两个终端输入rosrun +包名 +python文件名
话题发布需求:编码实现乌龟运动控制,让小乌龟做圆周运动 分析:自定义控制节点,按照一定的逻辑发布消息 流程:
?
通过计算图查看话题为/turtle1/cmd_vel
? ?获取消息类型为geometry_msgs/Twist
然后获取消息格式
?linear为线速度,对于乌龟来说只用改x;angular为角速度,对于乌龟来说只用改z。
右击src,新建功能包(Create Catkin Package),输入功能包名字(此处是plumbing_test) 添加依赖:roscpp rospy std_msgs geometry_msgs
在plumbing_test下的scripts创建python文件,开始编写
右击scripts,点“在集成终端打开”
CTRL+/ 放开这段注释,并将my_python_script改为python文件名(此处为test01_pub_twist_p.py) 注:后面订阅方编辑也是此处
快捷键CTRL+shift+B,输入catkin_make:build进行编译 ?打开终端
? ? 话题订阅需求:控制乌龟运动,并实时打印当前乌龟的位姿 分析:控制乌龟运动,并通过ros命令来获取乌龟位姿发布的话题以及消息,编写订阅节点,订阅并打印乌龟位姿 流程:
在plumbing_test下的scripts创建python文件,开始编写
右击scripts,点“在集成终端打开”
同上发布方
快捷键CTRL+shift+B,输入catkin_make:build进行编译 打开终端
? 参考感谢:赵虚左老师的课《ROS理论与实践》 ?注:后面还会持续更新 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年4日历 | -2025/4/3 17:35:14- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |