设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5363|回复: 7

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

    [复制链接]
发表于 2012-8-31 17:11:17 | 显示全部楼层 |阅读模式
现在德语烂 中文也跟着烂掉了 大家就不要拘泥于我奇怪的语言组织能力了。。。
: L; p4 H2 w- ~: B/ x: F
7 b3 ]: g3 E& F# h7 A7 n+ D关于对象 比如工作站 利用率是一个比较常用的统计数据 PS也自带了 类似workingtime之类的统计。。。2 E$ |1 u+ _) W/ ^) _

) l/ b9 |# J- n+ r不过 对于比如加工不同工件 或者进行不同操作之类的复杂统计 自带的变量就不够了。。。
2 h( q0 }. [9 p9 H' ?. i8 f- S3 P' G8 L+ Z  [: i0 r" T
我个人一般是用一个整型变量 来对这些不同的状态进行统计 也就是说在要统计的对象的状态发生改变的时候 也对这个整型变量赋给对应这个状态的一个值 最后 就只需要读取这个整型变量的统计表 就知道 对象的各种状态分布了。。。
; j+ u# X1 Y! g4 e) A" `7 z  |
. t% N( X; ^8 z. C& P比如 给小车定义整形状态变量status
9 c  j  ^3 ]5 S0 a( F! A+ c2 |1 q那么 在小车启动的时候 一般会用到+ c: V# t, l! T% ?/ l
@.currspeed:=xxx 或者 @.stopped:=false 之类的
, u' K. _2 ~6 G0 b) b这时候加上一句 @.status:=1 ) V& A% V- D  K# r
相应的小车停止的时候加上 @.status:=0
" L4 U0 r" \: o5 {) D; E, u: m3 @- Y; _& r0 ^  ]7 P1 J2 `
那么读取status就可以得到小车运行 和 停止的时间了
2 J  z" {) M$ Z6 k" z$ s1 r) h1 T5 M0 C4 T: H6 T
读取统计表的命令是getStatisticsTable
/ ]6 o, ?4 e4 S1 h* H9 T4 T另外 对于无法使用initstat命令的变量 可以用统计关闭再开启的方法来强制initstat

评分

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

查看全部评分

 楼主| 发表于 2012-8-31 17:12:27 | 显示全部楼层
本帖最后由 五五 于 2012-8-31 17:13 编辑 # M% n% T9 B1 l
8 a$ N8 u- C: `$ ^% ?2 ~5 @: V
另附相应 统计过程一份 虽然是德语大家可能看不懂 囧。。。变量名也很奇怪哟。。。
8 F$ }8 v9 l) Y6 |6 f4 J, E% d
+ y: v) ~: Z6 @" P6 D1 cis
2 }: h" M$ Y$ S' d  n; F# {        Xdim, i, j, k : integer;
8 V, K8 G& b. h        tab_temp : table; : Y- [* D1 p1 ^/ n/ Q4 V3 j* V& Z
        PufferKanal : object;9 \! c8 l+ F0 b7 z7 j' |5 o) x
do
: o- k& A- \  Y& S. J        tab_temp.create; 9 c- w4 ?1 p' N6 }% H
        Xdim := self.~.Tab_Stat.Xdim + 1;
. U; m$ @0 U1 P: g2 x2 e        6 Z% N4 J; f6 ^. A! N& e: Z' A
        for i:=1 to current.Tab_Verdichtungsplätze.Ydim loop6 N/ l8 V2 V8 N5 D
                tab_temp.delete;+ R, z) ]) V' q( e# Y( u
                ref(current.Tab_Verdichtungsplätze[1, i].ProcVerdichtung).getStatisticsTable(tab_temp);/ |8 Q8 I  I: F5 z9 Y8 i) e$ H, s
               
3 c4 Y. z* i7 ]5 u                ref(current.Tab_Verdichtungsplätze[1, i].ProcVerdichtung).statistikAktiv:=false;  S+ M0 f$ `) ?" A$ H
                ref(current.Tab_Verdichtungsplätze[1, i].ProcVerdichtung).statistikAktiv:=true;
% _+ z1 T+ V/ L5 l/ i: U4 i / ?, Y9 K  M# O; I! d: G
                for k:=1 to tab_temp.Ydim loop0 ~# R2 H+ s5 z9 Q5 t
                        self.~.Tab_Stat[XDim, 4-tab_temp[1,k]]:=self.~.Tab_Stat[XDim, 4-tab_temp[1,k]]+tab_temp[5,k];& t1 U0 t" e2 w, G
                next;% k' q: e( \: m* ]8 }% e; t9 a& \
                * ?1 \2 {3 p. k- K1 L, R$ I& o: Q, y
        next;" S: s: L$ n) K7 ]# v1 P: s! l; r  W
       
+ ]. k9 ]# _7 ]2 B8 b        self.methcall(3600);  J& @& z9 P1 D8 d; [6 ?: `
end;
( p& a, L" P" }9 }* Y: ]
 楼主| 发表于 2012-8-31 17:20:09 | 显示全部楼层
介个是读取出来的统计表 第五列 也就是我用到的那一列是每一个值持续的时间

本帖子中包含更多资源

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

x
发表于 2012-8-31 21:10:12 | 显示全部楼层
五五 发表于 2012-8-31 17:20
& s: s& R) j: A介个是读取出来的统计表 第五列 也就是我用到的那一列是每一个值持续的时间 ...
- e5 [# p4 N3 _/ z$ N* B, ]* e
看来有空得跟你学几个德语词汇了,不然都看不懂了 !当物件本身统计功能不能满足要求时,只能自定义收集数据,这个方法很好,这个帖子应该是技术帖了,呵呵!
) w0 W8 `" [$ {& y/ HProcVerdichtung这个是个什么东西啊,怎么在Table里面?# Y4 U# e  C8 H. v( r+ f$ t# q
4 C( D8 P9 r- b; V2 e
& H2 g4 i6 Y& {/ u! B" ^( I, S
 楼主| 发表于 2012-8-31 21:17:52 | 显示全部楼层
囧 解释一下 表格的第一列 也就是 current.Tab_Verdichtungsplätze[1, i] 保存的是object
; ?* B* Z6 t: m6 v' g' y# k而procVerdichtung就是这个object的状态统计变量。。。是一个简单的整型变量。。。
发表于 2012-8-31 22:44:18 | 显示全部楼层
五五 发表于 2012-8-31 21:17
: T  o1 f& d* G, _6 f9 ]/ r" L囧 解释一下 表格的第一列 也就是 current.Tab_Verdichtungsplätze[1, i] 保存的是object ; ?" ^! T9 ^' u6 D3 q
而procVerdicht ...

% v5 I7 p: ]$ t/ H明白你方法了,很巧妙,一般人想不到的,赞!
 楼主| 发表于 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-21 01:14 , Processed in 0.019127 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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