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

גלאי מצב רוח לכלבים (פטל פטל): 5 שלבים
גלאי מצב רוח לכלבים (פטל פטל): 5 שלבים

וִידֵאוֹ: גלאי מצב רוח לכלבים (פטל פטל): 5 שלבים

וִידֵאוֹ: גלאי מצב רוח לכלבים (פטל פטל): 5 שלבים
וִידֵאוֹ: סרטון להלעת מצב רוח😀#מצחיק #כלבים 2024, מאי
Anonim
גלאי מצב רוח לכלבים (פטל פאי)
גלאי מצב רוח לכלבים (פטל פאי)

מדריך זה מיועד לקחת את הצלילים שכלב משמיע ולקבוע אם יש לפנות אליהם או לא בעזרת נוריות חיווי. רוב בעלי הכלבים מכירים את חיות המחמד שלהם ויכולים לקרוא את האותות שהם מוציאים ולכן המדריך הזה מופנה בעיקר לזרים שעלולים לבוא במגע עם הכלב שלך.

שלב 1: חלקים

חלקים
חלקים
חלקים
חלקים
חלקים
חלקים

אתה תצטרך:

  • פאי פטל
  • נוריות אדומות/ירוקות (X2)
  • צג
  • מקלדת/עכבר עם USB
  • Dongle WiFi
  • מיקרופון USB חיצוני
  • נגד 330 אוהם (X2)

חלקי חילוף

  • ספק כוח חיצוני של פטל פי
  • קולר לכלב

שלב 2: נוהל

תהליך
תהליך

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

שלב 3: תכנות

תִכנוּת
תִכנוּת

להלן תוכנית Python בה השתמשתי עבור הכלב שלי. בשלב הבא אסביר כיצד לשנות את התוכנית להתנהגות הכלב שלך. אל תריץ את התוכנית עדיין מכיוון שהיא לא תעבוד עד שתעשה את השלב הבא.

#!/usr/bin/pythonimport pyaudio יבוא sys חוט ייבוא מעת לעת שינה יבוא ממערך יבוא מערך RPi. GPIO כ- GPIO

לנבוח = 0

יללה = החזקת שווא = 0 נביחות אורך = 5 עיכוב = 0 המתנה = 2 דגל = 0 אדום = 7 ירוק = 5 יציאה Flag = שווא

def toggleLightRed (ג):

GPIO.setmode (GPIO. BOARD) GPIO.setup (אדום, GPIO. OUT) GPIO.output (c, True) שינה (10) GPIO.output (c, False) הדפסה ("אדום מסומן")

def toggleLightGreen (ג):

GPIO.setmode (GPIO. BOARD) GPIO.setup (ירוק, GPIO. OUT) GPIO.output (c, True) שינה (10) GPIO.output (c, False) הדפסה ("ירוק מחליף")

def main ():

נביחה גלובלית יללה גלובלית אחיזה נביחה גלובלית עיכוב גלובאלי באורך דגל גלובלי אדום גלובלי ירוק

נתח = 8192

FORMAT = pyaudio.paInt16 ערוצים = RATE 1 = 44100 סף = 3000 max_value = 0 p = pyaudio. PyAudio () stream = p.open (פורמט = FORMAT, ערוצים = CHANNELS, rate = RATE, input = True, output = True, frames_per_buffer = נתח) GPIO.setmode (GPIO. BOARD) GPIO.setup (אדום, GPIO. OUT) GPIO.setup (ירוק, GPIO. OUT) נסה: הדפס "איתור מאתחל" בעוד True: try: data = stream.read (נתח) למעט IOError כמו לשעבר: אם ex [1]! = pyaudio.paInputOverflowed: העלאת נתונים = '\ x00' * נתח as_ints = מערך ('h', נתונים) max_value = max (as_ints) בעוד max_value> סף: delay = 0 החזק = החזק+ניסיון אחד: data = stream.read (נתח) למעט IOError כמו לשעבר: אם ex [1]! = Pyaudio.paInputOverflowed: העלה נתונים = '\ x00' * נתח as_ints = מערך ('h', נתונים) max_value = max (as_ints) אם החזק> = barkLength: howl = הדפסה אמיתית "HOWL DETECTED" toggleLightGreen (ירוק) GPIO.cleanup () elif hold> 0 והחזק

אם _name_ == '_ עיקר_':

רָאשִׁי()

שלב 4: פתרון בעיות ושינוי

פתרון בעיות ושינוי
פתרון בעיות ושינוי
פתרון בעיות ושינוי
פתרון בעיות ושינוי
פתרון בעיות ושינוי
פתרון בעיות ושינוי

להכין

לפני שתפעיל את התוכנית יהיה עליך להקליד את הדברים הבאים במסוף כדי להתקין את PyAudio:

sudo apt-get intall python-pyaudio

לאחר מכן תוכל לבדוק ולהפעיל את התוכנית כדי לוודא שהיא פועלת כראוי.

פתרון תקלות

אתה עלול להיתקל בשגיאה הבאה:

IOError: [קלט ארנו עלה על גדותיו] -9981

כדי לתקן זאת, פשוט הגדל את המספר שהוקצה לגוש המשתנה עד שהשגיאה לא תופיע עוד.

שינוי

משתנה barkLength מכתיב את מספר הפעמים שהתוכנית לולאה לפני שרעש כבר לא נתפס כקליפה, אלא כיללה. אם כלביך מייללים אך עושה זאת רק לפרץ קצר אז עליך להקטין מספר זה.

המשתנים אדום וירוק מתייחסים ליציאות הפלט שישמשו את מחווני ה- LED. ניתן לשנות אותם בהתאם לצרכיך.

למרות שאני לא משתמש בעיכוב המשתנה באופן פעיל בתוכנית שלי, ניתן לראות זאת כדי להצביע על תדירות הנביחות או היללות.

החזקת המשתנה מתייחסת לכמה פעמים התוכנית לולאה כאשר רמת הרעש נמצאת מעל הסף ומשמשת לקביעת אם מתרחשת יללה. אין לשנות את המשתנה הזה בשום צורה כיוון שמזהות יללות באמצעות מניפולציה של משתנה barkLength.

ניתן להוריד את משתנה הסף אם הקליפה אינה חזקה במיוחד או מוגבהת אם יש רעשי רקע העלולים להתפרש בצורה לא נכונה כרעש הנובע מהכלב.

שלב 5: חומרה

חוּמרָה
חוּמרָה
חוּמרָה
חוּמרָה
חוּמרָה
חוּמרָה

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

יַצִיב

הדבר הכי קל לעשות הוא להשאיר הכל על קרש לחם מכיוון שלא תהיה תנועה שעלולה לנתק חוטים. חבר את הקתודות של הלדים האדומים לסיכה הארקה ב- Raspberry Pi והאנודות או דרך נגד 330 אוהם או ישר לתוך סיכה 7 של ה- Raspberry Pi. עשו את אותו הדבר עם הנורות הירוקות אך חיברו את האנודות לסיכה 5. הפעל את התוכנית וכדאי שיהיה לך פרויקט שהושלם לאחר שתשנה את הקוד לצרכיך.

לא נייח

הייתי ממליץ להשלים את הגרסה הנייחת קודם כל רק כדי לוודא שהכל עובד ואז להמשיך הלאה משם על ידי הלחמה של הכל כדי שאף חוט לא יתחבר מהתנועה של הכלב.

חבר את הנורות לצווארון כך ששניהם נמצאים במצב נוח ויוכלו להיראות על ידי מישהו כשהם מתקרבים.

לאחר מכן חבר את ספק הכוח החיצוני שלך כמו זה הנראה כאן לפאי הפטל והדק אותו לצווארון בצורה נוחה לכלב.

לאחר שהכל מאובטח במקומו, הפעל את התוכנית, חבר את הצווארון לכלב וסיימת!

מוּמלָץ: