word版本hslogic_无线传感网络
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A、方案重述
根据上一次的反馈,可能你老师所希望的是利用锯齿波的相位线性关系进行实现,即利用锯齿波具有相位误差和误差控制信号的线性关系,所以在标签节点处可以利用这个线性关系,从相关值中可以获得确切的相位误差,然后主机端根据这个相位误差值调整相位。
那么,这里重点研究一下关于这个线性关系的应用,首先,整个系统的基本结构如下所示:
主机端发送脉冲信号,而本地节点为锯齿波,那么系统的相位差分方程为:
()(1)2[()()]
i i K i D i D
θθπθθ
=-----
这时,假设主机端发送的脉冲性能好为:
1,0
()
0,
d
d
t
g t
t T
τ
τ
≤<
⎧
=⎨
≤<
⎩
那么此时,系统的相位差分方程为:
()(1)2[()()]
i i KG i D i D
θθπθθ
=-+---
2
1,2
()
2
0,0
d
d
T
G
t
T
πτ
θπ
θ
πτ
⎧
≤∆<
⎪⎪
∆=⎨
⎪≤<
⎪⎩
这里,这个方程的具体含义为:即首先由主机发送一个相位信息()i
θ,通过路径延迟之后,到达本地节点后为()
i D
θ-。
而接收机需要的接收信号的相位值为
()i
θ。
将两个相位的差值用来判断是否进行反馈,即
2
1,2
()
2
0,0
d
d
T
G
t
T
πτ
θπ
θ
πτ
⎧
≤∆<
⎪⎪
∆=⎨
⎪≤<
⎪⎩
如果为1,那么进行反馈,如果为0,那么不进行反馈。
这里
d
τ为脉冲宽度。
但是,采用这种方法,就和论文中的脉冲相关的方法就没区别了,即遇到满足要求之后进行反馈,否则不反馈。
以上,是锯齿波作为反馈波形的基本流程,下面主要是利用锯齿波的锯齿波具有相位误差和误差控制信号的线性关系来进行快速的捕获。
下面主要对锯齿波的这个线性特性进行分析。
我们主要利用锯齿波的这种线性特性进行分析:
首先,当主机发送相位()
i D
θ-得到的相位误差信号为:
()()
i D i D
θθ
---,根据锯齿波的这种线性特性,即:
锯齿波的鉴相范围是指PFD的输出电压随相位误差单调、线性变化的范围。
理想的PFD 的鉴相范围是2~2
ππ
-,如商图所示。
这就是锯齿波的线性特性。
那么当主机发送相位()
i D
θ-得到的相位误差信号为:
()()
i D i D
θθ
---,这个对应的相位误差信号可以根据这个线性特性得到对应的幅度值。
根据锯齿波的线性关系式:out d
V Kθ
=
其中Kd为环路增益,
所以,根据锯齿波的线性特性,可以得到其输出幅度值为:
(()())
out d
V K i D i D
θθ
=---
由于实际中,主机发送的是窄脉冲信号,而不是直接发送一个相位信息,因此,我们需要通过将主机发送的窄脉冲信号和本地节点的锯齿波做相关操作。
获得相关值。
假设主机发送一脉冲信号:
1,0()0,d
d
t g t t T ττ≤<⎧=⎨
≤<⎩ 该脉冲信号和本地的锯齿波进行相关运算,就能够得到一个相关值,假设该值为:1_Cor V ,根据锯齿波的波形的线性特性,
1_Cor V V θ∆≈
即,当窄脉冲“够窄“的时候,相关值约等于实际相位差对应的幅度值,那么根据锯齿波的线性特性函数:
out d V K θ=
此时,主机和标签节点的相位误差值为:
1_d d
V Cor V K K θθ∆∆=
≈ 此时,标签节点将计算得到的相关值反馈给主机,由主机根据线性特性函数计算得到实际的相位误差,然后发送一个对应相位的窄脉冲进行同步捕获。
在标签节点,当相关值小于一定门限的时候,说明捕获成功,标签不进行反馈,反正进行反馈。
B、代码设计与说明
B1 系统理论仿真:main01.m
这个部分的代码主要设计了相位可调的窄脉冲和相位可调的锯齿波,以及在理想环境下的捕获仿真,仿真的结果如下所示:
主机端发送的窄脉冲:
本地节点的锯齿波:
窄脉冲和锯齿波的相关结果:
系统最后的仿真结果:
实际在参数预先设置的时候相位差为-1,这说明捕获成果。
其中,代码中
这个是参数可调窄脉冲,三个参数分别为相位值,积分长度,窄脉冲宽度。
这个是参数可调锯齿波,三个参数分别为相位值,积分长度,环路增益(锯齿波斜率)。
B2 系统实际的捕获过程:main02.m
这个部分,主要将该模块用于实际环境,加入噪声进行仿真,并分析捕获误差。
主机通过无线发送到节点的时候,往往会受到噪声的干扰,因此,本地接收到的窄脉冲为:
上面两图是不同噪声下,标签节点接收到的窄脉冲信号。
然后进行相关,我们可以得到如下的结果:
此信号为误差曲线,即在不同的噪声下捕获到的相位和实际的相位的误差。
从仿真结果可知,当SNR为6的时候,误差接近0.
上面的仿真结果时实际的相位误差和在不同信噪比下捕获到的相位误差。
下面,从理论上简单的分析一下捕获误差和捕获精度。
主机发送窄脉冲:
1,0()0,d
d
t g t t T ττ≤<⎧=⎨
≤<⎩ 由于受到噪声的干扰,在标签节点接收到的窄脉冲信号为:
1(),0()(),d
d n t t g t n t t T
ττ+≤<⎧=⎨
≤<⎩ 该信号和本地的锯齿波进行相关运算:
2
2
2
2
22221212
11221121()*()()(1())()()2
()()()2
()()
d d d d d d d d d d d d R f t g t dt
k t n t dt
t k k t k t n t dt
k
k k t n t dt
k N t τττττττττττττττττττττττττ++++=--=-⨯+=-+-=+-+-≈-+⎰⎰
⎰⎰ 因此,相位误差为:
21()corr d
R
V k τττ=
≈-
所以相位差就为
corr V k θ∆=
=21()()d d
k N t k ττττ-+=21()
()d N t k τττ-+
因此,整个捕获的精度受到N 的影响。
B3 系统实际的捕获+跟踪过程:main03.m
在完成捕获之后,需要进行实时的跟踪,本代码主要用来仿真实际的捕获和跟踪过程。
这里,跟踪的主要细想如下:
在完成捕获之后,在本地节点保存获得的相位误差:
0()()out corr
d d
V V i i K K θθ-=
≈ 当本地节点发送相位变化的时候,会导致如下的过程 0()()out corr
d d
V V i i T K K θθ-=
≈≤,节点相位变化在较小的范围之内,说明误差较小,则不需要反馈。
即主机不需要通过调整相位来跟踪或者重新捕获。
0()()out corr
d d
V V i i T K K θθ-=
≈>,节点相位变化在较大的范围之内,说明误差较大,则需要反馈,根据某一时刻节点的相位误差反馈,主机重新发送一个相位的窄脉冲进行捕获并跟踪。
通过设置门限进行反馈判决,门限的大小根据具体的精度要求进行。
捕获阶段可将门限设置大点,而根据阶段可将门限设置小点。
仿真结果如下所示:
这个依然是窄脉冲和锯齿波。
捕获误差。
相位捕获过程。
跟踪误差,只要在设定的门限内,就进入跟踪状态。
跟踪误差分析:
当系统进入跟踪状态的时候;
在捕获完成之后,其得到的
所以相位差就为
corr V k
θ∆==21()()d d k N t k ττττ-+=21()()d N t k τττ-+ 这里,由于噪声的影响,相位差存在误差
()d N t k τ。
当
标签节点的相位发生改变的时候,
()()d
N t i k θτ∆+ < T ,那么主机仍然发送原有的窄脉冲, 这个时候相位误差为()()d N t i k θτ∆+
当()()d
N t i k θτ∆+ > T 的时候,主机调整发送新的相位脉冲,这个时候,跟踪误差则主要由噪声因子造成。
B4反馈次数和捕获时长进行仿真:main04.m
这个部分和论文中的相似,代码和你提供的相似,主要是考虑锯齿波的反馈延迟进行设计的,具体的理论,这里就不多做介绍了,主要参考最早的参考论文。
反馈次数为:
这个是理论和实际的反馈次数及捕获时长的仿真对比图。
B5反馈次数和捕获时长进行仿真和原论文的对比仿真:main05.m
这个部分是采用本文的算法和论文中所说的一步两步算法的性能对比仿真。
由此可知,本文的算法具有明显的优势。