2026/4/18 13:40:57
网站建设
项目流程
公司建设网站能提升什么竞争力,如何搭建网站后台,python免费编程软件,域名注册好如何做网站2系统开发工具及运行环境
2.1面向对象技术
所谓面向对象就是基于对象概念#xff0c;以对象为中心#xff0c;以类和继承为构造机制#xff0c;来认识、理解、刻画客观世界和设计、构建相应的软件系统。面向对象设计首先强调来自域的对象#xff0c;然后围绕对象设置属性和…2系统开发工具及运行环境2.1面向对象技术所谓面向对象就是基于对象概念以对象为中心以类和继承为构造机制来认识、理解、刻画客观世界和设计、构建相应的软件系统。面向对象设计首先强调来自域的对象然后围绕对象设置属性和操作具有很高的软件生产率可靠性易重用性、易维护性等特点。2.1.1面向对象程序中的基本概念1对象对象是由数据和容许的操作组成的封装体与客观实体有直接对应关系它不仅能表示具体的事物还能表示抽象的规则、计划或事件。2类具有相同或相似性质的对象的抽象就是类。因此对象的抽象是类类的具体化就是对象也可以说类的实例是对象。类具有属性它是对象的状态的抽象用数据结构来描述类的属性。类具有操作它是对象的行为的抽象用操作名和实现该操作的方法来描述。3消息和方法对象之间进行通信的结构叫做消息。在对象的操作中当一个消息发送给某个对象时消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加以说明参数可以是认识该消息的对象所知道的变量名或者是所有对象都知道的全局变量名。类中操作的实现过程叫做方法一个方法有方法名、参数、方法体。2.1.2面向对象的三大特征1封装性封装机制将数据和代码捆绑到一起避免了外界的干扰和不确定性。它允许创建对象简单的说一个对象就是一个封装了数据和操作这些数据的代码的逻辑实体。在一个对象内部某些代码和或某些数据可以是私有的不能被外界访问。通过这种方式对象对内部数据提供了不同级别的保护以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分。2继承性继承性是子类自动共享父类数据结构和方法的机制这是类之间的一种关系。在定义和实现一个类的时候可以在一个己经存在的类的基础之上来进行把这个己经存在的类所定义的内容作为自己的内容并加入若干新的内容。3多态性多态性使指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象收到同一消息可以产生不同的结果这种现象称为多态性。2.2面向对象的Visual Basic6.02.2.1VB语言概述VB是基于对象的可视化程序开发工具它的优点在于能够快捷、简易地建立Windows应用程序。所谓“可视化”就是支持该语言的IDE ( IntegratedDevelopment Environment即集成开发环境通俗点说就是编程工具)所提供的功能无须编程仅通过直观的操作方式即可完成界面的设计工作。可视化编程语言的特点主要表现在两个方面:一是基于面向对象的思想引入了控件的概念和事件驱动;二是程序开发过程一般遵循以下步骤即先进行界面的绘制工作再基于事件编写程序代码以响应鼠标、键盘的各种动作[12]。虽然IDE为我们提供了便捷的开发环境但VB是一个基于对象的开发工具而不同于传统的基于过程的编程工具所以我们必须明确以下几个概念。1对象:是指可以被当作一个单元的代码和数据的组合它可以是程序中的窗体或控件也可以是整个程序。2属性:就是对象具有的性质以表明对象的状态。3事件:是指发生在对象上的事情。Windows应用程序属于“事件驱动”模式即只有当事件发生时程序才会运行。4方法:对象本身包含的函数和过程。5过程:指事件发生时要执行的代码。6面向对象编程(OOP ):以对象为核心支持对象的封装机制、多态机制和继承机制。7事件驱动模式:通过事件的发生来触发不同过程中的代码以推动程序的进程。基于事件编程是通过VB创建软件系统时的最主要手段之一。2.2.2可视化设计基本控件1命令按钮控件(Command)命令按钮控件可以开始、中断或者结束一个进程。本文系统利用命令按钮控件设计了主轴修调、快速修调、进给修调、循环启动和进给保持等功能键的命令控制。2标签控件(Label)标签控件是VB中最简单的控件用于显示文本说明信息。本文系统中多处采用标签控件显示系统信息如“加工方式”、“机床实际坐标”、“辅助机能”等文字的显示。3文本框控件(TextBox)文本框控件用于显示设计时输入的或运行时在代码中赋予的控件信息。本文系统中坐标值、主轴转速、进给速度、辅助机能、运行程序段、报警信息等内容的显示都是用该控件完成的毛坯尺寸、MDI方式下运行的程序段也是利用该控件输入的。4图片框控件(PictureBox)图片框控件是用来显示图形的但同时它又可以作为其它控件的容器。可以在图片框中显示的图片文件有:位图、图标、图元文件、增强型图元文件、JPEG或GIF文件。本文系统利用图片框控件可以容纳其它控件的特点设计了仿真图形显示区、刀具类型展示区、MDI运行界面、坐标系G54的参数设置界面、刀偏表界面和刀补表界面。5图像控件(Image )图像控件是用来显示图形的在使用上和图片框类似但是使用的系统资源要比图片框控件少而且重新绘图的速度快。图像控件不能用做容器。本文系统利用图像控件在仿真图形显示区中载入了四个工位的刀架图片。6定时器控件(Timer)定时器是一个响应时间的控件。它们独立于用户编程后可用来在一定的时间间隔中周期性地执行某项操作。在本文系统中比如显示系统时间、刀具沿各坐标轴移动、卡盘转动、自动加工数控程序等各项操作都是命令给定后独立于用户周期性地执行的操作都是由定时器控件完成的。2.2.3可视化设计高级控件1公共对话框控件(CommonDialog)公共对话框控件是一种ActiveX控件(VB内部控件集合的扩充)是外部控件能够提供一组标准的Windows常规操作对话框例如打开文件对话框、保存文件对话框等。在本文系统中自动加工时选择的“磁盘程序”及程序编辑中选择的“磁盘程序”、文件管理中的“新建文件”子菜单就使用了公共对话框控件。2RichTextBox控件RichTextBox控件也是外部控件和标准文本框相似但具有更广泛的用途。它没有64K字符容量的限制并具有对文本指定格式的功能。本文系统利用RichTextBox控件实现了显示加工程序、编辑加工程序和显示帮助文件的功能。3数控车削加工及NC代码的处理3.1数控车床加工工件的成形原理数控车床加工过程是典型的回转体成形过程。工件绕主轴作旋转运动刀架沿车床纵向导轨和横向导轨作直线运动形成刀具的运动轨迹从而在工件上加工出要求的回转面。数控程序控制刀架的运动轨迹实现零件的各种表面加工。在仿真加工过程中车刀刀尖的Z坐标同工件被加工回转表面所处Z坐标(回转体轴线)相对应刀尖所处的X坐标取绝对值就是被加工工件在该处的半径值。仿真程序通过将数控程序中的加工信息翻译并进行插补运算得到加工过程任意时刻的X, Z坐标信息利用它们改变工件上对应点的显示坐标位置就可实现动态变化的加工过程即实现了动态加工过程的仿真。3.2程序设计的任务由于本课题是对数控加工教学仿真系统进行研究在此基础上提出了基于Visual Basic语言环境的总体设计思路一一“界面总体设计功能单独实现”的模块化设计方案分析了设计步骤给出了功能的扩充方法。数控加工教学仿真系统的设计目标是要设计出与机床数控系统操作面板完全相同的交互界面并实现界面上所有按钮的功能以及由此引起的显示状态画面的变化及切换。整个设计过程涉及多达几十个窗口的切换及其上各种控件的状态变化还有面板上数十个按钮功能代码的编写。为了使设计能有条不紊地进行采用“界面总体设计功能单独实现”的模块化设计方案。先按照操作面板上所有按键及显示屏显示的所有状态以及每个显示状态下控件的变化或变化规律设计出交互界面并同时完成实现不同窗体间转换这部分基本代码的编写从而构造出教学仿真系统的基本框架。然后针对不同类型功能按钮分别编写代码。代码完成后以独立模块的形式依次添加进教学仿真系统框架中对应功能按钮的位置同时进行协调性的测试和调试直至这部分功能稳定运行。随着功能代码的不断加入教学仿真系统功能不断扩充直到全部功能得以实现。3.3车削仿真系统的设计3.3.1车削加工仿真的任务车削加工仿真要完成以下几项任务:毛坯数据模型的建立、刀具库的建立、刀尖轨迹数据结构的建立、工件截面数据结构的建立、仿真数据的记录、切削加工仿真和仿真结果检查。刀具是系统的另一个重要组成部分它是仿真系统的后勤保障。刀具容纳大量的刀具数据并且做到有效的管理。车刀对零件的加工主要设计到圆柱面、圆锥面、球面、螺纹、端面、切槽、切断等表面的加工。无论加工什么样的零件一律是工件做回转运动;而刀具做直线、圆弧或其它轨迹的运动(即进给运动)。在数控加工程序中这些运动可以通过GO1, G02, G03等指令完成。由于该仿真系统是对NC程序在PC机中的模拟在仿真中为了能够在PC机屏幕上动态显示刀具的运动轨迹或切削过程就必须将数控程序指令翻译过来。完成对NC程序进行语法分析坐标转换等工作其过程如下1对数控程序进行处理使之成为一个NC坐标信息文件。该文件是对NC程序进行语法分析与坐标变换的结果。数控程序由GAPT自动编程系统自动产生或手工编程由人工键盘输入。2首先从NC代码文件中读取刀具信息并从刀库文件中读取相应的刀具信息。然后从NC代码文件中读取刀具运动指令及坐标信息并调用相应的加工仿真算法使之可以完成对刀具的运动轨迹仿真、切削加工仿真。3对仿真进行干涉检验生成检验报告供分析。4数控插补原理和模拟仿真加工4.1插补仿真系统的设计NC代码通过编译后将编译成功的NC代码文件存储在数据库中。然后系统根据计算出刀具直线行走的起点及终点坐标、刀具圆弧行走的起点、终点及圆心坐标并将机器坐标换算成屏幕坐标存为文件这个文件就成为后面切削仿真的依据。插补一般是指己知曲线上的某些数据按照某种算法计算已知点之间的中间点的方法也称为“数据点的密化”。插补是数控技术的重要组成内容在数控系统中插补过程是根据曲线段已知的几何数据以及相应工艺数据中的速度信息计算出曲线起、终点之间的一系列中间点分别向各个坐标轴发出方向、大小和速度都确定的协调的运动序列命令通过各个轴运动的合成产生数控加工程序要求的工件轮廓的刀具运动轨迹。插补方法主要分为基准脉冲插补方法(或者脉冲增量插补方法)和数据采样插补方法两大类逐点比较法和数字积分法均属于脉冲增量插补方法。脉冲增量插补方法的特点是每次插补结束数控装置向每个运动坐标输出基准脉冲序列[9]。本系统主要是针对数控技术的教学进行设计因此系统只对逐点比较法这种数控插补方法设计插补对象以直线和圆弧为主;逐点比较法的基本思路是每走一步都要将加工点瞬间坐标与规定的图形轨迹相比较判断其偏差然决定下一步的走向。逐点比较法运算直观插补误差大不超过一个脉冲当量而且输出脉冲均匀在两坐数控系统应用较为普遍。系统可以实现不同象限以及过象限情况下直线或者圆弧的逐点比较插补给定直线的起点和圆弧的圆心可以是非坐标原点;系统可以实现不同插补方法和不同精度下的单步和连续插补仿真计算还可以实现针对同一对象的同步插补计算和插补轨迹仿真。另外在插补计算过程中还可以对坐标进行动态显示。系统以Visual Basic语言进行设计系统主要包括参数输入、坐标平移、过象限判断、插补类型判断和插补计算及仿真等主要模块如图4-1所示为系统流程图。1参数输入用于输入直线或者圆弧的有关参数如直线的起点及终点坐标圆弧的起点、终点、圆心或者半径等数据另外还有插补方向(如逆圆或者顺圆插补)、插补方式(如手动插补或者连续插补)、插补方法(逐点比较法或者数字积分法)、插补精度、插补时间间隔(即对插补仿真的速度进行设置)等参数。由于本系统中圆弧的圆心不一定在坐标原点因此在给出圆弧的起点、终点、圆心或者半径等数据后还需要给出圆弧为优弧或者劣弧的判断从而唯一确定需要进行插补计算的圆弧对象。2坐标平移一般的数控插补计算中直线的起点或者圆弧的圆心均在坐标原点为了使所设计的系统具有一定的通用性本系统中直线的起点和圆弧的圆心是任意给定的并非一定与坐标原点重合因此为了方便计算本系统采用坐标平移的方法即在判断直线起点和圆弧的圆心为非坐标原点后在插补计算前将坐标原点移到需要进行插补计算的直线的起点或者圆弧的圆心处这也为下一步的插补类型判断和圆弧的过象限判断提供了方便。3过象限判断当插补对象为圆弧时存在过象限问题而不同象限圆弧的插补计算方法也不同因此需要对圆弧进行过象限判断。4插补类型判断无论插补对象是直线还是圆弧不同象限的插补对象存在不同的插补计算方法直线存在四个象限的不同插补情况而圆弧存在四个象限A种不同插补情况。在系统中将直线或者圆弧的不同插补计算方法设置为不同的子模块对插补类型进行判断后直接调用相应的插辛卜子模块进行计算。5插补计算及仿真该模块除完成相应的插补计算外还完成对插补轨迹的仿真显示。图4-1 直线和圆弧插补仿真流程图4.4零件加工过程干涉碰撞检查对于数控车削而言零件表面轮廓形状复杂尤其在零件表面曲率变化较大刀具在切削运动时如果刀具参数选择不当可能会产生刀具和己加工过的表面发生干涉和碰撞。在实际加工中干涉段轮廓的计算和检测对于设计人员进行刀具轨迹调整具有重要的参考价值。同时具体加工环境的限制也是实际加工中进行数控代码有效性检验所要考虑的因素。4.4.1干涉检查算法干涉碰撞检查算法是在任意加工时刻将切削刀具包围轮廓和静止件(机床和夹具等)作布尔运算如有相交情况则说明该加工工步位置有碰撞情况发生需修改加工指令。干涉与碰撞检查方法是在插值点将刀具的主偏角和副偏角分别与纵向和横向的合成进给角进行比较。对于圆弧段轮廓则与该插值点在圆弧轮廓的切线的倾角进行比较并区分顺圆和逆圆两种情况。以右偏刀切外轮廓为例其对于直线和圆弧的干涉检查如图4-2所示。图4-2加工过程刀具的干涉碰撞检查示意图4.4.2干涉检查流程零件加工过程干涉碰撞检查是刀具在切削加工过程中刀具与已加工过的表面或待加工的表面间的干涉与碰撞检查其具体检查算法流程如图4-3所示。解释程序从NC坐标信息文件中顺序读取加工指令如为直线加工指令则进行直线插补运算如为圆弧加工指令则进行圆弧插补运算并在插补点求圆弧的切线然后在各插补点进厅角度比较。图4-3 干涉检查算法流程