已阅读5页,还剩62页未读, 继续免费阅读
(机械设计及理论专业论文)数控人机界面编辑系统的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉理工大学硕士学位论文 摘要 随着微电子技术的迅猛发展,数控系统的硬件日趋标准化、模块化、硬件 可靠性越来越有保障,相对来说软件质量越来越受到重视,而人机界面是软件 设计中投a i 作量较大的环节之一。传统的数控软件开发不理睬用户界面的特 殊性,而将它与数控系统的开发混合在一起,这样不仅开发任务繁重,而且通 用性不强。难以满足用户的需求。本文利用了当前比较流行的图形编辑技术, 在提高数控界面设计软件的通用性和方便性方面进行了研究。 本文首先阐述了数控人机界面一些基本概念,指出了本文研究的背景、研 究的内容和意义。然后结合数控人机界面自身的特点和实际要求,分析了本系 统应具有的功能和设计原则,并在此基础上设计了人机界面编辑系统的总体结 构框架。接着介绍了实现本系统所使用的开发工具和采用的数据结构。 在系统实现论述部分,本文采用面向对象的建模方法,建立了界面编辑系 统的三大对象模型,并分析了这三大对象模型之间的关系。依据这个系统模型, 本文详细阐述了系统各功能实现的具体方法,主要包括了软件界面设计的阐述, 以及如何实现图元的创建、拾取、编辑、修改属性等功能。还实现了工程画面 有效管理的技术。同时讲述了工程文件的数据格式和实现存储和载入的方法。 接着,本文分析了数控器显示画面的数据结构,并根据此数据结构的特点 设计了工程画面数据编译方案,说明了在编译过程中几个问题的处理方法。最 后,以数控折弯机为例做实例分析,讲解界面编辑系统在具体运用中的效果。 本文利用利用面向对象的建模和设计方法,实现了一套数控人机界面编辑 系统,具有动态属性的丰富图元,具有界面画面快速生成、图形编辑和撤销功 能,支持与数控系统的连接,支持工程画面切换和快速更新,高度可视化、高 度开放性、功能强大的图形界面编辑器。 关键词:数控、人机界面、面向对象、图元 武汉理工大学硕士学位论文 a b s t r a c t w i t nt h er a p i dd e v e l o p m e n to ft h em i c r o e l e c t r i ct e c h n i q u e ,t h eh a r d w a r eo fc n c s y s t e mt r e n dt o w a r d ss t a n d a r d i z a t i o na n dm o d u l e ,a n dt h ed e p e n d a b i l i t yo ft h e h a r d w a r ei sm o r ea n dm o r es e c u r e c o m p a r a t i v e l yt h eq u a l i t yo f t h es o f t w a r ei sb e i n g p a i da a e n t i o nt o ,a n dt h eh u m a n - m a c h i n ei n t e r f a c ei so n eo f t h el i n k so fg r e a t e rw o r k p u ti n t oi nt h es o f t w a r ed e s i g n t r a d i t i o n a lc n cs o f t w a r ed e v e l o p m e n ti g n o r e dt h e p a r t i c u l a r i t yo fu s e r si n t e r f a c e ,a n dm i x e dt h ed e v e l o p m e n to fi ta n dc n cs y s t e m t o g e t h e r , w h i c hc a u s e dn o to n l yh a r dd e v e l o p i n gt a s k ,b u ta l s oi tw a sm u c hs h o r t n e s s i ng e n e r a lu s e i t sd i f f i c u l tt om e e tu s e r sd e m a n d s h o wt oi m p r o v et h eg e n e r a t i o n a n dc o n v e n i e n c eu s i n gt h ep o p u l a rg r a p h i ce d i t o rt e c h n i q u ei ss t u d i e di nt h i sp a p e r a tf i r s t ,i nt h i sp a p e r , s o m eb a s i cc o n c e p t so fc n cm a n - m a c h i n ei n t e r f a c ea l e d i s c u s s e d ,a n dt h eb a c k g r o u n d ,t h ec o n t e n t sa n di m p o r t a n c eo ft h i sp a p e ra r ep o i n t e d o u t t h e n ,t h eb a s i cf u n c t i o n st h a tt h es y s t e ms h o u l dp r o v i d ea n dd e s i g np r i n c i p l e s a c c o r d i n gt o t h ef e a t u r e sa n dr e q u i r e m e n t so ft h es y s t e ma r ec o n s i d e r e d ,a n dt h e o v e r a l ls t r u c t u r eo ft h em a n - m a c h i n ei n t e r f a c ee d i t o rs y s t e mi sd e s i g n e do nt h i sb a s i s n e x t d e v e l o p i n gt o o la n dd a t as t r u c t u r e st h a tr e a l i f i n gt h es y s t e ms h o u l dr e q u i r ea f e d i s c u s s e di nt h i sp a p e r i nt h ep a r to f t h ep a p e ra b o u tr e a l i z a t i o no f t h es y s t e m ,t h i n eb i gk i n d so f o b j e c t m o d e l sa r eb u i l d e dw i t hb u i l d e r i n gm o d e lm e t h o db a s e do nt h eo b j e e t - o d e n m f i o n , a n dt h er e l a t i o nb e t w e e nt h e ma r ea n a l y z e d a c c o r d i n gt ot h e s em o d e l s ,t h er e a l i z i n g m e t h o do fe v e r yf u n c t i o no ft h es y s t e ma r ee x p l a i n di nd e t a i li nt h i sp a p e r , i n c l u d i n g t h ed e s i g no ft h es o f t w a r ei n t e r f a c e ,h o wt or e a l i z ee d i t i n gf u n c t i o n so fg r a p h i cu n i t s u c ha sc r e a t e ,s e l e c t ,m o d i f y , c h a n g ep r o p e r t i e s ,e t c a n dh o wt or e a l i z et h e t e c h n o l o g yo fe f f e c t i v em a n a g e m e n to ft h ep r o j e c tg r a p h i c s i na d d i t i o n ,t h ed a t a f o r m a to f t h ep r o j e c tf i l ea n dr e a l i z i n gt h em e t h o dt os a v ea n dl o a dt h ep r o j e c tf i l ea r e d i s c u s s e di nt h i sp 印e l n e x t ,d a t as t r u c t u r e so fc n cd i s p l a yg r a p h i c sa r ed i s c u s s e d ,a n dt h ec o m p i l i n g m e t h o do f t h ep r o j e c tg r a p h i c sd a t aa r ed e s i g n e da c c o r d i n gt ot h ef e a t u r e so f t h ed a t a a p a r tf r o mt h a t ,h o wt od e a lw i t hs o m ep r o b l e m sa b o u tc o m p i l i n g i se x p l a i n e di nt h i s p a p e r i nt h ee n d ,t h ew a y w h e nt h em a r l m a c h i n ei n t e r f a c ee d i t o rs y s t e mi su s e di n 武汉理工大学硕士学位论文 a c t u a lp r o j e c ti se x p l a i n e db yi l l u s t r a t i n gw i t ht h ep r e s sb r a k e , b yt h em e t h o do fm o d e l i n ga n dd e s i g n i n gb a s e do uo b j e c tm o d e l i n gt e c h n i q u e ( o m t ) ,t h ec h i cm a n - m a c h i n ei n t e r f a c ee d i t o rs y s t e mi sr e a l i z e di nt h i sp a p e r t h i s m m is y s t e mo w n sp l e n t yo f m e n t a lg r a p h i c sw i 也d y n a m i cp r o p e r t i e s p r o v i d e st o o l s w h i c hc a ng e n e r a t ee n g i n e e r i n gp i c t u r e sq u i c k l y , m o d i f ym e n t a lg r a p h i c sa n d u n d o r e d oo p e r a t i o n s ,s u p p o r t st h ec o n n e c t i o nw i t hc n ca n ds u p p o r t sp i c t u r e - s w i t c h i ti sh i 曲l yv i s i b l e ,h i g h l yo p e na n ds t r o n gf u n c t i o n k e yw o r d s :c n c ,m a n - m a c h i n ei n t e r f a c e ,o b j e c t 。o r i e n t e d ,g r a p h i cu n i t 武汉理工大学硕士学位论文 第1 章绪论 随着计算机技术的高速发展,传统的制造业开始了根本性变革,各工业发 达国家投入巨资,对现代制造技术进行研究开发,提出了全新的制造模式。在 现代制造系统中,数控技术是一项关键技术,它是综合应用了电子技术、计算 技术、自动控制与自动检测等现代科学技术成就而发展起来的一门科学技术, 具有高精度、高效率、柔性自动化等特点,对制造业实现柔性自动化、集成化、 智能化起着举足轻重的作用。目前,数控技术正在发生根本性变革,由专用型 封闭式开环控制模式向通用型开放式实时动态全闭环控制模式发展。由于数控 技术是关系到国家战略地位和体现国家综合国力水平的重要基础性产业,其水 平高低是衡量一个国家制造业现代化程度的核心标志。因此,数控系统技术不 仅作为数控发展的先导技术,而且作为制造业的基础性战略技术,越来越得到 世界各国的高度重视和大力发展“。 1 1 数控系统人机界面概述 数控系统( c n c ) 的人机界面是数控系统硬件和软件与其使用者之间的接口。 现代数控系统除了在加工精度和速度方面的性能不断提高外,其实现的功能也 越来越全,越来越复杂,并不断向柔性化、智能化方向发展。然而,随着新型 数控系统的不断涌现。同时也增大了用户在安装、连接、调试、编程、操作和 维修等各方面的难度。若没有适当的人去操作使用。没有专业技术人员去安装、 调试和维修,数控系统难以充分发挥作用。 在数控系统的连接、调试和维修中,在工件加工过程中,数控系统与用户 之间通过用户界面存在着大量的交互过程。用户界面有硬件界面和软件界面之 分。硬件界面指数控系统给用户预留的一些硬件接口;软件界面指数控系统供 用户观察、修改和设置内部软件运行过程及数据的人机交互界面,这也是本文 要讨论的重点。 1 1 1 数控系统人机交互界面分类 在数控系统中,人机交互界面主要用于进行人机交互处理。即在用户的配 合下,利用各种交互设备完成c n c 系统的连接、各种工作模式的选择、调试、 武汉理工大学硕士学位论文 运行管理和维修。用户按需选择c n c 系统的工作模式,进行相应数据和命令的 输入;c n c 系统则适时针对用户的操作进行信息的反馈,向用户提供系统运行状 态,提供操作和学习帮助,当出现操作错误和系统故障时,产生错误和警告信 息。 c n c 装置为用户提供的界面可分为程序控制界面、数据输入界面和交互输出 三类。 ( 1 ) 程序控制界面 程序控制界面的作用是接收用户命令,完成对数控系统运行的控制。如数 控系统工作模式的切换控制等。它有命令语言、菜单、窗口和直接控制等形式。 采用命令语言形式时,用户在系统提示符下通过键入命令来控制和操纵c n c 系统的运行。使用命令语言形式比较灵活,占用屏幕少,但命令语言难以学习 和记忆,易出现输入错误,因此数控系统中很少采用这种形式。 采用菜单形式时,c n c 系统在显示器的屏幕上提供一组可选的项目,使用者 可以通过各种输入设备进行选择。如:控制面板上的光标移动键或字母、数字 键等,来选取其中某一项。 窗口形式的界面能同时显示多进程多任务的运行情况,它在一个显示屏幕 上提供多个供用户观察或交互的视域,各个视域可完成或显示不同的内容,好 象多个屏幕正在显示。 ( 2 ) 数据输入界面 数据输入界面主要用于向数控系统提供数据输入,它应为用户提供数据输 入格式,提供缺省值,提供容错和修改功能,并向用户回送输入结果。 数据输入方式可以是问答式输入、填表输入、菜单选择输入和直接操作输 入等。问答式输入方式单调且速度太慢,在数控系统中多采用填表式数据输入 界面一数控系统在显示器上给出一张有明确数据项名称和范围的表格,用户可 将一组数据,通过键盘较直观的填入表格。菜单输入和直接输入都要求系统为 用户提供可以选择的数据和对象,其输入简单、方便,但输入数据被限制在预 订范围内、编程实现较复杂。 数控系统中的刀具参数设置、系统参数设置和数控加工程序编辑等界面都 属于数据输入界面。 ( 3 ) 交互输出界面 交互输出界面的作用是组织数控系统的输出,向用户提供系统运行的信息。 在数控系统中,交互输出信息主要包括: 2 武汉理工大学硕士学位论文 a 响应信息:对用户提供的操作请求、命令等信息作出响应: b 提示信息:提示用户系统现在正在做什么,以及下步将做什么,如: 当前以及下一数控加工程序段的显示: c - 运行信息:以文字、图形和声音等方式提供给用户的系统运行结果信息, 如:加工情况的大字符显示和图形显示: d 出错信息:当用户操作或系统运行出错时向用户提供的出错或警告信息: e 帮助信息:数控系统向用户提供的操作使用方法等信息。 数控系统应尽量把所有交互过程的信息都显示出来,在显示内容和形式上 尽量做到美观、生动和较高的可视性。 1 1 2 数控系统常用的显示界面及其比较 在c n c 系统中,目前比较常见的显示界面“1 有: ( 1 ) l e d 数码管显示方式,包括七段数码管与米字管: ( 2 ) c r t 显示方式; ( 3 ) l c d 液晶显示方式,包括字符点阵液晶模块与图形点阵液晶模块。 第一种方式由于成本低廉,显示亮度高等特点,因而在早期的c n c 数控系 统中得到普遍使用。但是,数码管显示信息少,不能显示复杂的图文尤其是中 文;另外,不易实现带光标显示。因此,很难实现全屏幕编辑模式系统的显示 接口,交互能力很差。 第二种方式具有显示容量大,视角宽广的优点:同时,它又有体积较大的 缺点,要实现嵌入式控制比较困难。 第三种方式的特点是,显示信息容量大,特别是图形点阵液晶模块,能显 示各种信息;与微处理器接口简单,本身又自带控制器,可以大大减轻数控系 统中微处理器c p u 的负担:平板显示,外观豪华;加之,近年来,液晶模块价 格普遍较低,又推出了许多宽视角系列,克服了l c d 的缺点。因此,这种显示 界面,特别适合作全屏幕编辑显示系统的硬件接口。 目前现代数控系统普遍采用l c d 液晶显示器作为图形显示界面,再配合面 板键盘就构成了操作人员与设备进行对话的界面了。显示器用于显示提示信息、 系统运行状态或报警信息等。面板键盘由若干按键组成,其中的一组或几组功 能键上有标明其作用的标志或字符,操作功能键,c n c 就执行相应的功能。其余 为一定数量的文字、数字、光标和编辑等按键,用于选择功能选项与参数,送 入或修改c n c 系统参数和数控加工程序等。 武汉理工大学硕士学位论文 1 1 3 数控系统人机界面的国内外研究现状 目前,世界上高档数控系统主要由日本、德国、法国等国生产。其中法国 n u m 公司是一家专门从事c n c 数控系统的开发和研究。3 ,是施耐德集团的子公司, 欧洲第二大数控系统供应商。n u m 公司的数控系统以其软件的开放、灵活、高效 和高精度而著称;尤其以其开放性的人机界面功能深受广大用户的欢迎,用户 可以开发出适合自己产品的专用人机界面,因而在世界范围内的机床行业中其 数控系统的销售量处于领先地位。 n u m 数控系统的m m i t o o l 软件就是专门用于编写c n c 用户界面的软件,它可 以在p c 机的w i n d o w s 环境下运行,具有丰富的图形库,简化了页面的制作。它 有和v i s u a lb a s i c 相同的编写方法,简单易学,并可方便地定制机床c n c 的上 下联系和纵横联系的个性化应用界面。 用户使用删i t o o l 软件设计人机界面包括两个方面:图形界面层设计和关 系层设计。图形界面层设计主要用于为用户提供可视化的图形界面,包括主界 面设计、工作方式选择界面、手动操作界面、参数界面设计和报警信息界面等。 图形界面设计阶段所设计的仅仅只是一个图面而已,它要发挥作用必须与n c 和 p l c 联系起来。咖i t o o l 软件提供了详细的数据库,编程人员需要将它们之间一 一联系起来。通过这种功能强大又使用灵活的界面制作软件,我们就能编出适 合自己机床特点的机床界面,从而带来机床加工效率的提高。 而我国一些厂商研究开发的数控系统,无论是在硬件上,还是在软件上都 和国外有一定差距。国内生产的主要是些低档的经济型数控系统,虽能满足一 些市场需求,但总体质量不高,采用的技术不很先进,可靠性差,而且在c n c 软件开发上不理睬用户界面的特殊性,而将它与c n c 系统的开发混合在一起, 结果导致数控系统的通用性和开放性很差,难以满足各种用户的需求。因此, 在c n c 界面的设计上还不能做到像n u m 数控系统那样灵活,这样不得不为不同 的应用需要做着许多重复开发图形界面的工作。 1 2 本课题研究的目的和意义 体系结构开放是c n c 系统发展的总趋势,其体现之一就是发好、灵活、可 靠的人机界面。无论采用何种硬、软件结构,作为人和机器之间交互媒介的人 机界面是很重要的,特别是对于车间级的现场操作,一个良好的界面不仅有利 于工人的操作,而且在一定程度上有利于工人的身心健康,从而最终提高了生 4 武汉理工大学硕士学位论文 产效率;另一方面,随着微电子技术的迅猛发展,c n c 系统的硬件日趋标准化、 模块化、硬件可靠性越来越有保障,相对来说软件质量越来越受到重视,而人 机界面是软件设计中投入工作量较大的环节之一,用户界面的优劣与否已成为 衡量软件产品质量的一个重要指标。因此开发一个良好的人机界面已成为c n c 系统软件设计的目标之一啉1 。 传统的c n c 软件开发不理睬用户界面的特殊性,而将它与c n c 系统的开发 混合在一起,这样不仅难度大,而且设计出来的用户界面结构复杂,难于理解, 同时也很难满足用户的需求。因此,有必要将c n c 界面独立出来进行研究。 本课题就是通过对现有数控人机界面编辑系统的分析研究,采用“所见即所 得”的先进观念,设计出一种集矢量绘图、智能编译、模拟仿真、数据传输于 一体的功能强大、操作简单的界面编辑系统。用此编辑系统不仅可以设计出各 种友好的、针对性强的人机界面,而且提高开发效率、减少开发成本,对于用 户和数控系统制造商来说都有很重要的意义。用户既可以简化操作,又可以提 高生产率。而对于数控系统制造商,人机界面的可操作性,对数控系统的推广 使用也有很大的影响。 1 3 本课题研究的主要内容 本文从数控人机界面的特点出发,利用面向对象的建模和设计方法,设计 并开发了一套数控人机界面编辑软件,具有界面画面快速生成、图形编辑和撤 销功能,具有动态属性的丰富图元,支持图形无级缩放和漫游,支持与数控系 统的连接,支持工程画面切换和快速更新,高度可视化、高度开放性、功能强 大的图形界面编辑器,与其它功能模块( 编译器、数据上传、模拟仿真等) 共 同构成数控人机界面编辑软件系统。本课题的主要研究内容如下: ( 1 ) 收集数控人机界面的相关资料;收集当前国内外软件开发的相关技术 文献,了解软件开发的最新技术和发展趋势。 ( 2 ) 根据收集的技术资料,分析系统的总体需求,基于现有技术,确定出 系统的总体技术路线。 ( 3 ) 综合应用面向对象的程序设计的思想体系设计一个二维矢量图形编辑 器,提供直线、矩形、圆等基本图元的创建,提供移动、复制、比例变换等基 本图形的编辑功能。 ( 4 ) 研究利用d l l 动态链接库技术来封装各功能模块,以保持模块的独立 武汉理工大学硕士学位论文 性、通用性和易用性。 ( 5 ) 研究用标准串行通讯与数控器的数据传输技术,制定数据通讯协议。 1 4 小结 本章在广泛收集和查阅大量国内外资料的基础上,阐述了数控系统人机交 互界面几种类型;分析比较了数控系统几种常用的显示界面:阐述了数控系统 人机界面的发展趋势。在分析了当前研究中存在的闯题基础上,论述了本课题 研究的重要意义和目的。最后,介绍了本课题的主要研究内容。 6 武汉理工大学硕士学位论文 第2 章人机界面编辑系统的整体框架设计 2 1 数控人机界面的基本特点 4 3 一 图2 1h u s th 3 x 系列控制器外观 h u s th 3 x 系列控制器是由台湾亿图公司( h u s t ) 开发研制的数控系统,控 制器面板及按键,可简单区分为四区( 见图2 1 中的数字标注) 。第一区:是 坐标位置,程序,编辑,操作,状态显示区。第二区:是功能模式操作,数字 及指令码按键区。第三区:是特殊功能按键区。第四区;是液晶屏幕显示区。 h u s th 3 x 系列控制器采用液晶屏幕显示,不但简单荔学,客户还可依需求, 利用界面编辑系统及配合内部p l c 规划,自行设计液晶显示屏幕内容。控制器 上所有按键,除了现有标准功能,客户还可依需求,配合p l c 规划。自行设计 专用面板按键功能。 通过入机界面设计使操作者能够实时控制机器和了解机器的状态行为。操 作者每输入一个命令后,可以及时得到机器的反馈或反应信息。液晶屏幕在人 机交互系统中担负着传递信息至用户的任务。液晶屏幕的显示内容由若干“页 面”组成,所谓“页面”指的是液晶上显示的一屏显示媒体由两部分组成: 静态图形元素和动态图形元素。静态图形元素包括示意图、修饰性图形、说明 性的文字及提示信息等,由汉字、字符和图形组成:动态图形元素指实时刷新 的数值或可由用户修改的信息,在人机交互软件中是用数值变量来表示的”1 。 图2 - - 2 是一个典型的数控系统的人机对话图形界面,从图中可以看出一个 图形界面通常由以下几种墨形元素构成: 7 垫坚堡三盔堂堡主堂垡笙苎一 ( 1 ) 变数:变数主要用于显示各种加工参数或状态量等数字信息,如主轴 转速、进刀量、座标位置等。变数可读也可以修改,用户可以通过按键修改某 些变数的值以设置各种加工参数。 ( 2 ) 动态图素:动态图素可以用图形动画的形式来反映一些设备工作状态, 如可以用动态图素来实现信号灯、错误警告、状态提示等。这些动态图素与控 制器内的变量建立了对应关系,根据变量的变化,图形对象可以进行改变,变 量可以是内存变量,也可以是i 0 变量。 ( 3 ) 静态图素:静态图素在整个界面里主要起修饰作用,用于显示些固 定不变的信息,如注释、加工示意图等。它与以上两种图素相结合共同构成了 一个友好的显示界面。 图2 2 数控人机界面的组成元素 2 2 界面编辑系统的功能分析和设计原则 2 2 1 软件功能分析 本软件系统主要用于创建数控系统的人机界面,可以在w i n d o w s 环境下运行, 它可以通过内部图形库或自定义的图形库进行链接,编制自己个性化的界面。 采用“所见即所得”的先进观念,使用者可立即在屏幕上看到画面设计的实际 结果:如各种字形大小、颜色、元件位置、图形等等;在屏幕上的显示都会与 实际人机界面所显示的画面一样。而在编辑操作方法上以物件导向的理念设计, 达到拖曳式编辑,让使用者可将画面设计工作区中的元件,随意以滑鼠拖曳到 其它位置,或改变其外形、大小等4 1 。同时,通过为元件的属性参数设置特定的 8 武汉理工大学硕士学位论文 事件或者特定的变量,从而与数控系统中的p l c 程序或数控加工程序进行数据 连接,实现供用户观察、修改和设置内部软件运行过程及数据的人机交互界面。 通过上面的分析,我们可以得出这一结论:界面显示画面中的每一个图形 都必须是独立的对象,而不是一体的,否则画好一个图形后就不能再单独对其 进行编辑、移动和删除,同时也不能对该图形的属性进行动态控制。为了使画 面具有可重绘制和编辑的特性,显示画面的组成元素必须是个个独立的图元 对象,这样就可以把画面的控制转化为对一个个图元对象的控制,对图元对象 的属性进行动态的控制就可以使画面具有动态的特性。这也是数控界面的画面 历必须的。通过添加、删除和修改画面中的图元对象就可以改变画面,从而实 现画面的组态来满足不同数控系统的画面显示要求;同时设计好的画面在显示 时控制器能根据实时数据来修改图元对象的动态属性就可以在画面上动态反映 系统当前的状态。1 。 本软件系统功能就是提供各种各样简单易使用的绘图工具,其中不仅包括 最基本的图形工具,如直线、曲线、椭圆、矩形等,还包括各种各样的图元编 辑功能,如图元的组合、拆分、对齐、移动、缩放、复制等,使工程人员可以 方便快捷的在计算机屏幕上设计各种界面显示效果,使用者可立即在屏幕上看 到画面设计的实际结果。归纳起来,软件系统具备以下主要功能和特点: ( 1 ) 组成显示界面的每一个图形元素,例如线、圆、矩形、曲线、字符、 位图等,都是一个独立的对象,每一个对象都有一个对应的属性表,如颜色、 坐标、长度、宽度、线宽、背景颜色等。用户可方便地改变对象的位置、大小、 颜色等属性。并提供多图元属性修改的功能。 ( 2 ) 图元采用矢量绘图方式,可方便地对图形放大、缩小且不失真。 ( 3 ) 支持移动、旋转、缩放、对齐、等大小、拷贝、粘贴、删除、撤消、 恢复、组合、解散等基本编辑功能。各种图元可任意组合,组合图元可整体调 控。 ( 4 ) 图形的拾取支持区域和边线拾取,填充图形和单元采用区域拾取,非 填充图形采用边线拾取。 ( 5 ) 提供了子图库管理功能,便于图形的可重用,任何单元图形都可存入 子图库中,可以管理多个库,每个库中子图可以分成不同的类别,便于管理。 ( 6 ) 采用多文档视图结构,可同时编辑多个画面,画面间任何图形可自由 复制、剪切、粘贴。 ( 7 ) 一个编辑画面的图元具有层次性,用户可调整图元层次顺序。 9 垫坚堡三盔堂堡主堂垡笙塞一 ( 8 ) 支持常用图像格式,如b m p 、j p c 图像格式,支持图像透明显示,支 持图像的拉伸处理。 ( 9 ) 图形编辑画面支持缩放功能,方便图元微处理。 ( i 0 ) 完整的工程项目管理环境。 2 2 2 设计原则 由于界面编辑系统在数控系统应用软件中的基础性地位,最重要的就是考 虑它的可拓性和相对独立性。可拓性是指界面编辑系统本身有一定的可拓展性, 为适应未来数控技术发展的需要,界面编辑系统要能很方便的将新的图形元素 引入编辑系统。这就要求界面编辑系统对各图元有统一的操作模式,而面向对 象技术能很好的解决这一问题。独立性是指把界面编辑系统可以作为一个独立 模块镶嵌在其他数控系统软件中,从软件工程的角度出发,这是提高软件利用 率的一个重要方式。因此,为保证编辑系统具有更广泛的意义和更好的重用性, 总体设计遵循了以下几个原则:开放性、兼容性和可扩展性,这都是从软件工 程角度所考虑的。 2 3 人机界面编辑软件的框架设计 界面编辑系统软件要设计成组态软件的形式。也就是编辑软件要能够让用 户在面对不同的数控设备时,只需要利用绘图软件包组态绘制出该数控设备的 显示画面,并设定画厦图元参数就可以实现对数控设备的综合控制。这种高度 可移植性的软件系统,不仅使软件操作起来简便易行,在线维护方便。而且可 视化的图形界面使界面编辑软件具备了良好的人机交互界面。 界面编辑系统结构分为文件管理、屏幕图形编辑、编译处理、模拟仿真等几 大模块。总体结构如图2 - - 3 所示,现分别介绍模块的功能: ( 1 ) 文件管理:用于对屏幕图形文件、数据文件和图元库文件的保存、读 取和删除等。 ( 2 ) 屏幕图形编辑:屏幕图形编辑模块是一个供用户进行人机界面图形设 计和显示的具有实时人机交互功能的通用性核心模块。功能特性如下; a 根据数控显示界面的特点。本模块提供直线、矩形、圆、圆弧、文字、 图片等基本图形元素及变数显示、动态文字、动态图片、表格、功能按键5 种 特殊图形元素。用户可以用上述图形元素就可以很容易的设计各种操作方便、 1 0 武汉理工大学硕士学位论文 界面友好的数控入机对话界面。 b 本模块还提供移动、删除、缩放、复制和层次变换等基本图形编辑工具, 方便用户灵活编辑各种图形。 c 屏幕图形元素是以矢量图形方式表达,所以在编辑中不会有失真的现 象。 d 每个屏幕图形元素具有自己的属性,用户通过修改图形元素的属性值来 控制它的功能。 图2 3 数控人机界面编辑系统框架结构 ( 3 ) 编译处理:编译处理的过程,就是把设计的屏幕图形文件转换成指定 数控操作显示设备能解释执行的屏幕数据的过程。也就是说,编译处理程序要 完成将用户设计的屏幕图形元素的几何参数、功能属性等信息转化为数控操作 系统的数据来显示工作。 ( 4 ) 模拟仿真:本模块为用户提供一种不经数控设备,直接在电脑上模拟 仿真数控显示界面的运行环境,以检验设计的界面是否有效、友好,若不符合 要求可返回屏幕设计模块继续编辑。模拟功能分离线模拟和在线模拟两种,离 线模拟不与数控设备联系,由电脑简单模拟各屏幕显示效果,而在线模拟将由 电脑接管数控操作界面的部分功能,通过串口通讯与数控设备通讯,在线模拟 将真实再现最终界面设计效果。 2 4 开发工具的选择 根据设计本程序的需要,本文选用c + + b u i l d e r5 0 来编制系统图形编辑器, c + + b u i l d e r5 0 是著名的b o r l a n d 公司开发的可视化开发工具。它基于 i i c r o s o f t 公司的3 2 位操作系统w i n d o w s 系列,具有高效、最优化、可视化应 武汉理工大学硕士学位论文 用程序开发环境和强大的数据库开发能力。c 十十b u i l d e r5 0 使用的程序语言是 c + + 语言,c + + 是门高效实用的程序设计语言,它既可进行过程化程序设计, 也可以进行面向对象程序设计,强调对高级抽象的支持,用它开发出的应用程 序具有可重用的特点。经过二十多年的发展,己逐渐成熟与完善,并广泛应用 于科学与工程等多个领域。“。高质量的代码能有效地降低软件的复杂度和提高 开发效率。面向对象方法的继承性是一种代码重用的有效途径。在软件设计时 可以利用一些己被精心设计好并且经过测试的代码,这些可重用的代码被组织 和存放在程序设计环境的类库中。由于类库中的这些类的存在,使以后的程序 设计过程变得简单,程序的复杂性不断降低、正确性不断加强,也越来越易于 理解、修改和补充。利用面向对象的方法,能够建立一个定义良好的接口,以 帮助系统的设计、实现、维护和程序的重用。本软件主要进行的是逻辑推理, 用到的主要是面向对象的机制。 2 。5 数据结构的设计 对于数据结构类型的选择,在本课题中主要考虑了如下方面:首先是要满足 对于待处理的数据元素及其关系的描述;其次,在能够完整描述问题空间所有 数据元素及它们之间关系的基础上,应采用尽可能简单的数据结构,以避免复 杂数据结构带来的复杂操作;同时,应考虑与其它模块之间数据结构的通用性。 人机界面设计数据具有“一个对一个”的特点,正好符合线性结构的特点。基 于以上考虑,本课题中采用了具有线性特性的数据结构来实现人机界面编辑过 程中图元添加、删除及修改时设计数据的保存和读取数据的高效性。 系统采用了标准模板库( s t l ) 中的标准序列容器v e c t o r 。标准模板库 ( s t a n d a r dt e m p l a t el i b r a r y ) 是一个c + + 容器类库,算法和迭代器。他提供许 多基本算法,数据结构。s t l 是一个通用库,它可以充分定制,因为几乎所有的 s t l 组件都是模板”。 s t l 是标准化组件,这样你就不用重新开发它们了。你可以仅仅使用这些现 成的组件。s t l 现在是c + + 的一部分,因此不用额外安装什么。它被内建在编译 器之内。我们用到的v e c t o r 容器是相当易于使用,v e c t o r 是可动态改变大小的 顺序存储的线性表,也叫“动态数组”,因为采用的是随机迭代器,所以得到 某一位置的值非常快。 s t l 容器可以保存对象,内建对象和类对象。它们会安全的保存对象,并定 1 2 武汉理工大学硕士学位论文 义我们能够操作的这个对象的接口。因此,在s t l 容器中的对象也很安全。s t l 算法是标准算法,我们可以把它们应用在那些容器中的对象上。这些算法都有 很著名的执行特性。它们可以给对象排序,删除它们,给它们记数、比较,找 出特殊的对象,把它们合并到另一个容器中,以及执行其他有用的操作。 s t l 所有的东西,就是容器、算法和允许算法工作在容器中的元素上的 i t e r a t o r ( 迭代器) 。算法以合适、标准的方法操作对象,s t li t e r a t o r 就像是 容器中指向对象的指针。 在本软件中采用了v e c t o r 容器来存储设计过程中涉及到的人机界面数据, 主要对象容器定义如下: v e c t o r m _ c h i l d r e n :定义用于存放子图元对象指针的容器 v e c t o r mv e r t i c e s :定义用于存放图元顶点坐标的容器 v e c t o r m : 定义用于存放各编辑画面对象指针的容_canvas 器 通过v e c t o r 容器模板自带的p u s h _ b a c k 成员函数将要加入的对象压入到相 应种类容器中,通过这样的操作就把各对象逐一的放入容器中。再通过其他成 员函数如e r a s e 、i n s e r t 等对它们进行操作,实现各对象数据的集中管理。 2 6 小结 本章概括介绍了数控人机界面的基本特点,分析了软件的功能和采用的设 计原则,在此基础上对人机界面编辑系统进行了框架设计,确定了各个功能模 块,确定了软件的开发平台和开发工具,最后确定了软件使用的主要数据结构。 武汉理工大学硕士学位论文 第3 章图形编辑系统的对象模型的设计 3 1 面向对象技术的应用 面向对象方法的基本思想是:对问题领域进行自然的分割,以更接近人类 通常思维的方式建立问题领域的模型,以便对客观的信息实体进行结构模拟和 行为模拟,从而使设计出的软件尽可能直接地表现问题求解的过程。它是建立 在结构化程序设计概念和数据抽象的基础上构造起来的,吸收并发展了已有的 思想,使现有的技术更易于实现。由此,我们可以认为: 面向对象= 数据抽象+ 信息隐藏+ 继承性+ 动态连接 下面,概要地讨论面向对象的几个基本概念“”1 ”】。 ( 1 ) 对象( o b j e c t ) 。面向对象概念中的对象是包罗万象的,世界上的任 何事物都是对象。在面向对象的程序中对象是食有数据及其操作方法的模块, 是数据与行为的统一体。一个对象的完全一致性,通过一种简单的语言构造来 表达。面向对象支持的这种表示方法不仅仅是一种记法上的方便,也是一种思 考的工具。对象包括原子对象、简单对象和复杂对象,原子对象是指在概念上 不可再分割的数据、字符串、逻辑值等及其操作集合;简单对象是指仅由原子 对象直接构成的对象;复杂对象是指不包括原子对象的其它对象( 简单对象和 复杂对象) 所构成的对象。 ( 2 ) 类( c l a s s ) 与实例类( i n s t a n c e ) 。类是由概括了一组对象共同性质 的方法和数据所组成。它是对一组客观事物的抽象,它将该组事物所具有的共 同特征( 包括操作特征和存贮特征) 集中起来,以说明该组事物能力和性质, 这组事物中的每个个体便是一个对象。从一组对象中抽象出公共的方法和数据 并将它们保存在一类中是面向对象功能的核心。类的实例即为对象,实例化是 面向对象程序设计中的基本过程,采用面向对象方法的用户在描述完任务所涉 及的类之后,便是大量对象的产生,这就是类的实例化。 ( 3 ) 继承( i n h e r i t a n c e ) 。继承是指自动共享类、子类与对象中的方法与 数据。面向对象系统中,类和继承是不可分割的两个方面。类是继承的作用对 象,继承是使类相互联系而形成完整系统的有机机制。继承是一种现实世界中 对象之间独特的关系,使得某类对象可以继承另外一类对象的特征和能力。继 承使用户能够只对类的差异进行编程而创建新类( 子类) ,继承分为单继承和多 1 4 武汉理工大学硕士学位论文 继承。单继承指子类能从单个类中继承数据和方法的能力,多继承则是指子类 能从多个类中得到数据与方法的能力,多继承对从一类层次的多个分支中建立 复杂行为时非常有用。 ( 4 ) 消息( m e s s a g e ) 与方法( m e t h o d ) 。消息是让对象以某种方式进行操 作的请求,它是用来连接对象与外部世界( 其它对象) 的唯一通道。消息表示 被一个对象所用的方法,该方法决定了送给目标类的消息。在大多数情况下, 消息的引用类似于标准的函数或过程调用。方法是一个类的消息执行,当消息 送给一个对象,对象类所定义的方法就执行了。可见,方法是对对象数据进行 操作的函数、指令或子例程,它是根据消息来执行并处理实例变量的值,它还 能发送消息到其它请求动作的对象,一个对象的数据只能为对象本身的方法所 操作。 ( 5 ) 封装( e n c a p s u l a t i o n ) 。封装是将某个数据类型的所有数据和函数放 入一个控制的抽象结构中的能力。类的设计,就是可以使用户自由地把实例变 量和方法压缩在一个单结构中。也就是说,封装将方法与数据同放于一对象中, 以使对数据的存取只可通过该对象本身的方法来进行。一对象不能直接作用于 另一对象的数据,对象间的通信只能通过明确的消息来进行。因此,封装把一 个数据结构同操作数据的函数( 行为或方法) 组合在一起,封装是借助于一种 新的结构和数据类型机制( 类) 来达到的。 ( 6 ) 多态性( p o l y m o r p h i s m ) 。多态性是指同一消息被不同对象接收时被 解释为不同含义的能力,这也是消息根据所送的对象类而改变其执行的能力。 当创建一个导出类,它可以代替所继承的基本类的任何方法的执行。送给基本 类对象的消息使用了在基本类定义的方法,如果一个导出类优先于它从基本类 继承的方法,那么与送给一个导出类对象的优先方法同名的消息将作为定义给 导出类的方法。也就是说,给行为取一个名字或符号,它从上到下共享一个类 等级,在这个等级中的每个类都以适合自己的方式实现这个行为。多态性使用 户能用一种相似的方式处理相关概念,并使程序更易于扩展。利用多态性,用 户可发送一般形式的消息,而将所有实现细节都留给接收消息的对象。 ( 7 ) 抽象( a b s t r a c t i o n ) 。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 某铝材厂安全生产准则
- 2026大一运营部面试题及答案
- 2026服务企业专员面试题目及答案
- 人工智能驱动的个性化理财方案
- 2026杭州编外面试题目及答案
- 2026机车公司面试题及答案
- 交易合规性验证机制
- 工艺礼品公司市场经理述职报告
- 人工智能在银行客户画像中的构建技术
- 少儿古筝月度考级报名数据统计存档复盘台账方案
- 施工现场隐患及违章照片集
- 装修工程退场协议书模板
- 考研管理学综合复习资料
- 2025食堂承包合同书范文
- 《25.3相似三角形》教学设计
- 国家级紧急医学救援队伍建设规范
- JCJT3-2017 水泥机械设备安装工程施工及验收
- 人教版七年级下册数学训练100题-含答案
- 急诊科抽搐和癫痫处理方法
- 福建省流动人口信息登记表-新版实用文档
- 农机修理工认证考试试题题库
评论
0/150
提交评论