Სარჩევი:

IoT Pet მონიტორი!: 6 ნაბიჯი (სურათებით)
IoT Pet მონიტორი!: 6 ნაბიჯი (სურათებით)

ვიდეო: IoT Pet მონიტორი!: 6 ნაბიჯი (სურათებით)

ვიდეო: IoT Pet მონიტორი!: 6 ნაბიჯი (სურათებით)
ვიდეო: 6 Foods That Are Excellent For Diabetes 2024, ნოემბერი
Anonim
Image
Image
შემოთავაზებული კითხვა
შემოთავაზებული კითხვა

თვალყური ადევნეთ თქვენს საყვარელ მეგობრებს და დაუკარით მუსიკა ან უთხარით მათ, რომ გაჩუმდნენ სანამ არ ხართ! ეს გაკვეთილი აჩვენებს, თუ როგორ გამოიყენოთ Raspberry Pi კომპიუტერი თქვენს სახლში ხმის მოცულობის მონიტორინგისთვის (ღრუბლის საშუალებით) იმის გასარკვევად, არის თუ არა თქვენი შინაური ცხოველი აღშფოთებული.

დასარტყამი რულეტი … ყველაზე სახალისო ნაწილი: თუ ის ძალიან ხმამაღალი გახდება (როგორც ფიდო ყეფს, ან რაღაც სხვა ხმამაღლა ლაპარაკობს), ჩვენ შეგვიძლია ვუთხრათ მათ, რომ იყვნენ ჩუმად ან მუსიკას უკრავდნენ!

Pi- თან (და დინამიკებთან ერთად) ჩვენ გამოვიყენებთ SparkFun MEMS მიკროფონის გარღვევის დაფას, რათა გავზომოთ მოცულობის დონე და ჩართოთ აუდიო პლეერი. მონაცემები იტვირთება CloudMQTT სერვისში MQTT საკომუნიკაციო პროტოკოლის გამოყენებით.

სულ წაკითხვის დრო: ~ 8 წთ

მთლიანი მშენებლობის დრო: 60 წთ (ნაკლები გამოცდილებით)

უღრმესი მადლობა SparkFun– ს ამ პროექტის მხარდაჭერისთვის! შეამოწმეთ სახელმძღვანელო აქ.

ნაბიჯი 1: შემოთავაზებული კითხვა

ამ პროექტის შესაქმნელად დაგჭირდებათ სრულად კონფიგურირებული, WiFi- ით დაკავშირებული Raspberry Pi 3 კომპიუტერი Raspbian OS– ით. ასევე სასარგებლოა იცოდეთ პითონის ზოგიერთი პროგრამირება, ასევე შემდეგი რამ: (1) როგორ გამოიყენოთ და გააკონტროლოთ Raspberry Pi GPIO ქინძისთავები; (2) MQTT კომუნიკაცია; და (3) ანალოგური სენსორები. თუ რომელიმე მათგანი უცნობია, ან თუ უბრალოდ გაინტერესებთ (იყავით ცნობისმოყვარე!), გადახედეთ ქვემოთ მოცემულ გაკვეთილებს!

ჟოლო პი 3

  1. Raspberry Pi 3 Starter Kit Hookup გზამკვლევი
  2. Raspberry Pi GPIO
  3. SPI კომუნიკაცია ჟოლოს პითან

MQTT საკომუნიკაციო პროტოკოლი

MQTT (Message Query Telemetry Transport) არის პოპულარული IoT საკომუნიკაციო პროტოკოლი. ჩვენ გამოვიყენებთ პაჰოს კლიენტის პითონის ბიბლიოთეკას და MQTT სერვისს სახელწოდებით CloudMQTT. აქ არის მეტი MQTT და როგორ გამოვიყენოთ იგი:

  1. IoT– ის საკომუნიკაციო პროტოკოლების შესწავლა
  2. დავიწყოთ CloudMQTT– ით
  3. Eclipse Paho MQTT Python კლიენტის ბიბლიოთეკის მიმოხილვა

MEMS მიკროფონის გარღვევის დაფა

MEMS მიკროფონი არის ანალოგური მიკროფონი, ამიტომ ჩვენ გვჭირდება ანალოგურ-ციფრულ გადამყვანად ("ADC"), რომ წავიკითხოთ ანალოგურ სიგნალში Raspberry Pi ციფრული GPIO ქინძისთავებით.

  1. დაწყება SparkFun MEMS მიკროფონის გარღვევის დაფით
  2. MEMS მიკროფონის მონაცემთა ცხრილი
  3. MCP3002 ADC მონაცემთა ცხრილი

ნაბიჯი 2: მასალები

მასალები
მასალები
მასალები
მასალები
მასალები
მასალები

- ჟოლო Pi 3 მოდელი B

ჩვენ ასევე დაგვჭირდება შემდეგი პერიფერიული მოწყობილობები: ჟოლო პი 3 ქეისი; SD ბარათი (მინიმუმ 8 GB); Raspberry Pi 3 GPIO კაბელი; MicroUSB დენის კაბელი; HDMI კაბელი და HDMI თავსებადი მონიტორი; USB კლავიატურა; USB მაუსი; დინამიკები ყურსასმენის პორტით 1/8.

- SparkFun MEMS Mic Breakout დაფა

-MCP3002 (ანალოგური ციფრული გადამყვანი)

-Breadboard & M-to-M Breadboard Jumper Wires

ნაბიჯი 3: Raspberry Pi- ის კონფიგურაცია

დააკონფიგურირეთ Raspberry Pi
დააკონფიგურირეთ Raspberry Pi
დააკონფიგურირეთ Raspberry Pi
დააკონფიგურირეთ Raspberry Pi
დააკონფიგურირეთ Raspberry Pi
დააკონფიგურირეთ Raspberry Pi
დააკონფიგურირეთ Raspberry Pi
დააკონფიგურირეთ Raspberry Pi

ნაბიჯი 1: შეამოწმეთ და დააინსტალირეთ განახლებები შემოწმება და ინსტალაცია ყოველთვის კარგი გზაა დასაწყებად. შეასრულეთ შემდეგი ბრძანებები ტერმინალის ფანჯარაში:

sudo apt-get განახლება

sudo apt-get განახლება

sudo გადატვირთვა

ნაბიჯი 2: დააყენეთ SPI ინტერფეისი MEMS მიკროფონისთვის + MCP3002

იმისათვის, რომ გამოვიყენოთ SPI (სერიული პორტის ინტერფეისი) MEMS მიკროფონში MCP3002– ის საშუალებით წასაკითხად, დაგვჭირდება Python Dev პაკეტი:

sudo apt-get დააინსტალირეთ python-dev

ჩვენ ასევე დაგვჭირდება SPI ინტერფეისი (შეიძლება დაგჭირდეთ ქვესაქაღალდის შექმნა ამის შესანახად):

git კლონი git: //github.com/doceme/py-spidev

sudo python setup.py ინსტალაცია

აქ არის SPI-Dev დოკუმენტაცია, თუ რაიმე პრობლემა შეგექმნათ.

ნაბიჯი 3: ხმების დაკვრა OMXPlayer– ით

OMXPlayer არის აუდიო და ვიდეო პლეერი წინასწარ დატვირთული Raspbian OS– ზე. ის მუშაობს ხმოვანი ფაილების უმეტესობასთან, მათ შორის:.wav,.mp3 და.m4a. ეს არის ის, რასაც ჩვენ გამოვიყენებთ ხმების დასაკრავად, როდესაც ფიდო ხმება ძალიან. პითონის ბიბლიოთეკა OMXPlayer– ის გასაკონტროლებლად შედის Raspbian– ში (woo!).

ტერმინალიდან OMXPlayer შესამოწმებლად, ჩაწერეთ შემდეგი:

omxplayer /home/…/SongFilePath/SongFileName.mp3

თუ ეს არ მუშაობს, სცადეთ აიძულოთ ის ადგილობრივ აუდიო-გამშვებ მოწყობილობაზე:

omxplayer -o local /home/…/SongFilePath/SongFileName.mp3

ნაბიჯი 4: CloudMQTT სერვერის კონფიგურაცია

ახლა ჩვენ შევქმენით MQTT სერვერი! ამისათვის CloudMQTT გამოყენებით, გააკეთეთ შემდეგი:

  1. შექმენით CloudMQTT ანგარიში ("საყვარელი კატის" გეგმა უფასოა).
  2. შექმენით ახალი MyCloud მაგალითი.
  3. კონსოლში შექმენით ახალი ACL წესი.
  4. თქვენ შეგიძლიათ აკონტროლოთ გამოქვეყნებული შეტყობინებები "Websocket" ინტერფეისში.

დაბოლოს, დააინსტალირეთ 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)
  • შეაერთეთ პინი 2 MEMS მიკროფონის გარღვევის დაფის ანალოგიურ გამომავალთან
  • დააკავშირეთ პინ 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 ჟოლოს Pi GND- თან
  • შეაერთეთ AUD MCP3002 პინ 2 -თან

3. შეაერთეთ ყველა კაბელი Raspberry Pi– სთვის და ჩართეთ ყველაფერი

ნაბიჯი 5: ააშენეთ იგი! პროგრამული უზრუნველყოფა

ააშენე ის! პროგრამული უზრუნველყოფა
ააშენე ის! პროგრამული უზრუნველყოფა

ჩვენი მიზანი Bark Back არის ორმაგი: გააქტიურეთ დაკვრის ხმა, როდესაც ძაღლი ყეფს და გაგზავნეთ მონაცემები სერვერზე, სადაც შეგვიძლია მისი შემოწმება.

აქ არის ღია კოდის Python პროგრამა ამ პროექტისათვის. მოგერიდებათ (და გთხოვთ გააკეთოთ) კოდის მორგება და შეცვლა.

პროგრამის გასაშვებად, თქვენ უნდა შეავსოთ ორი რამ:

- songList: ჩაწერეთ ფაილის ბილიკი და ფაილის სახელი თითოეული იმ სიმღერისთვის, რომლის დაკვრაც გსურთ.

- creds: შეიყვანეთ თქვენი CloudMQTT ინფორმაცია ამ ლექსიკონში.

ნაბიჯი 1: წაიკითხეთ SparkFun MEMS მიკროფონის გარღვევის დაფაზე

წაიკითხეთ ADC მნიშვნელობა (0-დან 1023-მდე) MEMS მიკროფონის გარღვევის დაფიდან (MCP3002- ის საშუალებით) SPI ბიბლიოთეკის გამოყენებით და გამოთვალეთ სიგნალის პიკიდან პიკამდე ამპლიტუდა.

სიგნალის პიკიდან პიკამდე ამპლიტუდის გამოსახვა მოცულობის ერთეულზე. მიმდინარე კოდი ასახავს ADC დიაპაზონს 0 -დან 700 -მდე (სწრაფი ექსპერიმენტის საფუძველზე) მოცულობის ერთეულს 0 -დან 10 -მდე. მიკროფონის მგრძნობელობის შესაცვლელად, შეცვალეთ ADC შეყვანის დიაპაზონი.

MEMS მიკროფონის საფუძვლიანი მიმოხილვისთვის, გადახედეთ ამ სახელმძღვანელოს.

ნაბიჯი 2: ჩართეთ აუდიო პლეერი

ჯერ სიმღერები გვჭირდება დასაკრავად! თქვენ შეგიძლიათ სწრაფად ჩაწეროთ ხმები GarageBand– ში (ან თქვენს სმარტფონზე) და გაუგზავნოთ ისინი Raspberry Pi– ს. პითონში გამოიყენეთ ქვეპროცესების ბიბლიოთეკა, რომ დარეკოთ omxplayer.

კოდში შეიყვანეთ სიმღერების ფაილის ბილიკი, რომლის დაკვრა გსურთ * songList * ცვლადში (სტრიქონი 26). მოცულობის მიმდინარე ბარიერი მთავარ ფუნქციაში არის 7.

ნაბიჯი 3: მონაცემების გაგზავნა CloudMQTT სერვერზე

გამოიყენეთ Paho Client Python ბიბლიოთეკა CloudMQTT სერვერებთან დასაკავშირებლად. მოკლედ რომ შევაჯამოთ: დააყენეთ კლიენტის სერვერი; საკომუნიკაციო პროტოკოლების განსაზღვრა; დაკავშირება ჩვენს რწმუნებათა სიგელთან (aka creds); და გამოიწერეთ და გამოაქვეყნეთ ჩვენი მონაცემები. ამის უმეტესობა მთავარ ფუნქციაშია შესრულებული (სტრიქონები 129 - 149 და სტრიქონები 169 - 174).

მიღებული მონაცემების შესამოწმებლად გადადით "Websocket UI" ჩანართზე CloudMQTT კონსოლში.

ნაბიჯი 6: შეამოწმეთ და დააინსტალირეთ

ტესტირება და ინსტალაცია!
ტესტირება და ინსტალაცია!

გაუშვით BarkBack.py პროგრამა ტერმინალში ან Python IDE– ში (თქვენ ასევე შეგიძლიათ გამოიყენოთ SSH პროგრამის გასაშვებად უკვე წასვლის შემდეგ).

შეამოწმეთ, რომ თქვენ იღებთ მოცულობის დონეს თქვენს ვებსაიტზე UI ჩანართში.

შეამოწმეთ სისტემა მიკროფონის ჩართვით (ტაში, ყვირილი, ყეფა და ა.შ.), რომ დარწმუნდეთ, რომ დინამიკები უკრავენ ყველა ბგერას.

მას შემდეგ რაც ყველაფერი ამოქმედდება, რეკომენდებულია კომპონენტების შედუღება PCB- ზე (Printed Circuit Board), თუ თქვენ აპირებთ სისტემის დაყენებას რამდენიმე დღეზე მეტ ხანს.

მიკროკონტროლერის კონკურსი 2017 წ
მიკროკონტროლერის კონკურსი 2017 წ
მიკროკონტროლერის კონკურსი 2017 წ
მიკროკონტროლერის კონკურსი 2017 წ

მეორე ადგილი მიკროკონტროლერის კონკურსში 2017

სენსორების კონკურსი 2017 წ
სენსორების კონკურსი 2017 წ
სენსორების კონკურსი 2017 წ
სენსორების კონკურსი 2017 წ

პირველი პრიზი სენსორების კონკურსში 2017

გირჩევთ: