Worker学习,实现下面的简单案例!
一、案例介绍
不同的工件由不同的工人进行处理。
二、建模
三、参数设置
不同零件由不同的工人处理,此部分功能通过代码实现!
1、表文件
随机生成3种零件
2、工人池
3、协调器、工作区等等的设置不再详细介绍,可查阅以前的文章。接下来主要介绍“单处理”
4、若想实现零件A由工人A处理,零件B由工人B处理,零件C由工人C处理,需要在单处理调用“导入器”时先调用自定义的方法,方法内部根据零件名称为导入器指定相关的“服务”即可!
实现此部分功能的方法较多,具体可查看文章《[PlantSimulation]#C011#Simtalk语法学习-S02-setServices和setAlternativeServices》
粘贴一个使用setServices方法的纯代码实现
MATLAB
param type: integer -- Importer type (0=failure, 1=setup, 2=processing, 3=transport)
var part := ?.cont
var servicesTable: table[string,integer,string]
?.imp.getServices(servicesTable)
servicesTable.delete
switch type
case 0
?.failImp.import
case 1
?.setupImp.import
case 2
switch part.name
case "A"
servicesTable.writeRow(1,1, "Work_A",1)
case "B"
servicesTable.writeRow(1,1, "Work_B",1)
case "C"
servicesTable.writeRow(1,1, "Work_C",1)
end
?.imp.setServices(servicesTable)
?.imp.import
end
5、结束。