欢迎来到 陕西某某食品机械维修网点
全国咨询热线:020-123456789
联系我们

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

电话:020-123456789

传真:020-123456789

邮箱:admin@aa.com

新闻中心
python ROS2 部署 兼容ROS1
  来源:陕西某某食品机械维修网点  更新时间:2024-05-06 00:57:34

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数据的发出与接收,敬请期待 。署兼

署兼

友情链接阴阳师御魂攻略 御魂特点及搭配分析魔兽世界星界财团军需官在什么在哪里 星界财团声望速冲技巧攻略三国杀单版:第一期 单1 吕布&貂蝉/ 大乔&小乔lol手游超燃测试资格分享方法英雄联盟s13最强妖姬出装攻略是什么?英雄联盟诡术妖姬怎么出装?DNF魔力结晶怎么弄-魔力结晶制作图获得途径及用途DNF小号怎么速成 DNF小号速成方法介绍魔兽世界裁缝1到450升级详解-魔兽世界裁缝1到450升级攻略介绍《DNF》男鬼剑金秋版本时装外观一览S17赛季大数据整合我的世界矿代码大全,矿地村庄种子代码大全lol英雄进游戏界面黑屏(玩lol电脑黑屏怎么解决)dnf混沌魔灵2024毕业装备推荐暗夜使者刺客加点推荐 地下城90级刺客刷图教程 2023推荐英雄联盟手游卢锡安怎么玩 LOL手游圣枪游侠攻略DNF宠物幻化宠物选择推荐 DNF宠物幻化选什么宠物好大型网游排名前十名有哪些2023 受欢迎的大型网络游戏下载推荐DNF起源版本掠天之翼最新技能加点方案图攻略Frida 安卓逆向破解辅助Hook第39章 攻略遗迹(上)DNF:球手套在史诗改版后的伤害加成分析,它是否在悄悄地变强?tbc魔兽lr天赋攻略 猎人天赋怎么点《洛克王国》若叶蝶技能表图鉴意志力背后的秘密海子诗选2021年8月9日游戏新闻英雄联盟S11石头人天赋推荐 LOL石头人S11天赋怎么点dnf二级密码怎么设置【三国杀】装备牌“最全”欣赏与介绍(坐骑宝物篇)珍惜时间年龄计算器寻仙手游完美宝石[一键安装] 魔兽世界335,80级【巫妖王之怒】单机,更新至4.0.4地下城斩魂魔道技能加点攻略( dnf魔道二觉刷图教程)DNF:无限门票乘以2!周年庆隐藏福利挖掘,“删除角色”有惊喜仙剑奇侠传dos版魔兽世界空的美酒节酒杯怎么获取?空的美酒节酒杯获取方法介绍DNF手游泰拉石武器如何获得 泰拉石武器获取方法介绍暗夜使者刺客加点推荐 地下城90级刺客刷图教程 2023推荐广州话中的“鬼”和“神”LOL外服最佳选择:2023年东南亚直营服
联系我们

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

电话:020-123456789

传真:020-123456789

邮箱:admin@aa.com

0.213

Copyright © 2024 Powered by 陕西某某食品机械维修网点   sitemap