51uwb.cn
标题:
上位机软件通信协议更改说明
[打印本页]
作者:
tuzhuke
时间:
2019-3-11 20:10
标题:
上位机软件通信协议更改说明
UWB 基站将测得的距离信息通过串口发送给上位机,上位机根据这些测距信息解算位置坐标, 需要统一规定信息的格式。
之前论坛里已经放过格式定义,请参见
链接
这里简单介绍下如果修改上位机的通信格式
用qt打开源码,找到RTLSClient.cpp 文件
void
RTLSClient
::
newData
() ,下面的字符m 和 r 是通信的头标识
case 0:
if(tmp=='m')
usart_state=1;
break;
case 1:
if(tmp=='r')
{
usart_state=2;
data_pos =0;
}
break;
复制代码
在
void
RTLSClient
::
ProcessData
(
void
) 中可以找到将测得距离重新整合在一起
else if(frame_type == 2)
{
range[0]=frame[4]|frame[5]<<8;
range[1]=frame[6]|frame[7]<<8;
range[2]=frame[8]|frame[9]<<8;
range[3]=frame[10]|frame[11]<<8;
ra[0] = range[0]*10;
ra[1] = range[1]*10;
ra[2] = range[2]*10;
ra[3] = range[3]*10;
processTagRangeReport(0, TAG_ID, range[0]*10, lnum, seq);
processTagRangeReport(1, TAG_ID, range[1]*10, lnum, seq);
processTagRangeReport(2, TAG_ID, range[2]*10, lnum, seq);
processTagRangeReport(3, TAG_ID, range[3]*10, lnum, seq);
trilaterateTag(TAG_ID, seq);
}
复制代码
trilaterateTag(TAG_ID, seq); 就是三边定位函数具体实现
作者:
szmcumcu
时间:
2021-9-30 17:19
好资料,学习了,谢谢楼主,赞赞
欢迎光临 51uwb.cn (http://51uwb.cn/)
Powered by Discuz! X3.3