查看: 2704|回复: 0

[参赛作品]家庭智能鱼缸

[复制链接]

4

主题

8

帖子

49

积分

新手上路

Rank: 1

积分
49
发表于 2017-6-30 22:11:51 | 显示全部楼层 |阅读模式
本帖最后由 33****@qq.com 于 2017-7-1 08:40 编辑

   参赛作品【智能鱼缸】   


2017-07-01_021143.jpg


作品摘要:
       随着物联网时代的到来,智能物联逐步嵌入了人们的生活中,智能插座,智能电灯,智能门禁等一系列的物联网控制,让我们的生活变得多姿多彩,当智能物联遇上了鱼缸会擦出怎样火花呢!今天我为大家带来的一个智能作品“智能鱼缸”。           目前各种各样的观赏鱼缸之类的工艺产品逐步进入了家庭,由于现有的观赏鱼缸水温监测、水循环、温度控制等操作都需要人为的手工进行控制,这给人们带来了很大的不便,本作品对目前大多数水族箱控制设备应用现状的分析和研究,提出了一种多功能的观赏鱼缸智能控制系统。该控制系统以单片机为控制核心,结合传感器技术,集多种控制功能于一体,包括恒温、自动照明、自动换水、自动喂食、自动水循环等,同时在系统中设计一个通信模块,可实现对鱼缸的远程控制和管理。整个系统分为两个部分:第一部分是以arduino为核心的控制部分,实现对传感器信号提取,one net平台下发数据的分析处理,并输出多路信号实现对鱼缸相应功能的实时控制,第二部分是以ESP8266为核心的透传数据部分,用于将arduino处理传感数据和模块状态数据实时上传one net 平台,两部分之间以串口进行通讯。实现对鱼缸控制器的智能管理。
        创造目的:
     “鱼缸"又称“水族箱",“,而随着科技水平的不断进步,以及人们养殖观赏鱼和种植水草的水平的不断提高,水族箱不仅被认为是一个养动植物的容器,而且被认为是自然域的一个缩影,是一相对完备的生态系统。在早期,水族箱多用于展览馆、公园等大众化的场所供大家观赏,随着生活水平的提高,科技和水族养殖业的快速发展,水族箱已成为普通家庭的室内装饰。近年来,这种以水草、金鱼为主的水族箱被称作“水中微缩的鱼草园林”,深受人们的喜爱,但由于人们缺乏养护的技艺或者是由于时间原因不能及时进行养护,往往“好景不长“,最后的结局多是“草枯鱼亡"。
        针对水族箱的养护问题,市场上也陆续出现了各种控制鱼缸水温、排水、充氧和照明的设备,如过滤器、加热器、加氧泵等改善水质的设备。但是由于产品繁多,功能不统一,而且大多是非智能化的、单一的恒温控制、充氧或是照明的系统。如果要组成一套完整的智能控制系统,往往需要人为的手工进行控制,而且功能使用不灵活、不方便,整体性能也无法得到提升。
        因此,本文以家庭中鱼缸的日常养护为背景,以鱼缸中的光照、水温、等控制为研究对象,对日常养护过程中的综合自动化及其应用技术展开研究。

        作品功能:
        随着经济水平的突飞猛进,装饰业的日趋兴起,人们对生活、家具品味的追求愈加重视。据最新资料显示:水族产品日渐丰富,水族市场更加繁荣昌盛。
智能鱼缸是新概念的高档鱼缸.智能鱼缸解决了传统鱼缸饲养及照料的困难, 并所有的功能实现全自动化供给。  

      1、传感器数据实时上传 one net 平台
      2 、自动感应室温
      3 、远程控制恒温(自动)
      4 、远程控制加热(自动)
      5 、远程控制供氧(自动)
      6 、远程控制生化过滤(自动)
      7 、远程控制照明(自动)
      8 、远程控制喂食(自动)(在设计中)


    智能鱼缸更好地饲养热带鱼,满足热带鱼的所有生存条件。让更多人成为养鱼爱好者是水族用户的首要选择.
     设计思路
         本作品以arduino为鱼缸MCU核心,通过esp8266器模块与智能鱼缸的MCU通过串口进行数据通信。手机设备云和one net 平台可以远程与鱼缸进行数据通信。
@RH1L@5MFUPV5F_HK9@S1SQ.png


本设计主要包括了主控部分、输入部分、和云服务部分来构建了一个完整的设计模型。

主控部分:主要完成MCU下发的指令控制,包括换水开关,恒温开关,以及照明灯开关等;
输入部分:是传感器的数据信息采集,感知鱼缸的一系列的环境数据变化;
云服务部分:用户界面,完成用户的指令下发,人机交互信息等;

      作品设计       接下来我为大家介绍作品的硬件demo和软件设计

1、我们所需要的硬件

arduino pro mini  x1                                 ESP8266  x1
DHT11   x1                                                光照传感器  x1
DS18B20数字水温探测传感器                     led电灯泡  x1
5v转3.3v稳压模块  x1                                 继电器   x45v 2a电源  x1                                             鱼缸  x1
恒温器   x1                                                 三合一供氧过滤水循环器  x1
洞洞板  x4                                                  导线&杜邦线若干
下载线  x1                                                   等等。。。。。

以上是最主要的器件,至于元件图片我就不晒出来了,相信大家一看都懂了!


arduino  pro mini
D10 ----水温传感器                            D6------恒温开关继电器
D11-----DHT11数据接口                    D7------三合一系统继电器
RX------8266TX                                 D8------照明开关继电器
TX------8266RX                                 D9------智能模式
A0------光照数据接口

硬件实物连接图
2017-07-01_021620.jpg


2017-07-01_022139.jpg

2017-07-01_022247.jpg

2017-07-01_022355.jpg

2017-07-01_022519.jpg


2017-07-01_022753.jpg


2、软件设计
在软件方面大数采用的是库,有很多传感器都有对应的库支持,所有让我们编写代码变得越来越简单了
一下展示部分代码,后面我会和视频连接一起放在本帖后面!


传感器数据信息上传例子
  1. temgger = temperature(tem);
  2.   if (edp_connect && temgger)
  3.   {
  4.     DBG_UART.print("18B20: ");
  5.     DBG_UART.println(tem);
  6.     packetSend(packetDataSaveTrans(PUSH_ID, "TME", tem));  //发送数据存储包
  7.   }
  8.   //光照
  9.   liggger = light(lig);
  10.   if (edp_connect && liggger)
  11.   {
  12.     DBG_UART.print("guang: ");
  13.     DBG_UART.println(lig);
  14.     packetSend(packetDataSaveTrans(PUSH_ID, "HIG", lig));  //发送数据存储包
  15.   }
  16.   //室内温度
  17.   snwgger = hjwd(snw);
  18.   if (edp_connect && snwgger)
  19.   {
  20.     DBG_UART.print("SNWD: ");
  21.     DBG_UART.println(snw);
  22.     packetSend(packetDataSaveTrans(PUSH_ID, "SNWD", snw));  //发送数据存储包
  23.   }
  24.   //室内湿度
  25.   snsgger = hjsd(sns);
  26.   if (edp_connect && snsgger)
  27.   {
  28.     DBG_UART.print("SNSD: ");
  29.     DBG_UART.println(sns);
  30.     packetSend(packetDataSaveTrans(PUSH_ID, "SNSD", sns));  //发送数据存储包
  31.   }
复制代码
水温度数据获取
  1. //温度
  2. bool temperature(char *tem)
  3. {
  4.   int temp;

  5.   DBG_UART.print("Requesting temperatures...");
  6.   sensors.requestTemperatures(); // 发送命令获取温度
  7.   DBG_UART.println("DONE");

  8.   DBG_UART.print("Temperature for the device 1 (index 0) is: ");
  9.   DBG_UART.println(sensors.getTempCByIndex(0));

  10.   temp = sensors.getTempCByIndex(0);
  11.   sprintf(tem, "%d", temp);
  12.   delay(500);
  13. }
复制代码

DHT11数据提取
  1. //环境温度
  2. bool hjwd(char *snw)
  3. {
  4. int t = dht.readTemperature();//读温度,默认为摄氏度
  5. sprintf(snw, "%d",t);
  6. }

  7. //环境湿度
  8. bool hjsd(char *sns)
  9. {
  10. int h = dht.readHumidity();//读湿度
  11. sprintf(sns, "%d",h);
  12. }
复制代码

3、平台数据显示与控制
在这里就截图大家看一下控制界面,背景用的是鱼缸背景,手机像素有点糟,谅解!

@ODTV7%PYSFT5TVAT49ED@U.png

      团队介绍

240418-150ZPP23928-lp.jpg
团队名称:赢家“WIN”
团队口号:实力加自信就是一个坚韧不可摧的团。
团队成员:王顺 万大圣 邹栋才 向芸花  
团队简介: 我们都知道团队应该是Team,而不是Group,也就是说团队不仅仅是一群人的简单的组合,而一定是不同成员有分工、有协同,是一个有机的整体,这个就叫做协同合作、相互支持。团队成员根据工作需要,根据个人特长,合理分工,有效协同,一起把事情做好。团队成员之间协同合作、互相支持,就是要使1+1>2,并且不断改进提高,使效能(效率+效果)达到最大化,1+1能不能=3,能不能=4,甚至更大,就看我们在团队的工作中如何更有效的协作和互相支持,这需要不断的训练。
        我们的团队成员,王顺、万大圣等,他们都来自物联网工程,其所涉及的专业知识面很广泛。诸如:模拟电子技术、数字电子技术、通信原理、物联网概论、C语言、单片机应用与编程、PCB电路板绘制、多媒体技术、微信开发、CAD绘图等,通过我们的辛勤劳动,做事认真负责,思虑周详,良好的团队凝聚力和向心力。“相对分工,绝对合作”,取长补短,共同完成项目作品。


质料压缩包 鱼缸.rar (26.92 KB, 下载次数: 331)
回复

举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表