本帖最后由 CHtime 于 2019-4-6 16:50 编辑
本来是想用申请的电路板完成作品的,但是电路板迟迟不到,我还是先用我自己的板子做出来吧,今晚终于拍完了视频。
先给大家展示几张作品照片和完成视频。
1.这是手机软件APP操作界面
APP界面
2.视频
3.今天就先到这,有时间再做详细介绍
更新鱼塘智能管理系统使用说明 日期:2019年4月06日星期四 作者:chtime 本设备设计方式是安装控制端的安卓手机和被控智能鱼缸在局域网即统一内网WIFI网络下操作。 设备清单:1 安装控制端软件的安卓手机 2 被控智能鱼缸 3 具备打开手机热点的安卓手机 使用步骤: 1. 打开安卓手机热点,将WIFI名称改为:TD123 密码:yzl:3.14 2. 接通智能鱼缸电源,等待30秒 3. 打开安装控制端软件的安卓手机,连接上述第1步的手机WIFI 4. 测试软件,功能是否正常 通讯协议:
下面是程序,水平比较低
[pre]#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);
}
}
else Serial.print(WD);
delay(100);
}
}
}[/pre] |