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

מדריך למתחילים ב- ESP8266 וציוצים באמצעות ESP8266: 17 שלבים (עם תמונות)
מדריך למתחילים ב- ESP8266 וציוצים באמצעות ESP8266: 17 שלבים (עם תמונות)

וִידֵאוֹ: מדריך למתחילים ב- ESP8266 וציוצים באמצעות ESP8266: 17 שלבים (עם תמונות)

וִידֵאוֹ: מדריך למתחילים ב- ESP8266 וציוצים באמצעות ESP8266: 17 שלבים (עם תמונות)
וִידֵאוֹ: Serial מבוא למערכות משובצות מחשב (ארדואינו) | הנדסת אלקטרוניקה ומחשבים לכיתות י,יא,יב 2024, נוֹבֶמבֶּר
Anonim
מדריך למתחילים ב- ESP8266 וציוצים באמצעות ESP8266
מדריך למתחילים ב- ESP8266 וציוצים באמצעות ESP8266

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

קראתי הרבה באינטרנט במודול ESP8266 לפני כשנה וקניתי אחד אבל התחלתי לעבוד איתם רק בחודש שעבר. בינתיים לא היה מידע נרחב. עם זאת הרבה תיעוד, סרטונים זמינים באינטרנט לגבי קושחה, פקודות AT, פרויקטים וכו 'אז החלטתי להתחיל.

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

במדריך זה אנסה להראות

  • כיצד לחבר ESP8266 ולתקשר איתו באמצעות Arduino Uno.
  • אנסה גם להראות כיצד ניתן לשלוח ציוץ דרכו באמצעות Thingspeak.

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

שלב 1: דברים שתצטרך

דברים שתצטרך
דברים שתצטרך

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

  • 1xESP8266 (ESP -01) -מפרץ
  • מתאם 1xBreadboard (למד כיצד להכין אחד כאן או השתמש בכמה חוטי מגשר)
  • 1xLM2596 -ממקום
  • ממיר רמה 1xLogic -מפרץ
  • 1xArduino Uno
  • כבל USB עבור Arduino Uno
  • 1xBreadboard -מפרץ
  • חוטים -מפרץ
  • Arduino IDE
  • חשבון ב- Thingspeak

העלות הכוללת תהיה סביב Rs 600 (כ $ 9). הוצאתי את העלות של Arduino Uno מכיוון שזה תלוי אם אתה רוצה מקורי או שיבוט. השיבוטים הזולים ביותר זמינים בסביבות 500 Rs (כ $ 4).

שלב 2: קצת מידע על ESP8266

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

יתרון

היתרון הגדול ביותר של ESP8266 הוא אולי העלות שלו. זה די זול ואפשר לקנות כמה כאלה בבת אחת. לפני שנודע לי על זה לא יכולתי אפילו לחשוב לקנות מודול wifi. הם היו יקרים מדי. גרסאות חדשות של ESP8266 משוחררות לעתים קרובות למדי והאחרונה היא ESP 12. עם זאת במדריך זה אתמקד רק ב- ESP 01 שהוא די פופולרי. יתר על כן כאשר אתה קונה את ESP8266 הוא מגיע טעון מראש עם קושחת AT ברירת המחדל. אז אתה טוב להתחיל ברגע שאתה קונה אחד..גם כפי שתראה מההנחיה הזו די קל להתממשק אליהם.

חִסָרוֹן

לכל מכשיר יש יתרונות וחסרונות משלו ו- ESP אינו שונה. ה- ESP עשוי להיות לפעמים מסובך ומתסכל מאוד לעבוד איתו. מכיוון שהוא די חדש תתקשה להשיג מידע עליו. למרבה המזל קהילה ב- esp8266.com קיים וזה הרבה עזרה. יתר על כן זה גם לפעמים גם מתחיל לעשות דברים לא צפויים כמו לזרוק המון זבל דרך החיבור הטורי וכו '.

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

שלב 3: Pinout של ESP8266

Pinout של ESP8266
Pinout של ESP8266

ל- ESP8266 יש 8 סיכות כפי שמוצג.

יש לחבר Gnd ו- Vcc כרגיל לקרקע ולאספקה בהתאמה. ESP8266 פועל על 3.3V.

סיכת RESET משמשת לאיפוס ידני של ה- ESP. בדרך כלל היא צריכה להיות מחוברת 3.3V. אם ברצונך לאפס את ה- ESP, חבר סיכה זו לרגע לרגע ולאחר מכן חזור ל -3.3V.

CH_PD הוא כוח השבב למטה שאמור להיות מחובר בדרך כלל ל 3.3V.

GPIO0 ו- GPIO2 הם סיכות פלט קלט למטרות כלליות. בדרך כלל יש לחבר אותן ל 3.3V. עם זאת, כאשר מהבהבים את הקושחה, חבר GPIO0 ל- gnd.

סיכות Rx ו- Tx הן סיכות השידור והקבלה של ESP8266. הן פועלות על היגיון 3.3V כלומר 3.3V הוא לוגיקה HIGH עבור ESP8266.

חיבורים מפורטים ניתנים בשלבים מאוחרים יותר.

שלב 4: במה כדאי להשתמש בתקשורת עם ESP8266?

מה צריך לשמש לתקשורת עם ESP8266?
מה צריך לשמש לתקשורת עם ESP8266?
מה צריך לשמש לתקשורת עם ESP8266?
מה צריך לשמש לתקשורת עם ESP8266?
מה צריך לשמש לתקשורת עם ESP8266?
מה צריך לשמש לתקשורת עם ESP8266?

ישנם הרבה מכשירים שניתן להשתמש בהם כדי לתקשר עם ESP8266 כגון מתכנתים FTDI, ממיר סדרתי מסוג USB ל- TTL, Arduino וכו '. עם זאת השתמשתי ב- Arduino Uno פשוט כי זה הכי קל וכמעט לכולם יש את זה. יש לך Arduino יש לך גם את Arduino IDE והצג הטורי שלו יכול לשמש לתקשורת עם ESP8266. אז אין להוציא כסף על מתכנתים FTDI וכו '.

עם זאת, אם אתה רוצה או אם יש לך כבר כזה, תוכל להשתמש במתכנת FTDI או ממיר סדרתי מסוג USB to TTL (עוד כיצד לחבר אותם מאוחר יותר).כמו כן יש הרבה תוכנות כגון RealTerm או מרק. תוכל להשתמש אלה באותו אופן כמו הצג הטורי של Arduino IDE.

שלב 5: הרכבת ה- ESP8266 על לוח הלחם

הרכבת ה- ESP8266 על לוח קרש
הרכבת ה- ESP8266 על לוח קרש
הרכבת ה- ESP8266 על לוח קרש
הרכבת ה- ESP8266 על לוח קרש

שימו לב שהסיכות של ESP8266 אינן ידידותיות ללוח. ניתן להתגבר על כך משתי דרכים.

השתמש בחוטי מגשר בין נקבה לגבר אשר יכולים לגרום לדברים מבולגנים או

בצע כפי שמוצג במדריך זה או

השתמש בלוח מתאם, הכין אחד בעצמך (יש הרבה מהם ב- Instructables) וזה מסודר.

שלב 6: ספק כוח

ספק כוח
ספק כוח

ה- ESP8266 עובד על אספקת 3.3V. אל תחבר אותו לסיכה 5V בארדואינו. הוא כנראה יישרף.

כמה הדרכות הציעו ליצור מעגל מחלק מתח באמצעות נגדים 1k, 2k עם 5V כקלט ולקבל 3.3V על פני הנגד 2k ולספק אותו ל- Arduino. עם זאת, גיליתי כי ה- ESP אפילו לא התחיל כשעשיתי זאת.

הצלחתי להפעיל אותו באמצעות 3.3V בארדואינו, אך גיליתי שה- ESP התחמם לאחר זמן מה.

אתה יכול להשתמש בווסת מתח 3.3V.

או שאתה יכול להשתמש LM2596 dc-dc ממיר למטה. אלה הם די זולים. והשתמשתי אלה. תן 5V מארדואינו לכניסה. התאם את הפוטנציומטר במודול, עד שהפלט הופך ל -3.3VI ומצא שניתן להפעיל את ה- ESP. מאחד מהם למשך שעות. בצע את החיבורים כפי שמוצג באיור.

שלב 7: המרה ברמת לוגיקה

המרה ברמת לוגיקה
המרה ברמת לוגיקה

מוזכר כי ל- ESP יש לוגיקה של 3.3V ואילו ל- Arduino יש לוגיקה של 5V.

המשמעות היא שב- ESP 3.3V הוא לוגיקה HIGH בעוד שבארדואינו 5V הוא לוגיקה HIGH. זה עלול לגרום לבעיות מסוימות בעת חיבורן יחד.

גיליתי באינטרנט שצריך ליישם המרה ברמת לוגיקה תוך ממשק ESP Rx ו- Tx עם Arduino.

כמה הדרכות ציינו כי יש צורך בהמרה ברמת לוגיקה תוך התממשקות ל- PIN ESP Rx.

עם זאת גיליתי שבאופן רגיל חיבור סיכות ESP Rx ו- Tx לארדואינו לא גרם לבעיות

חיברתי Rx ו- Tx באמצעות ממיר רמת לוגיקה כמו גם Rx לבד אך לא קיבלתי שום תגובה.

עם זאת גיליתי שחיבור סיכת ESP Tx באמצעות ממיר רמת לוגיות בעת חיבור ה- Tx ישירות גם לא גרם לבעיות

כך שניתן להשתמש בממיר רמה לוגית או לא.

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

שלב 8: חיבורים

חיבורים
חיבורים

החיבורים של ESP8266 הם:

ESP8266

Gnd ------------------- Gnd

GPIO2 --------------- 3.3V

GPIO0 --------------- 3.3V

Rx -------------------- Rx של Arduino

Tx --------------------- Tx של Arduino (ישיר או באמצעות ממיר רמה לוגית)

CH_PD -------------- 3.3V

איפוס -------------- 3.3V

Vcc -------------------- 3.3V

(שים לב שבגרסאות מסוימות יש לחבר את ESP Rx ל- Arduino Tx ולחבר את ה- ESP Tx Arduino Rx).

אם אתה משתמש במתכנת FTDI או ממיר סדרתי מסוג USB ל- TTL, חבר את ה- Tx וה- Rx שלהם ל- Rx ו- Tx של ESP8266 בהתאמה.

שלב 9: תחילת העבודה

לאחר יצירת החיבורים, העלה

הגדרת חלל ()

{}

לולאת חלל ()

{}

כלומר סקיצה ריקה לארדואינו..

פתח את הצג הטורי והגדר אותו ל- "הן NL & CR".

נסה את שיעור Baud. בדרך כלל זה צריך להיות 9600 אם כי לפעמים זה עשוי להיות 115200.

שלב 10: פקודות AT

פקודות AT
פקודות AT

פשוט לומר פקודות AT הן פקודות שניתן לשלוח ל- ESP8266 כדי לאפשר לו לבצע כמה פונקציות כגון הפעלה מחדש, התחברות ל- wifi וכו 'ה- ESP בתגובה ישלח אישור כלשהו בצורת טקסט. להלן הסברתי כמה פקודות AT וכיצד ESP מגיב להן. שים לב שבשלוח אני מתכוון להקליד את הפקודה וללחוץ על enter (return).

שלח AT דרך הצג הטורי

פקודה זו משמשת כפקודת בדיקה.

כיצד מגיב ה- ESP: יש להחזיר אישור.

שלח AT+RST דרך הצג הטורי

פקודה זו משמשת להפעלה מחדש של המודול.

כיצד מגיב ה- ESP: ESP מחזיר המון זבל. עם זאת, חפש מוכן או מוכן.

שלח AT+GMR דרך הצג הטורי

פקודה זו משמשת לקביעת גירסת הקושחה של המודול.

כיצד מגיב ה- ESP: יש להחזיר את גרסת הקושחה.

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

שלב 11: תחביר כללי של פקודות AT

התחביר הכללי של פקודות AT לביצוע פונקציות שונות ניתן:

AT+פרמטר =?

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

AT+פרמטר = val

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

פרמטר AT+?

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

כמה פקודות AT עשויות לקחת רק אחד מהסוגים לעיל בעוד שחלקן עשויות לקחת את כל 3.

דוגמה לפקודה אפשרית בכל 3 הסוגים הנ ל היא CWMODE, המשמשת להגדרת מצב ה- wifi.

שלח AT+CWMODE =? דרך המסך הטורי

כיצד מגיב ה- ESP: כל הערכים ש- ESP CWMODE יכול לקחת (1-3) מוחזרים באופן ספציפי +CWMODE (1-3).

1 = סטטי

2 = AP

3 = סטטי וגם AP

שלח AT+CWMODE = 1 דרך הצג הטורי

כיצד מגיב ה- ESP: יש להחזיר אישור אם יש שינוי ב- CWMODE מהערך הקודם שלו והוא מוגדר כסטטי, אחרת אין להחזיר שום שינוי אם אין שינוי בערך CWMODE.

חשוב: אלא אם CWMODE יוגדר כ -1, הפקודות בשלבים המאוחרים יותר לא יפעלו.

לשלוח AT+CWMODE? דרך המסך הטורי

כיצד מגיב ה- ESP: יש להחזיר את הערך הנוכחי של CWMODE, באופן ספציפי אם פעלת לפי השלב לעיל +יש להחזיר CWMODE: 1.

שלב 12: התחברות ל- Wifi

שלח AT+CWLAP דרך הצג הטורי

פקודה זו משמשת לרישום כל הרשתות באזור.

כיצד מגיב ה- ESP: יש להחזיר רשימה של כל נקודות הגישה הזמינות או רשתות ה- wifi.

שלח AT+CWJAP = "SSID", "סיסמה"

(כולל הציטוטים הכפולים).

פקודה זו משמשת להצטרפות לרשת wifi.

כיצד מגיב ה- ESP: יש להחזיר אישור אם המודול היה מחובר לרשת.

לשלוח AT+CWJAP? דרך המסך הטורי

פקודה זו משמשת לקביעת הרשת שאליה מחובר ה- ESP כרגע.

כיצד מגיב ה- ESP: הרשת שאליה מחובר ה- ESP תוחזר. באופן ספציפי +CWJAP: "SSID"

שלח AT+CWQAP דרך הצג הטורי

פקודה זו משמשת לניתוק מהרשת שאליה מחובר ה- ESP כרגע.

כיצד מגיב ה- ESP: ה- ESP עוזב את הרשת שאליה הוא מחובר ואישור מוחזר.

שלח AT+CIFSR דרך הצג הטורי

פקודה זו משמשת לקביעת כתובת ה- IP של ה- ESP.

כיצד מגיב ה- ESP: כתובת ה- IP של ה- ESP מוחזרת.

שלב 13: דיבור הדברים

דברים מדברים
דברים מדברים
דברים מדברים
דברים מדברים
דברים מדברים
דברים מדברים
דברים מדברים
דברים מדברים

אם לא עשית חשבון ב- Thingspeak, צור חשבון עכשיו.

לאחר יצירת חשבון ב- Thingspeak עבור אל אפליקציות> ThingTweet.

קשר איתו את חשבון הטוויטר שלך.

שים לב למפתח ה- API שנוצר.

כאן לאחר שיישום ThingTweet שימש לקישור חשבון טוויטר לחשבון ThingSpeak שלך, תוכל לשלוח ציוץ באמצעות ממשק ה- TweetContol.

ממשק API (ממשק תוכנת יישום) הוא קוד המאפשר לשתי תוכנות לתקשר ביניהן.

כמה ממשקי API אחרים הזמינים למפתחים הם API של מפות Google, API של מזג אוויר פתוח וכו '.

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

שלב 14: עוד כמה פקודות AT

שלח AT+CIPMODE = 0, דרך הצג הטורי

כיצד מגיב ה- ESP: אישור מוחזר.

הפקודה CIPMODE משמשת להגדרת מצב ההעברה.

0 = מצב רגיל

1 = מצב מעבר UART-WiFi

שלח AT+CIPMUX = 1 דרך הצג הטורי

כיצד מגיב ה- ESP: אישור מוחזר.

הפקודה CIPMUX משמשת להגדרת חיבורים בודדים או מרובים.

0 = חיבור יחיד

1 = חיבור מרובה

שלב 15: הגדרת חיבור TCP

הגדרת חיבור TCP
הגדרת חיבור TCP
הגדרת חיבור TCP
הגדרת חיבור TCP

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

שלח AT+CIPSTART = 0, "TCP", "api.thingspeak.com", 80 דרך הצג הטורי

כיצד מגיב ה- ESP: הקישור מוחזר אם נוצר החיבור.

פקודה זו משמשת ליצירת חיבור TCP.

התחביר הוא AT+CIPSTART = מזהה קישור, סוג, IP מרוחק, יציאה מרוחקת

איפה

קישור מזהה = מזהה של חיבור רשת (0 ~ 4), המשמש לחיבור רב.

type = string, "TCP" או "UDP".

IP מרוחק = מחרוזת, כתובת IP מרוחקת (כתובת האתר).

יציאה מרוחקת = מחרוזת, מספר יציאה מרוחק (בדרך כלל נבחר להיות 80).

שלח AT+CIPSEND = 0, 110 דרך הצג הטורי

כיצד מגיב ה- ESP:> (גדול מ) מוחזר אם הפקודה מצליחה.

פקודה זו משמשת לשליחת נתונים.

התחביר הוא AT+CIPSEND = מזהה קישור, אורך

איפה

קישור מזהה = מזהה החיבור (0 ~ 4), עבור חיבור מרובה. מכיוון ש- CIPMUX הוגדר ל -1, הוא 1.

אורך = אורך נתונים, MAX 2048 בתים. באופן כללי בחר מספר גדול עבור האורך.

שלב 16: שליחת הציוץ

שולחת את הציוץ
שולחת את הציוץ

עכשיו לשליחת הציוץ

שלח GET/apps/thingtweet/1/statuses/update? Api_key = yourAPI & status = yourtweet שלך דרך הצג הטורי.

החלף את ה- API שלך במפתח ה- API ואת הציוץ שלך בכל ציוץ שאתה רוצה.

ברגע שאתה שולח את הפקודה למעלה התחל ללחוץ על enter (החזרה) במרווחים של כשניה אחת. לאחר זמן מה, שלח אישור, +IPD, 0, 1: 1 ו- OK יוחזר מה שאומר שהציוץ פורסם.

פתח את הטוויטר שלך ובדוק אם הציוץ פורסם או לא.

שימו לב גם לא ניתן לשלוח את אותו ציוץ שוב ושוב.

המחרוזת למעלה שנשלחה (GET….), היא בקשת GET

בקשת GET משמשת לאחזור נתונים מהשרת הנתון (api.thingspeak.com).

שלב 17: מה לעשות לאחר מכן

(צפה בסרטון ב -360 p לפחות)

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

יש הרבה משאבים גדולים באינטרנט העוסקים ב- ESP8266. הזכרתי כמה מהם כאן:

  • סרטונים של קווין דארה.
  • סרטוני ALLaboutEE.
  • esp8266.com

אתה יכול גם להתנסות יותר בפקודות AT. יש הרבה ממשקי API הזמינים באינטרנט שיכולים לעשות כל מיני דברים כמו למשל להשיג את מזג האוויר, מחירי מניות וכו '.

תיעוד פקודה מלא של AT

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

אם אהבת את ההצבעה שלי להוראה על זה בתחרות כל הדברים בארדואינו.

מוּמלָץ: