上位机标签与基站的距离是怎么得到的
上位机里面有一段代码是收到串口传过来的数据后就进行解析,然后可以得到标签与基站的距离,这个解析的原理是什么?//当接收到有效数据包后,对数据包里的数据进行解析,//解析主要内容有3个距离信息(如果是4基站定位有4个距离信息),标签的ID以及其它信息。
void mainwindow::ProcessData(void)
{
uint8_t frame_type;
uint8_t TAG_ID,seq;
uint16range,lnum;
frame_type = frame;
TAG_ID = frame;
lnum = frame|frame<<8;
seq = lnum&0xff;
if(frame_type==1)
{
range=frame|frame<<8;
range=frame|frame<<8;
range=frame|frame<<8;
range = range*10;
range = range*10;
range = range*10;
if(_useAutoPos) //if Anchor auto positioning is enabled then process Anchor-Anchor TWR data
{
processAnchRangeReport(0, 1, range, lnum, seq);
processAnchRangeReport(0, 2, range, lnum, seq);
processAnchRangeReport(1, 2, range, lnum, seq);
}
}
else if(frame_type == 2)
{
range=frame|frame<<8;
range=frame|frame<<8;
range=frame|frame<<8;
range=frame|frame<<8;
ra = range*10;//解码
ra = range*10;
ra = range*10;
ra = range*10;
processTagRangeReport(0, TAG_ID, range*10, lnum, seq);//校正
processTagRangeReport(1, TAG_ID, range*10, lnum, seq);
processTagRangeReport(2, TAG_ID, range*10, lnum, seq);
processTagRangeReport(3, TAG_ID, range*10, lnum, seq);
trilaterateTag(TAG_ID, seq);//定位
//qDebug() << range;
//这个是解算标签坐标的入口函数,在这个函数会判断是有几个基站距离,然后调用calculateTagLocation 完成解算
}
}
range=frame|frame<<8;
range=frame|frame<<8;
range=frame|frame<<8;
range=frame|frame<<8;
ra = range*10;//解码
ra = range*10;
ra = range*10;
ra = range*10;
匹配字符串
页:
[1]