欢迎来到 临沂市某某旅行用品制造厂
全国咨询热线:020-123456789
联系我们

地址:联系地址联系地址联系地址

电话:020-123456789

传真:020-123456789

邮箱:admin@aa.com

新闻中心
python ROS2 部署 兼容ROS1
  来源:临沂市某某旅行用品制造厂  更新时间:2024-05-09 07:15:25

python ROS2 部署 兼容ROS1

python ROS2 部署 兼容ROS1

实验平台 ubuntu18.04

ubuntu18.04支持的ROS2版本是eloquent

之前我们部署了ros1 现在我们在ros1的基础上部署ros2并实现可以自由切换。

ROS2 eloquent

  • 添加安装源

sudo apt updatensudo apt install curl gnupg2 lsb-releasencurl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

如果出错:

wget http://packages.ros.org/ros.key -O - | sudo apt-key add -

  • 安装ros2

sudo apt updatensudo apt install ros-eloquent-desktop

  • 加入环境自启动

echo "source /opt/ros/eloquent/setup.bash" >> ~/.bashrcnn

  • 安装ros2 bag

sudo apt-get install ros-eloquent-ros2bag nsudo apt-get install ros-eloquent-rosbag2-converter-default-pluginsnsudo apt-get install ros-eloquent-rosbag2-storage-default-plugins

  • 安装其他依赖

sudo apt install python3-argcomplete

我的署兼python 代码的环境都是使用miniconda构建的,具体的署兼构建,我会再写一个文档加以补充 。署兼

ROS1与ROS2自由切换

如图所示

输入1 进入ROS1 输入2进入ROS2

python ROS2 部署 兼容ROS1


python ROS2 部署 兼容ROS1

实现方法 修改~/.bashrc

python ROS2 部署 兼容ROS1

当然我这里也指定了进入了miniconda 的环境

脚本是顺序进行的,这个指令尽量放入到最下面。署兼

脚本如下 :

echo "ros melodic(1) or ros2 eloquent(2)?署兼"nread editionnif [ "$edition" -eq "1" ];thenn conda activate fusionn source /opt/ros/melodic/setup.bashn source /home/xia/catkin_workspace/install/setup.bash --extendn echo "ros1 is done"nelsen #DDS ROS2 relatedn conda activate ros2_envn source /opt/ros/eloquent/setup.bashn source /home/xia/HYworkspace/athena/install/setup.bashn echo "ros2 is done"nfi

有需要的修改的,可以自定义修改 ,署兼主要的署兼逻辑就是在自启动里添加选择 。

python 开发ros2的署兼基础代码

# 初始化rclpynrclpy.init(args=None) n# 创建话题nnode.create_publisher(String,"talker_topic",10)n# 构建节点nnode = Node('*')n# 订阅消息nnode.create_subscription(ParkingInfoList,subscriber_topic_name['call_back_parking'], call_back_parking,10)n# 运行节点nrclpy.spin(node) n# 关闭rclpy nrclpy.shutdown()

ros1 python 对比ros2 python


ROS1

ROS2

初始化

rclpy.init(args=None)

创建话题

rospy.Subscriber()

node.create_publisher()

构建节点

rospy.init_node()

node = Node('*')

订阅消息

rospy.Subscriber()

node.create_subscription()

运行节点

rospy.spin()

rclpy.spin(node)

后面我们继续进行ROS2数据的发出与接收,敬请期待。署兼

署兼

友情链接智能手表可以监测和追踪用户的哪些健康指标?你们玩游戏是喜欢一个人还是有一群不认识的游戏友?蜗牛视频下载2022最新版本摩尔庄园刺头鱼怎么钓 在哪里可以钓刺头鱼原创LOL史上最强新英雄诞生:52%胜率上线就是T0级,设计师:紧急削弱太史慈技能与天赋解析梦幻西游手游怎么合宝宝 合宝宝方法技巧攻略英雄联盟手游内测英雄有哪些 内测英雄一览猫眼石和虎晴石区别 猫眼石和虎眼石哪个价值高dnf手游打哪里深渊容易出货,打哪里的深渊容易爆SS布甲板甲幻化:漂亮幻化遇上美丽风景《云顶之弈》毒雷召唤阵容怎么玩 毒雷召唤流运营技巧详解《魔兽世界》怀旧服第一欧皇,猜猜看他包里的坐骑和装备!《我的世界》雪原种子指令大全汇总分享DNF攻略:增幅活动11不碎是否值得参与,高科技增幅活动攻略《LOL》2021无限火力豹女装备怎么搭配 2021无限火力豹女装备搭配攻略《原神》荒海水下探索解谜攻略有哪些高效的复盘方法?火炬之光:无限火炬之光2控制台代码套装武器秘籍一览-火炬之光2控制台代码指令最新2023抖音地下城割草无限旋转黑圣经怎么合成暗黑3材料速刷列表 暗黑破坏神3怎么刷装备守望先锋巅峰不再人气下降 究竟为何?(组图)常见西幻文世界观基础设定有哪些?好用的安利系列 篇三:自制专属电视台 告别IPTV和电视APP2022王者荣耀限定皮肤返场名单dnf8.31数字解密答案_DNF8月30日数字解密答案战锤秘史 | 小说《荷鲁斯之爪》说书(下)关于猫眼石及拥有猫眼效应的宝石介绍(下)物品的作文梦幻西游百晓任务怎么做(梦幻西游百晓任务完成攻略)真实手动挡停车场无限金币版(Car Parking) 4.8.16.5[单机修改]7.5分黄忠开局就比别人多两件装备,你们知不知道呢?学会黄忠可上王者巫师之怒 牧师经验加点PK总结及汇总贴 赫奇帕奇和斯莱特林哪个学院好dnf右上角的视频直播怎么关闭?dnf公共频道在哪抖音地下城割草无限旋转黑圣经怎么合成正在阅读:魔兽世界怀旧服 猎人宝宝学习技能方法【详解】魔兽世界怀旧服 猎人宝宝学习技能方法【详解】智伴优学下载《朝元图》人物解读(二十九)丨天罡大圣无尽之剑2完美招架完美格挡操作攻略
联系我们

地址:联系地址联系地址联系地址

电话:020-123456789

传真:020-123456789

邮箱:admin@aa.com

0.1588

Copyright © 2024 Powered by 临沂市某某旅行用品制造厂   sitemap