Áramkörök

Hogyan építsünk egy embert számláló Raspberry Pi és Ubidots: 6 lépésben

Demjén Ferenc - Hogyan tudnék élni nélküled (HQ)

Demjén Ferenc - Hogyan tudnék élni nélküled (HQ)

Tartalomjegyzék:

Anonim

Ebben az egyszerű projektben egy mozgásérzékelőt fogunk használni, hogy észleljük, hogy egy tárgy halad-e Raspberry Pi előtt. Ezután számítunk, hogy hányszor fordul elő, és küldje el ezt az értéket Ubidot-nak.

Az emberek számlálói általában drága eszközök, amelyeket a kiskereskedelmi ágazatban használnak a vásárlók viselkedésének megértéséhez. A Raspberry Pi és Ubidots-nak köszönhetően néhány órával és néhány dollárral felépíthetünk egy funkcionális ember számlálót!

Miután elküldtük az embereket az Ubidot-okra számoló adatoknak, szép grafikonokat hozhatunk létre az elemzéshez, valamint az SMS / e-mail figyelmeztetéseket.

kellékek:

1. lépés: A megfelelő anyagok megszerzése

A projekt befejezéséhez szüksége lesz:

  1. A Raspberry Pi modell B
  2. PIR érzékelő Parallaxis
  3. A Raspberry Pi kompatibilis USB WiFi Dongle
  4. USB-akkumulátor a Raspberry Pi tápellátásához (ez opcionális, ha a Pi-t teljesen vezeték nélkül kívánja elhagyni)
  5. Három női-női áthidaló vezeték

2. lépés: A dolgok bekötése

A PIR mozgásérzékelő nagyon egyszerű használni, mert csak három csapból áll:

  • V +
  • GND
  • Egy jelzőtű, amely "1" kimenetet eredményez, ha mozgás van, és "0", ha nincs.

Nincs szükség semmilyen forrasztásra, sem összetett I2C vagy soros funkciók írására a jel észleléséhez; csak csatlakoztassa a kábeleket a Raspberry Pi GPIO csapjaihoz, és működni fog!

3. lépés: Ház

Mivel a PIR-érzékelő nagyon érzékeny a mozgásra, a hátsó áthidaló kapcsolót használtam a legalacsonyabb állítható érzékenység beállítására. Szintén egy régi napszemüveget vettem, és egy lyukat tettem, majd elhelyeztem az RPi-t és a PIR-érzékelőt. Ily módon a mozgásérzékelő egy ponton nagy hangsúlyt fektetett ahelyett, hogy annyira irányított lenne.

4. lépés: Az RPi kódolása

Ezen a ponton azt feltételezzük, hogy a Raspberry Pi alapbeállításait elvégezte, és a Linux parancssorát nézzük. Ha nem, javasoljuk, hogy először ezt az útmutatót használjuk. Ezt a bejegyzést a Wicd használatával is ellenőrizheti a Raspberry Pi WiFi-jának beállításához.

Kezdjük azzal, hogy megbizonyosodunk arról, hogy minden szükséges könyvtárunk van:

$ sudo apt-get frissítés
$ sudo apt-get upgrade $ sudo apt-get install python-setuptools $ sudo easy_install pip $ pip telepíteni ubidot

Hozzon létre egy „peoplecounter.py” nevű új fájlt:

$ sudo nano peoplecounter.py

És írja be az alábbi kódot. Győződjön meg róla, hogy az API kulcs és a változó azonosító értékeit a személyes Ubidots fiókjában szereplő értékekkel helyettesíti. (Megjegyzés: a kód nem túl elegáns, de hé nem vagyok Python fejlesztő, csak egy hardver srác :)

A parancsfájl egy hurokból áll, amely ellenőrzi a 7-es csap (mozgásérzékelő) állapotát. Ha egy "1" -et ír le, ami azt jelenti, hogy mozgás történt, akkor a "peoplecount" változót növeli, és 1,5 másodpercig vár, hogy a mozgásérzékelő normális legyen. Ez 10-szer történik, ügyelve arra, hogy az egyes ciklusok között legalább 1 másodperc legyen, majd elküldi a "mozgások" teljes összegét Ubidotoknak. Ha kalibrálni kell a People Counter-t, akkor az "time.sleep" sorokkal kell játszani más értékekkel.

ubidotokból importálhat ApiClient-t

importálja az RPi.GPIO-t GPIO-ként

importidő

GPIO.setmode (GPIO.BCM)

GPIO.setup (7, GPIO.IN)

próbáld ki:

api = ApiClient ("a21ebaf64e14d195c0044fcc3b9f6dab9d653af3")

people = api.get_variable ("5238cec3f91b282c7357a140")

kivéve: print "Nem sikerült csatlakozni az API-hoz, ellenőrizze az internetkapcsolatot"

számláló = 0

peoplev = 0

míg a (1):

jelenlét = GPIO.input (7)

ha (jelenlét):

peoplecount + = 1

jelenlét = 0

time.sleep (1.5)

time.sleep (1)

számláló + = 1

ha (counter == 10):

print peoplecount

people.save_value ({ 'érték': peoplecount})

számláló = 0

peoplev = 0

5. lépés: Adatok megjelenítése

Végül, látogasson el a Ubidots műszerfalra, és adjon hozzá egy típusú widgetet.NyilatkozatEz mutatja az Ön által megadott időkeretben észlelt személyek számát

6. lépés: Csomagolás

Ez a projekt arra utal, hogy mennyi ember halad át egy adott ponton. A mozgásérzékelő korlátait figyelembe véve nem biztosítja az emberek pontos számát, de néhány alkalmazásban ez elég.

Az összegyűjtött adatok könnyen elküldhetők az Ubidots Cloud-ba, ahol értelmezhető figyelmeztető jelzések, élő műszerfalak létrehozása, vagy az adatok megosztása közösségi médiában, beágyazási kódként vagy csak nyilvános linkként. Ezeket az adatokat egy másik alkalmazásból is leolvashatja az Ubidots API használatával.