登录发现更多内容
首页
资讯
分类
目录
索引
酷站
发帖
用户名
Email
自动登录
找回密码
密码
登录
立即注册
立即登录
立即注册
其他登录
QQ
微信
门户
Portal
论坛
BBS
搜索
搜索
本版
用户
帖子
设置
我的收藏
退出
0
0
0
首页
技术交流
›
FlexSim案例一 合成器根据托盘信息打包不合格返工、两次 ...
返回列表
FlexSim案例一 合成器根据托盘信息打包不合格返工、两次不合格废除
[ 复制链接 ]
WangQinqin
技术交流
800
0
2018-4-24 15:44:28
[i=s] 本帖最后由 WangQinqin 于 2018-4-24 15:50 编辑 [/i]
[align=center][size=4][color=#ff0000]FlexSim案例一 [font=微软雅黑]合成器根据托盘信息打包不合格返工、两次不合格废除[/font][/color][/size][/align]
[align=left][size=4][color=#ff0000]1、模型描述[/color][/size][/align]
[align=left][font=微软雅黑]合成器根据托盘带的[/font]Type信息来决定打包数量,通过处理器加工检测,如果合格则发送到合格区,如果不合格那么返回重新加工检测,并且优先加工检测不合格产品,如果第二次仍然不合格则作废。[/align]
[align=left][size=4][color=#ff0000]2、模型布局[/color][/size][/align]
[size=4][color=#ff0000]
[/color][/size][align=left][size=4][color=#ff0000]3、代码编写[/color][/size][/align]
[align=left][font=微软雅黑]发生器1为合成器第一个进入端口连接物体所以应产生托盘,并在创建触发中写入其附带的信息及被检查次数。[/font][/align][align=left][font=微软雅黑]int type = duniform(3,6);[/font][/align][align=left][font=微软雅黑]item.Type = type;[color=#9acd32]//根据此信息决定打包多少boxs[/color][/font][/align][align=left][font=微软雅黑]item.color = Color.byNumber(item.Type);[color=#9acd32]//对不同托盘赋颜色[/color][/font][/align][align=left][font=微软雅黑]item.jiance = 0;[/font][color=#9acd32]//判断检测次数[/color][/align][align=left][font=微软雅黑]
[/font][/align][align=left][font=微软雅黑]合成器的合成列表由两个节点控制,通过改变其节点数值来改变打包数量[/font][/align][align=left][align=left][font=微软雅黑]if(port == 1)[color=#9acd32]//只有当托盘进来时才对打包量进行改变,boxes进来无影响[/color][/font][/align][align=left][font=微软雅黑]{[/font][/align][align=left][font=微软雅黑] int type = item.Type;[/font][/align][align=left][font=微软雅黑] treenode list1 = getvarnode(current, "componentlist").as(Table).cell(1, 1);[color=#9acd32]//获取合成列表及总合成数量节点[/color][/font][/align][align=left][font=微软雅黑] treenode list2 = getvarnode(current, "targetcomponentsum");[/font][/align][align=left][font=微软雅黑] [/font][/align][align=left][font=微软雅黑] setnodenum(list1,type);[color=#9acd32]//对两相关节点赋值[/color][/font][/align][align=left][font=微软雅黑] setnodenum(list2,type);[/font][/align][align=left][font=微软雅黑]}[/font][/align][align=left][font=微软雅黑]
[/font][/align][align=left][font=微软雅黑]处理器中当物体进入时使jiance数加1,发送至端口根据不同情况发送到不同不同区域[/font][/align][align=left][font=微软雅黑]进入触发[/font][/align][align=left][font=微软雅黑]item.jiance++;[/font][/align][align=left][font=微软雅黑]
[/font][/align][align=left][font=微软雅黑]发送至端口[/font][/align][align=left][font=微软雅黑]double num = uniform(0,100);[color=#9acd32]//随机产生0到100的随机数[/color][/font][/align][align=left][font=微软雅黑]
[/font][/align][align=left][font=微软雅黑]if(num <= 80)[color=#9acd32]//设置80%的合格率[/color][/font][/align][align=left][font=微软雅黑]{[/font][/align][align=left][font=微软雅黑] for(int i = 1;i <= item.subnodes.length;i++)[/font][/align][align=left][font=微软雅黑] {[/font][/align][align=left][font=微软雅黑] Object boxi = item.subnodes;/[color=#9acd32]/获取托盘上boxes的引用[/color][/font][/align][align=left][font=微软雅黑] boxi.color = Color.green;[color=#9acd32]//如果合格那么boxs变绿[/color][/font][/align][align=left][font=微软雅黑] } [/font][/align][align=left][font=微软雅黑] return 1;[color=#9acd32]//合格送至1端口[/color][/font][/align][align=left][font=微软雅黑]}[/font][/align][align=left][font=微软雅黑]else[/font][/align][align=left][font=微软雅黑]{[/font][/align][align=left][font=微软雅黑] for(int i = 1;i <= item.subnodes.length;i++)[/font][/align][align=left][font=微软雅黑] {[/font][/align][align=left][font=微软雅黑] Object boxi = item.subnodes; [color=#9acd32]//获取托盘上boxes的引用[/color][/font][/align][align=left][font=微软雅黑] boxi.color = Color.random();[color=#9acd32]//不合格随机赋颜色[/color][/font][/align][align=left][font=微软雅黑] }[/font][/align][align=left][font=微软雅黑] if(item.jiance == 2)[/font][/align][align=left][font=微软雅黑] {[/font][/align][align=left][font=微软雅黑] return 3;[color=#9acd32]//如果两个不合格作废[/color][/font][/align][align=left][font=微软雅黑] }[/font][/align][align=left][font=微软雅黑] else[/font][/align][align=left][font=微软雅黑] {[/font][/align][align=left][font=微软雅黑] return 2;[/font][/align][align=left][font=微软雅黑] }[/font][/align][align=left][font=微软雅黑] [/font][/align][align=left][font=微软雅黑]}[/font][/align][align=left][font=微软雅黑]
[/font][/align][align=left][font=微软雅黑]暂存区1优先将不合格产品发送出去,在暂存区1进入触发中[/font][/align][align=left][font=微软雅黑]if(port == 2)[color=#9acd32]//如果进入物体来自端口2,说明是不合格产品那么对其节点位置重新排序到1号使其被优先发送[/color][/font][/align][align=left][font=微软雅黑]{[/font][/align][align=left][font=微软雅黑] item.rank = 1;[/font][/align][align=left][font=微软雅黑]}[/font][/align][/align]
点赞
0
收藏
0
────
0
人觉得很赞
────
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
举报
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
立即登录
点评
高级模式
本版积分规则
回帖后跳转到最后一页
返回
浏览过的版块
资料共享
信息公告
技术交流
登录开启您的创作之旅
快速登录,立即开启您的创作之旅~
登录
热门问答
查看更多
1
厂区生产线布局优化案例!新做的!
厂区生产线布局优化案例!新做的!
12099
227
2
Flexsim二次开发之塔吊
Flexsim二次开发之塔吊
6145
45
3
FlexSim2016 中国象棋
FlexSim2016 中国象棋
6018
44
4
快递分拨中心案例~新手可参考
快递分拨中心案例~新手可参考
5636
62
5
关于Processs Flow 使用的两个案例(AGV Elevator案例/子母穿梭
关于Processs Flow 使用的两个案例(AGV Elevator案例/子母穿梭
5485
34
博主榜
Htenghui
+ 10630
白可露
+ 7753
liguanyu
+ 6759
4
Round2011
+ 6323
5
梁之安
+ 6321
6
zgh1120
+ 5341
7
ishelo
+ 4710
8
linweixu168
+ 3722
9
liuzhifan
+ 3628
10
adysunshine
+ 3566
首页
分类
目录
索引
我的