Obsah:
- Zásoby
- Krok 1: Zostava hardvéru
- Krok 2: Počiatočný stav
- Krok 3: Skript Python
- Krok 4: Hlavný panel trik alebo ošetrite
- Krok 5: Tekvica Pi
Video: Tracker-or-Treat Track-Pi: 5 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
Od elizabethna Nasledovať viac od autora:
Hľadáte rýchly halloweensky projekt, ktorý je užitočný vo viacerých smeroch? Chcete dobre využiť ten Pi Zero WH? Máte chuť pomocou údajov určiť, koľko cukríkov budete na budúci rok potrebovať?
Pripravte sa na zostavenie sledovača Trick-or-Treat Pumpkin Pi! Táto pí-in-a-tekvica, ktorá slúži ako dekorácia a nástroj na sledovanie ľudí, mení farbu a prúdi, keď je detekovaný pohyb. Začíname úplne od nuly, tento projekt by vám nemal zabrať viac ako popoludnie - práve včas na Halloween!
Zásoby
- Pi Zero WH s kartou SD
- PIR snímač pohybu
- RGB LED
- Rezistory 220 ohmov
- (3) Šnúrky na viazanie (F/F, M/F, M/M)
- Prenosná batéria
- Falošná tekvica
Krok 1: Zostava hardvéru
Akonáhle budete mať Pi v prevádzke, musíme pripojiť snímač pohybu a LED diódy. Uistite sa, že v tomto mieste nie je Pi pripojený k napájaniu.
Náš snímač pohybu vyžaduje, aby sme ho pripojili k napájaniu 3,3 V, uzemneniu a dátovému kolíku. Pripojil som kolík senzora 3,3 V na kolík 1 Pi, kolík senzora uzemnenia na pin 6 Pi a kolík dátového senzora na kolík 16 Pi. Prvý obrázok zobrazuje úplné pripojenie Pi a snímača pohybu.
LED diódy sú o niečo zložitejšie ako pohybový senzor, pretože na správnu činnosť bez ich poškodenia alebo poškodenia Pi vyžadujú odpor. Použil som tri odpory 220 ohmov, ale rezistory 220 a 330 ohmov sa zvyčajne používajú s diódami LED.
Na prepojenie všetkého môžete buď:
- Pripájajte nohy LED k odporom a potom zapojte vodiče do Pi
- Všetko prepojte pomocou breadboardu a viazacích šnúr
- Na prepojenie všetkého použite spojovacie šnúry a elektrickú pásku (ako ja).
Pripojíme naše LED diódy k pinom 11, 13 a 15. To je však trochu zložitejšie ako snímač pohybu, pretože nohy na LED dióde zodpovedajú konkrétnej farbe! Dlhá noha je GND; a prinajmenšom na mojej LED sa nohy zmenili na červenú, GND, modrú, zelenú. Pripojil som modrý na Pi pin 11, zelený na Pi pin 13 a červený na Pi pin 15. Druhý obrázok ukazuje konečné zapojenie obvodov.
Krok 2: Počiatočný stav
Iste vidíme, že pomocou LED diódy je detekovaný pohyb, ale ako budeme sledovať, koľko trikov alebo treaterov sa zastavilo, aby nám ukradli cukríky?
Streamujeme na informačný panel vždy, keď sa pohyb začne a prestane byť detekovaný. Pretože je táto palubná doska prístupná odkiaľkoľvek s pripojením na internet, môžeme na diaľku monitorovať, či sa niekto blíži k predným dverám/miske cukríkov alebo nie.
Krok 1: Zaregistrujte sa na počiatočný stav účtu Prejdite na stránku https://iot.app.initialstate.com a vytvorte si nový účet.
Krok 2: Nainštalujte ISStreamer
Nainštalujte modul Počiatočný stav Python na svoj Raspberry Pi. Na príkazovom riadku (nezabudnite najskôr SSH do svojho Pi) spustite nasledujúci príkaz:
$ cd/domov/pi/
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Krok 3: Vyrobte si nejaký automobil
Po kroku 2 uvidíte na obrazovke niečo podobné nasledujúcemu výstupu:
pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Heslo: Začiatok ISStreamer Python Jednoduchá inštalácia! Inštalácia môže trvať niekoľko minút, dajte si kávu:) Ale nezabudnite sa vrátiť, otázky budem mať neskôr! Nájdená jednoduchá inštalácia: setuptools 1.1.6 Nájdená pip: pip 1.5.6 z /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip major version: 1 pip minor version: 5 ISStreamer nájdený, aktualizuje sa … Požiadavka je už aktuálna: ISStreamer v /Library/Python/2.7/site-packages Čistenie … Chcete automaticky získať ukážkový skript? [y/N] Kam chcete uložiť príklad? [predvolené:./is_example.py] Vyberte aplikáciu, ktorú používate v počiatočnom stave: 1. app.initialstate.com 2. [NOVINKA!] iot.app.initialstate.com Zadajte voľbu 1 alebo 2: Zadajte iot.app Používateľské meno.initialstate.com: Zadajte heslo na adrese iot.app.initialstate.com:
Po zobrazení výzvy na automatické získanie ukážkového skriptu zadajte y. Tým sa vytvorí testovací skript, ktorý môžeme spustiť, aby sme zaistili, že budeme môcť streamovať údaje do počiatočného stavu. Nasledujúca výzva sa spýta, kam chcete uložiť ukážkový súbor. Môžete buď zadať vlastnú miestnu cestu, alebo stlačením klávesu Enter prijať predvolené umiestnenie. Nakoniec sa vás opýta, akú aplikáciu Počiatočného stavu používate. Ak ste si nedávno vytvorili účet, zvoľte možnosť 2, zadajte svoje užívateľské meno a heslo. Potom bude inštalácia dokončená.
Krok 4: Prístupové kľúče
Pozrime sa na ukážkový skript, ktorý bol vytvorený. $ nano is_example.py Na riadku 15 uvidíte riadok, ktorý začína na streamer = Streamer (bucket_ …. Tieto riadky vytvoria nový zväzok údajov s názvom „Príklad Python streamu“a budú priradené k vášmu účtu. K tomuto priradeniu dochádza z dôvodu access_key =”…” parameter na tom istom riadku. Táto dlhá séria písmen a číslic je vašim prístupovým kľúčom k počiatočnému stavu. Ak vo webovom prehliadači prejdete na svoj počiatočný stav, kliknite vpravo hore na svoje používateľské meno a potom choďte na „moje nastavenia“nájdete ten istý prístupový kľúč v spodnej časti stránky v časti „Klávesy na streamovanie“.
Zakaždým, keď vytvoríte stream údajov, tento prístupový kľúč ho presmeruje do vášho účtu (kľúč teda nikomu nezdieľajte).
Krok 5: Spustite príklad
Spustite testovací skript, aby ste sa uistili, že môžeme vytvoriť tok údajov pre váš účet Počiatočný stav. Spustite nasledujúce:
$ python is_example.py
Krok 6: Zisk
Vo webovom prehliadači sa vráťte k svojmu počiatočnému účtu. Nový priečinok s údajmi s názvom „Príklad Python streamu“sa mal zobraziť vľavo na poličke denníka (možno budete musieť stránku obnoviť). Kliknutím na toto vedro a potom na ikonu Vlny zobrazíte údaje o teste.
Krok 3: Skript Python
Vytvorte skript a otvorte textový editor nasledujúcim príkazom:
nano vistors.py
Skopírujte a vložte kód odtiaľto do svojho textového editora.
Predtým, ako sa pokúsime spustiť čokoľvek, musíme urobiť niekoľko úprav a skontrolovať, čo sa deje v našom skripte.
importujte RPi. GPIO ako GPIO
z času import spánku z ISStreamer. Streamovanie import Streamer # Povedzte Pi, že použijeme jeho systém číslovania GPIO.setmode (GPIO. BCM) # Piny, ktoré D1 a LED sú pripojené k PIN = 23 MODRÁ = 17 ZELENÁ = 27 ČERVENÁ = 22 # Zadajte náš pin snímača pohybu ako vstup GPIO.setup (PIN, GPIO. IN) # Zadajte naše LED kolíky ako výstup GPIO.setup (RED, GPIO. OUT) GPIO.output (RED, 0) GPIO.setup (GREEN), GPIO. OUT) GPIO.output (ZELENÁ, 0) GPIO.setup (MODRÁ, GPIO. OUT) GPIO.output (MODRÁ, 0)
Riadky 1-21 slúžia na inicializáciu. Najprv importujeme rozhranie GPIO Pi a spôsob, ako uložiť náš skript do režimu spánku. Potom importujeme streamer počiatočného stavu, ktorý sme nainštalovali na predchádzajúcej stránke.
GPIO.setmode určuje, ktorý systém číslovania pre piny používame. Namiesto fyzického umiestnenia používame číslovací systém Pi. Rovnako ako v našom diagrame vyššie, piny, ktoré sme vybrali, boli 23, 17, 27 a 22. Potom sme nastavili pohybový kolík ako vstup a kolíky LED ako výstup.
# Názov segmentu počiatočného stavu (zobrazuje sa)
BUCKET_NAME = ": jack_o_lantern: Tracker or Treat Tracker" # Kľúč vedra počiatočného stavu (skrytý) BUCKET_KEY = "trickortreat" # Kľúč počiatočného stavu ACCESS_KEY = "Your_Access_Key" # Premenné, ktoré zaisťujú, že nebudeme streamovať, či existovalo alebo nebolo pohyb dvakrát za sebou # Šetrí sa to za odoslané udalosti a výkon spracovania LED na žltú GPIO.output (ČERVENÁ, 1) GPIO.output (ZELENÁ, 1)
Riadky 23-41 sú dôležité, pretože inicializujeme streamer počiatočného stavu a nastavujeme LED na žltú. Vložte svoj prístupový kľúč do počiatočného stavu na riadok 28.
# Slučka na neurčito
while True: # Ak snímač pohybu ťahá vysoko (detekuje pohyb): ak GPIO.vstup (PIN) == 1: vytlačte „Pohyb detekovaný“# Ak sme ešte neprúdili: ak už nie jeZaznamenanýPohyb: počítadlo = počítadlo + 1 # Nastaviť LED na červenú GPIO.output (ČERVENÁ, 1) GPIO.output (ZELENÁ, 0) # Stream do počiatočného stavu streamer.log (": ghost: or: chocolate_bar:?", ": chocolate_bar: Time For Treats!") streamer.log (": candy: Hungry Humans?: candy:", counter) streamer.flush () alreadyRecordedMotion = True alreadyRecordedNoMotion = False else: # Pozastavenie skriptu na 1 sekundu spánku (1) else: print "No motion found # Ak sme ešte streamovali: ak už nie jeRecordedNoMotion: # Nastavte LED na žltú GPIO.output (ČERVENÁ, 1) GPIO.output (ZELENÁ, 1) # Stream do počiatočného stavu streamer.log (": duch: alebo: čokoláda_bar:? ",": no_pedestrians: No One Around ") streamer.flush () alreadyRecordedNoMotion = True alreadyRecordedMotion = False else: # Pozastavenie skriptu na 1 sekundu spánku (1)
Riadky 43-77 sú mäsom kódu. Ak je detekovaný pohyb, skript skontroluje, či je „Čas na maškrty!“už bolo streamované. Ak nie, odošle sa do počiatočného stavu a dióda LED sa rozsvieti na červeno; ak áno, skript počká 1 sekundu a potom znova číta zo senzora pohybu. To isté platí, ak nie je detekovaný žiadny pohyb.
Je čas otestovať kód! Uistite sa, že ste upravený súbor uložili pomocou prístupového kľúča pridaného na riadku 28, a potom zadajte do terminálu:
python návštevníkov.py
Mali by ste vidieť, že sa rozsvieti LED dióda a na príkazovom riadku sa začne tlačiť „Žiadny pohyb nebol zistený“. Skúste mávnuť rukou nad snímačom pohybu - teraz by ste mali vidieť červené svetlo a začať tlačiť „Detekovaný pohyb“!
Teraz overte, či sa naše hodnoty streamujú do počiatočného stavu.
Krok 4: Hlavný panel trik alebo ošetrite
Prejdite do počiatočného stavu a pozrite sa na svoj hlavný panel! Mali by ste vidieť vedro s názvom „? Trick or Treat Tracker“. Mávnite rukou v blízkosti snímača pohybu a sledujte, ako sa aktualizuje!
Môj dashboard sa skladá z 2 súhrnných dlaždíc zobrazujúcich poslednú hodnotu a histogramu počtu udalostí, aby som mohol vidieť, kedy bol senzor spustený.
Tu je niekoľko vecí, ktoré je potrebné zvážiť:
- Pravdepodobne budete chcieť rozdeliť počet „Hladných ľudí“na 2, aby ste zohľadnili skutočnosť, že tá istá osoba prejde pred snímačom pohybu dvakrát - cestou k vašim dverám a cestou späť. Môžete to dosiahnuť pomocou výrazov v reálnom čase pomocou rovnice „= math.round (([Hungry Humans?]/2), 0)“.
- Môžete si vyskúšať, ako citlivý je váš pohybový senzor, a podľa toho ho umiestniť na chodník. Navrhujem držať ho dostatočne ďaleko od dverí, aby sa nespúšťal, keď niekto stojí pri dverách.
- Môžete si tiež nastaviť textové upozornenia, ktoré vám oznámia, že sa niekto blíži.
- Vyberte si obrázok na pozadí, aby váš prístrojový panel získal trochu strašidelnej osobnosti!
Krok 5: Tekvica Pi
Odporúča:
GPS Tracker: 6 krokov
GPS Tracker: Hej, chlapci, v tomto videu vyrobíme GPS tracker pomocou Esp 8266 (nodemcu) a neo 6m GPS modulu, takže začnime
How to make a Bumpin 'Electronic Track: Introductory Music Production for FL Studio: 6 Steps
How to make a Bumpin 'Electronic Track: Introductory Music Production for FL Studio: Welcome! Táto inštruktážna príručka pomôže začínajúcim až stredne pokročilým hudobným producentom používať FL Studio na vytváranie rôznych žánrov elektronickej tanečnej hudby. Prebehne základnými prvkami vytvorenia piesne s cieľom podrobne opísať základné rady
Movie Tracker - Raspberry Pi Powered Theatrical Release Tracker: 15 krokov (s obrázkami)
Movie Tracker - Sledovač kín poháňaný Raspberry Pi: Movie Tracker je sledovač vydaní poháňaný Raspberry Pi v tvare klapky. Využíva rozhranie TMDb API na tlač plagátu, názvu, dátumu uvedenia na trh a prehľadu nadchádzajúcich filmov vo vašom regióne v určenom časovom intervale (napr. Uvedenie filmu tento týždeň)
Star Track - Arduino Powered Star Pointer and Tracker: 11 krokov (s obrázkami)
Star Track - Arduino Powered Star Pointer and Tracker: Star Track je Arduino založený, systémom GoTo -mount inšpirovaný systém sledovania hviezd. Môže ukazovať a sledovať akýkoľvek objekt na oblohe (nebeské súradnice sú uvedené ako vstup) pomocou 2 Arduinos, gyroskopu, modulu RTC, dvoch lacných krokových motorov a 3D tlačenej štruktúry
Speed Track Arduino Hot Wheels časť #2 - kód: 5 krokov
Arduino Hot Wheels Speed Track Časť 2 - Kód: V prvej časti tohto projektu sme vybudovali hardvér pre prototyp na 2 doskách. V tejto časti si prejdeme kód, ako funguje, a potom ho vyskúšame. Nezabudnite si pozrieť vyššie uvedené video, v ktorom nájdete celú kontrolu kódu a ukážku tohto