设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4674|回复: 0

[求助] [急]搬運系統的問請,請大家幫幫忙,謝謝!!!

[复制链接]
发表于 2010-8-7 13:47:47 | 显示全部楼层 |阅读模式
本帖最后由 qqball0908 于 2010-8-7 13:58 编辑
- \# ~# f  M& H) o
5 E3 f; F, O) k7 ^. ?8 M各位前輩好8 C0 `8 {* c% x% i2 X% m
我是eM-Plant的新手,目前因為研究而需要建一個半導體廠搬運系統的model,有一些問題想向各位請教。- @. K# W+ `  N: B- h
我目前有上萬筆(一天的量)車子搬運的起點至終點的資料,我需要將這些資料全部輸入到我的model裡,目的是要研究這一天當中哪條路容易塞車。/ m% M- Y7 s. H$ `# U$ }$ |9 r
我將資料進行換算,例如從A點至B點的搬運次數有3次,我就以一天24小時除以3,也就是每6小時發出一個搬運需求。在沒有搬運需求時車子會在軌道中隨便繞行,等到一有搬運需求,離該搬運需求最近的車子便要過去搬運。7 Y1 }# ]3 {# h
我的問題如下:
9 W' D! Q& D( _
3 O: U: h; w7 T8 ]3 m& Q; [! ^1.關於資料輸入的方面,起點的搬運時間與地點我是用Generator的物件與Method控制,終點則是用track裡的sensor控制,但上萬筆資料這樣要輸入好久,想請問各位前輩有沒有其他更好的辦法呢?
/ o* ~. C$ C7 @" F# V" Q( o. H5 p( R我目前想到的寫法如下:
" Z: k* X/ J1 _9 _8 N0 a(a)如果Machine1是搬運起點,放在Generator裡的Method
. c9 B1 f+ |' X2 A- ?3 M( K
is
% Y5 P# A% N7 f" M. H6 S1 K& S
do3 S9 R- f! `$ p% ?# p
if Machine1.occupied and transporter.empty then

6 }* d9 _6 p* ]9 U- Y, t2 ~    if Machine1.out=1 then

1 w3 P+ T8 A4 E( s) ~
     transporter.stop;
+ B/ l) Y* h9 I8 w4 d
       wait 30;

' q+ r3 |1 z2 n1 Q: y% \1 Y        Machine1.cont.move(
transporter);

  R/ v! Z( S, e* H9 S# M- @( u
     transporter.destination:=Machine56;
  q* Y7 [6 a: |$ f' J$ \- b. H
        Machine1.out:= Machine1.out+1;

9 E6 @7 x8 u# s4 i+ W/ Q
     transporter.continue;

4 |3 `& P: P" G, T) a  elseif Machine1.out=2 then

0 U  W: |2 T7 f
      transporter.stop;
, c' W2 o7 n* b! p4 U4 j
         wait 30;
# Z! Y4 K+ x4 l5 K( j+ H6 Q& Z
         Machine1.cont.move(
transporter);
3 r4 |7 g6 K' v/ F  J: L" D
      transporter.destination:=Machine76;
6 w+ i( ]. v/ e2 i, x
         Machine1.out:= Machine1.out+1;

( s: L' I& ]0 T2 O0 g/ d" F- c
      transporter.continue;
0 U2 `# i( w; M
end;
* J3 V' X, J  f9 I
end;
) U6 F: F- J% R5 }
end;
' ^% ~  {3 R; k8 w) g4 W& ^, h0 r, H, L( Y) d

* G' e" o% @" I2 A; Y) Y! G(a) 如果Machine1是搬運終點,放在trackSensor裡的Method
: _$ O$ {$ C! P& g2 \& j, d+ k+ k6 M
is

  g9 x5 P2 s' d( I3 wdo. @8 A. \- \& o9 a+ P
if transporter.occupied and transporter.destination= Machine1 then

) t! C  Y0 s$ G: U2 l$ \6 |
   transporter.stop;
3 `3 L7 W( r" `) [( Q% M4 I
     wait 30;5 y8 A( I7 J5 Q* S% C" @
   transporter.cont.move(Machine1);/ ~/ q" E/ e' {! U5 I4 O) y
   transporter.destination:=VOID;* g6 ^" B" a  D5 M1 u" A
     Machine1.put:= Machine1.put+1;
  s7 c( x9 X# ~) s" W! _* _# l   transporter.continue;
$ e1 s" c( u9 ?; A8 ^8 t. ^end;
5 n, ^6 Z7 n' w5 t" O$ o5 o7 s8 e  G( u
, y7 g2 C8 u* {4 k& r, e, m' }2.當有搬運需求發出時,如何去找系統中離該搬運需求最近且有空的車子?- N: Z# L& q, p! j2 D; d3 K

% u' c. S, w/ ]% K% O3.請問該如何讓車子在起點至終點的路途中車速從0開始漸增至最大速度,然後快到終點時再慢慢減到0?0 u1 ]* a% ]; g2 w" x; c
9 v3 D8 ^1 ^* j" I' |" ]3 L
4.我想讓車子搬運的路徑是走「最短路徑」,我使用transporter.destination:=xxxxx,讓車子知道他該去的目的地,但沒辦法使它走最短路徑,請問這該如何處理呢?
* n/ y5 C. B$ Y0 K( h: I8 p
& U* O, N$ s2 H5 o1 b/ p5.當有兩台車同時到十字路口時,一台有搬運東西,一台沒有,如何讓沒有搬運東西的車停下來,讓有搬東西的車先通過後再繼續前進呢?) x8 @6 v$ ]7 D/ {# {0 o0 t

* w5 f* T9 {3 J" E5 Q( i' ]2 I
* b5 N7 J2 H, U9 s
% B' G* h0 j9 F
' {7 a8 Z: n- e) T( V& O
以上麻煩各位為我解答了,非常感謝!!!!!
- [" L, Y- u1 u0 G
& Q% A/ ^) ^- s6 z& s7 U' d' b/ }5 O5 D- s6 t

- R) Z  j5 q- ?- g4 Q! I7 t
) l' a' U! b6 m( W, {; u
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-6 00:15 , Processed in 0.015668 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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