




已阅读5页,还剩55页未读, 继续免费阅读
(检测技术与自动化装置专业论文)数控图形用户界面集成开发平台的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
武汉理工大学硕士学位论文 摘要 在c n c ( c o m p u t e r i z e d n u m e r i c a lc o n t r 0 1 ) 系统中,用户界面是指系统的硬 件和软件与其使用者之间的接口。传统的c n c 软件开发不理睬用户界面的特殊 性,而将它与c n c 系统的开发混和在一起,这样不仅难度大,而且设计出来的 用户界面结构复杂,难于理解,同时也很难满足用户的需求。因此,要将c n c 界面独立出来进行研究。 为了进一步提高c n c 系统用户界面的友好性,开发出适合不同用户的界面, 为c n c 系统开发一种专门的图形用户界面编辑工具是十分必要的。本课题的主 要任务就是为了满足亿图公司c n c 系统的具体需求而设计一个图形用户界面集 成开发平台,从而为用户设计一个界面友好、针对性强的图形用户界面。 在系统的开发过程中,以软件工程的设计思想作为指导,采用面向对象的 设计方法对图形用户界面软件集成开发平台进行了系统分析和需求分析,得出 软件的具体功能需求。在此基础上采用模块化方法设计,把该软件的集成环境 分解成项目管理模块、编辑模块、编译模块、通讯模块等。同时,设计出各模 块间的数据流向,处理好模块之间的消息传递和驱动。 系统进行模块化之后,具体实现了各个模块的功能。其中,界面编辑模块 提供了各种静态和动态图元,使用者可以使用这些图元设计所需求的图形用户 界面。编译模块是以画面为单位进行处理,将其图形元素的几何参数、功能属 性等信息,翻译成便于计算机处理的格式。通讯模块通过串口通讯与数控设备 通讯,负责上位机与数控器之间的通信。 最后,本文以开槽机为例,分析了c n c 系统界面设计具有的功能和设计原 则,并说明了界面设计的实际效果。 总之,通过数控图形用户界面生成工具,界面设计人员不需要专门掌握图 形用户界面描述语言,而是通过界面编辑器来直接操纵屏幕上的可视对象,生 成和修改用户界面原型,并能将结果立即显示在屏幕上,达到“所见即所得” 的效果。 关键字:c n c 系统,图形用户界面,面向对象 武汉理工大学硕士学位论文 a b s t r a c t i nt 1 1 es y s t e mo fc n c ,u s e ri n t e r f a c e ( u i ) i st h ei n t e r f a c ea m o n gh a r d w a r e , s o f t w a r ea n du s e r t h et r a d i t i o n a lc n cs o f t w a r ei sd e v e l o p e dw i t hc n cs y s t e m , w h i c hc a n te m b o d yt h ep a r t i c u l a r i t yo fu i i nt h i sw a v ,i t sd i f f i c u l tn o to n l yt ob e u n d e r s t a n d e d ,b u ta l s ot od e s i g nap e r f e c ts t r u c t u r et os a r i s f yu s e r s s oi t sn e c e s s a r y t or e s e a r c hc n cu ii n d e p e n d e n t l y i no r d e rt oa d v a n c et h ef r i e n d l i n e s so fu if o rc n c s y s t e ma n dd e v e l o pd i f i e r e n t u if o rd i f i e r e n tu s e r , as p e c i a le d i t o ro fg r a p h i c a lu s e ri n t e r f a c e s ( g u i ) i su e c e s s a r t h cm a i nt a s ki nt h er e s e a r c hi st od e v e l o pag u ii n t e r g e dd e v e l o p i n ge a v i m n m e a t f o rh u s tc n c s y s t e m a c c o r d i n gt ot h em e t h o d so ft h es o f t w a r ee n g i n e e r i n ga n do b j e c t o r i e n t e dd e s i g n , t h es y s t e ma n a l y s i sa n dr e q u i r e m e n ta l l a l y s i so nt h i sp l a t f o r ma r em a d e ,a n dt h e d e t a l l e df u n c t i o nr e q u i r e m e n t so ft i l es o f t w a r ea r ed r e w a n dt h e n ,t h r o u 窟i lt h e m o d u l a r i z a t i o nd e s i g n t h es o f t w a r ei sd e c o m p o s e dt of o u rm o d u l e sw h i c ha r ep r o j e c t m a n a g e m e n t ,m o d u l ee d i t o r , m o d u l ec o m p l i e rm o d u l ea n dc o m m u n i c a t i o nm o d u l e s i m u l t a n e o u s l y , d a t ad i r e c t i o nb e t w e e nt h em o d u l e so ft h i sp l a t f u n 3 li sd e s i g n e d w h i c hd e a l sw i t hg o o dn e w st r a n s m i s s i o na n dd r i v eb e t w e e nt h e m a f t e rm o d u l a r i z i n g ,t h ef u n c t i o no fe a c hm o d u l eh a sb e e nc a r r i e do u t f o r e x a m p l e ,u s e ro d i t o rm o d u l ep r o v i d e sa l lk i n d so fs t a t i ca n dd y n a m i cg r a p he l e m e n t s , u s e r sc a na p p l yt h e mt od e s i g nt h e i ro w n r e q u i r e dg u i c o m p i l e rm o d u l em a k e su s e o fm e n ua su n i t ,c o m p l i e rt h eg e o m e t r yp a r a m e t e r sa n di n c t i o n a la t t r i b u t eo fg r a p h e l e m e n t st oaf o r m a tw h i c hc a nb em a n a g e dc o n v e n i e n t l yb yc o m p u t e r a n di nt h e c o m m u n i c a t i o nm o d u l e ,t h es y s t e ma n s w e r sf o rc o m m u n i c a t i o nb e t w e e np ca n d c n c t h r o u 曲t h ep o r tc o m m u n i c a t i o na n dc n ce q u i p m e n t f i n a l l y , t h ew a yw h e nt h em a l 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 na c t u a l p 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 en o t c hm a c h i n e a n dt h ef u n c t i o no fc n c s y s t e ma n dt h ed e s i g n p r i n c i p l ea r ea n a l y z e d i nc o n c l u s i o n ,d e s i g n e r sd o n tn e e dt om a s t e r yt h eg u id e p i c tl a n g u a g e ,u s i n g t h ee d i t o rt o o lo fg u ic a nc o n t r o l 、c r e a t ea n da m e n dt h ev i d e o t e x to ns c r e e nd i r e c t l y , a n da l s oc a no b s e r v et h er e s u l t sa to n c e k e yw o r d s :c n cs y s t e m ,g r a p h i c a lu s e ri n t e r f a c e s ( o u l ) ,o b j e c t - o r i e n t e d i i 堇堡堡三奎堂堕主兰垡鲨室 一一一 1 1 课题背景 第1 章绪论 数控机床是一种高科技的机电一体化产品,是由数控装置、伺服驱动装置、 机床主体和其他辅助装露构成的可编程通用加工设备,它被广泛应用于加工制 造业的各个领域。现代数控系统( c n c ) 除了在加工精度和速度方面的性能不 断提高外,其实现的功能也越来越全、越来越复杂,并不断向柔性化、智能化 方向发展。然而,随着新型c n c 系统的不断涌现及其功能的复杂化,用户在安 装、连接、调试、编程、操作和维修等各方面也增加了难度。若没有适当的人 去操作使用,没有专业的技术人员去安装、调试和维修,c n c 系统难以充分发 挥作用。 在工件的n i 过程中或在系统的调试和维护过程中,c n c 与用户之间通过 图形用户界面有着大量的交互过程。数控机床图形用户界面的设计直接影响其 工作效率和操作的舒适性,良好的图形用户界面操作简单有效、且具有引导功 能,使用户感觉愉快、增加兴趣,从而提高使用率。因此,用户对界面的友好 性提出了更高的要求,特别是对于推向市场商品化的c n c 系统,用户界面的友 好性已成为评价其性能优劣的一个重要因素【1 】。 图形用户界面是机床操作者和系统之间的信息交互通道,即用户与机器互 相传递信息的媒介,其中包括信息的输入与输出。用户界面有硬件界面和软件 界面之分。硬件界面指c n c 系统给用户预留的一些硬件接口:软件界面指c n c 系统供用户观察、修改和设置内部软件运行过程及数掘的人机交互界面。 随着c n c 系统硬件平台的p c 化,越来越多的c n c 系统制造商开始利用 p c 机和高度模块化的集成电路来构造具有拓扑结构的c n c 系统硬件平台,使 得c n c 系统硬件的可重用性、可扩展性有了极大提高。但相对于硬件而言,c n c 系统软件的可重用性、扩展性却没有得到很大改观,逐渐成为通用型、开放式 c n c 系统进一步发展的瓶颈。本论文的重点主要是讨论软件界面 2 1 。 台湾亿图实业股份有限公司根据该公司数控设备中用户界面存在的问题, 提出研究开发一个基于个人普通计算机的能为用户提供直观、方便、高效的编 程环境的图形用户界面集成开发平台。 茎坚望兰盔堂堡圭堂垡堡塞 1 2 国内外发展现状 在国内,大多数数控厂家仍然使用传统的控制系统,即一般将各种按钮和 传感器作为p l c 的输入信号,将各种执行元件和指示元件作为p l c 的输出信号。 这种系统的缺点主要体现在:硬件结构多,各种连线也多,容易出故障而且硬 件修改很不方便;缺少形象直观的显示,因硬件输入设备多,操作规程繁琐, 很容易发生误操作事故;在p l c 控制系统中,传统的数值输入方法大多利用按 键或b c d 码数字拨轮开关,再配合p l c 提供的有关功能指令进行输入。使用不 便且回显内容少,因而参数的检查及修改十分麻烦。 在国外,图形用户界面可以取代大部分传统控制面板的功能,使用该界面 可以节省p l c 的i o 模板、按钮开关、数字设定等,且能随时显示各种重要信 息,以利于操作人员正确掌握机器运行情况,避免错误,利于维护。操作时只 要按触摸屏上的控制元件就可对机器进行操作。触摸屏的画面可以根据现场的 实际需要来设计和规划,既便于操作又不会引起误操作。软件编程甚至可以滞 后于系统配置,程序可以随时改动,甚至投产后也可根据发现的问题改变程序, 并且硬件不需做任何改变【3 j 。图形用户界面比操作面板的优越性如表1 - 1 所示。 表1 - 1 图形用户界面与操作面板的比较 智能型图形用户界面传统控制面板 1 机种变更简易 面扳固定无法变更 2可做故障报警显示及注解只有a l a r m 报警灯或a l a r mc o d e 故障排除 3 可做中文及图形资料显示文字及图形固定在面板上 4可做动画效果无 5可密码设定操作员等级无,保护需由? l c 程序设计 6 警报信息可打印无 7 町做历史数据追踪无 8数值设定,显示字数无限制由l e d 显示或指拨鼓定,成本高 f 。 设定数值范围可定上下限。安全性高由p i c 程序设计 1 0 不占p l c 的i o 接点,但需r s 2 3 2 c 通讯模块占p l c 的i o 接点不需通讯模块 1 1提高生产顺畅性生产效率无法掌握 武汉理工大学硕士学位论文 图形用户界面是c n c 系统的重要组成部分,它直接关系到整个c n c 系统 的可使用性和效率。经验表明开发高质量的用户界面,需花费大量的人力物力, 且开发周期较长。传统的用户界面的设计与描述是基于“嵌入”方式进行的, 数控用户界面设计人员在设计图形用户界面时,按功能及界面两方面要求混合 编写用户界面和应用功能两部分程序。这种开发方式忽略了用户界面的个性, 使程序复杂化,可维护性差。而随着高科技的不断发展,l c d 智能图形用户界 面已应用于各个领域,在计算机领域图形用户界面能取代传统显示器和键盘; 在工业现场可以替代各种显示终端和控制面板功能。图形用户界面能储存多幅 画面,每一画面可由文字,图形以及指定的p l c 资料组成,设计者可根据需要 编辑出各种画面,用以显示设备状态、操作指示、参数设定、动作流程、统计 资料、警报信息和简易报表。 1 3 研究的目的和意义 体系结构具有开放性是c n c 系统发展的总趋势,其体现之一就是友好、灵 活、可靠的图形用户界面。无论采用何种硬、软件结构,作为人和机器之间交 互媒介的图形用户界面是很重要的,特别是对于车蒯级的现场操作,一个良好 的界面不仅有利于工人的操作,而且在一定程度上有利于工人的身心健康,从 而最终提高了生产效率;另一方面,随着微电子技术的迅猛发展,c n c 系统的 硬件日趋标准化、模块化、硬件可靠性越来越有保障,相对来说软件质量越来 越受到重视,而图形用户界面是软件设计中投入工作量较大的环节之一,用户 界面的优劣与否己成为衡量软件产品质量的一个重要指标。因此开发一个良好 的图形用户界面是c n c 系统软件设计的目标之一。 数控图形用户界面软件集成开发平台简单实用,设计开发周期短,性能价 格比优,在c n c 系统中的应用前景很好,已经越来越多地在数控领域得到应用。 当工程技术人员熟悉了图形用户界面的编程,智能图形用户界面的使用则会更 为普遍,这必将推动生产的科技进步。 当前数控图形用户界面的开发已不再倾向于将用户界面和应用功能两部分 混合编写,而大都采用将用户界面部分的开发独立出来。这是因为对不同的数 控应用系统,用户界面部分在逻辑上和处理方法上具有高度的相似性,让数控 工程开发人员花费大量的时间与精力去开发一个很类似又不具有通用性的用户 武汉理工大学硕士学位论文 界面程序显然是不可取的。若独立开发用户界面,具有强大的界面开发能力的 图形用户界面生成工具是非常必要的。用户能够利用这样的工具方便地构造符 合自己意愿的界面外观并能方便地对界面进行维护,大大节约了开发人员在界 面生成和维护方面所耗费的时间。 1 4 课题主要内容 本课题是为亿图公司c n c 系统开发一个供用户设计数控专用图形用户界面 的界面集成开发平台,用户可以利用该开发平台来设计适合自己产品的l c d 屏 幕,同时监视或检验程序。 图形用户界面生成工具主要用于创建c n c 系统的图形用户界面,可以在 w i n d o w s 环境下运行,并通过内部图形库或自定义的图形库进行链接,编制自 己个性化的用户界面。采用“所见即所得”的先进观念,使用者可立即在屏幕 上看到画面设计的实际结果,如各种字形的大小、颜色、元件位置、图形等等, 而且屏幕上的显示都与实际图形用户界厩所显示的画面一样。而在编辑操作方 法上可以达到拖曳式编辑,使用者可将画面设计工作区中的图元,以滑鼠随意 拖曳到其它位置,或改变其外形、大小等。同时,通过为图元的属性参数设置 特定的事件或特定的变量,从而与c n c 系统中的p l c 程序或零件加工程序进行 数据交换,实现c n c 系统供用户观察、修改和设置内部软件运行过程及数据的 人机交互界面。本课题的主要工作如下: ( 1 ) 项目的需求分析和总体设计:根据收集的技术资料,分析系统的总体 需求,基于现有技术,确定出系统的总体技术路线。 ( 2 ) 用户界面的设计与实现:为用户提供直观、方便、高效的编辑环境。 ( 3 ) 界面编辑模块的设计:为工程师提供了一个绘制图形用户界面的工具, 是人机交互的重要手段。该模块是整个软件的核心模块,对于这个功能块最重 要的一点是要达到界面友好,简单易用的效果。 ( 4 ) 编译模块的设计:把设计的屏幕图形文件转换成指定数控操作显示设 备能解释执行的屏幕数据的过程。 ( 5 ) 通讯模块的设计:利用上位机与数控器的串口通信,把c n c 系统设 为主机,由上位机向c n c 系统发送通信请求命令,c n c 系统收到后执行相应动 作并返回上位机需要的数据。 武汉理工大学硕士学位论文 第2 章数控图形用户界面开发平台的整体设计 2 1 亿图c n c 系统的工作原理 亿图c n c 系统由上位机,数控控制器和下位机三部分组成,图2 - 1 给出了 由台湾亿图公司开发研制的亿图h 4 系列数控器系统工作原理图。通过r s 2 3 2 接口,系统可用p c 机、c r t 屏幕或计算机触控屏幕来遥控数控控制器,借助 可编程逻辑控制程序来连接指拨关开,同时可控制交流伺服马达及步进马达, 具有输入输出各2 4 1 6 点,并可接主轴译码器及跳跃传感器等。 a cs c r v o s p i n d l e 图2 - 1 亿图h 4 系列数控器系统工作原理图 s p i n d l ee n c o d e r ( 主轴译码器) s k i p ( 跳跃信号) m t g ( 手摇轮) d i d 0b o a r d ( 继电器) 上位机一般情况下,都是基于p c 机或工作站来实现的。它一方面为c n c 系统进行数控加工程序和刀具数据等的准备,另一方面对数控器进行控制( 如 c n c 系统的启动帝0 动等) ,数控器可以将修改过的程序、系统状态、故障和报 警信号传送给上位机。下位机指驱动和执行机构、传感器和机床电器控制器, 武汉理工大学硕士学位论文 它们接受c n c 系统的位置、速度、驱动电流命令值和开关功能的控制,并向c n c 系统提供系统实际运行数据或运行状态,比如各种过程数据( 如位置、温度变 化等) 、应答信号和错误报警信号。 数控装置通过显示器向用户显示c n c 系统的工作过程状态和数据来实现交 互,交互设备主要是键盘、操作砸板开关、显示器和手轮等。数控装置与上位 机的连接是通过串行接口( r s 2 3 2 、r s 4 2 2 等) 进行点到点的通信。数控装置 与进给轴和主轴的驱动接口一般采用i o 模拟量接口,检测反馈接口按传感器类 型可采用开关量或模拟量输入接口。还有一些人机交互设备( 如c r t 显示器等) 通过专用外设接口与数控装置进行连接。 2 2 亿图c n c 数控器的基本特点 图2 2 是亿图h 4 系列数控控制器,采用l c d 液晶显示器作为图形显示界 面,再配合面板键盘就构成了操作人员与设备进行对话的界面了。显示器面板 键盘由若干按键组成,其中的一组或几组功能键上有标明其作用的标志或字符。 操作这些功能键,c n c 就执行相应的功能。其余为一定数量的文字、数字、光 标和编辑等按键,用于选择功能选项与参数,送入或修改c n c 系统参数和数控 加工程序等。 图2 - 2 亿图h 4 系列数控控制器 与传统数控器的l c d 不同,它提供“个图形用户界面,用户可根据实际 需要添加界面,界面中可以显示系统信息、报警信息、运行状况、参数修改及 功能键,所有显示的信息都可以由用户自己根据需要进行设计和编辑,可显示 武汉理工大学硕士学位论文 如:时问、输入输出状态、计数器、定时器、模拟量等类型的资料,用户可以 自由修改、添加、删除界面,所有界面可用电脑直接对其编程。 液晶屏幕的显示内容由若干“页面”组成。所谓“页面”指的是液晶显示 器上显示的一屏,显示媒体由变数图形元素、静态图形元素和动态图形元素三 部分组成。图2 - 3 是一个典型c n c 数控器的图形用户界面。 图2 3 典型c n c 数控器的图形用户界面 ( 1 ) 变数图形元素:变数i 虱形元素主要用于显示各种加工参数或状态量等 数字信息,如主轴转速、座标位置等。变数可读也可以修改,用户可以通过按 键修改某些变数的值以设置各种加工参数。 ( 2 ) 静态图形图素:静态图形元素在整个界面里主要起修饰作用,用于显 示一些固定不变的信息,包括说明性的文字、示意图、修饰性图形及提示信息 等,由文字、字符和图形组成。 ( 3 ) 动态图形图素:动态图素可以用图形动画的形式来反映一些设备工作 状态,如可以用动态图素来实现信号灯、错误警告、状态提示等。这些动态图 素与控制器内的变量建立了对应关系,根据变量的变化,图形对象可以进行改 变,变量可以是内存变量,也可以是f o 变量。 武汉理工大学硕士学位论文 亿图公司c n c 数控器需要开发数控专用图形用户界面的界面集成开发平 台,要求用户可以利用该开发平台来设计适合自己产品的l c d 屏幕,同时监视 或检验程序,而且经计算机r s 2 3 2 接口,可由p c 传送并执行程序,达到“边 传边做”的效果。该开发平台应当具有开放、灵活、高效和高精度等特点,用 其开放性的图形用户界面功能来满足用户的需要。 鉴于此种情况,本课题的主要任务就是充分利用w i n d o w s 的人机交互能力 和p c 机丰富的软件资源,开发一个实用、美观的数控图形用户界面集成开发平 台,为亿图h 4 数控器的图形用户界面设计提供一个友好的、高效的编辑环境。 运用此工具设计者可以根据需要编辑出各种画面,以文字、数字、图形来 实时显示p l c 内部状态和数据及现场设备运行状态,画面上显示操作指示、参 数设定、动作流程、统计资料、警报信息、报表等资讯。设计完成后画面资料 进行存储,对图形用户界面系统设定,进行域面应用资料编译,然后设定下载 传输速度以及下载c o m 设定,最后下载画面程序,可编程人机终端投入使用。 2 3 图形用户界面开发平台总体结构 借助于w i n d o w s 系统上的图形开发系统w i n d o w sg u i ,为用户提供了图形 化的编辑工具。系统提供以图形输入方式来建立图形用户界面,界面直观,操 作简单,能快速绘制数控图形用户界面,具有方便的编辑环境、灵活的编译方 式【4 】。这种高度可移植性的软件系统,不仅使软件操作起来简便易行,在线维护 方便,而且可视化的图形界面使图形用户界面编辑软件具备了良好的人机交互 界面。图2 - 4 给出了数控图形用户界面系统的组成结构。 4 - - 数控 设备 一 控制器 _ 一- _ _ _ 一_ _ - - _ 一_ - - - _ - _ ,一一一一_ - - - l _ _ - _ - - 一一- _ - _ _ 一 图2 - 4 数控图形用户界面系统组成结构 武汉理工大学硕士学位论文 采用模块化方法设计,集成开发的总体环境可以分解成一些相对独立的功 能模块。集成环境主要由项目管理模块、编辑模块、编译模块、仿真模块、通 讯模块等组成。系统框架结构如图2 - 5 所示,现分g u 介绍各模块的功能。 图2 5 图形用户界面集成开发平台组成结构 ( 1 ) 项目管理模块 主要用于管理和归档所有数据,包括用于对屏幕图形文件、数据文件和图 元库文件的保存、读取和删除等。 ( 2 ) 编辑模块 编辑模块是集成环境的核心模块。该模块将图元分为矢量图、图库等类别, 用户可以方便的进行任意图元的创建和编辑工作。软件通过建立图元与现场i o 变量、内存变量等的关联,而实现组态软件的动画连接。其功能特性如下: 提供直线、矩形、圆、圆弧、文字、图片等基本图形元素及变数显示、 表格、功能按键等特殊图形元素。用户可以用上述图形元素设计各种操作方便、 界面友好的数控人机对话界面。 提供复制、删除、平移、缩放和层次变换等基本图形编辑工具,各种图 元可任意组合,组合图元可整体调控,方便用户灵活编辑各种图形。 图形元素以矢量图形方式表达,可方便地对图形放大、缩小且不失真。 每个图形元素具有自己的属性,用户通过修改其属性值来控制它的功能。 模块中的工具箱为界面提供了许多经常使用的部件,如按钮、菜单等。 武汉理工大学硕士学位论文 ( 3 ) 编译模块 主要功能是以屏幕画面为单位进行处理,将图形元素的几何参数、功能属 性等信息,翻译成便于计算机处理的格式,存放在指定的内存专用区域,显示 驱动程序便可对界面数据解释并显示在屏幕上。 ( 4 ) 仿真模块 为用户提供一种直接在电脑上模拟仿真数控显示界面的运行环境,以检验 设计的界面是否有效、友好,若不符和要求可返回编辑模块继续编辑。 ( 5 ) 通讯模块 负责上位机与数控器之间的通信。主要由两部分组成,一部分负责信息下 发,上位机向数控器发送通信请求命令,包括用户程序下载、操作命令( 如运 行、停止等) 和硬件配置参数等的下达:另一部分负责信息上传,数控器收到 后执行相应动作并返回上位机需要的数据。 集成环境虽被分解成5 个相对独立的模块,但这些模块之间仍存在着密切 的关系,处理好它们之间的消息传递和驱动,是集成环境能否设计成功的关键。 图2 - 6 给出了数控图形用户界面软件开发平台的系统模块问的数据流向图。 图2 - 6 数控图形用户界面系统模块间的数据流向图 武汉理工大学硕士学位论文 除上述5 大模块外的一些其它功能,如集成环境界面管理、联机帮助等, 它们的实现大都分散或内嵌在以上各模块之中,所以,役有将它们单独列出。 用户界面集成开发平台为工程人员提供了一个设计、编辑数控器人机对话 界面的工具,为达到使界面友好,简单易用的效果在集成开发平台的界面设计 上,采取了菜单、窗口、汉字界面等技术口i 。 ( 1 ) 菜单技术 系统采取用户菜单管理系统,为用户提供灵活、方便的人机交互界面,有 效地对各模块化程序进行统一管理。在管理系统下建立高度模块化的程序结构, 以便维护和扩充。系统在整个设计过程中始终在统一的环境下进行,不需要变 更运行环境,提高了效率,编制成的用户菜单可在图形编辑状态下运行。 ( 2 ) 窗口系统 窗口系统是目前在通用计算机上十分流行的一种用户界面,它的最大特点 是能够支持网络和多任务处理,因而可以很好地满足实时多任务图形编程系统 的要求,有时一个窗口就代表整个系统,用户可以从一个窗口转换到另一个窗 口,从而很方便地实现任务之间的切换。 ( 3 ) 汉字界面 实际编程中,用户多是普通工人或工艺人员,为便于理解和使用,图形编 程系统应该使用汉字界面。除菜单全部汉字提示外,数据输入提示、错误提示 等也采用汉字技术,操作简单易学。 2 4 开发工具的选择 根据设计本程序的需要,我们选择了c + + b u i l d e r5 0 为开发工具【6 】。 c + + b u i l d e r 是i n p r i s e 公司( 原b o r l a n d 公司) 推出的新一代面向对象可视 化快速应用程序开发工具,是名副其实的第三代c + + 应用程序开发环境。它提 供了一百多个v c l ( v i s u a l c o m p o n e n t l i b r a r y ) 控件,使用户可以非常容易地快 速开发出自己所需要的界面。 c + + b u i l d e r5 0 既具有c + + 语言的灵活性,又具有可视化编程的便利性,功 能丰富强大,界面友好,使用十分方便井在 屋大程库上提高了对象的可重用性。 尤其与众不同的是,c + + b u i l d e r 允许用户开发自定义组件,而且自定义组件也 能够以可视化的方式集成在集成开发环境( i d e ) 面板上。 茎堡望三盔兰堡主堂堡垒塞 i d e 提供了所有需要的用于设计、开发、试验、调试和发布应用程序的工具。 c + + b u i l d e r5 0 集成开发环境包含可视化窗体设计器,对象观察器、组件面板、 工程管理器、源代码编辑器、调试程序以及安装工具等。在该窗体设计器中, 可以自由地移动可视化表示的对象,同时在对象观察器中编辑该对象的初始化 运行时状态,在源代码编辑器中编辑该对象执行的逻辑。改变对象与代码有关 联的属性,比如改变事件句柄的名字时,对象观察器会自动地改变相应的源代 码。另外,在源代码编辑器中更改该对象的源代码,比如在窗体类声明中改变 事件句柄的名字时,对象观察器也会立即反映出相应的变化。 2 5 软件工程的思想 2 0 世纪6 0 年代以来,随着计算机应用需求的驱动,软件生产的复杂性和成 本都曰益提高,大型软件的生产出现了很大的困难,出现了软件危机,主要表 现在:生产成本高、进度无法控制、可维护性差等方面。认识早期软件开发中 所存在的问题和产生问题的原因,并设法克服是解决软件危机的开始。人们将 传统工程学的原理、技术和方法应用于软件开发可以起到使软件生产规范化的 作用,它有利于组织软件生产,提高开发质量,降低成本和控制进度。提出软 件工程化的思想,反映了人们想使软件生产走上正规化,人们曾从不同的角度 给软件工程以定义,但它们的核心内容都是“以工程化的方式组织软件的开 发”,其中涉及软件的计划、开发和维护几个阶段。 本软件的算法比较复杂,需要实现的功能很多,而且大量功能的交织有一 个协调问题,从程序的宏观把握上相对困难一些。本软件中的各种状态参数, 临时变量就达数百之多,还有众多的元件需要设置状态,因此有必要引入软件 工程的方法,组织数据字典、记录数据流图,并且书写大量的软件文档,为晶 后的软件维护提供参考。 为了保证本软件的开发质量,软件设计时以软件工程中的规范为指导,对 软件从定义到开发的各个环节做出合理的规划,认真实施,很好地实现预定的 功能,才能做到运行可靠,便于维护,并让用户满意。 武汉理工大学硕士学位论文 2 6 面向对象技术的应用 面向对象程序设计方法川的出现使传统程序设计思想和设计方法发生了革 命性变化。传统的程序设计方法是一种结构化程序设计方法,该方法基于功能 分解,将整个软件看作是一个个子功能模块的组合。由于软件功能经常随应用 需要而改变,软件的整体结构也就必须做出相应改变,否则不利于软件的维护 与扩充。此外,数据和作用在该数据上的操作是相互分离的,同样的数据可能 对应不同的操作,同样的操作也可能作用在不同的数据上。对于这些问题,编 程人员必须时刻加以考虑,相应地加重了程序设计者的工作负担。 面向对象程序设计与之不同,该方法基于对象分解,将整个软件看作是一 个个离散对象的组合。由于对某个特定问题域来说,该域的对象组成基本不变, 因此这种基于对象分解方法设计的软件在结构上更加稳定。在面向对象程序设 计方法中,由于数据以及作用在该数据上的操作都直接封装在对象中,这就避 免了传统程序设计中数据和操作的潜在的不一致性。采用面向对象程序设计方 法另一个优点是由于整个软件被看作是对象及其相互作用关系的组合,因此便 于编程人员进行抽象思维。 面向对象程序设计方法有两个最重要的特征封装和继承。通过封装,对象 将其实现细节隐藏在内部,这些细节对外部对象来作用方式,它通过隐藏细节 减少了程序代码间的相互依赖性,方便了对象的构造和扩充。封装的另一作用 是把对象作为一个不可分割的整体,便于编程人员进行抽象思维。继承则是面 向对象方法的另一重要特征。通过继承,新类不仅具有旧类的属性和方法,而 且还可以具有自身特有的属性和方法。由于旧类性质在新类中不必重新定义, 因此继承提高了软件的可重用性。除此之外继承的使用还有一个好处,当要对 软件进行扩充时,可以从类库中直接派生新类,并为该新类添加相应的代码即 可。使用这种方式进行软件扩充,不需要了解原有程序的内部细节,原有程序 也无需进行修改,大大提高了软件的可靠性与安全性。 用面向对象的方法具体实现数控图形用户界面软件集成开发平台,其核心 和基本内容是抽象对象类,并建立对象之间的关联。对象类的划分是否合理, 对象类之间的联系是否恰当,一方面影响系统的功能,另一方面也直接关系到 系统实现的难易程度。 武汉理工大学硕士学位论文 2 7 数据结构的设计 一个用户数控图形用户界面由若干“页面”组成,每个页面是一个不同元 件的集合,包含的元件数量可以有许多。因此,必须采用恰当的数据结构来组 织好它们之间的关系。 选择链表作为该程序的数据结构【s 】。当用图形用户界面编辑软件绘图时,每 生成一个屏幕窗体,就生成该屏幕类的一个对象,同时把该对象加入到屏幕链 表中;每在一个屏幕上画一个元件,就生成该元件类的一个对象,同时程序把 该对象加入到链表当中,这样计算机屏幕上所有的元件对象就连接成一条链表。 由于链表中的对象记载了相应元件的属性,计算机程序通过遍历这条链表,读 取链表中每一个元件对象的属性,就可以实现各种功能了。 建立链表需要使用指针,使用指针会使程序变得不稳定,故我们使用了c + + b u i l d e r 中的t l i s t 类,该类可以把各种不同元件类生成的对象编成一条链表,这 样就避免了使用指针。t l i s t 类有c o u n t ,i t e m s ,f i r s t ,l a s t ,a d d ,r e m o v e ,d e l e t e 等属 性及函数,使用简单,操作灵活。程序当中共定义了五条链表它们分别是: ( 1 ) t l i s t + m ! d f o r m l i s t ;屏幕列表 ( 2 ) t l i s t + e l e m e n t l i s t ;, 屏幕的图元列表 ( 3 ) t l i s t * s e l e c t l i s t ;被选择的图元列表 ( 4 ) t l i s t t e m p l i s t ;l 临时图元列表,存放未被使用的图元对象 ( 5 ) t l i s t * g t o u p l i s t ;图元成组列表 武汉理工大学硕士学位论文 3 1 引言 第3 章界面编辑器的设计 界面编辑器为数控工程师提供了一个设计、编辑数控器人机对话界面的工 具。对于这个模块最重要的一点是要达到界面友好,简单易用的效果。本章分 析了组成c n c 系统界面的各种图元的属性,建立了图元库的抽象模型,以c + + b u i l d e r 为开发工具,用软件实现了各种图元抽象类的定义,为用户提供了一个 高效、实用、舒适和直观的编辑器。它能极大地提高用户的编程效率,并降低 出错机率。 3 2 图元类库的软件实现 3 2 1 基本构想 w i n d o w s 9 5 提供的画图软件p b r u s h g x e ,画好一个图形后就不能再单独对其 进行编辑、移动和删除,同时也不能对其属性进行编辑修改。为了使画面具有 可重绘制和编辑的特性,要求图形画面的组成元素必须是独立的图元对象,而 不是一体的。所谓图元就是指各种各样的简单图形,例如线、矩形、圆、文字、 位图等。对每一种图元建立一个类,并根据图元之间的关系把它们结合成一个 整体,形成一个图元组合图元类库。有了图元类库后,可以用类生成很多 实例对象,这些对象就可以构成一幅画面了。生成的对象不同,对象的属 性不同,得到的画面也就不同凹。 建立的图元类必须能够完全描述这个图元,即应包含描述这种图元的所有 属性参数,能够接受用户对图元的编辑消息,并实现对图元的所有编辑功能, 如对自身属性的修改、自我复制等。这样,通过对图元对象的属性进行修改就可 以直接对画面进行编辑,这也是c n c 系统画面所必须的。通过添加、删除和修 改画面中的图元对象来改变画面,从而实现画面的组态来满足不同c n c 系统的 画面显示要求。 描述图元对象除了描述它的各种属性以外,还有一些行为函数,例如在计 算机屏幕上绘制、移动、选择、存储、装载图元图形的函数,以及设置、获得 武汉理工大学硕士学位论文 图元属性值的函数等。这些行为函数有些也是所有图元共有的,只是具体的实 现方法不一样而已。对于这些方法可以把它们在基类中声明为虚函数,在各个 图元派生类中重载,在重载程序中具体写出绘制相应图元的函数。这将大大提 高程序的可读性、灵活性,以节省代码。对于某种图元特有的函数,则可以把 它写在相应图元的派生类当中。 3 2 2 图元基类的设计与实现 在对图形元素分类的基础上,基于面向对象的思想,对要设计的图形元素 进行抽象,设计出图元基类g e l e m e n t ,下面列出图元基类的典型变量和函数: c l a s sg e l e m e n t p r o t e c t e d : t c a n v a s + d r a w c a n v a s ;,绘图画布 s h a p e t y p es h a p c t y p e ;基本图形类型 定义图元的图形属性 g p o i n ts t a r t p o i n t ;n 开始点 g p o i n te n d p o i n t ;结束点 g p o i n tb a s e p o i n t ;| 澧黾 t c o l o rl i n e c o l o r ;a 线颜色 i n t l i n e w i d t h ;线宽 t p e n s t y l el i n e s t y l e :,线型风格 t p e n m o d ed r a w m o d e ;绘图模式 t c o l o rf o r e c o l o r ;前景色 t b r u s h s t y l ef i l l b r t t s h ;填充刷子类型 b o o l t r a n s p a r e n t ;n 是否透明 v o i d + p o l d v a l u e ;记录旧属性值的地址 i n t p _ l a s t i d ;,最后操作的属性i d v a r i a n tm _ v a l u e ;属性值 w 定义图元的物理属性 i m p o i n t _ t y p e ;p i g :连接点类型 i n tp o i n tn u m b e r ;p l c 连接点号 p u b l i c : b o o l i s s i n g l e c o l o r ; g o b j e c t 0 ;构造函数,初始化对象 v i r t u a l f a s t c a l l g o b j e c t 0 ;,析构函数 几个比较重要的接口虚函数,由各派生类利用多态性、重载性具体实现 函数功能 i n l i n ev o i d f a s t c a l ls e t c a n v a s ( t c a n v a s + c v ) d r a w c a n v a s = c v ; ; 设置绘图画布 i n l i n es h a p e t y p e f a s t c a l lg e t s h a p e t y p e oc o n s t ;图;m 类型 v o i d + _ f a s t c a l lc h a n g e p r o p e r t i e s ( i n tp _ i d ,v o i d + p n e w v a l u e ) ; 设置图元属性值 v i r t u a lv a r i a n t 且s t c a l lg e t p r o p e r t i e s ( i n tp _ i d ) ; 获得图元当前操作的属性值 v i r t u a lv o i d _ _ f a s t c a l ld r a w 0 ;绘制图元 v i r t u a lv o i df a s t c a l lm o v e 0 ;,移动图元 v i r t u a lv o i d f a s t c a l ll o a d f r o m s t r e a m ( t s t r e a m + p m s ,h a t p o s r i o n i n tc o u n t ) ;从输入流读取 其它的的仅在此处声明而
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 产品宣传服务协议合同
- 土方买卖合同协议书
- 劳务派遣与工厂签合同
- 手房卖买定金合同
- 南京住宅租赁合同
- 绿化养护合同范本
- 轿车租给公司合同范本
- 摄像仪维修合同范本
- 露营免责协议合同范本
- 借钱分期还款合同范本
- 2024年江苏省宿迁市泗阳县中考数学一模试卷
- 【抖音直播带货发展中存在的问题及对策(任务书+开题报告)3400字】
- 建筑施工企业主要负责人(A类)题库与参考答案
- 2024年时事政治必考题库及答案(真题汇编)
- 教科版六年级下学期小升初科学模拟试卷(附答案)
- 2024年低压电工资格考试必考重点题库及答案(完整版)
- 湖南省张家界市慈利县2023-2024学年三年级下学期期中考试数学试题
- 2024年北京市燕山区九年级(初三)一模英语试卷及答案
- +广东省深圳市宝安区十校联考2023-2024学年七年级下学期期中数学试卷+
- 呼吸训练方法
- 建筑给排水施工技术培训
评论
0/150
提交评论