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

    文章

    5957

    浏览量

    108654
  • 通信
    +关注

    关注

    18

    文章

    5699

    浏览量

    134356
  • AGV小车
    +关注

    关注

    4

    文章

    121

    浏览量

    11003
收藏 人收藏

    评论

    相关推荐

    AGV小车PLC数据采集物联网解决方案

    随着工业4.0的兴起以及智能制造行业的快速发展,AGV(无人搬运车)在生产物流环节中的应用越来越普遍,逐渐成为了自动化生产线上的重要组成部分。然而,在AGV小车的实际使用过程中,由于各
    的头像 发表于 03-27 15:32 121次阅读
    <b class='flag-5'>AGV</b><b class='flag-5'>小车</b>PLC数据采集物联网解决方案

    SPC统计过程控制系统

    控制系统MES系统
    hfmes
    发布于 :2024年03月27日 09:00:26

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

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

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

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

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

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

    如何用S7-1200从零开始搭建一个完整AGV控制系统

    本文介绍自动导引车(AGV控制系统的实现过程,分为硬件搭建和软件设计两部分。
    的头像 发表于 01-16 11:02 287次阅读
    如何用S7-1200从零开始搭建一个完整<b class='flag-5'>AGV</b><b class='flag-5'>控制系统</b>

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

    通信网关发挥着重要设备。 工业通信网关作为数据传输通信的重要设备,使得AGV小车从“单机”走向“联网”,各种数据信息可以实时共享到
    的头像 发表于 01-02 11:11 179次阅读
    工业<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 198次阅读

    基于Internet的远程过程控制系统设计

    电子发烧友网站提供《基于Internet的远程过程控制系统设计.pdf》资料免费下载
    发表于 10-31 10:21 0次下载
    基于Internet的远程<b class='flag-5'>过程控制系统</b>设计

    求一种基于PLC的小车自动配料控制系统设计方案

    随着经济的发展和科技的进步,自动控制系统在工业生产中的应用越来越广泛,基于西门子PLC的自动控制系统获得了长足的发展与应用。利用PLC控制技术[1]、触摸屏组态技术[2]以及网络通信
    发表于 10-10 16:12 1182次阅读
    求一种基于PLC的<b class='flag-5'>小车</b>自动配料<b class='flag-5'>控制系统</b>设计方案

    AGV小车是如何和WMS系统对接

    AGV系统与万界星空科技云平台WMS系统的无缝对接,实现了企业生产物流和信息流的统一,对于提升企业生产过程的自动化水平具有至关重要的作用。
    的头像 发表于 10-05 16:53 322次阅读

    西门子PLC编程实例:运料小车控制系统

    前面和大家一起进行了西门子PLC的一些基础知识及编程元件的学习,下面和大家一起探讨一下具体应用程序的编写方法,我们以运料小车控制系统的编程方法为例进行讲解。
    的头像 发表于 08-14 10:51 2792次阅读
    西门子PLC编程实例:运料<b class='flag-5'>小车</b><b class='flag-5'>控制系统</b>

    智能化升级:科智立RFID AGV地标传感器助力AGV小车升级改造

    引言 在这个日新月异的信息化时代,各行各业都在不断进行升级改造,以求在激烈的市场竞争中立于不败之地。其中,智能化升级是提升企业核心竞争力的重要手段。本篇文章将以AGV小车的智能化升级为话题,深入探讨
    的头像 发表于 07-18 13:53 452次阅读
    智能化升级:科智立RFID <b class='flag-5'>AGV</b>地标传感器助力<b class='flag-5'>AGV</b><b class='flag-5'>小车</b>升级改造

    「车型分析」控制系统典型应用车型 —— 辊筒AGV

    市场上常见的AGV进行一次简单的介绍。1车型介绍辊筒AGV由车体、控制系统、驱动系统、以及防撞保护装置等多个部件组成的。其中,车体主要由底盘、轮子、支撑架等组成;
    的头像 发表于 05-16 10:13 385次阅读
    「车型分析」<b class='flag-5'>控制系统</b>典型应用车型 —— 辊筒<b class='flag-5'>AGV</b>

    工业自动化之AGV控制系统通讯方案与接口设计

    工业应用中的AGV项目方案,考虑实际需求一般采用集中式控制系统,而集中式的AGV控制系统主要包括中央调度控制系统和车载
    的头像 发表于 05-15 14:33 2367次阅读
    工业自动化之<b class='flag-5'>AGV</b><b class='flag-5'>控制系统</b>通讯方案与接口设计