V tomto projekte prepojíme relé s mikrokontrolérom PIC PIC16F877A. Relé je mechanické zariadenie na riadenie vysokonapäťových a silnoprúdových spotrebičov „ ZAPNUTÉ “ alebo „ VYPNUTÉ “ z nižších úrovní napätia. Relé poskytuje izoláciu medzi dvoma napäťovými úrovňami a všeobecne sa používa na riadenie striedavých spotrebičov. Od mechanických po polovodičové relé sú v elektronike k dispozícii rôzne typy relé. V tomto projekte použijeme mechanické relé.
V tomto projekte urobíme nasledujúce veci -
- Prepojíme prepínač pre vstup od používateľa.
- Ovládajte žiarovku 220 V s 5 V relé.
- Na riadenie relé použijeme tranzistor NPN BC547 a tranzistor bude riadený z PIC16F877A. LED dióda upozorní na stav ZAPNUTÉ alebo VYPNUTÉ relé.
Ak ste v mikrokontroléri PIC nováčikom, začnite kapitolou Začíname s mikrokontrolérom PIC.
Požadovaný komponent:
- PIC16F877A
- 20MHz kryštál
- 2 ks 33pF keramika
- 3 ks 4,7k rezistory
- 1k rezistor
- 1 LED
- Tranzistor BC547
- Dióda 1N4007
- 5V kubické relé
- AC žiarovka
- Nepál
- Drôty na pripojenie častí.
- 5V adaptér alebo akýkoľvek 5V napájací zdroj s prúdovým prúdom najmenej 200 mA.
Relé a jeho práca:
Relé funguje rovnako ako typický spínač. Mechanické relé používajú dočasný magnet vyrobený z elektromagnetickej cievky. Keď na túto cievku poskytneme dostatok prúdu, stala sa pod napätím a potiahne ruku. Z tohto dôvodu môže byť obvod pripojený k relé zatvorený alebo otvorený. Vstup a výstup nemajú žiadne elektrické pripojenia, a preto izolujú vstup a výstup. Viac informácií o relé a jeho konštrukciách sa dozviete tu.
Relé možno nájsť v rôznych napäťových rozsahoch, ako je 5V, 6V, 12V, 18V atď. V tomto projekte použijeme 5V relé, pretože naše pracovné napätie je tu 5 Voltov. Toto kubické relé 5 V je schopné prepínať záťaž 7 A pri 240 V str. Alebo 10 A pri 110 V str. Avšak namiesto toho obrovského zaťaženia použijeme žiarovku 220VAC a prepneme ju pomocou relé.
Toto je 5V relé, ktoré používame v tomto projekte. Aktuálny prúd je jasne uvedený pre dve úrovne napätia, 10A pri 120VAC a 7A pri 240VAC. Musíme pripojiť záťaž na relé menej, ako je stanovené hodnotenie.
Toto relé má 5 pinov. Ak vidíme pinout, môžeme vidieť-
L1 a L2 je pin interného elektromagnetickej cievky je. Tieto dva piny musíme ovládať, aby bolo relé zapnuté alebo vypnuté. Ďalšie tri kolíky sú POLE, NO a NC. Pól je spojený s vnútornou kovovou doskou, ktorá mení svoje pripojenie pri zapnutí relé. V normálnom stave, POLE skratovaný s NC. NC znamená normálne pripojené. Keď sa relé zapne, pól zmení svoju polohu a spojí sa s NO. NO znamená Normally Open.
V našom obvode sme vytvorili reléové spojenie s tranzistorom a diódou. Relé s tranzistorom a diódou je na trhu dostupné ako reléový modul, takže keď používate reléový modul, nemusíte pripájať jeho budiaci obvod (tranzistor a dióda).
Relé sa používa vo všetkých projektoch domácej automatizácie na ovládanie domácich domácich spotrebičov.
Schéma zapojenia:
Kompletný obvod na pripojenie relé k mikrokontroléru PIC je uvedený nižšie:
Vo vyššie uvedenom schematickom pic16f877a sa používa tam, kde na porte B LED a tranzistor je pripojený, ktorý je ďalej ovláda pomocou prepínača TAC na RBO. R1 poskytuje kľudový prúd do tranzistora. R2 je sťahovací rezistor, ktorý sa používa cez hmatový spínač. Poskytne logiku 0, keď nie je stlačený spínač. 1N4007 je svorka dióda, ktorý sa používa pre elektromagnetické cievky na relé je. Keď sa relé vypne, je pravdepodobné, že dôjde k vysokonapäťovým špičkáma dióda to potlačí. Tranzistor je potrebný na riadenie relé, pretože vyžaduje viac ako 50 mA prúdu, ktorý mikrokontrolér nedokáže poskytnúť. Namiesto tranzistora môžeme použiť aj ULN2003, je to múdrejšia voľba, ak sú pre aplikáciu potrebné viac ako dve alebo tri relé, skontrolujte obvod modulu relé. LED cez prístavné RB2 oznámi " relé je na ".
Finálny okruh bude vyzerať takto-
Tu sa môžete naučiť ovládať relé pomocou Arduina. Ak vás relé skutočne zaujíma, skontrolujte tu všetky reléové obvody.
Vysvetlenie kódu:
Na začiatok súboru main.c sme pridali konfiguračné riadky pre pic16F877A a tiež sme definovali názvy pinov na PORTB.
Ako vždy najskôr je potrebné nastaviť konfiguračné bity v mikrokontroléri pic, definovať niektoré makrá vrátane knižníc a frekvencie kryštálov. Môžete skontrolovať kód všetkých osôb v úplnom kóde uvedenom na konci. Ako vstup sme vytvorili RB0. V tomto kolíku je pripojený spínač.
#include
Potom sme nazvali funkciu system_init (), kde sme inicializovali smer pinov, a tiež sme nakonfigurovali predvolený stav pinov.
Vo funkcii system_init () uvidíme
void system_init (void) { TRISBbits.TRISB0 = 1; // Nastavenie Sw ako vstupu TRISBbits.TRISB1 = 0; // nastavenie LED ako výstupu TRISBbits.TRISB2 = 0; // nastavenie pinu relé ako výstupnej LED = 0; RELÉ = 0; }
V hlavnej funkcii neustále kontrolujeme stlačenie spínača, ak detekujeme stlačenie spínača snímaním logiky vysoko na RB0; počkáme nejaký čas a uvidíme, či je spínač stále stlačený alebo nie, ak je spínač stále stlačený, invertujeme stav RELÉ a LED kolíka.
void main (void) { system_init (); // Systém sa pripravuje while (1) { if (SW == 1) {// je stlačený prepínač __delay_ms (50); // oneskorenie odskoku if (SW == 1) {// prepínač je stále stlačený LED =! LED; // invertovanie stavu pinu. RELÉ =! RELÉ; } } } vrátiť; }
Kompletný kód a ukážkové video pre toto rozhranie relé je uvedený nižšie.