基于ESP8266 SOC方案的智能鱼缸控制器

 

摘要

本次项目主要目的是实现鱼缸温度自动控制,水循环的自动控制和手动控制。
本次设计不再采用本地温度调节,一个按键用于配网即可。


物料准备:

  • 2个温度传感器:(防水型DS18B20)用于检测循环箱和鱼缸温度

  • 3个继电器:一个用于常温水蓄水罐抽水和废水放水(合用一个,保证水位平衡),一个用于循环水送水(可接制氧机),一个用于循环水升温。

方案优势:

  • 支持手机远程控制
  • 采用ESP8266 SOC方案,节省成本

程序基本思路

  • 实现远程设置鱼缸温度范围,系统自动调节温度,缓慢调节温度,升温是在循环里面进行升温,而起是平衡升温。防止水温过高,升温过程中,需要和循环搭配完成。2个18B20不采用单总线,单独采集。

开发步骤

第一步:在机智云自助开发平台创建“智能鱼缸”产品,建立数据点
 
创建一个新产品,建立以下数据点

  • 显示名称:加热开关
    标识名:Heating_switch
    读写类型:可写
    数据类型:布尔值
    备注: 加热开关

  • 显示名称:循环开关
    标识名:Cir_water_switch
    读写类型:可写
    数据类型:布尔值
    备注: 循环水开关

  • 显示名称:排水开关
    标识名:drain_off_water
    读写类型:可写
    数据类型:布尔值
    备注: 无

  • 显示名称:模式设定
    标识名:auto_mode
    读写类型:可写
    数据类型:枚举
    枚举范围:0.自动调整 1.手动控制
    备注: 无

  • 显示名称:循环水温
    标识名:Heating_box_temperature
    读写类型:只读
    数据类型:数值
    数据范围:0 - 99
    分辨率:1
    增量:0
    备注: 无

  • 显示名称:鱼缸水温
    标识名:fishbowl_temperature
    读写类型:只读
    数据类型:数值
    数据范围:0 - 99
    分辨率:1
    增量:0
    备注: 无

  • 显示名称:温度上限
    标识名:Max_temperature
    读写类型:可写
    数据类型:数值
    数据范围:0 - 99
    分辨率:1
    增量:0
    备注: 无

  • 显示名称:温度下限
    标识名:Min_temperature
    读写类型:可写
    数据类型:数值
    数据范围:0 - 99
    分辨率:1
    增量:0
    备注: 无


创建好数据点之后生成SOC代码。

 
第二步:下载SOC代码,在ESP8266上烧写固件 

代码此处不在介绍,项目在附件。自行查看代码。
ESP8266 SOC方案是指ESP8266同时作为微控制器和wifi模块
 

接线如下

  • GPIO0            配网开关(短按SOFTAP,长按AIRLINK)

  • GPIO4            循环温度传感器

  • GPIO5            水箱温度传感器

  • GPIO12          加热开关

  • GPIO13          循环开关

  • GPIO14          排水开关

第三步:下载APP源码,编译,生成简单版本的apk,安装在手机上,可实现远程控制智能鱼缸。

原文链接:club.gizwits.com/thread-9052-1-1.html

推荐阅读

猜你喜欢

转载自blog.csdn.net/gizwits_csdn/article/details/81391353