- 在线时间
- 514 小时
- 最后登录
- 2023-12-1
- 注册时间
- 2018-7-17
- 听众数
- 15
- 收听数
- 0
- 能力
- 0 分
- 体力
- 40304 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 12802
- 相册
- 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。
: x5 O& l% |4 W B G- r1.背景及相关技术$ j; O8 [& b& h- U6 u
# u' ]" v, k. p( ? @: s
UWB(Ultra Wide Band,超宽带)是一种以极低功率在短距离内高速传输数据的无线通信技术,UWB具有抗干扰性能强、传输速率高、带宽极宽、消耗电能小、发送功率小等诸多优势,主要应用于室内通信、家庭网络、位置测定、雷达检测等领域。系统容量大发送功率非常小,其电磁波辐射对人体的影响也会很小,应用面就广。
* ~; F$ Z9 R" O* e, t4 [ T' \5 f# z1 x8 V; G/ a C
2.芯片选择
5 q$ Y& p- S: u8 e0 Z) a5 V
' N) c" b6 H0 X! R1 Y4 y) ?选择DecaWave公司的DW1000芯片。符合IEEE802.15.4-2011超宽带标准。按照数据手册上应该最小误差在10厘米以内。DW1000的最远传输距离为450米(直视距离,非直视距离为45米)。芯片功耗低,可双向测距和定位,可作为目前室内定位(还有说法是地下定位也可以)技术RFID及WiFi的补充。参数如下:
' Z1 c! T- K& j3 {( F9 y( j& L' h6 P% n% g6 g- N
单电源电压:2.8 V至3.6 V
1 x: E: @. {. M8 f
8 U: q# l1 h( j4 @3 \' \* h数据传输速率:110 kbit/s,850 kbit/s和6.8 Mbit/s;3 j* C! ?/ m1 V7 J& a( Q7 @
3 ^2 F% A8 @: {) d' u6频段:从3.5 GHz至6.5 GHz
* S6 O) R. @1 Z8 Z5 f) g/ c3 z- A+ M3 Z0 X# l: O6 u" B) U& ~' O
发射功率:-14 dBm/-10 dBm
! D: J% L# y1 C/ S$ \* |" Z+ Y$ Q! _ G0 U
发射功率密度:<-41.3dBm / MHz
! D( }$ Q, t0 r: E7 u/ n
3 ^" S2 Y; v! V8 x" z; b& K支持数据包大小:1023字节
, E- A2 B# p, A3 W) R- X
2 ^" v; m7 \! F- I调制方式:BPM(二相调制)与BPSK(二进制相位调制)
) [2 s+ G" Y8 @( \" G) N" |0 @2 L( ]9 u8 c$ \, v
FDMA:6通道
0 l; ?. p/ k/ p( j2 ]$ o e0 ?# v( r4 ?, d+ l+ c
CDMA:12种不同的信道编码
% r0 L; x) @/ f; d7 z
/ e& }+ R- {3 a( H0 k, Y5 \0 t; m工业级温度范围:-40°C至+ 85°C
: D {' {1 o; S: |5 P8 Q' R+ T( V. e; k3 J# O) `$ g
读数据手册的摘录及心得:
9 B. m/ c- c9 m7 ]% b+ s' H
, e" p! ~. o, CDW1000需接外部38.4MHz的晶振,支持SPI通信。5 Z t, f6 l$ L$ ^1 B- x/ N
) U" b. c V( V7 C
引脚说明:6 ^3 J* V5 h# [* w: `
$ X" r; C4 p, Q/ L0 {$ J/ yDW1000有8个通道需要配置,最大接收带宽为900MHz,编程会用到。2 t6 d; p5 |6 K$ ^% Q
/ ]' A1 R' R9 h/ H# W8 w比如:模式17 S1 T6 I3 M2 G a( a# E X# m$ w
! C" g2 N9 d: U* F4 A
Channel_Config[8]={
Z7 G; V; e( B. v0 q+ o- x* C7 ?, u* B9 t( T
/*模式1*/6 i9 a& y$ h0 Q) r( Q
4 r" l+ x, F$ V8 P8 w# T
2, //选择通道% m4 }. {9 h# s3 i. o
8 M! J; C' V9 @7 n+ `- [( [
DW1000_PRF_16M, //脉冲频率
8 m- _/ L' x) P$ T, |" M2 u& d- g' @+ t+ @3 |
DW1000_BR_110K, //波特率: ?( B# _9 t. d- k% y' J
3 R( H1 `: A( k5 Q3 K0 e; W+ q
3, //前导码$ o. D7 ^: Y q" I9 e
6 y9 b+ K2 c$ m/ d5 [ DW1000_PLEN_1024, //前导码数据长度
- \' K) L* ]( U; E: J6 I& `) Z/ N" c" z V( P
DW1000_PAC32, //指定PAC前导长度; {3 E) N0 L; q/ F5 {* n
) k4 i0 @, I1 P 1, //非标SFD
; v4 G5 T7 ^4 c: i- b( G2 N! ]4 r( S- }. D1 g! r
(1025 + 64 - 32) //SFD超时8 n& B3 S2 Q, b1 V7 ~8 [$ g
4 @: Q7 l- T" }$ g% b6 ^ }0 ?* `1 F9 v2 ?- y
支持的波特率为:. z: v3 P: r( d T# D' i6 p- U
5 f8 q: v u: @) B! C2 ]/ D& h
DW1000有两个频率合成器,本地时钟即外部和系统时钟。带宽设置有两种模式:500MHz和900MHz。由相关寄存器设置特定的带宽模式。带宽设置的增加范围大了,相应功耗也就增加。因此该TX脉冲宽度允许传输的带宽应该合理控制。DW1000寄存器是不可编程的,需要写相关值来控制。, [" K% W; I+ p; e0 `
: k+ z, \. Q @- A4 S( ?4 z
看完数据手册,接下来就好好啃两百多页的英文用户手册,看看SPI读写操作和各个寄存器值的读写操作。大概有四十多个寄存器。DW1000对于寄存器的操作十分严格,尤其是时间同步控制。两种定位方法:到达时间差(TDOA)和双向测距(TOF)定位。时间控制不合适会导致定位误差。
2 v" {; ^2 f7 Y9 H5 X, k6 D# j8 W
% Q# H% Y0 Y5 k. n* Q* m$ w" L0 l2 L
$ c* S6 Z9 d) W
湿度大也会衰减发射信号的强度,影响距离,比如阴雨天时,收音机的信号就明显差很多。因为无线电波的传播介质发生了变化,介质的性质(介电常数)发生变化,电磁波波速就会产生变化。
" A+ W) v. t! W# @3 Q$ M
0 v+ D) o( V0 n2 u% h( \/ I: J6 J3.软件流程
* y3 P8 J, z5 G3 ?9 I2 L& E
) f. q0 |5 ^( B/ W7 E; n(1)使能DW1000软件操作流程:( w: B& q! N1 [1 h- _
: g; `1 L7 z) i' Za.设备初始化(时钟初始化、GPIO初始化、中断优先级配置、串口及SPI初始化等);' i: a! c7 P: z$ w1 n1 m, f& Z
. ~( n" ^& p1 P1 {b.关中断(若开启了外部中断);
" f% T4 u& z7 k: L' C. L8 H( j/ b: f/ {/ b6 v
c.复位;
# C+ J$ X4 E" i; I! [3 o% n1 m
3 b$ o W- L0 c5 td.读取芯片32位ID号(如果读取设备寄存器成功,返回设备号0xDECA0130,说明硬件初始化正常);
g7 p; _/ R7 v2 Q; K0 T' ~$ H7 w# @% e' i
e.指定角色(Tag/Anchor)
6 K0 n1 O8 r9 M2 w* r/ f; r9 c7 v/ |0 W! d0 s, }: Q
f.配置信道参数(通道数、频率、数据速率、引导码、PAC、SFD等)) c- v+ g% t" g9 v
, p( k9 y% G0 Z. w) s! w; q1 D+ D- Vg.使能芯片寄存器操作;4 C$ u2 X: b0 F$ `* Q+ z7 m- I
& c! [6 a, J h
h.使能中断;
/ I7 r. u, N9 G" C1 u2 R+ u4 [$ T9 ^8 q% q! C- d
i. Tag/Anchor发送(Poll message)接收(Response message)消息帧,记录时间戳(timestamp)。0 A: |* R1 ? ]( v9 v. {; }, t
# a/ |" z- j8 ^$ r3 W(2)双向测距TWR流程(如图):
& B2 A# \& e% n/ A, y5 ]; U b) Y, A" g" z$ W% ]) X$ N) @0 f- |
$ l6 T- d6 ~$ _, S: E. S
0 b! M% K7 U' a, s4 T7 {& z |
zan
|