Arduino Relay : Circuit, Paggana, Code, Detalye at Mga Application Nito

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Isang electrically operated switch tulad ng a relay ay ginagamit upang i-ON/OFF ang isang load sa pamamagitan ng pagpayag sa daloy ng kasalukuyang sa kabuuan nito. Ang relay na ito ay kinokontrol lamang ng mababang boltahe (5V) na nabuo ng mga pin ng Arduino Kaya, isang relay module na kumokontrol gamit ang Arduino board ay napakasimple. Karaniwan, ang mga relay ay lubhang nakakatulong sa tuwing gusto mong kontrolin ang isang de-koryenteng circuit na may mababang-kapangyarihan na signal. Mayroong iba't ibang uri ng mga relay na ginagamit sa iba't ibang mga aplikasyon. Ang relay module na ito ay pinapagana ng 5V na angkop na gamitin sa isang Arduino. Katulad nito, may iba pang mga uri ng relay module na magagamit na pinapagana ng 3.3V na perpekto para sa iba't ibang microcontrollers tulad ng ESP8266 , ESP32, atbp. Tinatalakay ng artikulong ito ang isang pangkalahatang-ideya ng isang Arduino relay – gumagana sa mga application.


Ano ang Arduino Relay?

Ang kahulugan ng Arduino relay ay; isang relay na ginagamit sa isang microcontroller tulad ng Arduino upang kontrolin ang alinman sa mataas na boltahe o mababang boltahe na mga aparato. Sa totoo lang, ang relay ay isang switch na pinapatakbo ng elektrikal sa pamamagitan ng electromagnet. Na-trigger lang ang electromagnet na ito sa pamamagitan ng mababang boltahe tulad ng 5V mula sa isang microcontroller at humihila ito ng contact ng relay para kumonekta o idiskonekta ang isang high voltage-based na circuit.



Arduino Relay Circuit Diagram

Ang Arduino-controlled relay circuit ay ipinapakita sa ibaba. Ipinapaliwanag sa iyo ng circuit na ito kung paano kontrolin ang isang relay sa tulong ng isang Arduino. Ang mga kinakailangang bahagi para bumuo ng circuit na ito ay pangunahing kasama ang Arduino Board, Resistors - 1K & 10K, BC547 transistor , 6V/12V relay, 1N4007 diode at 12V fan. Kapag na-push na ang button pagkatapos ay i-ON ang fan at hanggang sa ma-push muli ang parehong button, mananatili ang fan sa parehong kondisyon.

  Arduino Relay Circuit
Arduino Relay Circuit

Operasyon ng Arduino Relay

Gumagana ang circuit na ito sa dalawang kaso tulad ng pag-on/pag-off ng load na may relay at button. Kapag naitulak ang button, itatakda ng Arduino board ang pin-2 sa HIGH na kondisyon, na nangangahulugang 5 volts sa pin-2 ng board. Kaya ang boltahe na ito ay pangunahing ginagamit upang gawing ON ang transistor. Kaya i-ON ng transistor na ito ang relay at papaganahin ang mala-load na fan gamit ang pangunahing power supply.



Dito para paganahin ang transistor pati na rin ang load, hindi mo magagamit ang 5V nang direkta mula sa USB dahil kadalasan, ang USB port ay naghahatid ng 100mA lamang. Kaya hindi ito sapat para i-activate ang relay at ang LOAD. Kaya dapat gamitin ang panlabas na power supply mula 7V hanggang 12V upang magbigay ng kapangyarihan sa controller board, transistor, at relay.

Dito, ang load ay gumagamit ng sarili nitong power supply. Halimbawa, kung gumagamit ka ng bumbilya o bentilador, dapat kang kumonekta mula sa 110/220V mains kung hindi sa anumang iba pang pinagmumulan ng kuryente.

  PCBWay

Arduino Relay Code

Arduino relay switch code para sa pag-on ng load na may relay at button

/* sketch
i-on ang fan gamit ang relay at button
*/
int pinButton = 8;
int Relay = 2;
int stateRelay = LOW;
int stateButton;
int nakaraang = LOW;
mahabang panahon = 0;
mahabang debounce = 500;
void setup() {
pinMode(pinButton, INPUT);
pinMode(Relay, OUTPUT);
}
void loop() {
stateButton = digitalRead(pinButton);
if(stateButton == HIGH && dati == LOW && millis() – time > debounce) {
if(stateRelay == HIGH){
stateRelay = LOW;
} iba {
stateRelay = MATAAS;
}
oras = millis();
}
digitalWrite(Relay, stateRelay);
nakaraang == stateButton;
}

I-OFF ang relay nang may pagkaantala

Maaari mong gamitin ang sumusunod na halimbawa ng code upang ipakilala ang isang pagkaantala sa loob ng circuit. Kaya, ang variable na 'stayON' ay ginagamit upang maantala () ang pagpapatupad ng programa sa loob ng gustong tagal ng oras. Dito, kapag na-push na ang buton saka i-ON ang relay at pagkaraan ng limang segundo ay i-OFF ang relay.

Code para sa pag-off ng load na may relay at button.

int pinButton = 8;
int Relay = 2;
int stateRelay = LOW;
int stateButton;
int nakaraang = LOW;
mahabang panahon = 0;
mahabang debounce = 500;
int stayON = 5000; //manatili sa loob ng 5000 ms
void setup() {
pinMode(pinButton, INPUT);
pinMode(Relay, OUTPUT);
}
void loop() {
stateButton = digitalRead(pinButton);
if(stateButton == HIGH && dati == LOW && millis() – time > debounce) {
if(stateRelay == HIGH){
digitalWrite(Relay, LOW);
} iba {
digitalWrite(Relay, HIGH);
pagkaantala(stayON);
digitalWrite(Relay, LOW);
}
oras = millis();
}
nakaraang == stateButton;

Arduino Relay Wiring Diagram

Ang Arduino relay wiring na may DC motor ay ipinapakita sa ibaba. Ang pangunahing layunin ng mga kable na ito ay upang kontrolin ang isang DC motor sa tulong ng isang relay at Arduino. Ang mga kinakailangang bahagi ng mga kable na ito ay pangunahing kasama; Uno Rev3, Relay Module , Dupont wire, USB cable para sa powering at programming, Baterya, Connector ng baterya, Screwdriver para sa pagkonekta ng mga wire sa module, at DC motor.

Mga pagtutukoy:

Ang Mga pagtutukoy ng Arduino relay isama ang mga sumusunod.

  • Ito ay nakokontrol gamit ang digital na output.
  • Ito ay katugma sa anumang 5V microcontroller tulad ng Arduino.
  • Ang rated through-current ay 10A para sa NO at 5A para sa NC.
  • Ang control signal ay TTL level.
  • Ang maximum na switching voltage ay 250VAC o 30VDC.
  • Ang maximum switching current ay 10A.
  • Ang laki nito ay 43mm x 17mm x 17mm.

Arduino Relay Module

Available ang mga module na ito kasama ng mga karagdagang bahagi at circuitry sa isang board. Ang mga modyul na ito ay pangunahing ginagamit dahil sa maraming kadahilanan tulad ng mga sumusunod.

  • Ang mga module na ito ay napakadaling gamitin.
  • Kasama nila ang kinakailangang drive circuitry.
  • Ang ilang mga relay module ay may kasamang LED indicator upang ipahiwatig ang katayuan ng relay.
  • Mas nakakatipid ito ng oras para sa mga prototype.

Kasama sa relay module ang iba't ibang mga pin na tinatalakay sa ibaba.

  Relay Module Pin Diagram
Relay Module Pin Diagram
  • Pin1 Signal pin (Relay Trigger): Ginagamit ang input pin na ito para i-activate ang relay.
  • Pin2 (Ground): Ito ay isang ground pin.
  • Pin3 (VCC): Ang input supply pin na ito ay ginagamit upang paganahin ang relay coil.
  • Pin4 (Normally Open): Ito ang NO (Normally open) terminal ng relay.
  • Pin5 (Common): Ito ang karaniwang terminal ng relay.
  • Pin6 (Normally Closed): Ito ang Normally closed (NC) terminal ng relay.

Hakbang 1: Pag-wire ng Arduino board at ang relay board

  • Kumuha ng dupont cable at isang dulo ng cable na ito sa PIN 7 (Digital PWM) ng controller board at ikonekta ang natitirang dulo ng cable sa Signal PIN ng relay module.
  • Ngayon ay kailangan nating gumawa ng koneksyon sa pagitan ng 5V pin ng Arduino at ng positibong (+) pin ng relay module.
  • Ikonekta ang GND pin ng Arduino sa negatibong (-) pin ng relay module.
  • Ngayon ang mga koneksyon sa pagitan ng UNO board at relay module ay nakumpleto na.

Step2: Relay board wiring sa Supply at ang load

  • Ikonekta ang positive (+ve) terminal ng 9V na baterya sa Normally Open na terminal ng relay module.
  • Ikonekta ang Common terminal ng Relay module sa Positive (+ve) terminal ng DC motor.
  • Ikonekta ang negatibong (-) terminal ng baterya sa DC motor.

Hakbang 3: Ngayon kumpletuhin ang Paano gumamit ng Relay na may Arduino wiring diagram.

  • Kapag ang PIN 7 ng Arduino ay nag-toggle, ang relay ay lumilipat sa pagitan ng parehong ON at OFF na mga kondisyon. Ang Arduino code para sa mga kable na ito ay ibinigay sa ibaba.
  • Para sa bawat segundo, i-toggle ng circuit na ito ang relay ON & OFF. Sa real-time-based na mga application, ang relay na ito ay maaaring gamitin upang i-ON ang isang ilaw kapag na-detect mo ang isang paggalaw at gayundin upang i-ON ang motor kapag ang antas ng tubig ay nasa ilalim ng isang nakapirming saklaw.
  Arduino Relay Wiring
Arduino Relay Wiring

Code

#define RELAY_PIN 7
void setup() {
// simulan ang digital pin RELAY_PIN bilang isang output.
pinMode(RELAY_PIN, OUTPUT);
}
// ang loop function ay tumatakbo nang paulit-ulit magpakailanman
void loop() {
digitalWrite(RELAY_PIN, HIGH); // i-on ang RELAY
pagkaantala(1000); // sandali
digitalWrite(RELAY_PIN, LOW); // patayin ang RELAY
pagkaantala(1000); // sandali
}

Ngayon Buksan ang Arduino IDE -> Kopyahin at i-paste ang sumusunod na Arduino code sa loob ng tab na Arduino Editor. Ngayon ang Arduino board ay kailangang kumonekta sa PC sa tulong ng USB cable at i-program ang Arduino board.

Ano ang Relay SPDT Arduino?

SPDT Ang relay ay isang electromagnetic switch, na ginagamit upang kontrolin ang mga AC device na may maliit na DC current ng Arduino board.

Ilang Relay ang Makokontrol ng Arduino?

Kinokontrol ng Arduino board ang hanggang 20 relay dahil ang relay na konektado sa Arduino ay katumbas ng bilang ng mga analog pin (6-pin) at digital pin (14-pin) sa isang Arduino

Ano ang gamit ng Relay Module?

Ang mga relay module ay may kakayahang humawak ng mga load hanggang 10 Amps. Tamang-tama ang mga ito para sa iba't ibang device gaya ng mga passive infrared detector at iba pang sensor. Ang mga module na ito ay ginagamit sa Arduino at iba pang microcontroller.

Ano ang Ginagawa ng Relay sa isang Electrical Circuit?

Ang relay ay isang electrically operated switch na ginagamit upang buksan at isara ang mga electrical circuit sa pamamagitan lamang ng pagkuha ng mga electrical signal mula sa mga panlabas na pinagmumulan. Kapag natanggap ang isang de-koryenteng signal pagkatapos ay nagpapadala ito sa iba pang mga device sa pamamagitan lamang ng pag-ON at OFF sa switch.

Kaya, ito ay isang pangkalahatang-ideya ng isang Arduino relay at ang paggana nito . Ang module na ito ay isang napaka-maginhawang board upang gamitin na maaaring gamitin pangunahin para sa pagkontrol ng mataas na boltahe at mataas na kasalukuyang load tulad ng mga solenoid valve, motor, AC load at lamp. Ang pag-asa na ito ay ginagamit upang mag-interface sa mga microcontroller tulad ng Arduino, PIC, atbp. Narito ang isang tanong para sa iyo, ano ang function ng isang Arduino Board ?