APP下载

一种多功能奶瓶称重消毒装置的设计与实现

2022-07-18叶碧慧王宇鑫武永华

电子测试 2022年11期
关键词:服务器端奶瓶串口

叶碧慧,王宇鑫,武永华

(福建江夏学院 电子信息科学学院,福建福州,350108)

0 引言

随着生活水平的逐渐提升,人们越来越关注下一代的成长,尤其是新生儿的成长。对于新生儿来说,其免疫系统不够强大,对细菌的抵抗能力有限,因此要保证所用的奶瓶洁净无菌[1]。对于传统的奶瓶消毒装置来说,其主要工作原理是利用水的高温对奶瓶杀菌消毒[2]。随着科技的发展以及婴儿产业的逐渐成熟,对于奶瓶的消毒的方式也不再局限于传统的高温消毒,还出现了蒸汽锅消毒法、微波炉消毒法、化学消毒剂浸泡法、紫外线消毒法等消毒方式[3]。并基于这些方式,诞生了各式各样的奶瓶消毒装置。除了奶瓶的消毒问题,用奶是否均衡也是婴儿成长过程中面临的一大难题。不同时期的婴儿来说,其用奶的标准是不同的。定期判断婴儿最近的用奶时间和用奶量是否均衡,以便及时做出调整。目前,市面上出现的奶瓶消毒装置大多只具有消毒功能,并不具备统计奶水的摄入时间和摄入量的功能。

由于传统的奶瓶消毒装置来说,其装置功能单一,只具有传统的消毒功能,不能满足用户更多的要求。本文设计的这种多功能奶瓶称重消毒装置,利用的是紫外线消毒的方法,通过一定波长的紫外线对奶瓶照射,以此破坏奶瓶上残留细菌的分子结构,从而起到杀菌消毒的作用[4]。这种奶瓶消毒方式不仅克服了传统奶瓶消毒方式的不足,而且灭杀细菌的效率更高。同时,该装置在传统的奶瓶消毒装置的基础上,加入了称重功能与物联网功能。不仅克服了传统奶瓶消毒装置功能单一的特点,而且能够统计每次婴儿用奶量和用奶时间,并且能够将每次用奶量的数据上传至服务器,方便用户在微信小程序上实时查看,有利于用户判断近期婴儿的用奶是否均衡,方便及时做出调整。此外,该装置还加入了语音提示功能和HMI电容串口触摸屏显示触控功能[5],极大提高用户的人机交互体验。

1 装置总体方案设计

该多功能奶瓶称重消毒装置的设计主要由单片机STM32F103控制电路[6]、UVC3535深紫外线LED灯珠杀菌消毒电路[7]、JQ8900-16P语音模块、ATK-ESP8266无线Wi-Fi模块[8]、HX711称重模块[9]、压力传感器、HMI电容串口触摸屏、云服务器、微信小程序等部分组成。

本装置系统是以HMI电容串口触摸屏作为显示控制器,用户可通过对HMI电容串口触摸屏显示界面触控以实现对整个系统的控制;该装置以单片机STM32F103C8T6芯片作为中央处理器,使其控制与其相连的消毒子系统、称重子系统、语音提示子系统以及无线通信子系统。显示控制器与中央处理器之间的通信靠USART串口完成,单片机通过接收由HMI电容串口触摸屏传来的指令控制各个子系统,并将各个子系统返回的数据通过单片机发送至HMI电容串口触摸屏显示。消毒子系统由一个继电器模块和8个UVC3535深紫外线LED灯珠构成;称重子系统由HX711模块与5kg压力传感器组成;语音提示子系统由JQ8900-16P语音模块与扬声器组成;无线通信子系统由ATK-ESP8266模块构成,完成与云服务器的通信。本装置硬件设计框图如下图1所示,主要实现以下功能:

图1 装置硬件设计方案

(1)利用HX711模块与压力传感器实现对每次用奶量的测量;

(2)利用单片机内部定时器控制紫外线消毒电路对奶瓶进行定时杀菌消毒;

(3)利用HMI串口屏显示测量数据以及通过触控完成对整个系统的控制;

(4)利用JQ8900-16P语音模块与扬声器实现语音提示播报;

(5)利用ATK-ESP8266无线Wi-Fi模块将数据上传至服务器;

(6)利用客户端的微信小程序获取云服务器端的数据并向用户实时展示。

本装置的软件主要由三部分构成,第一部分为装置设备端软件设计,主要完成对装置硬件各子系统的控制作用,按其设备端硬件系统的各个子系统可以分为初始化配置子程序、显示控制器子程序、消毒子程序、称重子程序、无线通信子程序五个部分;第二部分为云服务器端软件设计,云服务器上搭建了Nginx服务器作为Web服务器[10],主要完成对设备端上传的数据进行存储、读取等操作,该部分软件设计又可以分为TCP服务程序、数据库操作程序以及HTTP服务程序三个部分;第三部分为客户端软件设计,主要完成对云服务器的数据库中存储的数据进行读取、清空操作,客户端采用的是微信小程序平台,故该部分的软件设计可以分为微信小程序的页面设计以及微信小程序后台程序设计两大部分。装置软件设计框图如下图2所示。

图2 装置软件设计框图

2 装置硬件关键电路设计

本设计采用的是单片机STM32F103C8T6芯片作为系统的中央处理器。该芯片含有三个USART接口,三个接口分别与HMI电容串口触摸屏、ATK-ESP8266无线Wi-Fi模块以及JQ8900-16P语音模块相连。通过HX711模块的PD_SCK与DOUT管脚与单片机PB.0与PB.1相连,实现HX711模块与中央处理器的通讯。此外,单片机STM32F103C8T6芯片的PB.5口与继电器模组的信号触发端相连,控制继电器模组的触发状态,从而实现对UVC3535深紫外线LED灯珠电路的控制。装置硬件电路原理图如图3所示。

图3 装置硬件电路原理图

2.1 称重硬件电路设计

该子系统由HX711模块与5kg压力传感器组成,实现用奶量称重功能。HX711电路图如图4所示。

图4 HX711电路图

本系统的5kg压力传感器供电电压由HX711部分电路提供,由该电路可得供电电压的计算公式如(1):

HX711模块中的基准电压VBG的值为1.25V,R1为20KΩ,R2为8.2KΩ,带入可计算出供电电压为4.3V,从而可得满量程的输出电压为4.3mV。该子系统使用的AD转换器HX711芯片A通道可进行128倍的信号增益,当放上5kg物体就会产生4.3mV的电压,4.3mV的电压经由HX711模块A通道放大128倍,然后处理为24位的转换数据,最后由单片机STM32F103C8T6芯片按一定时钟序列读取转换。

3 装置软件设计

3.1 装置设备端软件设计

装置接通电源后,首先会对各个子系统与单片机连接的模块、USART串口、输出的外设端口、通用定时器等进行初始化配置。初始化配置完成后,程序将进入主循环,等待接收显示控制器向USART串口一发送的操作指令。根据接收到的显示控制器指令,单片机会调用相应子系统的程序控制子系统执行相应操作。装置设备端主程序流程图如图5所示。

图5 装置设备端主程序流程图

本装置所用的ATK-ESP8266模块是用AT指令进行操作,单片机通过USART串口二向ATK-ESP8266模块发送AT指令实现上传数据功能。由于本设计只向云服务器上传每次称重数据,故每次上传数据的过程只通过USART串口二向ATKESP8266模块发送3条AT指令,发送的AT指令及功能如表1所示。

表1 上传数据发送的AT指令及功能

3.2 云服务器端软件设计

该装置在云服务器上搭建了Nginx服务器作为Web服务器。在Web服务器上搭建了TCP软件服务器、HTTP软件服务器以及Redis数据库[11]。云服务器端通信软件设计如图6所示。

图6 云服务器端通信软件设计

本设计使用Redis数据库作为存放称重数据和上传时间数据的存储空间。设备端通过ATK-ESP8266模块与云服务器端的TCP软件服务器建立TCP通信,TCP软件服务器用于接收设备端上传的称重数据,并将上传的数据存储于Redis数据库中。云服务器端的HTTP软件服务器与客户端之间由HTTP通信,客户端通过HTTP软件服务器读取Redis数据库中存储的称重数据和时间数据,并通过发送操作指令实现清空已存储数据的操作。

3.3 客户端软件设计

该装置的客户端展示是基于微信公众平台,利用微信小程序作为前端展示界面。该系统通过微信开发者工具软件完成小程序的开发,能够简单实现获取云服务端数据库的数据和清除所有云服务端数据库数据的功能。微信小程序软件架构图如图7所示。

微信小程序的软件架构主要由view模块与service模块构成,view模块负责前台展示,service模块负责后台逻辑,两个模块之间通过JSBridage通信[18]。view模块相当于前台页面,当用户在页面上进行操作时,view模块会通知service模块,通过service模块进行分析处理,service模块可向云服务端HTTP软件服务器接口发送数据请求,并把接收的数据发送至view模块更新显示。

4 装置测试

4.1 称重测试

装置的测试主要是测试5kg压力传感器和HX711模块组成的称重子系统测量的精度,该部分测试利用砝码辅助完成。采用一组砝码作为重量基准,分别测量放入不同砝码时,称重子系统所得到的重量,然后计算测量的重量与实际重量的相对误差,就能判断该称重子系统的精度。测量砝码重量与实际砝码重量以及两者相对误差如表2所示。

表2 测量砝码重量与实际砝码重量以及两者相对误差

在该部分的测试过程中,放置砝码重量与测量的相对误差最大为0.2%,经过调试可以发现主要有两个原因,一是当电源接线发生抖动时,输入的电源电压会产生波动,且原本的输入电源电压本身不稳定;二是HX711模块的PD_SCK和DOUT引线移动或者称重装置处于非水平状态。

4.2 消毒功能测试

该部分的测试主要是测试消毒子系统是否能够正常运行。正常工作状态下的UVC3535深紫外线LED灯珠的工作电压为6.0V-6.5V,工作电流为40mA。在该部分的测试过程中,可以观察到当开启消毒功能时,继电器模组触发指示灯(绿灯)与UVC3535深紫外线LED灯珠皆正常亮起。通过万用表对正常消毒状态下的UVC3535深紫外线LED灯珠两端电压和电流进行测量,测量得出灯珠的电压为6.01V、电流41mA,由此得出UVC3535深紫外线LED灯珠能够正常工作。而且,通过手机秒表对消毒时间进行测量后,对比可以发现实际消毒时长与定时时长基本一致,满足设计要求。

4.3 微信小程序测试

该部分的测试主要是测试设备端获得的称重数据是否能够发送至云服务器、客户端微信小程序能否获取云服务器端Redis数据库中的存储数据并正常在主页面显示以及微信小程序能否实现清空云服务器端Redis数据库中存储数据的操作。在该部分的测试过程中,设备端通过对奶瓶测量称重数据,获取用奶量的称重数据为930g。然后在显示控制器HMI电容串口触摸屏上点击上传按钮,将本次测量的用奶量称重数据通过ATK-ESP8266无线Wi-Fi模块上传至云服务器端。最后,通过智能手机上的微信小程序可以观察到,设备端获取的用奶量称重数据和称重的时间能够在微信小程序的主页面上正常展示。点击清除后台数据按钮之后,可以观察到之前显示的数据被全部清除,这表明云服务端的Redis数据库中存储数据已被清结论。

5 结论

传统的奶瓶消毒装置功能单一,只具有传统的消毒功能,不能满足用户更多的要求。为了克服传统奶瓶消毒装置的不足,本文设计了一种多功能奶瓶称重消毒装置。该装置实现如下功能:对每次用奶量的测量功能、奶瓶使用后的消毒功能、实现将测量数据在设备端显示功能、实现用户操作完成后的语音提示播报功能、实现将测量数据上传至云服务器端功能、实现客户端的微信小程序对上传的测量数据实时读取功能。经过测试,该装置基本实现以上功能,且具有良好的系统稳定性与正确性。

猜你喜欢

服务器端奶瓶串口
SPECTRA婴儿奶瓶消毒器
基于可持续设计理念的奶瓶设计研究
智能的婴儿奶瓶
基于NPORT的地面综合气象观测系统通信测试方法及故障处理
Linux环境下基于Socket的数据传输软件设计
基于EM9000工控板高性能双串口通信模型设计与实现
船舶电子设备串口数据的软件共享方法
基于Qt的安全即时通讯软件服务器端设计
基于Qt的网络聊天软件服务器端设计
基于C/S架构的嵌入式监控组态外设扩展机制研究与应用