Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-13 06:57
Tällä kertaa esittelen sinulle ultraäänipohjaisen pääsyjärjestelmän, joka voisi mielestäni olla mielenkiintoinen.
Se perustuu ultraääni -aaltoihin, joten se on kontaktiton pääsyjärjestelmä, joka ei tarvitse muita elektronisia laitteita, vaan mitä tahansa kohdetta, vaikka kädet, yrittäisi antaa pääsyn mihin tahansa.
Järjestelmän perusteet: järjestetty mitattujen etäisyyksien sarja muodostaa avaimen
Toivon että pidät
Vaihe 1: Näin se toimii
Järjestelmä käyttää ultraäänianturia etäisyyksien mittaamiseen sen eteen sijoitettuun kohteeseen.
Oletetaan, että määritämme järjestelmän sallimaan kuusi määritettyä etäisyyttä: 1/2 ", 1/5",… ja määritämme 5 mitatun etäisyyden sekvenssin pääsyavaimeksi, jolloin eri yhdistelmien joukko olisi 6x6x6x6x6 = 7776
Leikkimällä määritettyjen etäisyyksien lukumäärällä ja käyttöavaimen pituudella voimme määrittää pääsyjärjestelmän, jossa on valtava määrä yhdistelmiä.
Järjestelmä mittaa aina etäisyydet.
Jos anturi mittaa kelvolliset etäisyydet määrätyn ajanjakson aikana, luonnos tallentaa sen ja sytyttää valkoisen ledin lyhyen aikavälin aikana.
Tämän jälkeen luonnos tarkistaa, vastaavatko kaikki aiemmin tallennetut etäisyydet samassa järjestyksessä määritetyn käyttöavaimen kanssa.
Jos näin on, luonnos palaa vihreänä ja avaa esteen.
Vaihe 2: Tarvikkeet
- Yksi HC-SR04-ultraäänianturi
- Yksi ARDUINO NANO tai yhteensopiva mikrokärry
- Yksi mikropalvelu
- Yksi ARDUINO LCD
- Yksi I2C ARDUINO LCD -sovitin
- Yksi protoboard
- Kolme 5 mm lediä: valkoinen, punainen ja vihreä
- Johdot
- Vaneri
- Pahvi
Vaihe 3: Fritzing -kaavio
Vaihe 4: Järjestelmän rakentaminen
Järjestelmän rakentamisessa olen noudattanut seuraavia vaiheita:
- Avaa vaneriin useita reikiä asentaaksesi ultraäänianturin, mikropalvelun, ARDUINO LCD -näytön ja kolme lediä.
- Kytke kaikki komponentit ja liitä mikro -ohjaimeen, kuten kuvista näkyy.
Vaihe 5: Koodi
Luonnoksessa on otettava huomioon useita seikkoja:
Jatkuva merkkijonomuuttuja "accessequence" tallentaa pääsyavaimen arvon
const String accessequence = "234";
- ARDUINO -nestekidenäytössä näkyvä etäisyysarvo ei ole tuumina tai senttimetreinä mitattu etäisyysarvo, vaan "etäisyysryhmän" arvo. Tarkoitan, jos anturin mittaama etäisyys on 0, 78 " - (0, 78" + askel_etäisyys), "etäisyysryhmän" arvo on 1 ja niin edelleen.
- Voit muuttaa järjestelmän tarkkuutta muuttamalla vakio kokonaislukua "step_distance", "min_distance" ja "max_distance".