哈工大系统辨识实验一教材
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验1 白噪声和M序列的产生
实验报告
哈尔滨工业大学
航天学院控制科学与工程系
专业:自动化
班级:110410420
姓名:
日期:2014 年10 月12 日
1.实验题目:白噪声和M序列的产生
3、M 序列生成原理
用移位寄存器产生M 序列的简化框图如下图所示。该图表示一个由4个双稳态触发器顺序连接而成的4级移位寄存器,它带有一个反馈通道。当移位脉冲来到时,每级触发器的状态移到下一级触发器中,而反馈通道按模2加法规则反馈到第一级的输入端。
1、生成均匀分布随机序列
(1)利用混合同余法生成[0, 1]区间上符合均匀分布的随机序列,并计算该序列的均值和方差,与理论值进行对比分析。要求序列长度为1200,推荐参数为a=65539,M=2147483647,0 (2)将[0, 1]区间分为不重叠的等长的10个子区间,绘制该随机序列落在每个子区间的频率曲线图,辅助验证该序列的均匀性。 (3)对上述随机序列进行独立性检验。(该部分为选作内容) 2、生成高斯白噪声 利用上一步产生的均匀分布随机序列,令n=12,生成服从N(0,1)的白噪声,序列长度为100,并绘制曲线。 3、生成M 序列 M 序列的循环周期取为63126=-=P N ,时钟节拍Sec 1=∆t ,幅度1=a ,逻辑“0”为a ,逻辑“1”为-a ,特征多项式65()F s s s =⊕。 生成M 序列的结构图如下所示。 x(j+1)=x(j); end x(1)=temp; end for i=1:Np if(y(i)==0) y(i)=a; else y(i)=-a; end end figure(5) stairs(y); ylim([-1.5,1.5]); 7.实验结果及分析 实验1.1 程序运行计算出序列的均值:mean_r =0.4897,与理论值0.5很接近;序列的方差var_r =0.0824,与理论值1/12很接近 使用混合同余法得到生成的0-1均布随机序列如下所示: 得到的该随机序列落在10个子区间的频率曲线图如下: 从上图可以发现用混合同余法得到的随机序列平均分布性较好。实验1.2 生成的白噪声信号如下图所示: 生成的白噪声的频率统计图如下: 从上图中,我们可以看到,生成的白噪声信号基本服从N(0,1)分布 实验1.3 生成的M序列如下图所示: 验证M序列性质: 均衡特性:m序列每一周期中 1 的个数比0 的个数多 1 个(-a和a的个数差1)测试程序: a=sum(y==0) b=sum(y==1) 得到结果:a =31 b =32 结论:从测试结果看每一周期中一的个数比0的个数多1个,与结论相符。 游程特性:m序列的一个周期(p=2n-1)中,游程总数为2n-1。其中长度为k的游程个数占游程总数的1/2k=2-k,而且,在长度为k游程中,连1游程与连0 游程各占一半,其中1≤k≤(n-2)。长为(n-1)的游程是连0 游程,长为n 的游程是连 1 游程。 测试程序: %游程性质测试程序 zero=1;one=1; M_zero=zeros(1,16); M_one=zeros(1,16); for i=1:63 if(i<=62) if(y(i)==1) if(y(i)~=y(i+1)) M_one(one)= M_one(one)+1; one=one+1; else M_one(one)= M_one(one)+1; end else if(y(i)~=y(i+1)) M_zero(zero)=M_zero(zero)+1; zero=zero+1; else M_zero(zero)=M_zero(zero)+1; end end else if(y(i)==1) if(y(i)==y(1)) one=one+1; M_one(one)=M_one(one)+1; end else if(y(i)==y(1)) zero=zero+1; M_zero(zero)=M_zero(zero)+1; end end end end display(M_zero); display(M_one); 得到的M序列0,1游程结果分别如下所示: M_zero = 1 2 1 1 1 5 4 3 1 2 1 3 2 2 1 1 M_one = 2 2 1 1 6 1 2 1 1 4 1 3 1 1 2 2 发现游程特性符合结果。 移位相加特性:m序列和它的位移序列模二相加后所得序列仍是该m序列的某个位移序列。 测试程序: %移位相加特性验证 M1=circshift(y',3)' %将所产生的M序列向左移位3 M2=xor(y,M1) %将所产生的移位序列与原M序列模2相加 flag=0; i=1; while 1 if(circshift(M2',i)'==y) flag=1; break; end i=i+1; end display(flag) %显示标志位 display(i) %显示移位次数 实验结果如下所示: flag = 1 i =29 说明M序列移位29次后与相加后的M序列相等。 8.结论 本次试验主要实践了混合同余法,正态分布随机数产生方法,M序列生成原理,生成均匀分布随机序列,生成高斯白噪声,生成M序列。 使用混合同余法生成了服从N(0,1)分布的随机序列,同时根据独立同分布中心极限定理,得到了高斯白噪声。在实验1-3中使用6个移位寄存器和反馈通道生成了周期为63的M序列,同时验证了M序列的相关性质,从结果看,完全成立。 本次实验主要是对M序列和其相关性质有了更深入的了解,同时也进一步熟悉了MATLAB,收获颇多。