ZJWMATLAB 2022-01-07 17:14 采纳率: 50%
浏览 414
已结题

simulink建立PID没有传递函数,用的系统的模型,输出的初始值怎么设定?为什么只能从0开始?

问题遇到的现象和发生背景

在做pid控制时,我想要经过系统(example1)的输出去追踪参考值0,初始值和预想的不一样。

问题相关代码,请勿粘贴截图

example2是用作对比的,example1和example2用的都是s-function编的简单输出

img

这是系统的函数
example1的主要程序:

img


作为对比的不加控制的example2的主要程序:

img

运行结果及报错内容

为什么一开始的时候,蓝线控制的不应该是从2开始下降吗?

img

我的解答思路和尝试过的方法

之前使用Matlab-function试的,我的模型比这个复杂,这个问题是我简化了模型,出了一样的问题,所以好想用不了传递函数,设置不了模型输出的初始值,搞了半天了,实在搞不出来。

我想要达到的结果

img

  • 写回答

1条回答 默认 最新

  • CSDN专家-Matlab_Fans 2022-01-07 19:31
    关注

    如果Matlab Function不含动态特性的话,那么输出和输入之间是存在直接馈通的。
    可以加个IC模块,设置输出的初始值,系统在计算时,会以这个输出的地方作为计算起点。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月21日
  • 已采纳回答 1月13日
  • 创建了问题 1月7日

悬赏问题

  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改