- 在线时间
- 514 小时
- 最后登录
- 2023-12-1
- 注册时间
- 2018-7-17
- 听众数
- 15
- 收听数
- 0
- 能力
- 0 分
- 体力
- 40322 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 12808
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1419
- 主题
- 1178
- 精华
- 0
- 分享
- 0
- 好友
- 15
TA的每日心情 | 开心 2023-7-31 10:17 |
|---|
签到天数: 198 天 [LV.7]常住居民III
- 自我介绍
- 数学中国浅夏
 |
初次接触超宽带(UWB)无线通信技术,先了解和认识一下。准备做机器人室内定位,没拿到模块之前,先啃英文数据手册,好像还没有中文版本的,做个笔记。定位考虑过ZigBee和BLE,最后还是选择了UWB技术,抗干扰性能更强,定位精度高(±10cm),低成本、低功耗,数据传输速度快,UWB能在10米左右的范围内实现数百Mbit/s至数Gbit/s的数据传输速率,可达到6.8Mb/s。6 y1 |; O: @& E
1.背景及相关技术
/ j$ U8 u9 i# I# i% ^
# s" r) A9 O% j: f* T' G/ dUWB(Ultra Wide Band,超宽带)是一种以极低功率在短距离内高速传输数据的无线通信技术,UWB具有抗干扰性能强、传输速率高、带宽极宽、消耗电能小、发送功率小等诸多优势,主要应用于室内通信、家庭网络、位置测定、雷达检测等领域。系统容量大发送功率非常小,其电磁波辐射对人体的影响也会很小,应用面就广。0 X/ d7 _6 ]0 i4 I$ z0 n& {8 ]
1 Y; z" Z$ b' Q @* ~3 f0 u. |6 o2.芯片选择/ b7 T+ }* e1 e$ k
: Y7 L4 o3 y: h3 d6 p9 _选择DecaWave公司的DW1000芯片。符合IEEE802.15.4-2011超宽带标准。按照数据手册上应该最小误差在10厘米以内。DW1000的最远传输距离为450米(直视距离,非直视距离为45米)。芯片功耗低,可双向测距和定位,可作为目前室内定位(还有说法是地下定位也可以)技术RFID及WiFi的补充。参数如下:, G, g/ X- p+ A6 ^, X! d' ~
+ s1 A$ i! J* U. W单电源电压:2.8 V至3.6 V
2 P( O! E8 k+ j9 q* @4 L1 @/ Z; @* i( E3 q& k+ S: n
数据传输速率:110 kbit/s,850 kbit/s和6.8 Mbit/s;
^; ^/ [7 u7 R0 Q2 f7 r! d+ @5 g
# X0 Z, W5 i2 R3 E( T9 O6频段:从3.5 GHz至6.5 GHz
" d, g" P- u5 K* C9 {7 y! L4 T7 b/ a s3 g) G( O7 E
发射功率:-14 dBm/-10 dBm
8 R( k( e, ?/ ^$ W; ?! b1 y# \6 |! P1 U7 J2 P* i* \( }9 n
发射功率密度:<-41.3dBm / MHz 0 Q0 \6 [. t( `5 P3 l
' K) k- ~% N! o7 w) u# n支持数据包大小:1023字节& e! F2 a% {8 w* i6 A' _% O2 P
3 V/ T t0 c0 J" s
调制方式:BPM(二相调制)与BPSK(二进制相位调制)
, x8 i {! H4 Z1 T" ~: s& c
$ O. w& }& j ~4 v4 ]$ r/ H. CFDMA:6通道
- v1 R8 {- r/ J! Q5 R6 v7 v
& p0 A& }) v* d0 q0 w; [CDMA:12种不同的信道编码( g0 u# D7 P& E6 S& ^# t
( Q# N' `& q2 c% E8 g* T工业级温度范围:-40°C至+ 85°C
( f! E, {6 z1 o" {. N* M2 i* H+ Z# N9 C# R
读数据手册的摘录及心得:$ B9 _. [* @2 E- C5 ?' }" g
# H5 j. s8 Q0 v! S, k9 K- q; V# gDW1000需接外部38.4MHz的晶振,支持SPI通信。
' Z8 W, D M6 ~0 t0 x5 d+ C, G- x6 l/ ]
引脚说明:9 F8 v" @7 J0 s J+ A
% x6 Y. t ?, G) |
DW1000有8个通道需要配置,最大接收带宽为900MHz,编程会用到。
! r5 i" O0 ^; D
: H" e! ]! Y; e6 ?1 u: T比如:模式1
) `! v6 U8 V, W5 ?$ [- ^
9 i: k. h5 ~" q* ~Channel_Config[8]={
8 X: Y" ]' s& Y, z: ~: A: z$ M* p* L; T8 Z* t/ J5 F- r- ]: |
/*模式1*/- U5 {( m O* e. \6 O3 { B# T
$ E# ]( n) Z# d* M' i% E: i- G
2, //选择通道
$ P1 C' `: C# w' I Z7 T! X; B/ T/ r6 I6 \8 B
DW1000_PRF_16M, //脉冲频率
- v6 L& O9 C9 N$ h, w+ r0 u" L
: w- f, r6 L2 L/ ?. R2 @9 O/ e DW1000_BR_110K, //波特率
8 R3 n8 @! o3 S6 r2 V
5 o+ j* _9 O. Q6 ^ 3, //前导码- |" W J7 l* E$ ?5 w- @0 N/ E: P
" N' ~7 {# L% o; X( ~ DW1000_PLEN_1024, //前导码数据长度) W2 f/ T4 d: T' P. y8 P9 @
, }; v* N% ?7 Q" f7 ?4 h9 g DW1000_PAC32, //指定PAC前导长度
3 W& T5 x n- v; q! X2 ?5 I% }9 o. u
6 t1 N! g# {7 q% {/ V; D3 { 1, //非标SFD9 y$ J1 b7 u6 T: ]- \! P1 i0 r( G
( l+ F" ^0 t; N# L/ u" A- y (1025 + 64 - 32) //SFD超时" t9 O$ C$ M% G5 E
9 d, F5 F% y4 } Y& L7 A
}' L8 d1 e: ~ Z2 \8 ^' }% C. H6 [
支持的波特率为:! F- r: i( ]7 Y- r9 z( Y
8 k) U) P8 `! R6 k$ n" g# c M
DW1000有两个频率合成器,本地时钟即外部和系统时钟。带宽设置有两种模式:500MHz和900MHz。由相关寄存器设置特定的带宽模式。带宽设置的增加范围大了,相应功耗也就增加。因此该TX脉冲宽度允许传输的带宽应该合理控制。DW1000寄存器是不可编程的,需要写相关值来控制。1 L! z( N; g1 b! p
3 U5 h8 J+ T+ x* A; m# a
看完数据手册,接下来就好好啃两百多页的英文用户手册,看看SPI读写操作和各个寄存器值的读写操作。大概有四十多个寄存器。DW1000对于寄存器的操作十分严格,尤其是时间同步控制。两种定位方法:到达时间差(TDOA)和双向测距(TOF)定位。时间控制不合适会导致定位误差。
+ m8 g# h6 s0 r8 F$ b* w) y, ?$ ^+ |$ c: z9 Q' u) A" S2 d
$ Z3 r; ~6 ~: L( @7 a7 r' @
) g9 z: l0 Z0 m/ e% J 湿度大也会衰减发射信号的强度,影响距离,比如阴雨天时,收音机的信号就明显差很多。因为无线电波的传播介质发生了变化,介质的性质(介电常数)发生变化,电磁波波速就会产生变化。
/ a6 n5 |* ~2 e* Y* G& A% j* j9 ^9 s7 `! J( O2 |( g
3.软件流程" L" R# A9 ~8 P0 P( c4 b
3 Y4 m3 r& r9 ~( d* Q(1)使能DW1000软件操作流程:# x3 i& @. ~( t% ^; p8 ]
/ L! i, H) C5 T% p$ @$ {$ Ua.设备初始化(时钟初始化、GPIO初始化、中断优先级配置、串口及SPI初始化等);
) [5 c' ]4 x6 U* U5 f& K
9 f( U' L1 ~: ~& j( @1 Nb.关中断(若开启了外部中断);
. E- X0 A( s' t7 }6 w
/ _1 W" O- V9 q8 gc.复位;
+ _+ G0 g5 j1 F! }2 t! V/ c* E5 _" o% u/ l
d.读取芯片32位ID号(如果读取设备寄存器成功,返回设备号0xDECA0130,说明硬件初始化正常);; \2 c s: A# g! q% g9 X& t( O6 c
/ H0 P% C# H' @1 j/ B/ d) j
e.指定角色(Tag/Anchor)6 S6 p7 b3 d n
; t# V: O) L5 Qf.配置信道参数(通道数、频率、数据速率、引导码、PAC、SFD等)
6 \. d# n# o Z% J4 x# n( t1 J$ c2 G6 B$ {
g.使能芯片寄存器操作;6 V% h7 V& Z m0 f9 O
5 ?; r7 ~* F0 k# H+ O0 th.使能中断;2 c! L2 u$ g; ]9 h
/ S4 y& W' ]2 K- s$ Fi. Tag/Anchor发送(Poll message)接收(Response message)消息帧,记录时间戳(timestamp)。8 J) q0 ~! I9 a, ~+ ?! }
+ T; u2 Y9 Q7 }(2)双向测距TWR流程(如图):0 @# S( d+ x2 u& @- y5 o1 b/ @ M
3 j0 s7 x) q" |" U* m
& R6 I$ X: E4 Z3 H
* W9 n6 I+ ~5 H( M }; | |
zan
|