最好的电子音响科技diy制作网站

haoDIY_音响电子电脑科技DIY小制作发明

智能手机(无线)控制车库门开启与ESP8266

时间:2017-05-23 21:43来源:未知 作者:admin 点击:
你可以控制任何你的电话现在。 它从来没有为论坛做出自己的家庭自动化组件更容易。 不久前,你不得不为智能家居产品的网上商店,但现在连家装店有一个非常不错的选择股票。 他们并不便宜。 虽然这些产品是非常复杂的,很多人做一个简单的事:打开或关闭装置
智能手机(无线)控制车库门开启与ESP8266

你可以控制任何你的电话现在。它从来没有为论坛做出自己的家庭自动化组件更容易。不久前,你不得不为“智能家居”产品的网上商店,但现在连家装店有一个非常不错的选择股票。他们并不便宜。

虽然这些产品是非常复杂的,很多人做一个简单的事:打开或关闭装置的开关。这是一个车库门开启装置是有线的按钮,你会在门的旁边是一个简单的瞬时开关。

在下面,我们要创造一瞬间的开关,并用ESP模块,使其网络功能。随着磁感应门之外,我们可以知道门是打开还是关闭的好处。的价格为10美元左右,你可以控制从任何地方查看你的车库门的状态!

这是我的声明:<strong>这只是你的WiFi网络安全</strong>。你是完全负责的任何事情发生在你的车库,如果你使用这个原型。这门只能通过您的家庭网络上的人访问。如果你与其他人分享你的网络,他们将能够访问你的门。

步骤1:收集你的部分

原型,你需要:

  • 就像我一个FTDI上传板覆盖在这里
  • Breadboard(例子
  • 电源(例子
  • 变线路电压(3.3/5V稳压器()例子
  • 8引脚ESP8266电路试验板适配器(例子
  • esp8266-01(例子
  • Jumper Wires(例子
  • 220欧姆电阻(例子
  • 磁簧开关(普通门(传感器)例子
  • 继电器(例子

做一个完整的建造,你也会想:

 

  • 3.3 V稳压器(例子
  • Protoboard(例子
  • 5.5毫米的桶塞(例子
  • 工程塑料盒(例子
  • 女头(2x4例子

 

步骤2:上传你的代码

FTDI上传板下面的代码,加载到ESP8266。你需要改变路由器的SSID和密码的变量,但这应该是它。在你上传的代码,在Arduino IDE打开串口监视器。一旦代码上传,它会写模块的IP地址序列-你要注意。

#包括<< esp8266wifi。H > 
 #包括<< esp8266webserver。H > 
 
 const char* SSID =“yourrouterssid”;
 const char *密码=“yourrouterpassword”;
 
 esp8266webserver服务器(80);
 
 int switchpin = 0;
 int switchstatecur;
 int relaypin = 2;
 
 int wificon() { 
 /检查我们是否有无线网络连接,如果我们不这样做,
连接!= wl_connected){ 
 
系列。println();
系列。println();
串口打印(“连接”);
系列。println(SSID);
 
 WiFi。模式(wifi_sta);
 
 WiFi。开始(SSID,密码!= wl_connected & xcnt<50){ 
延迟(500);
串口打印(“。”);
 xcnt + +;
 } 
 
如果(!= WL_CONNECTED){
          Serial.println("WiFiCon=0");
          return 0; //never connected
        } else {
          Serial.println("WiFiCon=1");
          Serial.println("");
          Serial.println("WiFi connected");  
          Serial.println("IP address: ");
          Serial.println(WiFi.localIP());
          return 1; //1 is initial connection
        }

  } else {
    Serial.println("WiFiCon=2");
    return 2; //2 is already connected
  
  }
}

String htmlServe(int doorAction) {
  String htmStr;

      if (switchStateCur==1 && doorAction ==1){
        digitalWrite(relayPin, 0);
        delay(400);
        digitalWrite(relayPin, 1);
      } else if (switchStateCur==0 && doorAction ==0){
        digitalWrite(relayPin, 0);
        delay(400);
        digitalWrite(relayPin, 1);
      }

  htmStr += "<html>\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, maximum-scale=1.0,\">\n";
  htmStr += "<meta http-equiv=\"refresh\" content=\"5; URL=/sdoor\"> \n";
  htmStr += "<body>\n<center>\n<h1>\n";

      if (switchStateCur==1){
        htmStr += "Your Door is Open";
      } else {
        htmStr += "The Door is Closed";
      }
  
  htmStr +="</h1>\n<br><a href=\"/";
  
      if (switchStateCur==0){
        htmStr += "odoor";
      } else {
        htmStr += "cdoor";
      }
      
  htmStr += "\">\n<button>\n";
  
      if (switchStateCur==0){
        htmStr += "Open Door";
      } else {
        htmStr += "Close Door";
      }
  htmStr += "</button></a>\n";

  htmStr += "<br><br><br><a href=\"/sdoor\"><button>Recheck</button></a>";
  
  htmStr += "</center>\n</body>\n</html>\n";

  return htmStr;
  
}

void setup(){

  pinMode(switchPin, INPUT);
  pinMode(relayPin, OUTPUT);
  digitalWrite(relayPin, HIGH);
  Serial.begin(115200);

  WiFiCon();

   server.on("/odoor", [](){
      server.send(200, "text/html", htmlServe(0));
   });

   server.on("/cdoor", [](){
      server.send(200, "text/html", htmlServe(1));
   });

   server.on("/sdoor", [](){
      server.send(200, "text/html", htmlserve(2));});
 
 
服务器。begin();
 
 } 
 
无效loop() { 
 
 switchstatecur = //读出数字接口的值(switchpin);
 
服务器。handleclient();
 
  • 智能手机(无线)控制车库门开启与ESP8266instructable_garage_door_opener.ino
    下载

步骤3:在代码注释

这是一个基本的车库门开启装置。你可以得到更好的比我建在这里,我鼓励你这么做。

这个代码利用一些ESP的积木,我之前提及的。如果你想更详细的解释,或更简化的组件代码,看看这些教学:

  • ESP8266积木:连接互联网
  • ESP8266积木:基本的Web服务器

在这种情况下,我们扩大了我们的Web服务器的代码,包括检查一些变量,基于他们的消息我们显示改变(就是门的打开或关闭),但基本轮廓还在其次。

一行HTML我加在这里:

htmstr + = <元http-equiv =“刷新”content=“5;网址= / sdoor“>”;

当这个字符串加载在用户的浏览器(手机),它告诉它每5秒自动刷新屏幕。它告诉它刷新了“/ sdoor”。你会注意到在WebForm动作按钮调用URL”odoor”和“cdoor”(开启和关闭)-我们不想刷新和重新启动的行动,所以我们去“sdoor”(的状态)以它自己的任何行动。

我的车库门需要十秒来打开或关闭。这一点刷新是与用户不必手动刷新页面来检查门的当前状态更新浏览器。你可以改变5秒任何适合自己的门最好。

步骤4:建立你的原型板

智能手机(无线)控制车库门开启与ESP8266

建立你的线路板,如果你使用的是线路板电源模块,可以简化这一点,但这里显示的布局是什么会进入你的最终建立。

你也可以直接建立的原板,但我的建议是先试验。

一旦电路建立,插入你的ESP和火起来。在Web浏览器中,去sdoor“页”的特别是IP如果你接到串口监视IP是192.168.0.153,那么你需要输入在地址栏:

http://192.168.0.153/sdoor

你应该看到一个非常简单的页面,告诉门的状态和动作按钮来打开或关闭它。

把磁铁靠近干簧管,当浏览器刷新,你应该看到状态的变化。

打动作按钮在浏览器中打开或关闭的门你应该听到一个短按为继电器立即触发。

如果你没有得到这些结果,检查你的线路,你的代码的问题。

步骤5:最终打造出来的

智能手机(无线)控制车库门开启与ESP8266

你的电路从线路板转原板。我更喜欢原板,连接条。你可以使用我的照片作为指南,但你设置任何方式是罚款。如果你用板与连接条,你需要打破两排2 / 4女头,ESP将坐在之间的条。一个实用的刀工精细,虽然我用一个小的切断在一个小的旋转刀轮。

我也用同样的切断砂轮片小的裂缝,在板桶杰克坐的,因为它有宽腿,不销。

一旦你的焊接完成后,在你插上电除尘器,使用多测试仪检查你的连接。如果他们检查,电源插头,测试电压的不同点,特别是确保ESP仅获得3.3 V。

现在你可以将ESP,和瑞能它测试出来像我们一样在实验阶段。

我也会用我的旋转工具在项目中做切口。热胶原板和继电器的底部。做一些标记在外壳里塞进去,电线需要穿过,然后用切割轮切割出来。

步骤6:安装

智能手机(无线)控制车库门开启与ESP8266 (责任编辑:admin)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片