实验2 蓝桥ROS1架构与概念 适用kinetic/melodic/noetic

举报
zhangrelay 发表于 2022/05/13 23:42:46 2022/05/13
【摘要】 需要先完成实验1,不要直接看本实验。 要求: ROS1文件系统级、计算图级、社区级、创建功能包并实现功能等。 环境: www.lanqiao.cn/courses/854 记录: 下载课程介绍中的案例源程序 wget https://labfile.oss.aliyuncs.com/courses/854/rosdem...

需要先完成实验1,不要直接看本实验。


要求:

ROS1文件系统级、计算图级、社区级、创建功能包并实现功能等。

环境:

www.lanqiao.cn/courses/854


记录:

下载课程介绍中的案例源程序

wget https://labfile.oss.aliyuncs.com/courses/854/rosdemos_ws.zip

解压缩

unzip -h 不清楚就查帮助文档

unzip rosdemos_ws.zip

文件系统

以turtlesim源码为例:

复制到:

 

使用catkin_make编译。

生成devel和build:

 

build:编译

devel:开发

src:源码

src-build-devel。

可执行文件在devel中,需要导入devel/setup.zsh。

计算图级

ROS1程序节点之间的关联性:

分别在不同的终端输入:

第一个(启动主节点):roscore 

第二个(可视化小乌龟节点):rosrun turtlesim turtlesim_node 

第三个(遥控小乌龟节点):rosrun turtlesim turtle_teleop_key

第四个(图形化工具查看上述节点关系):rqt_graph

社区级

打开网站:  wiki.ros.org

进行详细了解

创建功能包并实现功能。

默认效果

以turtlesim修改为例:


  
  1. #define DEFAULT_BG_R 0x45
  2. #define DEFAULT_BG_G 0x56
  3. #define DEFAULT_BG_B 0xff
  4. namespace turtlesim
  5. {
  6. TurtleFrame::TurtleFrame(QWidget* parent, Qt::WindowFlags f)
  7. : QFrame(parent, f)
  8. , path_image_(500, 500, QImage::Format_ARGB32)
  9. , path_painter_(&path_image_)
  10. , frame_count_(0)
  11. , id_counter_(0)
  12. {
  13. setFixedSize(500, 500);
  14. setWindowTitle("TurtleSim");

修改为:


  
  1. #define DEFAULT_BG_R 0x66
  2. #define DEFAULT_BG_G 0x44
  3. #define DEFAULT_BG_B 0x22
  4. namespace turtlesim
  5. {
  6. TurtleFrame::TurtleFrame(QWidget* parent, Qt::WindowFlags f)
  7. : QFrame(parent, f)
  8. , path_image_(666, 666, QImage::Format_ARGB32)
  9. , path_painter_(&path_image_)
  10. , frame_count_(0)
  11. , id_counter_(0)
  12. {
  13. setFixedSize(666, 666);
  14. setWindowTitle("TurtleSim-ID-666666");

 

注意:ID需要修改为对应学号!

依据实际操作完成。 


 

思考:

1. 编译后代码,需要更新环境,否则系统不识别

使用 source devel/setup.zsh

2. 修改源码,可以定制化相关功能

阅读开源程序源代码,并能掌握部分代码修改和定制。


文章来源: zhangrelay.blog.csdn.net,作者:zhangrelay,版权归原作者所有,如需转载,请联系作者。

原文链接:zhangrelay.blog.csdn.net/article/details/124744927

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。