Vytvára sa bezdrôtový vypínač pre váš počítač

TO Inteligentné systém, ktorý ovláda osvetlenie, zábavné systémy a ďalšie spotrebiče, si môžete ľahko navrhnúť doma a sú zároveň najrýchlejšie rastúcou koncepciou moderného sveta. Smart Home Systems je koncept, pri ktorom sú všetky elektrické spotrebiče alebo zariadenia ovládané pomocou jedného diaľkového ovládača. V súčasnosti je možné jediný komponent ako reléový modul použiť na riadenie rôznych elektronických parametrov domu, napríklad prepínanie domácich spotrebičov, sledovanie bezpečnostných alarmov, automatizáciu garážových brán atď. V tomto projekte náš Osobný počítač bude riadený Aplikácia pre Android . V týchto systémoch je diaľkové ovládanie väčšinou mobilnou aplikáciou. Ako android android je najbežnejší medzi ľuďmi, tak aplikácia pre Android je najlepšia voľba na ovládanie nášho PC.



Bezdrôtový počítačový prepínač

Ako si vyrobiť bezdrôtový prepínač pre počítač na mobilnom telefóne?

Krok 1: Zhromaždenie komponentov

Aby bolo možné vytvoriť akýkoľvek projekt, musí človek vedieť, aké sú základné komponenty, ktoré bude potrebné na jeho dokončenie. Vynikajúcim prístupom pred zahájením práce je teda vytvorenie kompletného zoznamu všetkých komponentov, aby ste ušetrili čas a zabránili možnosti zaseknutia sa uprostred projektu. Kompletný zoznam všetkých komponentov, ktoré sú ľahko dostupné na trhu, je uvedený nižšie:



  • ESP32
  • Tranzistor 2N2222 NPN
  • 1k-ohmový rezistor (x2)
  • 5V reléový modul
  • Pripojovacie vodiče

Krok 2: Softvér, ktorý sa má nainštalovať

Keď ideme vyrábať bezdrôtový vypínač, budeme potrebovať tlačidlo na jeho zapnutie a vypnutie. Na ovládanie tohto tlačidla chceme použiť mobilný telefón, takže na to budeme musieť vyvinúť aplikáciu. Najpohodlnejšou aplikáciou je aplikácia pre Android. Aby sme mohli používať túto aplikáciu, musíme nainštalovať dva programy. Oba z nich sú uvedené nižšie:



  • Android Studio.
  • JAVA JDK.

Krok 3: Inštalácia Android Studio

Pred inštaláciou Android Studio si nainštalujeme JAVA Najprv JDK. Ak ho chcete nainštalovať, kliknite na ikonu exe spis ktoré ste si stiahli z vyššie uvedeného odkazu, a kliknite na tlačidlo Ďalej, kým sa úspešne nenainštaluje. Teraz vykonajte nasledujúce kroky, aby váš príkazový riadok rozpoznal javu ako externý alebo interný príkaz.



  1. Otvorené Ovládací panel a kliknite na Systém a bezpečnosť .
  2. Kliknite na Systém .

    Systém

  3. Kliknite na Pokročilé nastavenie systému a potom kliknite na Environmentálne premenné .

    Pokročilé nastavenie systému

  4. V časti Systémová premenná kliknite na cestu a potom na položku Upraviť. Nový Upraviť premennú prostredia Zobrazí sa pole.

    Upraviť cestu



  5. Teraz choď na C: Program Files Java vo vašom PC. Otvorte priečinok JDK, kliknite na priečinok bin a potom skopírujte cestu k tomuto priečinku.

    Cesta priečinka bin

  6. Teraz choďte do poľa Upraviť premennú prostredia a kliknite na nové, aby ste vytvorili novú premennú. Vložte cestu, ktorú ste skopírovali v predchádzajúcom kroku, do novej premennej a uložte ju.
  7. Teraz potvrďte, ak je úplne nainštalovaný, otvorte príkazový riadok a zadajte java –verzia .

    Verzia JAVA

Teraz, keď ste vo svojom počítači úspešne nainštalovali program Java JDK. Poďme si teraz nainštalovať Android Studio do vášho počítača. Inštalácia tohto softvéru je veľmi jednoduchá. Stiahnutý súbor musíte otvoriť a klikať na tlačidlo Ďalej, kým nebude softvér úplne nainštalovaný.

Krok 4: Pripojenie k Firebase

Teraz, keď sme nainštalovali Android Studio, spustíme ho a vytvoríme nový projekt na jeho pripojenie k firebase. Postupujte podľa nasledujúcich krokov.

1. Spustite Android Studio a vytvorte nový projekt kliknutím na ikonu Prázdna aktivita .

Nový projekt

2. Teraz pomenujte svoj projekt ako computerSwitc, vyberte Kotlin ako jazyk a vyberte minimálnu úroveň API podľa mobilného telefónu.

Nový projekt

3. Pretože budeme používať internet na ovládanie pinov malinovej pí. V našej aplikácii nastavíme povolenie na prístup k miestnej sieti wifi. Ak to chcete urobiť, choďte na aplikácia> manifesty> AndroidManifest.xml a pridajte nasledujúci príkaz.

 

Povolenie na internet

3. Teraz kliknite na n Náradie. Zobrazí sa rozbaľovacia ponuka, z ktorej vyberte Firebase.

Pripojenie Firebase

4. Na pravej strane obrazovky sa zobrazí veľká ponuka, ktorá bude poskytovať ponuku takmer všetkých služieb poskytovaných platformou firebase. Momentálne sa však zameriavame hlavne na databázu v reálnom čase. Kliknite teda na Real-Time Database. Odkaz na „ Uložiť a načítať údaje ' objaví sa. Kliknite na tento odkaz.

Firebase Assistant

5. Pripojte sa Pripojte sa k Firebase tlačidlo. Dostanete sa do predvoleného webového prehliadača. Najprv vás požiada o prihlásenie do svojho účtu Gmail. Potom kliknite na Pridajte do svojej aplikácie databázu v reálnom čase a prijať zmeny.

6. Teraz choď na Konzola Firebase . Tam uvidíte už vyrobený projekt. Logo systému Android na ikone tohto projektora znamená, že už patrí k aplikácii pre Android.

7. Z Rozvíjať ponuka, ktorá sa zobrazí na ľavej strane obrazovky, zvoľte Databáza. Tlačidlo Vytvorte databázu sa objaví vpravo. Kliknite na toto tlačidlo.

8. Zobrazí sa ponuka s požiadavkou na nastavenie režimu vašej databázy. Kliknite na testovací mód a potom kliknite Povoliť .

Testovací mód

9. Teraz je skutočne dôležitým krokom, ktorý si musíte pamätať, zmena Cloud Firestore do Databáza v reálnom čase. Kliknite na tlačidlo zobrazené na obrázku nižšie a zmeňte požadovanú možnosť.

Realtime Firebase

10. Teraz kliknite na ikonu Pravidlá kartu a zmeňte konfigurácie na Pravdaže . Akonáhle je všetko hotové, kliknite na Zverejniť .

Zmena konfigurácií

11. Jedna vec, ktorú musíte urobiť okrem pripojenia firebase, je aktualizácia verzie databázy. Kliknite na ísť do doc . Teraz kliknite na sprievodcovia a vyberte Sprievodcovia Androidom zo zoznamu, ktorý sa zobrazí na obrazovke. Posúvajte sa nadol, kým sa nezobrazí tabuľka. V tejto tabuľke vyhľadajte databázu Real-Time a nájdite jej verziu. v mojom prípade to tak je 19.1.0

Verzia

12. Kliknite na Gradle skripty, ponuku na ľavej strane obrazovky. Potom vyberte postavený. gradle (Modul: aplikácia). Teraz v kóde vyhľadajte verziu databázy v reálnom čase a nahraďte ju novou.

Verzia Firebase

13. Teraz projekt synchronizujte kliknutím na tlačidlo synchronizácie zobrazené v hornej časti obrazovky.

Krok 5: Vytvorenie rozloženia

Teraz, keď je naša aplikácia pre Android pripojená k firebase, urobme rozloženie našej aplikácie, ktoré bude používateľom používané na zapnutie alebo vypnutie počítača. Ak chcete vytvoriť rozloženie, prejdite na aplikácia> res> rozloženie> activity_main.xml. kde navrhneme dispozíciu. Skopírujte nižšie uvedený kód a vytvorte textové zobrazenie.

 

Rozloženie našej aplikácie bude vyzerať takto:

Rozloženie aplikácie

Krok 6: Backendové kódovanie v Kotline

Keď sme vytvorili frontend aplikácie, posuňme sa o krok vpred a napíšeme backendový kód, ktorý ju prepojí s firebase. Pripojili sme prepínač, ktorý pošle 0 do databázy firebase, keď je vo vypnutom stave, a pošle 1 do databázy firebase, keď je v zapnutom stave.

Teraz v ľavom rohu kliknite na aplikácia> Java> com.example.computerswitch> main_activity, a pridajte tam nasledujúci kód vo svojej triede. Ak sa vyskytne chyba knižnice, stlačte ALT + ENTER automaticky zahrnúť túto knižnicu.

var database = FirebaseDatabase.getInstance () var myRef = database.reference internal lateinit var btnSwitch: Prepnúť prepísanie zábavy onCreate (savedInstanceState: Bundle?) {super.onCreate (savedInstanceState) setContentView (R.layout.activity_main) btnSwitch = find. id.switch2) ako Switch btnSwitch.setOnClickListener {if (btnSwitch.isChecked) {myRef.child ('switch'). setValue ('1')} else {myRef.child ('switch'). setValue ('0') }}}

Na nasledujúcom obrázku vidíte, že ak je prepínač zapnutý, do databázy firebase sa nahrá „1“. Podobne sa tu nahradí „0“, keď je vypnutý vypínač.

Hodnota

Krok 7: Začíname s Arduino

Ak ste na rozhraní Arduino IDE doteraz nepracovali, nemusíte sa obávať, pretože nižšie je uvedený postup nastavenia Arduino IDE.

  1. Stiahnite si najnovšiu verziu Arduino IDE z Arduino.
  2. Pripojte dosku Arduino k počítaču a otvorte ovládací panel. Kliknite na Hardvér a zvuk. Teraz otvorené Zariadenia a tlačiareň a nájdite port, ku ktorému je pripojená vaša doska. V mojom prípade to tak je COM14, ale v rôznych počítačoch je to iné.

    Hľadá sa prístav

  3. Kliknite na Súbor a potom na Predvoľby. Skopírujte nasledujúci odkaz do priečinka URL ďalšieho správcu rady. „ https://dl.espressif.com/dl/package_esp32_index.json '

    Predvoľby

  4. Teraz, aby sme mohli používať ESP32 s Arduino IDE, musíme importovať špeciálne knižnice, ktoré nám umožnia napáliť kód na ESP32 a použiť ho. tieto dve knižnice sú pripojené k odkazu uvedenému nižšie. Zahrnúť knižnicu, choďte Skica> Zahrnúť knižnicu> Pridať knižnicu ZIP . Zobrazí sa rámček. Vyhľadajte priečinok ZIP v počítači a kliknutím na tlačidlo OK ich zahrňte.

    Zahrnúť knižnicu

  5. Teraz choď Skica> Zahrnúť knižnicu> Správa knižníc.

    Spravovať knižnice

  6. Otvorí sa ponuka. Do vyhľadávacieho panela zadajte text Arduino JSON. Zobrazí sa zoznam. Inštalácia Arduino JSON od Benoita Blanchona.

    Arduino JSON

  7. Teraz kliknite na ikonu Náradie. Zobrazí sa rozbaľovacia ponuka. Nastavte dosku na Modul ESP Dev.

    Nastavovacia doska

  8. Znova kliknite na ponuku Nástroj a nastavte port, ktorý ste predtým pozorovali na ovládacom paneli.

    Nastavuje sa port

  9. Teraz nahrajte kód, ktorý je priložený v nižšie uvedenom odkaze, a kliknutím na tlačidlo nahrávania kód napálite na Mikrokontrolér ESP32 .

    Nahrať

Takže teraz, keď budete nahrávať kód, môže dôjsť k chybe. Toto je najbežnejšia chyba, ktorá sa môže vyskytnúť, ak používate novú verziu Arduino IDE a Arduino JSON. Nasledujú chyby, ktoré sa môžu zobraziť na obrazovke.

V súbore zahrnutom z C:  Users  Pro  Documents  Arduino  libraries  IOXhop_FirebaseESP32-master / IOXhop_FirebaseESP32.h: 8: 0, z C:  Users  Pro  Desktop  smartHome  code  code.ino: 2: C :  Users  Pro  Documents  Arduino  libraries  IOXhop_FirebaseESP32-master / IOXhop_FirebaseStream.h: 14:11: chyba: StaticJsonBuffer je trieda od ArduinoJson 5. Informácie o tom, ako upgradovať program na ArduinoJson, nájdete na arduinojson.org/upgrade. verzia 6 StaticJsonBuffer jsonBuffer; ^ V súbore zahrnutom z C:  Users  Pro  Documents  Arduino  libraries  IOXhop_FirebaseESP32-master / IOXhop_FirebaseESP32.h: 8: 0, z C:  Users  Pro  Desktop  smartHome  code  code.ino: 2: C:  Users  Pro  Documents  Arduino  libraries  IOXhop_FirebaseESP32-master / IOXhop_FirebaseStream.h: 65: 11: chyba: StaticJsonBuffer je trieda od ArduinoJson 5. Informácie o tom, ako upgradovať program na, nájdete na arduinojson.org/upgrade ArduinoJson verzia 6 vráti StaticJsonBuffer (). ParseObject (_data); ^ Pre „WiFi.h“ bolo nájdených viac knižníc Použité: C:  Users  Pro  AppData  Local  Arduino15  packages  esp32  hardware  esp32  1.0.2  libraries  WiFi Nepoužíva sa: C:  Program Files ( x86)  Arduino  libraries  WiFi Používanie knižnice WiFi vo verzii 1.0 v priečinku: C:  Users  Pro  AppData  Local  Arduino15  packages  esp32  hardware  esp32  1.0.2  libraries  WiFi Používanie knižnice IOXhop_FirebaseESP32-master v priečinku: C:  Users  Pro  Documents  Arduino  libraries  IOXhop_FirebaseESP32-master (legacy) Používanie knižnice HTTPClient vo verzii 1.2 v priečinku: C:  Users  Pro  AppData  Local  Arduino15  packages  esp32  hardware  esp32  1.0.2  libraries  HTTPClient Používanie knižnice WiFiClientSecure vo verzii 1.0 v priečinku: C:  Users  Pro  AppData  Local  Arduino15  packages  esp32  hardware  esp32  1.0.2  libraries  WiFiClientSecure Používanie knižnice ArduinoJson na adrese verzia 6.12.0 v priečinku: C:  Users  Pro  Documents  Arduino  libraries  ArduinoJson stav ukončenia 1 Chyba kompilácie pre modul ESP32 Dev Module.

Niet sa čoho obávať, pretože tieto chyby môžeme eliminovať vykonaním niekoľkých jednoduchých krokov. Tieto chyby vznikajú, pretože nová verzia Arduino JSON má namiesto nej inú triedu StaticJsonBuffer. Toto je trieda JSON 5. Takže túto chybu môžeme jednoducho eliminovať znížením verzie Arduino JSON nášho Arduino IDE. Jednoducho choďte na Skica> Zahrnúť knižnicu> Správa knižníc. Hľadať Arduino JSON od Benoita Blanchona ktoré ste predtým nainštalovali. Najskôr ho odinštalujte a potom nastavte jeho verziu na 5.13.5. Teraz, keď sme nastavili starú verziu Arduino JSON, znova ju nainštalujte a kód znova skompilujte. Váš kód sa tentokrát úspešne skompiluje.

Ak chcete stiahnuť kód, kliknite tu.

Krok 8: Zostavenie obvodu

Teraz, keď je naša aplikácia pripravená a plne funkčná, pozrime sa, ako pripojíme obvod k počítaču.

  1. Najskôr si vezmite rozvádzač a zapojte doň všetky zástrčky počítačového systému, t. J. Monitor, tlačiareň, procesor, napájací zdroj atď.
  2. Teraz vezmite spojovací spínač tejto dosky a urobte medzi vodičom zárez, aby boli zvnútra viditeľné dva vodiče, čierny a červený.
  3. Vyberte červený drôt a odrežte ho od stredu. Pripojte jeden koniec vodiča k NO bodu reléového modulu a druhý koniec k bodu COM reléového bodu. (nerobte nič s čiernym drôtom)
  4. Teraz zafixujte ESP32 do kontaktného poľa a napájajte ho pomocou 5V batérie. Pripojte Vcc a uzemnenie reléového modulu k prepojovaciemu poli s kladnými a zápornými svorkami batérie.
  5. Vykonajte nasledujúcu konfiguráciu s tranzistorom na nepájivej doske.

Krok 9: Kód

Kód je dosť jednoduchý, ale napriek tomu je v krátkosti vysvetlený nižšie.

1. Na začiatku sú zahrnuté dve knižnice, aby bolo možné používať firebase s ESP32.

#include #include

2. Potom sa zadajú informácie o vašej databáze firebase a pripojení Wifi a deklaruje sa pin ESP, ktorý sa použije s reléovým modulom.

#define FIREBASE_HOST 'xxxxx' // nahraďte ho hostiteľom Firebase #define FIREBASE_AUTH 'xxxxx' // nahraďte ho svojim firebase auth #define WIFI_SSID 'xxxxx' // nahraďte ho svojim WIFI SSID #define WIFI_PASSWORD 'xxxxx' // nahraďte ho svojim wifi heslom int swi = 34; // pripojte pin34 ESP s reléovým modulom

3. nastavenie neplatnosti () je funkcia, ktorá beží iba raz, keď je obvod zapnutý alebo je stlačené tlačidlo Povoliť. Tu je napísaný kód t pripojenie dosky ESP k WIFI. Čap ESP, ktorý sa používa s reléovým modulom, sa tu tiež deklaruje ako VÝSTUP.

void setup () {Serial.begin (115200); pinMode (swi, OUTPUT); // pripojenie na wifi. WiFi.begin (WIFI_SSID, WIFI_PASSWORD); Serial.println („pripája sa“); while (WiFi.status ()! = WL_CONNECTED) {Serial.print ('.'); oneskorenie (500); } Serial.println (); Serial.print ('pripojený:'); Serial.println (WiFi.localIP ()); Firebase.begin (FIREBASE_HOST, FIREBASE_AUTH); }

Štyri. neplatná slučka () je funkcia, ktorá beží opakovane v slučke. Tu sa načíta hodnota z firebase. Ak je táto hodnota rovná „1“, potom sa do reléového modulu odošle signál HIGH a počítač sa zapne. Ak je táto hodnota „0“, počítač sa vypne.

void loop () {// načítať hodnotu if (Firebase.getFloat ('switch') == 1) {digitalWrite (swi, HIGH); } else {digitalWrite (swi, LOW); } // chyba manipulácie if (Firebase.failed ()) {Serial.print ('setting / number failed:'); Serial.println (Firebase.error ()); návrat; } oneskorenie (1 000); }