0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

详解AGV小车和控制系统之间的通信过程

广州虹科电子 来源:广州虹科电子 作者:广州虹科电子 2022-05-13 11:11 次阅读

虹科IIoT虹科案例之AGV—— HiveMQ助力AGV小车与控制系统之间实现通信

前言

本案例主要描述AGV小车和控制系统之间的通信过程,通过VDA 5050标准接口、MQTT通信协议和虹科HiveMQ实现AGV小车和控制系统之间指令和状态信息的通信。VDA 5050是一种AGV小车与控制系统之间的标准通信接口,旨在简化AGV小车与现有控制系统的连接,以及允许在同一工作环境中并行操作来自不同制造商的AGV小车。

01虹科 · MQTT Broker 案例

应用挑战

MQTT已成为连接设备和AGV小车的物联网标准,而且市场上已经有许多MQTT解决方案。除了支持MQTT协议之外,运行安全稳定的系统还需要其他关键功能。在实现AGV小车与控制系统之间的通信时,面临的挑战主要有以下几点:

(1)MQTT解决方案支持所有MQTT 5功能,VDA规范中描述的几个与数据相关的特性可以通过MQTT 5完美描述。

(2)MQTT解决方案支持适合大多数应用场景的安全机制。

(3)为了在不停机的情况下支持系统更改,MQTT解决方案需要高度可用,并支持滚动升级和迁移场景。

(4)MQTT解决方案具有伸缩性,能够支持越来越多的AGV小车。

(5)MQTT Broker必须可扩展,可以通过“即插即用”集成其他系统或添加业务功能。

(6)数据格式由VDA指定,并应在发布前进行验证,以使解决方案更加强大和安全。

(7)在生产环境中,MQTT解决方案能够集中监控和跟踪特定客户端、主题或消息。

虹科 · MQTT Broker 案例

方案介绍

系统框架

下图所示是本案例的系统框架。在外部,HiveMQ Broker作为一个逻辑单元运行,在内部,则作为集群节点运行。HiveMQ Broker 使用用于身份验证和授权的安全扩展、用于JSON有效负载验证的扩展以及用于跟踪和监控的扩展。指标、事件日志以及其他日志信息以 JMX 格式提供,可以集中监控。

get?code=ZDQ0YmYyNjkwOTQ0NjdhYzA0ZTlhMWFiNmU4YmY3NGMsMTY1MjQxMDY2NDU3MA==

作为主要用例,控制系统(CS)客户端向AGV小车发送信息,并消费AGV小车的相关状态或可能的错误信息。控制系统(CS)的数据以基本配置和每辆AGV小车的设备配置形式提供,而且使用的JSON格式可以在JSON Scheme中定义。

方案简介

HiveMQ是一个企业级的MQTT Broker,专门为物联网应用场景的业务需求量身定制。HiveMQ企业版能够保证数据在物联网设备之间快速、高效和可靠的传输。此外,HiveMQ支持MQTT 3和MQTT 5,也支持混合版本的应用场景。同时,HiveMQ提供了一个免费的开源扩展SDK。

get?code=ZWViODMzZTZlNTM2NGJiMWJkNTNkNjM0MzdjZjNkZjIsMTY1MjQxMDY2NDU3MQ==

HiveMQ扩展框架提供了一个开放的API,开发人员可以创建适合其特定基础设施的自定义扩展,而且扩展框架可用于使用自定义业务逻辑来扩展HiveMQ,而且几乎可以将任何系统集成到HiveMQ。其主要性能如下:

稳定性:

HiveMQ中集群的设置使来自客户端的消息和数据均匀分布在所有节点上,集群中数据的复制应根据节点数量进行配置,而且所有数据至少复制一次。

可扩展性:

HiveMQ MQTT Broker集群由几个单独的HiveMQ节点组成。由于要处理的MQTT消息数量、保留消息、客户端连接率、排队消息以及其他可能导致单个代理过载的操作,每个节点在任何给定时间都可能经历不同的压力水平。

HiveMQ提供内置的集群过载保护,每个HiveMQ集群节点都能够降低来自MQTT客户端传入消息的速率,防止出现集群过载。这种机制显著提高了HiveMQ集群的弹性,如果HiveMQ集群遇到过载情况,单个MQTT客户端可能会受到限制。如果使用集群过载保护机制,HiveMQ能够从压力情况(行为不良的客户端或DDOS攻击)中恢复,而不会导致所有其他MQTT客户端的服务明显下降。

高性能:

HiveMQ是一个高度可扩展的企业级MQTT Broker,旨在实现最低的延迟和非常高的吞吐量。

兼容性:

HiveMQ可以安装在任何环境中,例如虚拟机,虚拟机上的Docker,亚马逊、Azure或谷歌等云环境,以及Linux系统的裸机。同时,它能够与Kubernetes等集群管理系统或 OpenShift等应用平台完美配合。

get?code=YTNhMjc5YTRhZTBkNDM2NjUzOTZjZmYzY2YwNGNlZTksMTY1MjQxMDY2NDU3MQ==

监控、日志记录、MQTT 跟踪:

HiveMQ提供一个控制中心来监控MQTT Broker行为并提供了一组基本指标。操作员还可以查看特定MQTT客户端的状态,并在特定客户端和Broker之间设置消息的跟踪记录,能够有效地对已部署的系统进行故障排除。

get?code=Y2ZkOWUxY2U3NmU2NDg2ZjUyNzQzOTg3ZjUxZTBkMjcsMTY1MjQxMDY2NDU3MQ==

HiveMQ日志系统使用标准日志框架,能够以细粒度的方式配置日志文件。所有与客户端相关的MQTT事件都记录在对应的事件日志文件中,而且HiveMQ日志可以流式传输到中央日志系统。

get?code=YjQxZTQ4NTI3MGQ0ZGUyMmFlZThjZjc3NGM4NDdkOTksMTY1MjQxMDY2NDU3MQ==

HiveMQ控制中心主要用于人工监控系统,尤其是MQTT消息吞吐量、MQTT消息丢失的特定错误类型和跟踪日志。同时,控制中心只能从受信任的IP访问,用户可以在企业安全扩展的使用范围内定义特定的访问角色。

get?code=NzcxYjkyY2M3MWE1MWEyYjZkMDA3MGI2OGNjNTYwODEsMTY1MjQxMDY2NDU3Mg==

企业安全扩展:

HiveMQ企业安全扩展可用于身份验证和授权,使用不同来源的外部身份验证和授权数据来对MQTT客户端进行身份验证和授权。

get?code=YzEwYTFlYmYwMmZiZDk2NDA2ZDhmNGIyYWE2YzQ2ZDgsMTY1MjQxMDY2NDU3Mg==

在 HiveMQ企业安全扩展中,用户可以定义领域以将其服务器划分为受保护的区域,每个区域可以拥有自己的身份验证和授权方案。主要功能如下:

①为用户名和密码、OAUTH 2.0 (JWT)、LDAP、SQL 数据库和 x.509 客户端证书提供了安全集成模式;

②可用于RBAC到HiveMQ控制中心;

③容易切换身份验证变体,因为不同的客户端的不同变体可以同时使用;

④身份验证机制可以不同于授权机制,例如,可以使用LDAP进行身份验证,并使用外部RBAC系统进行授权。

通信过程

在AGV小车指令和状态信息交换的应用场景下,主题结构如下所示。控制系统客户端使用“+”通配符模式订阅占位符,并且可以发布到每个AGV小车客户端的指令主题。AGV小车客户端只有自己主题路径的发布/订阅权限,该路径由接口名称、版本、制造商和序列号等关键信息指定。

get?code=ODE0YTQzYmM1MDA5MjIzNGEzYmYyY2Q2ZmNkYjIyZjAsMTY1MjQxMDY2NDU3Mg==

在指令和状态信息通信过程中,每个主题都从一个子主题开始,用动态占位符分隔不同的通信设备。子主题order和orderState用于信息交换,主题deviceState用于当AGV小车处于在线和离线状态时获取信息,以处理错误情况并在特定情况下初始化设备。

每个AGV小车订阅他们各自的指令主题,并发布信息到对应的指令状态主题,当AGV小车客户端消费指令信息并处理指令或部分指令后,必须将相应的指令状态发布到orderState主题上。同时,控制系统可以订阅所有AGV小车指令状态和设备状态主题以此获取AGV小车的相关信息。

get?code=Mzc2ZDNjMDgyNmZhODg4NmFmMzAxODM1NmMwOTcyOWIsMTY1MjQxMDY2NDU3Mw==

AGV小车客户端可以通过Broker或者客户端操作来断开连接。如果AGV小车客户端通过断开自身而脱机,该状态也应在控制系统中确定,而且AGV小车都应将状态为“OFF”的保留消息发送到deviceState主题。

为了从AGV小车获取设备状态,每个AGV小车客户端可以定义一个最后的遗嘱保留消息,并在连接期间设置“Will Publish”。如果AGV小车客户端下线,则向指定主题发送“Will”消息。同时,每个AGV小车客户端都可以向deviceState主题发布消息以此表明其在线状态。此外,使用MQTT 5可以在发送遗嘱消息时配置延迟,适用于设备短暂中断且没有影响的情况。而且也可以在Broker和客户端上配置Keepalive。

总结

03虹科 · MQTT Broker 案例

案例总结

实现AGV小车和控制系统之间的通讯所面临的挑战可以通过MQTT 5和HiveMQ来实现。HiveMQ能够提供运行安全稳定系统所需的关键功能,MQTT 5可以完美地描述特定格式及其验证等数据相关功能以及元数据的使用,而且HiveMQ支持混合场景中MQTT 5和MQTT 3客户端。

get?code=MTVjMWU2ODJkY2I4OTkzMjhmYjk0ZTNhZDU4ZDIzNWQsMTY1MjQxMDY2NDU3Mw==

此外,安全性是一个非常重要的关键特性,如果要将不同的制造商集成到一个控制系统中,则需要使用支持不同变体安全性的解决方案。HiveMQ企业安全扩展可以使用不同来源的外部身份验证和授权数据来对MQTT客户端进行身份验证和授权。

如果需要在不停机的情况下进行系统更改,则解决方案必须具有高度可用性,而且支持滚动升级和迁移方案。HiveMQ具有高度可扩展性,能够支持越来越多的AGV小车。同时,HiveMQ 能够提供一个控制中心,用于监视和跟踪生产环境中特定客户端、主题或消息。

get?code=NWMwNDdjZjNiYmJhOTUyMGIxOWYzM2FkYjhkOWQyYmEsMTY1MjQxMDY2NDU3Mw==

为了集成其他系统,例如中央日志系统或添加任何业务功能,可以通过扩展系统来扩展 HiveMQ,而且大量的开源解决方案和标准解决方案已经可用。在Open HiveMQ扩展API的帮助下,每个特定业务的解决方案都可以实现。将HiveMQ和MQTT 5结合起来实现VDA 5050用例将是一个完美的解决方案。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制系统
    +关注

    关注

    41

    文章

    6523

    浏览量

    110415
  • 通信
    +关注

    关注

    18

    文章

    5962

    浏览量

    135818
  • AGV小车
    +关注

    关注

    4

    文章

    156

    浏览量

    11081
收藏 人收藏

    评论

    相关推荐

    AGV读卡器在AGV自动搬运小车上应用方案

    控制器根据读取到的标签信息,控制小车做出相应的动作,从而实现AGV小车的调度系统功能、站点定位功
    的头像 发表于 10-12 17:33 190次阅读
    <b class='flag-5'>AGV</b>读卡器在<b class='flag-5'>AGV</b>自动搬运<b class='flag-5'>小车</b>上应用方案

    什么是AGV小车?有什么功能?适用于哪些场景?

    搭载不同的负载,实现物料在不同工位、仓库、生产线之间的自动搬运。这大大减少了人工搬运的工作量,提高了工作效率。 自动导航: AGV小车通过不同的导航方式(如磁性感应、激光感应、视觉感应、电磁感应、超声波感应等)实现自动导航
    的头像 发表于 10-12 11:10 442次阅读
    什么是<b class='flag-5'>AGV</b><b class='flag-5'>小车</b>?有什么功能?适用于哪些场景?

    应用于AGV小车的CAN模块简述

    搭配AGV(自动导引车)使用的CAN模块主要包括以下几种,这些模块在AGV小车与工控机或其他设备之间进行通信时起到关键作用。
    的头像 发表于 09-20 14:54 203次阅读

    解读 AGV 关键连接对物流自动化发展的意义

    行业引用AGV小车取代人工作业。         AGV小车通过搭载导航系统控制系统、传感器
    的头像 发表于 09-13 16:52 257次阅读
    解读 <b class='flag-5'>AGV</b> 关键连接对物流自动化发展的意义

    工控机在AGV小车中的关键应用,适用于AGV小车的研华工控机

    控制能力。今天苏州研讯电子科技有限公司就来简单介绍一下工控机在AGV小车中的关键应用,适用于AGV小车的 研华工控机 ,一起来看看吧! 工
    的头像 发表于 08-19 10:32 271次阅读
    工控机在<b class='flag-5'>AGV</b><b class='flag-5'>小车</b>中的关键应用,适用于<b class='flag-5'>AGV</b><b class='flag-5'>小车</b>的研华工控机

    AGV控制系统的应用方案:ARMxy系列控制

    随着ARM技术以及芯片加工工艺的迅猛发展, ARM工业计算机得到了越来越广泛的应用,尤其在工业智慧城市、智能设备以及工业自动化控制等领域。本文将为大家详细介绍ARM控制器在AGV控制系统
    的头像 发表于 07-11 15:01 438次阅读
    <b class='flag-5'>AGV</b><b class='flag-5'>控制系统</b>的应用方案:ARMxy系列<b class='flag-5'>控制</b>器

    AGV选型要点及步骤,保证企业选择的AGV小车更实用

    系统已离不开AGV小车了,但是如何选购适合自己的应用场景的AGV小车呢?AGV
    的头像 发表于 06-24 17:52 544次阅读
    <b class='flag-5'>AGV</b>选型要点及步骤,保证企业选择的<b class='flag-5'>AGV</b><b class='flag-5'>小车</b>更实用

    AGV小车使用避障雷达

    AGV(自动导引车)小车使用避障雷达是为了确保其在运行过程中的安全性和稳定性。避障雷达,如激光雷达或超声波雷达,能够实时检测并避免与障碍物发生碰撞。 AGV
    的头像 发表于 05-20 10:48 566次阅读

    AGV小车升降平台控制

    简介: 应用于控制AGV小车升降,推拉,勾取动作 应用场景: 升降装置结构,AGV小车升降推拉装置结构 1、产品介绍: 本产品是
    的头像 发表于 05-11 16:30 530次阅读
    <b class='flag-5'>AGV</b><b class='flag-5'>小车</b>升降平台<b class='flag-5'>控制</b>板

    AGV小车行驶过程中需要暂停时该如何做?

    广泛应用在汽车、制造、仓储物流行业,我们在使用过程中难免会遇到需要物流AGV小车停止的时候,这里就同大家分享些让AGV小车停止的正确方法。
    的头像 发表于 02-19 18:10 882次阅读
    <b class='flag-5'>AGV</b><b class='flag-5'>小车行驶过程</b>中需要暂停时该如何做?

    兆越双5.8G无缝漫游技术引领AGV智能仓储新升级

    上海兆越通讯技术有限公司通过无线漫游客户端和无线AP,完成导航定位系统、驱动控制系统,实现小车和管理平台之间控制服务器
    的头像 发表于 02-02 16:35 448次阅读
    兆越双5.8G无缝漫游技术引领<b class='flag-5'>AGV</b>智能仓储新升级

    控制系统之间如何实现时钟同步?

    控制系统之间如何实现时钟同步? 控制系统之间的时钟同步是确保不同系统之间的时钟保持一致的
    的头像 发表于 01-16 14:37 937次阅读

    自动导引车(AGV)控制系统的实现过程

    本文介绍自动导引车(AGV控制系统的实现过程,分为硬件搭建和软件设计两部分。
    的头像 发表于 01-16 11:02 973次阅读
    自动导引车(<b class='flag-5'>AGV</b>)<b class='flag-5'>控制系统</b>的实现<b class='flag-5'>过程</b>

    工业通信网关助力AGV小车实现智能管理

    通信网关发挥着重要设备。 工业通信网关作为数据传输通信的重要设备,使得AGV小车从“单机”走向“联网”,各种数据信息可以实时共享到
    的头像 发表于 01-02 11:11 426次阅读
    工业<b class='flag-5'>通信</b>网关助力<b class='flag-5'>AGV</b><b class='flag-5'>小车</b>实现智能管理

    工业4G路由器:实现AGV小车通信畅通的秘密武器

    AGV小车的主控制器通常是通过PLC来编程,由于AGV小车是一直处于实时移动状态的,中控室主控计算机采用线缆的方式与
    的头像 发表于 12-22 16:07 476次阅读