日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Matlab生成各种伪随机信号_idinput指令

發布時間:2025/3/15 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Matlab生成各种伪随机信号_idinput指令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.為何不是沖激信號?

只要是在信號系統這條道上混過的童鞋都知道,沖激信號是測試系統的最理想信號。因為時域的卷積相當于頻域的乘積,而沖擊信號的頻域擁有最廣泛的頻譜,可以“暴露”系統最完整的信息,那么問題來了?這么好的東西,你咋就不用呢?傻~ 還真不是這樣,能讓我們計算機產生一個理想的沖激信號那是多難的事啊!!!想象狄拉克,就被難為人了......那咱辦呢?這時候一大群數學家來了.....么子事,沖激信號不能直接產生,我們可以合成啊!!!這里要提醒一個很重要的的事:白噪聲的自相關恰恰最佳逼近沖激信號! 所以在我們工程研究上,白噪聲信號才是最理想的輸入信號,這也能解釋為什么好多研究中都采用白噪聲作為測試。本文的撰寫具有很重要的意義。

2.初識idinput指令

2.1基本調用格式

u = idinput(N,type,band,levels)?
[u,freqs] = idinput(N,’sine’,band,levels,sinedata)?

2.2參數說明

N:產生的序列的長度,如果N=[N nu],則nu為輸入的通道數,如果N=[P nu M],則nu指定通道數,P為周期,M*P為信號長度。默認情況下,nu=1,M=1,即一個通道,一個周期。?
Type指定產生信號的類型,可選類型如下 :'rgs'高斯隨機信號;'rbs'(默認)二值隨機信號 ;'prbs'二值偽隨機信號(M序列)?'sine'正弦信號和 。
Band?:指定信號的頻率成分。對于'rgs'、'rbs'、'sine',band = [wlow, whigh]指定通帶的范圍,如果是白噪聲信號,則band=[0, 1],這也是默認值。指定非默認值時,相當于有色噪聲。?對于'prbs',band=[0, B],B表示信號在一個間隔1/B(時鐘周期)內為恒值,默認為[0, 1]。?
Levels?:指定輸入的水平。Levels=[minu, maxu],在type='rbs'、'prbs'、'sine'時,表示信號u的值總是在minu和maxu之間。對于type='rgs',minu指定信號的均值減標準差,maxu指定信號的均值加標準差,對于0均值、標準差為1的高斯白噪聲信號,則levels=[-1, 1],這也是默認值。?

3.MATLAB仿真與測試

3.1 生成高斯偽隨機信號

clc clear all close all % 高斯隨機信號 u = idinput(1000, 'rgs'); subplot(1,3,1) stairs(u) title('高斯隨機信號') subplot(1,3,2) hist(u, -4:4) title('高斯隨機信號的分布') c = xcorr(u, coeff); % 自相關函數 subplot(1,3,3) plot(c) title('相關函數')
3.2 生成正弦偽隨機信號 clc ;clear all ;close all % 高斯隨機信號 u = idinput(100, 'sine'); subplot(1,3,1) stairs(u) title('正弦隨機信號') subplot(1,3,2) hist(u, -4:4) title('正弦隨機信號的分布') c = xcorr(u, 'coeff'); % 自相關函數 subplot(1,3,3) plot(c) title('相關函數')

3.生成二值偽隨機信號

clc ;clear all ;close all % 高斯隨機信號 u = idinput(200, 'rbs'); subplot(1,2,1) stairs(u) title('二值隨機信號') c = xcorr(u, 'coeff'); % 自相關函數 subplot(1,2,2) plot(c) title('相關函數')

4.生成二值偽隨機序列(M序列)

<span style="font-size:18px;"><span style="font-family:microsoft yahei;color:#555555;"><span style="line-height: 35px;">clc ;clear all ;close all n = 10; % 階次 p = 2^n -1; % 循環周期 ms = idinput(p, 'prbs'); subplot(1,2,1) stairs(ms) title('M序列') %ylim([-1.5 1.5]) c = xcorr(ms, 'coeff'); % 自相關函數 subplot(1,2,2) plot(c) title('相關函數') </span></span></span>%?<wbr>?<wbr>?自相關函數接近于δ函數<span style="font-size:18px;"></span></wbr></wbr>
進行譜密度深入分析:
譜分析表明,M序列含有直流成分,將造成對辨識系統的“凈擾動”,這通常不是所希望的。而逆M序列將克服這一缺點,是一種比M序列更為理想的偽隨機碼序列。

5.生成逆M序列偽信號


總結

以上是生活随笔為你收集整理的Matlab生成各种伪随机信号_idinput指令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。