本帖最后由 tinnu 于 2019-6-23 23:39 编辑
一、简介
水位测量语音报警装置的开发基于兆易创新GD32E231C-START评估板。能够对水位进行测量、显示、语音警告、上报云端。适合雨量计数器、小水缸等盛装液体的容器的物联网监控。
二、系统框图
三、系统框图
- 显示系统1602+PCF8574
1602+PCF8574组成的显示模块可以实现两个IO口控制显示功能,其协议总吸为I2C总线。
- JQ8400+喇叭
JQ8400是佳强电子的一款即语音存储与解码播放为一体的MP3模块,通过UART接口可以实现语音播放。
- ESP8266
ESP8266是乐鑫的无线WIFI SOC,是目前市面上最常见的DIY无线模块,其中上图的ESP8266-01是常见的低成本模块,通过串口通讯,可以快速实现网络连接。ESP8266固件多样,可以刷入不同的物联网固件接入对应的云端网络。本项目接入的中移云,其基于HTTP协议,通过透传+JSON信息实现,只需要普通的AT指令集便可实现。
其底座是一块ESP01 Breakout扩展版,使ESP8266-01可以插在面包板上。由于ESP8266工作时必须对CHPD接口进行上拉,否则不会工作,因此插在面包板上更容易配置电路连接。
- DS3231
DS3231是一款高精度、带补偿的时钟芯片,其内置晶振,常温精度小于3.8ppm,宽温补偿,ID码,电池充电及电量监测等一系列功能。
在开发过程中,由于没有注意到GD32E231带有强大的RTC日历时钟,因此临时采用该模块实现时钟功能。后来把时钟功能转移到RTC后,DS3231就只负责初始化配置RTC时钟的功能。由于没有重新绘制PCB、设置低功耗时钟供电系统,因此外挂低功耗日历时钟模块是必须的,但该模块基于IIC总线,读取远比内部总线的RTC要慢,因此运行过程中采用内部RTC。
事实上可以采用ESP8266握手Onenet时的网络数据包中的网络时间戳对时钟进行初始化,但考虑到网络信号可能不一定可靠,因此还是暂时采用外挂模块的形式。
- water sensor
water sensor传感器可以将目前水位线转化成模拟信号量,反馈给单片机,通过ADC采样可以确定液面的高低。
四、效果演示
整体图:
视频演示(其中语音播报的声音有点小,但仔细听还是听得到的):
五、工程代码及doc附件
工程采用MDK5.27开发
工程代码:
water_msg.rar
(221.58 KB, 下载次数: 13)
DOCX文档:
水位测量语音报警装置.docx
(954.37 KB, 下载次数: 8)
|