LED Knipperen is een veel voorkomend en bijna eerste programma voor elke ingesloten leerling of beginner. Waarin we met enige vertraging een LED laten knipperen. Dus vandaag zijn we hier met hetzelfde project, maar hier gebruiken we een AC-lamp in plaats van een normale LED en zullen we een AC-lamp laten knipperen.
Elke keer dat we een AC-apparaat in onze embedded circuits moeten aansluiten, gebruiken we een relais. Dus in deze arduino-zelfstudie over relaisbesturing zullen we eenvoudig leren hoe een relais met Arduino te communiceren. Hier gebruiken we geen Relay Driver IC zoals ULN2003 en zullen alleen een NPN-transistor gebruiken om het relais te besturen.
Vereiste componenten:
- Arduino
- 5v of 6v relais
- AC-apparaat of lamp
- BC547-transistor
- 1k weerstand
- Breadboard of printplaat
- Verbindingsdraad aansluiten
- Stroomvoorziening
- 1n4007 diode
- Schroefklem of klemmenblok
Relais:
Relais is een elektromagnetische schakelaar, die wordt bestuurd door een kleine stroom, en wordt gebruikt om relatief veel grotere stroom AAN en UIT te schakelen. Door een kleine stroom toe te passen, kunnen we het relais inschakelen waardoor een veel grotere stroom kan stromen. Een relais is een goed voorbeeld van het besturen van AC-apparaten (wisselstroom) met een veel kleinere gelijkstroom. Veelgebruikt relais is Single Pole Double Throw (SPDT) relais, het heeft vijf terminals, zoals hieronder:
Als er geen spanning op de spoel staat, is COM (gemeenschappelijk) verbonden met NC (normaal gesloten contact). Wanneer er wat spanning op de spoel wordt toegepast, wordt het geproduceerde elektromagnetische veld, dat het anker aantrekt (hendel verbonden met de veer), en COM en NO (normaal open contact) verbonden, waardoor een grotere stroom kan vloeien. Relais zijn verkrijgbaar in veel classificaties, hier hebben we een 6V-bedrijfsspanningsrelais gebruikt, waardoor 7A-250VAC-stroom kan vloeien.
Het relais wordt altijd geconfigureerd met behulp van een klein stuurprogramma dat bestaat uit een transistor, diode en een weerstand. Transistor wordt gebruikt om de stroom te versterken, zodat de volledige stroom (van de DC-bron - 9v-batterij) door een spoel kan stromen om deze volledig van energie te voorzien. De weerstand wordt gebruikt om de transistor voor te spannen. En Diode wordt gebruikt om tegenstroom te voorkomen, wanneer de transistor is uitgeschakeld. Elke inductorspoel produceert gelijke en tegengestelde EMK wanneer deze plotseling wordt uitgeschakeld, dit kan permanente schade aan componenten veroorzaken, dus moet een diode worden gebruikt om tegenstroom te voorkomen. Een relaismodule is gemakkelijk verkrijgbaar op de markt met al zijn stuurcircuits op het bord of je kunt het op een printplaat of PCB maken, zoals hieronder. Hier hebben we 6V Relaismodule gebruikt.
Hier om het relais met Arduino in te schakelen, hoeven we alleen die Arduino-pin hoog te maken (A0 in ons geval) waar de relaismodule is aangesloten. Hieronder vindt u het relaisstuurcircuit om uw eigen relaismodule te bouwen:
Schakelschema en werking:
In dit Arduino Relay Control Circuit hebben we Arduino gebruikt om het relais aan te sturen via een BC547 transistor. We hebben de transistorbasis aangesloten op Arduino-pin A0 via een 1k-weerstand. Ter demonstratie wordt een AC-lamp gebruikt. De 12v-adapter wordt gebruikt om het circuit van stroom te voorzien.
Het werken is eenvoudig, we moeten de RELAY-pin (PIN A0) hoog maken om de relaismodule AAN te zetten en de RELAY-pin laag maken om de relaismodule uit te schakelen. Het AC-lampje gaat ook aan en uit volgens Relay.
We hebben zojuist de Arduino geprogrammeerd om de Relay Pin (A0) hoog en laag te maken met een vertraging van 1 seconde:
void loop () {digitalWrite (relais, HIGH); vertragingsinterval); digitalWrite (relais, LOW); vertragingsinterval); }
Demonstratievideo en volledige code voor Arduino Relay Control wordt hieronder gegeven.