我在Simulink中有一个“热质量”块,它代表一个热质量,这是一种材料或材料组合储存内部能量的能力。在Simulink的此标准块中,必须输入初始温度。只有一个信号可以连接到该块。该块的源代码如下所示:
component mass
% Thermal Mass
% The block represents a thermal mass, which is the ability of a material
% or combination of materials to store internal energy. The property is
% characterized by ma
我有一个M脚本,它通过GUI从用户那里获取参数值,然后用更新的参数值模拟simulink模型。我想把它转换成一个独立的exe文件,它可以在没有Matlab和Simulink的情况下运行(即只使用)。我使用的是MATLAB 2010 b 32位。
我的方法:
由于Matlab编译器不能转换sim函数,我首先使用快速仿真目标将我的Simulink模型转换为exe文件,然后从我的matlab脚本中调用exe文件。
[Gain1, Gain2]= InputDataGUI;
load Par.mat %contains parameter structure of the model
param_st
我有一个双轨模型在simulink中实现。为了控制速度,我使用了PID控制器,因此速度的输出如下所示:
现在,我想实现一个MATLAB函数或simulink块,它跟踪速度达到稳态行为的时间,并将其放入某种存储器中。我试图通过下面的MATLAB函数来实现这样的功能:
function y = fcn(t,v,dv,tv)
%#codegen
if (v==tv+0.01) & (dv<0)
y=t
end
T是时钟信号,v是速度,dv是速度的第一次推导,tv是目标速度.这个函数的问题是“在某些执行路径上没有定义y”。你有什么办法让这件事成功吗?
我对Simulink非常陌生,但我有很多编程经验,所以我不习惯在Simulink思维中思考问题。要么我错过了一些很明显的东西,要么很深的东西。
我想根据下面的方程实现一个线性滑动表的简单模型:
v = model input = table velocity
dt = simulation timestep
x = internal displacement variable = initially zero
x at current timestep = (x at last timestep) + v*dt
在C或C++中,我会声明一个变量x并显式地更新它,但是我不知道如何在Simul
我有一个Simulink模型,它有一个Stateflow图表,其中有一个流出范围,可以将数组/向量变量输出到其中。我使用的是Matlab 2013a的最新版本。这可能与我运行模拟时的警告有关:
Warning: The model 'xxx' does not have continuous states, hence
Simulink is using the solver 'FixedStepDiscrete' instead of solver
'ode3'. You can disable this diagnostic by expli
我已经为我试图构建的原型构建了一个simulink模型。我想通过将信号的数据应用到simulink模型来测试该模型,并且我使用(来自工作区)块将数据输入到模型中,但是这个错误显示为"Error in port width or dimensions。Output port 1 of 'model23/Subtract‘有23999个元素。这个端口不接受由输出信号指定的尺寸(或方向)。“我附上了模型,需要知道它有什么问题。