如何在matlab中使用Simlink PID工具实现控制器

o0lyfsai  于 2023-05-29  发布在  Matlab
关注(0)|答案(1)|浏览(165)

我想知道是否有可能在matlab中使用simlink的PID架构来实际控制硬件-而不是对其建模。
我一直在玩一点在matlab中的PID调整-并制定了正确的增益为我的系统(或至少足够好)。
现在我想在matlab中使用真实的的硬件实现实际的控制回路。在这种情况下,我试图使用波长计的测量来稳定激光器-尽管从matlab的Angular 来看,我基本上有两个函数-一个返回当前波长,另一个用0-100的输入改变波长。
我如何让花哨的PID对象在一个循环中工作,例如我在每个循环中输入数据,并获得所需的输出以稳定给定增益的情况-或者我应该只是硬编码方程?
我试着浏览了一些simlink的例子--但在我看来没有多少实际的实现--大多数只是建模。
提前感谢您的任何建议。

k4emjkb1

k4emjkb11#

MATLAB(不带Simulink,或在纯仿真模式下带Simulink)不是实时环境。尝试用它来实时控制硬件是行不通的,除非你有非常慢的采样率。
如果您的采样率很低,那么您可以使用设备驱动程序(如Data Acquisition Toolbox中的驱动程序)将硬件连接到MATLAB
您在Simulink文档中没有找到任何关于实时实现的信息,因为Simulink的实时实现机制是通过Simulink Coder实现的。您需要将其与实时环境结合使用,例如Simulink Desktop Real-Time(如果您的采样速率相对较慢),Simulink Real-Time或许多其他第三方实时形式因素之一。

相关问题