Агуулгын хүснэгт:
- Алхам 1: Санал болгож буй унших
- Алхам 2: Материал
- Алхам 3: Raspberry Pi -ийг тохируулна уу
- Алхам 4: Үүнийг бүтээгээрэй! Техник хангамж
- Алхам 5: Үүнийг бүтээгээрэй! Програм хангамж
- Алхам 6: Туршаад суулгаарай
Видео: IoT Pet Monitor!: 6 алхам (зурагтай)
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:05
Хайртай bbies -ээ ажиглаж, хөгжим тоглож эсвэл тэднийг хол байхад чимээгүй байхыг хэлээрэй! Энэхүү заавар нь Raspberry Pi компьютерийг ашиглан гэрийнхээ дууны хэмжээг (Үүлээр дамжуулан) хэрхэн хянаж, гэрийн тэжээвэр амьтан тань сэтгэл дундуур байгаа эсэхийг мэдэх болно.
Бөмбөрийн өнхрөх … хамгийн хөгжилтэй хэсэг: Хэрэв хэт чанга сонсогдвол (Фидо хуцах эсвэл өөр чимээ гаргах гэх мэт), бид тэднийг чимээгүй бай эсвэл хөгжим тогло гэж хэлж чадна.
Pi (болон чанга яригч) -тай хамт бид SparkFun MEMS микрофоны самбарыг ашиглан дууны түвшинг хэмжиж, аудио тоглуулагчийг ажиллуулна. Өгөгдлийг MQTT холбооны протокол ашиглан CloudMQTT үйлчилгээнд байршуулдаг.
Нийт унших хугацаа: ~ 8 мин
Нийт бүтээх хугацаа: 60 мин (бага туршлагатай)
Энэхүү төслийг дэмжсэн SparkFun -д маш их БАЯРЛАЛАА! Хичээлийг эндээс үзээрэй.
Алхам 1: Санал болгож буй унших
Энэхүү төслийг бүтээхийн тулд танд Raspbian үйлдлийн системтэй, WiFi сүлжээнд холбогдсон Raspberry Pi 3 компьютер хэрэгтэй болно. Python програмчлал болон дараах зүйлсийг мэдэх нь бас тустай: (1) Raspberry Pi GPIO тээглүүрийг хэрхэн ашиглах, хянах; (2) MQTT холбоо; ба (3) аналог мэдрэгч. Хэрэв эдгээрийн аль нэг нь танил бус, эсвэл та зүгээр л сонирхож байгаа бол (сонирхож үзээрэй!), Доорх хичээлүүдийг үзээрэй!
Raspberry Pi 3
- Raspberry Pi 3 Starter Kit Hookup Guide
- Raspberry Pi GPIO
- Raspberry Pi -тай SPI -ийн харилцаа холбоо
MQTT холбооны протокол
MQTT (Message Query Telemetry Transport) нь түгээмэл хэрэглэгддэг IoT холбооны протокол юм. Бид Paho Client Python номын сан болон CloudMQTT нэртэй MQTT үйлчилгээг ашиглах болно. MQTT -ийн тухай болон үүнийг хэрхэн ашиглах талаар эндээс үзнэ үү.
- IoT -ийн харилцааны протоколуудыг судалж байна
- CloudMQTT -ийг ашиглаж эхлэх нь
- Eclipse Paho MQTT Python үйлчлүүлэгчийн номын сангийн тойм
MEMS микрофон таслах самбар
MEMS микрофон нь аналог микрофон тул Raspberry Pi дижитал GPIO зүү бүхий аналог дохиог уншихын тулд бидэнд Аналог-Дижитал хөрвүүлэгч ("ADC") хэрэгтэй болно.
- SparkFun MEMS микрофон таслах самбарыг эхлүүлэх
- MEMS микрофоны мэдээллийн хуудас
- MCP3002 ADC мэдээллийн хуудас
Алхам 2: Материал
- Raspberry Pi 3 загвар Б.
Мөн бидэнд дараах нэмэлт төхөөрөмжүүд хэрэгтэй болно: Raspberry Pi 3 хайрцаг; SD карт (хамгийн багадаа 8 GB); Raspberry Pi 3 GPIO кабель; MicroUSB цахилгаан кабель; HDMI кабель ба HDMI-тэй нийцтэй дэлгэц; USB гар; USB хулгана; чихэвчний 1/8 порт бүхий чанга яригч.
- SparkFun MEMS Mic Breakout Board
-MCP3002 (Аналог-тоон хөрвүүлэгч)
-Breadboard & M-to-M Breadboard Jumper утаснууд
Алхам 3: Raspberry Pi -ийг тохируулна уу
Алхам 1: Шинэчлэлтүүдийг шалгах, суулгах Шинэчлэлтүүдийг шалгаж, суулгах нь үргэлж эхлэх хамгийн сайн арга юм. Терминал цонхонд дараах тушаалуудыг ажиллуулна уу.
sudo apt-get update
sudo apt-get шинэчлэлт
sudo дахин ачаална уу
Алхам 2: MEMS Microphone + MCP3002 -д SPI интерфэйсийг тохируулна уу
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 гэх мэт ихэнх дууны файлын төрлүүдтэй ажилладаг. Энэ бол Фидо хэт чанга дуугарах үед дууг тоглуулахад ашигладаг зүйл юм. OMXPlayer -ийг удирдах Python номын сан нь Raspbian (woo!) -Д багтсан болно.
OMXPlayer -ийг терминалаас туршихын тулд дараахийг бичнэ үү.
omxplayer /home/…/SongFilePath/SongFileName.mp3
Хэрэв энэ нь тус болохгүй бол үүнийг орон нутгийн аудио гаралтын төхөөрөмж дээр хүчээр дарж үзээрэй.
omxplayer -o local /home/…/SongFilePath/SongFileName.mp3
Алхам 4: CloudMQTT серверийг тохируулна уу
Одоо бид MQTT серверийг тохируулж байна! CloudMQTT ашиглан үүнийг хийхийн тулд дараахь зүйлийг хий.
- CloudMQTT данс тохируулах ("Хөөрхөн муур" төлөвлөгөө үнэгүй).
- MyCloud -ийн шинэ жишээ үүсгээрэй.
- Консол дээр ACL -ийн шинэ дүрмийг үүсгэнэ үү.
- Та нийтлэгдсэн мессежийг "Websocket" UI дээр хянах боломжтой.
Эцэст нь MQTT Paho Client Python номын санг суулгана уу.
paho-mqtt-ийг суулгах
Алхам 4: Үүнийг бүтээгээрэй! Техник хангамж
Raspberry Pi болон MCP3002 -ийн холболтын диаграммыг дээрх зурган дээр үзүүлэв.
1. MCP3002 тээглүүрийг талхны самбар руу оруулна уу (дээрх холболтын диаграмыг үзнэ үү)
MCP3002 нь харилцаанд 4 SPI зүү ашигладаг: Цуваа цаг ("SCL"), Мастер оролтын боол гаралт ("MISO"), Мастер гаралтын боол оролт ("MOSI"), Чип сонгох ("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. MEMS Микрофон таслах самбарт гагнуурын утас. MCP3002 болон Raspberry Pi -тай холбогдоно уу
- Vcc -ийг Raspberry Pi 3.3V -тэй холбоно уу.
- GND -ийг Raspberry Pi GND -тэй холбоно уу
- AUD -ийг MCP3002 Pin 2 -т холбоно уу
3. Raspberry Pi -ийн бүх кабелийг залгаж, бүх зүйлийг асаана уу
Алхам 5: Үүнийг бүтээгээрэй! Програм хангамж
Bark Back -тэй хийх бидний зорилго бол хоёр талтай: нохой хуцах үед тоглуулах дууг идэвхжүүлж, өгөгдлийг сервер рүү илгээж, шалгаж болно.
Энэ төслийн нээлттэй эхийн Python програмыг энд оруулав. Кодыг тохируулах, өөрчлөхийг хүсэхгүй байна.
Хөтөлбөрийг ажиллуулахын тулд та хоёр зүйлийг бөглөх ёстой
- songList: Тоглуулахыг хүссэн дуу бүрийн файлын зам, файлын нэрийг бичнэ үү.
- creds: CloudMQTT мэдээллээ энэ толь бичигт оруулна уу.
Алхам 1: SparkFun MEMS микрофон таслах самбараас уншина уу
ADI утгыг (0-ээс 1023 хооронд) MEMS микрофоны таслах самбараас (MCP3002-ээр) SPI номын санг ашиглан уншиж, дохионы оргилоос оргил хүртэлх далайцыг тооцоолно уу.
Дохионы оргилоос дээд хүртэлх далайцын хэмжээг дууны нэгжид байршуулна уу. Одоогийн код нь ADC -ийн хязгаарыг 0 -ээс 700 хүртэл (хурдан туршилт дээр үндэслэсэн) 0 -ээс 10 хүртэлх дууны нэгжид харуулна. Микрофоны мэдрэмжийг тохируулахын тулд ADC оролтын хүрээг тохируулна уу.
MEMS микрофоныг нарийвчлан үзэхийн тулд энэ хичээлийг үзнэ үү.
Алхам 2: Аудио тоглуулагчийг асаах
Эхлээд бидэнд тоглох дуу хэрэгтэй болно! Та GarageBand (эсвэл ухаалаг гар утсан дээрээ) дууг хурдан бичиж, Raspberry Pi руу илгээж болно. Python дээр omxplayer руу залгахын тулд дэд процессийн санг ашиглана уу.
Кодонд * songList * хувьсагч дээр тоглуулахыг хүссэн дуунуудынхаа файлын замыг оруулна уу (мөр 26). Одоогийн эзлэхүүний босгыг үндсэн функцэд 7 болгож тохируулсан.
Алхам 3: Өгөгдлийг CloudMQTT сервер рүү илгээх
Paho Client Python номын санг ашиглан CloudMQTT серверүүдтэй холбогдоорой. Ерөнхийдөө тоймлохын тулд: Клиент серверийг тохируулах; харилцааны протоколыг тодорхойлох; манай итгэмжлэлтэй холбогдох (өөрөөр хэлбэл creds); мөн манай мэдээллийг захиалж, нийтлээрэй. Үүний ихэнхийг үндсэн функцээр гүйцэтгэдэг (мөр 129 - 149, мөр 169 - 174).
Хүлээн авсан өгөгдлийг шалгахын тулд CloudMQTT консол дахь "Websocket UI" таб руу очно уу.
Алхам 6: Туршаад суулгаарай
BarkBack.py програмыг Терминал эсвэл Python IDE дээр ажиллуулна уу (та аль хэдийн гарсны дараа програмыг ажиллуулахын тулд SSH ашиглаж болно).
Та Websocket UI таб дээрээс дууны түвшинг авч байгаа эсэхээ шалгаарай.
Чанга яригч бүх дуугаар тоглодог гэдэгт итгэлтэй байхын тулд микрофоныг (алга таших, хашгирах, хуцах гэх мэт) асаах замаар системийг туршиж үзээрэй.
Бүх зүйл бэлэн болсны дараа, хэрэв та системийг хэдхэн хоногоос илүү хугацаанд суулгах гэж байгаа бол бүрэлдэхүүн хэсгүүдийг ПХБ -д (Хэвлэмэл хэлхээний самбар) гагнахыг зөвлөж байна.
2017 оны микроконтроллерийн тэмцээнд 2 -р байр эзэлсэн
Мэдрэгчдийн уралдааны 2017 оны тэргүүн шагнал
Зөвлөмж болгож буй:
IoT APIS V2 - IoT -ийг идэвхжүүлсэн ургамлын автомат усжуулалтын систем: 17 алхам (зурагтай)
IoT APIS V2 - Автомат IoT -ийг идэвхжүүлсэн ургамлын усжуулалтын систем: Энэ төсөл бол миний өмнөх зааварчилгааны хувьсал юм: APIS - Ургамлын усжуулалтын автомат системБи APIS -ийг бараг нэг жилийн турш ашиглаж байгаа бөгөөд өмнөх загвараа сайжруулахыг хүсч байна. ургамлыг алсаас хянах. Ингэж л
IoT Цахилгаан Модуль: Нарны цэнэгийн хянагчдаа IoT Цахилгаан Хэмжих онцлогийг нэмж оруулах: 19 алхам (зурагтай)
IoT Power Module: Нарны цэнэгийн хянагчдаа IoT Цахилгаан Хэмжих онцлогийг нэмж оруулав: Сайн байна уу, бүгдээрээ мундаг байна гэж найдаж байна! Энэхүү зааварчилгаанд би өөрийн нарны зай хураагуурын хянагчийн ашигладаг нарны хавтангаас гаргаж авсан эрчим хүчний хэмжээг тооцоолох IoT цахилгаан хэмжих модулийг хэрхэн хийснээ харуулах болно
D4E1 PET таслагч (Artmaker02): 9 алхам (зурагтай)
D4E1 PET Cutter (Artmaker02): Энэ лонх таслагч юу хийдэг вэ? Энэхүү машин нь дахин боловсруулсан хуванцар савыг халаасан хутгаар цагираг эсвэл спираль болгон хувааж, хүн бүрт аюулгүй ашиглах боломжтой хашлагад оруулдаг. Энэ бол зориулагдсан уу? Бид бол Аж үйлдвэрийн Д бүлэг
Creeper-BOT (Creeper Pet): 9 алхам (зурагтай)
Creeper-BOT (Creeper Pet): Би үргэлж дөрвөлжин роботыг өөрийн гараар бүтээхийг хүсдэг байсан бөгөөд Minecraft-ийн тэмцээн бол сайн шалтгаан байсан. Нэмж дурдахад би мөлхөгч амьтдыг үнэхээр хүсч байсан. Энэ зааварт би үүнийг хэрхэн хийснээ хуваалцаж, хэрэв та өөрийн гараар хийхийг хүсч байвал гарын авлага өгөх болно
IoT ургамлын хяналтын систем (IBM IoT платформтой): 11 алхам (зурагтай)
IoT Plant Monitoring System (IBM IoT Platform) Өнөөдөр ажил хийдэг хүмүүс урьд өмнөхөөсөө илүү завгүй байдаг; карьераа ахиулж, санхүүгээ удирдах