תוכן עניינים:
- שלב 1: גיבוי באמצעות WiFi ו- MQTT
- שלב 2: השלט/שולח
- שלב 3: המקלט - חומרה (esp8266 ו- Raspberry Pi)
- שלב 4: המקלט - תוכנה (סידורי, צומת אדום, MQTT)
וִידֵאוֹ: ESP-NOW Automation Home Esp8266 Raspberry Pi MQTT: 4 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:16
במדריך זה אני מראה לך כיצד השתמשתי ב- ESP-NOW באוטומציה הביתית שלי. בתרשים ניתן לראות את זרימות התקשורת
אני מראה לך:
- כיצד עובד השולח
- כיצד עובד המקלט
- כיצד פועלת התקשורת הסדרתית עם פטל פטל
אינני מראה כיצד פועל MQTT ואוטומציה הביתית שלי, תוכל למצוא הוראות טובות אחרות לכך.
נקודות זכות: הוראה זו נוצרה בהשראת:
סרטון מס '172 מאת אנדראס ספייס
www.esploradores.com/practica-6-conexion-es…
שלב 1: גיבוי באמצעות WiFi ו- MQTT
גיליתי ש- ESP-NOW הוא מהיר במיוחד ואמין למדי, אך לפעמים נכשל. בתוכנית שלי הוספתי גיבוי באמצעות חיבור WiFi רגיל ו- MQTT.
שלב 2: השלט/שולח
בתוכנית הראשונה אתה רואה כיצד התוכנית של השולח עובדת:
- ה- esp8266 מתחיל מהפעלה או מאפס
- ESP-NOW מאתחל
- המודול שולח ESP-NOW לזמן מוגדר
-
המודול בודק אם הודעת ESP-NOW התקבלה על ידי המקלט בפונקציית התקשרות חוזרת.
- אם התקבלה הודעת ESP-NOW, המודול עובר לישון עמוק בעוצמה נמוכה
- אם הודעת ESP-NOW לא התקבלה, המודול מתחיל חיבור WiFi וחיבור MQTT כחיבור גיבוי.
התוכנית לשולח נמצאת ב- Github שלי (Master_sender.ino). התוכניות שולחות הן את הנושא והן את ההודעה לאוטומציה הביתית של MQTT בהודעה אחת משולבת ESP-NOW, המשולבת בסימן '&' לפיצול קל במקלט.
הכנתי שני שלטים/שולחים שונים:
שולח 1: ה- esp8266 נמצא בשינה עמוקה ומופעל על ידי איפוס. הלד בכפתור נדלק ומתעמעם כשהמודול מסתיים. אם המתח של הסוללה נמוך, הנורית מהבהבת. אם ESP-NOW נכשל, הנורית מהבהבת לפני המעבר לחיבורי WiFi/MQTT. ה- esp8266 מופעל מסוללת LiPo עם ווסת מתח HT7333 עד 3.3V
שולח 2: ה- esp8266 כבוי ומופעל על ידי לחיצה על הכפתור. בדרך כלל החיבור ESP-NOW מתבצע לאחר כפתור "לחיצה". ה- esp8266 מופעל ישירות מסוללת LiPo. אני לא יודע אם esp8266 ניזוק מהמתח הגבוה של סוללה טעונה במלואה (עד 4.2 וולט) כשהיא מופעלת רק בכמה 100 אלפיות השנייה. הוא גבוה יותר מהמפרט (3.0 - 3.6V).
הערה: אם הסוללה חלשה, ה- ESP-NOW נכשל.
שלב 3: המקלט - חומרה (esp8266 ו- Raspberry Pi)
תיאור המקלט מתחלק לשני חלקים:
- חוּמרָה
- תוֹכנָה
החומרה
ה- esp-01 המקבל מחובר ל- Raspberry Pi Zero שלי שמפעיל את מערכת האוטומציה הביתית שלי (Openhab2) ו- Node Red.
בסכימה מוצגים החיבורים הפשוטים:
- RX של esp-01 ל- TX של ה- RasPi
- TX של ה- esp-01 ל- RX של ה- RasPi
- GND ל- GND
- ה- esp-01 VCC מופעל באמצעות סיכה של 3.3V של ה- Raspi
- ב- esp-01 הן RST והן CH_PD נמשכות גבוה.
יצרתי מחבר ממשק כדי להתקין אותו בקלות
בתמונה אחת אתה יכול לראות את חיבורי החוט שלי ל- Raspberry Pi 3 שלי (שיש לו את אותו pinout, אבל השתמשתי בסיכה נוספת של 3.3V כדי להתחבר ל- CH_PD).
ה- esp-01 תוכנת כפי שמוצג במדריך השני שלי (ראה שלב 3).
שלב 4: המקלט - תוכנה (סידורי, צומת אדום, MQTT)
תוכנית ב- esp8266
התוכנית למקלט esp-01 נמצאת ב- Github שלי (Master_sender.ino). התוכנית היא ממש פשוטה, היא רק מדפיסה את ההודעה ESP-NOW שהתקבלה ביציאה הסידרית ל- Raspberry Pi.
יציאה סדרתית
ב- Raspberry Pi, עליך להפעיל את Port Serial (ב- raspbian, בצע 'sudo raspi-config') לתקשורת טורית רגילה.
שם היציאה הטורית הוא:
- Raspberry Pi Zero: /dev /ttyAMA0
- Raspberry Pi 3: /dev /ttyS0
אתה יכול לבדוק את היציאה הטורית על ידי הפעלת 'dmesg | grep tty 'או' ls /dev '
צומת אדום
בצומת אדום, בחר את צומת הקלט הטורי והגדר את היציאה הטורית (ראה התמונות המצורפות). שים לב לשידור העומס של החיבור הטורי, זה חייב להתאים לשידור העומס כפי שתוכנן ב- esp8266.
הפלט של הצומת הטורי משתנה על ידי צומת פונקציות המפצל את ההודעה בסימן '&' ומגדיר את msg.topic ו- msg.payload. פלט הפונקציה מובא אל צומת הפלט mqtt ששולח את ההודעה לשרת MQTT. שים לב ששדה הנושא של הצומת mqtt ריק, מכיוון שהנושא מוגדר בהודעה.
מוּמלָץ:
Arduin-home-automation: 5 שלבים
Arduin-home-automation: במדריך זה אספר לכם על דוגמה לאוטומציה ביתית הנשלטת על ידי ZELIO SR3 PLC ולוחות Arduino המשמשים למדידה ובקרה של אור, חום ולחות. מערכת זו משמשת את התלמידים שלי ללמוד יסודות של אוטומציה
תחילת העבודה עם Esp 8266 Esp-01 עם Arduino IDE - התקנת לוחות Esp ב- Arduino Ide ותכנות Esp: 4 שלבים
תחילת העבודה עם Esp 8266 Esp-01 עם Arduino IDE | התקנת לוחות Esp ב- Arduino Ide ותיכנות Esp: במדריך זה נלמד כיצד להתקין לוחות esp8266 ב- Arduino IDE וכיצד לתכנת esp-01 ולהעלות בו קוד. מכיוון שלוחות esp הם כל כך פופולריים ולכן חשבתי לתקן מדריך עבור זה ורוב האנשים מתמודדים עם בעיה
[Home IoT] מכשיר לקוח ESP8266 MQTT: 7 שלבים
[Home IoT] ESP8266 מכשיר לקוח MQTT: מעניין להשתמש ב- MCU זול המאפשר WiFi עם פרוטוקול MQTT לשליטה במכשירים כגון מזין המים האוטומטי לחתול שלי. יש את הבלוג שלי למידע מפורט יותר (https://regishsu.blogspot.com/2019/07/home-iot-esp…Spe
Flash OpenWrt / LEDE ל- Home Home 5 עם מקלון: 5 שלבים
Flash OpenWrt / LEDE ל- BT Homehub 5 עם מקלות אכילה: זהו מדריך המציג שיטה חדשה ללא הלחמה לחיבור לממשק UART במרכזי BT Home 5, סוג A. זה נחוץ אם ברצונך להתקין את מדהים " OpenWrt " קושחה לאחר השוק אליה (OpenWrt היה ידוע בעבר בשם
Raspberry Pi-Arduino-SignalR Automation Home Hub: 11 שלבים (עם תמונות)
Raspberry Pi-Arduino-SignalR Automation Home Hub: בעקבות כמה מההקדמות שלי ל- IBLE שפורסמו כאן וכאן, פרויקט זה עושה את הצעד הראשון לקראת בניית גרסה בסיסית של מרכז אוטומציה ביתי פונקציונלי. השתמשתי במספר טכנולוגיות שונות ב- מאמץ להבין איך אני יכול