Funpack2-3基于DFireBeetle ESP32-E养殖水质监控系统
一、项目任务描述
项目任务:水质监控系统
用FireBeetle ESP32-E开发板作为控制单元,观察养殖水质参数(温度/浊度/tds/pH值/电位/溶解氧中两项指标以上)的变化,并能把数据上传到IoT网站上,可实时动态显示监测水质的变化情况。
二、硬件介绍
1、FireBeetle ESP32-E开发板
(1)产品简介
FireBeetle ESP32-E是一款基于ESP-WROOM-32E双核芯片的主控板,它专为IoT设计。
它支持WIFI和蓝牙双模通信并具有体积小巧、超低功耗、板载充电电路、接口易用等特性。可灵活的用于家庭物联网改装、工业物联网改装、可穿戴设备等等。
通过和IFTTT等物联网平台的连接,你可轻松制作出你独有的特色物联网智能家居系统。
FireBeetle ESP32-E深度支持ArduinoIDE编程,并且即将支持Scratch图形化编程及MicroPython编程。 我们提供了详细的在线教程和应用案例,以及上千种免焊接的Gravity接口传感器与执行器,可轻松上手制作,大幅度降低你的学习时间。邮票孔的设计,让它可以方便的嵌入你设计的PCB上,大大缩减你的原型开发成本以及原型测试时间。
(2)特性
- DFRobot FireBeetle V2系列兼容,体积小巧仅25.4 × 60 mm
- ESP32双核低功耗主控,WiFi+BT4.0二合一
- GDI显示接口,单线连接显示屏
- 板载充电电路以及PH2.0锂电池接口
(3)性能描述
- 工作电压:3.3V
- 输入电压:3.3V~5.5V
- 支持低功耗:10uA
- 支持最大放电电流:600mA@3.3V LDO
- 支持最大充电电流:500mA
- 支持USB充电
- 处理器:Tensilica LX6双核处理器(一核处理高速连接;一核独立应用开发)
- 主频:240MHz
- SRAM:520KB
- Flash:4MB
- Wi-Fi标准:FCC/CE/TELEC/KCC
- Wi-Fi协议:802.11 b/g/n/d/e/i/k/r (802.11n,速度高达150 Mbps),A-MPDU和A-MSDU聚合,支持0.4us防护间隔
- 频率范围:2.4~2.5 GHz
- 蓝牙协议:符合蓝牙v4.2 BR/EDR和BLE标准
- 蓝牙音频:CVSD和SBC音频低功耗:10uA
- 工作电流:80mA(平均)
- 频率范围:2.4~2.5GHz
- 支持Arduino一键下载
- 支持micropython
- 片上时钟:40MHz晶振、32.768KHz晶振
- 数字I/O x10(arduino默认)
- 模拟输入 x5(arduino默认)
- SPI x1(arduino默认)
- I2C x1(arduino默认)
- I2S x1(arduino默认)
- RGB_LED:5/D8
- 接口方式:FireBeetle V2系列兼容
- 工作温度:-40℃~+85℃
- 模块尺寸:25.4 × 60(mm)
- 安装孔尺寸:M2安装孔 孔径2.0mm
(4)引脚
(5)FireBeetle 2:Gravity IO扩展板
这是一款专为FireBeetle 2系列提供的Gravity IO扩展板,它提供数字端口、模拟端口、I2C端口、UART端口和SPI端口,并且提供了电源输入排线座方便接入外部电源 ,EN排针方便关闭主板供电,无需焊接,即可使用上千种Gravity模块。
注意:本产品是FireBeetle 2系列M0、ESP32-E专用,不适合原FireBeetle系列。
2、TDS传感器
(1)简介
TDS(Total Dissolved Solids),中文名总溶解固体,又称溶解性固体总量,表明1升水中溶有多少毫克溶解性固体。一般来说,TDS值越高,表示水中含有的溶解物越多,水就越不洁净。因此,TDS值的大小,可作为反映水的洁净程度的依据之一。 常用的TDS检测设备为TDS笔,虽然价格低廉,简单易用,但不能把数据传给控制系统,做长时间的在线监测,并做水质状况分析。使用专门的仪器,虽然能传数据,精度也高,但价格很贵。为此,我们专门推出了这款arduino兼容的TDS传感器,连接至arduino控制器后,就可用于测量水的TDS值。 该产品专为arduino设计,即插即用,使用简单方便。3.3~5.5V的宽电压供电,0~2.3V的模拟信号输出,使得这款产品兼容5V、3.3V控制系统,能非常方便的接到现成的控制系统中使用。测量用的激励源采用交流信号,可有效防止探头极化,延长探头寿命的同时,也增加了输出信号的稳定性。TDS探头为防水探头,可长期浸入水中测量。 该产品可应用于生活用水、水培等领域的水质检测。有了这个传感器,就可轻松DIY一套TDS检测仪了,轻松检测水的洁净程度,为你的水质把好关。
(2)参数
信号转接板
- 输入电压:3.3~5.5V
- 输出信号:0~2.3V
- 工作电流: 3~6mA
- TDS测量范围:0~1000ppm
- TDS测量精度:±10% F.S.(25℃)
- 尺寸:42*32mm
- 模块接口:PH2.0-3P
- 电极接口:XH2.54-2P
TDS探头探
- 针数量:2
- 总体长度:83cm
- 连线接口:XH2.54-2P
- 颜色:黑色
- 其他:防水探头
3、浊度传感器
1、概述
浊度传感器是利用光学原理,通过液体溶液中的透光率和散射率来综合判断浊度情况。传感器内部是一个红外线对管,当光线穿过一定量的水时,光线的透过量取决于该水的污浊程度,水越污浊,透过的光就越少。光接收端把透过的光强度转换为对应的电流大小,透过的光多,电流大,反之透过的光少,电流小,再通过电阻将流过的电流转换为电压信号。 应用范围:可以用于洗衣机、洗碗机等产品的水污浊程度的测量。通过测量水的污浊程度来判断所洗物品洁净程度,确定最佳的洗涤时间和漂洗次数,用较少的能耗和耗水量获得满足要求的洗净比。也可以用于工业现场控制,环境污水采集等需要浊度检测控制的场合 说明:本传感器模块通过数模切换开关,可以选择输出的是模拟量或者数字量。如果选择输出是模拟量,利用A/D转换器进行采样处理,单片机就可以获知当前水的污浊度。如果选择输出是数字量,通过模块上的电位器调节触发阈值,当浊度达到设置好的阈值后,Dout指示灯会被点亮,传感器模块输出由高电平变成低电平,单片机通过监测该电平的变化,就可以知道水的浊度超标,从而预警或者联动其他设备。
2、参数
- 工作电压:5VDC
- 工作电流:40mA (MAX)
- 响应时间:<500ms
- 绝缘电阻:100MΩ (Min)
- 输出方式:
- 模拟量输出:0-4.5V
- 数字量输出:高/低电平信号(可以通过调节电位器选择对应阈值)
- 操作温度:-30℃—80℃
- 存储温度:-10℃—80℃
- 重量:30g
- 转接板尺寸:3mm*28mm*10mm
4、SCI数据采集模块
1、简介
Gravity: SCI采集模块是一款多功能数据采集模块,目前已支持温湿度、大气压等常见的20余种传感器模块集成了屏幕显示、传感器自动识别、数据存储、RTC时钟、数据处理等探究实验中的常用功能。传感器数据可通过板载的屏幕进行显示和查看,板载16M存储空间,可将传感器数据实时存储下来,通过RTC时钟可为每条存储的数据打上精确时间标签,最后,SCI采集模块会将输出的数据格式标准化,接入任意传感器时,UNO、行空板等控制器都可以使用同一个代码获取到传感器的数据。SCI采集模块极大的降低了传感器数据的获取难度,能够使用户们将更多的精力放在数据分析和处理上,助力老师们更好的进行跨学科项目教学。
2、产品参数
- 工作电压: 3.3~5.5V DC
- 工作电流:
- 输入接口:
- 数字/模拟*1
- I2C/UART*2
- 输出接口:I2C*1
- U盘空间:16M
- RTC电池:CR1220
- 屏幕尺寸:1.3寸
- 产品尺寸:62*52*13mm
3、功能说明
三、接线
四、各功能对应的主要代码片段及说明
1、图形化编程(Mind+)加载Mind+用户库
SCI数据采集模块用户库:https://gitee.com/liliang9693/ext-sci
2、 进入esayiot平台注册自己的账号,并创建设备。
注册完成登陆自己账号进入物联网平台,进入物联网平台后,点击顶部菜单的“工作间”,在工作间里即可新建自己的设备。可以新建多个设备,但是Mind+最多只支持同时对5个设备发送和接收消息。
3、点击“添加新设备”,创建设备TDS、Turbidity,并记录Topic、iot_id、iot_pwd。
4、编写程序
五、功能展示及说明
1、通过EasyIoT查看浊度值数据
点击Turbidity设备下方的“查看详情”按钮,查看水质浊度数据。看到数据如下所示:
从上图可直观看出,水质浊度值最低时是0ppm,最高时是12ppm。
2、通过EasyIOT查看TDS值
点击TDS设备下方的“查看详情”按钮,查看水质浊度数据。看到数据如下所示:
从上图可直观看出,水质TDS值最低时是3.6NTU,最高时是11.3NTU。
专业的养殖人员可以通过EasyIOT平台远程查看养殖水质情况。根据经验,即可判断出养殖水质的好坏。对于水质的异常能及时发现,可及时采取措施改善养殖水质,起到了保护养殖户的水产品安全,降低了养殖风险。
六、本活动的心得体会
1、本项目仅仅使用了1块ESP32-E、1块扩展板、2块传感器、1块SCI数据采集模块,通过Mind+图形化编程,即可实现对养殖水质的实时监控,并发送到IOT平台。这些都得益于DFRobot Mind+对这些硬件的支持。
2、在实际的应用环境,可以根据需要增加蜂鸣器以及显示模块等。
3、由于EasyIoT平台每个设备支持1000条数据,可根据实际情况,修改程序中的等待时间,修改上传数据的频率。
4、最后,感谢此次Funpack活动,以及主办方嘉禾、Digi-Key,让我有机会接触到ESP32-E及相关传感器,并在玩中得以学习与成长,最终获得丰厚的奖励。