分布式通信:多计算平台的任务分配

目录

[1. 分布式通信](#1. 分布式通信)

[1.1 树莓派配置流程​编辑](#1.1 树莓派配置流程编辑)

[1.2 树莓派和laptop处于同一网络​编辑](#1.2 树莓派和laptop处于同一网络编辑)

[1.3 laptop配置](#1.3 laptop配置)

[1.4 通信测试](#1.4 通信测试)

[1.5 分组通信](#1.5 分组通信)

[​编辑 1.6 分布式通信测试](#编辑 1.6 分布式通信测试)

​编辑参考资料

1. 分布式通信

机器人体积较小,采用树莓派作为控制器,实现传感器处理和电机驱动功能;视觉处理等应用功能在性能更好的laptop中处理,此外,在laptop监控传感器信息,远程控制机器人运动。

两台电脑通过ROS2实现通讯,分别配置好ROS2开发环境。

1.1 树莓派配置流程

1.2 树莓派和laptop处于同一网络

1.3 laptop配置

虚拟机配置的Ubuntu需要将网络设置为桥接模式,并桥接至所用网卡

1.4 通信测试

laptop远程控制树莓派

laptop本机ping通树莓派IP

1.5 分组通信

在设置ROS_DOMAIN_ID的值时并不是随意的,也是有一定约束的(网络通信的端口限制):

  1. 建议ROS_DOMAIN_ID的取值在[0,101] 之间,包含0和101;

  2. 每个域ID内的节点总数是有限制的,需要小于等于120个;

  3. 如果域ID为101,那么该域的节点总数需要小于等于54个。

    export ROS_DOMAIN_ID=<your_domain_id>
    export ROS_DOMAIN_ID=31

没有设置DOMAIN_ID时,默认的DOMAIN_ID=0,仅设置树莓派的DOMAIN_ID=31时,无法通信

1.6 分布式通信测试

同理,编写的话题、服务、参数、动作例程,也可以在不做修改的情况下分布式通信。

视觉识别例程测试

参考资料

古月居

相关推荐
Coder_Boy_5 小时前
Java高级_资深_架构岗 核心知识点——高并发模块(底层+实践+最佳实践)
java·开发语言·人工智能·spring boot·分布式·微服务·架构
tod1136 小时前
Redis 分布式锁进阶:从看门狗到 Redlock 的高可用实践
数据库·redis·分布式
闲人编程6 小时前
Celery分布式任务队列
redis·分布式·python·celery·任务队列·异步化
tod1138 小时前
Redis:从消息中间件到分布式核心
服务器·开发语言·redis·分布式
yangyanping2010817 小时前
系统监控Prometheus之三自定义埋点上报
分布式·架构·prometheus
万象.20 小时前
redis缓存和分布式锁
redis·分布式·缓存
听麟21 小时前
HarmonyOS 6.0+ 跨端会议助手APP开发实战:多设备接续与智能纪要全流程落地
分布式·深度学习·华为·区块链·wpf·harmonyos
Tadas-Gao1 天前
微服务注册中心选型深度分析:Eureka、Nacos与新一代替代方案
java·分布式·微服务·云原生·eureka·架构·系统架构
笨蛋不要掉眼泪1 天前
Spring Cloud Alibaba Sentinel 从入门到实战:微服务稳定性的守护者
分布式·微服务·云原生·架构·sentinel
无心水2 天前
【任务调度:数据库锁 + 线程池实战】1、多节点抢任务?SELECT FOR UPDATE SKIP LOCKED 才是真正的无锁调度神器
人工智能·分布式·后端·微服务·架构