Giám sát kênh
Học phần này bao gồm các chức năng đối với tính năng giám sát kênh.
Tóm tắt
Các chức năng trong mô-đun này có khi bật tính năng giám sát kênh (OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
).
Giám sát kênh sẽ giám sát định kỳ tất cả các kênh để giúp xác định các kênh sạch hơn (các kênh ít bị nhiễu hơn).
Khi chức năng giám sát kênh hoạt động, quét năng lượng có thời lượng bằng 0 sẽ thu thập một mẫu RSSI duy nhất trên mỗi kênh trong mỗi khoảng thời gian mẫu. Các mẫu RSSI này được so sánh với một ngưỡng RSSI đã chỉ định sẵn. Như một chỉ báo về chất lượng kênh, mô-đun giám sát kênh duy trì và cung cấp tỷ lệ trung bình/phần trăm của các mẫu RSSI cao hơn ngưỡng trong (khoảng) cửa sổ mẫu được chỉ định (được gọi là tỷ lệ kín phòng của kênh).
Hàm |
|
---|---|
otChannelMonitorGetChannelOccupancy(otInstance *aInstance, uint8_t aChannel)
|
uint16_t
Xem thông tin về tỷ lệ kín phòng hiện tại của một kênh cụ thể.
|
otChannelMonitorGetRssiThreshold(otInstance *aInstance)
|
int8_t
Nhận ngưỡng theo dõi RSSI của kênh theo dBm.
|
otChannelMonitorGetSampleCount(otInstance *aInstance)
|
uint32_t
Xem kênh giám sát tổng số mẫu RSSI (trên mỗi kênh).
|
otChannelMonitorGetSampleInterval(otInstance *aInstance)
|
uint32_t
Nhận khoảng thời gian mẫu theo dõi kênh tính bằng mili giây.
|
otChannelMonitorGetSampleWindow(otInstance *aInstance)
|
uint32_t
Nhận giám sát kênh trung bình độ dài cửa sổ mẫu (số lượng mẫu).
|
otChannelMonitorIsEnabled(otInstance *aInstance)
|
bool
Cho biết thao tác Giám sát kênh đã được bật và đang chạy chưa.
|
otChannelMonitorSetEnabled(otInstance *aInstance, bool aEnabled)
|
Bật hoặc tắt thao tác Giám sát kênh.
|
Hàm
otChannelMonitorGetChannelOccupancy
uint16_t otChannelMonitorGetChannelOccupancy( otInstance *aInstance, uint8_t aChannel )
Xem thông tin về tỷ lệ kín phòng hiện tại của một kênh cụ thể.
Giá trị tỷ lệ lấp đầy của kênh đại diện cho tỷ lệ/phần trăm trung bình của mẫu RSSI cao hơn ngưỡng RSSI ("mẫu RSSI kém").
Đối với các mẫu "cửa sổ mẫu" đầu tiên, chỉ số trung bình được duy trì dưới dạng tỷ lệ phần trăm thực tế (tức là tỷ lệ số lượng mẫu "xấu" trên tổng số mẫu). Sau mẫu "cửa sổ", người trung bình sử dụng đường trung bình động có trọng số theo cấp số nhân. Trên thực tế, điều này có nghĩa là giá trị trung bình đại diện cho tối đa 3 * window
mẫu cuối cùng có trọng số cao nhất được cung cấp cho các mẫu kSampleWindow
mới nhất.
Giá trị tối đa của 0xffff
cho biết tất cả các mẫu RSSI đều trên ngưỡng RSSI (tức là 100% mẫu là "xấu").
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Trả về |
Tỷ lệ kín phòng hiện tại của kênh đã cho.
|
otChannelMonitorGetRssiThreshold
int8_t otChannelMonitorGetRssiThreshold( otInstance *aInstance )
Nhận ngưỡng theo dõi RSSI của kênh theo dBm.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Ngưỡng RSSI tính bằng dBm.
|
otChannelMonitorGetSampleCount
uint32_t otChannelMonitorGetSampleCount( otInstance *aInstance )
Xem kênh giám sát tổng số mẫu RSSI (trên mỗi kênh).
Số lượng này cho biết tổng số mẫu trên mỗi kênh theo mô-đun giám sát kênh kể từ khi bắt đầu (kể từ khi giao diện mạng Chuỗi được bật).
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Tổng số mẫu RSSI (trên mỗi kênh) được lấy cho đến nay.
|
otChannelMonitorGetSampleInterval
uint32_t otChannelMonitorGetSampleInterval( otInstance *aInstance )
Nhận khoảng thời gian mẫu theo dõi kênh tính bằng mili giây.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Khoảng thời gian mẫu giám sát kênh tính bằng mili giây.
|
otChannelMonitorGetSampleWindow
uint32_t otChannelMonitorGetSampleWindow( otInstance *aInstance )
Nhận giám sát kênh trung bình độ dài cửa sổ mẫu (số lượng mẫu).
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
Cửa sổ mẫu trung bình.
|
Đã bật otChannelMonitor
bool otChannelMonitorIsEnabled( otInstance *aInstance )
Cho biết thao tác Giám sát kênh đã được bật và đang chạy chưa.
Thông tin chi tiết | |||
---|---|---|---|
Các tham số |
|
||
Trả về |
TRUE nếu hoạt động Giám sát kênh được bật, nếu không thì là FALSE.
|
Đã bật otChannelMonitorSet
otError otChannelMonitorSetEnabled( otInstance *aInstance, bool aEnabled )
Bật hoặc tắt thao tác Giám sát kênh.
Khi bắt đầu hoạt động, mọi dữ liệu đã thu thập trước đó sẽ bị xóa. Tuy nhiên, sau khi thao tác bị vô hiệu hóa, dữ liệu đã thu thập trước đó vẫn hợp lệ và có thể đọc được.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
Tài nguyên
Các chủ đề Tham chiếu API OpenThread bắt nguồn từ mã nguồn, có sẵn trên GitHub. Để biết thêm thông tin hoặc đóng góp cho tài liệu của chúng tôi, hãy tham khảo phần Tài nguyên.