全球FlexSim系统仿真中文论坛

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

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

[复制链接]
跳转到指定楼层
1#
17080134968 发表于 2019-10-22 00:53:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 17080134968 于 2019-10-22 00:55 编辑
" ^8 l6 j3 K% @' A3 k8 R, J6 j% b5 ?( Y- U) x
穿梭车模型,代码还有些问题,有懂的可以给支支招啊!  
/ m- Y3 m; t3 K: {1、小车运动轨迹问题,小车与提升机协作的时候,实体怎么引用以获取坐标?
& g& ?/ {, @( J& c- _2、小车[size=14.3999996185303px]调度问题   & \# m$ t9 z8 j: g
[size=14.3999996185303px]
$ @; ]% y9 p1 _/ H7 k
) Z* t1 ^$ Y, l  Z3 m" t; q; L. Y& ^[size=14.3999996185303px]********************************************
6 _3 w& R4 r# Z+ }- o8 V- u/**Custom Code*/
+ W0 X8 j2 s% P& _Object current = param(1);
' x6 F. o* }& u3 h9 z% L% [0 tObject item = param(2);
) z  p- U1 c; b# v3 tint port = param(3);
1 Z. X* \* @1 w# ~3 gtreenode destination = param(4);
+ j* k  l) C2 D8 o* S1 a* ldouble priority = param(5);* h. o  G1 J  l1 r
int preempt = param(6);, z3 X) P% t$ O  q( G0 I( z/ I" w
; t8 U  A4 ~4 Q. \- i: l2 D
treenode dispatcher = current.centerObjects[1];  
: x  t* x5 q; f/ d% X. ^0 Btreenode lift=Model.find("Elevator1"); / Y( C7 o# U- @* b0 N. t/ z# k0 w

; j+ }6 s. T: L$ Q" Q; k
' F) h& c2 j7 f7 f! J! Qtreenode ts = createcoordinatedtasksequence(dispatcher);  . {3 ]5 z6 }8 P
int opkey = insertallocatetask(ts, dispatcher, 0, 0); " m" G+ Y* Y! z6 A1 l  J
int liftkey = insertallocatetask(ts, lift, 0, 0);  ( V' I+ M! O% d$ m" M5 {+ y
- {, M+ O. d- s0 r
int oploc=insertproxytask(ts,opkey,TASKTYPE_TRAVEL,liftkey,NULL );//3
! ^- U8 S6 @$ hint liftloc=insertproxytask(ts,liftkey,TASKTYPE_TRAVEL,opkey,NULL );//3: ^; r9 E0 P' v/ A8 K
insertsynctask(ts,liftloc);//6# h6 A0 c- [/ q/ @" K6 L! C: \+ X  h
insertsynctask(ts,oploc);//5* j+ t& H$ _% s+ r6 e( A

+ R. ^: F6 ]# v! }/ x+ V! |7 B
0 M8 m8 d3 w$ D" l2 k; d8 w) R+ }, u* k% R, O8 [
int opload=insertproxytask(ts,liftkey,TASKTYPE_LOAD,opkey,liftkey);// 7
& G0 P( p/ X- Kinsertsynctask(ts,opload);//8: R+ ~* q+ z0 N# k; q5 R
int moveupdes1=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),vectorprojectz(up(item),xloc(item),yloc(item),zloc(item),model())); 0 {! A' L; I! i1 W" L/ p& ]$ G
insertsynctask(ts,moveupdes1);//112 m7 A+ V  O/ R! [, l) R! r7 n
* N- U, |3 z; b8 W/ P4 |6 ^5 T

+ s# S" Z9 y% J+ i  m9 k) r$ Hint loadupdes1=insertproxytask(ts,opkey,TASKTYPE_FRLOAD,item,NULL);//189 ~- Z2 X$ E! B
insertsynctask(ts,loadupdes1);//11
9 T) |. w, [6 [1 v) x7 D+ t
$ j  A0 t; g+ h$ f$ H+ D- T) c& gint moveupdes2=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),item.level-1); " q' U% B% n; h( M' V
insertsynctask(ts,moveupdes2);
/ u. r0 @8 f' S* q" O# a. {! C+ L% a: }0 m2 l- O
7 n9 @, I" V% S# x" V% l6 t
int opmoveout=insertproxytask(ts,liftkey,TASKTYPE_MOVEOBJECT,opkey,model()); //13
5 Y: N( H% ?' m. einsertsynctask(ts,opmoveout); 9 T3 e6 [1 h- T1 ?2 ^% t3 l3 V
insertdeallocatetask(ts,liftkey);
0 d. P4 w6 w; ^5 U" iinsertproxytask(ts,opkey,TASKTYPE_SENDMESSAGE,opkey,item,1,0,0); * M; ?- p( O: x8 H$ U
6 Y7 I) e$ m% t, y6 s8 X
$ j0 p+ t. l& v5 _( b
7 u! }& z2 r) Y# z, h% P( f
insertproxytask(ts,opkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,-0.31+0.6*(item.bay)+1.25,0.72,item.level-1);
; \  z& ?! Y; I8 }5 @insertproxytask(ts,opkey,TASKTYPE_UNLOAD,item,destination);//20" ~) w, u/ H$ A* n
4 b7 z* C, g& U, U0 b8 q

% j- F, j8 k& Z, T5 k
- [2 f$ l- d& p/ Einsertdeallocatetask(ts,opkey);
2 f0 L) l5 f( B% w& d+ K, R- L# R- j* u8 W
dispatchcoordinatedtasksequence(ts);  9 [1 l! x  s; ~& u( ?

. O5 g* Y( z  a7 |. O" Q" D8 U+ _1 y. B( o$ k

9 H/ H9 f* l1 S/ ^: dreturn 0;  
- C3 r* @- b8 ~. u% B/ [
6 h* L; _. ^2 ]) ]: n8 E& N6 E1 B9 d1 }0 D2 t5 I2 q4 v
/ G4 f! Y: q% j: C/ q

本帖子中包含更多资源

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

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, \  ~! H7 d, T$ L" L
我之前做使用的是PF做的,代码做的还是更好封装,就是容易逻辑不清楚,目前来看你的模型穿梭车还有一些问题 ...
! d) T  b0 K; f' f8 s. a' y
用PF我大概知道怎么搞 了,但是不用PF怎么搞,版主帮我想想招!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-28 16:42 , Processed in 0.063670 second(s), 15 queries .

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

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