Chinaunix首页 | 论坛 | 博客
  • 博客访问: 9413356
  • 博文数量: 1748
  • 博客积分: 12961
  • 博客等级: 上将
  • 技术积分: 20070
  • 用 户 组: 普通用户
  • 注册时间: 2009-01-09 11:25
个人简介

偷得浮生半桶水(半日闲), 好记性不如抄下来(烂笔头). 信息爆炸的时代, 学习是一项持续的工作.

文章分类

全部博文(1748)

文章存档

2024年(24)

2023年(26)

2022年(112)

2021年(217)

2020年(157)

2019年(192)

2018年(81)

2017年(78)

2016年(70)

2015年(52)

2014年(40)

2013年(51)

2012年(85)

2011年(45)

2010年(231)

2009年(287)

分类: 其他平台

2021-03-22 15:09:22

手上有一对 DecaWave的一套 DWM1002 (Node)/1003(Tag)的 PDoA Kit. 
相应的开发工具和文档 

点击(此处)折叠或打开

  1. Thank you for your interest in our Beta PDoA Kit.
  2.  
  3. The self-extracting software package containing Software, Schematics,
  4. User Manual and other collateral can be downloaded here:
  5.  
  6. Version 1.1
  7.  
  8. https://www.decawave.com/wp-content/uploads/2019/08/BETA_PDOA_KIT_RELEASE_1.1.exe
  9.  
  10. Version 2.0
  11.  
  12. New features:
  13. SDK was changed to nRF5_SDK_16.0.0_98a08e2
  14. DWM1003 Tag:
  15. 1)IMU sensor enabled, Tag switches from high to low update rate if not moving
  16.  
  17. Known issues DWM1002 Node:
  18. 1) USB Drivers for Nordic have given problems on Windows 7 machines
  19. 2) GUI cannot find the Node during startup. Possible fix: start a
  20. terminal program like TeraTerm or Putty, connect to the Node’s Virtual
  21. COM Port (USB Serial Device), close the terminal program and start the
  22. PC GUI Application.
  23.  
  24. Also it is possible to use Tag’s FW v5.0.0 (from Release 2.0) with
  25. Node’s FW 4.2.0 (from Release 1.1)
  26.  
  27.  
  28. https://decawave.com/wp-content/uploads/2020/04/BETA_PDOA_KIT_RELEASE_2.0.EXE
  29.  
  30. For technical support please contact us at: csupport@decawave.com or
  31. check out our forum: https://decaforum.decawave.com
DWM1002 有一对很漂亮的大眼睛


DWM1003 Tag有很酷的 CP-Wings天线, O(∩_∩)O哈哈~

基于DW1000 IC. 通过 two-way TOF测量得到 ±10cm误差的距离检查. 

环境搭建:
1. DWM1002有两个usb口, 使用PC GUI程序时需要连接的USB module口, 接开发板是连接 USB Dev口.
先把node 和 tag 正面相对, 打开 pc gui程序.

1. 配置: GUI点击 Joined选显卡上勾选要入网跟踪的Tag标签设备.> 标签设备则会动态出现在显示区域内. 
2. 校准过程的前置要求
  1. 尽量在同一高度.
  2. 天线是垂直相对的.
  3. 两者是视觉无阻碍的.
    校准:
  • 把tag防止node 的前面 3m处. 
  • 点击   按钮 和 的弹出窗口按钮.
  • 选在Tag, 点击 OK.
  • 输入距离值,然后OK
  • 等待精度条到100%时, 说明系统训练OK. 
算法方案可以设置 motion Filter, 让原始的定位数据有个相对平滑的结果(因为实际测试下来,校准后仍然会有较大的跳动). 结果的影响: 板子温度

GUI工具可以设置地图文件, 让位置显示更直观.

我们最终的使用方式为 
1. tag 在人身上走动.
2. node 在机器人上, 判断tag的方位和距离.
3. 机器人计算tag周边的安全位置, 并导航到该位置.
4. 机器人判断tag的前后位置发生了重大改变(移动超过1m), 则重复动作2.

所以
1. 首先 需要从node端获取 tag的位置. 因为是评测, 则直接从 module application 接口实现.    
   输出结果为JSON格式, 通过TLV封装数据.  

点击(此处)折叠或打开

  1. DWM1002 Node App-Level Interface
  2. 1. 115200 8 1 N
  3. 2. stop\#10 --> ok\#13\#10\#10
  4. 3. deca$ \x0A --> JS0089{"Info":{\#13\#10"Device":"PDOA Node",\#13\#10"Version":"4.2.0",\#13\#10"Build":"Aug 27 2019 16:13:30",\#13\#10"Driver":"DW1000 Device Driver Version 04.01.01"}}\#13\#10ok\#13\#10
  5. 4. stop\#10 --> ok\#13\#10
  6. 5. jstat\#10 --> JS009A{"System Config":{\#13\#10"ADDR":"0001",\#13\#10"PANID":"DECA",\#13\#10"NUMSLOT":10,\#13\#10"SLOTPER":10,\#13\#10"SFPER":100,\#13\#10"REPDEL":1000,\#13\#10"P2FDEL":3500,\#13\#10"RCDEL":1000,\#13\#10"SMTX":0}}\#13\#10JS0030{"Run Time":{\#13\#10"UART":0,\#13\#10"AUTO":1,\#13\#10"PCREP":1}}\#13\#10
  7. JS00A4{"Calibration":{\#13\#10"ANTTXA":18124,\#13\#10"ANTRXA":14829,\#13\#10"ANTTXB":18124,\#13\#10"ANTRXB":14829,\#13\#10"PDOAOFF":154,\#13\#10"RNGOFF":174,\#13\#10"ACCTHR":50,\#13\#10"ACCSTAT":5000,\#13\#10"ACCMOVE":1000}}
  8. \#13\#10ok\#13\#10
  9. 6. getKList\#10 --> JS0062{"KList":[{"slot":"0001","a64":"082261444D83CB15","a16":"4096","F":"0001","S":"0064","M":"0001"}]}\#13\#10ok\#13\#10 //判断是否已经有join过的tag.
  10. 7. node 0\#10 --> ok\#13\#10 开始持续性的 TWR信息回馈.

  11. .. JS006B{"TWR": {"a16":"4096","R":66,"T":12542,"D":300,"P":148,"Xcm":-8,"Ycm":300,"O":253,"V":1,"X":0,"Y":0,"Z":0}}\#13\#10

  12. //手动添加标签
  13. addtag 082261444d83cb15 4096 0001 64 01\#13\#10 + save\#10 // 0001-> 10Hz 0002: 5HZ 0005:2HZ 000a=1Hz 0032=0.2Hz --> M=01为使用imu. 使用imu时上报频率会较低.
  14. 反馈
  15. JS0064{"TagAdded": {"slot":"0001","a64":"082261444D83CB15","a16":"4096","F":"0001","S":"0064","M":"0001"}}\#13\#10ok\#13\#10 --> F:移动时上报频率 10进制, S:静止时的上报频率 10进制. M:掩码. bit0:使用IMU判断静止或者移动. 为0是则使用F的值.

    JS0064: JS为类型 json  0064 hex代表字节长度. {xxx} 为0x64 = 100字节的内容.

  1. TWR:
  2. a16 : Tag 短地址 hex
  3. R: 流水号 10进制.
  4. T: 开机时的时间 us 10进制.
  5. D: 距离 cm. 10进制, 整形.
  6. P: 角度, 10进制 度.
  7. Xcm/Ycm: tag的坐标位置.

  8. 结果的坐标系为: 以Node为原点, X轴正为左, Y轴正为后, 即Y数值永为负值.

















阅读(2515) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~