|
这个你得先了解一下托盘码垛的原理,如果你可以查看托盘的树结构:
Model/Tools/FlowItemBin/Pallet/Pallet>behaviour/eventfunctions/OnReceive:
nodefunction(node("/project/exec/globals/nodefunctions/palletentry"),c,i);
这个意思是指:如果托盘接收时触发,触发的规则引用上文中node的地址(该地址储存了一些code,是Flexsim默认的一些码放规则)。如果我们需要定义自己的码放规则,可以修改,例如:
OnReceive:
//nodefunction(node("/project/exec/globals/nodefunctions/palletentry"),c,i); 注销该行,不需要
//例如:
treenode current = c;
for(int i=1;i<=content(current);i++)
{
treenode item = rank(current,i);
setloc(item,getrank(item),getrank(item),getrank(item));
}
这段code的意思是,根据托盘的容量,将每一个物品设置位置,如果托盘有4个item,那么结果是:
item1 x=1 y=1 z = 1
item2 x=2 y=2 z = 2
item3 x=3 y=3 z = 3
item4 x=4 y=4 z = 4 如图所示:
如果你会使用Flexsim 脚本,那么你需要掌握关于空间位置、旋转、大小尺寸等函数,才能灵活控制码放规则。
PS:托盘的码放规则Flexsim并没有提供给用户(需要使用树才能打开),有兴趣的人可以做一个GUI,方便其他人使用。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|