问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

高分~~fsk在matlab上的仿真实现 其研究意义及国内外发展

发布网友 发布时间:2022-05-11 22:15

我来回答

2个回答

热心网友 时间:2023-10-22 17:32

基于MATLAB信号处理工具箱的数字滤波器设计与仿真

摘要:传统的数字滤波器的设计过程复杂,计算工作量大,滤波特性调整困难,影响了它的应用。本文介绍了一种利用MATLAB信号处理工具箱(Signal Processing Toolbox)快速有效的设计由软件组成的常规数字滤波器的设计方法。给出了使用MATLAB语言进行程序设计和利用信号处理工具箱的FDATool工具进行界面设计的详细步骤。利用MATLAB设计滤波器,可以随时对比设计要求和滤波器特性调整参数,直观简便,极大的减轻了工作量,有利于滤波器设计的最优化。本文还介绍了如何利用MATLAB环境下的仿真软件Simulink对所设计的滤波器进行模拟仿真。

关键词:数字滤波器 MATLAB FIR IIR

引言:

在电力系统微机保护和二次控制中,很多信号的处理与分析都是基于对正弦基波和某些整次谐波的分析,而系统电压电流信号(尤其是故障瞬变过程)中混有各种复杂成分,所以滤波器一直是电力系统二次装置的关键部件【1】。目前微机保护和二次信号处理软件主要采用数字滤波器。传统的数字滤波器设计使用繁琐的公式计算,改变参数后需要重新计算,在设计滤波器尤其是高阶滤波器时工作量很大。利用MATLAB信号处理工具箱(Signal Processing Toolbox)可以快速有效的实现数字滤波器的设计与仿真。

1 数字滤波器及传统设计方法

数字滤波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按预定的形式变化。数字滤波器有多种分类,根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲激响应(IIR)滤波器和有限长冲激响应(FIR)滤波器。

IIR数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配。所以IIR滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的方法。FIR数字滤波器的单位脉冲响应是有限长序列。它的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常数问题,设计方法主要有窗函数法、频率采样法和等波纹最佳*近法等。

在对滤波器实际设计时,整个过程的运算量是很大的。例如利用窗函数法【2】设计M阶FIR低通滤波器时,首先要根据(1)式计算出理想低通滤波器的单位冲激响应序列,然后根据(2)式计算出M个滤波器系数。当滤波器阶数比较高时,计算量比较大,设计过程中改变参数或滤波器类型时都要重新计算。

(1)

(2)

设计完成后对已设计的滤波器的频率响应要进行校核,要得到幅频相频响应特性,运算量也是很大的。我们平时所要设计的数字滤波器,阶数和类型并不一定是完全给定的,很多时候都是要根据设计要求和滤波效果不断的调整,以达到设计的最优化。在这种情况下,滤波器的设计就要进行大量复杂的运算,单纯的靠公式计算和编制简单的程序很难在短时间内完成设计。利用MATLAB强大的计算功能进行计算机辅助设计,可以快速有效的设计数字滤波器,大大的简化了计算量,直观简便。

2数字滤波器的MATLAB设计

2.1 FDATool界面设计

2.1.1 FDATool的介绍

FDATool(Filter Design & Analysis Tool)是MATLAB信号处理工具箱里专用的滤波器设计分析工具,MATLAB6.0以上的版本还专门增加了滤波器设计工具箱(Filter Design Toolbox)。FDATool可以设计几乎所有的基本的常规滤波器,包括FIR和IIR的各种设计方法。它操作简单,方便灵活。

FDATool界面总共分两大部分,一部分是Design Filter,在界面的下半部,用来设置滤波器的设计参数,另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。Design Filter部分主要分为:

Filter Type(滤波器类型)选项,包括Lowpass(低通)、Highpass(高通)、Bandpass(带通)、Bandstop(带阻)和特殊的FIR滤波器。

Design Method(设计方法)选项,包括IIR滤波器的Butterworth(巴特沃思)法、Chebyshev Type I(切比雪夫I型)法、 Chebyshev Type II(切比雪夫II型) 法、Elliptic(椭圆滤波器)法和FIR滤波器的Equiripple法、Least-Squares(最小乘方)法、Window(窗函数)法。

Filter Order(滤波器阶数)选项,定义滤波器的阶数,包括Specify Order(指定阶数)和Minimum Order(最小阶数)。在Specify Order中填入所要设计的滤波器的阶数(N阶滤波器,Specify Order=N-1),如果选择Minimum Order则MATLAB根据所选择的滤波器类型自动使用最小阶数。

Frenquency Specifications选项,可以详细定义频带的各参数,包括采样频率Fs和频带的截止频率。它的具体选项由Filter Type选项和Design Method选项决定,例如Bandpass(带通)滤波器需要定义Fstop1(下阻带截止频率)、Fpass1(通带下限截止频率)、Fpass2(通带上限截止频率)、Fstop2(上阻带截止频率),而Lowpass(低通)滤波器只需要定义Fstop1、Fpass1。采用窗函数设计滤波器时,由于过渡带是由窗函数的类型和阶数所决定的,所以只需要定义通带截止频率,而不必定义阻带参数。

Magnitude Specifications选项,可以定义幅值衰减的情况。例如设计带通滤波器时,可以定义Wstop1(频率Fstop1处的幅值衰减)、Wpass(通带范围内的幅值衰减)、Wstop2(频率Fstop2处的幅值衰减)。当采用窗函数设计时,通带截止频率处的幅值衰减固定为6db,所以不必定义。

Window Specifications选项,当选取采用窗函数设计时,该选项可定义,它包含了各种窗函数。

2.1.2 带通滤波器设计实例

本文将以一个FIR 滤波器的设计为例来说明如何使用MATLAB设计数字滤波器:在小电流接地系统中注入83.3Hz的正弦信号,对其进行跟踪分析,要求设计一带通数字滤波器,滤除工频及整次谐波,以便在非常复杂的信号中分离出该注入信号。参数要求:96阶FIR数字滤波器,采样频率1000Hz,采用Hamming窗函数设计。

本例中,首先在Filter Type中选择Bandpass(带通滤波器);在Design Method选项中选择FIR Window(FIR滤波器窗函数法),接着在Window Specifications选项中选取Hamming;指定Filter Order项中的Specify Order=95;由于采用窗函数法设计,只要给出通带下限截止频率Fc1和通带上限截止频率Fc2,选取Fc1=70Hz,Fc2=84Hz。设置完以后点击Design Filter即可得到所设计的FIR滤波器。通过菜单选项Analysis可以在特性区看到所设计滤波器的幅频响应、相频响应、零极点配置和滤波器系数等各种特性。设计完成后将结果保存为1.fda文件。

在设计过程中,可以对比滤波器幅频相频特性和设计要求,随时调整参数和滤波器类型,

以便得到最佳效果。其它类型的FIR滤波器和IIR滤波器也都可以使用FDATool来设计。

图1 滤波器幅频和相频响应(特性区)

Fig.1 Magnitude Response and Phase Response of the filter

2.2 程序设计法

在MATLAB中,对各种滤波器的设计都有相应的计算振幅响应的函数【3】,可以用来做滤波器的程序设计。

上例的带通滤波器可以用程序设计:

c=95; %定义滤波器阶数96阶

w1=2*pi*fc1/fs;

w2=2*pi*fc2/fs; %参数转换,将模拟滤波器的技术指标转换为数字滤波器的技术指标

window=hamming(c+1); %使用hamming窗函数

h=fir1(c,[w1/pi w2/pi],window); %使用标准响应的加窗设计函数fir1

freqz(h,1,512); %数字滤波器频率响应

在MATLAB环境下运行该程序即可得到滤波器幅频相频响应曲线和滤波器系数h。篇幅所限,这里不再将源程序详细列出。

3 Simulink仿真

本文通过调用Simulink中的功能模块构成数字滤波器的仿真框图,在仿真过程中,可以双击各功能模块,随时改变参数,获得不同状态下的仿真结果。例如构造以基波为主的原始信号,,通过Simulink环境下的Digital Filter Design(数字滤波器设计)模块导入2.1.2中FDATool所设计的滤波器文件1.fda。仿真图和滤波效果图如图2所示。

图2 Simulink仿真图及滤波效果图

Fig.2 Simulated connections and waveform

可以看到经过离散采样、数字滤波后分离出了83.3Hz的频率分量(scope1)。之所以选取上面的叠加信号作为原始信号,是由于在实际工作中是要对已经经过差分滤波的信号进一步做带通滤波,信号的各分量基本同一致,可以反映实际的情况。本例设计的滤波器已在实际工作中应用,取得了不错的效果。

4 结论

利用MATLAB的强大运算功能,基于MATLAB信号处理工具箱(Signal Processing Toolbox)的数字滤波器设计法可以快速有效的设计由软件组成的常规数字滤波器,设计方便、快捷,极大的减轻了工作量。在设计过程中可以对比滤波器特性,随时更改参数,以达到滤波器设计的最优化。利用MATLAB设计数字滤波器在电力系统二次信号处理软件和微机保护中,有着广泛的应用前景。

参考文献

1. 陈德树. 计算机继电保护原理与技术【M】北京:水利电力出版社,1992.

2. 蒋志凯. 数字滤波与卡尔曼滤波【M】北京:中国科学技术出版社,1993

3. 楼顺天、李博菡. 基于MATLAB的系统分析与设计-信号处理【M】西安:西安电子科技大学出版社,1998.

4. 胡广书. 数字信号处理:理论、算法与实现【M】.北京:清华大学出版社,1997.

5. 蒙以正. MATLAB5.X应用与技巧【M】北京:科学出版社,1999.

仅供参考,请自借鉴

由于篇幅*,这是原文地址:
http://blog.sina.com.cn/s/blog_4c0f36cb01009i2n.html

希望对您有帮助

热心网友 时间:2023-10-22 17:32

  这破烂系统,好不容易敲了半天,居然说我的回答有不当内容,全删了!

  我决定再敲一次。

  实际上,FSK的原理是利用不同的频率表征不同的数字信号,例如比特1用某一种频率,比特2用另一种频率。

  FSK其实并没有什么研究意义,因为它相对简单。不过作为数字通信原理的入门学习,它倒是有点作用的。

  FSK在最新的数字通信中几乎没什么应用,未来的3G和4G通信基本上都用的是PSK、QAM等技术了。在现阶段的2G通信中,FSK则应用在GSM通信中。GSM使用的是GMSK,它是MSK的一种特殊实现方式,而MSK也是一种特殊的FSK,可以说是它的一个变种。FSK还有许多其它变种,例如AFSK等。FSK在业余无线电、北美的Call ID中也有应用。

  FSK的Matlab调制仿真程序如下。其输入参数为:
  g:0和1的数字序列,比特率为1Hz;
  f0:0的调制频率
  f1:1的调制频率

  例如,如果有一比特率为1Hz的比序列“1 0 1 1 0”,要用FSK来调制之,其中用频率为1Hz的正弦波调制比特0,频率为3Hz的正弦波调制比特1,则调制后的波形可以通过调用以下函数获得:fskd([1 0 1 1 0],1,3)。

  特此声明,该函数也不是我写的,我只是选取一段copy过来。

  function fskd(g,f0,f1)

  if nargin > 3
  error('Too many input arguments')
  elseif nargin==1
  f0=1;f1=2;
  elseif nargin==2
  f1=2;
  end

  val0=ceil(f0)-f0;
  val1=ceil(f1)-f1;
  if val0 ~=0 || val1 ~=0;
  error('Frequency must be an integer');
  end

  if f0<1 || f1<1;
  error('Frequency must be bigger than 1');
  end

  t=0:2*pi/99:2*pi;
  cp=[];sp=[];
  mod=[];mod1=[];bit=[];

  for n=1:length(g);
  if g(n)==0;
  die=ones(1,100);
  c=sin(f0*t);
  se=zeros(1,100);
  else g(n)==1;
  die=ones(1,100);
  c=sin(f1*t);
  se=ones(1,100);
  end
  cp=[cp die];
  mod=[mod c];
  bit=[bit se];
  end

  ask=cp.*mod;
  subplot(2,1,1);plot(bit,'LineWidth',1.5);grid on;
  title('Binary Signal');
  axis([0 100*length(g) -2.5 2.5]);

  subplot(2,1,2);plot(ask,'LineWidth',1.5);grid on;
  title('FSK molation');
  axis([0 100*length(g) -2.5 2.5]);
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 呼伦贝尔市悦动网络科技有限公司怎么样? 呼伦贝尔中汇实业有限公司怎么样? 呼伦贝尔油玉不绝电子商务有限公司怎么样? 如何避免wps卡顿? 属鼠的男人找对象是属什么,属鼠的人和什么属相合 96年鼠的姻缘在哪年 属相相合年份运势提升 2024属鼠找对象属什么最佳 黑客攻击网站能报案吗 如何用matlab完成fir数字滤波器仿真 matlab做信号与系统的仿真。求助啊。 MATLAB仿真信号 如何用matlab模拟简单的信号调制,初学求代码 MATLAB实现连续信号的采样与重构仿真 如何在朋友圈发链接说说时在底下加入自己的公众? 如何在朋友圈发链接说说时在底下加入自己的公众? 类风湿因子阳性,是不是可以肯定为类风湿关节炎? 类风湿因子阳性是不是类风湿关节炎? 风湿因子检查成阳性说明什么血沉22这些能说明什么请告知 类风湿因子阳性症状是什么 三星数码相机按哪个键查看照片 类风湿因子阳性是关节炎吗? 如何看待类风湿因子检查结果呈阳性 类风湿因子阳性+是什么意思? 用数码照相机拍照,拍完怎样回看 类风湿因子是阳性的怎么办? 类风湿因子呈阳性说明了什么 类风湿因子呈阳性就一定是类风湿关节炎吗? 什么是类风湿因子呈阳性和阴性 为什么通信系统仿真多用MATLAB,即matlab比其他仿真方式的优势 谁知道,哪有把视频声音扩大的软件啊?急 请问有无WINDOWS的扩声软件的? word2007中箭头怎么消除 扩音软件 一个异性每天找你聊一次天 说明啥 如果有个异性频繁找你聊天,会产生恋爱的错觉吗? 一个异性朋友经常主动找你聊天,说明什么? 如果一位异性朋友每天早晨跟你说早安,然后有空陪你聊天,每天晚上都找你聊天,还跟你道晚安好梦什么的? 昨天别人送了一只狗,今天把它锁在卫生间里,叫了一上午,我该怎么办? 一人有限公司是企业法人吗 异性朋友天天聊天正常吗,没什么事瞎聊那种了!! 我家的狗狗很乖巧,就是大小便不听话,现在我爸爸把我的狗狗囚禁在卫生间里,一直在叫,爸爸不理睬,好可 保险公司即将停售话术 为什么公司制度中的“股东”和“人”,既可以是自然人,也可以是法人 为啥有个异性朋友天天发信息给我找我聊天,认识我第一天起每天都会主动发信息给我? 我家的泰迪,每次把他关在厕所让他上厕所,他都不上,在里面一直叫。不忍心放它出来了它又会随地大小便。 有个异性朋友经常主动找我聊天 我从来没找过他 他问我为什么不找他聊天 什么意思 长期把狗狗关在卫生间会疯吗 一位异性朋友(女性)经常找我聊天,但是提到见面就很犹豫,甚至不回信息是什么意思?(同城,见过面。)