- Komponenter, der kræves
- Magnetlås
- HC-05 Bluetooth-modul
- Kredsløbsdiagram for Bluetooth-styret magnetlås
- Arduino-program til styring af magnetlås baseret på fingeraftryksdata
- Android-app til læsning af fingeraftryksdata og afsendelse til Arduino via Bluetooth
- 3D-trykt kabinet til biometrisk baseret lås
- Test af vores Arduino-baserede fingeraftryksstyrede lås
Nu er hele verden i greb om COVID 19, og alle tager forholdsregler, hvor de kan, for at forhindre sig selv i at få denne alvorlige sygdom ved at følge social afstand, iført masker, bruge kontantløse transaktioner og undgår at røre ved noget for at forhindre spredning af bakterier. Med fremkomsten af teknologi bliver de normale låse fortid, og nye biometriske baserede låse og RFID-baserede låse bliver mere og mere mainstream. Fingeraftryksbaserede låse og tilstedeværelsesregistreringsenheder bruges også i de fleste kontorer og colleges, men i dag er det ikke tilrådeligt at gøre det på grund af denne pandemi, og derfor skal vi bygge en dørlås ved hjælp af en magnetlås og kontrol det ved hjælp af en Android-app via Bluetoothså vi slet ikke behøver at røre ved fingeraftrykssensoren og bare bruge dine egne telefoner til at kontrollere låsen. Så lad os komme i gang.
Komponenter, der kræves
- 1 × Arduino Nano
- 1 × HC-05 Bluetooth-modul
- 1 × magnetlås
- 1 × Piezoelektrisk summer
- 1 × Rød LED 5 mm
- 1 × Grøn LED 5 mm
- 1 × IRF540N N-Channel MOSFET
- 1 × BC547 NPN-transistor
- Modstande: 1 × 550Ω, 1 × 2k0Ω, 1 × 220Ω
- 1 × 7805 spændingsregulator
- 1 × DC-stikforbindelsespar
- Perfboard
Magnetlås
I en konventionel dørlås er der en nøgle til at trække eller skubbe låsen, og vi skal betjene den manuelt, men i en magnetlås kan låsen betjenes automatisk ved at påføre en spænding over magnetventilen, som styrer låsen til stede i låsen.
Magnetlås har en lavspændings magnetventil, der trækker låsen tilbage i døren, når der påføres en passende spænding på den, og den forbliver åben, indtil spændingen fjernes. Så du kan styre operationen ved at kontrollere spændingen, som den får ved at bruge en trykknap, relæ, mikrokontroller osv. Solenoid-dørlåse bruges hovedsageligt i fjerntliggende områder til at automatisere operationer uden at involvere nogen menneskelig indsats.
HC-05 Bluetooth-modul
HC-05 bruges til at levere trådløs forbindelse til dine projekter, så du kan kommunikere med andre mikrocontrollere eller dine mobiltelefoner og bærbare computere. Du kan nemt kontrollere de data, der sendes og modtages ved hjælp af enkle Android-applikationer, som du nemt kan lave selv. Den har to tilstande, den første datatilstand, der bruges til at overføre data til og fra Bluetooth-enheden, og den anden er AT-kommandotilstandsom bruges til at konfigurere dit Bluetooth-modul. Den kommunikerer ved hjælp af USART-kommunikation med en 9600 baudhastighed, så du kan slutte den til enhver mikrocontroller, der understøtter USART-kommunikation og let kan tilsluttes de serielle porte, der er tilgængelige på kortet. Husk, at du skal strømforsyne enheden med en 5V strømforsyning og slutte TX-stiften til RX-stiften på din mikrocontroller og RX-stiften til TX-stiften på mikrokontrolleren. Du kan bruge det i automatiseringsapplikationer og trådløse applikationer i datalogning og robotik.
Kredsløbsdiagram for Bluetooth-styret magnetlås
Det komplette kredsløbsdiagram, der viser, hvordan man interface og styrer en magnetlås med en Arduino gennem en MOSFET, er vist nedenfor.
Som vist i kredsløbsdiagrammet er forbindelserne ret enkle, du skal tilslutte HC-05 Bluetooth-modulet til nano ved at tænde enheden med en 5V strømforsyning og tilslut TX-pin til RX-pin på din mikrocontroller og RX-pin til TX-stiften på mikrokontrolleren. Du skal tilføje en rød LED for at vise strømstatus for Arduino nano og en grøn LED for at vise, om døren er låst op. Du skal også tilslutte en summer. Forbindelsesdiagrammet er også vist nedenfor for nem forståelse.
For at kontrollere magnetlåsen skal du bruge et kontrolkredsløb, der består af en NPN-transistor og N-kanal MOSFET. Vi styrer NPN-transistoren ved at forbinde D9-stiften på Nano til basistappen på transistoren via en 550 Ohm-modstand for at kontrollere strømmen, der strømmer ind i transistoren. Når D9-stiften trækkes højt, tændes transistoren, og porten på MOSFET trækkes til jorden og slukker MOSFET, der slukker for magnetlåsen, og når D9-stiften er LAV, er NPN-transistoren slukket, som betyder, at porten til MOSFET trækkes til 12V via en 2kOhm pull up-modstand for at tænde MOSFET og tænde for magnetlåsen. På denne måde kan du styre magnetlåsen ved hjælp af din 5V Arduino Nano. Du kan ikke styre IRF540N MOSFET direkte med 5V-ben fra Nano, da det ikke er et MOSFET på logisk niveau, så det vandt 'Tænd eller sluk helt med 5V fra nano, derfor bruger vi BC547 NPN-transistoren til at styre MOSFET.
Jeg har loddet hele kredsløbet på et perf-kort for at gøre det kompakt. Ideen er at designe et 3D-trykt kabinet til vores lås, så det let kan installeres og bruges.
Arduino-program til styring af magnetlås baseret på fingeraftryksdata
Vi skriver koden på den officielle Arduino IDE, hvis du ikke har IDE, skal du downloade den fra den officielle Arduino-webside. Vi starter koden med at erklære de variabler, vi vil bruge i koden til at styre periferiudstyr som summer og led, også for at kontrollere solenoidelåsen ved at kontrollere transistoren.
int værdi1; #define led 12 #define bjt 9 #define buzzer 7
Når vi nu kommer til opsætningsdelen af Arduino, initialiserer vi først den serielle kommunikation af Arduino med en 9600 baudhastighed. Da vi bruger hardware-stifterne på Arduino til seriel kommunikation, behøver vi ikke bruge softwareserie i projektet. Nu skal vi erklære de ben, vi bruger, som output eller input og give dem indledende betingelser.
Serial.begin (9600); pinMode (bjt, OUTPUT); pinMode (led, OUTPUT); pinMode (summer, OUTPUT); digitalWrite (bjt, HIGH); digitalWrite (led, LAV);
Nu i kodens sløjfefunktion læser vi de data, der kommer serielt fra HC-05 Bluetooth-modulet, og kontrollerer, om de svarer til lås- eller oplåsningskommandoen. I vores programlogik, hvis fingeraftrykket genkendes korrekt, sender Bluetooth-modulet værdien "1", og hvis fingeraftrykket ikke genkendes, sender Bluetooth-modulet værdien "0". Hvis den af Nano læste værdi er “1”, låses døren op, og summeren lyder et sekund, og døren forbliver ulåst i 7 sekunder. Derefter låses døren igen. Hvis den læste værdi er "0", hvilket betyder, at fingeraftrykket ikke genkendes, lyder derfor en alarm hver tredje gang i et sekund for at advare sikkerheden.
Serial.println ("Læsning"); mens (Serial.available () == 0); værdi1 = Serial.read (); Serial.println (værdi1); hvis (værdi1 == 1) {Serial.println ("Unlocking"); digitalWrite (bjt, LOW); digitalWrite (summer, HIGH); digitalWrite (ledet, HØJ); forsinkelse (1000); digitalWrite (summer, LAV); forsinkelse (6000); digitalWrite (bjt, HIGH); digitalWrite (led, LAV); } hvis (værdi1 == 0) {digitalWrite (bjt, HIGH); digitalWrite (summer, HIGH); Serial.println ("Låsning"); forsinkelse (1000); digitalWrite (summer, LAV); forsinkelse (1000); digitalWrite (summer, HIGH); forsinkelse (1000); digitalWrite (summer, LAV); forsinkelse (1000); digitalWrite (summer, HIGH); forsinkelse (1000); digitalWrite (summer, LAV); }
Android-app til læsning af fingeraftryksdata og afsendelse til Arduino via Bluetooth
Appen til dette projekt blev designet ved hjælp af opfinderen af Kodular-appen. Oprettelse af en app ved hjælp af Kodular er meget enkel; du kan oprette en app ved at kombinere blokkene i henhold til dit projekts flowdiagram.
For at oprette en app med Kodular skal du navigere til Kodular.io og oprette en konto, hvis du ikke har en, skal du logge ind på din konto og derefter klikke på indstillingen ' Opret apps' .
Derefter føres du til skærmbilledet Projekter. Klik på knappen ' Opret projekt' for at oprette et projekt.
Navngiv appen, og klik på ' Udfør '. Projektet oprettes, og du føres til projektets designer- side. Nu på Designer-siden skal du tilføje disse fire komponenter fra Components Palette for at oprette et layout til appen: Bluetooth Client, Fingerprint, List Picker og Image Button. Listevælger og knap findes i ' Brugergrænseflade', mens fingeraftryk og Bluetooth kan vælges fra ' Sensorer ' og ' Forbindelse '.
Skærmegenskaber kan ændres ved at ændre egenskaberne for hver blok.
Derefter skal du gå til skærmen ' Blocks ' for at oprette appen ved hjælp af blokke.
Rul nu ned, klik på ' List_Picker1' og træk og slip den første kodeblok som vist på billedet:
I det næste trin skal du klikke på 'Control' -blokken og derefter trække og slippe den første kodeblok på Viewer-skærmen.
Derefter skal du gå til ' Bluetooth_client1' blokken og vælge ' Bluetooth_client.connect' kodeblokken.
Gå derefter til ' List_Picker' blokken og vælg ' Selection code block' som vist i nedenstående billede.
Gå nu til ' List_Picker' -blokken i næste trin, og vælg ' List_Picker ' . Tekst til ' kodeblok som vist i nedenstående billede.
Derefter skal du gå til 'Tekst' -blokken og vælge den første kodeblok.
Med dette er den første kodeblok færdig. Vi er nødt til at oprette yderligere tre kodeblokke for at ringe til fingeraftrykssensoren på Android-telefonen og godkende fingeraftrykket. Den komplette kodeblok vises i nedenstående billede. Brug dette billede til at slutte dig til resten af kodeblokkene.
Når alle blokke er tilsluttet, skal du eksportere .apk-filen på din bærbare computer, eller du kan direkte eksportere apk til din telefon ved hjælp af QR-koden. Den .aia og APK fil af denne app kan downloades fra nedenstående link.
- Download Android-applikation til kontrol af magnetlås gennem Arduino
3D-trykt kabinet til biometrisk baseret lås
Som tidligere nævnt har vi oprettet en 3D-model til at samle perf-kortet og magnetlåsen i et pænt lille hus. Modellen, der er placeret på skivesoftware, er vist nedenfor.
Hvis du bruger samme størrelse perf-kort og magnetlås, kan du også udskrive det samme kabinet ved hjælp af STL-filerne nedenfor. Du kan også tjekke andre 3D-udskrivningsprojekter, som vi har bygget tidligere.
STL-filer til magnetlåshus
Test af vores Arduino-baserede fingeraftryksstyrede lås
Først skal du downloade og installere .apk-filen på din telefon for at kontrollere låsen. Du skal også uploade den komplette kode på din Arduino Nano, men sørg for at fjerne TX- og RX-stifterne fra nano, før du uploader koden. Når overførslen er afsluttet, skal du installere låsen og derefter tænde Bluetooth på din mobiltelefon og parre med den Bluetooth-enhed, du bruger, og åbne appen. Tryk nu på Bluetooth-ikonet i appen, og opret forbindelse til Bluetooth-enheden, og Bluetooth-ikonet i appen vil dreje til låsikonet. Nu skal du trykke på fingeraftryksikonet for at kontrollere fingeraftrykket ved hjælp af din telefons fingeraftryksscanner, og værdien sendes til Arduino Nano.
Dette projekt er kun en grundlæggende demonstration af de ting, du kan gøre med Bluetooth-modulet, der er tilsluttet din telefon. Du kan bygge en hel fungerende robot, tilstedeværelsesregister, app-kontrollerede hjemmeautomatiseringsenheder osv., Og listen fortsætter op til din fantasi. Du kan også interface skærme for at vise navnet på den person, der kommer ind i lokalet eller tilføje et kamera for at klikke på et billede af personen af sikkerhedsmæssige årsager. Prøv dette alene, lav nogle ændringer, og hvis du nogensinde sidder fast et eller andet sted, så lad os det vide i kommentarfeltet, så hjælper vi dig. Tak igen og have en dejlig dag.