材料:Arduino开发板,ESP8266,烟雾传感器,温湿度传感器,水泵,电机,舵机,面包板,线。电池。等
软件:微信开发者工具(微信小程序)
服务器:Onenet.
实现功能:Arduino通过传感器监测到数据,通过ESP8266(EDP通讯协议)发送到onenet平台,然后应用端(微信小程序)MQTT通讯协议连接数据库获取数据流,进行各种参数的显示,并且可以通过小程序进行下发控制语句(通风开关,浇水开关)形成闭环。
Arduino代码展示
引脚定义:
#define KEY "Yr6a4fkIAh3Bi=7Jh5txoSH6tZ8=" //APIkey
#define ID "929359692" //设备ID
#define WIFI_UART Serial
#define _baudrate 115200
#define PUSH_ID NULL
步进电机函数`
void clockwise(int num)
{
for (int count = 0; count < num; count++)
{
for (int i = 8; i < 12; i++)
{
digitalWrite(i, HIGH);
delay(3);
digitalWrite(i, LOW);
}
}
}
串口模式定义
pinMode(13, OUTPUT); //WIFI模块指示灯
pinMode(12,OUTPUT); //用于测试111指令
pinMode(light,INPUT); //光照传感器
pinMode(MQ,INPUT); //烟雾传感器
pinMode(fire_sensor,INPUT); //火焰传感器
pinMode(9,OUTPUT); //LEd
指令的串口发送
while (!doCmdOk("AT+CWMODE=3", "OK")); //工作模式
while (!doCmdOk("AT+CWJAP=\"jcy\",\"123456789\"", "OK"));
while (!doCmdOk("AT+CIPSTART=\"TCP\",\"jjfaedp.hedevice.com\",876", "OK"));
while (!doCmdOk("AT+CIPMODE=1", "OK")); //透传模式
while (!doCmdOk("AT+CIPSEND", ">")); //开始发送
微信小程序代码截图
jia v JCY1562599139