全球FlexSim系统仿真中文论坛

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

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

[复制链接]
跳转到指定楼层
1#
17080134968 发表于 2019-10-22 00:53:09 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 17080134968 于 2019-10-22 00:55 编辑
9 _6 F' @+ Z) u0 v' Z) Q0 u' L3 Y! O
/ t+ f- _' T  w. H穿梭车模型,代码还有些问题,有懂的可以给支支招啊!  9 m5 \% e  |5 G1 t
1、小车运动轨迹问题,小车与提升机协作的时候,实体怎么引用以获取坐标?
2 G  O; R, {5 P2、小车[size=14.3999996185303px]调度问题   ; x; a* m. b9 U& i# ~
[size=14.3999996185303px]+ P2 w7 W: [4 L# W, g
  n8 @8 P+ P5 ~4 ?/ {
[size=14.3999996185303px]********************************************
) t; |6 h7 H7 b7 L, ~3 X/**Custom Code*/) t4 I+ r: e: L1 I6 N  g
Object current = param(1);  Q4 }' Q+ h3 C4 j% h  I; b" H
Object item = param(2);
0 R! T( C0 H3 F6 ^, jint port = param(3);
, j8 \8 `5 Y1 \! t5 ?& s( ], Rtreenode destination = param(4);5 \% o5 y' D9 i; R( i
double priority = param(5);
5 l2 d, S- M6 L5 ?1 gint preempt = param(6);
$ u2 y' `) G$ f; _
& ]% v4 m. I; R4 Q3 Z' P$ W4 \. u9 xtreenode dispatcher = current.centerObjects[1];  & d% u0 y; [# k5 l6 e4 v
treenode lift=Model.find("Elevator1");
8 C9 B- Y* V  O' _' P" _" U& a" o2 a/ h, i5 C- a  r- z
9 q/ d3 O: k1 `$ J2 w, K4 d
treenode ts = createcoordinatedtasksequence(dispatcher);  
7 O0 Q  ^3 K% E+ H6 S2 r0 @7 G# vint opkey = insertallocatetask(ts, dispatcher, 0, 0);
8 i1 N' k1 Y  v" Tint liftkey = insertallocatetask(ts, lift, 0, 0);  . W* u0 @4 L/ n8 N

- A, w6 \) D& l& i) b3 [; [$ }int oploc=insertproxytask(ts,opkey,TASKTYPE_TRAVEL,liftkey,NULL );//35 u7 n: c- O9 c9 b+ z7 _
int liftloc=insertproxytask(ts,liftkey,TASKTYPE_TRAVEL,opkey,NULL );//3$ Z8 `/ ]* t6 a
insertsynctask(ts,liftloc);//6
. |9 R5 L/ D; p! I0 V  `insertsynctask(ts,oploc);//5
' C, K8 C7 @) t  w6 ^- K; I% E8 R, ~9 N) N- @& O% ^

* ?. `* y* X7 ~& c
' z+ a8 R: f) K- Q  P, Y* Eint opload=insertproxytask(ts,liftkey,TASKTYPE_LOAD,opkey,liftkey);// 7
! U0 }% Z. J' T' uinsertsynctask(ts,opload);//8$ Y* |% p0 S' s) q, a! d! E( g) a1 s' p
int moveupdes1=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),vectorprojectz(up(item),xloc(item),yloc(item),zloc(item),model()));
& X; C+ z/ t" ^6 X; Y7 \8 Q' |insertsynctask(ts,moveupdes1);//11! ~$ J& {0 P& K: q6 K* ~3 Q( _; }

& ^8 X" W3 Q& F; |7 \! J; D$ M' k# j, y/ N, c3 a9 F0 ~" W" u2 V+ }
int loadupdes1=insertproxytask(ts,opkey,TASKTYPE_FRLOAD,item,NULL);//187 C4 k& }6 ~. j# b* K6 U7 [/ T0 t
insertsynctask(ts,loadupdes1);//11) H8 r1 \5 [7 n9 i! D3 N- t
6 Q2 q' ^" M2 i2 P: }( u
int moveupdes2=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),item.level-1); . r4 U2 f. w/ m$ \. ~- W- @
insertsynctask(ts,moveupdes2); 3 B) T+ y0 g# |$ u! w3 x1 @, l2 R
( a/ f. `  d+ M" U- z& L
) ?6 |) \6 v- g8 [% ~9 [9 B
int opmoveout=insertproxytask(ts,liftkey,TASKTYPE_MOVEOBJECT,opkey,model()); //13
+ U: V  w7 h" e0 X; Rinsertsynctask(ts,opmoveout);   B: Q. {: s( a: G6 M
insertdeallocatetask(ts,liftkey);
. o9 D) o( n: V$ C& ]2 v0 Ginsertproxytask(ts,opkey,TASKTYPE_SENDMESSAGE,opkey,item,1,0,0);
% y! N  a) t- e) c6 J+ {2 ?
1 C7 B5 M+ c3 b4 y8 Z
0 S$ \5 K+ J/ U
, Z4 b8 F7 D# W: R  B2 n) Qinsertproxytask(ts,opkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,-0.31+0.6*(item.bay)+1.25,0.72,item.level-1);
2 Y1 C# V, z; p6 o* n" _9 z; T# u# oinsertproxytask(ts,opkey,TASKTYPE_UNLOAD,item,destination);//20( b1 @! |! S" c4 n, _  h% X2 L0 C
) ]: b8 s: H: m9 k  i* D

" D: `5 @2 z. N3 q# E* F9 x  ?4 G% [9 }  p
insertdeallocatetask(ts,opkey); ( ~; U+ L+ O$ L) @/ ^

8 d) c9 U/ }1 T, }3 `" b. V% v8 j$ sdispatchcoordinatedtasksequence(ts);  
- g; F) y! Q" j9 _9 |& \* w, T- Z6 R3 h
* K( n; o# |% D* a- ?
# R& t8 _& S+ m' ]2 _0 y  @' W
return 0;  
7 Y( g, V$ a; T) |: f' U" n
) c" y! V3 H" P* X8 y: d$ G% f3 e. d/ v, I6 n

$ I4 R. `' _  b0 k6 }

本帖子中包含更多资源

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

x

评分

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

查看全部评分

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

本版积分规则

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

GMT+8, 2025-9-1 21:00 , Processed in 0.077183 second(s), 16 queries .

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

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