全球FlexSim系统仿真中文论坛

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

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

[复制链接]
跳转到指定楼层
1#
17080134968 发表于 2019-10-22 00:53:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 17080134968 于 2019-10-22 00:55 编辑
9 N: Z; ]4 i2 {+ e
* d) |7 C2 P$ @8 e' C穿梭车模型,代码还有些问题,有懂的可以给支支招啊!  
4 Q$ r" i7 O. m: B; i5 B1、小车运动轨迹问题,小车与提升机协作的时候,实体怎么引用以获取坐标?# o: }: g- s% X  q' l: T+ }* i- u
2、小车[size=14.3999996185303px]调度问题   9 A3 l% L& h/ K% R; d. L0 ^7 u
[size=14.3999996185303px]
3 Y  n+ ~  D2 a! k
3 l* d( Y4 w& e4 n& B* D* N[size=14.3999996185303px]********************************************
% _  n: {) u: w7 ~: t/**Custom Code*/3 l  p; _# @3 {# S! |$ T: _# ~4 [
Object current = param(1);% ?3 q) J8 V* c* X$ n) q) B
Object item = param(2);7 s8 w8 O4 }; f& W% L" E
int port = param(3);
5 l! o2 E% \; r' H5 Btreenode destination = param(4);' |+ l+ S& O2 [% s8 I8 q8 c
double priority = param(5);0 U' m, J7 @% b, G
int preempt = param(6);
3 g9 X' T/ P$ r/ P$ S
5 ?: b  }% F- ytreenode dispatcher = current.centerObjects[1];  3 _6 _* r, ?/ |9 b3 ^0 R1 J0 X2 O0 E
treenode lift=Model.find("Elevator1");
; o& n1 i7 @6 L+ P1 d8 D1 M& w1 [0 [; g
" h! b6 B% n1 N) Y
treenode ts = createcoordinatedtasksequence(dispatcher);  ( ~% m6 v! [9 T1 d. p; F0 s
int opkey = insertallocatetask(ts, dispatcher, 0, 0); - Z% q* I5 ~  j9 s( t
int liftkey = insertallocatetask(ts, lift, 0, 0);  ' p0 o+ B6 h( C( K: ^9 e0 P( X

6 D! V6 V, s! f, xint oploc=insertproxytask(ts,opkey,TASKTYPE_TRAVEL,liftkey,NULL );//3
5 `2 M* e! L/ f" F1 a& @int liftloc=insertproxytask(ts,liftkey,TASKTYPE_TRAVEL,opkey,NULL );//3
0 X3 A! x5 o4 P% Yinsertsynctask(ts,liftloc);//6: {' w& {0 [* b7 P+ D5 F& i
insertsynctask(ts,oploc);//5
$ T7 \- X4 v5 d  ~( R0 z4 ]8 D* ]2 e  C( N" N3 p
5 {3 {3 _0 a% f& O. |* N# ^5 D
+ V- g& }4 p& v3 c; h6 i
int opload=insertproxytask(ts,liftkey,TASKTYPE_LOAD,opkey,liftkey);// 7$ U8 h, B: H  O4 c! z4 x
insertsynctask(ts,opload);//81 ^: r) R7 |9 n4 b# W
int moveupdes1=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),vectorprojectz(up(item),xloc(item),yloc(item),zloc(item),model()));
# r4 r: c4 Y6 M9 l$ w& I; Kinsertsynctask(ts,moveupdes1);//116 \7 h& J3 u  A& m

. G+ E/ c4 N2 K6 X* `/ X- p& I7 [1 m" U( g- [; C
int loadupdes1=insertproxytask(ts,opkey,TASKTYPE_FRLOAD,item,NULL);//18* M# |! h- ]' g. [4 B
insertsynctask(ts,loadupdes1);//110 ~6 [& Q- }4 }( u% k/ X' `
5 v! A' O, e6 Q
int moveupdes2=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),item.level-1);
; j: D" a& f# B0 @3 j, [! Oinsertsynctask(ts,moveupdes2); " K) Z4 r2 a. K, |" p0 e
% c, f/ F+ }  U% p+ y5 z
% s$ z# Y$ ~% `. Y
int opmoveout=insertproxytask(ts,liftkey,TASKTYPE_MOVEOBJECT,opkey,model()); //13
' T8 K" M& F3 S! R0 {' tinsertsynctask(ts,opmoveout);
2 t/ [) k- i! q# einsertdeallocatetask(ts,liftkey); 9 p; l. P, w, g/ b8 ^0 e4 W
insertproxytask(ts,opkey,TASKTYPE_SENDMESSAGE,opkey,item,1,0,0);
0 a- E( t, p3 ~8 K* @# V2 J& M! y) [4 k, g/ `. H
) \0 t1 o* r6 W2 D

' k% D' W1 `5 W" Y$ D: zinsertproxytask(ts,opkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,-0.31+0.6*(item.bay)+1.25,0.72,item.level-1);
$ i. V  l! o7 `$ X) m" x( f# _insertproxytask(ts,opkey,TASKTYPE_UNLOAD,item,destination);//20
5 p6 L$ l8 M0 R( [8 {2 ?2 p' f" [- o0 i6 @
" b( f# N+ j8 h" L  A  ]7 M; O

. @) ]% F7 P% Pinsertdeallocatetask(ts,opkey);
! f( s" z! r% @/ C: G3 H/ N1 A
9 `( C& Q" H6 Z' sdispatchcoordinatedtasksequence(ts);  
3 \8 Z1 U3 |( U5 z: ^$ h! x( m
- I4 p0 R0 u* q' @
: U; ^; J2 q+ Z  d" k  Y- `; @  d6 T
return 0;  : s) i) I4 p; [4 c2 y1 k

6 |2 `3 z5 @9 q5 i: @
, `0 V3 `0 h5 V) e! B; @; J
" J' u' l; w0 n+ l+ C

本帖子中包含更多资源

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

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; K; ?8 H5 X% N
我之前做使用的是PF做的,代码做的还是更好封装,就是容易逻辑不清楚,目前来看你的模型穿梭车还有一些问题 ...

4 A1 K0 M) a0 }  S! A用PF我大概知道怎么搞 了,但是不用PF怎么搞,版主帮我想想招!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-5-9 08:28 , Processed in 0.059639 second(s), 15 queries .

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

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