从CAD数据到CNC加工代码数控课程设计说明书Word格式.docx
- 文档编号:13270884
- 上传时间:2022-10-09
- 格式:DOCX
- 页数:62
- 大小:407.74KB
从CAD数据到CNC加工代码数控课程设计说明书Word格式.docx
《从CAD数据到CNC加工代码数控课程设计说明书Word格式.docx》由会员分享,可在线阅读,更多相关《从CAD数据到CNC加工代码数控课程设计说明书Word格式.docx(62页珍藏版)》请在冰豆网上搜索。
1内容提要
据有关资料统计:
用手工编程时,一个零件的编程时刻与其实际加工时刻的平均比例约为30:
1。
而数控机床无法启动进行加工的缘故中,有20%-30%是由于加工程序不能及时编制出来造成的。
由此可见,编程的自动化是现今制造业的一个必然的进展趋势。
所谓的自动编程,确实是利用运算机专用软件来编制数控加工程序,编程人员只需依照零件图样的要求,利用数控语言,由运算机自动地进行数值计算及后置处置,编写出零件加工程序单。
在很多制造领域,尤其在军事工业,航空航天工业,微观制造业等尖端科技领域,由于其产品往往具有科技含量高、结构复杂、精度高等特点,给手工编程造成了专门大难度,乃至无法完成。
为了缩短编程时刻,减少人为失误,编程后方便加工前的加工模拟,愈来愈多的常规制造领域业慢慢采纳自动编程。
因此,制造业界投入了愈来愈多的资源来进行自动编程技术的研究开发,使其迅速的进展成熟起来。
本次课程设计的目的确实是设计一个能够将AutoCAD等运算机辅助设计软件画出的DXF图形文件中的相关信息提掏出,通过编程转换成咱们所需要的加工图形,并生成数控代码,实现自动编程目的软件。
2前期预备
编程软件的选择
VisualBasic(VB)和VisualC++(VC)尽管都是可视化的高级编程语言,可是编写相同程序时,VC的工作量一样要比VB高上很多,而且VC适用于大型的,复杂的,商用的程序,其学习难度也远高与VB。
VB是一种可视化的、面向对象和采纳事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。
它简单、效率高,且功能壮大。
故选用用VisualBasic作为本次课程设计的编程软件。
DXF文件的结构
1、DXF文件简介
DXF是DrawingExchangeFormat的缩写,是Autodesk公司开发的用于AutoCAD与其它软件之间进行CAD数据互换的CAD数据文件格式。
其扩展名是“.dxf”,是一种基于矢量的ASCII格式,在表现图形的大小方面十分精准,由于它结构简单、可读性好,易于被其他程序处置,因此已是事实上的工业标准。
目前,绝大多数CAD系统都能读入或输出DXF文件。
2、DXF文件的组成
一个完整的DXF文件由六大段组成,别离是:
题目段(HEADERSection)
类段(CLASSEDSection)
表段(TABLESSection)
块段(BLOCKSSection)
实体段(ENTITLESSection)
对象段(OBJECTSSection)
还有起始段和段终止标记和文件终止标记。
一样情形下,段的前后顺序不能改变。
六大段中与几何图形有关的几何信息均包括在实体段中,实体段中的实体有:
点,直线,圆,圆弧,折线,B样条曲线,文本等。
而咱们只需要用到直线和圆弧。
不同实体在DXF文件中的记录要素不同,例如一条直线的几何信息是直线的起点和终点坐标。
通过度析DXF的文件结构和自动编程所需的信息,只把握ENTITLES段就大体能够知足画图和提取几何图形大体信息的要求。
3、实体段(ENTITLESSection)
该段概念了每一个实体的种类,所在的图层名,颜色,线形,厚度,实体描述字及有关几何数据,如直线(起点、终点),圆(层、圆心、半径),圆弧(圆心、角度、起始坐标、终点坐标)。
不管DXF中的哪个段均由假设干个组(Group)组成,每一个组单元占两行,第一行为组码(GroupCodes),为整形的代码,代表着改组组值的性质,第二行为组值(GroupValue),为具体的数值和代码,二者相结合标识出具体组值代表的意义。
表1至表3是DXF直线、圆、圆弧组码的功能说明
表一:
DXF中直线组码的说明
组码
说明
100
子类标记(AcDbLine)
6
线形(可选)
10
起点(在OCS中)DXF:
X的值
20,30
DXF中Y,Z起点(在OCS中)的值
11
端点(OWCS中)DXF:
21,31
DXF中Y,Z端点(在OCS中)的值
表二:
DXF中圆的组码的说明
说明
子类标记(AcDbCircle)
中心点(在OCS中)DXF:
DXF中Y,Z中心点(在OCS中)的值
40
半径
210
拉伸方向。
默认值(0,0,1),DXF:
X值
220,230
Y,Z的拉伸方向
表三:
DXF中圆弧组码的说明
子类标记(AcDbArc)
50
起始角度
51
终点角度
由表可知,AcDbArc嵌套在AcDbCircl中,而且圆心、半径的组码与圆的都相同。
可是圆与圆弧的提取并非会混淆,因为在ENTITLES段中每一个实体概念的入口处组码0的组值标示实在体类型,圆在入口处组码的组值是CIRCLE,而圆弧是ARC,由此可区分提取。
DXF文件中的组码50,51给出的是圆弧起点与终点角度,而关于运动操纵信息而言,需要的是圆弧起点与终点的坐标值。
依照下式,将取得的是圆弧的所在座标系下的两个端点的坐标值。
设圆心坐标为
,半径为
,起始角为
,终止角为
,那么可取得圆弧在所在座标系下的起点坐标
与圆弧的终点坐标
:
三、数控系统软件设计进程
数控系统软件的设计是本次课程设计的要紧内容与核心部件,通过VisualBasic的编程功能,咱们从DXF文件中提掏出所需的组码,并利用这些组码显示图形,生成数控代码。
咱们还考虑了刀补,加工方向和起刀点的选择。
为了方便利用者操作,咱们把这些功能通过人性化的界面表达,用户只用进行一些简单的操作,即可实现自动编程的功能。
为了能够清楚显示图像,界面包括原始状态、最大化两种情形。
图1虚线框内是整个软件的功能的设计流程。
其中,我和另外两名同窗需要做的是从读入DXF文件,提取圆弧和直线信息并排序,最后显示图形(1-4步)。
而我又在其中负责显示图形(第4步)工作。
图1数控系统软件设计的流程图
读入DXF文件
利用VB中的通用对话框控件,能够打开所需的DXF源文件,并按行读取文件中的数据内容,具体程序如下:
PrivateSubopenfile_Click()
CallopenDXFfile_Click
EndSub
PrivateSubopenDXFfile_Click()'
打开文件
TDXF="
"
="
'
filename=
OnErrorGoTocancleopen
j=0
OpenfilenameForInputAs#1'
按行读取打开的文件顺序读取数据的内容
DoWhileNotEOF
(1)
LineInput#1,saveDXF
IfsaveDXF="
AcDbCircle"
OrsaveDXF="
AcDbLine"
Then
j=j+1
EndIf
TDXF=TDXF&
saveDXF&
"
~"
保留文件信息
Loop
k=j
ReDimDXFline(1Tok),DXFcircle(1Tok),TEMPline(1Tok),TEMPcircle(1Tok),Common(1Tok),D(1Tok),TempCommon(1Tok),Taxis(1Tok)
Close#1
此程序可由openDXFfile子程序打开DXF文件并找出实体段中圆弧与直线的组码,并计数。
提取相关圆弧和直线的信息
由于适才程序中,在圆弧和直线组码开始处追加了“~”,方便了下面提取每段圆弧与直线信息的程序查找所需内容。
strStart1=InStr(1,TDXF,"
&
)'
提取直线标志所在行
strStart2=InStr(1,TDXF,"
)'
提取圆弧标志所在行
IfstrStart1>
strStart2AndstrStart2<
>
0Then
strStart=strStart2
ElseIfstrStart1<
strStart=strStart1
Else
strEnd=InStr(strStart,TDXF,"
ENDSEC"
提取直线和圆弧终点的几何信息
temp=Mid(TDXF,strStart,strEnd-strStart)'
提取直线和圆弧的几何信息
sourse=Split(temp,"
)
startPos=-1
j=0
DoWhilestartPos<
-2'
startPos=getStart(startPos)
IfstartPos=-2ThenExitDo
Ifsourse(startPos)="
DXFline(j).SX=0
DXFline(j).SY=0
DXFline(j).EX=0
DXFline(j).EY=0
DXFline(j).SX=sourse(startPos+2)'
拾取起点的X坐标
DXFline(j).SY=sourse(startPos+4)'
拾取起点的Y坐标
DXFline(j).EX=sourse(startPos+8)'
拾取终点的X坐标
DXFline(j).EY=sourse(startPos+10
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CAD 数据 CNC 加工 代码 数控 课程设计 说明书