tuzhuke 发表于 2019-6-16 22:13:42

RX Timeout 设定参考

近期有一个项目,我采用遍历方式发送信息给标签,系统中有若干标签,基站A依次遍历所有标签,然后基站B遍历所有标签,依次类推。

出现问题:有些标签在网络中,有些标签不在,需要恰当设定基站rx timeout以防浪费资源

实验:
A. 统计正常时间,基站发送信息给标签,标签应答,大约0.5ms
B.基站给不存在标签发送,等timeout后统计时间,dwt_setrxtimeout(x);

2000 1000 800 500 400
2.3ms 1.3ms 1.1ms 0.7ms 0.6ms

当设定为200,大概为0.2ms时,无法完成测距,也就是标签存在,但是没有等到应答。 根据上面统计结果,timeout设定参数400-500为好。
当标签很多时,可以尽量减少基站等待时间,也就可以加快刷新频率!

以上可以看出除了本身代码质量之外,还需要通过实验数据优化代码!

下面是API注释,通过注释可以看到timeout 一个单位为1.0256us,与上面测试结果有一定差异,大概差10%。
* @param time - how long the receiver remains on from the RX enable command
*               The time parameter used here is in 1.0256 us (512/499.2MHz) units
*               If set to 0 the timeout is disabled.对于dwt_setrxtimeout(2000)来说,设定timeout 知道最后timeout 结束,大概2.3ms,而DW1000 实际内部定时为2.04ms,差的0.27ms,主要是统计误差以及stm32 执行代码带来的延时。

lu_jf97 发表于 2019-7-16 10:32:08

有的时候我的UWB模块还会卡死,看来的换一家

tuzhuke 发表于 2019-7-16 11:18:26

lu_jf97 发表于 2019-7-16 10:32
有的时候我的UWB模块还会卡死,看来的换一家

如果可以,可以在论坛上共享下你的资料给我大家。
多谢了!

chenwei 发表于 2019-7-22 11:09:48

谢谢分享。学习学习。

joinecy003 发表于 2020-3-9 16:04:46

采用时分复用应该好些
页: [1]
查看完整版本: RX Timeout 设定参考