[Arduino物联网开发实战4]天猫精灵控制1-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

楼主: 奈何col

[使用文档] [Arduino物联网开发实战4]天猫精灵控制1

  [复制链接]
发表于 2020-5-11 17:29 来自手机 | 显示全部楼层
很想知道怎么控制分别多个灯,求解答
发表于 2020-5-11 17:33 来自手机 | 显示全部楼层
sting2k1 发表于 2019-11-6 10:28
if (mode == BLINKER_CMD_MIOT_NIGHT) { // NIGHT 月光
    colorR = 255;
    colorG = 255;

能控制多个灯吗
发表于 2020-5-13 08:37 | 显示全部楼层
跋扈 发表于 2020-5-11 17:33
能控制多个灯吗

可以的,例程里面MIOT_MULTI_OUTLET.ino就是可以控制多个插座。
发表于 2020-8-22 00:06 来自手机 | 显示全部楼层
为什么提示为开发板编译时出错,选的是NodeMCU 1.0
发表于 2020-9-20 20:45 | 显示全部楼层
按例程来的,天猫就是说怎么办,暂时控制不了。我看有个公告说接口问题,现在修复了吗?

点评

接口调整是5月时候的事了,6月就好了。 另外,要使用语音助手,创建设备的时候,选阿里云  详情 回复 发表于 2020-9-20 20:47
 楼主| 发表于 2020-9-20 20:47 | 显示全部楼层
foro 发表于 2020-9-20 20:45
按例程来的,天猫就是说怎么办,暂时控制不了。我看有个公告说接口问题,现在修复了吗? ...

接口调整是5月时候的事了,6月就好了。
另外,要使用语音助手,创建设备的时候,选阿里云
发表于 2020-9-20 21:31 | 显示全部楼层
奈何col 发表于 2020-9-20 20:47
接口调整是5月时候的事了,6月就好了。
另外,要使用语音助手,创建设备的时候,选阿里云 ...

奈何老大,我都是按照要求来的,app可以控制灯亮,就是天猫控制不了

点评

如上所说,确定设备创建时是不是选的阿里云,如果还不行,更新lib  详情 回复 发表于 2020-9-21 05:48
 楼主| 发表于 2020-9-21 05:48 | 显示全部楼层
foro 发表于 2020-9-20 21:31
奈何老大,我都是按照要求来的,app可以控制灯亮,就是天猫控制不了

如上所说,确定设备创建时是不是选的阿里云,如果还不行,更新lib
发表于 2020-10-25 14:02 | 显示全部楼层
本帖最后由 lslcxlsl 于 2020-10-25 14:04 编辑

我复制的论坛的代码,关联了天猫精灵,但是天猫精灵总是说无法查询
  1. #define BLINKER_WIFI
  2. #define BLINKER_ALIGENIE_SENSOR

  3. #include <Blinker.h>
  4. #include <DHT.h>

  5. char auth[] = "a9135b780e41";
  6. char ssid[] = "abc";
  7. char pswd[] = "chenxu123";

  8. BlinkerNumber HUMI("humi"); //DHT11
  9. BlinkerNumber TEMP11("temp"); //DHT11
  10. BlinkerNumber TEMP180("temp180"); // Temperature
  11. BlinkerNumber PRES("pres"); // Pressure
  12. BlinkerNumber ALTI("alti"); // Altitude

  13. #define DHTPIN D7
  14. #define DHTTYPE DHT11   // DHT 11
  15. //#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
  16. //#define DHTTYPE DHT21   // DHT 21 (AM2301)

  17. #include <Wire.h>
  18. #include <Adafruit_BMP085.h>

  19. Adafruit_BMP085 bmp;

  20. DHT dht(DHTPIN, DHTTYPE);


  21. float humi_read = 0,temp180_read = 0, temp_read = 0 , pres_read = 0, alti_read = 0 ;

  22. void heartbeat()
  23. {
  24.     HUMI.print(humi_read);
  25.     TEMP11.print(temp_read);
  26.     TEMP180.print(bmp.readTemperature());
  27.     PRES.print(bmp.readPressure());
  28.     ALTI.print(bmp.readAltitude());
  29.    
  30. }

  31. void dataStorage()
  32. {
  33.     Blinker.dataStorage("temp", bmp.readTemperature());
  34.     Blinker.dataStorage("humi", humi_read);
  35.     Blinker.dataStorage("pres", bmp.readPressure());
  36. }

  37. void aligenieQuery(int32_t queryCode)
  38. {
  39.     switch (queryCode)
  40.     {
  41.         case BLINKER_CMD_QUERY_ALL_NUMBER :
  42.             BLINKER_LOG("AliGenie Query All");
  43.             BlinkerAliGenie.temp(temp_read);
  44.             BlinkerAliGenie.humi(humi_read);
  45.             BlinkerAliGenie.print();
  46.             break;
  47.         case BLINKER_CMD_QUERY_TEMP_NUMBER :
  48.             BlinkerAliGenie.temp(temp_read);
  49.             BlinkerAliGenie.print();
  50.             break;
  51.         case BLINKER_CMD_QUERY_HUMI_NUMBER :
  52.             BlinkerAliGenie.humi(humi_read);
  53.             BlinkerAliGenie.print();
  54.             break;
  55.         default :
  56.             BlinkerAliGenie.temp(20);
  57.             BlinkerAliGenie.humi(20);
  58.             BlinkerAliGenie.print();
  59.             break;
  60.     }
  61. }

  62. void setup()
  63. {
  64.     Serial.begin(115200);
  65.     BLINKER_DEBUG.stream(Serial);
  66.     BLINKER_DEBUG.debugAll();
  67.     pinMode(LED_BUILTIN, OUTPUT);
  68.     digitalWrite(LED_BUILTIN, LOW);

  69.     Blinker.begin(auth, ssid, pswd);
  70.     Blinker.attachHeartbeat(heartbeat);
  71.     BlinkerAliGenie.attachQuery(aligenieQuery);
  72.     Blinker.attachDataStorage(dataStorage);
  73.     dht.begin();
  74.     if (!bmp.begin()) {
  75.        BLINKER_LOG("Could not find a valid BMP085 sensor, check wiring!");
  76.        while (1) {delay(100);}
  77.     }
  78. }

  79. void loop()
  80. {
  81.     Blinker.run();

  82.     float h = dht.readHumidity();
  83.     float t = dht.readTemperature();

  84.     if (isnan(h) || isnan(t))
  85.     {
  86.         BLINKER_LOG("Failed to read from DHT sensor!");
  87.     }
  88.     else
  89.     {
  90.         BLINKER_LOG("Humidity: ", h, " %");
  91.         BLINKER_LOG("Temperature: ", t, " *C");
  92.         humi_read = h;
  93.         temp_read = t;
  94.     }

  95.     Blinker.delay(2000);
  96. }
复制代码
Screenshot_2020-10-25-13-58-19-943_com.alibaba.ai.jpg
Screenshot_2020-10-25-13-58-24-326_com.alibaba.ai.jpg
Screenshot_2020-10-25-14-04-20-420_iot.clz.me.jpg

点评

我测试了,功能是正常的,自己看看调试信息吧  详情 回复 发表于 2020-10-25 18:35
 楼主| 发表于 2020-10-25 18:35 | 显示全部楼层
lslcxlsl 发表于 2020-10-25 14:02
我复制的论坛的代码,关联了天猫精灵,但是天猫精灵总是说无法查询

我测试了,功能是正常的,自己看看调试信息吧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 01:28 , Processed in 0.110618 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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