תוכן עניינים:

צג חיות מחמד IoT !: 6 שלבים (עם תמונות)
צג חיות מחמד IoT !: 6 שלבים (עם תמונות)

וִידֵאוֹ: צג חיות מחמד IoT !: 6 שלבים (עם תמונות)

וִידֵאוֹ: צג חיות מחמד IoT !: 6 שלבים (עם תמונות)
וִידֵאוֹ: חושף לכם סוד ענק!!🍦😌 2024, נוֹבֶמבֶּר
Anonim
Image
Image
הצעה לקריאה
הצעה לקריאה

שימו עין על המנשאים האהובים עליכם ושמעו מוזיקה או אמרו להם להיות בשקט בזמן שאתם לא נמצאים! הדרכה זו תראה כיצד להשתמש במחשב Raspberry Pi כדי לפקח על עוצמת הקול בבית (דרך הענן) כדי לראות אם ומתי חיית המחמד שלך מוטרדת.

תוף גליל … החלק הכי כיף: אם הוא נהיה חזק מדי (כמו שפידו נובח או עושה משהו אחר), נוכל להגיד להם להיות בשקט או להשמיע מוזיקה!

יחד עם ה- Pi (והרמקולים) נשתמש בלוח הפריצה של מיקרופון SparkFun MEMS למדידת רמות עוצמת הקול והפעלת נגן האודיו. הנתונים מועלים לשירות CloudMQTT באמצעות פרוטוקול התקשורת MQTT.

סה כ זמן קריאה: ~ 8 דקות

זמן בנייה כולל: 60 דקות (פחות עם ניסיון)

תודה ענקית ל- SparkFun על התמיכה בפרויקט הזה! עיין במדריך כאן.

שלב 1: הצעה לקריאה

כדי לבנות פרוייקט זה, תזדקק למחשב Raspberry Pi 3 המחובר במלואו המחובר ל- WiFi עם מערכת הפעלה Raspbian. זה גם מועיל להכיר כמה תכנות Python כמו גם את הדברים הבאים: (1) כיצד להשתמש ולשלוט בסיכות ה- GPIO של Raspberry Pi; (2) תקשורת MQTT; ו (3) חיישנים אנלוגיים. אם כל זה אינו מוכר, או אם אתה סתם סקרן (היה סקרן!), עיין במדריכים למטה!

פטל פי 3

  1. מדריך חיבור ל- Raspberry Pi 3
  2. Raspberry Pi GPIO
  3. תקשורת SPI עם ה- Raspberry Pi

פרוטוקול תקשורת MQTT

MQTT (Message Query Telemetry Transport) הוא פרוטוקול תקשורת IoT פופולרי. נשתמש בספריית Pytho Client Python ובשירות MQTT בשם CloudMQTT. להלן מידע נוסף על MQTT ועל אופן השימוש בו:

  1. חקר פרוטוקולי תקשורת עבור IoT
  2. תחילת העבודה עם CloudMQTT
  3. סקירה כללית של ספריית הלקוחות של Eclipse Paho MQTT Python

לוח פריצת מיקרופון MEMS

מיקרופון MEMS הוא מיקרופון אנלוגי, לכן נצטרך ממיר אנלוגי לדיגיטלי ("ADC") כדי לקרוא באות האנלוגי בעזרת סיכות GPIO הדיגיטליות של Raspberry Pi.

  1. תחילת העבודה עם לוח הפריצה למיקרופון SparkFun MEMS
  2. גליון נתונים של מיקרופון MEMS
  3. גיליון נתונים של MCP3002 ADC

שלב 2: חומרים

חומרים
חומרים
חומרים
חומרים
חומרים
חומרים

- פטל פי 3 דגם ב '

כמו כן, נזדקק לציוד ההיקפי הבא: מארז Raspberry Pi 3; כרטיס SD (מינימום 8 GB); כבל Raspberry Pi 3 GPIO; כבל חשמל מסוג MicroUSB; כבל HDMI וצג תואם HDMI; מקלדת USB; עכבר USB; רמקולים עם יציאת אוזניות בגודל 1/8 אינץ '.

- לוח פריצה למיקרופון SparkFun MEMS

-MCP3002 (ממיר אנלוגי לדיגיטלי)

-חוטי מגשר של קרש קרשים & M-to-M

שלב 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 upgrade

sudo reboot

שלב 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. זה עובד עם רוב סוגי קבצי הקול, כולל:.wav,.mp3 ו-.m4a. בזה נשתמש כדי להשמיע צלילים כאשר פידו מתחזק מדי. ספריית Python לשליטה ב- OMXPlayer כלולה ב- Raspbian (woo!).

כדי לבדוק את OMXPlayer מהמסוף, הקלד את הדברים הבאים:

omxplayer /home/…/SongFilePath/SongFileName.mp3

אם זה לא עובד, נסה לכפות אותו על התקן האודיו-פלט המקומי:

omxplayer -o מקומי /home/…/SongFilePath/SongFileName.mp3

שלב 4: הגדר את שרת CloudMQTT

עכשיו הקמנו שרת MQTT! לשם כך באמצעות CloudMQTT, בצע את הפעולות הבאות:

  1. הגדר חשבון CloudMQTT (התוכנית "חתול חמוד" היא בחינם).
  2. צור מופע MyCloud חדש.
  3. במסוף, צור כלל ACL חדש.
  4. אתה יכול לעקוב אחר הודעות שפורסמו בממשק המשתמש "Websocket".

לבסוף, התקן את ספריית פייתון לקוח MQTT Paho:

pip התקן paho-mqtt

שלב 4: בנה אותו! חוּמרָה

לבנות את זה! חוּמרָה
לבנות את זה! חוּמרָה
לבנות את זה! חוּמרָה
לבנות את זה! חוּמרָה
לבנות את זה! חוּמרָה
לבנות את זה! חוּמרָה

תרשימי Pinout עבור ה- Raspberry Pi ו- MCP3002 נמצאים בתמונות למעלה.

1. הכנס סיכות MCP3002 ללוח הלחם (ראה תרשים פינאוט למעלה)

ה- MCP3002 משתמש ב -4 סיכות SPI לתקשורת: שעון סידורי ("SCL"), יציאת Master Slave Master ("MISO"), קלט Master Slave Output ("MOSI") ובחירת שבבים ("CS"). סיכות אלה תואמות את פין GPIO פין 11 (SCLK), פין GPIO 9 (MISO), פין GPIO פין 10 (MOSI) ו- GPIO פין 8 (CE0).

בצע את החיבורים הבאים בעזרת סיכות MCP3002:

  • חבר את פין 1 ל- Raspberry Pi GPIO Pin 8 (CE0)
  • חבר את פין 2 ליציאה האנלוגית של לוח הפריצה של מיקרופון MEMS
  • חבר את פין 4 ל- GND
  • חבר את פין 5 ל- Raspberry Pi GPIO Pin 10 (MOSI)
  • חבר את פין 6 ל- Raspberry Pi GPIO pin 9 (MISO)
  • חבר את פין 7 ל- Raspberry Pi GPIO Pin 11 (SCLK)
  • חבר את פין 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: כתוב בנתיב הקובץ ובשם הקובץ עבור כל אחד מהשירים שאתה רוצה לנגן.

- אישורים: הזן את פרטי 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

השתמש בספריית Pytho Client Python כדי לתקשר עם שרתי CloudMQTT. לסיכום כללי: הקמת שרת לקוח; להגדיר פרוטוקולי תקשורת; להתחבר לאישורים שלנו (aka credd); ולהירשם ולפרסם את הנתונים שלנו. רוב זה נעשה בפונקציה העיקרית (שורות 129 - 149, ושורות 169 - 174).

כדי לבדוק את הנתונים שהתקבלו, עבור לכרטיסייה "Websocket UI" במסוף CloudMQTT.

שלב 6: בדוק והתקן

בדוק והתקן!
בדוק והתקן!

הפעל את התוכנית BarkBack.py בטרמינל או ב- Python IDE (תוכל גם להשתמש ב- SSH להפעלת התוכנית לאחר שכבר עזבת).

בדוק שאתה מקבל רמות עוצמה בכרטיסייה ממשק המשתמש של Websocket שלך.

בדוק את המערכת על ידי הפעלת המיקרופון (מחיאות כפיים, צעקות, קליפות וכו ') כדי להיות בטוח שהרמקולים מנגנים בכל הצלילים.

לאחר שהכל פועל, מומלץ להלחם את הרכיבים ללוח PCB (Printed Circuit Board) אם בכוונתך להתקין את המערכת ליותר מכמה ימים.

תחרות מיקרו -בקר 2017
תחרות מיקרו -בקר 2017
תחרות מיקרו -בקר 2017
תחרות מיקרו -בקר 2017

מקום שני בתחרות מיקרו -בקר 2017

תחרות חיישנים 2017
תחרות חיישנים 2017
תחרות חיישנים 2017
תחרות חיישנים 2017

פרס ראשון בתחרות החיישנים 2017

מוּמלָץ: