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

שלט רחוק Alexa בקרת קול ESP8266: 9 שלבים
שלט רחוק Alexa בקרת קול ESP8266: 9 שלבים

וִידֵאוֹ: שלט רחוק Alexa בקרת קול ESP8266: 9 שלבים

וִידֵאוֹ: שלט רחוק Alexa בקרת קול ESP8266: 9 שלבים
וִידֵאוֹ: סרטון הדרכה - התאמת שלט HOT האדום למכשיר הטלוויזיה 2024, יולי
Anonim
מרחוק טלוויזיה בקרת קול של Alexa ESP8266
מרחוק טלוויזיה בקרת קול של Alexa ESP8266

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

חומרה נדרשת:

  1. הד או נקודה של אמזון
  2. נתב wifi שיכול להעביר קדימה (ספק השירות שלי עשה זאת בשבילי)
  3. NANO Arduino שהומר ל- 3V3
  4. ESP8266 -01 או דומה
  5. מודול או מעגל משדר IR
  6. מודול מקלט IR אם ברצונך ללכוד קודים.

תוכנות ושירותים נדרשים:

  1. Arduino IDE, השתמשתי ב- 1.6.11
  2. חשבון מיומנויות Alexa של אמזון (בחינם)
  3. חשבון AWS של אמזון (נדבך חינם אך דורש כרטיס אשראי כדי לפתוח חשבון) או שרת חלופי.

שלב 1: הגדרת כישורי Alexa

הגדרת כישורי Alexa
הגדרת כישורי Alexa
הגדרת כישורי Alexa
הגדרת כישורי Alexa
הגדרת כישורי Alexa
הגדרת כישורי Alexa

ערכת הכישורים של אלכסאס לוקחת את הפקודה הקולית ומסננת אותה באמצעות רשימת 'ערכים'

לאחר הרשמה:

במסוף המפתחים של אמזון, בחר בכרטיסייה Alexa> ערכת כישורים של Alexa [התחל]

[הוסף מיומנות חדשה]

סוג מיומנות: מודל אינטראקציה מותאמת אישית

שפה: בחר את הנכונה, כאשר ההגדרה הזו הייתה לאנגלית (ארה ב) היא לא הייתה מגיבה!

שם: זה לא חשוב עכשיו מכיוון שאנחנו לא מפרסמים.

שם הזמנה:, בחר שם קצר, זו המילה המשמשת לפתיחת האפליקציה.

[הַבָּא]

סכמת הכוונה, הדבק קוד

סוגי חריצים מותאמים אישית {הוסף סוג חריץ], הזן EFFECT_ON_TV

בערכי חריץ, הדבק קוד

אמירות לדוגמה, לשים, TVCommandIntent tv {TVAction}

[שמור], בדף המיומנויות הבא עלינו להוסיף קישור לקוד אותו אנו הולכים להריץ כאשר "הכוונה" מופעלת על ידי מילת ההתחלה של האפליקציה "קליק" או לאחר מכן על ידי "tv {slot value}".

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

שלב 2: סקריפט Python של AWS Lambda Server

הירשם לשלב החינמי של AWS, היו לי חששות שזה עלול לעלות לי בכסף אמיתי, אך לאחר שהשתמשתי בו זמן מה וקראתי בפורומים מגבלות השימוש כה גבוהות לשימוש אישי ופיתוחי שלעולם לא אמור להגיע לנקודת חיוב. יש אלטרנטיבה להשתמש בשרת HTTPS משלך ואולי זה משהו שה esp8266 יכול לעשות, עוד הוראה!

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

בשירותי AWS, תחילה בחר את המיקום שלך, בפינה השמאלית העליונה יש אפשרות.

עבור ארה ב נבחרת וירג'יניה, לאיחוד האירופי בחר אירלנד.

בחר Lambda מכותרת Compute.

[צור פונקציית למבדה]

[פונקציה ריקה]

הגדר את הטריגר: לחץ על התיבה המנוקדת ובחר בערכת כישורים של Alexa

[הַבָּא]

הגדר את הפונקציה

תן שם מה שאתה רוצה

תיאור, תלוי בך

ראנטין: פייתון 2.7

הדבק קוד פיתון,

בקוד יהיה צורך לשנות את כתובת ה- HTTP של כתובת האתר מאוחר יותר לכתובת ה- IP החיצונית שלך

link = "https://185.255.255.255:777/text?data=" + צבע_ מועדף

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

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

[NEXT] הביקורת, לחץ על [Create Function] והיא אמורה לאסוף ולתת לך מספר ARN. העתק קוד זה ונכניס אותו לערכת כישורי אלקסה.

שלב 3:

שלב 4: הגדר את קישור ערכת הכישורים של Alexa ל- AWS Lambda

הגדר את קישור ערכת הכישורים של Alexa ל- AWS Lambda
הגדר את קישור ערכת הכישורים של Alexa ל- AWS Lambda

בערכת כישורי Alexa, בחר את דף התצורה, בראש שדות גלובליים ובחר AWS Lambda והאזור שלך והדבק את קוד ה- ARN בתיבה, [NEXT], בבדיקה, בדוק אם ENABLED נבחר.

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

שלב 5: המרת Arduino NANO 3V3

המרת NANO 3V3 Arduino
המרת NANO 3V3 Arduino
המרת NANO 3V3 Arduino
המרת NANO 3V3 Arduino

ה- ESP8266 פועל מ- 3v3 כך שאפשר להריץ אותו מווסת חיצוני או להמיר ננו. השתמשתי בננו שיבוט עם שבב USB CH340. יש לי שתי פריסות PCB שונות שאני מכיר, אבל אני מקווה שזה יכסה את רוב הפריסות.

עלינו להחליף את הרגולטור 5V בסיכה תואמת 3v3, 1117-3. לאחר מכן נתב את 5V משקע ה- USB רק אל הרגולטור וחבר את כל השאר לפלט שלו. למרבה המזל ניתן להשיג זאת על ידי הסרת דיודת הכניסה, החלפת הרגולטור והוספת חוט אחד מהצד הקלט של הדיודה ל- Vin בלוח הננו.

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

שלב 6: קוד NANO

קוד NANO
קוד NANO
קוד NANO
קוד NANO

קוד זה משמש לשלט שלי בריטי SKY בבריטניה, זה עשוי להיות ספציפי לדגם וכדאי לבדוק את הקודים שלך עובדים בסקיצה נפרדת שאינה מקושרת ל- esp8266.

השתמשתי בספריית IRremote לפי shirriff גירסה 2.0.1

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

חבר משדר IR זמין ב- eBay או בנה אחד. עליך להשתמש במנורת IR של 850 ננומטר מכיוון שהם הנפוצים ביותר במקלטים. ספריית ה- IR השתמשה ב- D3 כסיכת ה- TX שלה

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

שלב 7: ESP8266

ESP8266
ESP8266
ESP8266
ESP8266
ESP8266
ESP8266

יש הרבה מודולים של ESP8266, השתמשתי באחד שהייתי צריך לחבר תחת מיקרוסקופ, ל- ESP8266-01 יש כותרת 2x4 וכל הסיכות שאתה צריך וזה זול. המון דוגמאות באינטרנט,. הטיול שלי למעלה, GPIO_0 צריך להיות מחובר ל- gnd במהלך ההפעלה (לאחר מכן ניתן לצוף) כאשר התכנות, סיכת הגדרות שלו, נמשך גבוה פנימית. לאחר שתוכנת, תן ל- GPIO_0 לצוף ולהפעיל מחדש. CHPD מתחבר ל- V+ לצמיתות.

למנהל הלוח בארדואינו 1.6.11 אין את הקישור esp8622, ב- Arduino IDEfile> העדפות> כתובות URL נוספות של מנהל הלוח, הוסף:

arduino.esp8266.com/stable/package_esp8266c…

לאחר מכן עבור אל מנהל הלוח ומצא את חבילת esp8266. עכשיו זה אמור לתת לך רשימה גדולה של לוחות esp8266, בחר כלים> לוח> מודול גנרי ESP8266. באמצעות מודול usb to uart כעת תוכל לתכנת את החלק esp עם esp8266_server_text. הספק עם 3V3, חבר TX-RX, RX-TX ו- Gnd.

עליך להזין את ה- SSID והסיסמה של הרשת שלך בסקריפט והיציאה שתגדיר להעברת יציאות, למשל 777.

אתה יכול להריץ את הקוד על ידי הפעלה מחדש של ה- esp כשהוא מחובר לממיר ה- usb ל- uart והחלון הטורי של arduino (9600 baud) אמור להציג את כתובת ה- ip המקומית של מודול ה- esp. הכנס את זה לקוד ותכנן מחדש.

שלב 8: הגדרת רשת

התקנת רשת
התקנת רשת
התקנת רשת
התקנת רשת

אז כדי לאפשר לקריאת URL של Lambda להתחבר לשרת ESP HTTP עלינו להגדיר את הנתב שלך להעברת יציאות. קיבלתי את כתובת ה- IP החיצונית שלי מ https://www.whatsmyip.org/, אני נמצא בקישור למיקרוגל כך שלספק שלי יש את הנתב והייתי צריך לבקש מהם העברת יציאות. הייתי צריך לתת את כתובת ה- IP של ה- ESP8266 ברשת שלי ואת היציאה שבחרתי, למשל 777. יש להזין את כתובת ה- IP החיצונית בסקריפט של פייתון lambda וכתובת ה- esp המקומית שלך תוצג בעת הפעלת קוד esp8266 דרך הקישור usb to uart.

מודול ה- ESP בחיבור ה- usb ל- uart אמור להראות במסוף את המילה הנכנסת מ lambda.

חבר את ה- ESP לננו כפי שמוצג 3v3, gnd ו- TX ל- nano D2 סידורי רך. אם יש לך את הננו ב- usb לתצוגה של סדרות תקשורת בסיסיות ב- epc זה צריך להראות מה הוא מקבל מה- esp.

אם ה- ESP אינו מחובר לרשת או אינו מגיב לשיחת כתובת ה- URL של lambda, ה- lambda יפסק זמן ואלקסה תדווח על תגובת מיומנות כושלת

שלב 9: Alexa Open Clicker TV Pause

השהיית טלוויזיה בטלפון של קליקר פתוח
השהיית טלוויזיה בטלפון של קליקר פתוח

שמתי את המודול ליד המקלט אך עם פלט IR בעל הספק גבוה יותר הוא יכול להיות בכל מקום בחדר. אני משתמש במתאם מתח USB ידוע כדי להזין חשמל דרך ה- usb.

שבו לאחור ואמרו "Alexa Open Clicker"

מדריך שידורי טלוויזיה

הטלוויזיה יורדת

בחר טלוויזיה

הפעלת טלוויזיה

טלוויזיה קפיצה חמש

כדי לקפוץ קדימה מספר דקות, הפקודות המאקרו יגיעו פי 30 לחכות לזמן המבוקש ולאחר מכן לשחק.

הפרסומות בבריטניה הן כחמש דקות.

כדי לצאת מהאפליקציה אמור Alexa להפסיק.

תהנה.

מוּמלָץ: