设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5358|回复: 7

[原创] 关于对象利率用及其他状态的统计

    [复制链接]
发表于 2012-8-31 17:11:17 | 显示全部楼层 |阅读模式
现在德语烂 中文也跟着烂掉了 大家就不要拘泥于我奇怪的语言组织能力了。。。
* m7 I; K* H1 ]: V7 e: J  k
4 ?$ ~6 e0 U, \4 g# \3 |关于对象 比如工作站 利用率是一个比较常用的统计数据 PS也自带了 类似workingtime之类的统计。。。) |5 q, ^5 e) E/ a& }

% S/ b& R+ \/ w9 B8 r; q; p: i不过 对于比如加工不同工件 或者进行不同操作之类的复杂统计 自带的变量就不够了。。。
3 s& _1 j( n8 G0 _# C' d  S$ w. n. Z
5 P# X8 m0 Y, H) U) B我个人一般是用一个整型变量 来对这些不同的状态进行统计 也就是说在要统计的对象的状态发生改变的时候 也对这个整型变量赋给对应这个状态的一个值 最后 就只需要读取这个整型变量的统计表 就知道 对象的各种状态分布了。。。
. D5 g1 C2 I. o: i/ V' \  _& ?
- d! ?" J. o9 P3 J# r( y8 E比如 给小车定义整形状态变量status 0 p" `- M3 F. k
那么 在小车启动的时候 一般会用到
7 x# h2 Q" \  [2 a4 r6 r' |@.currspeed:=xxx 或者 @.stopped:=false 之类的 9 u/ @1 n# ^( u0 O7 A
这时候加上一句 @.status:=1 2 }7 R* q& q! S2 G9 k# {- u# u0 @
相应的小车停止的时候加上 @.status:=0' w. C8 b- j; ?( s2 X% _. E9 K

3 ?$ [; ^, i; [7 t% A/ S那么读取status就可以得到小车运行 和 停止的时间了5 }* z$ I/ U, }2 \2 K8 p) Y

. |+ d% o8 P2 i) \/ I! ^读取统计表的命令是getStatisticsTable ! @  W) D- c/ x7 {
另外 对于无法使用initstat命令的变量 可以用统计关闭再开启的方法来强制initstat

评分

参与人数 1仿真币 +23 收起 理由
linweixu168 + 23 赞一个!

查看全部评分

 楼主| 发表于 2012-8-31 17:12:27 | 显示全部楼层
本帖最后由 五五 于 2012-8-31 17:13 编辑   s- _- Z2 W1 w& H3 h

& z2 h: x, F8 A0 [2 P6 k: E另附相应 统计过程一份 虽然是德语大家可能看不懂 囧。。。变量名也很奇怪哟。。。
( |. M* f  Q9 s9 y# G5 y2 U+ L5 Y
1 s" f5 \: m$ q7 }0 ^7 J0 l) ^is
. X: ]  B, K7 F  c. q/ r( Y7 Q        Xdim, i, j, k : integer;
7 _( R" R3 L4 k: a4 u1 e        tab_temp : table; ! J8 v- I& u, D! o) B
        PufferKanal : object;8 _+ k" J( L% z# x% }8 q; Y
do- m! l5 [! v7 x( Y8 O: U1 t
        tab_temp.create; 1 _4 q9 N+ V9 K. U
        Xdim := self.~.Tab_Stat.Xdim + 1;
3 S  c! \- A! d: [/ d       
! y  _8 y: Y& C! y* o: `0 {7 ~! k, m        for i:=1 to current.Tab_Verdichtungsplätze.Ydim loop
( A! O3 P% t5 k3 a6 o) d                tab_temp.delete;
+ R3 e( E& k* C* W9 P1 y6 A, O  A! b7 q1 M                ref(current.Tab_Verdichtungsplätze[1, i].ProcVerdichtung).getStatisticsTable(tab_temp);" i( p& l% P$ e8 k. x/ \
               
5 R4 z# R3 m, p0 N$ Y                ref(current.Tab_Verdichtungsplätze[1, i].ProcVerdichtung).statistikAktiv:=false;* Y) l: r7 j: }
                ref(current.Tab_Verdichtungsplätze[1, i].ProcVerdichtung).statistikAktiv:=true;
2 Y$ ?9 d( P! {
4 L- y! V) U+ T( ^4 p; ]                for k:=1 to tab_temp.Ydim loop
. q( \- C- y0 M5 `' @: t                        self.~.Tab_Stat[XDim, 4-tab_temp[1,k]]:=self.~.Tab_Stat[XDim, 4-tab_temp[1,k]]+tab_temp[5,k];
1 H* w+ A# F' F                next;
2 U, V* \* s; H" A                - c: o) A' q/ A% {1 O
        next;
# ~5 |  K' L* q7 T        ; Y0 v5 G; I7 t% U
        self.methcall(3600);6 A( ^$ N/ t- z8 p9 A3 B+ o0 C
end;( }0 }  d4 A' f; o& f% E6 ~3 [
 楼主| 发表于 2012-8-31 17:20:09 | 显示全部楼层
介个是读取出来的统计表 第五列 也就是我用到的那一列是每一个值持续的时间

本帖子中包含更多资源

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

x
发表于 2012-8-31 21:10:12 | 显示全部楼层
五五 发表于 2012-8-31 17:20 7 X1 P0 }/ @* Z/ l+ }- }
介个是读取出来的统计表 第五列 也就是我用到的那一列是每一个值持续的时间 ...
* x! k  }5 ~% _# u0 s- z
看来有空得跟你学几个德语词汇了,不然都看不懂了 !当物件本身统计功能不能满足要求时,只能自定义收集数据,这个方法很好,这个帖子应该是技术帖了,呵呵!. r: j) I, A7 x& q9 [* P9 ^* F5 q
ProcVerdichtung这个是个什么东西啊,怎么在Table里面?) t& }7 g. y" E2 O
. _- Q; B/ ]8 t2 ^
( t& N' w$ n' h
 楼主| 发表于 2012-8-31 21:17:52 | 显示全部楼层
囧 解释一下 表格的第一列 也就是 current.Tab_Verdichtungsplätze[1, i] 保存的是object
9 [& f% T% X$ Q而procVerdichtung就是这个object的状态统计变量。。。是一个简单的整型变量。。。
发表于 2012-8-31 22:44:18 | 显示全部楼层
五五 发表于 2012-8-31 21:17 . o+ c  u$ w. k
囧 解释一下 表格的第一列 也就是 current.Tab_Verdichtungsplätze[1, i] 保存的是object 2 @# L* ^4 R! @3 c) ]
而procVerdicht ...

  T; E1 \9 r) s" p! u0 J明白你方法了,很巧妙,一般人想不到的,赞!
 楼主| 发表于 2012-10-21 21:05:11 | 显示全部楼层
有人要 找不着 人工置顶哈~
发表于 2015-7-2 10:08:01 | 显示全部楼层
学习了!楼主是在德国学Maschinenbau-Infomatik方向的吗,还是Logistik?

点评

经济工程  发表于 2015-7-3 16:45
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-20 14:27 , Processed in 5.696082 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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