APP下载

基于GSM的垃圾桶溢出报警系统设计

2022-01-19胡振山江振青吕海燕

物联网技术 2022年1期
关键词:激光测距垃圾桶串口

胡振山,江振青,吕海燕

(临沂大学,山东 临沂 276000)

0 引 言

随着城市的高速发展、生活水平和消费水平的提高以及饮食行业的迅速发展,城市生活垃圾不断增多,垃圾的成分也越来越复杂,造成的污染问题也日益严重。垃圾在腐化过程中,产生氨、甲烷和硫化氢等有害气体,形成恶臭,严重污染大气。所以,垃圾的及时处理就成为了困扰人们的重要问题。本文在系统设计过程中充分考虑到各种传感器高速发展的成果以及手机已普及的社会现状,认为现有条件可以满足本系统及时报警的要求。本系统基于GSM网络的短信服务,在STM32F103ZET6的控制下,能够以短信的形式提醒垃圾回收人员及时更换垃圾桶。

1 整体方案设计

本系统总体方案设计为:通过激光测距模块不断地检测垃圾桶内的距离信息,从而判断垃圾桶内容量是否充足;在单片机的控制下通过GSM短信模块将信息实时传送给目标手机,完成整个系统的功能。通过激光测距模块进行测量,测得的距离信息经单片机处理判断后,当距离过近时发送AT指令将短信发送到目标手机上。本系统搭载了语音识别功能,该功能在其他工作中已经实现。系统整体流程如图1所示。

图1 系统流程

系统在工作时,电源部分为整个系统供电;单片机加载内部程序,并在内部程序的调控下完成系统的各项功能。激光测距模块不断地进行桶内容量的检测,并将测得的信息发送到STM32中;STM32对接收到的信息进行分析判断,达到一定条件后通过串口发送AT指令控制GSM模块发送短信给目标设备。

2 系统设计

2.1 电源模块

系统由12 V电源供电,经AMS1117芯片降压到5 V和3.3 V,为单片机和模块进行供电。电源电路如图2所示。

图2 电源电路

AMS1117是一个正向低压降稳压器,内部集成了过热保护和限流电路,一般用于电池供电和便携式计算机的选择。其输入电压不能超过18 V,本设计中输入12 V电压,首先通过AMS1117-5芯片将电压降到5 V,再通过AMS1117-3.3将电压降到3.3 V,即可实现同时达到12 V、5 V、3.3 V供电的需求。

2.2 GSM短信模块设计

2.2.1 SIM800C简介

SIM800C模块为希姆通公司推出的一款紧凑型产品,性能稳定,外观精巧,性价比高。采用工业级标准接口,支持多种工作频率,可低功耗实现语音、SMS(短信)、MMS(彩信)、蓝牙数据信息的传输。相关参数为:四频850/900/1800/1900 MHz;支持RS 232串口和LVTTL串口;带有硬件流控制;支持5~24 V的工作范围;工作温度为-40 ~ 85 ℃。

2.2.2 SIM800C的工作方式

本模块采用串口进行通信,使用时只需要将模块的SRXD和STXD分别接到STM32单片机的PA2和PA3接口,与GND相连,调整波特率并保持一致便可以建立通信。通过单片机发送AT指令,控制GSM模块实现不同的功能,部分AT指令见表1所列。本设计中主要使用发送短信的指令。

表1 部分AT指令

2.3 激光测距模块设计

VL53L0X是ST(意法半导体)公司发布的第二代激光测距智能传感器,该芯片基于第二代FightSense技术,更快、更远、更精确;同时也是首款集成940 nm无红光闪烁激光器的激光测距传感器。采用脉冲式测距技术,即以固定周期的脉冲频率载波向空间目标发射,目标回波被接收机接收并测出收发脉冲之间的时间间隔,即可测出与目标的距离。采用该方法可有效避免相位式测距检测峰值的误差,利用了相位式检测中除波峰以外的光子,通过接收器接收到的光子时间来计算距离,长度可达2 m。

VL53L0X内部有激光发射器和光子接收传感器,工作时激光发射器发出激光经目标反射后由传感器接收,测量的距离为接收到的时间与光速乘积的一半。该模块采用集成电路总线(IC)的通信方式,控制相对简单;STM32拥有自带的IC总线,但硬件总线不稳定,所以本系统中保持采用I/O口模拟的方式,选用两个I/O口分别代表数据线(SDA)和时钟线(SCL),通过控制两个I/O口的高低电平来实现IC的通信时序,实现IC发送和接收数据的功能。数据先由激光测距进行初步处理,再通过IC的SDA线将数据发送到STM32,经STM32处理后转换得到距离的具体数值,以供后续观察和使用。

2.4 STM32单片机

本设计选用STM32F103ZET6作为本系统的主要芯片,采用ARM处理器内核,相对于51单片机更加高级。程序往往采用模块化编程,接口相对简单,本身带有很多的功能,工作速度快。该芯片采用的中央处理器(CPU)是ARM的32位Cortex-M3,拥有片上128 KB的闪存,还有20 KB的随机存取存储器(RAM)。支持各种外设,如定时器、模拟数字转换器(ADC)、串行外设接口(SPI)、通用串行总线(USB)、IC和通用异步收发传输器(UART),使得它在简单的电路上就能执行信号采集和数据滤波。内部设有RC振荡电路,频率可达40 kHz,主要用于CPU时钟,而且还带有校准实时时钟(RTC)用的晶振。内部有4个16位的定时器,每个定时器有四路输出通道。同时,该芯片带有节拍定时器(Systick)。通信方面,本芯片一共拥有13个通信接口和两个IC接口、三个通用同步收发传输器USART接口和两个UART接口(用于调试和数据通信)、三个高速SPI接口和两个音频传输总线(IS)复用以及USB 2.0全速接口,可以面向大多数单片机的设计和使用。

3 硬件制作

当模块都准备好后,为避免线路杂乱的现象,本设计将采用绘制印刷电路板(PCB)的形式实现系统线路的连接。绘制软件选用PADS,该软件是制作PCB板的一款非常好用的软件。使用PADS设计PCB时,需要用到PADS中的PADS Logic、PADS Layout、PADS Router三个部分。其中PADS Layout是最重要的一部分,通常用它进行PCB的布局,首先用PCB封装编辑器(工具-PCB封装编辑器)将器件的PCB封装绘制并保存到库中。用PADS Logic绘制所设计系统的原理图,用元件编辑器(工具-元件编辑器)进行元件的绘制;然后用PCB封装并分配到器件中,这样就可以让两个软件进行链接,用Layout进行PCB布局,用PADS Router进行布线;最后返回Layout,进行铺铜、验证设计,并输出光绘文件,交付工厂打印PCB板。Layout最终结果如图3所示。

图3 Layout输出结果

4 结果测试

系统上电后,整个系统都会处于工作状态,整体系统如图4所示。GSM模块上的蓝色电源指示灯会亮起,等待1~3 s后,模块红灯开始闪烁,实现GSM的自动开机。开机后,可以看到NET指示灯(红色),先是快闪(1 s/次),表明还没注册到网络,然后在注册到网络后NET慢闪(3 s/次)。当指示灯慢闪,则表明模块已经连接上网络,可以正常使用。

图4 系统上电初始化

所有部分准备就绪后,激光测距模块不断地将数据传送到STM32单片机,通过串口监控可以直观地看到每一次激光测距模块测得的距离信息。当单片机接收到小于设置的距离时,串口打印“距离过近”。串口监控界面如图5所示。

图5 串口监控界面

单片机发送AT指令控制GSM模块发送短信给目标设备,主要控制程序如下:

设备接收到的短信如图6所示。一切结束后,按下报警消除键,即表示警报已经处理,系统复位,继续进行检测,GSM模块继续等待指令。

图6 设备接收到的短信

5 结 语

本文设计了一款基于GSM的垃圾桶溢出报警系统。在整个系统中,由GSM模块负责完成系统的通信功能;激光测距模块作为检测传感器,负责距离的检测;STM32单片机作为控制中心。经检测,本系统可以实现垃圾桶的溢出报警功能,按下报警消除键即可消除警报,系统复位。本设计可有效解决垃圾的滞留问题,及时提醒管理员更换垃圾桶,有效地改善了空气污染问题。

猜你喜欢

激光测距垃圾桶串口
投进垃圾桶的信
投进垃圾桶的信
浅谈AB PLC串口跟RFID传感器的通讯应用
基于LabVIEW的偏振调制激光测距测量控制系统
基于高压架空线路激光测距的无人机锁定导线巡航研究
基于回波强度的激光测距误差补偿算法研究
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
基于并行控制的FPGA多串口拓展实现
自增益电路在激光测距中的应用