产品描述
6GK7243-1EX01-0XE0参数详细
1 CAPP 系统的发展历程
计算机辅助工艺设计的研究在国际上始于20世纪60年代后期,其早期意图就是建立包括工艺卡片生成、工艺内容存储及工艺规程检索在内的计算机辅助系统. 它只是将计算机当作存储、整理、计算和提取信息的工具,以帮助减少工艺人员所做的事务性工作,从而节省工艺设计的时间. 这样的系统没有工艺决策能力和排序功能,因而不具有通用性. 而真正具有通用意义的CAPP系统是1969年以挪威开发的AUTOPROS系统为开端,其后很多的CAPP系统都受到这个系统的影响. 将计算机辅助工艺设计正式命名为CAPP 则是在计算机辅助工艺设计发展史上具有的美国计算机辅助制造国际组织CAM-I (Computer aided manufacturing-international )于1976 年所推出的CAM-I’S automated process planning 系统. 1985 年1 月CIRP 首次举行了CAPP 专题研讨会,11 月美国 冬季年会的主题定为“计算机辅助/ 智能工艺过程设计”,1987 年6 月CIRP 又举行了CAPP 的专题学术研讨会,从而使CAPP 系统的研究进入了一个崭新的时代.
我国在20世纪80年代初期开始了CAPP的理论研究和系统开发工作. 1982年,同济大学的TOJ ICAP系统研制成功并进入国内市场. 西北工业大学、北京航空航天大学、西安交通大学、南京航空航天大学等单位也研制成功了适用于特定类型零件的CAPP系统. 1986 年3月,我国制定并启动863 计划,并在后续的863/CIMS主题计划中设立了多项与CAPP 相关的关键技术攻关项目或子项目、目标产品发展项目以及软件重大专项,同时大力推广应用示范工程. 1988 年5 月,在南京航空航天大学召开了国内次CAPP 的专题研讨会,受到广大科研院所和制造企业的普遍关注,引发了国内的CAPP 研究热潮. 1989 年,国家863/ CIMS 工艺设计自动化工程实验室在上海交通大学正式建立,主要从事异地分布式CAPP 系统体系结构及实现技术等方面的研究与开发工作,取得了许多的研究成果.
2 CAPP 系统的智能技术
在CAPP 系统中,由于有相当多的问题求解是极其复杂的,常常没有算法可遵循,或者即使有计算方法,也是NP(Nondeterministic polynomial-bounded) 问题. 因此人们就用人工的方法和技术来模拟人类求解复杂问题的思维方式和过程,实现某些“机器思维”,从而解决需要人类专家才能处理的工艺问题,这样就导致了人工智能的产生并在CAPP 系统中获得广泛应用.
2. 1 人类智能及其特征
我们知道,人类被誉为万物之灵,灵就灵在人类具有一个“智慧”的大脑. 然而,人类对客观世界的认识越来越清楚的同时,却对自己的大脑产生智能的机理仍然迷雾茫茫,知之甚少. 如此看来,智能作为科学技术的三大起源难题(宇宙起源、生命起源和智能起源) 之一,只能有待于21 世纪解决了. 智能一词来源于拉丁语“Legere”,意思是收集、汇集. 到目前为止,对于智能,还没有一个统一的看法. 一般认为:智能是运用信息和知识采取理智行动的能力. 通俗地说,智能可以理解为能获取知识并运用知识解决问题的能力.
考察和分析人类智能活动的全过程,不难发现,思维是整个智能活动中*核心、*本质和*复杂的部分. 没有思维就没有人类的智能,也就不可能使人类远远超出其它动物而成为万物之灵. 1984 年,钱学森教授倡导开展思维科学的研究,并将人类思维划分为“抽象(逻辑) 思维、形象(直觉) 思维和灵感(顿悟) 思维”,同时指出虽然划分为三种思维,但实际上人的每个思维活动过程都不会是单纯的一种思维在起作用,往往是两种,甚至是三种思维交错混合在一起共同起作用. 三种思维的基本特点 人类智能的上述特点也正好说明了尽管冯·诺依曼(Von Neumann) 计算机处理速度极快、存储容量极大、符号推理能力极强,但还是远不如人类聪明的根本原因. 当然,人类智能毕竟是数十万年的大脑进化、数百万年的人类进化和数亿万年的生物进化的结晶,是高度的时间复杂性和巨大的空间复杂织而成的,有着无限奥秘和无穷智慧的脑神经系统的产物,远非采用若干硅片在数十年内就能完全模拟成功的.
就工艺设计过程而言,人脑的思维活动就明显地表现出了几种思维形式的综合特点. 它既是逻辑性和跳跃性的统一,又是顺序性和并发性的统一;既可能“循序渐进,逐步推理”,又可能“灵机一动,计上心来”,还可能“突发奇想,另辟蹊径”. 人脑在思维时能够根据以往经验分析大量的外界信息,对许多复杂问题做出判断,然后再在此基础上进行概括和总结,以达到条理化和逻辑化,*后得到解决问题的满意方案. 同时,人类思维还能够根据直觉做出决策.譬如在对一个零件进行工艺设计时,一个经验丰富的工艺专家可在看到零件图纸的短暂时间内,就能形成该零件的加工方法、装夹方案和初步的加工路线,并能注意到可能存在的某些关键问题和重要工序,然后再按一定的工艺理论逐步分解和细化,以形成符合制造环境的工艺规程. 在这一过程中,人类思维始终能够前后一致、全面细致地进行协调. 但是,冯·诺依曼计算机在解决问题时,则不具备直觉性和并发性,既不能“突如其来,一气呵成”,也不能在同一个时间内形成多个问题的解决办法并相互协调(尽管运算速度可以无限的快) ,即计算机总是有顺序、有条理地按一定程序解决问题.
在目标硬件完成之前实现对人机界面的,需要设计工程师在PC机上用软件构建机界面原型。本文针对构建机界面原型时所采用的工具语言和代码编写风格,以及不同语言编写的文件之间的接口问题进行了分析,对设计人员有较好的指导作用。
构建一个机界面原型能够帮助设计工程师在设计早期理解接口对设计的要求和接口的可用性。下面将探讨一种当目标硬件还远未实现时,在PC机上构建机界面原型的方法。构建这类原型的主要目的有二。
1. 使同一个设计组中的其他成员能够看到该设备的工作过程。当我们在纸上
设计一台交互式设备时,要判断设计中所描述的交互性能否实际实现,需要很大的想象力。而如果构建一个工作原型,就会使情况清晰许多,并且允许更多的旁观者来评论正在计划中的接口设计得怎样。很多时候,用接口原型进行试验,还能帮助设计工程师决定真正设计出的硬件需要多少按钮、多少LED、多少数字显示器或文本显示器。
2. 当硬件没有工作时,利用接口原型来为机界面编写软件。为达到这一目的,出现在PC显示器上的接口原型必须采用C、C++或者其它适用于嵌入式开发的语言来控制。对于其它部分,则可以设C是用于*终目标硬件的语言。
然后大概考虑一下需要的是哪部分软件。在*简单的情况下,软件可用来打开或关闭一个LED,或者向一个小型字符显示器输出一个字符串。控制机界面上的物理元件只是一项很普通的功能,所以能够在PC机上编写这种软件的优点是微不足道的。因为开关一个LED可能只需要一行代码,在一个LCD文本显示器上显示一个文本字符串也只需要调用一个10行或20行的函数。
真正困难的是如何编写软件来决定究竟是打开LED还是关闭LED,以及决定显示什么字符串。例如,当一个被测传感器的值持续超过一段时间,而一组使警戒有效的条件也满足了之后,软件也许应选择打开LED。再如,当用户按下一个按钮来选择菜单中的下一项时,软件也许应查阅一个描述该菜单的字符串表和操作表,以决定下一个显示的应该是哪一项。这种控制菜单之类的软件,其代码长度就会超过底层软件。
在本例中,我们的目的是编写一个文本显示和LED控制的软件,以表示PC机屏幕的变化。我们可以编写警戒检查代码和菜单控制代码,使其既能运行在PC机上,又能运行在目标设备上。
这种的方法并不新颖。但在为诸如PDA和之类并没有自己的开发环境的目标设备上编写软件时,通常需要用到这种方法。
编写软件所需的工具
用Visual Basic在PC机上显示几个按钮和两行文本并不困难,但当将该原型与C代码接口时,就会显得十分麻烦。
如今有许多针对嵌入式开发的原型编写工具,用这些工具往往会迫使设计工程师依赖于它们的事件模型,从而导致设计过多地依赖这些工具。如果设计工程师遵从它们的接口设计风格,那么这些工具确实可以产生代码,但它们并不是对所有平台都具备足够的灵活度,而且它们产生的代码可能并不适合小型的微控制器。
我所采用的工具是Borland C++(后面将简写为CPB)。Borland C++并不是专门配合嵌入式系统的软件编写工具,但我发现它非常适合设计的需要,而且采用Borland C++不会将设计束缚在任何一个处理器或者任何一种软件结构上。
CPB中有一组预定义的图形组件,其中大多数并非针对嵌入式项目,而是针对桌面应用(类似下拉菜单)。但还是有一个小的子组件可用于我们本文所述的目的。象LED这样的UI元素就可以用图像来。
CPB有三种版本:标准版、专业版和企业版。对于我们将要讨论的接口而言,标准版已经足够。
按钮、滑动块、标签和其它UI元素均可通过drag-and-drop环境插入一个表格(一个简单的对话窗口)中去。产生一个这样的表格就会生成一个C++类的框架。例如,每当用户点击一个图像或移动一个滑动块时,都会产生一组事件,而该表格中的每个元素都有这样一组事件与其对应。究竟需要对哪些事件作出反映则由程序员来选择。这些响应就被写成该表格所产生的类的成员函数。
如果板是由一个工业设计小组设计的,那么就会有整个显示图像可供利用。或者如果物理原型已经存在,那么一幅该物理原型的数字相片就可以用来作为背景。
我采用图像目标(在CPB内也叫作Timage)来显示大多数物理元件。因为采用了图像目标就可以引入位图,然后进行显示。例如可以引入一个发光二极管的图像。在该应用中,显示了一个包含5个按钮和4个LED的接口原图,如图1所示。背景图像中LED处于关断状态。一旦软件决定其中的一个LED应打开,那么这个发光LED图像的可见属性就被设为真,于是点亮的LED的图像就覆盖了不亮的LED图像。
有了这种简单的重叠多幅图像的诀窍,我们就可以一个物理显示屏的其它部分。例如,设我们采用CPB IDE来创建一个包含单词“ALARM”的标注,并将这一元素命名为AlarmIndicator,那么我们就可以编写一个函数来控制它
产品推荐