使用ESP8266连接到Azure

Posted 老李拉面馆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用ESP8266连接到Azure相关的知识,希望对你有一定的参考价值。

很多同学在问我,ESP8266如何连接到Azure,因为官方只有Spark Fun之类的DevKit(开发套件)出了教程(我只找到了套件的文档)。

 

先上视频:http://v.youku.com/v_show/id_XMzE3MTg0NDU1Mg==.html

 

其实SparkFun Esp8266与普通的ESP8266是一样的,文档上也标注了Arduino Compatible(兼容Arduino)

 

今天就按官方教程教大家用“从淘宝上买来的NodeMCU ESP12N”连接到 Azure IoT

 

首先先给大家看看我买的板子

 

 

搜索NodeMCU,出来的都是ESP12N,非常普遍的NodeMCU型号

我就找了个便宜的买了,16块包邮美滋滋。

 

 

 

你别看上面便的是ESP12N(视频里口误说成ESP-12F),其实它也是ESP8266(ESP8266也有很多种类)

 

然后我点开了百度

 

 

一眼就看到Huzzah ESP8266跟ESP8266 Thing Dev Kit,两个文档我都看了下,大致步骤是一样的,而关键词的直觉告诉我选Spark Fun的可能会好一些。

 

然后我们跟着文档走

看你们这么懒搜都懒得搜,就给你们一个传送门吧

https://azure.microsoft.com/zh-cn/resources/samples/iot-hub-c-thingdev-getstartedkit/

 

 

 

如果看不懂那就点开Chrome浏览器的翻译,或者点开你的有道词典-屏幕取词,翻译一下总行了!语言不是问题!

 

 

 

 

我们今天先实现之前做过的AZ3166远程监控的实验(通过网页在线查看传感器数据)

 

啥?你们看过我之前做的实验?戳这!

http://bbs.wfun.com/thread-1001576-1-1.html

 

我们接着看文档

 

 

 

软件需要安装Arduino IDE,还有各种库,硬件我们有这个ESP-12N就可以了(要不要PC数据线你这不是废话吗)

 

 

 

然后我们在Arduino IDE里添加并选择我们的版型

 

 

点开首选项

 

将开发板网址(http://arduino.esp8266.com/stable/package_esp8266com_index.json

填在这里

 

 

 

选中你的开发板,我的是12N,我感觉跟12E差不多,所以就选了

(事实证明选这个没问题)

 

 

 

 

 

选完版型,我们开始添加我们的库

 

 

 

上面的

  • AzureIoTHub
  • AzureIoTUtility
  • AzureIoTProtocol_MQTT
  • DHT Sensor Library

都能在Arduino库管理中搜索到,打开“项目”-“加载库”-“管理库”,如图

 

 

 

 

搜索Azure就可以添加最基础的三个(HTTP顺便也选上,以后用的上)

 

然后搜索“DHT Sensor”

 

 

一定要看清楚了再选!别选错了!!!

 

好,我们还差一个库Adafruit DHT Unified,这个在Arduino库管理器里搜不到,我们手动下载下来导入

 

 

 

点这个链接,会进入GitHub,然后我们Download下来zip包(下完了不要解压)

点击“项目”-“加载库”-“添加一个.ZIP库”,选择你刚刚下载的zip包

 

 

 

就完成软件的配置了(如果你编译的时候还出错那就找到错误,差库就补,文档跟GitHub-Azure里都有)

 

然后我们找到远程监控的源码

 

 

 

点这个下载,打开.ino文件,然后我们去创建IoT Suite(当然你也可以按着文档,一早就建好,因为Provision需要很长时间)

戳这!————> https://www.azureiotsuite.com/

 

 

我已经建好了,如果你不会创建那就去看我上次做的远程监控的实验。或者跟着这个配套的啰嗦视频食用!

 

然后我们新建一个Device

怎么新建自定义设备还要我说吗?上次实验做过啦!你不行就跟着这个配套实验看!

我的这个设备叫ANewDevice1120

然后到Azure的Portal里,点开TestSuite1120(我的IoT Suite名称)资源组,找到IoT Hub

点击设备资源管理

 

 

复制连接字符串-主密钥(ConnectionString)

 

然后回到我们之前打开的remote_monitoring.ino

 

 

 

点到iot_config.h

配置好WiFi名称跟密码(我一般用电脑开热点,这样就不用经常改了)

把刚刚复制的ConnectionString(连接字符串)粘贴过来

 

 

 

好,这时候就可以编译下载了

 

 

 

打开串口显示器,看输出信息。

 

因为我们没接传感器,所以它出来定值Humidity是3

如果没啥意外,这时候你就可以在IoT Suite的面板上看到数据了

 

 

明天我们再接着看微软是怎么写这个库的!

今天先讲个大概!

 

以上是关于使用ESP8266连接到Azure的主要内容,如果未能解决你的问题,请参考以下文章

MicroPython+ESP8266:UART串口通信

ESP8266和Arduino接口

使用ESP8266将Arduino连接到Blynk

8266wifi模块是啥

如何通过 STM32CubeIDE 将 ESP8266 Wifi 模块连接到 Firebase

ESP8266 Web Server实现基本的按键控制IO引脚