主要内容

收集离线估计的频率响应实验数据

这个例子展示了如何使用频率响应估计块来执行频率响应估计实验,并存储数据以供以后离线估计。在实践中,当您所部署的环境缺乏用于在线估计计算的资源时,您可以使用这种方法对物理工厂实时执行实验。在本例中,为了便于说明,您将在Simulink®中建模的植物上进行实验。金宝app

模型和实验参数

该示例使用已经包含频率响应估计器块的模型,该频率响应估计块被配置为收集用于离线估计的实验数据。打开模型。

mdl =“collectfreqrespestimdataex.slx”;Open_System(MDL)

该模型包含具有PI控制器的闭环配置的工厂。频率响应估计器块接受控制信号作为输入.它将控制信号加上植物输入扰动。

频率响应估计器块被配置为在SINESTREAM模式下运行实验,其中示例中使用了相同的实验参数仿真期间的在线频率响应估计.然而,在这个例子中,评估模式参数设置为离线.在这种配置中,块注入指定的扰动信号并收集响应数据,但不执行估计。该块配置为在频率下使用SINESTREAM信号20 w = logspace (0, 2)

收集实验数据

模拟模型。该块执行实验并收集响应数据。范围显示了应用的SineStream信号和系统响应。

SIM(MDL)

模型被配置为在块输出端口记录估计数据数据(看使用信号日志记录导出信号数据有关数据记录的信息)。数据存储在MATLAB工作区中金宝appsimulink.simulationdata.dataset.目的Logsout..因为数据是唯一的Logged Port,您可以访问第一个条目中的记录数据Logsout..这价值该条目的字段是一个包含四个字段的结构。

logdata = logsout {1} .values
logdata = struct with fields: Ready: [1x1 timeseries]

准备好字段是包含逻辑信号的次数,该逻辑信号指示哪些时间步长包含用于估计的数据。对于SINESTREAM信号,该字段表示丢弃估计(沉降周期)的估计的扰动周期。扰动含有应用于植物的中书扰动。这PlantInpul.PlantOutputTimeSeries在块输入中包含信号y, 分别。

估计频率响应

如果您在具有有限的计算资源的部署环境中收集此数据,则可以使用数据执行频率响应估计离线,使用该数据fr命令。给frlogdata.结构和您使用的相同频率频率块中的参数。fr流程logdata.获取频率响应数据(FRD.)包含在这些频率下估计响应的模型。

sys_estim =苦恼(logdata,w,'rad / s');大小(sys_estim)
FRD模型具有1个输出,1个输入和20个频率点。

检查估计的频率响应。

图BODE(SYS_ESTIM," b *’

也可以看看

相关的话题