ניטור ערוץ

המודול הזה כולל פונקציות של תכונות למעקב אחר הערוץ.

סיכום

הפונקציות במודול הזה זמינות כאשר התכונה 'מעקב אחר הערוץ' (OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE) מופעלת.

הערוץ יעקוב אחר כל הערוצים מדי פעם כדי לקבוע אילו ערוצים נקיים יותר (ערוצים פחות הפרעה).

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

פונקציות

otChannelMonitorGetChannelOccupancy(otInstance *aInstance, uint8_t aChannel)
uint16_t
מקבל את התפוסה הנוכחית של הערוץ בערוץ נתון.
otChannelMonitorGetRssiThreshold(otInstance *aInstance)
int8_t
קבלת סף RSSI למעקב אחר ערוץ ב-dBm.
otChannelMonitorGetSampleCount(otInstance *aInstance)
uint32_t
קבלת המספר הכולל של דגימות RSSI לערוץ (לערוץ).
otChannelMonitorGetSampleInterval(otInstance *aInstance)
uint32_t
קבלת מרווח לדוגמה של ניטור ערוץ באלפיות שנייה.
otChannelMonitorGetSampleWindow(otInstance *aInstance)
uint32_t
אורך הממוצע של חלון הדגימה למעקב אחר הערוץ (מספר הדגימות).
otChannelMonitorIsEnabled(otInstance *aInstance)
bool
פונקציה זו מציינת אם הפעולה של מעקב אחר הערוצים מופעלת ופועלת.
otChannelMonitorSetEnabled(otInstance *aInstance, bool aEnabled)
פונקציה זו מפעילה או משביתה את הפעולה של ניטור הערוץ.

פונקציות

OTChannelMonitorGetChannelOccupancy

uint16_t otChannelMonitorGetChannelOccupancy(
  otInstance *aInstance,
  uint8_t aChannel
)

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

ערך התפוסה בערוץ מייצג את השיעור הממוצע/האחוזים של דגימות RSSI שהיו מעל לסף RSSI ("bad" דגימות RSSI).

עבור הדגימה &&חלון;דגימה ראשונה; דוגמאות, האחוז הממוצע נשמר כאחוז בפועל (כלומר, יחס של מספר &מירכאות;Bad" דגימות לפי המספר הכולל של הדגימות). אחרי "window" הממוצע, משתמש בממוצע הממוצע המשוקלל בצורה מחושבת. בפועל, פירוש הדבר שהממוצע מייצג עד 3 * window דוגמאות אחרונות, עם המשקל הגבוה ביותר שניתן לדגימות האחרונות מ-kSampleWindow.

הערך המקסימלי של 0xffff מציין שכל דגימות ה-RSSI היו מעל סף RSSI (כלומר 100% מהדגימות היו "bad").

פרטים
פרמטרים
[in] aInstance
מצביע על מופע של OpenThread.
[in] aChannel
הערוץ שעבורו ניתן לקבל את תפוסת הקישור.
החזרות
התפוסה הנוכחית בערוץ בכל ערוץ.

סף otChannelMonitorGetRssi

int8_t otChannelMonitorGetRssiThreshold(
  otInstance *aInstance
)

קבלת סף RSSI למעקב אחר ערוץ ב-dBm.

פרטים
פרמטרים
[in] aInstance
מצביע על מופע של OpenThread.
החזרות
סף RSSI ב-dBm.

otChannelMonitorGetSampleCount

uint32_t otChannelMonitorGetSampleCount(
  otInstance *aInstance
)

קבלת המספר הכולל של דגימות RSSI לערוץ (לערוץ).

הספירה מציינת את המספר הכולל של הדגימות לכל ערוץ לפי מודול מעקב אחר הערוץ מאז תחילתו (מאחר שממשק הרשת Thread הופעל).

פרטים
פרמטרים
[in] aInstance
מצביע על מופע של OpenThread.
החזרות
המספר הכולל של דגימות RSSI (לכל ערוץ) עד כה.

otChannelMonitorGetSampleInterval

uint32_t otChannelMonitorGetSampleInterval(
  otInstance *aInstance
)

קבלת מרווח לדוגמה של ניטור ערוץ באלפיות שנייה.

פרטים
פרמטרים
[in] aInstance
מצביע על מופע של OpenThread.
החזרות
מרווח לדוגמה של מעקב אחר ערוץ באלפיות שנייה.

otChannelMonitorGetSampleWindow

uint32_t otChannelMonitorGetSampleWindow(
  otInstance *aInstance
)

אורך הממוצע של חלון הדגימה למעקב אחר הערוץ (מספר הדגימות).

פרטים
פרמטרים
[in] aInstance
מצביע על מופע של OpenThread.
החזרות
חלון הדגימה הממוצע.

otChannelMonitorIsEnabled

bool otChannelMonitorIsEnabled(
  otInstance *aInstance
)

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

פרטים
פרמטרים
[in] aInstance
מצביע על מופע של OpenThread.
החזרות
TRUE אם הפעולה של ניטור הערוץ מופעלת, אחרת FALSE.

otChannelMonitorSetEnabled

otError otChannelMonitorSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

פונקציה זו מפעילה או משביתה את הפעולה של ניטור הערוץ.

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

פרטים
פרמטרים
[in] aInstance
מצביע על מופע של OpenThread.
[in] aEnabled
TRUE כדי להפעיל/להפעיל את פעולת ניטור הערוץ, FALSE כדי להשבית/להפסיק אותה.
ערכי החזרה
OT_ERROR_NONE
מצב ניטור הערוץ השתנה בהצלחה
OT_ERROR_ALREADY
ניטור הערוץ כבר נמצא באותו מצב.

מקורות מידע

נושאי עזר של OpenThread API מגיעים מקוד המקור, שזמין ב-GitHub. למידע נוסף או כדי להוסיף מידע למסמכים שלנו, יש לעיין במשאבים.