智能米桶设计

2021-12-06 00:24关志明蔡园星邹苏楠
魅力中国 2021年50期
关键词:开发板挡板端口

关志明 蔡园星 邹苏楠

(广东科学技术职业学院,广东 珠海 519090)

引言

水稻是我国最重要的粮食作物之一。水稻加工后成为大米,我们平常都会用袋子或米桶来储存大米,这里面可能就隐藏着先前大米中的虫卵,到了适宜的温度下,尤其是在炎热潮湿的夏季,这些虫卵到达了所需的条件,也就开始孵化生虫。

当大米受潮后,水分活度值升高,霉菌和虫卵就会吸收大米中的水分进而分解和使用大米中的营养成分,然后,我们的大米也就开始霉变。

霉变的大米往往呈现的是淡黄色,经查找资料后得知,那是黄曲霉,它是有岛青霉、桔青霉、黄绿青霉的有毒代谢物的统称。而黄曲霉素是一级致癌物。

以此,为了解家庭米的存储问题,本文设计了“米童子”,存储米的容器,同时添加了抽出式通风设计,保证米的通风性,通过手机APP 到产品的联系,实现智能化存储米。

一、“米童子”产品框架结构

整体结构

容器采用硬度和韧度高、三维结构稳定的PET 材料。使用扩展板,集成开关、压力传感器,电机、风机等硬件功能,手机通过续电器来控制容器的电机开关、出米量。米通过风机制造的气流被吸上出口,压力传感器感知出米的重量并关闭电机开关,压力传感器同时感知米的剩余量,当米储量为空,返回一个信号并提示加米。当风机工作时,米从底部往上抽,存在一个临时的空间并由传感器称重,当重量达到需求量时,风机停止工作,电机打开,米从临时空间出去。如图1 所示:

图1:米桶截面图

二、硬件设计

(一)风机设计

风机工作时,米从吸嘴进入管道、滤米系统,进入风机。通过电机内部通道冷却电机后,把空气排放。由于气流到电机会产生局部真空度损失,在实际应用中,风机的真空度H 与风量Q 随着吸口的面积变化而相应变化,当电机风量最大Qmax,真空指数为零,此时效率最低。实验表明,电风机的最高效率在1/2Hmax 和1/2Qmax附近。可选择H=(0.5~ 0.6)Hmax、Q=(0.4~0.52)Qmax。在万能电路板上焊接Arduino 板和继电器,继电器通过万能电路板与Arduino 板连接,Arduino 板BLE蓝牙模块使用时与被控制的风机连接,通过BLE 蓝牙模块检测信号,利用Arduino 控制器来控制风机启停。

(二)称重模块

该模块使用压力传感器对米的重力进行数据化,Arduion UNO 实现数据处理,HX711传感器对数据化的重量进行A/D转换,转换后对数据送达Arduion UNO进行处理。称重作用的实现是通过压力传感器采集到米的重量并将其转换成电信号,输出电压信号通常很小,需要通过前端信号处理电路进行准确的线性放大。原理:V1=V2*W。其中:V1 表示满量程输出电压;V2 表示激励电压;W 表示灵敏度。AVDD=VBG*(R1+R2)/R2,由此计算压力传感器的电压AVDD。将A/D 值逆转为重力值,把数据通过蓝牙传输到手机上。临时空间称重模块与电机挡板通过压力传感器发出的信号进行通信,可以控制挡板的关闭。

(三)电机与挡板设计

本系统使用双极步进电机,电机与挡板设计是将步进电机与挡板连接,采用步进电机带动挡板齿轮的方式,利用步进器可以正反两个方向旋转的特性,实现挡板的升降。Arduino 开发板与步进电机驱动芯片连接,当临时空间的称重模块检测到重量时,发送信号至电机Arduino 开发板,由Arduino 开发板发出脉冲信号使步进电机正向运作带动挡板齿轮,使挡板下降关闭。容器边设有挡板凹槽,使挡板关闭时与容器贴合更紧密。临时空间称重模块测量出所需求米的重量时,通过蓝牙模块把数据发送到手机,手机控制电机Arduino 开发板发出脉冲信号使步进电机反向运作带动挡板齿轮,使挡板开启,米从临时空间出去。

(四)滤网设计

为了避免风机工作时,米粒进入风机内部造成机器损坏。在风机口处加装滤网装置,本产品使用8 目筛孔尺寸:2.00mm——标准目数:10 目的滤网,以圆台型安装在风机口处,该滤网为可拆卸式,方便维修与清洁。

三、APP 的总体框架

(一)APP 整体结构

“米童子”APP 系统(如图2 所示)利用蓝牙4.0 与手机APP 建立起的通信协议来控制Arduion UNO 开发板,进而控制续电气的开关。蓝牙4.0 的特点是超低的运行功耗和待机功耗,一小块电池就可以使它超强待机,所以建立的网络也是低功耗的。使用扩展板,集成开关、压力传感器,电机、风机等硬件功能。手机通过续电器控制开关,压力板通过米的重量返回信号,通过蓝牙的信号传输显示在手机上。

图2:APP 结构设计图

(二)APP 的设计环境

开发环境为eclipse,这是个对新手友好,并且开源免费的开发环境。采用开发手机应用的 安卓平台Arduino UNO 和XML 作为辅助进行的“米童子”手机APP 的开发。采用操作简捷、语法简单、发展成熟、具有很大灵活性、可跨平台运行的java编程语言。安卓操作系统是基础java 开发的操作系统,对java 开发的App 有着良好的操作体验。在编写java 语言中,完成了开关显示与设置、余米显示、输入功能、蓝牙连接提示功能以及余米不足时的警报功能,集这写功能为一体,完成整个APP 功能的设计。

四、蓝牙设置

(一)请求连接地址

开启一个线程,这个线程主要是建立一个端口。

这里做了两件事,一是通过UUID 建立端口,第二是新建了另一个线程。

值得注意的是,UUID 含义是通用唯一识别码,是一种用作识别一些硬件设备的编号,这里的UUID 在客户端和服务端必须是同一个,不然无法建立连接!这里使用默认MY_UUID

(二)发送消息

通过IO 流进行信息传输获得。

(三)服务端

服务端主要的操作便是开启一个服务端口,然后等待连接访问。

蓝牙通讯是建立一个端口通讯的过程。而且IO 通讯在服务端完全可以通用,在demo 中可将这两部分用同一个接口来实现。

五、蓝牙传输过程

主控板将扩展板上压力传感器处理的数据返回蓝牙芯片,利用虚拟串口,将数据传递给手机蓝牙并进行接收,最后由手机端的界面上显示相应参数的变化。

蓝牙连接过程。

我们将蓝牙模块与主控板连接,蓝牙模块与安卓手机端配对,使用应用程序将数据从手机发送到蓝牙模块,通过主控板从蓝牙模块读取数据,最后显示数据并控制基于数据。我们这里使用BLE 蓝牙模块,BLE 蓝牙模块是一种基于蓝牙协议的简单无线通信设备。蓝牙设备分为主从两种模式,一个是主机模式,一个是从机模式。作为主设备时,它可以查找和连接其它设备;作为从设备时只能被其它设备连接;本系统以移动终端作为主设备,以BLE 蓝牙模块作为从设备。通讯模式分为两种模式:透明传输、AT 命令模式。本系统运用AT 命令模式,我们用主板进行设置AT 命令模式,进入 AT 模式设置蓝牙的接线如下:Arduino 5V 端口连接VCC,Arduino GND 端口连接GND,Arduino Pin3 端口连接TXD,Arduino Pin4 端口连接RXD。我们可以通过USB-TTL 模块将蓝牙BLE 与电脑连接,在保证该模块没有被连接的情况下对蓝牙BLE模块设置AT 指令。

六、APP 开关控制系统

当移动端、蓝牙、Arduion UNO 开发板达成通讯协议后,手机APP 便可以通过蓝牙控制开发板。人在手机APP 输入出米重量,然后点击执行,风机便开始运转,把米从底部往上抽,抽到一个临时存米的空间。临时空间的压力传感器会称重米的重量,当米达到输入的数值后,返回一个信号,让电机停止工作,并于APP 界面中显示工作已完成,如图3 所示APP 工作流程图:

图3:APP 工作流程图

七、APP 蓝牙连接界面

手机进入“米童子”APP 后,如果没有打开蓝牙,则APP 将会提示打开蓝牙。打开蓝牙后就开始搜索设备,弹出“RiceChild”后,点击便可实现手机与单片机的蓝牙配对

APP 功能实现界面。

当手机终端与Arduino 单片机蓝牙即“Rice’Child”连通后,便可实行手机终端与硬件部分台灯及单片机的通信。界面显示中。右上角显示蓝牙是否连接,中间的“几人吃饭”则是控制输出米的重量,根据调查,一个成年人一次吃掉的大米在150g—200g 之间,所以这里的一人份输出的大米设置为170g。下方为米的剩余量,当米剩余量不足1kg 时,红灯闪烁。下方为风机开关。如图4 所示:

图4:APP 界面图

八、结语

本产品是是由java 开发的APP,通过蓝牙控制Arduino 开发板,从而控制米桶并且监测米的余量的米桶的设计,由Arduino 开发板采集需要的数据传输到手机并从APP 页面显示,称重模块压力传感器发送信号控制电机挡板关闭,在功能方面实现:控制米量输出,检查米的存量,弹出信号提示等。设计打破传统米桶功能的单一性,使米桶更智能化,进而使得生活更加智能化。

猜你喜欢
开发板挡板端口
华为交换机端口Hybrid 模式的应用
发明来自生活
一种有源二端口网络参数计算方法
一种端口故障的解决方案
基于STM32H7的FDCAN通信系统设计与实现∗
隔离型三端口变换器的H∞鲁棒控制
开发板在单片机原理及接口技术课程教学中的应用
折叠加热挡板
ARM宣布mbed Enabled Freescale FRDM—K64F开发板通过微软认证
拆凳子