全球FlexSim系统仿真中文论坛

搜索
查看: 4767|回复: 2
打印 上一主题 下一主题

穿梭车模型代码问题,有点粗糙,逻辑还有些问题(V19)

[复制链接]
跳转到指定楼层
1#
17080134968 发表于 2019-10-22 00:53:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 17080134968 于 2019-10-22 00:55 编辑
/ ^" ^; |8 W2 V) s/ I7 Y0 z' y0 @: i  w$ }  p
穿梭车模型,代码还有些问题,有懂的可以给支支招啊!  ' i6 ~& [, h2 A$ H
1、小车运动轨迹问题,小车与提升机协作的时候,实体怎么引用以获取坐标?' ?! I; c) f* v) S" y
2、小车[size=14.3999996185303px]调度问题   ) `9 J3 b5 N, ?' {2 U. a: Y
[size=14.3999996185303px]
7 A: N. r) `8 s1 M3 I! g6 M, [5 m8 [0 c/ k, ^2 K
[size=14.3999996185303px]********************************************5 k$ r$ ~+ N3 Y9 \
/**Custom Code*/
- [+ N4 V7 x: c% {% Q1 m+ J1 VObject current = param(1);# N2 l9 s! O% X5 v
Object item = param(2);
. U& |8 X  R& |5 ?int port = param(3);; y5 Z6 V3 R' p; `0 q5 B
treenode destination = param(4);
6 J! |- f) C1 T, e% n: gdouble priority = param(5);" q1 M% K+ [7 W: L9 ?* B+ X
int preempt = param(6);) l. M& K) ~7 t; n/ H

6 q+ b( k; O+ L& K9 w7 Ftreenode dispatcher = current.centerObjects[1];  
9 W/ g. }+ S, u% ctreenode lift=Model.find("Elevator1");
6 V: V# G) `. Y/ s5 B) V# N& i+ I; M. @$ V6 }1 L5 M% i
) i4 c: |: C7 W+ |
treenode ts = createcoordinatedtasksequence(dispatcher);  ) M  U: }7 Q) a- {
int opkey = insertallocatetask(ts, dispatcher, 0, 0);
; b. h4 }9 i1 q, J8 Q& yint liftkey = insertallocatetask(ts, lift, 0, 0);  
! q1 Z% n) y8 {' }' \/ K' B* f$ W. s- ^1 {4 Y
int oploc=insertproxytask(ts,opkey,TASKTYPE_TRAVEL,liftkey,NULL );//30 e) H8 E  |4 Y- X
int liftloc=insertproxytask(ts,liftkey,TASKTYPE_TRAVEL,opkey,NULL );//3
* K( d, F; [. |insertsynctask(ts,liftloc);//6
7 |/ ~5 N9 E- {insertsynctask(ts,oploc);//5# L* {7 b  r, c

& O# ]5 T' l! B: ]# J) G7 E9 y
$ ~7 x6 V- p# m0 X0 i% t) U$ ~
int opload=insertproxytask(ts,liftkey,TASKTYPE_LOAD,opkey,liftkey);// 7+ K6 h0 u6 E* s5 h4 y  g, I7 }+ O
insertsynctask(ts,opload);//8
+ h9 w8 @  w; K5 J, s7 R* Oint moveupdes1=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),vectorprojectz(up(item),xloc(item),yloc(item),zloc(item),model()));
4 F/ e  E( a$ J# l# x/ yinsertsynctask(ts,moveupdes1);//11+ D& w" e3 z9 ?) c* E

% B0 B8 R; L& \; H  R, n" }. R0 y! ^. ^  {8 W8 F* n, M
int loadupdes1=insertproxytask(ts,opkey,TASKTYPE_FRLOAD,item,NULL);//18) g, A9 ?1 z4 R; C9 e- T8 F9 Y3 U
insertsynctask(ts,loadupdes1);//11! s2 m$ C1 V, y$ d! S- I3 p
) I  G* {$ z* s; X
int moveupdes2=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),item.level-1); " m' b) ^$ X  l
insertsynctask(ts,moveupdes2);
9 g/ D# i7 D! j& `& U% x
& I' T4 B0 a& O2 M: G( m, u$ @* `' X; Z3 D6 c8 `; ?3 S( |
int opmoveout=insertproxytask(ts,liftkey,TASKTYPE_MOVEOBJECT,opkey,model()); //13
. F; H1 K' Y' z6 m& s: zinsertsynctask(ts,opmoveout); . b2 r( ?; V% E2 Y% K! c% u
insertdeallocatetask(ts,liftkey); % ?8 a6 E8 r! a
insertproxytask(ts,opkey,TASKTYPE_SENDMESSAGE,opkey,item,1,0,0);
9 V7 Z0 f; D- Z8 C
# g- b- a* s/ Y. q1 d6 b6 o6 u; G" u1 y0 y7 Y3 V- x7 c% P
  [" m- l5 _: `2 |' w' s# R
insertproxytask(ts,opkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,-0.31+0.6*(item.bay)+1.25,0.72,item.level-1);
) K; e, s3 c6 q  D; e5 minsertproxytask(ts,opkey,TASKTYPE_UNLOAD,item,destination);//20& H$ g' v+ ^( U# L

/ ^( Q& X/ `9 h# ?0 l
: [5 ^, l: s& Q2 R# |, q+ {' p  M0 V1 }/ q) Q# ~# A" E
insertdeallocatetask(ts,opkey);
" ~  }; M  ~4 J- `; w2 {
0 }) @0 K* M! r) n& Rdispatchcoordinatedtasksequence(ts);  
) r( W' q" b: x! M8 z* l, ]  S0 b3 C
4 J, d- {% G6 A4 M# o( P
; m# k1 N: B: G
6 A4 f, q7 y0 l8 Y/ ^5 Q0 F4 Freturn 0;  
% i3 ]7 o/ y8 \* v8 u& h% G0 \. U6 ]& }" P* ]3 l
4 @& N) z$ b) b# c7 [

7 p( M# H: Y2 D" x

本帖子中包含更多资源

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

x

评分

参与人数 1威望 +10 收起 理由
沈瑞祥 + 10 赞一个!

查看全部评分

2#
沈瑞祥 发表于 2019-10-24 18:22:30 | 只看该作者
我之前做使用的是PF做的,代码做的还是更好封装,就是容易逻辑不清楚,目前来看你的模型穿梭车还有一些问题,一般是坐标出现问题。我晚点帮你再看看
3#
 楼主| 17080134968 发表于 2019-11-4 17:01:47 | 只看该作者
沈瑞祥 发表于 2019-10-24 18:22
) ?" g! T3 O5 B" \4 m我之前做使用的是PF做的,代码做的还是更好封装,就是容易逻辑不清楚,目前来看你的模型穿梭车还有一些问题 ...
! X- X$ X: P' z+ A$ G; b; u
用PF我大概知道怎么搞 了,但是不用PF怎么搞,版主帮我想想招!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-9-4 13:45 , Processed in 0.077053 second(s), 16 queries .

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

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