כיצד לחבר צומת LoRaWAN ל-TTN שלב אחר שלב

העדכון אחרון: 25 ינואר 2026
מחבר: TecnoDigital
  • LoRaWAN דורש שער מוגדר כראוי (תדר, רשת IP, שרת) ורישום ב-TTN כדי שצמתים יוכלו לתקשר.
  • התקני קצה נרשמים ביישומי TTN באמצעות DevEUI, JoinEUI/AppEUI ו-AppKey (OTAA) או NWKSKEY/APPSKEY/DEVADDR (ABP).
  • ניתן להשתמש בחיישנים מסחריים (SenseCAP, Decentlab, Dragino, Tabs) או צמתים DIY עם ESP32/Arduino וספריית LMIC כדי לשלוח נתונים ל-TTN.
  • TTN מאפשרת אינטגרציות עם Node-RED ופלטפורמות חיצוניות כדי להציג ולנצל נתוני IoT שנאספו על ידי רשת LoRaWAN.

חבר את צומת LoRaWAN ל-TTN

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

בשורות הבאות תראו, שלב אחר שלב, כיצד הגדר שער, רשום אותו ברשת The Things, רשום יישומים ומכשירי קצה ותכנת צמתי LoRaWAN מבוסס על לוחות ESP32 או מסוג Arduino, כמו גם דוגמאות עם חיישנים מסחריים (SenseCAP, Decentlab, Dragino, Tabs Browan). נסקור גם פרטים מעשיים שלא תמיד נמצאים במדריכים: בעיות נפוצות בחיבור מקשים, בחירת תדר, חיבורי פינים פיזיים וטריקים כדי לוודא שהכל אכן מתקשר עם TTN.

מהם LoRa ו-LoRaWAN, ומדוע להשתמש ב-TTN?

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

ברשת LoRaWAN טיפוסית יש לנו שני מרכיבים עיקריים: שערים וצמתיםשערים משמשים כ"גשרים" בין עולם ה-LoRa (רדיו) לעולם ה-IP (אינטרנט), ומעבירים חבילות לשרת ה-LoRaWAN. צמתים הם החיישנים או המפעילים ששולחים ומקבלים מידע באמצעות LoRa לשערים אלה.

כדי לחבר את כל זה, אתם צריכים שרת LoRaWAN. אתם יכולים תשלום עבור שירות פרטי (מפעילים כמו Movistar, Vodafone או פלטפורמות כמו Loriot, Actility, Kerlink) או ללכת בדרך הקהילתית באמצעות רשת הדברים (TTN), שהיא רשת ציבורית ופתוחה המתוחזקת על ידי הקהילה.

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

תדרים, ערוצים ומגבלות של LoRaWAN

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

באירופה, משתמשים בעיקר בשיטות הבאות: תחום תדרים 868 מגה-הרץ (EU868)בארצות הברית, תחום התדרים הטיפוסי הוא 915 מגה-הרץ (US915). חנויות סיניות מציעות מגוון רחב של מודולים של 433 מגה-הרץ, שעשויים להיות מפתים בשל מחירם, אך הם לא תמיד תואמים ל-LoRaWAN או למדינתכם.

בנוסף לתדר, LoRaWAN מאורגן ל ערוצים, גורם התפשטות (SF) ותוכניות תדריםSF מגדיר מהירות וטווח: SF גבוה יותר פירושו טווח גדול יותר אך זמן רב יותר באוויר, אשר צורך יותר אנרגיה ותופס יותר ערוץ.

באירופה, המפורסם "כלל ה-1%"כל מכשיר יכול לתפוס את ערוץ הרדיו רק באחוז קטן מהזמן, בדרך כלל בסביבות 1%. זה מגביל את התדירות שבה ניתן לשלוח נתונים, וזו אחת הסיבות לכך שחיישני LoRaWAN בדרך כלל משדרים כל כמה דקות, לא כל כמה שניות.

הכנות ובחירת חומרה עבור שער וצמתים

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

אחד הדגמים הנפוצים ביותר עבור שער פנימי הוא ה- דרגינו LPS8הוא משלב רכז SX1308 ומאפשר עד 10 ערוצים מקבילים. הוא מגיע מוגדר מראש עם תוכניות תדרים שונות בהתאם למדינה, ובאירופה הוא יפעל בתדר 868 מגה-הרץ. הוא מופעל על ידי 5V דרך USB-C ומתחבר לרשת ה-IP דרך RJ-45 או Wi-Fi.

דוגמאות נוספות לשערים שמתאימים היטב ל-TTN הן ה- RAK7289 (לשימוש חיצוני, עמיד ועם אפשרות LTE/4G) או שערי TTN-GW-868 MHz הרשמיים, שנועדו לפרוס כיסוי בערים או בפרויקטים של ערים חכמות. ניתן גם להגדיר שער תא בודד עם לוח ESP32 ומודול LoRa SX1262, כפי שנעשה עם ערכת Wio-SX1262 יחד עם XIAO ESP32S3.

כצמתים יש לכם שני נתיבים: השתמש בחיישנים זמינים מסחרית שכבר מוגדרים עבור LoRaWAN (SenseCAP S210x, Tabs Browan TBHH100, Dragino TrackerD, Decentlab וכו') או לבנות צמתים משלכם עם לוחות פיתוח כגון TTGO LoRa32 V2.0, ESP32 + RMF95, מודול Arduino + LoRa וכו'.

הגדרת שער LoRaWAN וחיבורו ל-TTN

הבלוק העיקרי הראשון של הפרויקט הוא הפעל את השער וקבל את ההודעה "Connected" (מחובר) ב-TTNלמרות שלכל יצרן יש פאנל משלו, השלבים הקונספטואליים דומים מאוד.

עם Dragino LPS8, לדוגמה, אתה יכול לנהל אותו באמצעות SSH או HTTPאם תחברו אותו באמצעות כבל RJ-45, תצטרכו לברר את כתובת ה-IP שהוקצתה על ידי שרת ה-DHCP (באמצעות סורק IP או דרך הנתב שלכם). אם אתם מעדיפים הגדרה ראשונית דרך Wi-Fi, ה-LPS8 יוצר רשת משלו עם SSID כמו "dragino-xxxxx" וסיסמת ברירת המחדל "dragino+dragino". גישה לכתובת ה-IP 10.130.1.1 תעביר אתכם לפאנל האינטרנט, שבו שם המשתמש והסיסמה הראשוניים הם בדרך כלל "admin/dragino".

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

  משחזר Wifi: הגדרות לשיפור הביצועים

לאחר מכן הקש על הכרטיסייה LoRaWAN או שרת רשתכאן תגדירו לאיזה שרת LoRaWAN יתחבר השער. עבור TTN, בחרו "TTN" כספק וזינו את כתובת השרת האירופי (לדוגמה, eu1.cloud.thethings.network), תוך שמירה על פורטי UDP (בדרך כלל 1700 גם להעלאה וגם להורדה). באותו סעיף, תראו את מזהה השער או EUI, שנצטרך בהמשך ב-TTN.

במקטע הרשת אתה מגדיר איך השער מתחבר לאינטרנט?LAN, WAN או WiFi WAN. עבור ממשק ה-WAN, ניתן לבחור כתובת IP סטטית או DHCP; במידת האפשר, מומלץ להשתמש בכתובת IP סטטית קווית לחיבור יציב יותר וגישה ניהולית קלה יותר. ממשק ה-LAN משמש בדרך כלל עבור רשת נקודות הגישה הפנימית של השער; עדיף לא לשנות אותו מבלי להבין היטב מה אתם עושים, מכיוון שהוא יכול להיות חבל ההצלה שלכם אם משהו משתבש.

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

בשערי RAK7289, הרעיון דומה: אתה נכנס לפאנל האינטרנט, אתה מגדיר את ה-IP (סטטי או DHCP) דרך רשת → ממשק WAN לאחר מכן, ב-LoRa Network → Network Settings → Packet Forwarder, הזינו את פרטי שרת ה-TTN ורשום את EUI של ה-Gateway כדי לרשום אותו ב-TTN מאוחר יותר. אם אתם מאחורי נתב המספק DHCP, תוכלו למצוא את כתובת ה-IP של ה-gateway על ידי עיון בטבלת החכירה (לפי שם מארח, לדוגמה, "RAK7289") או באמצעות כלים כמו nmap.

רישום שער ברשת The Things

ברגע שלשער יש גישה לאינטרנט, הגיע הזמן... לרשום אותו/אותה ב-TTNאם אין לך חשבון, הירשם תחילה באתר האינטרנט של The Things Network ולאחר מכן גש לקונסולה באזור המתאים (לדוגמה https://eu1.cloud.thethings.network/).

בתוך הקונסולה, אתה בוחר את הסעיף שערים ולחצו על "הרשמה לשער"TTN יבקש ממך מזהה שער (שם ייחודי בחשבונך) ובהתאם לסוג השער, את מזהה ה-EUI של השער. עבור שערי Dragino LPS8 המשתמשים בהעברת מנות קלאסית, עליך לבחור באפשרות "אני משתמש בהעברת מנות מדור קודם".

בנוסף, תציין את תוכנית תדרים (EU868 לאירופה), האזור או הנתב המתאימים, ובאופן אופציונלי, המיקום (קואורדינטות, פנים/חוץ וכו'). בשערים כמו זה בעל תא בודד עם XIAO ESP32S3 ו-Wio-SX1262, הקושחה עצמה עשויה להציג את מזהה השער דרך היציאה הטורית בעת ההפעלה; פשוט העתיקו אותו והשתמשו בו בטופס הרישום.

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

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

יצירת אפליקציה ורישום צמתים ב-TTN

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

במסוף TTN, אתה ניגש לקטע יישומים ויצירת יישום חדשאתם נותנים לו מזהה ייחודי, אופציונלי תיאור, ובוחרים את האזור המתאים. בתוך יישום זה, תרשום כל צומת LoRaWAN עם האישורים שלו (DevEUI, JoinEUI/AppEUI, ו-AppKey או מפתחות אחרים בהתאם לשיטת ההפעלה).

עבור חיישנים מסחריים כגון לשוניות חומות TBHH100-868 חיישני טמפרטורה ולחות מחוברים בדרך כלל למדבקה עם DevEUI, AppEUI ו-AppKey. הם בדרך כלל משתמשים בשיטת OTAA (Over-The-Air Activation), היוצרת סשנים מרכזיים עם כל הצטרפות לרשת, מה שהופך אותה לבטוחה יותר מ-ABP.

עם OTAA, ב-TTN אתה בוחר לרשום מכשיר קצה חדש. אתם מציגים את JoinEUI (AppEUI), DevEUI ו-AppKeyאתם בודקים שוב את הנתונים ומאשרים. לאחר השמירה, אם הצומת מוגדר כהלכה ונמצא בטווח של שער, הוא יראה את משואות הרשת, יבצע את הליך ההצטרפות ותתחילו לראות הודעות uplink עם המידות שלהן בקונסולה.

אותו הדבר חל גם על חיישנים כמו רמת טמפרטורה וטמפרטורה של Decentlabהיצרן מספק את ה-ID, DevEUI, AppEUI ו-AppKey, אך אינו יודע מראש באיזה שרת תשתמשו. אתם אחראים לרשום מידע זה ב-TTN (או בשרת אחר) כדי שניתן יהיה לרשום את החיישן. מכשירי Decentlab רבים מגיעים רשומים מראש ב-TTN אם תבקשו זאת, מה שמפשט עוד יותר את התהליך.

הגדרת חיישני LoRaWAN מסחריים

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

בסדרת SenseCAP S210x (למשל, חיישני סביבה), תהליך העבודה האופייני הוא שימוש ב- אפליקציית SenseCraft של היצרןראשית, מורידים את האפליקציה, מפעילים את החיישן בעזרת כפתור (מחזיקים אותו לחוץ למשך מספר שניות עד שהנורית מהבהבת כל שנייה) ובאפליקציה בוחרים "סרוק" כדי לקרוא את קוד ה-QR של המכשיר.

בתוך האפליקציה יש מצב ל "תצורה מתקדמת" שבה תבחרו ב"רשת הדברים" כפלטפורמהעליך לבחור את אותה תוכנית תדרים כמו השער שלך (לדוגמה, EU868) ולוודא שמצב ההצטרפות הוא OTAA. האפליקציה תציג את מספר ה-EUI של המכשיר, את מספר ה-AppEUI (JoinEUI) ואת מספר ה-AppKey; מומלץ לרשום פרטים אלה מכיוון שתצטרך להזין אותם ב-TTN בעת רישום המכשיר.

במקרה של לשוניות חיישן Browan TBHH100-868המקשים מגיעים מוגדרים מראש מהמפעל. החיישן מודד טמפרטורה ולחות, מופעל על ידי סוללה של 3,6V, ומשדר לפי הכללים הבאים: כל 60 דקות אם אין שינוי, או מוקדם יותר אם הטמפרטורה משתנה ב-±2°C או הלחות ב-±5%. כדי לרשום אותו, פשוט הזינו את APPKey, APPEUI ו-DevEUI המסופקים על ידי היצרן לשרת ה-LoRaWAN שלכם (TTN, לדוגמה). לפעמים עשויה להיות בעיה בעיצוב או בסדר הבייטים (msb/lsb), לכן חשוב לבדוק זאת אם הוא לא מתחבר בפעם הראשונה.

  מהו שרת SIM: מדריך מלא לאירוח, eSIM ומקרי שימוש

ل עוקבים אחר Dragino TrackerD הם משמשים כעוקב GPS עם לחצן מצוקה. לכל יחידה יש ​​סט משלה של מפתחות LoRaWAN. ב-TTN, הם בדרך כלל רשומים באותה אפליקציה (למשל, "מעקב אחר מסלול"), והמכשיר מוגדר, במידת הצורך, דרך יציאה טורית (USB) באמצעות פקודות AT. התיעוד מפרט פקודות להתאמת קצב השידור, התנהגות האזעקה וכו'. חשוב: קושחות Dragino רבות דורשות להדביק את פקודות AT במלואן לתוך הטרמינל, ולא להקליד תו אחר תו.

בחיישנים כמו ה- Decentlab לנתוני מפלס, לחץ או סביבה.הפילוסופיה דומה: DevEUI, AppEUI ו-AppKey משמשים לחיבור ל-TTN (או לרשת אחרת). Decentlab בדרך כלל קובעת מרווח שידור של 10 דקות מכיוון שזו פשרה מוכחת בין צריכת נתונים לרזולוציה, אם כי ניתן לשנות זאת לפי בקשה או באמצעות תצורה. משתמשים יכולים לצפות בנתונים בפלטפורמת הענן של היצרן או לשלב את המכשיר בפלטפורמות של צד שלישי (MyDevices, ResIoT, WMW וכו') על ידי הוספת מפענח המטען המתאים.

בנה צומת LoRaWAN משלך עם חומרה בקוד פתוח

אם אתם אוהבים להתעסק, בדרך כלל הכי כיף הוא... בנה ותכנת את צומת ה-LoRaWAN שלךשילוב פופולרי מאוד הוא שימוש בלוח מבוסס ESP32 עם LoRa משולב, כגון TTGO LoRa32 V2.0 868 MHz, והוספת חיישן פשוט, לדוגמה חיישן טמפרטורה DS18B20.

גישה זו דורשת ארבעה חלקים: לוח הבקרה (ESP32, Arduino וכו'), מודול הרדיו LoRa (לדוגמה RFM95 מסוג SX1276/78), החיישן שברצונך למדוד ובאופן אופציונלי, ציוד היקפי כגון מסך OLED להצגת נתונים באופן מקומי.

ה-TTGO LoRa32 V2.0 מגיע עם משדר-מקלט LoRa משולב, ובהתאם לגרסה, צג OLED קטן. בהתבסס על ESP32, הוא מספק WiFi ו-Bluetooth, ובמקרים רבים מושלם גם לבניית שער מיני בעל ערוץ יחיד כאשר הוא מחובר לאינטרנט. עם זאת, בלוח זה ובלוחות דומים, חלק מהאותות ממודול LoRa (DIO1, DIO2) אינם מחוברים למיקרו-בקר ותצטרך לחבר אותם בעצמך.

לדוגמה, קוד הפינים הבא עבור LoRa נפוץ ב-TTGO LoRa32 V2.0: SCK על GPIO5, MISO על GPIO19, MOSI על GPIO27, CS על GPIO18, RESET על GPIO14 ו-DIO0 על GPIO26עבור DIO1 ו-DIO2, הם בדרך כלל מחוברים פיזית ל-GPIO33 ו-GPIO32, בהתאמה, הממוקמים זה מול זה בשורה הנגדית, מה שמקל מאוד על ביצוע מגשר ישיר.

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

תוכנת צומת: ספריית LMIC, מפתחות תדר ו-TTN

כדי לתכנת צומת LoRaWAN על Arduino/ESP32, משתמשים לעתים קרובות בפעולות הבאות: חנות הספרים MCCI LoRaWAN LMIC, אשר מיישם את מחסנית LoRaWAN ומנהל את כל מה שקשור לערוצים, הצטרפות, ניסיונות חוזרים, חלונות קבלה וכו'.

ראשית עליך להתקין את הספרייה מה- מנהל ספריית IDE של ארדואינו חפשו "LMIC" ובחרו "MCCI LoRaWAN LMIC library". לאחר ההתקנה, יש פרט קריטי: כברירת מחדל הוא מוגדר עבור US915 (ארצות הברית), כך שאם אתם באירופה עליכם לשנות אותו ל-EU868.

בשביל זה, תחפש את הקובץ lmic_project_config.h בתוך תיקיית הספרייה (משהו כמו /Arduino/libraries/MCCI_LoRaWAN_LMIC_library/project_config/) וערוך את ההגדרות. תסיר את CFG_us915 ​​מהערות ותאפשר את CFG_eu868, וגם תאפשר את סוג הרדיו הנכון (לדוגמה, CFG_sx1276_radio עבור מודולים SX1276/78). זהו שינוי חד פעמי שחל על כל פרויקטי ה-LMIC שלך.

לאחר מכן אתה פותח אחת מהדוגמאות הכלולות, לדוגמה ttn-abpאשר שולח מעת לעת את הודעת "שלום עולם!" כמטען. דוגמה זו משמשת כבסיס להתאמתה ללוח שלך ולאישורי ה-TTN שלך.

בקוד תראו מבנה lmic_pinmap שבו מצוינים פיני NSS (CS), RST ו-DIO.כברירת מחדל, הוא בדרך כלל ממופה עבור Feather M0 LoRa, כך שאם אתם משתמשים ב-TTGO LoRa32 V2.0, תצטרכו לשנות מבנה זה כדי להשתמש ב-.nss = 18, .rst = 14, ו-.dio = {26, 33, 32} (בהנחה שחיברתם את DIO1 ל-GPIO33 ואת DIO2 ל-GPIO32). אם החומרה שלכם שונה, תצטרכו לבדוק את התיעוד שלה או למצוא דוגמה ספציפית.

לאחר שה-pinout נכון, שחק הגדר את המפתחות שמזהים את הצומת שלך ב-TTNבדוגמת ttn-abp, המשתנים NWKSKEY, APPSKEY ו-DEVADDR מופיעים עם המילה FILLMEIN כך שתוכלו למלא אותם בערכים שלכם.

אתה מקבל מידע זה מקונסולת TTN בעת יצירת מכשיר עם הפעלת ABP. TTN מציע לך מפתח סשן רשת (NWKSKEY), מפתח סשן אפליקציה (APPSKEY) וכתובת מכשיר (DEVADDR)בממשק, המפתחות מוסתרים מסיבות אבטחה, אך ניתן להראות אותם, ובאופן שימושי ביותר, ניתן להעתיק את הערך ישירות בפורמט מערך C (באמצעות כפתור "<>") עם סדר הבייטים הנכון (msb). לחיצה על סמל ההעתקה מעתיקה את המערך ללוח, וניתן פשוט להדביק אותו בקוד שבו נמצא כל FILLMEIN.

עבור NWKSKEY ו-APPSKEY תשתמשו ב- פורמט מערך בתים ש-TTN מספקעבור DEVADDR, תגדיר את הערך ההקסדצימלי כמספר שלם יחיד מסוג u4_t, לדוגמה, `static const u4_t DEVADDR = 0x26011111;`. פעולה זו תאפשר לצומת שלך לאמת ולנתב את החבילות שלו ליישום TTN שלך.

שלב חיישנים בקוד הצומת

ברגע ששלד ה-LoRaWAN עובד, הגיע הזמן... החליפו את ה"שלום עולם!" הטיפוסי בנתוני חיישנים אמיתייםבהמשך לדוגמה של ה-TTGO LoRa32 וה-DS18B20, אתם משתמשים באפיק OneWire ובספריית DallasTemperature.

  כיצד להגדיר Wake on LAN כדי להפעיל את המחשב מרחוק

בתחילת הסקיצה אתה כולל את הכותרות ומגדיר את פין האוטובוס: #לִכלוֹל , #כלול ו-#define ONE_WIRE_BUS Xכאשר X הוא ה-GPIO שאליו חיברת את החיישן. אתה יוצר את אובייקט OneWire oneWire(ONE_WIRE_BUS) ואת DallasTemperature sensor(&oneWire). אם ספריית DS18B20 לא מותקנת, הוסף אותה ממנהל הספריות.

בפונקציית setup() מאתחלים את החיישן באמצעות sensor.begin() ואם תרצו, תוכלו להגדיר את הרזולוציה (לדוגמה sensor.setResolution(11))מאותו רגע ואילך, החיישן מוכן לקרוא את הטמפרטורה בכל עת שתזדקק לה.

הפונקציה המרכזית ב-LMIC לשליחת נתונים היא `do_send(osjob_t* j)`. בפנים, תראו בדיקה לשידור מתמשך (`OP_TXRXPEND`). אם אין כזה, תתקשרו ל-`sensor.requestTemperatures()`, תשיגו את הערך באמצעות `sensor.getTempCByIndex(0)`, ותאחסנו אותו במערך `mydata`. לדוגמה, תוכלו להשתמש ב-`mydata[0] = (uint8_t)sensor.getTempCByIndex(0);` כדי לשלוח רק את החלק השלם.

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

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

הפעלה, אבטחה וניסיון מעשי של OTAA

עד כה דיברנו בעיקר על ABP עבור דוגמאות קוד, אבל בסביבת הייצור מומלץ מאוד להשתמש ב-OTAA (הפעלה אלחוטית)OTAA היא השיטה בה משתמשים, למשל, חיישני Decentlab וחיישני SenseCAP רבים, משום שהיא מחזקת את האבטחה.

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

בקונסולת TTN, בעת בחירת OTAA עבור מכשיר, במקום NWKSKEY ו-APPSKEY סטטיים יהיה לך DevEUI, JoinEUI/AppEUI ו-AppKeyמפתחות סשן נבנים בכל פעם מערכים אלה ומהחילופין עם השרת, ותראו את המפתחות הנגזרים רק למשך הסשן.

בפועל, משתמשים שהתחילו מאפס עם LoRaWAN גילו ש עם שער רשום ב-TTN וחיישן OTAA שתצורתו נקבעה כראוי, תהליך הרישום יכול להיות פשוט מאוד.צור חשבון ב-TTN, הפעל את השער, רשום את החיישן באמצעות המפתחות שסופקו על ידי היצרן, ובתוך מספר דקות צפה בנתונים בפלטפורמת אינטרנט (בין אם של Decentlab, SenseCAP או לוחות מחוונים של צד שלישי).

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

מ-TTN ליישומים שלך: אינטגרציות וויזואליזציה

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

גישה נפוצה מאוד היא שימוש Node-RED לקבלת נתונים מ-TTN ולעיבודם כרצונךאתה מגדיר חיבור MQTT או HTTP עם פרטי הגישה של אפליקציית TTN, מפענח את המטען (בהתאם לפורמט החיישנים שלך) ומשם אתה יכול לעשות כמעט הכל: לשמור במסדי נתונים, להציג גרפים, להפעיל התראות וכו'.

אפשרות נוספת היא להשתמש פלטפורמות צד שלישי שכבר משתלבות עם TTNכגון Datacake, MyDevices, ResIoT, WMW ואחרים. לרבים מהם כבר יש תבניות ספציפיות למכשירים כמו חיישני Decentlab או כמה דגמים של Dragino, כך שאתם רק צריכים לבחור את סוג המכשיר, לקשר אותו לאפליקציית TTN שלכם ולהתחיל לצפות בנתונים בלוחות מחוונים "ידידותיים למשתמש".

בפרויקטים חינוכיים, לדוגמה, TTN שימש בשילוב עם שערי RAK7289 ועוקבי Dragino TrackerD לאיתור אנשים או כלי רכב. תהליך העבודה הוא: שער רשום, עוקבים רשומים ב-TTN, נתונים מוצגים בקונסולה, ולאחר מכן מוצגים בזמן אמת בלוח מחוונים ציבורי של Datacake עם מפות וגרפים של מיקום, רמת סוללה וכו'.

הדבר החשוב הוא להבין ש TTN פועל כשכבת רשת LoRaWAN ונתב נתוניםאתם מחליטים על שכבת היישום והוויזואליזציה: החל מסקריפט Python שצורך את ה-API ועד לפלטפורמת נתונים תעשייתית של IoT.

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