摘要:首先介绍增量调制内容,然后引出自适应增量调试的过程。结合相关的MATLAB程序对相关内容深入理解。
- 增量调制(DM)实验原理
增量调制是由PCM发展过来的模拟信号数字化的一种编码方式,它是PCM的一种特例。增量调制编码基本原理是指用1bit编码,这1bit不是表示信号抽样值的大小,而是表示抽样幅值的增量特性,即采用一位二进制码“1”或者“0”来表示信号抽样时刻的值相对于前一个抽样时刻的值是增大还是减小,增大则输出“1”码,减小则输出“0”码。输出的“1”,“0”只是表示信号相对于前一个时刻的增减,不是表示信号的绝对值。
在增量调制系统中发送端调制后的二进制代码1和0只表示信号这个抽样时刻相对于前一个抽样时刻是增加(1码)还是减少(0码)。接收端译码每收到一个1码,译码器的输出相对于前一个时刻的值上升一个量化阶,而收到一个0码,译码器的输出相对于前一个时刻的值下降一个量化阶。
增量调制(DM)是DPCM的一种简化形式。在增量调制下,采用1bit量化器,即用1位二进制码传输采样值的增量信息,预测滤波器器是一个单位延迟器,延迟一个采样时间间隔。预测滤波器的分子系数向量是[0 1],分母系数为1。当前采样值与预测滤波器输出的前一个值相比较,如果其差值大于零,则发送1码,如果小于零则发送0码。
- 实验模型
增量调制系统框图如下所示,其中量化器和编码器是一个零值比较器,根据输入极性输出0或者1。
设输入信号为:x(t)=sin(2*pai*50t)+0.5*sin(2*pai*150t)
增量调制的采样间隔为1ms,量化阶距δ=0.4,单位延迟器的初始值为0。建立仿真模型并求出前20个采样点。
根据图一建立数学关系,编程中采用循环结构来模拟仿真采样时刻向前推进,并建立前后采样时刻采样值的关系。程序如下。
%ch3example13prog1.m
clc;
clear;
%编码端
Ts=1e-3;%采样间隔
t=0:Ts:20*Ts;%时间序列
x=sin(2*pi*50*t)+0.5*sin(2*pi*150*t);%输入信号
delta=0.4;%量化阶距
D(1+length(t))=0;%预测器初始状态
for k=1:length(t)
e(k)=x(k)-D(k);%误差信号
e_q(k)=delta*(2*(e(k)>=0)-1);%量化器输出
D(k+1)=e_q(k)+D(k);%延迟器状态更新
codeout(k)=(e_q(k)>0);%编码输出
end
subplot(3,1,1);
plot(t,x,'-o');
axis([0 20*Ts,-2 2]);
hold on;
subplot(3,1,2);
plot(t,codeout);
axis([0 20*Ts,-2 2]);
%解码端
Dr(1+length(t))=0;%解码端预测器初始状态
for k=1:length(t)
eq(k)=delta*(2*codeout(k)-1);%解码
xr(k)=eq(k)+Dr