当前位置:   article > 正文

现代检测技术课程实验编程:波特图分析仪原理仿真:一阶检测系统编程仿真_一阶系统在线仿真

一阶系统在线仿真

在这里插入图片描述

一、波特图分析仪原理仿真:一阶检测系统编程仿真题目描述

在这里插入图片描述

波特图分析仪原理仿真:一阶检测系统编程仿真题目描述如下所示

一阶检测系统的频率响应函数如下所示,其中时间常数τ=0.000523s,k=1

在这里插入图片描述
用该系统测量正弦交变力,若允许的幅值误差ε<±5%,请使用软件编程仿真,正弦交变力的允许频率范围。

二、波特图分析仪原理仿真:一阶检测系统编程仿真题目要求

波特图分析仪原理仿真:一阶检测系统编程仿真题目描述要求如下所示

  • 1、在软件(matlab/Simulink、LabVIEW等均可)中,对该一阶检测系统进行建模。

  • 2、使用软件产生模拟正弦扫频信号(信号幅值和扫频间隔可在程序的GUI界面进行设置。且可以为设置线性扫频和对数扫频。此要求为选做)输入该检测系统。

  • 3、将检测系统输出信号的幅值与输入信号的幅值相比较,得出幅值测量误差e。

  • 4、将所有频率值(频率范围可自定,提示:不超过1000Hz)和对应的幅值测量误差e曲线绘制出来,横坐标为频率f,纵坐标为幅值测量误差。

  • 5、 程序应该能够自动显示幅值误差ε<±5%对应的频率范围。

三、波特图分析仪原理仿真:一阶检测系统编程仿真实现步骤

3.1、一阶系统的Simulink建模

一阶系统的Simulink建模如下所示

在这里插入图片描述

3.2、幅值误差的判断曲线的GUI设计

幅值误差的判断曲线的GUI设计如下所示

在这里插入图片描述

3.3、在计算的回调函数中编写代码

在这里插入图片描述

在计算的回调函数中编写代码如下所示

function pushbutton_Ok_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton_Ok (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
A = get(handles.maxValue, 'String');
minF = get(handles.minFrequency, 'String');
maxF = get(handles.maxFrequency, 'String');
T = get(handles.edit_time, 'String');
K = get(handles.edit_K, 'String');
e = get(handles.edit_e, 'String');
 
A = str2double(A); 
minF = str2double(minF);
maxF = str2double(maxF); 
T = str2double(T);
K = str2double(K);
E = str2double(e);
 
y = [];
for f = minF: 1: maxF
    w = 2 * pi * f;
    e = A - K / (1 + w^2*T^2)^0.5; 
    y = [y e];
end
x = minF: 1: maxF;
axes(handles.axes1);
plot(x, y, 'r');
grid on;
hold on;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

3.4、运行结果如下

在这里插入图片描述

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/105384
推荐阅读
相关标签
  

闽ICP备14008679号