服务热线: 13472705338
新闻中心 news center

煤矿智能仓储系统研究与设计

伴随互联网、大数据、人工智能技术的迅猛发展,煤矿智能化相关技术与装备水平也在显著提升。同时,随着煤矿智能化程度...
联系我们 contact us
新闻中心
您当前的位置:首页 > 新闻中心 > 基于ZigBee的有源RFID...

基于ZigBee的有源RFID在智能仓储中的应用

信息来源: 发布时间:2021-12-11 点击数:

0 引言

智能仓储在现代物流中起着关键性作用, 尤其随着物联网[1]技术的高速发展, RFID技术逐渐走入仓储管理中。当前, 所谓的智能仓储都是采用无源的RFID标签, 仅能采集货物的基本出入库信息, 而且识别距离很短, 一般都小于10 cm.文中设计并实现了一种基于ZigBee技术的有源RFID标签, 该标签属于传感器标签, 采用3 V锂电池供电, 具有小巧性、灵活性和智能性的特点。系统测试表明:该标签具有较好的灵活性, 既可以准确读取货物的基本信息, 又可以确保货物的安全性, 增强了仓储管理的智能性。

1 系统功能和总体结构

系统主要是通过有源标签采集货物的位置偏移量和周围环境的温湿度, 使货物可以快速入库和出库, 对货物进行快速盘点和移库, 实现对货物的透明调度。同时, 系统还具备报警功能, 当位移监测和温湿度检测值超出限定值时, 产生报警, 实现对货物的实时监控。系统的整体架构如图1所示。

在货物入库时, 将有源标签置于货物上, 有源标签内存有货物的详细信息, 并能把货物的位移偏移量及周围环境的温湿度的参数利用无线通讯发送到库区内的读写器上, 再由读写器转发到中心读写器, 中心读写器通过RS-232串口将信息上传到监控中心并通过管理界面将信息显示存储, 有助于管理员对货物的监控管理。基于ZigBee的有源RFID智能仓储监管系统提供的数据具有可靠性, 对货物的入库、出库实行定位管理, 防止人为失误或被盗;对货物进行无线远程信息采集, 并能进行分区盘点, 管理数据动态实时更新;对货物周围环境实时监控, 具有高低温报警功能。

图1 智能仓储监管系统的整体架构

图1 智能仓储监管系统的整体架构  下载原图


2 有源标签的硬件设计

2.1 加速度采集电路设计

对于货物状态信息的采集主要是通过MMA7260Q采集货物的模拟加速度值, 并通过CC2530内置的ADC实现A/D转换输出数字信息。这样, 通过读写器的读识即可判断货物是否受力而动, 达到对货物状态的实时监控。

MMA7260Q是采用MEMS工艺设计生产的低价格低功耗的单芯片集成三轴加速度传感器。MMA7260Q内部集成了G-Cell传感单元、振荡器、时钟发生器、容压转换器、增益滤波器、EEPROM以及三轴补偿电路等, 能在XYZ轴向上以极高的灵敏度读取低重力水平的坠落、倾斜、移动、放置、振动和摇摆[2]。当加速度引起质量块的相对位置变化时, 电容值也发生变化, 然后经过电容电压转化电路和放大滤波电路后输出与加速度成正比的电压信号, 从而可以通过度量加速度的变化来判断货物的偏移量信息。

CC2530是一款真正用于IEEE802.15.4、ZigBee和RF4CE应用的片上系统集成芯片 (SoC) , 内部包含了一款工业级的8051内核, 21个可编程的IO, 可配置分辨率的ADC、符合2.4 GHz的射频收发器以及DMA、看门狗定时器等[3]。使用时, 只需很少的外围电路即可构建一个功能很强的ZigBee节点。

MMA7260Q与CC2530的接口电路图如图2所示。

图2 MMA7260Q与CC2530的接口电路

图2 MMA7260Q与CC2530的接口电路  下载原图


MMA7260QXout、Yout、Zout端口分别输出XYZ三轴的模拟加速度量, 接入CC2530的P0_5、P0_6、P0_7三个端口。CC2530的P0口为其内部ADC的输入通道, 这样, 通过配置CC2530的寄存器即可实现AD转换, 输出数字加速度量。CC2530的P1_3和P1_4引脚分别与MMA7260Q的g-select1和g-select2相连, 用来设置加速度传感器的灵敏度。在此, 为了能够判别货物的轻微移动, 设置MMA7260Q采用1.5 g量程, 可以给g-select1和g-select2置低电平, 使传感器灵敏度达到最高值800 mV/g[4].CC2530的P0_7引脚与MMA7260Q的SleepMode相连, 用来控制加速度传感器的休眠状态。

2.2 温湿度采集电路设计

为了监控库区的安全性, 在有源标签上增加了温湿度采集电路, 用来采集库区的环境温湿度状况。在温湿度出现异常, 不符合货物存放标准时, 能够进行系统报警。

温湿度采集选用高性价比、低功耗、超小体积的DHT11数字式温湿度复合传感器。DHT11采用专用的数字模块采集技术和温湿度传感技术, 输出信号均已经过严格校验, 其校准系数以程序的形式储存在OTP内存中。DHT11内部包括1个电阻式感湿元件和1个NTC测温元件, 并与1个高性能8位单片机相连接。DHT11与CC2530的接口电路如图3所示。

DHT11采用单总线的通信方式, 其DATA端口用于与CC2530的通讯和同步。由于CC2530的P1_1引脚具有20 mA的驱动能力, 故这里不用放大电路就可以直接与DHT11通信。DHT11的供电电压为3~5.5 V.传感器上电后, 要等待1 s以越过不稳定状态, 在此期间无需发送任何指令。电源引脚 (VDD, GND) 之间可增加一个100 nF的电容, 用以去耦滤波。

图3 DHT11与CC2530的接口电路

图3 DHT11与CC2530的接口电路  下载原图


2.3 读写器电路设计

读写器主要置放于每个库区的入口和出口处, 用于读取库内有源标签的信息及货物的出入库状况。该读写器既可以接收来自监控中心的命令, 也可以用来中继、汇聚有源标签的监控数据。读写器的MCU采用CC2530芯片, 它通过ZigBee协议与各有源标签实现无线通信。多个读写器组织成一个ZigBee无线传感器网络, 达到对各库区的无缝覆盖。读写器采用标准的5 V适配器供电, 确保读写器工作的持续性和网络的稳定性。由于系统芯片采用3.3 V电源工作, 故这里采用了LM1117-3.3芯片。LM1117-3.3是一款低压差的电压调节器, 能够实现5 V到3.3 V的稳定转换, 确保读写器工作的稳定。在中心读写器处还需设计串口通信电路, 用于控制中心PC与中心读写器的通信。为了实现RS-232和TTL电平的转换, 中心读写器采用了MAX3232芯片实现两者的电平转换。电源电路和串口电路如图4所示。

图4 电源电路和串口通信电路

图4 电源电路和串口通信电路  下载原图


3 软件设计

3.1 读写器与有源标签的通信

读写器与有源标签通信的基础是IEEE无线个域网工作组所制定的IEEE802.15.4技术标准。系统以ZigBee2007协议规范为基础, 设计了读写器与有源标签的通信机制。首先由中心读写器建立网络, 中心读写器可以实现有源标签的网络地址分配、标签的加入和退出、汇聚标签采集的数据、改变网络拓扑结构以及网络的维护等工作。在中心读写器成功建立网络后, 各库区的读写器依次加入网络, 该网络具有唯一性。在中心读写器与各库区读写器成功组建ZigBee网络后, 便开始检测有源标签的状况。

标签入库时, 就与所在库区的读写器建立“绑定”关系, 并不断将标签采集的数据传递给读写器。读写器也可以控制标签数据的读写和休眠。为了降低标签功耗, 减少网络冗余数据, 减轻系统功耗, 要求标签具有定时发送数据, 定时休眠的功能。当标签距离父节点较远, 与其失去联系时, 会自动与较近读写器建立“父子”关系。读写器也会随时更新它的子节点序列表。

3.2 有源标签的工作流程

有源标签初始化后, 首先扫描信道, 检测是否有网络存在。如发现读写器, 就以该读写器的“子节点”身份加入读写器所在网络。在它休眠醒来或数据发送完成后, 要检测一下是不是已经离开网络。如果标签远离与它通信的读写器, 它将通过孤点方式再次申请加入网络, 与新的读写器建立通信。有源标签的工作流程如图5所示。

图5 有源标签的工作流程

图5 有源标签的工作流程  下载原图


携带标签的物体进入仓库会被门口的读写器检测到并加入网络, 标签会将携带的物体信息发送给上位机, 上位机根据物体信息为标签分配库区, 将库区内读写器的网络标号发给标签, 标签会根据这个网络标号找到响应的库区。进入库区后, 进入休眠模式, 等待上位机的命令。标签会每2 s检测1次位移加速度, 如果正常就进入休眠模式, 不正常则发送报警信息, 提醒工作人员进行处理。每5 min对温湿度进行1次检测, 如果温湿度超出设定的正常值则发送报警信息。在温湿度正常的情况下, 当前采集值与上次采集结果的差值超出设定的阈值, 则发送给读写器, 否则不发送, 读写器会认为这次采集结果与上次相同。如果3次还是相同, 则标签会主动发送一次, 证明自己在库区内, 并且工作正常。当有移库命令时, 标签会先关闭位移报警, 并闪烁小灯, 方便人员查找, 等待进入新的库区。当有出库命令时, 同移库相同, 出库完成后, 取下标签, 以备下次使用。

3.3 有源标签的低功耗设计

经实验测试, 有源标签各个功能模块在能量消耗上的分布图如图6所示, 从图中可以看出有源标签的能量消耗主要集中在数据的发送和接收上, 无线通信模块即使在空闲状态下的功耗也远远高于其他模块[5]。若降低有源标签的功耗需要从减少通信量和增加休眠时间上入手。

图6 有源标签能量消耗分布

图6 有源标签能量消耗分布  下载原图


3.4 监控中心管理系统

系统的上位机管理界面是用QT[6]图形设计软件进行设计的, 并结合了SQLite数据库实现了上位机管理系统的设计。QT是一个多功能全面的、可开发高性能、多平台、C++图形用户界面的应用程序框架。SQLite[7]是D· 理查德·希普开发出来的用一个小型C库实现的一种强有力的嵌入式关系数据库管理体制。嵌入式数据库无须独立运行的数据库引擎, 它是由程序直接调用相应的API去实现对数据的存取操作。嵌入式数据库的一个很重要的特点是体积非常小。SQLite提供了对Transaction的支持。应用Transaction即保证了数据的完整性, 也会提高运行速度, 因为多条语句一起提交给数据库的速度会比逐条的提交方式更快。

QT图形界面采用C++语言设计。下面给出监控中心设计时的一些关键函数。

(1) QSqlDatabase db = QSqlDatabase::addDatabase ("QSQLITE")

添加数据库名为QSqlite数据库。利用类QSqlQuery创建数据库。然后用类QSqlTableModel的setTable函数关联数据库, 最后将关联的数据库放到类QTableView建立的表格中。

(2) 当点击发送按钮, 会将“货物号”中的数据发送到数据库中, 并直接被提交给数据库:

int id1=ui->lineEdit->text () .toInt () ;//将货物号添加到数据库中

model->insertRow (rowNum) ;//添加1行

model->setData (model->index (rowNum, 1) , id1) ;

model->submitAll () ;//提交数据库修改

(3) myCom->write (ui->lineEdit->text () .toAscii () ) ;

将数据通过串口发送给中心读卡器。

(4) QByteArray temp = myCom->readAll () ;

监控中心界面接收串口数据

(5) QString cmdStr=tr ("update Login set temperature=′%1′ where goods =′%2‴) .arg (string) .arg (goods1) ;

当监控中心接收到串口数据后, 经过字符类型转换, 将数据加入到数据库。

(6) query.exec (cmdStr) ;model->submitAll () ;

将数据加入到发送的货物号的数据库的表格中, 提交数据库修改。

(7) int curRow = ui->tableView->currentIndex () .row () ;model->removeRow (curRow) ;

获取选中的行, 可以对数据库中的数据进行删除。

(8) ymodel->setFilter (QObject::tr (" time==′%1′ ") .arg (date) ) ;根据日期进行筛选

(9) ymodel->select () ;//将数据显示出来

(10) ui->tableView_2->setModel (ymodel) ;

查询的数据被放到表格2中。

智能仓储监控中心的管理界面如图7所示。

图7 监控中心管理界面

图7 监控中心管理界面  下载原图


4 结束语

针对目前仓储存在的一些问题, 结合ZigBee技术的优势, 提出了基于ZigBee的有源RFID方案, 完成智能仓储监管系统的体系架构的设计。系统可以对货物的调度和分配的各个环节透明进行, 对库存进行快速盘点;对贵重货物可以实时监控, 及对货物环境进行实时调控, 确保货物的安全和良好, 提高了系统的管理效率。

上海阳合仓储管理
官方二维码

版权所有©:阳合仓储 公司地址:上海市嘉定区南翔嘉美路428号 联系电话:134-7270-5338 沪公网安备 31011402008347号 沪ICP备14036201号-1