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

הפקודה פשוטה של Arduino LoRa (יותר מ -5 ק"מ): 9 שלבים
הפקודה פשוטה של Arduino LoRa (יותר מ -5 ק"מ): 9 שלבים

וִידֵאוֹ: הפקודה פשוטה של Arduino LoRa (יותר מ -5 ק"מ): 9 שלבים

וִידֵאוֹ: הפקודה פשוטה של Arduino LoRa (יותר מ -5 ק
וִידֵאוֹ: פרויקט אלקטרוניקה _חיישן טמפרטורה . 2024, יולי
Anonim
הצהרת Arduino LoRa פשוטה (יותר מ -5 ק
הצהרת Arduino LoRa פשוטה (יותר מ -5 ק

אנו הולכים לבדוק את E32-TTL-100 עם הספרייה שלי. זהו מודול משדר אלחוטי, פועל במהירות 410 441 מגה -הרץ (או 868 מגה -הרץ או 915 מגה -הרץ) המבוסס על RFIC SX1278 המקורי של SEMTECH, קיימת שידור שקוף, ברמת TTL. המודול מאמץ טכנולוגיית ספקטרום רחב של LORA.

אספקה

  • ארדואינו UNO
  • מכשירי LoRa e32

אופציונאלי

  • מגן Mischianti Arduino LoRa (קוד פתוח)
  • מגן Mischianti WeMos LoRa (קוד פתוח)

שלב 1: מפרט התקנים

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

  • גודל המודול: 21*36 מ"מ
  • סוג אנטנה: SMA-K (עכבה 50Ω)
  • מרחק שידור: 3000m (מקסימום)
  • הספק מרבי: 2dB (100mW)
  • תעריפי אוויר: 2.4Kbps (6 רמות אופציונאליות (0.3, 1.2, 2.4, 4.8, 9.6, 19.2kbps)
  • אורך פליטה: 512ByteReceive
  • אורך: 512 בייט
  • ממשק תקשורת: UART - 8N1, 8E1, 8O1,
  • שמונה סוגים של קצב שידור UART, מ- 1200 עד 115200bps (ברירת מחדל: 9600)
  • תמיכה ב- RSSI: אין (עיבוד חכם מובנה)

שלב 2: סוג שידור

סוג תיבת הילוכים
סוג תיבת הילוכים

שידור שקוף זה יכול להיחשב כמו "מצב הדגמה", כברירת מחדל אתה יכול לשלוח הודעה לכל המכשיר של אותה כתובת וערוץ מוגדרים.

שידור קבוע

סוג שידור זה אתה יכול לציין כתובת וערוץ שאליו אתה רוצה לשלוח את ההודעה. תוכל לשלוח הודעה ל:

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

שלב 3: מצב התקן

מצב רגיל שלח הודעה.

מצב השכמה ומצב חיסכון בחשמל

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

תכנית/מצב שינה

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

שלב 4: מכשיר חיווט

מכשיר חיווט
מכשיר חיווט
מכשיר חיווט
מכשיר חיווט

כאן סכמת החיבור של המכשיר, זהו חיבור מלא, עם ניהול של הרשאות סיכה M0 ו- M1 לשנות את אופן ההתקן, כך שתוכל לעבור למצב תצורה או להתעורר עם התוכנית, הספרייה תעזור לך בכל זה פעולה.

שלב 5: תצורה

תְצוּרָה
תְצוּרָה

קיים פקודה שצוינה כדי להגדיר ולקבל תצורה

הגדרת void () {Serial.begin (9600); עיכוב (500); // הפעלת כל הסיכות ו- UART e32ttl100.begin (); ResponseStructContainer c; c = e32ttl100.getConfiguration (); // חשוב לקבל מצביע תצורה לפני כל הפעולות האחרות תצורת תצורה = *(תצורה *) c.data; Serial.println (c.status.getResponseDescription ()); Serial.println (c.status.code); printParameters (תצורה); ResponseStructContainer cMi; cMi = e32ttl100.getModuleInformation (); // חשוב לקבל מצביע מידע לפני כל הפעולות האחרות ModuleInformation mi = *(ModuleInformation *) cMi.data; Serial.println (cMi.status.getResponseDescription ()); Serial.println (cMi.status.code); printModuleInformation (mi); }

שלב 6: תצורת התצורה

והתוצאה הופכת

התחל הצלחה 1 ---------------------------------------- פח ראש: 11000000 192 C0 AddH BIN: 0 AddL BIN: 0 Chan BIN: 23 -> 433MHz SpeedParityBit BIN: 0 -> 8N1 (ברירת מחדל) SpeedUARTDataRate BIN: 11 -> 9600bps (default) SpeedAirDataRate BIN: 10 -> 2.4kbps (default) OptionTrans BIN: 0 - > שידור שקוף (ברירת מחדל) OptionPullup BIN: 1 -> TXD, RXD, AUX הם Push -pulls/pull -ups OptionWakeup BIN: 0 -> 250ms (default) OptionFEC BIN: 1 -> הפעל מתג תיקון שגיאות קדימה (ברירת מחדל) BIN של OptionPower: 0-> 20dBm (ברירת מחדל) ---------------------------------------- הצלחה 1 ---------------------------------------- פח ראש: 11000011 195 C3 דגם מס.: 32 גירסה: 44 תכונות: 14 ----------------------------------------

שלב 7: שלח הודעה

לשלוח הודעה
לשלוח הודעה

לפניכם סקיצה פשוטה לשלוח הודעה לכל המכשיר המחובר לערוץ

לולאת void () {// אם משהו זמין אם (e32ttl100.available ()> 1) {// קרא את הודעת המחרוזת ResponseContainer rc = e32ttl100.receiveMessage (); // האם משהו משתבש שגיאת הדפסה אם (rc.status.code! = 1) {rc.status.getResponseDescription (); } אחר {// הדפס את הנתונים שהתקבלו Serial.println (rc.data); }} if (Serial.available ()) {String input = Serial.readString (); e32ttl100.sendMessage (קלט); }}

שלב 8: מגן עבור Arduino

מגן לארדואינו
מגן לארדואינו

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

ואני משחרר את זה כפרויקט קוד פתוח כאן

www.pcbway.com/project/shareproject/LoRa_E32_Series_device_Arduino_shield.html

שלב 9: ספרייה

סִפְרִיָה
סִפְרִיָה

מאגר GitHub

פורום תמיכה

תיעוד נוסף

מוּמלָץ: