[精选]基于代理的自动工艺实现方案PPT40(1)14890.pptx
《[精选]基于代理的自动工艺实现方案PPT40(1)14890.pptx》由会员分享,可在线阅读,更多相关《[精选]基于代理的自动工艺实现方案PPT40(1)14890.pptx(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于代理的自动工艺实现方案背景代理方案背景概念:l lCIMS:计算机集成制造系统l lCAPP:计算机辅助工艺规划或设计 l lCAD:计算机辅助设计l lCAM:计算机辅助制造l lMIS:管理信息系统l lMAS:制造自动化系统l lCAQ:质量保证系统CADCAD/CAPP/CAMCAPPCAMCAQMISMAS结构图CIMS应具有如下的性能:它应作为/集成设计辅助的工具来工作,即自动地从工程(产品设计)方面获得输入数据,并且产生出一整套工艺规程,供编制生产计划和生产、材料、质量控制等使用;它应为加工的指令安排、生产计划调度、工资单计算和材料发放等提供基本数据;它应是适合于不同零件种类
2、的通用化设计;它应具有一个能充分利用计算机潜力的交互式在线处理系统;它应具有便利的用户界面,并为操作人员提供指南;系统是模块化、结构化的,以便容易扩展,修理和维护;与其生产设备一样,它应具有经济性。传统CAPP的主要困难l l研制周期长l l适应性差l l实用性差l l低水平重复 提出基于代理的CAPP 采用目前较为先进的代理技术自动工艺是CAPP系统的核心部分,自动工艺模块性能直接影响整个系统的性能。通过代理技术来实现自动工艺过程是目前较为先进的技术。在自动工艺流程上,一般有四个主要的模块:输入器、生成器、审查器以及批准器。它们分别是用四个代理类来实现的。因此,相应的四个代理类分别是:输入器
3、代理类、生成器代理类、审查器代理类以及批准器代理类。代理代理概念及其性质代理池概念及其机制代理概念及其性质概念:是一类在特定环境下能感知环境,并能自治地运行以代表其设计者或使用者实现一系列目标的计算实体或程序。从软件实现角度,它是一个计算机程序,通过预定义的协议(公用语言)与外部Agent进行通信。代理和对象的区别在于代理的自主性和协作性。Agent的四个最基本特性:针对环境性、反应性、自治性、面向目标性。虽然还可有移动性、社会性、学习性等其它特性,但只要具备了上述四个特性就可以认为它是一个Agent,我们将这样的Agent称为最小Agent。在最小Agent的基础上,根据各自的应用情况还可再
4、拥有其的特性,从而将Agent分成不同的种类:如自治Agent、软件Agent、移动Agent等。代理池概念及其机制概念:是一个负责调度代理的载入与卸载,响应代理之间发送的事件以及做出相应的处理,而且保存每个代理的相关信息以及能够恢复保存的信息的容器。代理池机制代理代理代理代理代理池功能装载/卸载代理处理代理之间通信保存/恢复代理信息监视代理工作情况方案谈谈我们目前项目提出星型工艺模型谈谈我们目前项目l l概述:我们目前正在做的项目(即“天工”项目)主要包括三大模块:系统管理模块 项目管理模块 自动工艺模块我们小组做的是自动工艺模块 l l工艺流模型图工艺路线审查代理任务分配代理工艺路线生成代
5、理分类编码代理工艺路线批准代理专业工艺生成代理专业工艺审查代理专业工艺批准代理图中箭头意义图中箭头意义任务成功提交任务成功反馈任务出错反馈谁操作?白色箭头:用户操作完成粉红色箭头:系统自动完成红色箭头:用户操作完成l l工艺层次工艺路线工作中心工步专业工艺生成代理处完成工艺路线生成代理完成n任务结构分类编码信息工艺路线生成信息工艺路线审查信息工艺路线批准信息专业工艺生成信息专业工艺审查信息任务基本信息专业工艺批准信息p任务基本信息任务ID任务名称文档ID零件ID零件图号p分类编码信息零件编码p工艺路线生成信息典型零件用户名称任务状态零件名称工艺路线组合p工艺路线审查信息审查人名称审查密码审查意
6、见p工艺路线批准信息批准人名称批准密码批准意见p专业工艺审查信息专业工艺组合p专业工艺生成信息审查人名称审查密码审查意见p专业工艺批准信息批准人名称批准密码批准意见n任务活动过程任务基本信息任务分配信息任务及前面代理信息分类编码信息工艺路线生成信息任务及前面代理信息工艺路线生成代理任务分配代理分类编码代理任务任务任务传递传递提交传递提交提交新建任务专业工艺批准代理数据库提取信息写入数据库读取信息写入信息成功反馈信息传递提交删除任务提出星型工艺模型l l提出:前面采用链式结构把各代理链接在一起。此种结构缺点:插入/删除节点困难,即不具有扩展性;为此提出星型结构。工艺流程分为四大类(分类编码、工艺
7、生成、工艺审查和工艺批准)以及任务分配。因此,星型结构如下实现:(1)前面四类用节点代理来实现;(2)任务分配用中枢代理来实现。能够灵活地添加/删除节点代理。l星型模型结构图批准器代理类审查器代理类生成器代理类输入器代理类中枢代理注:1.各代理类:节点代理2.红色虚框内:实体代理工艺层次层次1层次2层次n任务结构任务基本信息信息字段节点代理1节点代理n信息字段l l节点代理外部结构节点代理信息事件接收发送接收发送注:事件:接收(未做工艺的)任务事件与发送(做完工艺事件:接收(未做工艺的)任务事件与发送(做完工艺 的)任务事件;的)任务事件;信息信息:在任务结构中相应的字段,由这个代理填写此字段
8、在任务结构中相应的字段,由这个代理填写此字段信息。信息。节点代理内部结构功能模块工艺层次添加工艺层次功能模块添加注:各类节点代理在内部结构上不同,体现在功能模块上不同;各类节点代理在内部结构上不同,体现在功能模块上不同;同类节点代理的不同实体内部结构相同,体现在功能模块同类节点代理的不同实体内部结构相同,体现在功能模块上相同,但是工艺层次的数目不一致,从而它们也体现出上相同,但是工艺层次的数目不一致,从而它们也体现出不同。不同。中枢代理任务1任务2任务n提取任务功能模块新建任务添加/删除节点代理功能模块节点代理1节点代理2节点代理n控制任务结构功能模块来源于系统设置注:代理池不负责代理之间通信
9、,由中枢代理接管;中枢代理负责添加/删除节点代理;l添加节点代理结构示图添加代理类添加实体代理添加节点代理算法public void addNodeTypeAgent(String typeName,int typeID,Vector taskField)public void addNodeTypeAgent(String typeName,int typeID,Vector taskField)/添加一个新节点类型代理添加一个新节点类型代理backboneAgent bbAgent=(backboneAgent)agentPool.getBackboneAgent();backboneAg
10、ent bbAgent=(backboneAgent)agentPool.getBackboneAgent();/从代理池中获得中枢代理从代理池中获得中枢代理Hashtable nodeTypeAgentList=(Hashtable)bbAgent.getNodeTypeAgentList();Hashtable nodeTypeAgentList=(Hashtable)bbAgent.getNodeTypeAgentList();/从中枢代理中获得节点类型代理列表从中枢代理中获得节点类型代理列表nodeTypeAgentList.add(typeID,typeName);nodeTypeA
11、gentList.add(typeID,typeName);/在节点类型代理列表中添加指定的新节点类型代理在节点类型代理列表中添加指定的新节点类型代理Hashtable taskFabricList=(Hashtable)bbAgent.getTaskFabricList();Hashtable taskFabricList=(Hashtable)bbAgent.getTaskFabricList();/从中枢代理中获得任务结构列表从中枢代理中获得任务结构列表taskFabricList.add(typeID,taskField);taskFabricList.add(typeID,taskF
12、ield);/在任务结构列表中添加指定的新节点类型代理的任务字段在任务结构列表中添加指定的新节点类型代理的任务字段 public void addNodeEntityAgent(String name,int ID,int typeID,Vector taskField)public void addNodeEntityAgent(String name,int ID,int typeID,Vector taskField)/添加已存在的节点类型代理的一个节点实体代理添加已存在的节点类型代理的一个节点实体代理backboneAgent bbAgent=(backboneAgent)agentP
13、ool.getBackboneAgent();backboneAgent bbAgent=(backboneAgent)agentPool.getBackboneAgent();/从代理池中获得中枢代理从代理池中获得中枢代理if(!(bbAgent.existNodeTypeAgent(typeID)return;if(!(bbAgent.existNodeTypeAgent(typeID)return;/判断是否存在此种节点类型代理,若不存在则返回判断是否存在此种节点类型代理,若不存在则返回Hashtable nodeTypeAgentList=(Hashtable)bbAgent.getN
14、odeTypeAgentList();Hashtable nodeTypeAgentList=(Hashtable)bbAgent.getNodeTypeAgentList();/从中枢代理中获得节点类型代理列表从中枢代理中获得节点类型代理列表 Hashtable nodeEntityAgentList=(Hashtable)bbAgent.getNodeEntityAgentList();Hashtable nodeEntityAgentList=(Hashtable)bbAgent.getNodeEntityAgentList();/从中枢代理中获得节点实体代理列表从中枢代理中获得节点实体
15、代理列表nodeEntityAgentList.add(ID,name);nodeEntityAgentList.add(ID,name);/在节点实体代理中添加新节点实体代理在节点实体代理中添加新节点实体代理Hashtable taskEntityList=(Hashtable)bbAgent.getTaskEntityList();Hashtable taskEntityList=(Hashtable)bbAgent.getTaskEntityList();/从中枢代理中获得任务列表从中枢代理中获得任务列表Vector v=(Vector)nodeTypeAgentList.get(typ
16、eID)Vector v=(Vector)nodeTypeAgentList.get(typeID)Enumeration e=v.elements();Enumeration e=v.elements();while(e.hasMoreElements()while(e.hasMoreElements()String str=(String)e.nextElement();String str=(String)e.nextElement();taskEntityList.add(name+_+str,);taskEntityList.add(name+_+str,);/在任务实体列表中添加指
17、定的新节点实体代理的任务字段,初始值置空在任务实体列表中添加指定的新节点实体代理的任务字段,初始值置空Agent newAgent=new Agent(name);Agent newAgent=new Agent(name);/用指定名称构造一个新代理用指定名称构造一个新代理agentPool.addAgent(newAgent);/agentPool.addAgent(newAgent);/把这个新代理添加到代理池中把这个新代理添加到代理池中 l删除节点代理删除代理类删除实体代理删除节点代理算法删除节点代理算法public void delNodeTypeAgent(int typeID)p
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 基于 代理 自动 工艺 实现 方案 PPT40 14890
限制150内