Doorgaan naar artikel

+49 1626571232

info@openelab.io

🚀Gratis verzending vanaf 50€ in de EU / 80€ wereldwijd

Leren

M5Stack RFID-gebaseerd slim toegangscontrolesysteem

Nu we het tijdperk van intelligentie binnengaan, zijn op de cloud gebaseerde intelligente communicatieapparaten erg populair geworden in ons leven. In dit artikel wordt gebruik gemaakt van M5Stack's UiFlow ontwikkelingsinterface (Blocky) om het toegangscontrolesysteem te voltooien met op de cloud gebaseerde opnamefunctie, inclusief vier soorten authenticatievergrendelingen (ontgrendeling op afstand van mobiele telefoons, RFID-kaart, toetsaanslagwachtwoorden, vingerafdruk identificatie) en via het MQTT-protocol om de toegangscontrolerecords te verzenden via het MQTT-protocol.

 

Hardwareconfiguratie

 
Het toegangscontrolesysteem maakt gebruik van het modulaire pakket M5Stack Faces. Het FACES-pakket omvat een besturingskern (M5Stack Core) en een reeks invoerapparaten, waaronder een rekenmachine, QWERTY-toetsenbord en andere invoerapparaten. In dit geval gebruiken we de toetsenbordmodule van de rekenmachine voor toetsaanslagen. Het is belangrijk op te merken dat de Faces-module met zorg moet worden vervangen, waarbij u ervoor moet zorgen dat beide zijden van de module zo worden vastgehouden dat ze kunnen worden losgekoppeld om beschadiging van de pinnen te voorkomen. Het is belangrijk om voorzichtig te zijn bij het vervangen van de Faces-module om schade aan de pinnen te voorkomen.
 
De volgende stap is het instellen van drie unitmodules. Let op dat de M5Stack RFID-module de communicatie-interface I2C gebruikt en toegankelijk is vanaf de linkerkant van de Core Port-A. De M5Stack vingerafdrukherkenningsmodule gebruikt de communicatie-interface UART en toegankelijk is vanaf de Core Port. Let op dat de GPIO van de Core naar de achterkant van de Core kan worden geflipt, waar u een hint van de bijbehorende interface-PIN vindt. De GPIO-module aan de achterkant van de Core heeft ook een hint van de bijbehorende interface-PIN. De GPIO-interface aan de achterkant van de Core (GND, 5V, R2(16), T2(17)) en de M5Stack Relay Module worden aangestuurd door I/O en verbonden met Core port-B (GND, 5V, DA(26), AD(36)).

 

 

Zodra de bedradingsconfiguratie van de drie Unit-modules voltooid is, moet er een circuit worden gecreëerd om de relaismodule aan te sluiten (zoals afgebeeld) om het elektromagnetische slot te besturen. Deze keer moet de bedrijfsspanning van het magneetslot van DC 12V worden gebruikt. Houd er rekening mee dat de M5Stack-relaismodule een ingangsvermogen tot DC 30V 3A ondersteunt.

 

 

Zodra de hardware van het relaiscircuit is geconfigureerd, gebruikt het schrijfprogramma de officiële M5Stack-ontwikkelinterface, Uiflow. Gezien de trage update van de huidige UiFlow offline hostversie, wordt aanbevolen om, als de draadloze wifi-snelheid voldoende is, de Remote Write Blocky te gebruiken. De volgende stap zal zijn de introductie van de draadloze Wifi-methode voor het schrijven van programma's voor M5Stack. In het volgende gedeelte wordt het proces van het schrijven van programma's naar M5Stack Core via Wifi gepresenteerd.

 

UiFlow Instelling

 
Werk de firmware bij
Voordat u verbinding maakt, moet u de officiële brander (M5Burner) downloaden om de firmwareversie bij te werken naar de nieuwste versie. Nadat u de kabel hebt aangesloten, toont de brander het COM-poortnummer, selecteert u de nieuwste CORE UiFlow-firmwareversie en drukt u op Branden om het branden te voltooien.
 

 
Verbinding maken
Na het updaten van de firmware schakel je de Core naar 'Internet Mode', selecteer 'Wi-Fi via AP' en ga vervolgens naar de online pagina, je ziet het Aarde-symbool knipperen.
 

 
Om verbinding te maken met de wifi van de laptop, voert u de SSID-naam in het zoekveld in. Let op: de naam van elke core is niet hetzelfde. In dit voorbeeld is de naam M5-FB50. Zodra u verbinding hebt gemaakt, opent u de browser en voert u het volgende adres in het zoekveld in: [192.168.4.1] . Dit brengt u naar de pagina met online-instellingen. Voer de SSID en het wachtwoord in waarmee u verbinding wilt maken.
 
Zodra er een succesvolle verbinding tot stand is gebracht, geeft de browser het volgende beeld weer. Het WiFi- en online-pictogram, dat zich in de linkerbovenhoek van het Core-display bevindt, wordt groen weergegeven en de API-sleutel die wordt gebruikt voor de externe verbinding is onderaan zichtbaar. Met deze configuratie heeft Core toegang tot de SSID en het wachtwoord en kan vervolgens de netwerkmodus gebruiken om een ​​directe verbinding met internet tot stand te brengen. In het geval dat er meerdere AP's zijn gebruikt, is de optie om uit een lijst te selecteren toegankelijk via Instellingen > Server. Als u meerdere toegangspunten heeft gebruikt, kunt u deze ook openen via Instellingen > Server.
Open vervolgens de browser van uw computer, maak opnieuw verbinding met internet, ga naar de Uiflow-webversie, vul de API KEY in, selecteer het type Core en druk op 'OK'.
 
 
De statusbalk onderaan toont de API-SLEUTEL van het momenteel verbonden apparaat en geeft 'Verbonden' weer, wat aangeeft dat de externe verbinding succesvol is en dat u kunt beginnen met het schrijven van programma's met Blocky-blokken.

 
Stap 1 Het instellen van Blocky

 
Voordat u met het Blocky-schrijfproces begint, is het noodzakelijk om de specifieke Unit-modulebibliotheek te importeren die bij deze gelegenheid moet worden gebruikt. Om dit te doen, klikt u op het plusteken linksonder in het scherm. Selecteer daarna Poort B voor de Relay-module, Poort C voor de Vingerafdrukmodule en Poort A voor de RFID-module. Het is belangrijk om de geselecteerde module te bevestigen door op de OK-knop rechtsonder in het scherm te drukken.
 
 
Na het importeren van de module wordt deze weergegeven in het linkerdisplay. Open het menu Eenheid om te bevestigen of de module correct is geïmporteerd.
 
 
Stap 2 Schrijf subroutines voor algemeen gebruik in toegangscontrolesystemen
 
Om te voorkomen dat het programma te lang wordt, schrijft u na het importeren van de module eerst een aantal subroutines die herhaaldelijk in het toegangscontrolesysteem worden gebruikt.

1.Systeem standaardstatus (STAY) :

Na het uitvoeren van een programma keert het terug naar deze standaardprogrammastatus. De weergavefunctie van de toetsaanslag en de AC-wisfunctie zijn hier gebouwd, zoek de initiële waarde van de AC-knop (beginwaarde) om de definitie te geven bij het indrukken van de knop. Uiflow-gebruik naar de functiekolom: build-functie, beoordelingslogica-functie, toetsenbordinvoerfunctie , UI-component, relaisreset.

 

2.UNLOCK: De actie wanneer de identiteit correct wordt bevestigd door RFID, vingerafdrukherkenning, wachtwoordinvoer, afstandsbediening, en om de veiligheid van de werking van het relais te garanderen, wordt het relais automatisch uitgeschakeld 3 seconden nadat het is ingeschakeld.Uiflow gebruikt de volgende functiekolommen: bouwfunctie, zoemer, beoordelingslogicafunctie, UI-component, relais inschakelen en resetten.

 

 

3.LOCK: De actie wanneer de identiteit correct wordt bevestigd door RFID, vingerafdrukherkenning, wachtwoordinvoer, afstandsbediening, enz. Uiflow gebruikt de volgende functies: Build-functie, Buzzer, Judgment Logic-functie, UI-component.

 

 

Stap3 Netwerkverbinding en MQTT-functie instellen.
 
Het doel van dit experiment is om een ​​netwerk en verbinding op te zetten die de overdracht van gegevens van elke deuropening naar een tijdelijk cloudopslaggebied mogelijk maken via het MQTT-protocol. De installatie gebeurt via WiFi. MQTT is een berichtenprotocol gebaseerd op het 'publiceren/abonneren'-mechanisme, dat analoog is aan het videopost- en abonneermechanisme van sociale media of YouTube.
 
In MQTT is de afzender van berichten analoog aan een YouTube-kanaal of een Instagram-account. Zodra een filmpje is uitgebracht of een Instagram-post is gemaakt, wordt deze niet rechtstreeks naar abonnees verzonden. In plaats daarvan wordt het overgedragen aan een server of derde partij (broker), die de release- en abonnementskwesties coördineert en beheert. Aan elke inhoudsbron (bijvoorbeeld een film of een artikel) wordt een unieke onderwerpnaam toegewezen (bijvoorbeeld de titel van de film of het artikel), en de proxy is serversoftware. De entiteit die het onderwerp naar de server verzendt, is de uitgever, en de entiteit die het onderwerp van de server ontvangt, is de abonnee.
 
Stel eerst de WiFi-verbindingsfunctie van de Access Control Core in. Open hiervoor het menu Geavanceerd van Uiflow, selecteer 'Verbinden met Wi-Fi SSID' en voer het wachtwoord in Netwerk in. Vervolgens wordt u gevraagd de naam en het wachtwoord van het toegangspunt in te voeren op de locatie waar u het toegangscontrolesysteem wilt installeren. Selecteer 'Verbinden met Wi-Fi SSID' en voer de naam en het wachtwoord in van het toegangspunt (AP) dat kan worden verbonden met de locatie waar u het toegangscontrolesysteem wilt instellen.
 
Om te bevestigen of WiFi online is of niet, voegt u een beoordelingslogica-functie en de scherm-UI-scrollcomponent toe. Wanneer WiFi online is, wordt deze groen weergegeven en wanneer deze offline is, wordt deze rood weergegeven. Hiermee is de online-netwerkinstelling voltooid. Uiflow gebruikt de volgende functiekolommen: De volgende functies zijn opgenomen: Beoordelingslogica, WiFi-instelling en UI-component.
 

 
De MQTT Broker die door het toegangscontrolesysteem wordt gebruikt, is een gratis makelaar die door HiveMQ aan alle gebruikers wordt aangeboden. Open uw browser en ga naar Public Broker om de host- en TCP-poort van de makelaar te controleren.
 
Open vervolgens het menu Geavanceerd van UiFlow, gebruik de MQTT-host om de MQTT-functie in te stellen en in te schakelen, vul de TCP-poort en server van de makelaar in en stel een gebruikersnaam in voor de client. Nadat de instelling is voltooid, zal Core MQTT inschakelen service onder Wifi-verbinding.Uiflow gebruikt de volgende functies.

 

 

Als u een mobiele telefoon wilt instellen voor het ontvangen/verzenden van MQTT-berichten, zoekt u naar IoT MQTT Panel in GOOGLE PLAY of de Apple App Store en downloadt u deze om deze te openen. IOT MQTT Panel is een lichtgewicht en eenvoudig te gebruiken MQTT-tool met veel Ui-sjablonen die al zijn ingesteld, en de betaalde versie biedt realtime meldingen op de mobiele telefoon om meldingen te laten verschijnen wanneer er nieuwe berichten worden ontvangen. meldingen wanneer er nieuwe berichten worden ontvangen.

 

 
Na het openen van de App eerst volgens de eerder ingestelde CORE broker TCP Port en server (BrokerWeb) om in de Client ook een gebruikersnaam in te vullen, vergeet hier niet een functie Dashboard toe te voegen anders kan deze niet aangemaakt worden!

 

 
Na het maken van een goed Dashboard en vervolgens het bouwen van de UI-functiemodule (paneel Toevoegen), moeten we in totaal twee attributen van de functiemodule bouwen, één is het record van toegangscontrole geactiveerd door het Tekstlogboek, en één is de afstandsbediening van de Switch-schakelaar.
 

 
Stap 4 Toegangscontrole Logboek
 
Creëer een toegangscontrolerecordfunctie, wanneer het toegangscontrolesysteem wordt geactiveerd om de identiteit van de functie te bevestigen om de bevestigingsresultaten naar dit record te sturen, is het werkprincipe het creëren van een onderwerp (ik stel dit hier in als M5Stack_Log), om de toegang te bieden besturingssysteem Core om een ​​bericht naar dit onderwerp te sturen. functiemodule-instellingen: pas het aantal weergegeven berichten aan en de lettergrootte, de tijdstempel, de real-time meldingsfunctie van de mobiele telefoon (melding inschakelen) moet worden betaald om te gebruiken. Melding inschakelen) moet worden betaald om te gebruiken. Nadat de instelling is voltooid, drukt u op OPSLAAN om het maken te voltooien.
 

 
Stap 5. Toegangscontrolefunctie - Ontgrendeling op afstand
 
Schakelen op afstand: het werkingsprincipe is om een ​​onderwerp op de mobiele telefoon in te stellen, afhankelijk van de UI-schakelstatus (AAN/UIT) op de mobiele telefoon om een ​​bericht te sturen (ik beschouw het als ontgrendelen/vergrendelen), de kern op de deur lock leest het bericht door zich te abonneren op het onderwerp op de mobiele telefoon en kan vervolgens de deurslotschakelaar bedienen.
Onder de kolom Hook-functie kunt u de onderkant van de tijdstempel Toon ontvangen en Toon verzonden tijdstempel plaatsen om het tijdstip vast te leggen. De real-time meldingsfunctie van de mobiele telefoon (Melding inschakelen) moet worden betaald om te gebruiken, ingesteld na voltooiing van de SAVE die de creatie moet voltooien.

 

 
Zorg ervoor dat Uiflow is ingeschakeld, dat de afstandsbedieningsfunctie is geconfigureerd en dat het onderwerp van de toegangscontrole CORE-abonnementsmakelaar (Lock_Action) is ingesteld. Wanneer de mobiele telefoon wordt geactiveerd, moet de ontgrendelingssubroutine (UNLOCK) worden uitgevoerd om het deurslot te openen en wordt het toegangscontrolerecord verzonden naar het onderwerp van de mobiele telefoon (M5Stack_Log) met de naam Remote_OPEN. Houd er rekening mee dat de naam correct moet worden ingevoerd, aangezien een onjuist geval ertoe zal leiden dat het bericht niet wordt ontvangen en verzonden. De berichtnaam is 'Remote_OPEN'. Houd er rekening mee dat de naam correct moet worden ingevoerd, omdat een onjuist onderwerp ertoe zal leiden dat het bericht niet wordt ontvangen of verzonden. Uiflow gebruikt de volgende functiekolommen: De MQTT-functie, de beoordelingslogica-functie, de subroutine voor het importeren van tekst en andere functies zijn beschikbaar voor gebruik.

 

 
Afstandsbediening resulteert in een succesvolle aansturing van de magneetklep en wordt weergegeven op het Kernscherm. De logmodule op de mobiele telefoon geeft gegevens weer met een tijdstempel.

 

 
Stap 6 Toegangscontrolefunctie--RFID
 
Om de RFID-toegangscontrolefunctie in te stellen, voegt u eerst een hoofdlus toe onder de huidige MQTT-instellingsfunctie, als het hoofdprogramma om de beoordeling te activeren, en voegt u de functie toe om de functie te activeren wanneer er een RFID-kaart in de buurt van de functie is.Uiflow gebruikt de functiekolommen: creatie van MAIN-functies, logische beoordelingsfunctie, RFID-functiebibliotheek.
 

 
Creëer een RFID-beoordelingsfunctie (RFID_decision), RFID-subroutine (RFID_OK) en RFID-subroutine (RFID_Denied). De beoordelingsfunctie (RFID_decision) wordt gebruikt als de uitvoeringssubroutine (RFID_OK) plus de systeemsubroutine (UNLOCK) wanneer RFID correct is, of de uitvoeringssubroutine (RFID_Denied) plus de systeemsubroutine (LOCK) wanneer RFID onjuist is.
 
Vergeet niet om de MQTT-pushfunctie toe te voegen aan de twee RFID-subroutines na voltooiing, ongeacht of het bericht correct of fout is, het bericht naar het onderwerp (M5Stack_Log) wordt gepusht. RFID UID kan worden verkregen via de Uiflow RFID-functie. Uiflow-gebruik in de functiekolom: RFID bouwen subroutinefunctie, beoordelingslogicafunctie, RFID-functiebibliotheek, UI-componenten, MQTT-functies, tekst, subroutinefuncties importeren.
 

 
Succesvolle RFID-herkenning van de magneetklep zal één keer in actie komen en de juiste kaart op de Core weergeven, en de kaart die een fout detecteert, zal de fout weergeven.
De logmodule op de mobiele telefoon geeft de juiste en onjuiste (met tijdstempels) informatie weer.
 

 
Stap6 Toegangscontrolefunctie - Wachtwoordinvoer via toetsaanslag
 
Om de toetsaanslagwachtwoordfunctie in te stellen, voegt u een toetsaanslagfunctie-triggerfunctie toe onder de hoofdprogrammalus (Hoofdprogramma), die wordt geactiveerd wanneer het aantal ingevoerde cijfers op het toetsenbord groter is dan of gelijk is aan 7. Uiflow gebruikt de volgende functiekolommen: Functie , Beoordelingslogicafunctie, Tekst, Toetsenbordmodulefunctie.
 
De volgende functies en subroutines moeten worden gemaakt: Wachtwoord_beslissing, RFID_OK en RFID_Geweigerd. De subroutine Wachtwoord_beslissing wordt gebruikt als een uitvoerbare subroutine (Type_OK) plus een systeemsubroutine (UNLOCK) wanneer het wachtwoord correct is ingevoerd, of als een uitvoerbare subroutine (Type_Denied) plus een systeemsubroutine (LOCK) wanneer het wachtwoord onjuist is ingevoerd.
 
Zodra u de subroutines voor het invoeren van het wachtwoord heeft voltooid, voegt u de MQTT-pushfunctie aan beide toe, ongeacht of het wachtwoord correct of onjuist is ingevoerd. Het bericht wordt vervolgens naar het onderwerp (M5Stack_Log) gepusht. Uiflow gebruikt de volgende functiekolommen: De volgende functies moeten worden aangemaakt: Wachtwoordinvoersubroutine, Beoordelingslogica, Toetsenbordmodule, UI-component, MQTT, Tekst en Importsubroutine.

 

De magneetklep werkt één keer en wordt correct weergegeven op de Core als het wachtwoord correct is ingevoerd, en wordt onjuist weergegeven als het wachtwoord onjuist is ingevoerd.
De logmodule op de mobiele telefoon geeft de gegevens van juiste en onjuiste wachtwoorden weer (met tijdstempels).

 

 

Conclusie

 
Dit real-life toegangscontrolesysteem maakt gebruik van een reeks technologieën, waaronder RFID , vingerafdrukherkenning, toetsaanslagen en andere modules, om snel robuuste hardwareoplossingen te ontwikkelen. Het maakt gebruik van MQTT-communicatieprotocollen om op afstand deursloten te ontgrendelen en toegangscontrolerecords te genereren. Vanwege de geavanceerde functionaliteit van Blocky zijn functies zoals AI-gezichtsherkenning momenteel niet beschikbaar op UiFlow. We zullen echter in de nabije toekomst geavanceerde YOLO-detectiefuncties introduceren na het streamen van afbeeldingen.

 

Vorig bericht
Volgende bericht

laat een reactie achter

Alle blogreacties worden vóór publicatie gecontroleerd

Iemand heeft onlangs een gekocht

Bedankt voor het abonneren!

Deze e-mail is geregistreerd!

Shop de look

Kies opties

Bewerk optie
Terug op voorraad melding
this is just a warning
Log in
Winkelmand
0 artikelen
RuffRuff App RuffRuff App by Tsun