Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Denne gangen presenterer jeg deg et ultralydbasert tilgangssystem, jeg tror det kan være interessant.
Den er basert på ultralydbølger, så det er et kontaktløst tilgangssystem som ikke trenger noen annen elektronisk enhet, men uansett hva som skal til og med hendene dine for å prøve å gi tilgang til det du vil.
Grunnleggende om systemet: en ordnet sekvens av målte avstander danner en nøkkel
jeg håper du liker
Trinn 1: Slik fungerer det
Systemet bruker en ultralydsensor til å måle avstander til et objekt plassert foran det.
La oss anta at vi konfigurerer systemet til å innrømme 6 spesifiserte avstander: 1/2 ", 1/5", … og vi definerer en sekvens på 5 målte avstander som tilgangsnøkkel, så vil settet med forskjellige kombinasjoner være 6x6x6x6x6 = 7776
Ved å leke med antall angitte avstander og lengden på tilgangsnøkkelen kan vi konfigurere et tilgangssystem med et stort antall kombinasjoner.
Systemet måler alltid avstander.
Hvis en gyldig avstand måles av sensoren i løpet av et bestemt tidsintervall, lagrer skissen den og lyser en hvit lysdiode i løpet av et kort tidsintervall.
Etter det sjekker skissen om alle avstandene som tidligere er lagret samsvarer i samme rekkefølge med den konfigurerte tilgangsnøkkelen.
I så fall vil skissen lyse opp den grønne lysdioden og åpne barrieren.
Trinn 2: Rekvisita
- En ultralydsensor HC-SR04
- Én ARDUINO NANO eller kompatibel mikrokontroller
- En mikro servomotor
- Én ARDUINO LCD
- En I2C ARDUINO LCD -adapter
- Ett protoboard
- Tre 5 mm lysdioder: hvit, rød og grønn
- Ledninger
- Kryssfiner
- Kartong
Trinn 3: Fritzing Diagram
Trinn 4: Bygg systemet
Trinnene jeg har fulgt for å bygge systemet er følgende:
- Åpne flere hull på kryssfiner for å installere ultralydssensoren, mikroservomotoren, ARDUINO LCD og de tre lysdiodene.
- Koble til alle komponentene og koble til mikrokontrolleren som du kan se på bildene.
Trinn 5: Koden
Flere punkter å ta hensyn til i skissen:
Den konstante strengvariabelen "accessequence" lagrer verdien av tilgangsnøkkelen
const String accessequence = "234";
- Avstandsverdien du kan se på ARDUINO LCD er ikke avstandsverdien målt på tommer eller centimeter, men verdien av en "avstandsgruppe". Jeg mener at hvis avstanden målt av sensoren går fra 0, 78 "til (0, 78" + trinn_avstand) er verdien "avstandsgruppe" 1 og så videre.
- Du kan endre det konstante heltallet "trinn_avstand", "min_avstand" og "maks_avstand" for å justere systempresisjonen.