全球FlexSim系统仿真中文论坛

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

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

[复制链接]
跳转到指定楼层
1#
17080134968 发表于 2019-10-22 00:53:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 17080134968 于 2019-10-22 00:55 编辑
& G3 e* C# l  |4 g" c0 ]& v. H: l% S9 t6 a  x
穿梭车模型,代码还有些问题,有懂的可以给支支招啊!  * C7 [, H4 _; |4 P# E5 `- j
1、小车运动轨迹问题,小车与提升机协作的时候,实体怎么引用以获取坐标?
. u# s' V8 [! I* P- O2、小车[size=14.3999996185303px]调度问题   
  _7 }, M3 t: g5 t[size=14.3999996185303px]
( t, t) X' {/ W/ r& ]) |8 l- ]: k+ Z7 _- N9 q4 ]
[size=14.3999996185303px]********************************************. I: m2 ~  c7 j8 ]( |
/**Custom Code*/
/ I' x) p) B' Q) I" l1 x* Q- @Object current = param(1);1 B" c7 H& i! w% ~' ?' x- ~" b
Object item = param(2);
5 S1 m% l4 S3 ], G* d$ ^: i' uint port = param(3);# l: D! }+ n7 Q1 ~/ p7 r$ \! i5 Z& X
treenode destination = param(4);" Q- ^: ^5 B2 H% i: w- M! M
double priority = param(5);* J  U: F8 F5 v! ^5 W* T) i
int preempt = param(6);
5 M( P1 Z$ }6 T9 |5 v8 ~  P7 ^3 _+ S* O/ |! C/ [) \9 p0 i: H
treenode dispatcher = current.centerObjects[1];  
5 G6 k7 p4 Y: W  Itreenode lift=Model.find("Elevator1"); ! V7 s3 _! E" O7 W* B: \( i2 d

5 \% b$ o. B0 s/ d+ Y3 n$ T
* i% a7 o/ l; r; ltreenode ts = createcoordinatedtasksequence(dispatcher);  8 d2 w1 s( r- V( e$ i9 |
int opkey = insertallocatetask(ts, dispatcher, 0, 0);
7 R6 m) d; d, V; p3 Cint liftkey = insertallocatetask(ts, lift, 0, 0);  
- N3 c1 w+ w( r  W  X% x2 T
  M1 F- S/ U9 {- \# w# e- f' xint oploc=insertproxytask(ts,opkey,TASKTYPE_TRAVEL,liftkey,NULL );//3
  C5 k" @6 k' n6 b) K% S$ pint liftloc=insertproxytask(ts,liftkey,TASKTYPE_TRAVEL,opkey,NULL );//3
$ T5 A$ E+ X8 y+ winsertsynctask(ts,liftloc);//6
8 g4 G7 b7 ?/ R+ ^3 |- X2 Oinsertsynctask(ts,oploc);//5
4 c, v3 b6 _* V1 U; L6 F) G
( B; r( h( w9 I# Y$ _" q+ }8 W7 b3 [* z6 I

( ]" ]* e& h4 t1 Z9 \int opload=insertproxytask(ts,liftkey,TASKTYPE_LOAD,opkey,liftkey);// 7
9 k9 K" U' K4 s7 ?5 `insertsynctask(ts,opload);//8
7 w6 o3 C  u; M# w: m% pint moveupdes1=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),vectorprojectz(up(item),xloc(item),yloc(item),zloc(item),model()));
  r# n( u* }  X! ainsertsynctask(ts,moveupdes1);//113 p9 T$ }+ P0 q6 n' P9 _

; i9 D0 b+ l2 g" l
! W. R3 t! F, c8 T+ i' V/ c. Yint loadupdes1=insertproxytask(ts,opkey,TASKTYPE_FRLOAD,item,NULL);//18
/ z* e$ F  _: T. ]+ t( O/ pinsertsynctask(ts,loadupdes1);//11, W. }  T1 b( [+ q. ~
3 k9 V! @2 M5 @. M* d* X; E4 f- K& I
int moveupdes2=insertproxytask(ts,liftkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,xloc(lift),yloc(lift),item.level-1);
, c3 c5 Y1 ~8 ^$ l6 A# rinsertsynctask(ts,moveupdes2); 8 g* [  B7 g' B0 h# [5 K  R
5 @( X( h4 L; v: u" E" D* S5 N# Z

0 e1 O7 ^2 a  ]: sint opmoveout=insertproxytask(ts,liftkey,TASKTYPE_MOVEOBJECT,opkey,model()); //138 S9 j7 w, x' a; j" R3 Q$ d0 G
insertsynctask(ts,opmoveout);
. L/ y- A( ~1 W8 W6 d0 iinsertdeallocatetask(ts,liftkey);
# N0 t1 D+ P+ ]! y/ m& L/ Pinsertproxytask(ts,opkey,TASKTYPE_SENDMESSAGE,opkey,item,1,0,0);
! ~. ^) E3 ?; R$ q% l4 ^. Y! k: C1 X( Z; O' q; S

1 M! R/ k5 I5 r0 p9 D: M* v
" |' V% c# o6 y; l0 m! ninsertproxytask(ts,opkey,TASKTYPE_TRAVELTOLOC,NULL,NULL,-0.31+0.6*(item.bay)+1.25,0.72,item.level-1);
5 C  i0 F: F/ W) I( J& I8 ]insertproxytask(ts,opkey,TASKTYPE_UNLOAD,item,destination);//209 Y! l. c$ U8 V+ E3 t% G% d+ [/ h
. r' J1 {0 o5 T, j
9 O% C( W" Z9 }# A  n

' z( E) x+ Q7 j3 O  Finsertdeallocatetask(ts,opkey);
; J. ]0 g& t. i
! Q0 o/ v: ^- odispatchcoordinatedtasksequence(ts);  
0 L; @9 y2 f7 H3 w7 N3 d
/ T: z) V8 T$ ~8 I/ o9 a6 P  Q! b( w
' \+ p+ u5 z9 I4 d. s2 |8 Y
/ h3 t9 T; @. L$ k$ k; A. ?0 w8 `return 0;  8 j# l, v' P- n: {3 z# N" D+ w

' ~6 c' y2 ^6 b  p! Q9 p7 F" K) \7 C5 @( o- p& t) r6 z' p
4 N6 u7 I1 G# Z3 E4 R

本帖子中包含更多资源

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

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
, P% t0 g9 N) v% p- ~我之前做使用的是PF做的,代码做的还是更好封装,就是容易逻辑不清楚,目前来看你的模型穿梭车还有一些问题 ...
( ]+ A! H0 b+ `8 U( s0 U* \
用PF我大概知道怎么搞 了,但是不用PF怎么搞,版主帮我想想招!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-10-26 16:05 , Processed in 0.074171 second(s), 15 queries .

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

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