Բովանդակություն:
- Քայլ 1: Առաջարկվող ընթերցում
- Քայլ 2: Նյութեր
- Քայլ 3: Կարգավորեք Raspberry Pi- ն
- Քայլ 4: Կառուցեք այն: Սարքավորումներ
- Քայլ 5: Կառուցեք այն: Ծրագրային ապահովում
- Քայլ 6: Փորձարկեք և տեղադրեք:
Video: IoT Pet Monitor !: 6 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:51
Հետևեք ձեր սիրելի բիբիներին և երաժշտություն նվագեք կամ ասեք նրանց, որ լռեն, երբ դուք հեռու եք: Այս ձեռնարկը ցույց կտա, թե ինչպես օգտագործել Raspberry Pi համակարգիչը `ձեր տան (Cloud- ի միջոցով) ձայնի ծավալը վերահսկելու համար` տեսնելու, թե արդյոք և երբ է ձեր ընտանի կենդանուն վրդովված:
Թմբկահարում … ամենազվարճալի հատվածը. Եթե այն բարձրաձայնում է (ինչպես Ֆիդոն հաչում է կամ ինչ -որ այլ աղմուկ է բարձրացնում), մենք նրանց կասենք, որ լռեն կամ երաժշտություն նվագեն:
Pi- ի (և բարձրախոսների) հետ միասին մենք կօգտագործենք SparkFun MEMS խոսափողի ճեղքման տախտակը `ձայնի մակարդակը չափելու և աուդիո նվագարկիչը միացնելու համար: Տվյալները վերբեռնվում են CloudMQTT ծառայություն ՝ օգտագործելով MQTT հաղորդակցության արձանագրությունը:
Ընդհանուր ընթերցման ժամանակը ՝ ~ 8 րոպե
Ընդհանուր կառուցման ժամանակը ՝ 60 րոպե (ավելի քիչ փորձով)
Հսկայական ՇՆՈՐՀԱԿԱԼՈԹՅՈՆ SparkFun- ին այս նախագծին աջակցելու համար: Ստուգեք ձեռնարկը այստեղ:
Քայլ 1: Առաջարկվող ընթերցում
Այս նախագիծը կառուցելու համար ձեզ հարկավոր կլինի լիովին կազմաձևված, WiFi- ով միացված Raspberry Pi 3 համակարգիչ Raspbian OS- ով: Նաև օգտակար է իմանալ Python- ի որոշ ծրագրավորում, ինչպես նաև հետևյալ բաները. (1) ինչպես օգտագործել և վերահսկել Raspberry Pi GPIO կապում; (2) MQTT հաղորդակցություն; և (3) անալոգային տվիչներ: Եթե դրանցից որևէ մեկը անծանոթ է, կամ եթե պարզապես հետաքրքրասեր եք (հետաքրքրվեք), ստուգեք ստորև ներկայացված ձեռնարկները:
Ազնվամորի Պի 3
- Raspberry Pi 3 Starter Kit միացման ուղեցույց
- Raspberry Pi GPIO
- SPI Հաղորդակցություն Raspberry Pi- ի հետ
MQTT հաղորդակցության արձանագրություն
MQTT (Message Query Telemetry Transport) IoT հաղորդակցության հայտնի արձանագրություն է: Մենք կօգտագործենք Paho Client Python գրադարանը և MQTT ծառայություն, որը կոչվում է CloudMQTT: Ահա ավելին MQTT- ի և ինչպես օգտագործել այն.
- IoT- ի համար հաղորդակցության արձանագրությունների ուսումնասիրություն
- Սկսելով աշխատել CloudMQTT- ով
- Eclipse Paho MQTT Python հաճախորդների գրադարանի ակնարկ
MEMS խոսափողի բեկման տախտակ
MEMS խոսափողը անալոգային խոսափող է, ուստի մեզ անհրաժեշտ կլինի անալոգային թվային փոխարկիչ («ADC») ՝ Raspberry Pi թվային GPIO կապում անալոգային ազդանշանում կարդալու համար:
- Սկսենք SparkFun MEMS խոսափողի բացման տախտակի հետ
- MEMS խոսափողի տվյալների թերթիկ
- MCP3002 ADC տվյալների թերթիկ
Քայլ 2: Նյութեր
- Raspberry Pi 3 Model B
Մեզ անհրաժեշտ կլինեն նաև հետևյալ ծայրամասային սարքերը ՝ Raspberry Pi 3 Case; SD քարտ (նվազագույնը 8 ԳԲ); Raspberry Pi 3 GPIO մալուխ; MicroUSB հոսանքի մալուխ; HDMI մալուխ և HDMI- համատեղելի մոնիտոր; USB ստեղնաշար; USB մկնիկ; բարձրախոսներ ՝ ականջակալների 1/8 դյույմով:
- SparkFun MEMS Mic Breakout Board
-MCP3002 (անալոգային-թվային փոխարկիչ)
-Breadboard & M-to-M Breadboard Jumper Wires
Քայլ 3: Կարգավորեք Raspberry Pi- ն
Քայլ 1. Ստուգեք և տեղադրեք թարմացումները Թարմացումների ստուգումը և տեղադրումը միշտ էլ լավ միջոց է սկսելու համար: Տերմինալի պատուհանում գործարկեք հետևյալ հրամանները.
sudo apt-get թարմացում
sudo apt-get բարելավում
sudo վերագործարկում
Քայլ 2. Ստեղծեք SPI միջերես MEMS խոսափողի + MCP3002- ի համար
MCP3002- ի միջոցով MEMS խոսափողում SPI (սերիայի նավահանգստի միջերես) օգտագործելու համար մեզ անհրաժեշտ կլինի Python Dev փաթեթը.
sudo apt-get տեղադրել python-dev
Մեզ պետք կգա նաև SPI ինտերֆեյսը (գուցե ցանկանա ենթապանակ ստեղծել ՝ սա պահելու համար).
git clone git: //github.com/doceme/py-spidev
sudo python setup.py տեղադրել
Ահա SPI-Dev փաստաթղթերը, եթե բախվեք որևէ խնդրի:
Քայլ 3: Ձայներ նվագել OMXPlayer- ի հետ
OMXPlayer- ը Raspbian OS- ում նախապես բեռնված աուդիո և վիդեո նվագարկիչ է: Այն աշխատում է շատ ձայնային ֆայլերի տեսակների հետ, ներառյալ ՝.wav,.mp3 և.m4a: Սա այն է, ինչ մենք կօգտագործենք հնչյունները նվագարկելու համար, երբ Fido- ն չափազանց բարձր է հնչում: OMXPlayer- ը վերահսկելու Python գրադարանը ներառված է Raspbian- ում (վա !յ):
OMXPlayer- ը տերմինալից փորձարկելու համար մուտքագրեք հետևյալը.
omxplayer /home/…/SongFilePath/SongFileName.mp3
Եթե դա չի աշխատում, փորձեք այն ստիպել տեղական ձայնային անջատիչ սարքի միջոցով.
omxplayer -o local /home/…/SongFilePath/SongFileName.mp3
Քայլ 4. Կարգավորեք CloudMQTT սերվերը
Այժմ մենք ստեղծեցինք MQTT սերվեր: CloudMQTT- ի միջոցով դա անելու համար կատարեք հետևյալը.
- Ստեղծեք CloudMQTT հաշիվ («Cute Cat» ծրագիրը անվճար է):
- Ստեղծեք նոր MyCloud օրինակ:
- Վահանակում ստեղծեք ACL նոր կանոն:
- Դուք կարող եք վերահսկել հրապարակված հաղորդագրությունները «Websocket» UI- ում:
Վերջապես, տեղադրեք MQTT Paho Client Python գրադարանը.
pip տեղադրել paho-mqtt
Քայլ 4: Կառուցեք այն: Սարքավորումներ
Raspberry Pi- ի և MCP3002- ի համար Pinout դիագրամները ներկայացված են վերևի լուսանկարներում:
1. Տեղադրեք MCP3002 կապում տախտակի մեջ (տես վերևի pinout դիագրամը)
MCP3002- ը կապի համար օգտագործում է 4 SPI կապում ՝ սերիական ժամացույց («SCL»), Master Input Slave Output («MISO»), Master Output Slave Input («MOSI») և Chip Select («CS»): Այս կապումներին համապատասխանում են Raspberry Pi GPIO pin 11 (SCLK), GPIO pin 9 (MISO), GPIO Pin 10 (MOSI) և GPIO Pin 8 (CE0):
MCP3002 կապում կատարեք հետևյալ կապերը.
- Միացրեք Pin 1 -ը Raspberry Pi GPIO Pin 8 -ին (CE0)
- Միացրեք Pin 2 -ը MEMS խոսափողի անջատման տախտակի անալոգային ելքին
- Միացրեք Pin 4 -ը GND- ին
- Միացրեք Pin 5 -ը Raspberry Pi GPIO Pin 10 -ին (MOSI)
- Միացրեք Pin 6 -ը Raspberry Pi GPIO pin 9 -ին (MISO)
- Միացրեք Pin 7 -ը Raspberry Pi GPIO Pin 11 -ին (SCLK)
- Միացրեք Pin 8 -ը Raspberry Pi 3.3V- ին
2. MSոդեք լարերը MEMS խոսափողի ճեղքման տախտակին: Միացեք MCP3002- ին և Raspberry Pi- ին:
- Vcc- ն միացրեք Raspberry Pi 3.3V- ին:
- Միացրեք GND- ը Raspberry Pi GND- ին
- Միացրեք AUD- ը MCP3002 Pin 2 -ին
3. Միացրեք Raspberry Pi- ի բոլոր մալուխները և միացրեք ամեն ինչ:
Քայլ 5: Կառուցեք այն: Ծրագրային ապահովում
Bark Back- ի հետ կապված մեր նպատակը երկակի է. Շունը հաչելիս միացրեք նվագարկման ձայնը և տվյալները ուղարկեք սերվեր, որտեղ մենք կարող ենք ստուգել այն:
Ահա այս ծրագրի բաց կոդով Python ծրագիրը: Ազատ զգացեք (և խնդրում եմ) հարմարեցնել և փոփոխել կոդը:
Theրագիրը գործարկելու համար անհրաժեշտ է լրացնել երկու բան
- songList: Գրեք ֆայլի ուղու և ֆայլի անունը յուրաքանչյուր երգի համար, որը ցանկանում եք նվագարկել:
- creds: Մուտքագրեք ձեր CloudMQTT տվյալները այս բառարանում:
Քայլ 1. Կարդացեք SparkFun MEMS խոսափողի բացման տախտակում:
Կարդացեք ADC արժեքով (0-ից 1023-ի սահմաններում) MEMS խոսափողի անջատման տախտակից (MCP3002- ի միջոցով) ՝ օգտագործելով SPI գրադարանը և հաշվեք ազդանշանի գագաթնակետից առատություն:
Նշեք ազդանշանի գագաթնակետի ամպլիտուդը ծավալային միավորի: Ընթացիկ ծածկագիրը ADC միջակայքը 0 -ից 700 -ի սահմանում է (արագ փորձերի հիման վրա) մինչև 0 -ից մինչև 10 -ի ծավալի միավոր: Խոսափողի զգայունությունը կարգավորելու համար հարմարեցրեք ADC մուտքի տիրույթը:
MEMS խոսափողի մանրակրկիտ ակնարկի համար տես այս ձեռնարկը:
Քայլ 2: Գործարկեք աուդիո նվագարկիչ:
Սկզբում մեզ երգեր են պետք նվագելու համար: Կարող եք արագ ձայնագրել GarageBand- ում (կամ սմարթֆոնում) և դրանք ուղարկել Raspberry Pi- ին: Python- ում օգտագործեք ենթամշակման գրադարանը `omxplayer զանգահարելու համար:
Կոդում մուտքագրեք այն երգերի ֆայլի ուղին, որոնք ցանկանում եք նվագարկել * songList * փոփոխականում (տող 26): Հիմնական գործառույթի ծավալի ընթացիկ շեմը սահմանվում է 7:
Քայլ 3: Տվյալներ ուղարկեք CloudMQTT սերվերին
CloudMQTT սերվերների հետ շփվելու համար օգտագործեք Paho Client Python գրադարանը: Ամփոփելու համար. Ստեղծեք Հաճախորդի սերվեր; սահմանել հաղորդակցության արձանագրությունները; միացեք մեր հավատարմագրերին (aka creds); և բաժանորդագրվեք և հրապարակեք մեր տվյալները: Դրա մեծ մասը կատարվում է հիմնական գործառույթում (տողեր 129 - 149, և տողեր 169 - 174):
Ստացված տվյալները ստուգելու համար անցեք «Websocket UI» ներդիրին CloudMQTT վահանակում:
Քայլ 6: Փորձարկեք և տեղադրեք:
Գործարկեք BarkBack.py ծրագիրը տերմինալում կամ Python IDE- ում (արդեն հեռանալուց հետո կարող եք օգտագործել SSH ծրագիրը):
Ստուգեք, որ ծավալի մակարդակներ եք ստանում ձեր Websocket UI ներդիրում:
Փորձարկեք համակարգը ՝ միացնելով խոսափողը (ծափահարել, բղավել, հաչալ և այլն) ՝ համոզվելու համար, որ բարձրախոսները նվագում են բոլոր ձայները:
Երբ ամեն ինչ գործի, խորհուրդ է տրվում բաղադրիչները միացնել PCB- ին (Printed Circuit Board), եթե մտադիր եք համակարգը տեղադրել ավելի քան մի քանի օր:
Միկրոկառավարիչների մրցույթում երկրորդ տեղը զբաղեցնող 2017 թ
Առաջին մրցանակ Սենսորների մրցույթում 2017 թ
Խորհուրդ ենք տալիս:
SmartPET - Smart Pet Feeder: 7 քայլ (նկարներով)
SmartPET - Խելացի կենդանիների սնուցող. Ես Maxime Vermeeren եմ, 18 տարեկան MCT (մուլտիմեդիա և հաղորդակցման տեխնոլոգիա) Howest- ի ուսանող: Ես ընտրել եմ, որ իմ նախագիծը ստեղծի խելացի կենդանիների սնուցող սարք: Ինչու՞ դա արեցի: Իմ կատուն քաշի հետ կապված խնդիրներ ունի, ուստի որոշեցի մեքենա պատրաստել
Pet Bot: 6 քայլ (նկարներով)
Pet Bot: Credit: Այս նախագիծը ոգեշնչված է Beetlebot- ի կողմից robomaniac- ի կողմից: Թարմացում. Այդ ժամանակից ի վեր սա վերանվանեցի Pet Bot- ի: (Տեսահոլովակը դեռ ցույց է տալիս այն որպես Catfish Bot) Ես սովորեցնում եմ Ռոբոտաշինություն երիտասարդ արտադրողներին ESP8266, Arduino և Raspberry PI հարթակներում և մարտահրավերներից մեկը
Pet Robot Ball: 10 քայլ (նկարներով)
Pet Robot Ball. Իմ ընտանի կենդանու շունը սիրում է խաղալ խաղալիքներով, հատկապես այն խաղերին, որոնց նա կարող է հետապնդել: Ես կառուցեցի ռոբոտացված գնդակ, որը միանում և ինքնաբերաբար գլորվում է, երբ նա շփվի դրա հետ, բջջային հեռախոսի միջոցով ինձ տեղեկացնում է, որը կարող եմ օգտագործել այն WiFi- ի և լողափի միջոցով վերահսկելու համար
D4E1 PET Դանակ (Artmaker02). 9 քայլ (նկարներով)
D4E1 PET Դանակ (Artmaker02). Ի՞նչ է անում այս շշի դանակը: Այս մեքենան վերամշակված պլաստիկ (PET) շշերը կտրում է օղակների կամ տաքացվող դանակով պարուրաձևերի մեջ ՝ ապահով պատյանում, որը կարող է անվտանգ օգտագործվել բոլորի կողմից: Ինչու ենք մենք դա պատրաստել և ո՞վ դրա համար է: Մենք արդյունաբերական D խումբ ենք
Creeper-BOT (Creeper Pet). 9 քայլ (նկարներով)
Creeper-BOT (Creeper Pet). Ես միշտ ցանկացել եմ պատրաստել իմ չորքոտանի ռոբոտը, և Minecraft մրցույթը լավ պատրվակ էր: Բացի այդ, ես իսկապես ուզում էի սողացող «ընտանի կենդանի»: Այս հրահանգում ես կկիսվեմ, թե ինչպես եմ դա պատրաստել և ձեզ կտամ ուղեցույց, եթե ցանկանում եք ինքներդ պատրաստել: Ենթադրում եմ, որ դուք