Search Code

Använda en 5V relämodul (låg utlösning) med Arduino

Använda en 5V relämodul (låg utlösning) med Arduino

I den här handledningen kommer vi att utforska hur man använder en 5V relämodul med en Arduino, med särskilt fokus på ett lågtriggat relä. Ett relä gör att du kan styra högspänningsapparater med en lågspänningsmikrokontroller, vilket gör det till en viktig komponent för olika automatiseringsprojekt. I slutet av denna handledning kommer du att kunna slå på och av ett relä med din Arduino, vilket kan tillämpas för att styra lampor, motorer och andra apparater.

För att uppnå detta kommer vi att skriva ett enkelt Arduino-program som växlar reläet på och av med jämna mellanrum. Det här projektet är enkelt och idealiskt för nybörjare som vill förstå hur reläer fungerar med mikrokontroller (i videon vid 00:30).

Hårdvara förklarad

De huvudsakliga komponenterna som krävs för detta projekt inkluderar ett Arduino-kort, en 5V relämodul och hopparledningar. Arduino-kortet fungerar som hjärnan i operationen, som skickar signaler till relämodulen för att kontrollera dess tillstånd. Relämodulen är utformad för att slå på eller av enheter genom att kontrollera högspänningssidan med en lågspänningssignal från Arduino.

Varje relämodul innehåller vanligtvis en opto-isolator för isolering mellan lågspännings- och högspänningskretsarna, vilket skyddar Arduino från bakåt EMF och spänningsspikar. I vårt fall kommer vi att använda ett lågtröskelrelä, vilket innebär att det aktiveras när styrsignalen sätts till LÅG.

Datablad Detaljer

TillverkareAllmän
Delnummer5V Relämodul
Styrspänning5 V
RelätypLåg-Utlösare
Maximal belastningsspänning250 V AC / 30 V DC
Maximal belastningsström10 A
Opto-isoleringJa
PaketModul

  • Säkerställ korrekt värmeavledning vid användning av höga laster.
  • Använd en separat strömförsörjning för högspänningsapparater.
  • Dubbelkolla kablarna för att undvika kortslutningar.
  • Bekräfta att reläets specifikationer matchar din avsedda belastning.
  • Testa reläet med en multimeter innan du kopplar in hög spänning.

Kopplingsanvisningar

controlling_Relay_AC_bulb_wiring_low_trigger

För att koppla relämodulen, börja med att ansluta VCC-pinnen på relämodulen till 5V-pinnen på Arduino. Anslut sedan GND-pinnen på relämodulen till GND-pinnen på Arduino. Kontrollpinnen för reläet, som ofta är märkt som IN, bör kopplas till en digital pinne på Arduino, till exempel pinne 8. Denna konfiguration gör att Arduino kan styra reläets tillstånd.

När kopplingen är klar kommer VCC och GND att ge ström till relämodulen, medan kontrollpinnen kommer att skicka signaler för att slå på och av reläet. Se till att anslutningarna är säkra för att förhindra eventuella intermittenta problem under drift. Om du använder ett annat Arduino-kort, se till att kartlägga kontrollpinnen på rätt sätt.

Relay wiring when load is OFF
Relay wiring when load is ON

Kodexempel och genomgång

int relayPin = 8; // define output pin for relay

void setup() {
  pinMode(relayPin, OUTPUT); // define pin 8 as output
}

void loop() {
  digitalWrite(relayPin, LOW); // turn the relay ON
  delay(500); // wait for 500 milliseconds
  digitalWrite(relayPin, HIGH); // turn the relay OFF
  delay(500); // wait for 500 milliseconds
}

I koden börjar vi med att definiera utgångspinnen för reläet medrelayPinställ in på 8. I densetup()funktion, vi konfigurerar denna pin som en UTGÅNG. Denloop()Funktionen växlar kontinuerligt reläets tillstånd genom att skriva LOW till pinnen, vilket slår på den, och sedan skriva HIGH, vilket stänger av den efter en fördröjning på 500 millisekunder.

Demonstration / Vad man kan förvänta sig

När kablingen och programmeringen är klar bör du observera att reläet klickar på och av varannan sekund. Detta indikerar att Arduino framgångsrikt kontrollerar reläet. Om du ansluter en högspänningsapparat till reläet bör den slå på och av i takt med reläets tillstånd. Se till att reläet är klassat för spänningen och strömmen av den apparat du kontrollerar för att förhindra skador (i videon vid 02:15).

Vanliga fallgropar inkluderar felaktig kablage, vilket kan leda till att reläet inte fungerar som förväntat. Se dessutom till att du använder ett lågtriggat relä; annars kan det hända att du behöver justera koden för att anpassa den till ett högtriggat relä.

Videotidsstämplar

  • 00:00Introduktion till projektet
  • 00:30Hårdvaruöversikt
  • 01:15Kopplingsanvisningar
  • 02:15Demonstration av reläet i aktion

Bilder

5V LOW-LEVEL trigger relay
5V LOW-LEVEL trigger relay
Relay wiring when load is OFF
Relay wiring when load is OFF
Relay wiring when load is ON
Relay wiring when load is ON
5V HIGH-level trigger relay module
5V HIGH-level trigger relay module
controlling_Relay_AC_bulb_wiring_low_trigger
controlling_Relay_AC_bulb_wiring_low_trigger
7-Introduction to a 5V, 1-channel relay for Arduino
Språk: C++
// April 1, 2017
 // Written by Ahmad Shamshiri for Robojax.com video 
 // Introduction to 5V relay.
 // Watch video for this code: https://www.youtube.com/watch?v=7tUGUXyloXQ
/* 
 * Please keep this note with the code.
 * This code is available on Robojax.com
 * 
 * This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.
 * This code has been downloaded from Robojax.com
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.
 */
 
int relayPin = 8;// define output pin for relay 

void setup() {
  pinMode(relayPin, OUTPUT);// define pin 8 as output

}

void loop() {
  
  digitalWrite(relayPin, LOW); // turn the relay ON (low is ON if relay is LOW trigger. Change it to HIGH if you have a HIGH trigger relay)

  delay(500); // wait for 500 milliseconds
 digitalWrite(relayPin, HIGH);// // turn the relay OFF (HIGH is OFF if relay is LOW trigger. Change it to LOW if you have a HIGH trigger relay)
 delay(500);// wait for 500 milliseconds
}

Tänker att du kanske behöver

Resurser och referenser

Inga resurser än.

Filer📁

Fritzing-fil