Monitorowanie kanałów

Ten moduł zawiera funkcje monitorowania kanału.

Podsumowanie

Funkcje w tym module są dostępne po włączeniu funkcji monitorowania kanału (OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE).

Monitorowanie kanałów powoduje okresowe monitorowanie wszystkich kanałów, aby ułatwić przeprowadzanie przejrzystych kanałów.

Gdy monitorowanie kanału jest aktywne, wykonywane jest zerowe skanowanie energii, zbierając jedną próbkę RSSI dla każdego kanału w odstępach próbki. Próbki RSSI są porównywane ze wstępnie określonym progiem RSSI. Wskaźnik jakości kanału pozwala utrzymać i przedstawiać średnią częstotliwość procentową próbek RSSI (w przybliżeniu) określonego progu próbki (określaną jako obłożenie) na kanale.

Funkcje

otChannelMonitorGetChannelOccupancy(otInstance *aInstance, uint8_t aChannel)
uint16_t
Pobiera bieżące zajęte kanały.
otChannelMonitorGetRssiThreshold(otInstance *aInstance)
int8_t
Ustal próg monitorowania kanału RSSI w dBm.
otChannelMonitorGetSampleCount(otInstance *aInstance)
uint32_t
Pobierz łączną liczbę próbek RSSI na kanał.
otChannelMonitorGetSampleInterval(otInstance *aInstance)
uint32_t
Sprawdzaj odstępy czasu monitorowania kanału w milisekundach.
otChannelMonitorGetSampleWindow(otInstance *aInstance)
uint32_t
Pobierz monitorowanie kanału ze średnią długością okna (liczby próbek).
otChannelMonitorIsEnabled(otInstance *aInstance)
bool
Wskazuje, czy operacja monitorowania kanałów jest włączona i aktywna.
otChannelMonitorSetEnabled(otInstance *aInstance, bool aEnabled)
Włącza lub wyłącza operację monitorowania kanału.

Funkcje

OTChannelMonitorGetChannelOccage

uint16_t otChannelMonitorGetChannelOccupancy(
  otInstance *aInstance,
  uint8_t aChannel
)

Pobiera bieżące zajęte kanały.

Wartość obłożenia kanału reprezentuje średni współczynnik/procent próbek RSSI, które przekroczyły próg RSSI („złe” próbki RSSI).

W pierwszych próbkach „okno próbki” średnia jest utrzymywana jako rzeczywista wartość procentowa (tj. stosunek liczby prób „złej” do łącznej liczby próbek). Po próbkach „window” (średnia) przeciętny użytkownik używa średniej wykładniczej ważonej wykładniej. W praktyce oznacza to, że średnia jest reprezentatywna dla maksymalnie 3 * window ostatnich próbek o najwyższej wadze podanych w ostatnich kSampleWindow próbkach.

Wartość maksymalna (0xffff) oznacza, że wszystkie próbki RSSI były powyżej progu RSSI (tzn. 100% próbek było nieprawidłowych).

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aChannel
Kanał, dla którego jest aktywne pobieranie linku.
Zwroty
Obecna liczba osób na danym kanale.

Próg monitorowania kanałów

int8_t otChannelMonitorGetRssiThreshold(
  otInstance *aInstance
)

Ustal próg monitorowania kanału RSSI w dBm.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwroty
Próg RSSI w dBm.

Monitor kanałów

uint32_t otChannelMonitorGetSampleCount(
  otInstance *aInstance
)

Pobierz łączną liczbę próbek RSSI na kanał.

Wartość wskazuje łączną liczbę próbek na kanał według modułu monitorowania kanału (od włączenia interfejsu sieciowego Thread).

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwroty
Całkowita liczba zrealizowanych próbek RSSI na kanał.

Monitor kanałów

uint32_t otChannelMonitorGetSampleInterval(
  otInstance *aInstance
)

Sprawdzaj odstępy czasu monitorowania kanału w milisekundach.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwroty
Częstotliwość monitorowania kanału w milisekundach.

Monitor kanałów

uint32_t otChannelMonitorGetSampleWindow(
  otInstance *aInstance
)

Pobierz monitorowanie kanału ze średnią długością okna (liczby próbek).

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwroty
Śr. przykładowe okno.

Interfejs OTChannelMonitorIsEnabled

bool otChannelMonitorIsEnabled(
  otInstance *aInstance
)

Wskazuje, czy operacja monitorowania kanałów jest włączona i aktywna.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwroty
TRUE, jeśli operacja monitorowania kanału jest włączona. W przeciwnym razie ma wartość FALSE.

OTChannelMonitorSetEnabled

otError otChannelMonitorSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Włącza lub wyłącza operację monitorowania kanału.

Po rozpoczęciu operacji wszystkie zgromadzone dane zostaną usunięte. Jednak po wyłączeniu tej funkcji zebrane wcześniej dane będą nadal aktywne i będzie można je odczytywać.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aEnabled
TRUE, aby włączyć lub uruchomić operację monitorowania kanału, lub FALSE, aby ją wyłączyć lub zatrzymać.
Wartości zwracane
OT_ERROR_NONE
Zmieniono stan monitorowania kanału
OT_ERROR_ALREADY
Monitorowanie kanałów jest już w tym samym stanie.

Zasoby

Tematy referencyjne interfejsu API OpenThread pochodzą z kodu źródłowego dostępnego w GitHub. Aby dowiedzieć się więcej lub dodać treści do naszej dokumentacji, zapoznaj się z materiałami.