51uwb.cn

标题: BPhero-UWB 跟踪原理代码实现分析 [打印本页]

作者: wangyiguochao    时间: 2019-9-10 19:44
标题: BPhero-UWB 跟踪原理代码实现分析
1.BPhero-UWB 基站 0 和上位机通过串口通信,基站 0 将距离信息通过串口发送给 PC ,这里的距离就是dis1和dis2以及dis3吧,那么这个数据有没有经过滤波和均值处理.



2.函数int filter(int input, int fliter_idx )里面的两个参数代表什么意思?后面那个fliter_idx代表的是要过滤的基站编号么?前面那个input参数代表什么呢?上一次的均值?


3.这下面的函数是什么功能呢?distance_mange()是求某个基站数据的均值?下面一部分是数据和数据个数清零,作用呢?逻辑看不懂.
  1. int Anchor_Index = 0;
  2.                             while(Anchor_Index < ANCHOR_MAX_NUM)
  3.                             {
  4.                                 if(Anthordistance_count[Anchor_Index] >=ANCHOR_REFRESH_COUNT )
  5.                                 {
  6.                                     distance_mange();
  7.                                     Anchor_Index = 0;
  8.                                                                         //clear all
  9.                                     while(Anchor_Index < ANCHOR_MAX_NUM)
  10.                                     {
  11.                                         Anthordistance_count[Anchor_Index] = 0;
  12.                                         Anthordistance[Anchor_Index] = 0;
  13.                                                                                                                                                                 Anchor_Index++;
  14.                                     }
  15.                                     break;
  16.                                 }
  17.                                                                 Anchor_Index++;
  18.                             }
复制代码


     



作者: tuzhuke    时间: 2019-9-10 21:52
关于问题1
所有测距都会经过fliter 进行滤波,你说的这个在这个滤波后
  1.     {
  2.         int Anchor_Index = 0;
  3.         while(Anchor_Index < ANCHOR_MAX_NUM)
  4.         {
  5.             if(Anthordistance_count[Anchor_Index] > 0 )
  6.             {
  7.                 Anthordistance[Anchor_Index] =filter((int)(Anthordistance[Anchor_Index]/Anthordistance_count[Anchor_Index]),Anchor_Index);
  8.             }
  9.                             Anchor_Index++;
  10.         }
  11.     }
复制代码
2 .函数int filter(int input, int fliter_idx )
input 是输入数据,fliter_idx 标记了那个滤波器,一个基站对应一个滤波器,不能用混


3  标签每次和基站测距后,轮训查看与所有基站测距次数,如果大于阈值ANCHOR_REFRESH_COUNT 就进行处理, 处理完清零





欢迎光临 51uwb.cn (http://51uwb.cn/) Powered by Discuz! X3.3