Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

채널 모니터링

이 모듈에는 채널 모니터링 기능을 위한 함수가 포함되어 있습니다.

요약

이 모듈의 함수는 채널 모니터 기능 (OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE)이 사용 설정된 경우에 사용할 수 있습니다.

채널 모니터링은 모든 채널을 정기적으로 모니터링하여 원활한 채널 (간섭이 적은 채널)을 결정하는 데 도움이 됩니다.

채널 모니터링이 활성화되면 기간 0의 에너지 검색으로 샘플 간격마다 모든 채널에서 단일 RSSI 샘플을 수집합니다. RSSI 샘플은 사전 지정된 RSSI 임곗값과 비교됩니다. 채널 모니터링 모듈은 채널 품질을 나타내는 지표로, 지정된 샘플 창 (대략) 채널 내 (기준점 내)에 해당하는 임계값을 초과하는 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 샘플)보다 높은 RSSI 샘플의 평균 비율/비율을 나타냅니다.

첫 번째 '샘플 기간' 샘플의 경우 평균은 실제 비율 (즉, 총 샘플 수 대비 '잘못된' 샘플 수의 비율)로 유지됩니다. '윈도우' 샘플 후 평균치는 지수 가중치가 적용된 이동 평균을 사용합니다. 실제로 평균은 최신 kSampleWindow 샘플에 주어진 가중치가 가장 높은 마지막 샘플 최대 3 * window개를 나타냅니다.

최댓값은 0xffff으로, 모든 RSSI 샘플이 RSSI 임곗값을 초과했음을 나타냅니다. 즉, 샘플이 100% 낮았습니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aChannel
링크 점유율을 가져올 채널입니다.
반환
특정 채널의 현재 점유율입니다.

otChannelMonitorGetRssiThreshold

int8_t otChannelMonitorGetRssiThreshold(
  otInstance *aInstance
)

채널 모니터링 RSSI 임계값을 dBm로 가져옵니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
반환
RSSI 임계값(dBm)

otChannelMonitorGetSampleCount

uint32_t otChannelMonitorGetSampleCount(
  otInstance *aInstance
)

채널 모니터링 총 RSSI 샘플 수 (채널당)

이 스레드는 스레드 네트워크 인터페이스가 사용 설정된 이후 채널 모니터링 모듈별로 채널당 총 샘플 수를 나타냅니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
반환
지금까지 수집한 총 RSSI 샘플 수 (채널당)입니다.

otChannelMonitorGetSampleSpace

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에서 제공되는 소스 코드에서 비롯됩니다. 자세한 내용을 보거나 문서에 참여하려면 리소스를 참조하세요.