Obsah:
- Krok 1: Navrhované čítanie
- Krok 2: Materiály
- Krok 3: Konfigurujte Raspberry Pi
- Krok 4: Postavte to! Hardvér
- Krok 5: Postavte to! Softvér
- Krok 6: Otestujte a nainštalujte
Video: IoT Pet Monitor!: 6 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:00
Sledujte svoje milované deti a pustite si hudbu alebo im povedzte, aby boli ticho, keď ste preč! Tento tutoriál vám ukáže, ako pomocou počítača Raspberry Pi monitorovať hlasitosť zvuku vo vašej domácnosti (prostredníctvom cloudu), aby ste zistili, či a kedy je váš maznáčik naštvaný.
Bubon … najzábavnejšia časť: Ak je zvuk príliš hlasný (napríklad, keď Fido šteká alebo robí iný chrapľavý zvuk), povieme im, aby boli ticho alebo hrali hudbu!
Spolu s Pi (a reproduktormi) použijeme oddeľovaciu dosku mikrofónu SparkFun MEMS na meranie úrovní hlasitosti a spustenie prehrávača zvuku. Dáta sa nahrávajú do služby CloudMQTT pomocou komunikačného protokolu MQTT.
Celkový čas na čítanie: ~ 8 min
Celkový čas zostavenia: 60 min (menej skúseností/ skúseností)
Obrovská VĎAKA SparkFunu za podporu tohto projektu! Pozrite sa na návod tu.
Krok 1: Navrhované čítanie
Na zostavenie tohto projektu budete potrebovať plne nakonfigurovaný počítač Raspberry Pi 3 s pripojením WiFi a OS Raspbian. Je tiež užitočné poznať niektoré programovanie v Pythone a nasledujúce veci: (1) používanie a ovládanie pinov GPIO Raspberry Pi; (2) komunikácia MQTT; a (3) analógové snímače. Ak vám niečo z toho nie je známe, alebo vás to len zaujíma (buďte zvedaví!), Pozrite si nižšie uvedené návody!
Raspberry Pi 3
- Sprievodca pripojením štartovacej sady Raspberry Pi 3 Starter Kit
- Raspberry Pi GPIO
- Komunikácia SPI s Raspberry Pi
Komunikačný protokol MQTT
MQTT (Message Query Telemetry Transport) je populárny komunikačný protokol IoT. Použijeme knižnicu Paho Client Python a službu MQTT s názvom CloudMQTT. Tu je viac o MQTT a jeho použití:
- Skúmanie komunikačných protokolov pre IoT
- Začíname s CloudMQTT
- Prehľad klientskej knižnice Eclipse Paho MQTT Python
Oddeľovací panel mikrofónu MEMS
Mikrofón MEMS je analógový mikrofón, takže na čítanie analógového signálu pomocou digitálnych GPIO pinov Raspberry Pi budeme potrebovať analógovo-digitálny prevodník („ADC“).
- Začíname s mikrofónovou doskou SparkFun MEMS
- Technický list mikrofónu MEMS
- Dátový list ADC MCP3002
Krok 2: Materiály
- Raspberry Pi 3 Model B
Budeme tiež potrebovať nasledujúce periférne zariadenia: Puzdro Raspberry Pi 3; Karta SD (minimálne 8 GB); GPIO kábel Raspberry Pi 3; Napájací kábel MicroUSB; Kábel HDMI a monitor kompatibilný s HDMI; USB klávesnica; Myš USB; reproduktory s 1/8 portom pre slúchadlá.
- SparkFun MEMS Mic Breakout Board
-MCP3002 (prevodník analógovo-digitálneho signálu)
-Prepojovacie vodiče pre Breadboard a M-to-M Breadboard
Krok 3: Konfigurujte Raspberry Pi
Krok 1: Kontrola a inštalácia aktualizácií Kontrola a inštalácia aktualizácií je vždy dobrým spôsobom, ako začať. V okne terminálu spustite nasledujúce príkazy:
sudo apt-get aktualizácia
sudo apt-get upgrade
sudo reštart
Krok 2: Nastavte rozhranie SPI pre mikrofón MEMS + MCP3002
Na použitie rozhrania SPI (Serial Port Interface) na čítanie z mikrofónu MEMS prostredníctvom MCP3002 budeme potrebovať balík Python Dev:
sudo apt-get install python-dev
Budeme tiež potrebovať rozhranie SPI (možno budete chcieť vytvoriť podpriečinok, do ktorého ho chcete uložiť):
klon git git: //github.com/doceme/py-spidev
sudo python setup.py install
Tu nájdete dokumentáciu SPI-Dev, ak narazíte na nejaký problém.
Krok 3: Prehrávanie zvukov s OMXPlayer
OMXPlayer je prehrávač zvuku a videa predinštalovaný v systéme Raspbian OS. Funguje s väčšinou typov zvukových súborov vrátane:.wav,.mp3 a.m4a. Práve to použijeme na prehrávanie zvukov, keď bude Fido príliš hlasný. Knižnica Python na ovládanie OMXPlayeru je súčasťou Raspbian (woo!).
Ak chcete otestovať prehrávač OMXPlayer z terminálu, zadajte nasledujúci príkaz:
omxplayer /home/…/SongFilePath/SongFileName.mp3
Ak to nefunguje, skúste to vynútiť cez miestne zariadenie na výstup zvuku:
omxplayer -o local /home/…/SongFilePath/SongFileName.mp3
Krok 4: Konfigurujte server CloudMQTT
Teraz sme vytvorili server MQTT! Ak to chcete urobiť pomocou CloudMQTT, postupujte takto:
- Založte si účet CloudMQTT (plán „Cute Cat“je bezplatný).
- Vytvorte novú inštanciu MyCloud.
- V konzole vytvorte nové pravidlo ACL.
- Publikované správy môžete sledovať v používateľskom rozhraní „Websocket“.
Nakoniec nainštalujte knižnicu MQTT Paho Client Python:
pip install paho-mqtt
Krok 4: Postavte to! Hardvér
Diagramy vývodov pre Raspberry Pi a MCP3002 sú na fotografiách vyššie.
1. Vložte kolíky MCP3002 na dosku (pozri diagram vývodov vyššie)
MCP3002 používa na komunikáciu 4 piny SPI: sériové hodiny („SCL“), podriadený výstup hlavného vstupu („MISO“), podradený vstup hlavného výstupu („MOSI“) a výber čipu („CS“). Tieto kolíky zodpovedajú pinom Raspberry Pi GPIO pin 11 (SCLK), GPIO pin 9 (MISO), GPIO Pin 10 (MOSI) a GPIO Pin 8 (CE0).
Vykonajte nasledujúce pripojenia s kolíkmi MCP3002:
- Pripojte pin 1 k Raspberry Pi GPIO Pin 8 (CE0)
- Pripojte pin 2 k analógovému výstupu oddeľovacej dosky mikrofónu MEMS
- Pripojte pin 4 k GND
- Pripojte pin 5 k Raspberry Pi GPIO Pin 10 (MOSI)
- Pripojte pin 6 k Raspberry Pi GPIO pin 9 (MISO)
- Pripojte Pin 7 k Raspberry Pi GPIO Pin 11 (SCLK)
- Pripojte pin 8 k výstupu Raspberry Pi 3,3 V.
2. Spájkujte vodiče k oddeľovacej doske mikrofónu MEMS. Pripojte sa k MCP3002 a Raspberry Pi
- Pripojte Vcc k Raspberry Pi 3,3 V.
- Pripojte GND k Raspberry Pi GND
- Pripojte AUD k pinu 2 MCP3002
3. Pripojte všetky káble k Raspberry Pi a všetko zapnite
Krok 5: Postavte to! Softvér
Náš cieľ s Bark Back je dvojaký: spustiť zvuk prehrávania, keď pes šteká, a odoslať údaje na server, kde ich môžeme skontrolovať.
Tu je open-source program Python pre tento projekt. Nebojte sa (a prosím urobte) upraviť a upraviť kód.
Na spustenie programu musíte splniť dve veci:
- songList: Napíšte cestu k súboru a názov súboru pre každú skladbu, ktorú chcete hrať.
- kredity: Zadajte informácie o svojom CloudMQTT do tohto slovníka.
Krok 1: Prečítajte si odpájaciu dosku SparkFun MEMS Microphone
Prečítajte si hodnotu ADC (od 0 do 1023) z oddeľovacej dosky mikrofónu MEMS (prostredníctvom MCP3002) pomocou knižnice SPI a vypočítajte amplitúdu signálu od špičky k vrcholu.
Namapujte amplitúdu signálu od špičky k jednotke hlasitosti. Aktuálny kód mapuje rozsah ADC od 0 do 700 (na základe rýchleho experimentovania) do jednotky hlasitosti medzi 0 a 10. Ak chcete nastaviť citlivosť mikrofónu, upravte vstupný rozsah ADC.
Ak chcete získať podrobný prehľad o mikrofóne MEMS, pozrite si tento návod.
Krok 2: Spustite zvukový prehrávač
Najprv budeme potrebovať piesne na hranie! Zvuky môžete rýchlo nahrávať do GarageBandu (alebo do smartfónu) a odoslať ich na Raspberry Pi. V Pythone použite na volanie omxplayera knižnicu podprocesov.
Do kódu zadajte cestu k súboru skladieb, ktoré chcete prehrať, do premennej * songList * (riadok 26). Aktuálny prah hlasitosti je v hlavnej funkcii nastavený na 7.
Krok 3: Odoslanie údajov na server CloudMQTT
Na komunikáciu so servermi CloudMQTT použite knižnicu Paho Client Python. Stručne zhrnuté: Nastavte klientský server; definovať komunikačné protokoly; spojiť sa s našimi povereniami (aka kreditmi); a prihlásiť sa na odber a zverejniť naše údaje. Väčšina z toho sa robí v hlavnej funkcii (riadky 129 - 149 a riadky 169 - 174).
Prijaté údaje môžete skontrolovať v konzole CloudMQTT na karte „Websocket UI“.
Krok 6: Otestujte a nainštalujte
Spustite program BarkBack.py na termináli alebo v IDE Pythonu (pomocou SSH môžete program spustiť aj potom, čo ste už odišli).
Na karte Používateľské rozhranie Websocket skontrolujte, či sa vám zobrazujú úrovne hlasitosti.
Otestujte systém spustením mikrofónu (tlieskanie, krik, štekot atď.), Aby ste sa presvedčili, že reproduktory prechádzajú všetkými zvukmi.
Keď je všetko v prevádzke, odporúča sa spájkovať súčiastky na dosku plošných spojov (PCB), ak plánujete inštalovať systém dlhšie ako niekoľko dní.
Druhé miesto v súťaži o mikrokontrolér 2017
Prvá cena v súťaži senzorov 2017
Odporúča:
Leo: Pet Cat: 7 krokov (s obrázkami)
Leo: Pet Cat: Dobrý deň, toto je môj prvý pokyn. Prvá verzia programu „Sony Aibo Robot (1999)“priťahoval ma k robotike vo veku štyroch rokov, odvtedy bolo mojím snom urobiť pre mňa domáceho maznáčika. Tak som vymyslel " Leo: Pet Cat " w
Pet Bot: 6 krokov (s obrázkami)
Pet Bot: Kredit: Tento projekt je inšpirovaný Beetlebotom od robomaniaka. Aktualizácia: Odvtedy som to premenoval na Pet Bot. (Video to stále ukazuje ako Catfish Bot) Učím robotiku mladých výrobcov na platformách ESP8266, Arduino a Raspberry PI a jednu z výziev
Pet Robot Ball: 10 krokov (s obrázkami)
Pet Robot Ball: Môj maznáčik sa rád hrá s hračkami, najmä s tými, ktoré môže stíhať! Postavil som robotickú loptu, ktorá sa automaticky zapne a odroluje, kedykoľvek s ňou interaguje, upozorní ma na to prostredníctvom mobilného telefónu, pomocou ktorého ju potom môžem ovládať prostredníctvom siete Wi -Fi a
Rezačka PET D4E1 (Artmaker02): 9 krokov (s obrázkami)
Rezačka PET D4E1 (Artmaker02): Čo robí táto rezačka fliaš? Tento stroj rozreže recyklované plastové (PET) fľaše na prstene alebo špirály pomocou vyhrievaného noža v bezpečnom kryte, ktorý môže bezpečne používať každý. Prečo sme to vyrobili a kto je to pre? Sme skupina priemyselných
Premeňte svoj LCD monitor na prenosnom počítači na externý monitor: 8 krokov (s obrázkami)
Premeňte svoj LCD monitor na prenosnom počítači na externý monitor: Tento návod je pre nadšencov, ktorí majú v úmysle používať svoje staré prenosné počítače, ktoré majú iný problém, ako je problém s LCD, napríklad MB, poškodený. Poznámka: Nezodpovedám za žiadne straty alebo škody akéhokoľvek druhu, ak sú spôsobené týmto projektom. Mám Acer A