Raspberry Pi on ARM cortex -pohjainen suosittu kehityskortti, joka on suunniteltu elektroniikkainsinööreille ja harrastajille. Käsittelynopeuden ja muistin avulla Raspberry Pi: tä voidaan käyttää erilaisten toimintojen suorittamiseen kerrallaan, kuten tavallinen tietokone, ja siksi sitä kutsutaan kämmenessäsi Mini Computeriksi. Olemme luoneet sarjan Raspberry Pi -oppaita aloittaaksesi Raspberry Pi: n alusta ja luomalla sitten korkean tason IoT-projekteja Raspberry Pi: n avulla.
Tällä kertaa olemme täällä seuraavan mielenkiintoisen projektimme kanssa, joka on Visitors Monitoring System with Image capture -toiminto. Tässä yhdistämme Pi-kameran Raspberry Pi -laitteeseen kaapataksemme kuvan jokaisesta kävijästä, joka on tullut portin tai oven läpi. Tässä projektissa, kun joku saapuu portille, hänen on painettava painiketta portin avaamiseksi, ja heti kun hän painaa painiketta, hänen kuvansa kaapataan ja tallennetaan järjestelmään päivämäärän kanssa. ja ilmoittautumisaika. Tämä voi olla erittäin hyödyllistä turvallisuutta ja valvontaa varten.
Tämä järjestelmä on erittäin hyödyllinen toimistoissa tai tehtaissa, joissa kävijöille pidetään vierailijarekisteriä ja työntekijöiden läsnäololistaa. Tämä seurantajärjestelmä digitalisoi ja automatisoi kaikki kävijämerkinnät ja läsnäolot, eikä niitä tarvitse pitää yllä manuaalisesti. Tätä järjestelmää voi käyttää joko henkilö itse tai voi olla käyttäjä painikkeen painamiseksi vierailijalle. Tämä on hyvä projekti Pi-kameran käytön aloittamiseen ja sen liittämiseen Raspberry Pi: n kanssa.
Vaaditut komponentit:
- Vadelma Pi
- Pi-kamera
- 16x2 LCD
- DC-moottori
- IC L293D
- Summeri
- LED
- Leipälauta
- Vastus (1k, 10k)
- Kondensaattori (100nF)
- Paina nappia
- Johtojen liittäminen
- 10k potti
- Virtalähde
Työselitys:
Tämän Raspberry Pi -valvontajärjestelmän käyttö on helppoa. Tässä Pi-kameraa käytetään kävijöiden kuvien kaappaamiseen, kun painike painetaan tai laukaistaan. Tasavirtamoottori käytetään portti. Aina kun joku haluaa päästä paikkaan, hänen on painettava painiketta. Painikkeen painamisen jälkeen Vadelma Pi lähettää komennon Pi-kameralle napsauttamaan kuvaa ja tallentamaan sen. Sen jälkeen portti avataan hetkeksi ja suljetaan sitten uudelleen. Äänimerkkiä käytetään äänen tuottamiseen, kun painiketta painetaan, ja LEDiä käytetään osoittamaan, että Vadelma Pi on valmis hyväksymään painonappipainikkeen, mikä tarkoittaa, että kun LED palaa, järjestelmä on käyttövalmis.
Täällä kävijöiden kuvat tallennetaan Vadelma Pi: hen nimellä, joka itse sisältää saapumisajan ja -päivän. Tarkoittaa, että päivämäärää ja aikaa ei tarvitse tallentaa erikseen muualle, koska olemme määrittäneet kellonajan ja päivämäärän otetun kuvan nimeksi, katso alla oleva kuva. Olemme ottaneet kuvan laatikosta vierailijana, tarkista sen täydellinen esitys videossa lopussa.
Piirin selitys:
Tämän Raspberry Pi -vierailujärjestelmän piiri on hyvin yksinkertainen. Tässä nestekidenäyttöä (LCD) käytetään vierailijoiden saapumisajan / päivämäärän ja joidenkin muiden viestien näyttämiseen. LCD on kytketty Raspberry Pi: hen 4-bittisessä tilassa. LCD-nastat, nimittäin RS, EN, D4, D5, D6 ja D7, on kytketty Raspberry Pi GPIO -nappiin numeroihin 18, 23, 24, 16, 20 ja 21. Pi-kameramoduuli on kytketty Raspberry Pi: n kamerapaikkaan. Raspberry Pi: n GPIO-nastaan 26 on kytketty summeri osoitusta varten. LED kytketään GPIO-nastaan 5 1k-vastuksen kautta ja painike on kytketty GPIO-nastaan 19 maan suhteen kameran laukaisemiseksi ja portin avaamiseksi. DC-moottori (porttina)on kytketty Raspberry Pi GPIO -nastoihin 17 ja 27 moottorin ohjainpiirin (L293D) kautta. Muut liitännät on esitetty piirikaaviossa.
Liitä Pi-kamera liittämällä Pi-kameran nauhakaapeli kameran aukkoon, vedä hieman RPi-kortin liittimen kielekkeitä ja työnnä nauhakaapeli aukkoon ja paina sitten kielekkeet varovasti alaspäin kiinnittääksesi nauhakaapelin.
Vadelma Pi -määrityksen ja ohjelmoinnin selitys:
Käytämme tässä Python-kieltä ohjelmassa. Ennen koodaamista käyttäjän on määritettävä Raspberry Pi. Alla on kaksi opasohjetta Raspberry Pi: n käytön aloittamiseen ja Raspbian Jessie -käyttöjärjestelmän asentamiseen ja määrittämiseen Pi: ssä:
- Raspberry Pi: n käytön aloittaminen - Johdanto
- Raspberry Pi: n käytön aloittaminen - kokoonpano
Kun Raspbian OS on asennettu onnistuneesti Raspberry Pi: hen, meidän on asennettava Pi-kamerakirjastotiedostot tämän projektin suorittamiseksi Raspberry pi: ssä. Tätä varten meidän on noudatettava annettuja komentoja:
$ sudo apt-get install python-picamera $ sudo apt-get install python3-picamera
Sen jälkeen käyttäjän on otettava Raspberry Pi -kamera käyttöön Raspberry Pi -ohjelmiston määritystyökalulla (raspi-config):
$ sudo raspi-config
Valitse sitten Ota kamera käyttöön ja Ota se käyttöön.
Sitten käyttäjä tarvitsee käynnistää uudelleen Raspberry Pi, antamalla sudo reboot , jotta uusi asetus voi ottaa. Pi-kamerasi on nyt käyttövalmis.
$ sudo käynnistetään uudelleen
Tämän projektin Python-ohjelmalla on erittäin tärkeä rooli kaikkien toimintojen suorittamisessa. Ensinnäkin sisällytämme vaaditut kirjastot, alustamme muuttujat ja määritämme nastat LCD: lle, LEDille, moottorille ja muille komponenteille.
Tuo RPi.GPIO gpio-sovelluksena Tuo pikakameran tuontiaika m11 = 17 m12 = 27 led = 5 buz = 26 -painike = 19 RS = 18……………
Funktio def capture_image () luodaan kaappaamaan kävijän kuva ajan ja päivämäärän mukaan.
def capture_image (): lcdcmd (0x01) lcdprint ("Odota hetki.."); data = time.strftime ("% d_% b_% Y \% H:% M:% S") camera.start_preview () time.sleep (5) tulostustietokamera.capture ('/ home / pi / Desktop / Visitors /%s.jpg'%data) camera.stop_preview () lcdcmd (0x01) lcdprint ("Kuva otettu") lcdcmd (0xc0) lcdprint ("Onnistuneesti") time.sleep (2)
Funktio def gate () on kirjoitettu DC-moottorin ajamiseksi, jota täällä käytetään porttina.
def-portti (): lcdcmd (0x01) lcdprint ("Tervetuloa") gpio.output (m11, 1) gpio.output (m12, 0) time.sleep (1.5) gpio.output (m11, 0) gpio.output (m12, 0) time.sleep (3) gpio.output (m11, 0) gpio.output (m12, 1) time.sleep (1.5) gpio.output (m11, 0) gpio.output (m12, 0) lcdcmd (0x01)); lcdprint ("Kiitos") time.sleep (2)
Jotkut toiminnot on määritetty nestekidenäytölle, kuten def start () -toimintoa käytetään nestekidenäytön alustamiseen, def lcdcmd (ch) -toimintoa käytetään komentojen lähettämiseen LCD- näyttöön , def lcdwrite (ch) -toimintoa käytetään tietojen lähettämiseen LCD- näyttöön ja def lcdprint (Str) -toimintoa käytetään lähettämään datasarja LCD-näyttöön. Voit tarkistaa kaikki nämä toiminnot jälkikäteen annetusta koodista.
Sitten olemme alustettu LCD ja Pi Kamera, ja jatkuvasti lukea Painike avulla samalla silmukka. Aina kun painat painiketta, portin avaamiseksi sisäänpääsyä varten kävijän kuva kaapataan ja tallennetaan Vadelma-piikiin päivämäärän ja kellonajan kanssa, ja portti avautuu. Tarkista koko koodi ja esittelyvideo alla.
kun taas 1: d = aika.väliaika ("% d% b% Y") t = aika.väliaika ("% H:% M:% S") lcdcmd (0x80) lcdprint ("aika:% s"% t) lcdcmd (0xc0) lcdprint ("Päivämäärä:% s"% d) gpio.output (led, 1) jos gpio.input (painike) == 0: gpio.output (buz, 1) gpio.output (led, 0) time.sleep (0.5) gpio.output (buz, 0) capture_image () gate () time.sleep (0.5)
Tällä kameranvalvontajärjestelmällä on paljon mahdollisuuksia päivittää, kuten Computer Visioniin tai OpenCV: hen voidaan rakentaa ohjelmisto vastaamaan kävijän kaapattu kuva jo tallennettuihin kuviin ja valtuuttanut vierailijan vain, jos vastaavuus on löydetty, tämä vain avaa portti valtuutetuille ihmisille.