利用软件VB(Visual Basic)来简单实现自动编程设计说明书.pdf
《利用软件VB(Visual Basic)来简单实现自动编程设计说明书.pdf》由会员分享,可在线阅读,更多相关《利用软件VB(Visual Basic)来简单实现自动编程设计说明书.pdf(41页珍藏版)》请在咨信网上搜索。
1、1概述1.1 课程设计的目的数控技术课程设计是机电专业教学活动的一个重要的实践性环节,是对学生 所学数控技术课程和其它有关课程知识和技能的一次综合性练习,旨在使之 巩固、充实、系统化,并得到进一步扩展。课程设计是培养学生理论联系实际、解决生产实际问题的机会。通过对数控铳床典型部件的结构设计和零件编程的具 体问题的解决,使学生对数控技术的原理、设计方法以及用编程方法处理实际问 题的一般步骤和具体技巧得到训练,提高运用所学专业知识分析问题和解决问题 的能力。1.2 设计要求用计算机高级编程语言(如VB,VC+等)来实现:由任意的CAD软件(如 AutoCAD,Pro/E、U G、Solid wor
2、ks等)所生成的二维绘图DXF文件(限定DXF 文件中的几何元素只有直线和圆弧)到CNC代码的自动生成(亦即仿真数控自动 编程系统)。具体的要求如下:(1)从DFX文件中提取几何信息(只提取直线与圆弧的信息);(2)在屏幕上显示所提取得到的二维几何图形。(3)将提取得几何元素的进行排序(由程序来实现);(4)针对指定的走刀方向、起刀点,自动生成数控平面铳削(或数控线切割)的CNC代码。1.3 课程设计的步骤课程设计的步骤大致包括:1)调查研究,收集资料,查阅文献;2)论证及确定设计方案,进行机械结构设计和软件设计,编写程序和编制设 计说明书。3)最后参加数控课程设计的答辩。2提出问题和意义2.
3、1提出问题数控加工是当今机械生产的主要设备,数控机床已经成为组成现代机械制造 生产系统,实现计算机CAD/CAM与生产管理等全部生产过程自动化是现在数控研 究的主要领域,以前数控编程主要是由工程图利用手工完成的。而手工编程工作 量很大,容易出错,为了加快编程进度,提高加工精度,因此开发计算机自动编 程系统,能够自动完成数控加工程序的自动加工,自动编程主要利用计算机完全 程序编制工作,用零件源程序作为编程计算机的输入,用编程程序和后置处理程 序来处理零件源程序,目前世界各国都对自动加工编程非常重视,纷纷加大对其 的投入,先后开发出了许多各具特色自动编程系统。这里提出通过DXF文件进行数控代码的自
4、动编写,并把得到的代码保存到指 定文件中,然后传给数控系统,实现设计加工一体化。DXF文件是一种与图形等价的通用ASCII码格式文件,包含着设计过程的 所有图形非图形信息。这些信息被组织到成块,并通过成对的组码和与组码关联 的组值按照特定的格式进行记录。而在数控系统中是通过读取NC代码控制刀锯 进行零件的加工。NC代码是用特定格式的字符串来贸数加工的刀具路径。因此 两者之间存在着很大的差异。本系统基于解决这些差异进行CAD软件与数控系统的一体化连接,并且尽 量提供友好的人机操作界面和更大范围的提供人机交互操作。系统由以下五大模 块:文件的读取块,屏幕的操作模块,几何信息的预处理模块,NC代码生
5、成模 块,文件保存模块。本次设计主要是介绍利用软件VB(Visual Basic)来简单实现自动编程,并 且能在界面上完成提取坐标、描述图形等相关的一系列工作。2.2意义在当今社会上,数字化、自动化、智能化应用程度是一个国家发展水平的重 要特征之一,而应用CAD/CAM(计算机辅助设计/计算机辅助制造)的能力和水平又 是一个国家自动化程度的标志之一,所以在当今社会对这些高技术追求和竞争都 是非常激烈的,各国、各研究机构和跨国公司都不惜代价的对相关课题进行研究,机床作为一种在机械制造行业非常重要的生产设备,因此对机床也相应的提出了 高效率、高精度和高自动化的要求。本设计我们可以简单的模拟一个由C
6、AD/CAM 图形(仅限于直线和圆弧)经过软件程序描述出原先的图形形状,并且可以直接 生成数控代码,熟练了对软件的利用和加深了对数控自动编程的理解。3关键问题3.1 DXF格式文件信息的提取利用CAD/CAM做出的平面工程图可以保存为DXF格式,在DXF格式里面主要保存 了零件工程图中的曲线段的相关信息,比如直线的开始坐标和终点坐标、圆弧的 圆心坐标、半径、开始角度和终点角度等等。本设计所用的软件是VB,因此可以 利用相关程序把工程图中的这些有关信息直接提取,并且保存在VB软件里面,以 方便后处理。3.2排序用VB软件从CAD/CAM的工程图的DXF格式中提取的有关曲线信息都是混乱排 列的,而
7、在后处理中描述出原先图形和生成CNC代码都是需要按照一定规律排列 的信息,因此要把这些杂乱的信息排好序列,以使得在后处理中实现更多的相关 功能。而要把那么多不相关的混乱的信息排列成过规律的循序都是需要用VB软件 的相关程序来完全的。3.3轨迹和CNC代码生成把排序好的曲线有关点信息利用VB软件的程序直接描述出轨迹,并且能在软 件应用界面上可以输入有关加工信息,比如走刀方向、主轴转速、进给速度等信 息,直接生成CNC代码,其中要保证描述的图形形状和CNC代码的正确性。4、DXF文件的结构特点4.1、DXF文件结构DXF文件有两种格式:ASC码文本格式和二进制格式。前者可以用记事本打开,简单易读,
8、后者存储效率高2。DXF文件最小组成是组(GROU P),一个DXF文件 由多个组组成。每个组在DXF文件中占两行。第一行是组码(GROU P CODE),俣 一个整数;第二行是组值(GROU P VALU E),它的数据类型取决于组码的数值。例 如X坐标的组码为10,Y坐标的组码为20,Z坐标的组码为30。一个DXF文件分为多 个节(SE CTION),每个节均由多个组(GROU P)组成。每个节均由一个组值为字 符串“SE CTION”的0组开始,后跟组值为表示段名的字符串的2组,其后为组成 该节的各个组,最后以组值为字符串“E NDSE C”的0组表示该节结束。所有节都 结束后,在DXF
9、文件的最后是组值为字符串E OF(E ND OF FILE)的0组作为文件的 结束标志。一个完整的DXF文件由以下七个节(SE CTION)组成:A标题(HE ADE R)节:包括与图形相关联的变量的设置,例如图形节最大、最小 X坐标和最大、最小Y坐标($LIM M小,$LIM M AX),点显示模式($PDM ODE),点尺寸(SPDSIZE)等。其中的每一个变量都通过组码9给出变量名,并由其后的组码 提供变量值。B类(CLASSE S)节:类节保存由应用程序定义的类,而该类的实例则出现在块 节(BLOCKS).实体节(E NTITIE S)和对象节(OBJE CTS)中。C表(TABLE)
10、节:包含命名项的定义,存放一系列表。包括线型(LTYPE)表、层(LAYE R)表、文本字样(STYLE)表、视(VIE W)表、用户坐标系统(U SC)表、视窗配制(VPORT)表、尺寸标注式样(DIM STYLE)表、应用标识(APPID)表。D块(BLOCK)节:存放块定义的实体。对图形中每个块引用,在块节中都必需 有一个条目与之对应。E实体(E NTITIE S)节:存放图形实体,其中包括块插入实体。DXF图形文件中 的所有图元(包括点、线、面、插入块,注记文字等实体)都将在E NTITIE S节定 义。F实体(OBJE CTS)节:存储非图形对象。G预览图像(THU M BNAILI
11、M AGE)节:只有当预览图像被保存在DXF文件中时该节 才存在。4.2.DXF文件的读取(1)描述直线段的信息为:AcDbLine1011直线段起点的X值直线段终点的X值2012直线段起点的Y值直线段终点的Y值3013直线段起点的Z值直线段终点的Z值(2)描述圆的信息为AcDbCircle1030圆心的X值圆心的Z值2040圆心的Y值圆的半径R值(3)描述圆弧的信息为AcDbCircle1040圆心的X值圆的半径R值2050圆心的Y值圆弧的起始角3060圆心的Z值圆弧的终止角5算法实现5.1算法原理5.1.1 DXF格式文件信息的提取对于已经把工程图保存为DXF格式的文件,在VB软件中可以用
12、Action属性来显 示“打开”对话框,具体程序为:CommonDialogl.Filter=dxf文件(*.dxf)|*.dxf|文本文件(*.txt)|*.txt|全 部文件(*.*)I*.*CommonDialogl.DialogTitle=打开文件”CommonDialogl.ShowOpen在“打开”对话框中就可以直接输入DXF文件,然后在用变量把所有的DXF文件的 相关信息都保存进去。具体流程图如图3.1所示3.1 DXF信息提取流程图5.1.2排序这是本设计的重点和难点,在前面的程序中已经把DXF文件的相关信息都保 存到了有关的变量中,但是是按照工程图的坐标画图循序来保存的,而画
13、图的时 候相关坐标点是随机的,因此要把这些杂乱无章的坐标点按照一定的规律排序,这样才能自动生成CNC代码。在这设计过程中对坐标排序的方法是判断交换法,如图3.2排序原理图所示:图3.2 排序原理图由图中可知,设本图形共由K+1段线段(仅限于直线和圆弧)组成,先确定 其中一段线段,假设此段为第N段,其始段坐标为(Xn,Yn)终点坐标为(Xn-YnO然后把剩下的K段线段分别与此段线段的终点比较,设第N+i段的始点坐标 为(Xn+i,Yn+i)终点坐标为(Xn+i,Yn+i),若两段的距离d=J(X(+i)Xn +(,5+i)Yn了 0.0001 或者(!二 J(X 5+i)Xn)2+(+i)Y建(
14、o.oooi 则认为这两点是相连的,要相连则要循序的排列,故只要把第N+i段跟第N+1段互 换就可以实现了线段的循序排列,这些判断和互换都在VB软件中应用相关的程序 就可以实现,把这些排序好的线段坐标点按照循序排列保存在变量中就可以了。排序好的图形有关信息就已经把坐标点按照一定循序排好了,由这些有循序 的坐标点可以直接生成CNC代码,先判断线段是曲线还是直线,如果是曲线在判 断走刀方向看在加工中是顺圆还是逆圆,由此确定CNC加工代码用G0LG02或G03,在界面中可以直接输入与加工有关的信息,例如主轴转速S,进给速度F等,直接 把这些有规律的点按照循序输出为CNC即可。有关的流程图可以表示为图
15、3.2排序流程图所示图3.2排序流程图所示5.1.3轨迹和CNC代码生成轨迹生成主要利用VB软件的画图功能,先判断所要生成的那段轨迹是直线还 是圆弧,然后分别画出图形,最后把它们一起连接起来就可以了,所用的程序为:If lore(i)=True ThenPicturel.Line(Linekx(i)*Vai(Text4.Text),Lineky(i)*Vai(Text4.Text)-(Linezx(i)*Vai(Text4.Text),Linezy(i)*Vai(Text4.Text),RGB(255,0,0)E lsePicturel.Circle(yhuox(i)*Vai(Text4.Te
16、xt),yhuoy(i)*Vai(Text4.Text),yhur(i)*Vai(Text4.Text),RGB(255,0,255),yhus(i),yhue(i)E nd If用流程图表示为图3.3所示图3.3轨迹生成流程图5.2算法总流程图全部算法都是相互连接的,各个部分都是相互影响,所有的算法都应该由VB 软件程序来完成,其算法总流程图如图3.3所示。6.1系统界面系统界面如图4T所示图3.3算法总流程图6软件开发 Foral图4T系统界面6.2功能设置导入立件1.单出手乂,可弹出输入对话框,在对话框中选择要模拟自动生成的DXF 文件,确定后可直接在Textl.text中看到导入的DX
17、F文件的原始数据信息。打开文件08查找范围Q):|&DXF图形 4-卮曲 圈我最近的文档 桌面 f dxdxdxdx L Z3.4 件件件件 零零零零 3画画画我公档我的电脑网上邻居文件名:文件类型复):打开Q)|dx戊件(*.dxf)r以只读方式打开国)取消三I图4.2导入文件功能显示坐标2.单击、-1,先在Textl.text中删除原先的DXF文件的原始信息,然后同样在Textl.text中显示提取后的DXF文件的坐标值,同时还能自动统计直线段和 圆弧段数,如图4.3所示。Line(161.2,Line(131.6,Line(363.5,Circle(161.2Circle(425.5Ci
18、rcle(228.9Circle(363.5Circle(228.9Circle(312.5Circle(312.5104.1)(194.4)(273.7)(,104.1),182.6),341.2),273.7),341.2),419.8),419.8)384.5,225.2,425.5,(131.6(384.5(225.2(372.6(290.2(372.6(290.2104.1)263.9)182.6),194.4),104.1),263.9),340.1),419.8),340.1),419.8)R=R=R=R=R=R=R=505U5U5U5USU/n图4.3显示坐标功能3.单击坐标排
19、列,在Textl.text中就能显示出经过排列后的坐标信息。最后输出的信息如图4.4所示。4.O 1234567891.段6 255565292 L4.5.3.2.2.0.&5.3 6826719221 134333222104.1)104.1)182.6)273.7)340.1)419.8)419.8)341.2)263.9),194.4)2 555652926 4.5.3.2.2.0.8.5.L6 8267192231 343332221图4.4坐标排列功能画图单击104.1)182.6)273.7)340.1)419.8)419.8)341.2)263.9)194.4),104.1)在p
20、ricterl中就能模拟出转换成DXF文件前的工程图,在“图形比例”中可以输入不同的值,从而改变图形的大小,点击前、后、左、右移动可移动图形的水平和垂直距离。显示图形如图4.5所示。5、参数选择:选择主轴转速,对刀点进给速度,加工方式等,参数选择界面如图4.6所示:参数设置主轴转速蜉 r/min进给速度怦-r/min生成代蚂方式6绝对坐标编程r相当坐标编程圆弧的编程方式用程C用工、港程选择力补(G41 曰4.6、参数选择6.单击I生成CNC代码可以直接生成图形的CNC代码,其加工参数中有两个可以选择输入,分别是主轴转速和进给速度,其中主轴转速的默认值是1000r/min,进给速度的默认值是10
21、0mm/min,生成CNC代码功能如图4.6所示。%0000NOO1 N002N0U3NOO4 N005N006 N007N008 N009NO1O NOH N012%2 o 1 3 3 3 3 2 2 2 O 的GgGOGOrolGOGOGOGOGOrolGOGOX100 Y1OO Z1O GOO G41 DOI X161.2 Y104.1X384.5 Y104.1FIDO LFX425.5 Y182.6R50.0X363.5 Y273.7LFX372.6 Y340.1R50.0X312.5 Y419.8R50.0X290.2 Y419.8R20.0X228.9 Y341.2R50.0X22
22、5.2 Y263.9R50.0X131.6 Y194.4LFX161.2 Y104.1R50.0G40 X1OO Y1OO Z1O M 02 LFLFLFLFLFLFLFLFSlUULi M03 LF图4.7生成CNC代码功能保存代码7.单击_,可弹出一个保存对话框,在其中选择保存路径后可保存又软件所生成的CNC代码。如下图所示图4.8保存对话框重新开始8.单击-1,会把所排列得到的坐标数据,所画的图形和生成的CNC代码都清除掉,可以重新在输入其他的DXF文件图形。9.单击些一I或者圆,会弹出是否保存提示,如下图所示:图4.9提示对话框6.3运行程序运行后可得到的图形如下4-2所示:国回区 F
23、oral代码显示史:基本帙作 生成CHC代码I保存代码重款开始退由n 参数设置主的速眄而一 r/in进给速度而r/in对刀.电_x iboT ibo生成代码方式痴给对坐标吹c相当生标*周弧的旗程方式佝用咆程r用I、通程逸捍刀补必i二J04LFUUUULF:TlLF2 o ooooo OMO 20。oo.o.o.o.Q lloRSIR5IR5R2IR5IR5IR510 闻F u u z10X1DzDol04k34019194104Yloo 00DCT1T127仔T4T4T3T2i97)|)8)“2S.53.2.2 5251452I0.2Q3842363731 382797 91323232(38
24、 ()(*111111Xaecccccccl2345 nnrrrrrrrLLIL1ClclclaclcIcl第第第第m显示坐标导入文件图4-2系统运行后界面6.4 结果分析本设计程序基本上能解决本课题有关的问题,界面运行起来感觉良好,功能 比较齐全,其基本功能都比较稳定,排列坐标、显示图形、生成CNC代码等都可以直接顺利 完成,不过仍然有些问题没能很好的解决:(1)木设计的DXF文件的输入中只是局限于直线和圆弧,对于非圆曲线还不能 利用本设计程序。(2)在生成CNC代码的时候,可以用的相关参数非常有限,还有很多参数都被 忽略了。(3)还有其他一些小细节的功能没能设计好,界面简单。总之,本设计程
25、序能完成相关的功能要求,但很多功能只是还有很大的局限性,离真正商业应用尚有一段距离。7设计总结通过本次数控的课程设计,使我更加加深了对数控技术的有关知识的了解,特别是对软件VB的应用,在设计过程中遇到了很多的问题,但通过查找书本和请 教别人,基本上都解决了。很多小细节问题还很容易就忽略,但往往是那些小问 题搞得设计进行得异常困难,对VB软件的应用还有很多不熟练,在编程过程中一 直都要对照着教科书的有关内容才行,通过这次课程设计,不仅让我对数控的加 工有了深一步的认识,还使我对VB有新的了解,提高自己的编程水平。课程设计是一种实践,一种考验。它既让我有机会实践一下,让自己有机会 可以把所学到的理
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 利用软件VBVisual Basic来简单实现自动编程设计说明书 利用 软件 VB Visual Basic 简单 实现 自动 编程 设计 说明书
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。