全球FlexSim系统仿真中文论坛

搜索
查看: 8055|回复: 5
打印 上一主题 下一主题

Message Trigger 这东西怎么用?

[复制链接]
跳转到指定楼层
1#
rightred 发表于 2011-5-24 19:38:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
第一步:9 ?( ~4 B. Y% U# K5 Z% H5 ?: E
treenode item = parnode(1);3 X) B* o2 E* Z
treenode current = ownerobject(c);' q+ [/ k! t7 l2 n( Q
treenode source=node("/source",model());
  ^% S# S* S7 S( v, Bint port = parval(2);" }) Y  L* D3 U& y: Q! Y
if(
. _+ R% A# e% O' Z' O        content(current)>=20* h; H# s3 Z* a6 Y; X
)
* i5 s4 f" j" C# l# S- zsendmessage(source,current,1,0,0);
3 a6 }/ V1 V) c( d  t: J. k& qreturn 1;
  b4 r; h, _8 {; V5 G( K第二步:0 Q. D" L+ z# [8 Z
/**Custom Code*/
+ U6 j% G2 p2 s  |treenode item = parnode(1);4 d3 B' i3 n1 v0 a2 e
treenode current = ownerobject(c);+ Q/ i* Y' X" I5 P6 ~+ H
treenode source=node("/source",model());
' {! H) k  v: w: I( Z8 }" lint port = parval(2);% g  K. W' L' L
if(- v$ R+ }+ F3 E. w2 n2 m
        content(current)<59 F$ J+ T' A& W/ W  q
)
& V3 C7 T# M3 bsendmessage(source,current,2,0,0);
2 ^( ?8 r7 t2 R/ sreturn 5;4 T& q9 u- |- X' {, y) d
第三步:) Q5 i. t. M6 o+ `0 Z5 c
4 M. [9 r6 n+ p6 X5 Y
/**Custom Code*/
" M6 U( |6 h; S4 i5 u. etreenode current = ownerobject(c);0 k# i$ H  ~" S1 f1 r) u
unsingned int uservalue=(unsigned int) msgparam(1);
( l% Y+ f: d" X  Mswitch(uservalue){
: G3 A5 G/ P) `; \8 R        case 1:closeoutput(current);break;- m( D( ^$ @0 n$ \
        case 2penoutput(current);break;  F8 `5 s6 ^. T: \: E1 l0 J5 E7 \
}
1 Y; U7 e) T& M/ W" a5 c: {最后系统报错是第三步,说是没有定义uservalue:
" Q+ u( q8 A8 z' U5 B
, C0 n' P& }# E% _. h) Oline 3        unknown variable "unsingned"4 E4 _6 n; r% h  B1 a* s

2 u% Y8 C2 o: Yline 3        syntax error, unexpected type identifier, expecting ';'
, ^0 t& n4 }6 zCould not finish parsing because of previous errors.0 ~  _- r) X! w( U! F
2 ^8 l9 m" T" h; h# {# F, A3 O1 g
请问各位大大这是怎么一回事....
2#
atdmin 发表于 2011-5-26 14:18:40 | 只看该作者
应该是这样子的吧:$ ~; M. w/ M, Q$ q) U+ D8 L
/**Custom Code*// ~  |7 J2 F7 V
treenode current = ownerobject(c);
! U1 K) g# S6 h% G- fint uservalue= msgparam(1);' h9 \, ~1 l7 K9 g. x! P
switch(uservalue)5 m7 F8 u( M, {  A/ r2 `+ @
{! F% y& F9 }# k
        case 1:closeoutput(current);break;# a" J- _7 R5 g9 Y2 ^# p0 }
        case 2penoutput(current);break;3 Z  G( w; p' J' N8 m
}
& D1 c5 t! R. o) Y) [  Y你试试,看看行不行
3#
 楼主| rightred 发表于 2011-5-26 14:52:25 | 只看该作者
2# atdmin " g5 o" N% [5 d  ]

; u  p4 @5 D: @/ f- E, r7 P  d! i8 o* B0 @3 A5 e2 a
嗯,这样的话已经不报错了,就是功能还是无法完成...很奇怪
4#
atdmin 发表于 2011-5-27 09:35:56 | 只看该作者
你要的功能是这样子的吗:
0 e. i( \* B+ Y% m- T第一步:(写在传送带或者缓存区的进入触发)4 j2 A& E) _% U# j
当当前实体上的临时实体个数大于或者等于20的时候,给发生器发送消息,并赋予第三步的uservalue值为1;# X- i. P' f) ^- H4 s) B) R
第二步:(写在传送带或者缓存区的离开触发)2 u% H, g  l4 y. ?4 {
当当前实体上的临时实体个数小于5的时候,给发生器发送消息,并赋予第三步的uservalue值为2;
% @# s' Y, U7 r% {# Z第三步:(写在发生器的消息触发)
( a: j8 r8 n4 k( B当uservalue值为1时,关闭发生器的输出端口;) d: }: n. }& \4 V3 ?
当uservalue值为2时,打开发生器的输出端口;
1 Q- T& q1 P9 `  `3 Q
& g7 J; \) T. z. a( |7 O     我也是新手,互相学习下!
5#
atdmin 发表于 2011-5-27 09:39:14 | 只看该作者
3# rightred
$ e7 H7 z' ~( h7 ?* z, {" L2 y/ x0 O* |+ v
这是我建的模型,你可以看看,或许对你有用!

本帖子中包含更多资源

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

x
6#
 楼主| rightred 发表于 2011-5-29 11:17:57 | 只看该作者
5# atdmin
/ z3 U; Y5 ^0 ~9 h' }% U
; Q  w. A. Q# R6 n) u& V3 p+ Z2 Y0 D1 L+ w( Z
嗯...是这样的。谢谢你的模型拉
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2025-8-31 02:34 , Processed in 0.079745 second(s), 14 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

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