设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9064|回复: 6

[求助] 关于read模块的使用

[复制链接]
发表于 2009-5-11 18:13:34 | 显示全部楼层 |阅读模式
5仿真币
我用一个equation使用时间来驱动,模型里面是当当前时间是5的倍数是来计算,这是需要从数据库里读取一个数据,然后将这个数据加1再存入数据库。
( o. ^0 |- V6 b/ d问题是我不知该如何设置这个read模块,因为我读出来的都不会变。# V8 U' W* @" m. t! j6 C3 x
望达人指教一下,不甚感激。
附件: 您需要 登录 才可以下载或查看,没有帐号?注册
 楼主| 发表于 2009-5-12 10:41:26 | 显示全部楼层
那我要实现类似的功能应该怎么做呢?
 楼主| 发表于 2009-5-12 12:03:59 | 显示全部楼层
原帖由 linweixu168 于 2009-5-12 11:56 发表 3 Y9 B7 Q+ @% B. e! \9 q
这个比较简单,你稍微考虑一下应该就做的出来的

- S- T2 c0 b8 J6 u( ?  L. r- I
; q6 ~5 \* k3 r! t4 e, |汗...我考虑了很久都没考虑出来...麻烦指教一下了
 楼主| 发表于 2009-5-12 16:03:51 | 显示全部楼层
原帖由 linweixu168 于 2009-5-12 14:13 发表
( ]6 x) V+ [% w( T6 j这个模型不知道是否实现了你想要的目的没
2 p# R+ o* s5 T! {/ p; m0 N/ j
" j6 T0 I2 g- f4 O7 D) f6 z
这个解决了计数的功能,但是我最想知道的是如何从一个数据库中读取数据,在我equation模块中需要计算的时候它就能读进来,比如current time是某个值的倍数的时候触发equation里面的计算功能,读取数据库当前值,然后通过计算输出覆盖之前从数据库读取的值。
# I' X3 Q4 W# ]4 w1 t0 w* \. r刚刚接触extend不到一个月,实在是菜鸟一个,望多多指教啊。
发表于 2009-5-13 16:49:41 | 显示全部楼层
楼主的模型基本可以了,但问题主要存在以下几点
+ d2 t( @" U& X# x) N- l3 V
7 K  S3 l5 `  B; N! d' B) D, g% p2 a(1)正如Jeff 指出,这是个连续模型,所以在 Read 和 Write 模块的 Options 选项中都应该选择 Continous - Read (Write) data during run, x! f" \  r% h' \
(2)Equation 模块中需要对如果 inCon0 % 5 不等于0时, outCon0 做出赋值,否则这个输出是一个无意义空值,导致以后计算都无法正常进行
! P& m/ N; ?  z- M* n& h3 K: H- b) A" n8 s& {6 K
if(inCon0%5 ==0)
' O/ @7 Z$ U& B) C9 u6 F5 t   outCon0 = inCon1+1;
# a; E, I' w& h& xelse) a$ P& P% x* g; {# z
  outCon0=0;1 t6 e/ w5 y2 k( D7 R; _
8 X9 e5 y# u4 k; m" k7 n8 G; c$ Y
(3)需要对数据库中的那个单元的数值 做初始化,否则就会又是一个空值,导致后续计算有误。可以在字段属性中设定每次运行前输出化为0。
2 S$ }! E' K" k3 B7 Q0 t* z2 P/ |0 p5 _7 R6 P4 u0 @
以下是改正的模型。其中,我增加了一个 Pause Sim 模块,每一步都会停下来,这样可以更清楚地观察数据变化。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2009-5-14 10:47:26 | 显示全部楼层
原帖由 iesim 于 2009-5-13 16:49 发表 & [% Z2 w6 G& M# A0 E7 \3 p* p
楼主的模型基本可以了,但问题主要存在以下几点
+ U/ [% r/ k; S& I+ ^! Y1 \8 ]" d; V9 ^5 K  F3 l8 l" J3 [- r9 U
(1)正如Jeff 指出,这是个连续模型,所以在 Read 和 Write 模块的 Options 选项中都应该选择 Continous - Read (Write) data during run7 M. J& q, D8 ?3 O, A
(2)Equation 模块中需要对如果 inCon0  ...
: I8 G7 D) D3 Q) R. Z( t

0 R6 W! {  W+ O这个好像不行,数据库的值一直在1和0之间跳动,每次加1啊
发表于 2009-5-14 11:00:56 | 显示全部楼层
这个模型的输出表现和 Equation 中的逻辑是匹配的,如果你希望其他结果,只能修改 equation 中的逻辑。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-11-18 02:24 , Processed in 0.014831 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表