首页 > 案例 > AGV与电梯交互系统设计

1.引言

电梯作为使用最频繁的垂直交通工具,每天运输数以亿计的乘客,已成为城市垂直交通不可或缺的重要组成部分。随着电梯智能化的发展、随着物联网技术的进步,与电梯交互的对象已不仅仅局限在人,还包括各式各样的AGV,电梯除了输送乘客之外,运送药物、食品、文件等也逐渐开始普及,如图1所示为电梯与某医院送药机之间的联动交互,由传送带负责将药物箱运输到电梯口,由电梯负责将药物箱送至目的楼层。图2为服务AGV乘坐电梯为办公大楼递送文件。由于电梯属于特种设备,与电梯交互的设备需符合特种设备安全法的相关要求,其交互系统的安全性、稳定性及可靠性需符合电梯安全使用的要求。因此设计一种安全可靠的交互机制至关重要。


2.系统设计

AGV与电梯交互系统需首先建立AGV与电梯之间的数据通讯链路,由于AGV的移动性特点,有线通讯方式不适合本应用场景。AGV与电梯之间的无线通讯可采用局域网无线通讯,如LoRa、ZigBee、Wi-Fi等,也可采用广域无线通讯,如2G、4G、NB-IOT及LoRaWAN等。考虑到实际应用工况,AGV与电梯之间的数据通讯需穿透轿厢厅门的金属层,需具有较好的绕射能力确保能顺利通过厅外和井道内之间的各个障碍,且通讯距离需满足高楼层电梯数据传输需求,ZigBee和Wi-Fi等2.4G或更高频段的无线技术由于绕射能力一般,实际测试发现,当厅外AGV与电梯轿厢位置相差5个楼层以上时(楼间距3米左右),Wi-Fi等2.4G技术通讯延时和通讯质量受到明显影响。而基于运营商网络建立的通讯,只要在运营商基站范围之内,基本能实现数据交互的可靠性。本文选择基于LoRa网络(如图3所示)和基于4G网络(如图4所示)建立AGV与电梯之间的通讯链路。


2.1硬件组成


图3基于LoRa方案的AGV与电梯交互系统结构示意图


图4基于4G网络的AGV与电梯交互系统结构示意图


通过在AGV端和电梯数据传输单元端各加一个LoRa通讯模块,建立AGV与电梯之间的通讯链路,如图3所示。LoRa技术遵循IEEE802.15.4g标准,ISM频段为433MHz,传输速率为几十到几百Kbps,该技术采用扩频技术,具有前向纠错能力,采用AES128位加密,安全性较高。由于AGV与电梯之间的交互数据量为每秒不到50字节,因此LoRa能满足速率要求。基于4G网络的交互系统,如图4所示,AGV与电梯数据传输单元之间通过服务器建立通讯,由远程服务器负责数据转发,此方案主要解决LoRa网络在高楼层电梯、井道环境恶劣、现场干扰严重等情况下网络质量严重下降问题,实际应用时需在服务器端做唯一识别码的绑定,AGV与电梯数据传输单元通讯数据包内容中带唯一识别码,服务器接收到数据包后提取原地址,根据绑定关系确定目标地址,将数据包转发到目的地址对应的网络连接。LoRa与4G方案能相互补充,满足不同工况下AGV与电梯之间数据交互的需求。


本系统通过精简通讯协议、精简交互流程等方法,尽量较少无效数据包,从而降低LoRa网络和4G网络的通讯数据量。精简之后的AGV使用电梯的流程为:AGV申请电梯->得到反馈->指令登记->得到反馈->电梯到达消息->开门保持->开门保持释放->AGV登记指令->得到反馈->电梯到达消息->开门保持->开门保持释放->释放电梯->电梯释放成功。在申请电梯后,如果得到反馈,不管电梯状态是否可用,则必须释放电梯才可以结束申请,该交互流程中每个环节都是不可或缺且环环相扣;通讯协议数据段中,通过设计转义机制,将数据段内容中与数据帧头尾相同的字符进行转义,避免解析错误,与ASCII码编码方式相比,数据量最多能降低一半。


2.2软件实现

(1)AGV与电梯数据交互软件逻辑

①AGV已登记指令异常丢失处理

AGV进入电梯轿厢且登记目的楼层指令后,在电梯运行过程中或者电梯未到达AGV目的楼层之前,AGV已登记的轿厢指令可能会由于反向销号逻辑、双击销号逻辑等原因被消除。本系统中的协议转换装置软件上需增加AGV登记指令异常丢失判断,并在检测到指令丢失情况自动补登指令,同时定期更新电梯状态(包括是否已经成功登记状态)下发至AGV。


②闭环数据交互

AGV与电梯交互的任何命令都需确认,即数据收发为闭环,防止双方实时状态的不一致,导致逻辑控制的异常,如AGV到达目的楼层提醒功能,当协议转换装置判断AGV到达目的楼层后,需自动下发通知命令至AGV,在AGV回复确认信息之前,协议转换装置以设定的频率通知AGV,直至AGV回复收到确认后停止。


③发送频率自适应

AGV或协议转换装置超时重发时间默认值记为T1,重发次数记为C,重发次数阀值记为S;当AGV或协议转换装置每发一个数据包,超时计数器执行累加,接收到返回数据则超时计数器清零,当超时计数器累加值达到T1,则自动重发;若重发阶段,仍满足第一条的条件,则C加1,若不满足第一条的条件,则C清零;若C>=S,则判断为堵塞发生,需调整超时重发时间为C*T1,实现发送频率的自动调整,减轻数据堵塞。


(2)环形缓冲区实现

AGV与电梯交互系统中,AGV和协议转换装置需获取电梯的运行状态、获取已登记信号状态及获取对电梯的控制权等。实际使用过程中发现,由于LoRa或4G等无线传输存在自身容易受干扰的特点,AGV与电梯之间的通信数据包容易出现丢包、错包、数据不均匀等情况,特别是出现数据堵塞情况,若仍一直按堵塞之前的数据发送频率发送的话,只会进一步严重加剧数据异常的发生。


软件上通过在收发两端建立数据队列,将收到的数据统一存储在接收队列中,防止因断包导致校验失败而丢弃,防止因堵塞造成数据同时到达时处理不当导致数据丢失等问题,实际接收处理时,通过在接收队列中提取合法数据包进行处理;在发送时,将数据统一放置发送队列,由发送单元周期性从发送队列中提取合法数据包执行发送,协议转换装置软件处理环形缓冲区流程图如图5所示,另外,通过上一节提到的自动调整发送单元合法数据包发送频率,能避免堵塞时环形缓冲区数据内容过快填满问题。


图5AGV与电梯数据交互环形缓冲区软件处理流程图


关键技术实现

3.1平层精度控制技术

电梯平层精度影响AGV进出轿厢平稳性,平层误差严重的容易将AGV绊倒,然而实际情况下,打滑或编码器干扰导致电梯停靠位置不准确经常能发生,本系统设计一种准确停靠方式,解决电梯平层精度不准问题,防止AGV进出电梯时被绊倒。通过设计位置校准算法、末端爬行算法,保证电梯能停靠到平层位置,大大降低AGV进出轿厢时倾斜或被绊倒的风险。算法实现过程如下(以电梯高速上行为例,高速下行位置修正原理算法类似):


(1)电梯高速运行中经过中间楼层时,出中间楼层平层插板时,首先判断当前编码器位置数据与井道自学习时学到的位置差,若在设定的范围之内,则将当前位置校准成当前楼层井道自学习位置加上平层开关距离与平层插板距离之和的一半,再加上平层开关延时导致的误差距离;


(2)电梯高速运行进目的楼层插板时,计算当前位置偏差,若当前位置与电梯井道自学习学到的位置偏差在设定的范围之内时,则将当前位置校准成当前楼层井道自学习位置减去当前楼层插板距离加平层开关距离之和的一半,再加上平层开关延时导致的位置偏差距离;


(3)电梯进目的楼层插板时,当当前速度小于计算值时,转为爬行模式,在此阶段,电梯以指定速度V2运行;


(4)在爬行模式过程中,记UIS为上平层开关,DIS为下平层开关,上行时当DIS动作或下行时UIS动作时退出爬行模式;、


(5)爬行模式结束后进入零速模式,检测到编码器反馈零速时,延时设定时间T切断控制器运行信号。


(6)当由于异常原因,如钢丝绳在电梯爬行阶段出现伸长,电梯冲出目的楼层,此时位置校准算法会控制电梯不停车,但改变运行方向,通过倒拉方式将电梯拉回开锁区。


3.2AGV被困轿厢检测和通知技术

AGV乘梯时,若电梯出现无法自恢复故障或电梯在非门区检测到限制电梯运行的条件,电梯异常停梯导致AGV被困在电梯中,容易产生二次事故或产生其他不可控风险,因此需要准确检测AGV被困事件,并将被困事件通知相关人员以实施营救。通过协议转换装置采集电梯中信号、电梯故障信号、电梯门锁信号、电梯故障信号、电梯门区信号、电梯运行信号等有限电梯状态信号组合AGV被困逻辑,输出AGV是否被困信号;借助数据传输通道,将AGV被困信号稳定可靠地通知到相关人员。协议转换装置判断AGV被困逻辑功能如图6所示。


图6协议转换装置判断AGV被困逻辑功能模块组成示意图


AGV被困通知模块逻辑:

(1)若AGV被困信号通知与AGV被困信号通知前一周期状态不一致,则执行AGV困人通知,AGV被困通知计数器t清零;


(2)若AGV困人通知有效且AGV被困通知计数器t等于0,则执行AGV被困通知事件,若AGV被困信号有效,则通知AGV被困事件,若AGV被困信号无效,则通知AGV被困解除事件,同时AGV被困通知计数器t被置位为AGV被困事件通知周期T;


(3)在未收到服务器被困信号通知确认之前,AGV被困通知计数器t计数器自减,当符合(2)条件时,继续执行通知AGV被困与否事件,当AGV收到服务器被困通知确认信号后,AGV被困通知信号置为无效,表示AGV被困通知信号已经成功通知到相关人员,则结束本次AGV被困通知事件。