陕西科技大学 刘 笑 郑恩让
自动导引车(Automated Guided Vehicle,简称AGV)是指带有导引装置(电磁、激光等),能够沿设定好的路径行驶,具有自动化搬运功能的运输车[1]。目前常用的AGV导航方式有:磁导航、激光导航、视觉导航。其中,激光导航依赖于反光板,因此成本很高;视觉导航对所处环境要求很高;而磁导航不仅成本低,且抗干扰能力强,对环境要求较低[2]。
对于国内的应用型AGV来说,大多数采用单片机[3]、可编程控制器(PLC)[4~5]、嵌入式工控机[6]等作为控制器[7]。采用工控机方案,成本过高且稳定性差;采用PLC方案,扩展不方便且难以移植实现调度算法。针对以上问题,本文设计了基于STM 32的磁导航AGV控制系统,该控制系统不仅适应性好、可靠性高,并且价格低廉。经现场实际测试,系统运行稳定可靠。
图1 AGV小车整体结构Fig.1 The overall structure of AGV trolley
本文设计的AGV小车整体结构如图1所示,采用六轮差速驱动结构:前面两轮为万向随动轮,后面两轮为固定轮,中间两轮为差速驱动轮。
这样的结构能够增强车体的稳定性和载重能力,且驱动轮在车体中间,减小了转弯半径,使运动更加灵活。
本文设计的AGV控制系统由磁导航模块、人机交互模块、安全防护模块、运动控制模块、网络通信模块等几部分组成。本系统的的总体设计如图2所示:
图2 系统总体结构图Fig.2 Overall structure diagram of the system
本方案采用模块化的思想对AGV系统进行设计,根据AGV自身的特点,考虑到成本和设计难度,采用了基于STM 32的双MCU结构。其中一个MCU用于路径识别,另一个MCU用于实现安全防护、人机交互、运动控制与网络通信等功能。
考虑到磁敏元件的检测范围和灵敏度,本设计采用RM 3100地磁传感器。与霍尔传感器相比,RM 3100地磁传感器分辨率是其10倍,能够精确的实地测量磁场。本设计中磁传感器模块共布置了6个RM 3100地磁传感器,磁传感器模块布置排列如图3所示:
图3 磁传感器布置排列Fig.3 Arrangement of magnetic sensors
AGV在运行的过程中,磁条与传感器模块的相对位置会出现4种情况:(1)3、4号磁传感器信号极强,其他信号依次变弱,则当前磁条处于磁传感模块中间,AGV小车直行;(2)1、2、3号信号较强,4、5、6号信号较弱,则认为磁条处于磁传感模块左侧,AGV小车左转弯;(3)4、5、6号信号较强,1、2、3号信号较弱,则认为磁条处于磁传感模块右侧,AGV小车右转弯;(4)传感器均检测不到信号,则认为发生丢线,AGV保持上一次行驶状态,若AGV丢线达到一定次数,则认为AGV失去导航能力。
射频读卡器的主要功能是通过读取AGV标签里所写的数据来确定AGV的位置,以实现AGV站点停车、特定位置加减速、识别分岔路口等功能。
在分岔路口,磁传感器模块可能同一时刻检测到多块磁条的存在。为了解决这一问题,本方案事先在射频设别(RFID)标签里写入相应的数据信息,当AGV经过分岔路口时,RFID模块可辅助磁导航模块进行路径识别,选择正确的道路。
驱动电机控制模块由控制器(STM 32F103)、执行器(无刷直流电机)、反馈装置(编码器)组成,控制器主要负责速度调节。驱动电机控制系统如图4所示:
图4 无刷直流电机控制系统框图Fig.4 Block diagram of Brushless DC motor control system
主控板STM 32F103接收各个模块传感器的信号,经过逻辑计算,通过I/O口输出控制驱动器,驱动器输出相应的PWM控制信号控制直流无刷电机,同时通过编码器采集速度信号进行反馈调节。
本设计中的AGV采用北京大器智成的PS-LCD工业触摸屏作为人机交互模块,采用Greatal专业组态式界面设计工具。触摸屏模块与STM 32主控板之间采用RS232方式通信,触摸屏负责信息采集、录入以及结果的显示,主控板负责分析计算。工业触摸屏运行界面如图5所示:
触摸屏分为显示区和手动操作区。显示区内信息包括:实时电量显示、读取当前地标号码、此台AGV行驶区域和当前状态、AGV运行速度与磁导航模块的寻迹信号;手动操作区分为启停模块、驱动模块、速度设定模块、方向切换模块、挂钩模块和帮助模块等。其中挂钩模块可设置AGV是否需要托送货物,方向切换模块可设置AGV运行方向。
图5 触摸屏运行界面图Fig.5 Touch screen operation interface diagram
AGV车体设有安全防护模块,主要包括车体前侧上方安装的光学避障传感器、车体前侧下方安装的物理避障传感器、车身两侧安装的红外对射传感器、急停按钮等。当各个传感器模块检测到故障,AGV主控板一方面通过网络通信模块报告给上位机软件供管理人员处理,另一方面进行声光报警与紧急停车,保护AGV周边的工作人员与设备。
驱动电机控制系统速度环采用增量式PI控制算法,该算法的可由下式描述:
式(1)中,kp为比例系数,Ti为积分时间常数,u(T)为输出信号,e(t)为输入偏差信号,经过离散化的PI表达式为:
式(2)中,k为采样序列,e(k)为第k时刻的误差值,令:
则增量式PI表达式为:
PI控制算法不仅考虑了响应的快速性,还消除了稳态误差,系统控制效果良好。
AGV上位机监控软件基于VS2013平台,采用C#技术开发,其运行界面如图6所示,AGV状态监控软件由以下几部分组成:
(1)启停部分:该部分位于软件界面右上方,其中停止按钮可以紧急停止AGV小车。AGV小车紧急停止之后,必须在上位机上按下启动按钮才再次启动;
(2)AGV基本状态部分:该部分在启停模块下方,包括AGV编号、AGV行驶状态、在线状态三个部分。其中AGV编号在AGVs(多个AGV)系统中可以方便选择查看特定编号的AGV状态;AGV行驶状态表示当前AGV状态是否正常;在线状态表示AGV是否在线,若该编号AGV不在线,则需调度其他编号AGV完成工作;
(3)AGV位置状态部分:包括当前地标、当前目标、上一地标。当前地标为当前AGV读取的RFID标签号,代表AGV当前所处的位置;当前目标为该编号AGV所要达到的目的地;上一地标为AGV运行时所经过的上一位置;
(4)AGV运行状态部分:包括运行速度和电量;
(5)手动控制区:包括指定AGV目标和AGV速度2个功能,通过指定AGV目标可以临时手动改变AGV目的地,通过AGV速度滑动条可以手动调节AGV速度;
(6)地图显示区:地图显示区可以清楚查看AGV当前所处位置;
(7)系统日志:系统日志区域可以记录AGV状态信息,方便管理人员查看。
图6 上位机监控界面Fig.6 Monitoring interface of upper computer
为测试所设计的AGV控制系统的可行性与稳定性,进行了模拟实验。在地面上铺设磁条,将本方案中的六轮式AGV放置于磁条导轨,同时使用RFID标签卡模拟停车站点,本实验中AGV及磁条轨迹图如图7所示。
本方案中的差速式AGV在实际行驶中,通过调整两个驱动轮的速度来完成导航与停车功能。本方案测试了不同速度时AGV的导航精度与停车精度,导航精度测试结果如表1所示。
图7 AGV测试车体与磁条导轨Fig.7 AGV test car body and magnetic slideway
表1 AGV导航定位数据统计Tab.1 AGV navigation and positioning data statistics
在表1(单位为mm)中,编号1代表AGV速度为0.75m/s,编号2代表速度为0.6m/s,编号3代表速度为0.4m/s。通过上表可知,AGV速度越低,稳定性越高。因此AGV在直线轨道时应该加速,拐弯时应适当降低速度以保证其稳定性。
一般情况下,AGV停车精度影响AGV上料精度,因此AGV速度应该尽量低以保证其停车精度,但也需考虑工厂调度节拍,AGV速度不能过慢。因此本方案在停车地标之前设置了一个减速地标用于减速,以此来提高AGV停车精度。AGV停车精度测试结果如表2所示:
表2 AGV停车定位数据统计Tab.1 AGV parking location data statistics
在表2(单位为mm)中,AGV停车精度测试是在匀速0.5m/s,遇到减速地标减速至0.3m/s的条件下进行实验。在表2中,编号1代表在直线路段停车,编号2代表在弯道停车。通过AGV停车精度测试,可以看出AGV在直线路段停车精度优于弯道。但无论直线路段停车还是弯道停车,其精度均小于10mm,满足一般工厂的停车定位精度要求。
通过AGV导航精度测试与停车精度测试,表明了本控制系统的稳定性和可行性。
本文提出了一种基于STM 32的磁导航AGV控制系统,采用了高性价比的STM 32 F103组成双MCU架构,路径识别采用RM 3100地磁传感器组成AGV传感器组,配合RFID读卡器完成AGV寻迹功能,运动控制采用增量式PI算法实现AGV直流无刷电机的控制,采用RS232通信实现AGV与工业触摸屏的通信,实现人机交互功能,同时设计了基于C#的上位机监控软件,方便管理人员管理。系统功能模块化分工明确,整个控制系统简单易行,经现场实际测试,系统运行稳定可靠。
[1]钟钜斌.基于多种导航技术混合的AGV系统设计[D].导师:林志赟.浙江大学,2016.
[1]Zhong Jubin.A variety of hybrid navigation technology design of[D].AGV system based on Zhiyun Tutor:Lin.Zhejiang University,2016.
[2]郑炳坤,赖乙宗,叶峰.磁导航AGV控制系统的设计与实现[J].自动化与仪表,2014(03):6-10.
[2]Zheng Bingkun,Lai Yi,Ye Feng.Design and implementation of magnetic navigation AGV control system[J].automation and instrumentation,2014(03):6-10.
[3]王可,黄晓华,张健,仇家强.基于ARM Cortex系的视觉导航AGV双核控制器设计[J].机电工程,2013(10):1284-1287.
[3]Wang Ke,Huang Xiaohua,Zhang Jian,and foe strong.Based on ARM Cortex system,visual navigation AGV dual core controller is designed for[J].electromechanical engineering,2013(10):1284-1287.
[4]韩腾,樊瑜瑾,李浙昆,赵培林,王俊杰.基于PLC控制的AGV制动系统研究[J].机电一体化,2013(05):44-45+88.
[4]Han Teng,Fan Yujin,Li Zhekun,Zhao Peilin,Wang Junjie.Research on AGV braking system based on PLC control[J].mechatronics,2013(05):44-45+88.
[5]吴卫荣,丁慎平,邓玲黎.PLC和触摸屏在AGV控制系统中的应用[J].现代制造工程,2012(12):115-119.
[5]Wu Weirong,Ding Shenping,Deng Lingli.PLC and touchscreen in the application of AGV control system[J].modern manufacturing engineering,2012(12):115-119.
[6]王起.论PLC、单片机、工控机在工业现场中的应用及选用方法[J].广西轻工业,2011(01):60-61.
[6]Wang Qi.On the application and selection methods of PLC,SCM and IPC in the industrial field[J].Guangxi light industry,2011(01):60-61.
[7]孙晓艳.基于FMS的自动导引车控制器设计与实现[J].无锡职业技术学院学报,2010(06):26-28.
[7]Sun Xiaoyan.Design and implementation of automatic guided vehicle controller based on FMS[J].Journal of Wuxi Institute of Technology,2010(06):26-28.