arduino uno開發板 + esp8266開發板 + 5v繼電器實現手機遠程控制220v燈


前面已經實現控制LED燈了,但是控制220v的家用燈怎么辦,加個繼電器

淘寶上的繼電器模塊基本上都是支持5v觸發的,3.3v觸發的不多(3.3v還沒到貨,沒測試)

之前因為不知道esp8266引腳3.3v無法觸發5v繼電器模塊導致一直沒成功(據說可接三極管放大信號觸發,沒貨所以沒測試)

先記錄幾個概念:

1.繼電器模塊使用方法(一般都是,我現在所接觸的):

(1)控制(觸發)端,給模塊供電用:

  VCC:模塊供電(如5v)正極接入端

  GND:模塊供電負極接入端

  IN:模塊觸發輸入端(真正控制觸發端)

(2)被控制端,外接被控制電源端(如:220v)

  NO:常閉端,繼電器沒觸發時通電,被控制電源接負極

  COM:被控制電源正極輸入端

  NC:常閉端,繼電器觸發時通電,被控制電源接負極

  NO/NC端接一個即可

2.arduino uno開發板默認5v電壓,本實驗利用5v電壓觸發5v繼電器模塊

3.這次實驗是建立在本博客前面的文章基礎之上

4.用到的硬件有:

  1.arduino uno開發板 

  2.esp8266開發板

  3.5v繼電器模塊

  4.面包板,導線等

5.先上arduino代碼燒錄(非Esp8266代碼),Esp8266代碼請參考前面文章

int button2 = 2;
int button5 = 5;
void setup() {
  Serial.begin(9600);
  pinMode(button2, INPUT);  //設置arduino2號引腳為輸入端,接收Esp8266輸入3.3v電壓
  pinMode(button5, OUTPUT); //設置arduino5號引腳為輸出端,輸出5v電壓控制繼電器
}

void loop() {
  int buttonstate = digitalRead(button2);  //arduino讀取2號引腳狀態值,1為有電壓,0為沒有
  if (buttonstate == 0) {
    digitalWrite(5, LOW);                  //如果沒有電壓設置5號引腳為低(0v)電壓輸出
  }else{
    digitalWrite(5, HIGH);                 //如果有電壓設置5號引腳為高(5v)電壓輸出
  }
}

6.燒錄成功后連線,拍照有點亂,還是文字吧

  1.先連arduino與Esp8266

    (1)給esp8266供電:3v3引腳接arduino3.3v

    (2)esp8266給arduino輸入電壓信號:D5引腳接arduino2號引腳

    (3)esp8266 GND引腳接arduino GND引腳

  2.繼電器連接arduino

    (1)繼電器IN引腳接arduino ~5 引腳

    (2)繼電器GND引腳接arduino GND引腳

    (3)繼電器VCC引腳接arduino 5v電源引腳

  3.繼電器被控制電源接入保證COM端接入正極,NC或NO端任選一個,串聯上LED燈即可(220v?先用5v的測試一下吧)

  4.arduino通電(有點廢話),連接完成

7.打開小程序連接MQTT服務器試試吧,成功?!!!

8.本人純屬小白,大佬勿噴,記錄學習歷程。

推薦個學習arduino開發板學習b站視頻鏈接(純小白型):https://www.bilibili.com/video/av52628485?p=1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM