智能鱼缸管理系统-Arduino中文社区 - Powered by Discuz! Archiver

CHtime 发表于 2019-3-29 00:38

智能鱼缸管理系统

本帖最后由 CHtime 于 2019-4-6 16:50 编辑

本来是想用申请的电路板完成作品的,但是电路板迟迟不到,我还是先用我自己的板子做出来吧,今晚终于拍完了视频。
先给大家展示几张作品照片和完成视频。
1.这是手机软件APP操作界面

2.视频
http://player.youku.com/player.php/sid/XNDExNTUyNTAxMg==/v.swfhttps://v.youku.com/v_show/id_XNDExNTUyNTAxMg==.html?spm=a2h3j.8428770.3416059.1
3.今天就先到这,有时间再做详细介绍
更新鱼塘智能管理系统使用说明日期:2019年4月06日星期四               作者:chtime 本设备设计方式是安装控制端的安卓手机和被控智能鱼缸在局域网即统一内网WIFI网络下操作。 设备清单:1 安装控制端软件的安卓手机      2 被控智能鱼缸      3 具备打开手机热点的安卓手机 使用步骤:1. 打开安卓手机热点,将WIFI名称改为:TD123密码:yzl:3.142. 接通智能鱼缸电源,等待30秒3. 打开安装控制端软件的安卓手机,连接上述第1步的手机WIFI4. 测试软件,功能是否正常
温度传感器校验表
项目|编号12345
ADC940875811760700
温度(℃)05101520
温度计算算法:温度=(940-ADC)/12

湿度传感器状态校验表
项目|编号12
ADC0-500500-1024
状态缺水正常
通讯协议:
传输方向手机>>>>>设备
编号数据功    能备注
110关闭供氧
211打开供氧
320关闭补水
421打开补水
530关闭补光
631打开补光
740关闭喂食
841打开喂食
9ZD打开自动模式
10SD打开手动模式
110无指令

传输方向设备>>>>>手机
编号数据功    能备注
110供氧关
211供氧开
320补水关
421补水开
530补光关
631补光开
740喂食关
841喂食开
950水位高度:却水
1051水位高度:正常
110-99水温

下面是程序,水平比较低
#include <SoftwareSerial.h>
//实例化软串口
SoftwareSerial mySerial(2, 3); // RX, TX
int ph=13;
int led=12;

int GY=2;
int JR=3;
int BG=4;
int WS=5;

const int LDPIN = 6;

int LD=0;

int sj;//接收的串口数据


void setup()
{
Serial.begin(115200);
pinMode(ph,OUTPUT);
pinMode(led,OUTPUT);
pinMode(GY,OUTPUT);
pinMode(JR,OUTPUT);
pinMode(BG,OUTPUT);
pinMode(WS,OUTPUT);

pinMode(LDPIN,INPUT);

Serial.println("串口已连接");
}

void loop()
{
    /*程序初始化*/
   digitalWrite(GY,LOW);
   digitalWrite(JR,LOW);
   digitalWrite(BG,LOW);
   digitalWrite(WS,LOW);
   digitalWrite(ph,LOW);
   digitalWrite(led,LOW);

   /*启动ESP8266*/
   delay(1000);
   digitalWrite(ph,HIGH);
   Serial.println("AT");
   delay(5000);
   Serial.println("AT+CWMODE=1");
   delay(5000);
   Serial.println("AT+CWJAP=\"TD123\",\"yzl:3.14\"");
   delay(5000);
   Serial.println("AT+CIPSTART=\"UDP\",\"255.255.255.255\",8090,9000,0");
   delay(5000);
   Serial.println("AT+CIPMODE=1");
   delay(5000);
   Serial.println("AT+CIPSEND");
   delay(5000);
   
      while(1)
      {
      /*水体参数发送数据*/
      int WD = analogRead(A0);
      int GZ = analogRead(A1);
      int SW = analogRead(A2);
      WD=940-WD;
      WD=WD/12;
      
      Serial.print(WD);
      delay(100);
         
         if (SW>=400)         //光照:暗
         {
          Seri
          al.print("50");
          delay(100);
          }
          else if(GZ<=200)    //光照:亮
          {
          Serial.print("51");
          delay(100);
          }
         

      
       {
         /*数据接收处理程序*/
         sj = Serial.parseInt();      // 在串口数据流中查找一个有效整数

          if(sj==10)      //供氧
          {
          digitalWrite(GY,LOW);
          Serial.print("10");
          delay(100);
          }
         else if (sj==11)
         {
          digitalWrite(GY,HIGH);
          Serial.print("11");
          delay(100);
          }
          else if (sj==20)      //加热
         {
          digitalWrite(JR,LOW);
          Serial.print("20");
          delay(100);
          }
          else if (sj==21)
         {
          digitalWrite(JR,HIGH);
          Serial.print("21");
          delay(100);
          }
          else if (sj==30)       //补光
         {
          digitalWrite(BG,LOW);
          Serial.print("30");
          delay(100);
          }
          else if (sj==31)
         {
          digitalWrite(BG,HIGH);
          Serial.print("31");
          delay(100);
          }
          else if (sj==40)      //喂食
         {
          digitalWrite(WS,LOW);
          Serial.print("40");
          delay(100);
          }
          else if (sj==41)
         {
          digitalWrite(WS,HIGH);
          Serial.print("41");
          delay(100);
          }
          else if (sj==51)
          {
          digitalWrite(GY,HIGH);
          Serial.print("11");
          delay(100);

          digitalWrite(JR,HIGH);
          Serial.print("21");
          delay(100);

         digitalWrite(WS,LOW);
         Serial.print("40");
         delay(100);

         if (GZ>=400)
         {
         digitalWrite(GZ,HIGH);
         Serial.print("50");
         delay(100);
         }
         else if(GZ<=200)
         {
         digitalWrite(GZ,LOW);
         Serial.print("51");
         delay(100);
         }
         }
         elseSerial.print(WD);
         delay(100);
         }
   }
}

羽流清 发表于 2019-3-29 16:54

为什么看不到视频。。。

110gm 发表于 2019-3-29 21:36

供氧是这个了?

CHtime 发表于 2019-3-30 19:48

110gm 发表于 2019-3-29 21:36
供氧是这个了?

使用的是普通的三合一水泵,过滤+供氧,供氧有个小阀门我没打开

CHtime 发表于 2019-3-30 19:49

羽流清 发表于 2019-3-29 16:54
为什么看不到视频。。。

视频我上传了两个,其中有一个我用的是优酷链接这个我可以看到,第一次发视频,不太会搞

呆呆ING 发表于 2020-4-5 14:26

您好,我能问一下,您的Anfroid代码可以下载来参考一下吗?
页: [1]
查看完整版本: 智能鱼缸管理系统