2012-11-19 62 views
0

我已衍生弹簧质量系统的组合的传递函数在s域,它的形式为计算传递函数系数

G = (as*s + bs +c)/(ps + q) 

我有与位移涉及作为输入和力作为测量数据输出,我知道频率和采样率。

如何使用MATLAB计算常量a,b,c,p and q的值?

+0

你确定这是你的系统模型吗?你得出的模型是非因果的,这意味着它不能物理存在。假设你得出一个因果模型(例如1/G),你可以使用MATLAB系统识别UI。最简单的方法是估算一个过程模型,您可以从那里开始。 – HebeleHododo

+0

顺便说一下,非因果系统手段;系统的输出取决于未来的输入。因此在实践中不可能存在。 – HebeleHododo

+0

非常感谢回复。想想我需要深入系统识别工具箱。关于因果关系的最后一个问题。你是否认为这是非因果关系,因为零的数量多于极点?从来没有可能研究这样的系统。按照我从弹簧阻尼器组合中得出的方式。再次感谢 – sat0408

回答

0

您尚未提供足够的信息以提供完整的答案(*),但听起来您将要进行某种最小二乘曲线拟合。 fminsearch将为此工作,但有更好的选择。我倾向于使用统计工具箱中的nlinfit,但也有优化工具箱中的lsqcurvefit和曲线拟合工具箱中的fit

(*)您的数据究竟是什么?在已知频率的正弦驱动力下,它是否作为时间的函数而位移?但是,您必须拥有多个驱动频率的数据,因为您需要了解多个频率的响应才能提取传输函数的所有5个参数,对不对?

+0

感谢您的回复。你是对的,我有超过1频率的数据。这些数据是通过位移作为输入和力作为时域输出获得的。所以我试图对数据做一些简单的处理,但是这个输出是一个复数的列向量。我应该如何使用这个列向量来与理论导出的传递函数相关联。也许我还没有理解确切的概念。如果你能详细阐述一下这件事,你真好。在此先感谢 – sat0408

+0

我对tfestimate一无所知,所以如果您对此有特定疑问,我建议您打开一个新问题。但是这听起来像是你真正的问题是关于如何解决这个特定实验的数据分析问题。这实际上不是针对stackoverflow的主题,所以我建议在其他地方寻求帮助(教授/ ta是这是一个班级,同事如果这是工作等)。祝你好运! –

0

是的,这可以使用fminsearch完成。欲了解更多信息,请阅读function documentation

+0

非常感谢您的即时回复。为了使用这个,我需要获得上述形式的测量数据的传递函数,但是当我使用特征函数时,我得到了一个复数的向量。你能请教我如何进一步进行。这将是非常有帮助的。 – sat0408