如何编程Electrodragon IoT中继

电子说

1.3w人已加入

描述

步骤1:设置软件(Arduino IDE)

中继

最新版本的Arduino IDE使得对这些开发板进行编程变得更加容易,并且您无需再经历多个步骤即可将其开发到与ESP8266开发板一起使用。步骤如下:

从https://www.arduino.cc/en/Main/Software

下载最新的IDE,打开IDE并转到“工具” -》电路板-》电路板管理器。..

搜索ESP8266,然后单击安装(请参见上图)

就是这样-您已准备好对IoT进行编程中继

步骤2:将IoT中继连接到计算机以进行编程

中继

该模块不带有USB接口,因此您需要使用USB-TTL模块/arduino处理与计算机的USB通信。您可以在ebay上购买任何一种便宜的模块(http://www.ebay.com/sch/i.html?_from = R40&_sacat = 0&。..)-所有模块都一样-仅警告要找到正确的模块驱动程序,以便您的计算机检测模块。

这是最令人头疼的步骤,因为Wiki上的图像有错误。我使用了Wiki中的图像,但是提供了注释-这样您就可以正确使用它。

连接非常简单(只要您知道要使用哪个引脚):

将GND从USB-TTL连接到图像上标记为GND的引脚(左下角的第一个引脚)

将3.3V从USB-TTL连接到图像上标记为VCC的引脚(这是GND引脚上方的引脚)

将RX从USB-TTL连接到图像上标记为RX的引脚(这与通常将RX连接到TX的预期相反引脚,反之亦然)

将TX从USB-TTL连接到图像上标记为TX的引脚(这与通常将TX连接到RX引脚并反之的预期相反-versa)

模块现在可以进行编程了。按住BTN2(在Wiki映像上标记为BTN1),然后将模块插入USB端口,将其置于编程模式,然后您可以上传新固件(按住BTN2,直到软件显示固件已完全上传) )。

请注意,我拥有v1.0板,因此无法保证Wiki上V1.1图表的正确性。

步骤3:固件

由于IoT中继基于ESP8266,因此您可以使用一整套固件。其中一些包括:

Souliss:http://souliss.net/getting-started/

ESPEasy:http://www.esp8266.nu/index。 php/ESPEasy

Blynk:http://www.blynk.cc/

MQTT:https://github.com/tuanpmt/esp_mqtt

还有更多。现在已经有很多教学指导,您可以通过以下链接查看它们:https://www.instructables.com/howto/ESP8266/

但是,我采用了最简单的解决方案-即在IoT中继本身上运行一个简单的Web服务器。这基于ESP8266库随附的“ WifiWebServer”示例。

注意事项:

将wifi的SSID和密码更改为您的设置

IoT中继具有连接到GPIO13和GPIO12的两个中继

将以下代码复制并粘贴到arduino IDE中的新“草图”

#include

const char* ssid = “SSID”;

const char* password = “Password”;

// Create an instance of the server

// specify the port to listen on as an argument

WiFiServer server(80);

void setup() {

Serial.begin(115200);

delay(10);

// prepare GPIO13

pinMode(13, OUTPUT);

digitalWrite(13, 0);

// prepare GPIO12

pinMode(12, OUTPUT);

digitalWrite(12, 0);

// Connect to WiFi network

Serial.println();

Serial.println();

Serial.print(“Connecting to ”);

Serial.println(ssid);

WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {

delay(500);

Serial.print(“。”);

}

Serial.println(“”);

Serial.println(“WiFi connected”);

// Start the server

server.begin();

Serial.println(“Server started”);

// Print the IP address

Serial.println(WiFi.localIP());

}

void loop() {

// Check if a client has connected

WiFiClient client = server.available();

if (!client) {

return;

}

// Wait until the client sends some data

Serial.println(“new client”);

while(!client.available()){

delay(1);

}

// Read the first line of the request

String req = client.readStringUntil(‘ ’);

Serial.println(req);

client.flush();

// Match the request

if (req.indexOf(“/gpio/1/0”) != -1){ // GPIO 13 Low

digitalWrite(13,0);

client.flush();

client.print(“HTTP/1.1 200 OK Content-Type: text/htmlGPIO 13 is now Low ”);

}

else if (req.indexOf(“/gpio/1/1”) != -1){ // GPIO 13 High

digitalWrite(13,1);

client.flush();

client.print(“HTTP/1.1 200 OK Content-Type: text/htmlGPIO 13 is now High ”);

}

else if (req.indexOf(“/gpio/2/0”) != -1){ // GPIO 12 Low

digitalWrite(12,0);

client.flush();

client.print(“HTTP/1.1 200 OK Content-Type: text/htmlGPIO 12 is now Low ”);

}

else if (req.indexOf(“/gpio/2/1”) != -1){ // GPIO 12 High

digitalWrite(12,1);

client.flush();

client.print(“HTTP/1.1 200 OK Content-Type: text/htmlGPIO 13 is now High ”);

}

else {

Serial.println(“invalid request”);

client.stop();

return;

}

delay(1);

Serial.println(“Client disonnected”);

}

步骤4:上传固件并运行服务器

中继

要上传固件,您需要执行以下步骤:

按BTN2并将USB-TTL连接到计算机上的USB端口

选择板‘NodeMCU 0.9(ESP-12模块)’

选择正确的端口(它在我的系统上作为COM9出现)

单击向右箭头进行编译并上传

确保按住BTN2直到固件完全上传

在大多数情况下,这应该可以工作,但是,如果遇到错误,请断开USB并从步骤1重新开始。

一旦固件上传完毕,您就可以将模块连接到交流电源(在处理交流电时,请务必小心-这非常危险,并且可能致命)。通过USB供电时,IoT中继将无法连接到wifi,因为USB-TTL无法提供足够的电流。

断开IoT中继与USB-TTL模块的连接

连接输入线和输出线

再次检查连接

关闭外壳

将输入线插入交流电源插座

我提供的草图通过串行发送出IoT中继的IP地址,但是我没有将USB-TTL和交流电源连接到IoT中继不是一个好主意。因此最好的选择是转到路由器的主页,找到IoT中继的IP地址。

现在,您可以使用以下命令打开/关闭中继:

http:///gpio/1/1 - switch on relay 1

http:///gpio/1/0 - switch off relay 1

http:///gpio/2/1 - switch on relay 2

http:///gpio/2/0 - switch off relay 2

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分