基于RFID的自动化立体仓库优化管理系统的设计与实现

2013-01-29 03:41张志远张成泽张亚楠
陕西科技大学学报 2013年4期
关键词:立体仓库读写器串口

杨 玮, 鄢 陈, 张志远, 张成泽, 张亚楠

(陕西科技大学 机电工程学院, 陕西 西安 710021)

0 引言

自动化立体仓库是以高层货架为主体、成套的搬运设备为基础、计算机控制技术为手段的高效物流系统.它集仓储、输送、分发于一体,已广泛应用于制造业和物流领域.在对货物进行管理时,需要按照具体的调度方式存储、配送.调度系统决策的及时快速与否直接决定了自动化立体仓库的仓储效益,因此在自动化立体仓库管理中,调度系统的设计问题是一个关键问题.

目前,国内外学者对自动化立体仓库的优化问题的广泛研究取得了一定的进展.在国外,Whitley等人对应用于自动化立体仓库调度的启发式方法和遗传算法进行了比较[1].Donald.Tepas引入了一种知识信息系统来对辅助决策立体仓库中的调度问题并得到了应用[2].Kim.Byung等提出了一种基于控制和调度系统的混合智能 Agnet 方法并通过实例证明该方法可以优化立体仓库的货位拣选问题[3].Shunji.Tanaka提出了一种解决自动化立体仓库出入库调度问题的混合算法[4].在国内,剡昌锋等运用遗传算法对自动化立体仓库的调度问题进行了研究[5].田国会、刘常有等针对自动化仓库的实际运行过程,提出影响仓库运行效益的若干优化调度问题[6].杨玮、傅卫平等提出了基于多色集合和粒子群算法相结合的决策模型,以解决自动化立体仓库货位分配时货架的稳定性和出入库效率问题[7].但是,目前大多数学者都是针对自动化仓库输送系统的调度进行建模分析或仅仅只是对货位分配进行优化,未能把射频识别(Radio Frequency Identification,简称RFID)技术融合到自动化立体仓库的优化管理中.

为弥补上述研究的不足,本文构建了基于RFID技术的自动化立体仓库优化管理系统,对其结构和功能进行了分析.通过对典型RFID阅读器的研究,实现了RFID硬件与管理系统软件的正常通信,对利用RFID技术的自动化立体仓库优化管理系统的设计有较大参考意义.

1 RFID技术简介

射频识别技术(Radio Frequency Identification,RFID)作为快速、实时、准确采集与处理信息的高新技术和信息标准化的基础,已经被世界公认为本世纪十大重要技术之一[8].作为一种非接触式的自动识别技术,它通过射频信号自动识别目标对象并获取相关数据,识别工作无须人工干预,可工作于各种恶劣环境.RFID技术可识别高速运动物体并可同时识别多个标签,操作快捷方便[9].一个典型的RFID系统由射频电子标签(RFID Tag)、读写器(RFID Reader)及应用支撑软件组成.电子标签由芯片与天线组成,每个芯片都有唯一的标识码[10].同时,介于前端RFID读写器硬件模块和后端数据库与应用软件之间的中介,称为RIFD中间件(RFID Middleware).应用程序端使用中间件所提供的一组通用的应用程序接口(API),即能连接到RFID读写器,读取RFID标签数据[11].整个系统的工作流程是:电子标签中保存有约定格式的电子数据,并附着在待识别物体的表面;而读写器通过天线发送一定频率的射频信号,当电子标签进入天线工作区域时产生感应电流,电子标签获得能量被激活并把数据通过天线发送给阅读器;阅读器对接收的信号进行解调和解码然后送到后台主系统;后台主系统根据相应的软件模块做出相应的处理和控制.根据整个流程得到整个RFID系统图如图1所示.

图1 RFID系统组成

2 系统结构与功能设计

2.1 需求分析

在信息技术高度化发展的环境下,自动化立体仓库管理效率的提高,能够很大程度上提高整个产业链的竞争力.把先进的RFID技术应用到目前的自动化立体仓储管理系统中,对提高自动化立体仓库运行的自动化和智能化程度意义重大.为了实现管理过程的智能化高效运行,自动化立体仓库系统设计的目标需求可以概括为以下几条:

达到真正实现储存、出入库、盘点、拣选运输等环节的完全自动化要求,并规范业务流程;

拥有强大的查询功能.具体包括实时货物信息的查询和追踪、实时货位信息的查询、客户内部数据的关联查询;

智能动态分配货位、人力、物力,从而减少仓库管理人员的工作量,提高生产效率;

具备数据的统计和存储功能,使信息的价值可以得到最大化的体现.

基于上述需求,结合RFID技术的特点,开发基于 RFID 技术的自动化立体仓库优化管理系统,以提高企业物流管理水平,提高企业经济效益[12].

2.2 功能设计

依据需求分析把系统分为基本信息管理模块、库存功能管理模块、查询管理模块、统计与报表管理模块和系统管理模块5个模块[13],其功能模块图如图2所示.

图2 自动化立体仓库优化管理系统功能模块图

2.2.1 系统信息管理模块

系统信息管理模块的功能是对整个系统的信息进行管理.它由用户管理、客户管理、供应商管理、设备管理和货物管理5个子模块组成.当用户输入自己的账号和密码后,会获得预先分配的权限,进入系统后用户可根据自己的权限角色来对系统的信息进行维护.系统管理员对此系统拥有最高权限,可以实现创建用户信息、禁用用户信息、用户权限变更等功能;而客户管理模块与供应商管理模块是完成对业务往来密切的客户与供应商信息进行管理与维护;设备管理模块实现设备信息的收集和管理;货物管理模块实现货物信息的维护,当有新产品需要入库时,本模块通过相应的操作将产品的代码、名称和种类等信息添加到数据库中,当产品出库时也通过相应的操作从数据库中进行删除.

2.2.2 库存功能管理模块

库存功能管理是整个自动化立体仓库管理系统最核心的部分,整个模块由入库作业、出库作业、盘存作业3个子模块组成.具体功能主要包括以下几部分:

(1)入库作业模块:带有电子标签的货物,入库时通过入库口通道的RFID阅读器,即可将货物相关信息自动输入到仓储管理系统.系统将实际入库信息与客户提供的入库单信息进行对比,若无误差或误差在规定范围内,则准许入库并将入库信息转换成库存信息;若出现错误,则由系统输出提示信息,由工作人员解决.仓储管理系统按照最佳的存储方式,选择空货位,支配巷道堆垛机运输货物至指定位置存储.

(2)出库作业模块:订单到达仓库后,仓储管理系统会根据订单的要求,确定最佳的拣货方案;按照拣选方案,安排订单拣选任务,支配巷道堆垛机到指定货位,按照拣选方案进行拣选.货物出库时,同入库一样,通过出库口通道处的RFID阅读器,将货物信息传入仓储管理系统.系统将货物信息与订单进行对比.若无误,则顺利出库,同时货物的库存量相应更新;若出现错误,则由仓储管理系统输出提示信息,由工作人员解决.

(3)盘点作业模块:盘点作业即以仓库为单位,统计仓库中各种货物的数量,将统计结果与库存表中相对应货物的数量进行对比,并进行盈亏统计分析.

2.2.3 查询管理模块

整个查询管理模块由入库查询、出库查询、盘点查询和库存查询4个子模块组成.查询管理功能主要是对系统已经完成的入库、出库和盘点操作进行条件查询,使得管理员获得想要的信息,查询条件包括货物名、时间段、仓库名.另外重要的功能是库存的查询统计,根据货物名称、货物编码或者仓库名可以查询货物的当前的库存数量.

2.2.4 统计与报表管理模块

对自动化立体仓库系统相关报表的信息管理,包括货物库存表、货位信息表、出入库历史记录3个子模块.统计报表管理模块为自动化立体仓库所有物资状况建立记录,对设备运行信息进行统计分析,方便用户随时查看[14].

2.2.5 系统管理模块

系统管理模块主要是以防数据破坏而进行备份和数据还原工作,主要对象是系统数据库.同时添加日志管理功能,方便问题的查询.具体包括3个模块:数据备份、数据还原和日志管理.

3 读写器与计算机通信设计

构建基于RFID技术的自动化立体仓库优化管理系统,除了包括管理系统和数据库的搭建,最关键和难度最大的是基于中间件技术的数据采集子系统的设计.其功能是实现对读写器(Reader)获取电子标签(E-Tag)储存的大量信息的采集、处理和传输给管理系统的过程.而数据采集子系统设计的核心是读写器与计算机的通信.本文通过对ITRF91501 Reader的研究,对数据采集子系统中的读写器与计算机通信功能进行设计.

3.1 读写器技术参数

读写器是通过射频耦合向RFID标签写入或读出数据的设备,是连接电子标签与应用系统的桥梁.在RFID标签加载数据(初始化)时,读写器向RFID标签发出“写”的命令,将数据写入RFID标签;在自动识别时,读写器向RFID标签发出“读”命令,电子标签在读写器读写范围内向读写器答应并确认自己的身份,无需接触,读写器就可以远距离读取电子标签的“反馈”信息,并将这些信息传输到控制器.在自动化立体仓库的应用过程中,读写器普遍放置在出入库检验台,扫描出入库货物的信息;实施盘点作业的AGV小车上也会安置读写器,读取货位标签上的货物信息;同时,为了动态观察出入库作业,会在仓库关键位置放置读写器,确定货物出入库的一个中间状态.

读写器的主要技术参数如下:

频率(Frequency):902~928 MHz;

标签数据传输率(Tag data rates):每秒32 K bits;

工作电压(Operating Voltage):8~10 V;

总线接口(Bus Interface):串行(Serial), RS-232 or RS-422;

读取距离(Read Range):最大100英尺;

写入距离(Read Range):通常为读取距离的70%;

标签识别(Tag identification):每秒多达30个标签;

写入速度(Write Rate):平均速率为每字节/每标签/20 ms;

协议(Protocol):ANSI NCTIS T6 256-2001标准; 其端口状态如图3所示.

读写器上共有4个状态显示灯号,编号为0、1、2、3,通过观察状态指示灯,确定RFID Reader的工作情况,从而方便通信程序的调试.

3.2 读写器与计算机通信协议

RFID读写器接口采用的是命令/响应的结构,外部主机给读写器发送一个命令,然后读写器执行这个命令,执行完成后,给主机一个响应.所有的命令和响应使用ASCII码.

下面简单介绍一下读写器标准接口(Basic Reader Interface-BRI)的指令集及其响应,[ ]中的值表示可选参数,( )中的值表示必选参数.

读命令有以下的语法:READ[Literal],[Data Field],[Literal],[Data Field].

Data Field可以是BRI所定义的任一个数据类型,如果没有定义,将缺省认为是TAGID类型.Literal使用双引号界定的任何字符串.

[Data Field]:可选的数据域命令参数包括一系列定义从标签返回的数据格式的数据类型.使用INT,HEX,STRING,TAGID这些数据类型,就可以从标签的任何内存地址中读到具体的数据.

[Literal]:该命令参数是用来规定从基本用户界面中返回的数据的格式.

BRI响应格式举例为:READ TAGID.这个带有TAGID参数,不附带数据域参数的命令可以找域中的所有标签,并为每一个标签返回一个标签识别符,每一个标签识别符最后都带(CRLF).所有的标签识别符都返回后,用户界面会显示OK>(CRLF).

3.3 串口通信软件设计

所谓串口通信(Serial Communication),是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式.这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低.本文研究的ITRF91501 Reader,主机通信是通过9针的D-sub连接标准,总线接口选用串口RS232,并通过RFID串口编程,实现读写器与数据采集子系统的串口通信.程序设计采用的是Microsoft Visual Studio 2010的编程环境,具体步骤如下:

(1)设计流程

串口通信软件要能实现串口初始化设置和标签的识别与读取功能, 并能将标签的唯一ID号显示在窗口上[15].具体的设计流程如图4所示.

图4 软件设计流程

可视化界面设计主要包括以下几个方面:①串口初始化选项;②标签识别和读取界面;③显示信息界面.设计完成后的界面如图5所示.

图5 自动化立体仓库优化管理系统RFID配置可视化界面

(2)通信程序设计

通信程序主要包括串口初始化、 标签的识别与读取以及显示信息.串口初始化主要实现打开和关闭串口和设置波特率等功能.部分程序代码如下:

SerialPort sp = null; //定义串口对象

for (int i = 0; i < 256; i++)

{try

{SerialPort sp = new SerialPort("COM" + (i +1).ToString());

sp.Open();

sp.Close();

cbxCOMPort.Items.Add("COM" + (i + 1).ToString());}

catch (Exception)

{lblStatus.Text = "COM" + (i + 1).ToString() + "不可用";

continue;}

} //检测可用串口

//设置串口属性

sp.cbxCOMPort="COM3"; //端口号为COM3

sp.cbxBaudRate="38 400"; //波特率为38 400 kbps

sp.cbxStopBits="1"; //停止位为8

sp.cbxDataBits="8": //数据位为8

sp.cbxParity="0": //检验位为0

sp.Open(); //打开串口

try

{//写入串口数据

sp.WriteLine(tbxSendData.Text);}

catch (Exception)

{lblStatus.Text = "发送数据时发生错误!";

return;}

try

{//读取串口数据

tbxRecvData.Text += sp.ReadLine();}

catch (Exception)

{ lblStatus.Text = "读取串口时发生错误!";

return;}

sp.Close(); //关闭串口

(3)程序调试与运行

程序编写后需要进行调试和运行,才能确定它的实际使用效果.在这里使用调试的步骤不是直接通过串口线连接Reader尝试读取,而是采用以下步骤:

①通过虚拟串口工具调试程序代码;

②调试RFID Reader尝试接收数据;

③解析数据,解析规则参考通信协议部分的BRI指令集;

④在UI界面上集成命令按钮[16].

至此,读写器与计算机的通信设计基本完成,通过RS232串口实现计算机程序对于阅读器所阅读的标签信息的获取.

4 结论

随着计算机和互联网技术的飞速发展, 信息的自动录入正成为信息流通的“瓶颈”.RFID 技术的使用能实现数据的自动识别与采集、交换,保障物流管理各流程的高速、顺畅,是未来商品和物资流通乃至供应链管理将普遍采用的技术.

本文在对自动化立体仓库的调度管理系统以及RFID技术研究的基础上,将RFID技术融入到自动化立体仓库中,构建了基于RFID技术的自动化立体仓库优化管理系统的基本结构,对其结构和功能进行了分析.同时通过对典型RFID读写器的研究,对基于中间件技术的数据采集子系统中的读写器与计算机通信功能进行设计,实现RFID硬件与调度系统软件的正常通信,并对串口通信设计提供了指导.该系统的开发为企业提高管理水平和效率,降低企业成本,提高企业竞争力提供了有益的思路.

[1] D.Whitley,A.E.Howe,S.Rana,et al.Comparing Heuristic Search Methods and Genetic Algorithms for Warehouse Scheduling.Systems[C]//Systems.New York:IEEE,1998:2 430-2 435.

[2] Donald.Tepas.Workfare decision support systems:A comprehensive methodological approach to work-scheduling problems[J].Theor Issues in Ergon,2003,4(1):22-24.

[3] Kim.Byung-In,Heragu.Sunderesh.S,Graves.robert.J,et al.A hybrid scheduling and control system architecture for warehouse management[J].IEEE Transactions on Robotics & Automation,2003,19(6):91-101.

[4] Shunji Tanaka.A hybrid algorithm for the input/output scheduling problem of multi-shuttle AS/RSs[C]//SICE.New York:IEEE,2007:2 643-2 648.

[5] 剡昌锋,吴黎晓,胡赤兵.自动化仓库在线调度问题的研究[J].机械研究应用,2002,12(4):25-27.

[6] 田国会,刘常有.自动化立体仓库若干优化调度问题及其研究进展[J].山东工业大学学报,2001,31(1):15-20.

[7] 杨 玮,傅卫平,王 雯,等.基于多色集合和粒子群算法的立体仓库货位分配优化[J].机械科学与技术,2012,31(4):648-655.

[8] 王晓华,周晓光.射频识别技术及其应用[J].现代电子技术,2005,29(11):30-31.

[9] 王 伟.射频识别(RFID)技术及其应用的研究[J].安徽师范大学学报(自然科学版),2008,31(2):139-149.

[10] 丁振华,李锦涛,冯 波.RFID中间件研究进展[J].计算机工程,2006,32(21):9-11.

[11] 狄 菲,赵卫东,周志平,等.仓储管理中的RFID中间件设计[J].计算机应用,2008,28(6):257-258.

[12] 王鹏程,王 娜.自动化立体仓库仓储管理系统的开发[J].科技信息,2011,28(31):98-125.

[13] 王 猛,唐敦兵,顾文斌,等.基于RFID离散制造业车间生产过程控制系统研究与开发[J].中国制造业信息化,2012,41(11):14-17.

[14] 叶国权,柴 华,杨淼淇.可视化智能仓储信息管理系统的研究与设计[J].软件,2012,33(2):64-66.

[15] 陈威佳,李志鹏,彭 涛.基于VB界面RFID读写器的串口通信上位机软件设计[J].机电产品开发与创新,2010,23(4):83-99.

[16] 郭 丽,饶 丰,蔡 苗,等.基于自动化物流仓储系统的PDA应用研究[J].制造业自动化,2013,35(1):89-91.

猜你喜欢
立体仓库读写器串口
基于Flexsim的自动化立体仓库仿真研究
浅谈AB PLC串口跟RFID传感器的通讯应用
密集型自动化立体仓库解析
基于B7A接口的钢板立体仓库控制系统设计
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
自动化立体仓库在现代制造企业中的应用与优势
基于视频抓拍读写器的高速公路防倒卡研究
基于随机时隙的RFID读写器防冲突方法