Matlab 版 (精华区)

发信人: ramjet (史努比狗), 信区: Matlab
标  题: [合集]关于simulink的问题,请帮忙!
发信站: 哈工大紫丁香 (2002年10月29日12:19:16 星期二), 站内信件


────────────────────────────────────────
 billsun (bill)                       于 2002年03月08日13:30:29 星期五 说道:

我在用simulink做仿真的时候用到“gain"即放大器模块,其中放大倍数我想用一个变量
代替。
我看到的例子中都是这么做,但是怎么设定初始值呢?,例子中好像是当打开文件时,
把变量的值自动调入到工作空间中
我的疑问是怎么设置?

────────────────────────────────────────
 Christy (Striving for Chartership)   于 2002年03月08日13:41:05 星期五 说道:

这你得通过后台编程了吧.
我的办法就是先在gain模块中把增益设为k,
在MATLAB命令行中输入你想设的值,比如k=10,然后再打开
simulink文件并运行.
当然,可以用循环来改变k.比如编一个.m文件写:
function changing_k()
for(...)
 k=f(...);
%f(...)是k的变化函数;
simu XXXX;
%XXXX是你想打开运行的simulink文件名(好象是这个命令吧,版主再确认一下)
end
end
运行这个文件.

────────────────────────────────────────
 billsun (bill)                       于 2002年03月08日14:28:06 星期五 说道:

请问后台编程怎么做,有这方面的书籍吗

────────────────────────────────────────
 Christy (Striving for Chartership)   于 2002年03月08日14:44:01 星期五 说道:

在这个例子中就是编.m文件.
当然如果你自己做MATLAB界面,你有可以进行后台编程了,
因为MATLAB有虚拟的面向对象编程环境(象VB一样).
可以看薛定宇的书.

────────────────────────────────────────
 xuedy (dingyu)                       于 2002年03月08日20:26:46 星期五 说道:

初值问题可以使用Simulink本身的PreLoadFcn来定义。
循环时调用Simulink模型时用
[t,x,y]=sim('模型名',其它参数);
的格式,这样可以将优化问题嵌入到循环程序中,为了加速计算,还应该采用Accelera
tor模式。
DY

────────────────────────────────────────
 Christy (Striving for Chartership)   于 2002年03月09日00:14:45 星期六 说道:

呵呵,偶命令记错了//blush

────────────────────────────────────────
 billsun (bill)                       于 2002年03月09日09:08:05 星期六 说道:

你的意思是只能用命令建simulink模块的时候才能用吗?

────────────────────────────────────────
 xuedy (dingyu)                       于 2002年03月09日21:17:26 星期六 说道:

必须用sim调用,否则如何将仿真过程嵌入寻优过程?
建模仍然可以用Simulink去绘制框图

────────────────────────────────────────
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:4.027毫秒