查看: 252|回复: 0

WiFi遥控咖啡厅设备

[复制链接]
  • TA的每日心情

    2024-11-15 16:19
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    292

    主题

    26

    回帖

    2978

    积分

    管理员

    积分
    2978
    发表于 2024-11-12 17:29:44 | 显示全部楼层 |阅读模式
    介绍

    现如今,智能家居行业发展迅速,得益于物联网和人工智能技术的迭代发展,各类智能家居设备已不知不觉的走进我们的生活中。
    今天分享制作的一款遥控控制屋中灯光、风扇(排风机)、加湿器(消防喷头)的产品,是依托于机智云平台制作的设计,旨在带领物联网及智能家居行业初学者制作一款自己的智能设备。

    我们在上一篇文章里已经将开发板配置网络了,这篇我们具体来控制设备。

    库文件及头文件准备

    因为我们这里主要是使用RGB灯的不同颜色代替了是进行LED灯亮还是喷头工作,实际上实现这些功能更加简单,只需要定义相关引脚后,输出高电平或者低电平就可实现相应功能。但我们这里为了使实验现象更加明显,利用RGB不同颜色来表示LED灯和加湿器,在风扇转动部分利用纯粹的供电,这样更有利于理解。

    • 更改头文件
      将工程文件中simpleTry.ino中的文件的#include <Gizwits.h>
      更改成#include “Gizwits.h”
    • 移植库文件
      我们直接移植RGB有关的库,可以很大的简化我们的开发,大家如果想要了解RGB灯的开发,也可以看一下库文件。
      我们将库文件放在:文档–Arduino–libraries中即可
    功能实现
    • 我门需要引用一些库文件,并且添加RGB LED控制函数
    [url=]复制[/url]
    • #include "Gizwits.h"
    • #include <Wire.h>
    • #include <SoftwareSerial.h>
    • #include <ChainableLED.h>
    • ChainableLED leds(A5, A4, 1);
    • void LED_RGB_Control(byte red, byte green, byte blue)
    • {
    •   leds.setColorRGB(0, red, green, blue);
    •   }


    • 定义管脚类型
    [url=]复制[/url]
    •   pinMode(5,OUTPUT);
    •   pinMode(4,OUTPUT);
    •   pinMode(SDA,OUTPUT);
    •   pinMode(SCL,OUTPUT);
    •   digitalWrite(5,LOW);
    •   digitalWrite(4,LOW);


    • 实现功能
      通过获取手机APP发送的指令,进行不同的操作,最终实现手机控制风扇转动、RGB LED灯亮灭不同颜色。
    [url=]复制[/url]
    • bool varR_LED = 0;
    •   if(myGizwits.hasBeenSet(EVENT_LED))
    •   {
    •     myGizwits.read(EVENT_LED,&varR_LED);
    •     if(varR_LED==1)
    •     {
    •       LED_RGB_Control(0,0,100);
    •       }
    •       else
    •     LED_RGB_Control(0,0,0);
    •   }
    •   bool varR_FengShan = 0;
    •   if(myGizwits.hasBeenSet(EVENT_FengShan))
    •   {
    •     myGizwits.read(EVENT_FengShan,&varR_FengShan);
    •      if(varR_FengShan==1)
    •     {
    •       digitalWrite(5,HIGH);
    •       }
    •       else
    •       digitalWrite(5,LOW);
    •   }
    •   bool varR_PenTou = 0;
    •   if(myGizwits.hasBeenSet(EVENT_PenTou))
    •   {
    •     myGizwits.read(EVENT_PenTou,&varR_PenTou);//Address for storing data
    •   if(varR_PenTou==1)
    •     {
    •       LED_RGB_Control(0,100,0);
    •       }
    •       else
    •     LED_RGB_Control(0,0,0);
    •   }
    •   myGizwits.process();


    我们现在,就可以按下手机APP的按钮,控制这些设备了。



    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

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

    本版积分规则

    友情链接:

    返回顶部 返回列表