APP下载

基于无线通信网络的食堂菜品动态称重系统研究与实现

2020-11-30康瑞浩朱明远李彪边硕邓伟刚

软件 2020年9期
关键词:嵌入式系统

康瑞浩 朱明远 李彪 边硕 邓伟刚

摘  要: 在日常生活中,學校和企业具有严格的作息时间。食堂往往存在就餐人数集中拥堵,排队时间过长等问题,而且还会产生一些不文明的社会现象。为解决传统食堂点餐就餐的模式,设计了一种无线称重监测食堂菜品剩余量的系统,利用NRF24L01和HX711芯片的特点,将自动称重控制技术与无线通信技术有机结合起来。通过MySQL制作菜品剩余量的数据库,并由电脑、显示器和微信小程序向就餐人员动态实时的显示食堂所售菜品的各种信息。该系统的使用能够减少排队、等座时间,提高就餐效率,还能选择自己喜欢的菜品,极大地提高了就餐效率和服务质量。

关键词: 嵌入式系统;无线模块;微信点餐;电子称重

中图分类号: TP393.1    文献标识码: A    DOI:10.3969/j.issn.1003-6970.2020.09.026

本文著录格式:康瑞浩,朱明远,李彪,等. 基于无线通信网络的食堂菜品动态称重系统研究与实现[J]. 软件,2020,41(09):9195

【Abstract】: In daily life, schools and enterprises have strict work and rest time. There are many problems in canteen, such as crowded dining population, long queue time, and some uncivilized social phenomena. In order to solve the traditional mode of ordering and dining in canteen, this article designed a wireless weighing system to monitor the leftover quantity of canteen dishes. Using the characteristics of nRF24L01 and hx711 chips, the automatic weighing control technology and wireless communication technology were organically combined. A database was established through mysql to show the leftovers of dishes, and display all kinds of information of the dishes sold in the canteen to the dining staff in real time by computer, display and wechat program. The use of the system can reduce the waiting time, improve the efficiency of dining, but also choose their favorite dishes, which can greatly improve the efficiency of dining and service quality.

【Key words】: Embedded system; Wireless module; Wechat ordering; Electronic weighing

0  引言

目前,学校、工厂和企业的食堂基本都是通过就餐人员直接到食堂查看菜品,然后与售卖人员进行口头交流,完成点餐和支付过程。这种模式不依赖于互联网,无法将菜品信息传递给就餐人员,在就餐高峰期造成人员拥堵,传统人工处理就餐流程效率低下[1]。而且传统的称重系统信息传输多使用有线通信进行数据传输。然而食堂所处环境复杂,不宜存在过多线路,并且各种元件通过有线方式连接比较麻烦[2]。在无线通信技术高速发展的今天,随之应用该技术的计算机系统也与日俱进。针对目前食堂存在的各种问题,本项目设计了一种无线称重监测食堂菜品剩余量的系统,本系统具有硬件结构简单,功耗低,软件使用灵活方便等优点[3]。通过无线通信模块,将采集到的数据实时传输到上位机。通过多次数据的采集,利用MySQL制作菜品剩余量的数据库[4],并通过微信小程序进行查看和预定饭菜,就餐人员利用该系统可在线选择菜品并生成就餐码和支付信息。也有利于食堂根据菜品剩余数据库及饭菜预定信息更好的向就餐人员提供服务。

1  系统总体结构

无线称重控制系统主要完成数据采集、数据显示、数据发送、数据储存、信号转换等功能[5]。无线称重控制系统主要由食堂前端、主控室和用户服务平台三部分构成,食堂前端包括称重平台、控制部分、显示模块与无线通信模块。主控室由无线通信模块和上位机组成。用户服务平台即微信小程序前端。系统总体结构如图1所示。称重平台主要由食堂菜品盘和装有称重传感器两部分组成。称重控制器由数模转换电路、显示电路和单片机通信电路等组成[2]。无线通信模块的功能主要是进行数据的转发,在称重控制器与食堂主控室内的计算机之间建立无线通信连接。上位机通过无线通信模块采集各称重控制器的数据,同时对采集到的多种菜品剩余重量数据进行集中管理[6],并将数据传递至微信小程序前端,以便客户对食堂当天情况有所了解。

2  系统硬件

2.1  称重控制结构

称重控制结构以STC89C52单片机为控制核心,处理经数模转换后的称重传感器数据,并由显示电路与通信电路进行输出,结构框图如图2所示。

STC89C52单片机是国产低功耗的8位单片机,其价格便宜、功能完善、资源丰富是系统称重控制器的理想选择[7]。重量数据采集主要由传感器采集输出连续变化的电压值;数模转换电路由24位A/D转换器HX711芯片完成将连续的模拟电压值转换成数字量,并交由单片机进行处理。显示电路主要完成菜品剩余重量的数据显示。通信电路是将单片机输出的TTL电平信号经过NRF24L01芯片传输,在接收主机端经CH340T芯片实现USB转串口与PC建立连接进行数据传输。

2.2  称重传感器结构

本系统选用的是目前应用最为广泛的电阻应变式平行梁传感器。平行梁传感器对测量环境要求不太严格,可以在各种恶劣的条件下保持正常地工作,它的体积也一般比较小,非常适合小型化的民用称重设备。平行梁传感器构造简单、稳定性较好,精度高、量程大、灵敏度较高、频率响应特性优异[8]。

平行梁传感器的原理:平行梁会因外力作用发生弹性形变,而处在平行梁上按规则分布的电阻应变片也随这力的作用产生形变[9]。由于应变片形状内部结构变化会导致应变片阻值发生变化,电桥电路将不能平衡输出,产生差动信号。传感器中阻值、电压等参数变化微弱,经过放大电路倍增和模拟量到数字量转换,经单片机内部运算就可以得到待测物的质量[7]。传感器结构如图3所示。

电桥电路是由四个电阻应变片组成的桥臂,在外力作用下都发生弹性变形,同处一个温度场,当4个应变片的材料、阻值、应变量ε都相同时,由于R1与R3为拉应变正值代入,R2与R4为压应变负值代入,温度影响相互抵消,电压输出灵敏度高。则可推导出以下公式(1):

本文在使用过程中将该传感器放置在盛放菜品餐盘的几何中心处,菜品盛放过过程中尽量保证餐盘内菜品均匀,减少称重采集数据误差;其次,在菜品餐盘与传感器之间采用保温层隔绝,避免菜品冷热不同对传感器灵敏度产生过大影响。

2.3  称重A/D转换模块

由于单片机只能识别处理数字信号,但由于传感器输出的是模拟信号,单片机无法直接进行数据处理,因此需要通过A/D转换模块将模拟信号变成数字信号,同时传感器电桥输出电压非常微弱,如果直接处理会导致信号丢失或失真,则须经过放大电路倍增和模拟量到数字量转换,最后形成单片机可识别处理的数据量。为提供可靠的信号放大以及数模转换,因此选用了集成电路HX711模块[10]。如图4所示。

数模转换精度对系统参考电压要求较高。而单片机内部A/D最高为12位,人为提高精度将影响其参考电压精度,需要外置A/D芯片。HX711专门应用于精度较高的称重传感器的24位数模转换芯片,该芯片集成度高、响应速度快、抗干扰性强、可靠性较高,能够降低称重系统的开发成本[11]。该芯片已将外围电路集成,平行梁传感器和芯片内A/D转换器均由芯片提供稳压电源,不需要系统单独提供模拟电源[12]。芯片内制时钟振荡器,只需要上电即可自动复位,简化了开机的初始化过程。而且不需要对芯片内部寄存器编程,控制信号由单片机引脚驱动,极大地简化了开发难度,提高了开发效率。编程时可任意选取通道A或通道B,与内部的低噪声可编程放大器相连,获得不同的编程增益。通道选择参照表1。

2.4  称重显示结构

目前显示主要有LED与LCD两种方式,考虑到本系统要显示的数据量相对较多,因此决定选用性能更加优异的LCD屏。常见的有LCD1602普通屏以及TFT真彩屏,本系统虽然数据量大但对颜色没有要求也不需要显示彩色图像,采用TFT会降低单片机的处理速度,而且LCD1602 模块成本低,控制简单能够满足现实的要求。因此从成本和实用性来看本系统选择使用LCD1602作为显示器件,LCD1602可以最大显示2行32个字符,液晶接口电路采用并行通信模式实现,可以相对减少单片机的I/O口资源。LCD1602模块可以和单片机直接连接,电路简单。硬件电路如图5所示。

2.5  无线通信接口

本系统采用NRF24L01无线射频收发模块,NORDIC公司生产的NRF24L01是一款采用FSK调制的无线通信芯片,内部开发集成自定的Enhanced Short Burst协议,可以实现一对多的无线通信[7]。

无线通信速速率可以达到2 bps,能够实现快速实时的无线信息传送功能,为小型单片机系统构建无线通信提供了方便快捷的技术支持[13]。NRF24L01无线模块连接称重控制器,并采用TTL电平变化完成对串口进行数据的读写,图6为NRF24L01无线模块与STC89C52单片机连接示意图。PC机与无线通信模块之间通信需要进行电平转换,在此采用了STC14W404AS控制的CH340T芯片将TTL串口转换成USB串口,使得接口形式可在电脑上可识别出来。

3  后台软件

3.1  无线通信模块软件系统

本文采用NRF24L01无线模块进行重量采集端和数据读取端之间的信息传输,数据传输地址如表2所示,首先进行模块初始化,将LED、CE、SCK引脚均拉低,CSN引脚拉高,SPI完成初始设置。根据主从机的信息设置SPI接收、发送的地址。将工作频道、数据长度、发射频率确定设置。此时模块进入待机状态。然后设置工作模式,根据拉低CE引脚电平变化设置不同模式,并配置SPI读写寄存器,完成好工作模式的配置。

發送端:打包好数据,通过NRF24L01_TxPacket()函数发送数据包。

接收端:通过NRF24L01_RxPacket()等待数据的到来。无线传输程序流程图如图7所示。

3.2  后台软件系统

通过COM串口将数据上传收集,将剩余重量数据通过MySQL保存到数据库中。用户服务平台基于微信小程开发,微信小程序具有跨平台、即用即走、完善的文档、高效的开发框架等优点[14]。系统后台采用微擎框架,使用Sublime编辑器编码。前端为基于HTML+CSS技术的UI界面。利用PHP语言和数据库MySQL结合开发[15]。当用户通过观察菜品的价格、名称、剩余量,确定自己的需求并提交订单时,将会触发后台事件并调用程序进行处理,生成核销二维码并预约成功。服务平台软件前后端显示界面如图8所示。

4  系统功能的实现及应用

本系统的无线模块是工作在2.4 G~2.5 GHz世界通用的ISM频段的新型单片射频收发器件,在很多条件和因素的影响下传输距离可达100 m,完全可以应对食堂环境相对复杂的环境。将自动称重控制技术与无线通信技术有机结合起来,将采集到的数据利用无线通信传输到远程服务器。通过多次数据的采集,利用MySQL制作菜品剩余量的数据库,并通过微信小程序进行查看和预定饭菜。该系统能实现以下功能:

(1)当前菜品信息显示。

(2)菜品剩余重量数据实时显示。

(3)通信状态显示。

(4)历史数据:历史数据查看、数据输出打印。

(5)用户管理:用户身份信息、用户密码修改、用户消费。

(6)系统管理:窗口管理、退出系統。

系统测试运行过程如图9所示。

5  结语

本文采用STC89C52单片机作为无线电子称重系统平台的处理芯片,用NRF24L01芯片组成无线收发通信模块,用HX711芯片作为信号处理模块,通过无线通信的方式对远程称量设备的数据进行采集和控制,将自动称重控制技术与无线通信技术融为一体,通过串口将数据上传到PC机,将剩余重量数据通过MySQL保存到数据库中,并通过微信小程序进行控制查看和预定饭菜。本系统为用户提供了一个移动的校园订餐平台,用户不仅可以查看菜品剩余量,还可以将其作为食堂采购提供可靠的分析数据,能够减少排队、等座时间,提高就餐效率,还能选择自己喜欢的菜品,极大地提高了就餐效率和服务质量。

参考文献

[1]刘琤, 赵桓鑫, 王先勇. 基于Spring Boot技术的微信平台校园食堂智能点餐系统设计[J]. 无线互联科技, 2019, 15: 37-38.

[2]邓福军, 朱建鸿, 高美凤. 基于无线通信的远程称重监控系统设计[J]. 现代电子技术, 2012, 11: 154-157.

[3]刘海洋, 王春光, 陈智. 基于MC13213的无线风蚀数据采集器的设计[J]. 内蒙古农业大学学报(自然科学版), 2013, 07: 96-100.

[4]赵秀芹, 刘杨青, 李瑞祥. MySQL数据库使用技巧三例[J]. 网络安全和信息化, 2019, 08: 90-91.

[5]谢敏, 李金玲, 李志. 无线电子称重系统平台的研制[J]. 电子世界, 2016, 24: 94-95.

[6]黄衍标, 曹淑宽. 基于nRF24L01的智能物联系统组网技术研究[J]. 现代信息科技, 2018, 10: 192-194.

[7]张波, 王晨阳, 徐传旭, 等. 基于STC89C52和HX711的电子秤设计[J]. 现代信息科技, 2019, 08: 42-46.

[8]张荣轩. 一种电阻应变式称重传感器结构[J]. 衡器, 2012, 04: 45-47.

[9]李承跃, 马利. 压力传感器特性研究实验的ANSYS辅助教学[J]. 实验室研究与探索, 2010, 03: 24-26.

[10]葛海江. 基于HX711的高精度电子称重研究[J]. 电子测试, 2019(10), 31-32.

[11]刘磊. 基于A/D芯片HX711的自制桥式传感器[J]. 数字技术与应用, 2018, 04: 89-91.

[12]王洋洋, 金晓龙, 郭斌. 基于STC89C51单片机的棉花重量采集系统的设计与实现[J]. 电脑与电信, 201210: 24-25.

[13]林英杰, 邱海涛, 陈洪财. 可编程防丢防盗报警器[J]. 电子制作, 2018, 03: 28-30.

[14]杨士卿. 基于微信小程序开发非正式学习环境可行性分析[J]. 201807: 147-148.

[15]王维, 沈长娇, 高伊腾. 微信点餐小程序的系统与实现[J]. 电脑编程技巧与维护, 2019(09), 70-72.

猜你喜欢

嵌入式系统
Teaching Research on IoT and—Embedded System of Software Engineering
面向应用的智能专业嵌入式系统教学
办公自动化系统的设计
嵌入式系统课程“中断、异常与事件”教学实践及启示
面向实践创新人才培养的嵌入式系统教学研究