一种智能鱼缸的设计与实现

2023-01-31 01:47陈瑶王凤嫔
电子制作 2023年1期
关键词:投食电平显示屏

陈瑶,王凤嫔

(大庆师范学院,黑龙江大庆,163712)

随着社会节奏随之逐渐加快,人们生活水平不断提高,在人们在享受快节奏生活的同时,也更希望在家庭中营造出轻松惬意的生活,因此选择饲养宠物作为放松方式的人也逐渐增多,水生宠物占有相当大的比例。与此同时,一些问题也暴露出来,如搬家失去了喂养条件,加班或者旅游对宠物照顾不周导致宠物生病,甚至死亡等。为没有时间精力的人设计一款成本低、操作简单、高效节能的智能鱼缸,不仅可以为观赏鱼类提供一个更好的生存环境,也可以提高人们饲养观赏鱼的体验。

1 系统功能设计

智能鱼缸设备需要通过屏幕显示剩余食物重量和系统运行状态,提供手动控制和自动控制功能:手动控制可以点击屏幕上的按键进行操作,自动控制可设定换水时间、投食时间、投食重量等数据信息。系统的重量测量上限为1公斤,对剩余食物重量监测误差在5%以内。设定换水、投食间隔时间误差控制在1%以内。

根据需求,将系统功能划分为按键输入模块、重量数据采集模块、水位数据采集模块、网络控制模块、数据处理模块、LCD显示模块、换水控制模块、水温控制模块和投食控制模块,同时能够进行自动模式和手动模式的切换,各个功能模块都有相应的信号输入和信号输出端口。系统功能模块关系图如图1所示。

图1 系统功能模块

在智能鱼缸控制系统中,系统模块较多功能复杂,需要更高的运算速度,STM32F103RCT6单片机体积较小、延迟较低、操作指令简单,性价比高,因此作为中心处理模块。系统需要显示运行状态、剩余食物重量,发出警报信息,需要用按键切换显示界面,输入设定值等操作,采用TFTLCD电容触摸屏为显示和按键模块,它的工作电压为3 3V,240×320分辨率,16位真彩显示(65536色),自带背光电路,16位并口驱动,能够实现触控操作。采用应变片与HX711共同组合作为重量数据采集模块。采用抽水泵作为注水开关,采用电磁阀作为排水开关,采用舵机作为投食开关,系统需要配置外置水箱。

2 硬件设计

核心控制模块由STM32芯片、石英晶振时钟电路、复位按键电路、MCU启动电路、SWD下载电路、MCU电源滤波构成,本次设计最小系统电路图如图2所示。

图2 最小系统电路图

■2.1 投食重量测量模块设计

智能鱼缸系统可以将剩余食量数据显示在显示屏上,压力传感器可以准确地采集出剩余食物重量,为系统在自动控制过程中的投食重量提供数据支撑。

电阻式的应变压力传感器,根据电阻的压变效应可以将压力信号转变为电信号,对于应变片的搭建常采用桥式电路,桥式电路稳定性更高、抗干扰性更强,不容易受到影响。系统中选用HX711作为AD转换芯片[1],可以满足低功耗运行的需求,它可靠性高、抗干扰性强、采样速度快,可在-40℃~80℃的温度范围内稳定运行,使用方法简单,通过对芯片引脚简单的数字控制即可改变芯片的状态,不需要对芯片内部的寄存器进行编程。

■ 2.2 投食控制模块设计

舵机可以通过PWM来控制旋转角度,进而控制投食系统打开关闭,所以很适合完成智能鱼缸投食功能,根据其旋转的角度来控制投食的速度。系统中采用了单片机的PWM波来产生稳定的可调的高电平来控制舵机[2]。

■ 2.3 换水控制模块设计

智能鱼缸系统需要对电磁阀、水泵设备进行控制,为了实现信号与电路的分离,采用具有光耦隔离的继电器来作为控制模块。

继电器可以使用小信号来控制大电流,相比于其他方式更为安全。在接收到单片机发出的指令后,控制水流电磁阀打开或者关闭,此继电器采用12V电源供电,并且可以通过跳线选择高/低电平触发,双触点模式可以选择常开触点或者常闭触点,具有光耦隔离功能可以有效的防止电源线对信号线进行干扰,MCU发出控制指令给继电器后,继电器内光耦模块接收到信号,光耦内LED点亮,光敏半导体接受到光信号产生光电流,S8050三极管的基级电压被拉高,三极管导通继电器电磁开关闭合,继电器状态显示小灯点亮。继电器控制电路如图3所示[3]。

图3 继电器控制电路图

■ 2.4 显示模块设计

为完成智能鱼缸中剩余食物重量显示、系统的运行状态显示、各种控制按键显示,需要一款LCD电阻式或电容式显示屏来完成上述功能。

LCD显示模块可以在触控屏上显示传感器采集到的剩余食量数据,并且在屏幕上显示食量设置按键、换水间隔设置按键、投食间隔设置按键,显示手动模式和自动模式,可以通过在触控屏上点击对应按键来控制系统运行,在不需要操作时熄灭显示屏保持低功耗模式运行。LCD显示电路由两方面构成,分别是LCD触控屏电路和XPT2046电阻式触控屏控制器,LCD触控显示屏和XPT2046电阻式触控屏控制器均为3 3V电源供电,为防止的50Hz电路的干扰,在显示屏和XPT2046芯片的供电段均采用100nF(104)电容滤波,XPT2046芯片采用了SPI的方式与STM32进行通信,此芯片的PENIQR引脚为笔触中断信号引脚,此引脚为低电平有效引脚,在LCD显示屏被按下时变为底电平,所以要连接一个100k的上拉电阻,在LCD显示屏没有被按下时保持高电平(见图4)。

■2.5 电源供电模块设计

系统中不同的元器件,其供电电压也是不同的,需要采用不同的电源模块为元器件供电。

电源供电电路由12V转5V DC/DC稳压电路、串口驱动电路、5V转3 3V电路共同组成,对于5V转3 3V电路这里选用了AMS1117-3 3V线性稳压芯片为单片机、LCD显示屏、HX711模块供电,此芯片可以稳定的输出3 3V电压,可承受最大15V的输入耐压,输出电流最大为800mA,并且在输出最大电流时压差不超过1 3V可以满足使用的正常需求。此设计一共有两种供电方式(见图4),分别为外部电源的12V供电和USB供电,12V电源供电需要先通过MP2359将电源稳压成5V,可以通过控制R28和R27两个电阻的大小来控制MP2359芯片输出电压的大小,此芯片可以提供最大1 2A的电流,足够大的电流可以保证继电器正常工作,USB供电是一个稳定的5V电源,它为串口通信模块和蜂鸣器模块供电,CH340是一款USB转串口芯片,它兼容USB2 0,是一种全双工的通信串口,可以以232或者485的方式进行通信,它可以使用5V或者3 3V电源供电,采用CH340将串口输出的数据输出到电脑上,在代码编写调试过程中有着极大的用处。

图4 显示及电源模块电路图

3 软件设计

在程序开始运行后,首先要对各个模块的IO引脚进行初始化配置,然后MCU控制LCD显示屏在不同坐标位置,显示剩余食量数据、手动控制和自动控制按钮,如果MCU读取到手动控制按钮坐标电平发生变化,则表示手动控制被按下,然后进入手动控制操作界面。同理如果MCU读取到自动控制按钮坐标电平发生变化,则表示自动控制被按下,然后进入自动控制操作界面。系统总设计流程图如图5所示。

图5 系统总设计流程图

■3.1 手动控制程序设计

当进入到手动模式操作界面后,首先LCD显示屏在不同坐标位置显示“开始排水”、“开始注水”、“开始投食”、“停止投食”、“确定”和“返回”几个按钮,当MCU接收到排水按键坐标的电平发生变化后,MCU持续采集低位鸭嘴式传感器数据:当低位鸭嘴式传感器数据为1时,控制放水继电器打开开始排水;当检测到低位鸭嘴式传感器数据为0时,控制排水继电器关闭停止排水。当接收到注水按键坐标的电平发生变化后,MCU持续采集高位鸭嘴式传感器数据:当高位鸭嘴式传感器数据为1时,控制注水继电器打开开始注水;当检测到高位鸭嘴式传感器数据为0时,控制注水继电器关闭停止注水。

当检测投食按键坐标电平发生变化后,MCU通过控制PWM波进而控制舵机的开合角度,打开投食阀门开始投食。当检测到停止投食按键坐标电平发生变化后,控制PWM波进而控制舵机的开合角度,关闭投食阀门关闭投食。当检测到返回按键坐标的电平发生变化后,则退回模式选择操作界面。

■3.2 定时自动控制程序设计

在进入自动模式后,首先MCU控制LCD显示屏显示“换水时间”、“定时投食时间”、“投喂重量”、“确定”和“返回”几个选项。在LCD屏上置有“+”、“-”按键,当检测到“+”或“-”按键坐标电平变化时,则控制定时换水时间对应增加或减少。同理定时投喂时间和投喂重量设定也是一样的操作过程。当检测到确定按键坐标电屏发生变化后,开始进入到自动控制模式,MCU控制LCD显示屏显示“进入到自动控制模式”,在自动模式下,定时器不断计时,当定时器计时时间达到定时换水时间后,产生中断,检测低位鸭嘴式传感器电平状态时候为0,若为0则MCU控制排水继电器打开,若为1则关闭注水继电器,持续检测高位鸭嘴式开关电平状态是否为0,若不为0则控制注水继电器打开,若为0则控制注水继电器关闭。当定时器计时时间达到定时投食时间后,产生中断,控制舵机旋转打开投食门,单片机与HX711重力传感器通信,读取重量数据,当读取重量=原重量-设定重量时,MCU控制舵机关闭喂食槽。

■3.3 屏幕显示及报警功能实现

当系统正常运行时,显示剩余食物重量,此时重力传感器采集剩余食量数据,并将数据通过MCU处理后,显示在显示屏上,如果采集到的重量小于设定的重量时,控制LCD显示屏显示食物不足警报,当采集到的重量达到或大于设定的重量值时,控制LCD显示屏则停止显示食物不足警报。

4 系统调试和运行

制作完成的系统如图6所示。

图6 系统实物图

系统经过多次测试,测量数据与实际重量相比整体偏低,原因为LCD显示重量的最小精度为1g,称重盘与食物槽之间存在摩擦接触,导致数据发生误差。随着测量重量的增大,摩擦对于精度的影响逐渐降低,误差也从5%左右下降到1%,基本可以达到投喂系统的精度需求。

经过一段时间的运行状态测试,换水功能保持稳定,投食功能保持稳定,缺食警报功能正常工作。测试是在室温环境下进行,系统功能基本符合设计要求。

5 结语

本系统为在校大学生根据所学知识进行的一次系统设计尝试。在宠物逐渐成为家庭成员的趋势中,提高水生宠物生存环境管理的智能化水平,能够提升宠物主人的生活体验。在大学生创新创业训练计划项目的平台上,将进一步将智能鱼缸降低成本后商品化的尝试。

猜你喜欢
投食电平显示屏
投食瞬间
一块布就是一个显示屏?
投食
苍蝇迷恋显示屏
LG申请欧盟商标 或布局MicroLED显示屏
未来五年LED显示屏出货将保持16%增长
三电平PWM并网变换器LCL滤波器量化设计
准PR控制的三电平逆变器及中点平衡策略
光伏并网系统二电平逆变器的故障诊断
NPC五电平Z源逆变器的设计研究