数控课程设计..
数控加工技术课程设计

数控加工技术课程设计一、课程目标知识目标:1. 让学生掌握数控加工技术的基本概念、分类及加工原理;2. 让学生了解数控编程的基本方法,熟悉数控机床的操作流程;3. 使学生掌握数控加工工艺参数的选取原则,了解影响加工质量的各类因素;4. 引导学生了解数控加工技术在现代制造业中的应用及其发展趋势。
技能目标:1. 培养学生能够运用数控编程软件进行简单零件的编程与加工操作;2. 培养学生能够根据图纸要求,合理选择加工工艺参数,提高加工效率;3. 培养学生具备分析和解决数控加工过程中出现问题的能力;4. 培养学生具备团队协作和沟通交流的能力,为将来从事相关工作打下基础。
情感态度价值观目标:1. 培养学生对数控加工技术产生兴趣,激发学生自主学习、探究的精神;2. 培养学生尊重劳动、热爱劳动,认识到数控加工技术对国家制造业发展的重要性;3. 培养学生具有安全意识、质量意识,养成良好的职业素养;4. 引导学生关注数控加工技术领域的发展动态,树立科技创新的观念。
本课程针对中职或高职学生特点,注重理论联系实际,充分调动学生的积极性与动手能力。
在教学过程中,注重培养学生的实际操作技能和解决问题的能力,使学生在掌握专业知识的同时,形成正确的价值观和职业素养。
通过本课程的学习,为学生将来从事数控加工领域的工作奠定坚实基础。
二、教学内容1. 数控加工技术概述- 数控机床的基本组成与分类- 数控加工的基本原理与特点- 数控加工技术在现代制造业中的应用2. 数控编程与操作- 数控编程的基本方法与步骤- 数控机床的操作流程与安全规程- 数控编程软件的应用与实践3. 数控加工工艺- 数控加工工艺参数的选取原则- 影响加工质量的各类因素分析- 加工过程中的常见问题与解决方案4. 数控加工实训- 简单零件的数控编程与加工操作- 数控机床的日常维护与故障排除- 车间实际案例分析与讨论5. 数控加工技术发展趋势- 国内外数控加工技术的发展动态- 数控加工技术的创新与展望- 智能制造与数控加工技术的融合教学内容依据课程目标,遵循科学性和系统性原则进行组织。
数控设计课程设计

数控设计课程设计一、教学目标本课程旨在通过学习数控设计的基本概念、原理和方法,使学生掌握数控编程、数控加工和数控设备等方面的知识,培养学生运用数控技术解决实际问题的能力。
具体的教学目标如下:1.了解数控技术的基本概念、发展历程和应用领域;2.掌握数控编程的基本原理和方法;3.熟悉数控加工的过程和参数设置;4.掌握数控设备的工作原理和维护方法。
5.能够使用数控编程软件进行程序编写;6.能够进行数控加工参数的设置和调整;7.能够对数控设备进行日常维护和故障排除。
情感态度价值观目标:1.培养学生对数控技术的兴趣和好奇心,激发学生学习数控技术的热情;2.培养学生团队合作意识和动手实践能力;3.培养学生对新技术的敏感性和适应能力,培养学生的创新精神。
二、教学内容根据课程目标,教学内容主要包括数控技术的基本概念、数控编程、数控加工和数控设备四个方面。
具体的教学大纲如下:1.数控技术的基本概念:数控系统的组成、数控技术的应用领域和发展趋势;2.数控编程:数控编程的基本原理、数控编程软件的使用方法;3.数控加工:数控加工的过程、数控加工参数的设置和调整;4.数控设备:数控设备的工作原理、数控设备的维护和故障排除。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等。
1.讲授法:通过教师的讲解,使学生掌握数控技术的基本概念和原理;2.讨论法:通过小组讨论,培养学生的团队合作意识和解决问题的能力;3.案例分析法:通过分析实际案例,使学生了解数控技术在实际工程中的应用;4.实验法:通过动手实践,使学生掌握数控编程和数控加工的方法。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备以下教学资源:1.教材:选用权威、实用的数控设计教材,作为学生学习的主要参考资料;2.参考书:提供相关的数控技术参考书籍,供学生深入学习;3.多媒体资料:制作精美的教学PPT,提供清晰的数控技术图片和视频资料;4.实验设备:准备数控编程器和数控机床等实验设备,供学生进行实践操作。
数控课程设计稿

数控课程设计稿一、教学目标本课程的教学目标是使学生掌握数控编程的基本原理和方法,能够熟练使用数控机床进行零件加工。
具体分为三个部分:1.知识目标:学生需要了解数控编程的基础知识,包括数控机床的分类、数控编程的步骤和方法、常用的数控指令等。
2.技能目标:学生需要能够使用数控编程软件进行编程,并能够独立操作数控机床进行零件加工。
3.情感态度价值观目标:通过本课程的学习,使学生认识到数控技术在现代制造业中的重要性,增强学生对数控技术的兴趣和热情。
二、教学内容本课程的教学内容主要包括数控编程的基本原理、数控机床的分类和结构、数控编程软件的使用、数控机床的操作和维护等。
具体安排如下:1.第一章:数控技术概述,介绍数控技术的定义、发展历程和应用领域。
2.第二章:数控机床,介绍数控机床的分类、结构和特点。
3.第三章:数控编程基础,介绍数控编程的步骤、方法和常用指令。
4.第四章:数控编程软件的使用,介绍数控编程软件的功能和操作方法。
5.第五章:数控机床的操作和维护,介绍数控机床的操作步骤和维护方法。
三、教学方法为了提高教学效果,本课程将采用多种教学方法,包括:1.讲授法:用于讲解数控编程的基本原理、方法和常用的数控指令。
2.讨论法:通过小组讨论,让学生深入理解数控技术的应用和实际操作。
3.案例分析法:分析具体的数控编程案例,让学生掌握数控编程的实际应用。
4.实验法:学生在实验室进行数控机床的操作和维护,提高学生的实际操作能力。
四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《数控编程与操作》。
2.参考书:提供相关的数控技术参考书籍,供学生自主学习。
3.多媒体资料:制作数控编程操作的演示视频,帮助学生更好地理解数控技术的实际应用。
4.实验设备:准备数控机床和相关的实验设备,供学生进行实际操作和维护。
五、教学评估为了全面、客观地评估学生的学习成果,本课程将采用以下评估方式:1.平时表现:通过观察学生在课堂上的参与程度、提问回答等情况,评估学生的学习态度和理解程度。
数控课程设计怎么写

数控课程设计怎么写一、教学目标本课程的教学目标是使学生掌握数控技术的基本概念、原理和方法,培养学生运用数控技术解决实际问题的能力。
具体目标如下:1.知识目标:(1)了解数控技术的起源、发展历程和应用领域;(2)掌握数控系统的基本组成、工作原理和功能;(3)熟悉数控编程的基本方法、工艺路线和程序编制;(4)了解数控设备的使用、维护保养和安全操作规程。
2.技能目标:(1)能够运用数控编程知识,编制简单的数控程序;(2)能够操作数控设备,进行零件加工;(3)能够分析数控加工过程中出现的问题,并采取相应措施解决;(4)具备一定的数控技术应用和创新能力。
3.情感态度价值观目标:(1)培养学生对数控技术的兴趣和热爱,树立数控技术应用信心;(2)培养学生团队合作精神,提高沟通与协作能力;(3)培养学生遵守纪律、严谨治学的学术态度;(4)培养学生关注社会、服务人民的责任感。
二、教学内容根据课程目标,教学内容主要包括以下几个方面:1.数控技术的基本概念、原理和方法;2.数控系统的组成、工作原理和功能;3.数控编程的基本方法、工艺路线和程序编制;4.数控设备的使用、维护保养和安全操作规程;5.数控加工实例分析及问题解决方法。
三、教学方法为了实现课程目标,我们将采用以下教学方法:1.讲授法:讲解数控技术的基本概念、原理和方法,使学生掌握相关知识;2.案例分析法:分析数控加工实例,使学生了解数控技术在实际工程中的应用;3.实验法:让学生动手操作数控设备,提高实际操作能力;4.讨论法:分组讨论数控技术相关问题,培养学生的团队协作能力和沟通能力。
四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:选用权威、实用的数控技术教材,为学生提供系统、全面的知识体系;2.参考书:提供相关的数控技术参考书籍,丰富学生的知识储备;3.多媒体资料:制作精美的PPT、教学视频等多媒体资料,提高课堂教学效果;4.实验设备:配置齐全的数控设备,为学生提供实践操作的机会。
数控应用技术的课程设计

数控应用技术的课程设计一、课程目标知识目标:1. 让学生掌握数控机床的基本结构、工作原理及分类,了解数控系统的组成和功能。
2. 使学生掌握数控编程的基本知识,包括编程语言、程序结构及其相关指令。
3. 帮助学生了解数控加工工艺,掌握加工过程中的切削参数、刀具选择和路径规划。
技能目标:1. 培养学生能够独立操作数控机床,完成简单零件的加工。
2. 培养学生具备数控编程能力,能够根据零件图纸编写相应的数控程序。
3. 提高学生运用数控技术解决实际问题的能力,具备一定的创新意识和动手操作能力。
情感态度价值观目标:1. 培养学生热爱专业、热爱劳动,树立正确的职业观念。
2. 培养学生具备团队协作精神,学会与他人共同解决问题。
3. 增强学生的安全意识,养成遵守工艺规程、爱护设备的好习惯。
课程性质:本课程为专业实践课程,以数控技术应用为核心,注重理论与实践相结合。
学生特点:学生具备一定的机械基础知识,但对数控技术了解较少,动手操作能力有待提高。
教学要求:结合学生特点,采用任务驱动、项目教学等方法,引导学生主动探究,注重实践操作能力的培养。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 数控机床概述:包括数控机床的发展、分类及基本结构,重点讲解数控机床的工作原理和性能指标。
(对应教材第一章)2. 数控编程基础:介绍数控编程的相关知识,如编程语言、程序结构、常用指令等,并通过实例进行分析。
(对应教材第二章)3. 数控加工工艺:讲解数控加工过程中的切削参数、刀具选择、路径规划等,分析典型零件的加工工艺。
(对应教材第三章)4. 数控机床操作与编程实践:指导学生进行数控机床的操作和编程实践,包括简单零件的加工,使学生掌握实际操作技能。
(对应教材第四章)5. 数控机床维护与故障排除:介绍数控机床的日常维护、保养及常见故障的排除方法,提高学生的设备维护能力。
(对应教材第五章)教学大纲安排:第一周:数控机床概述第二周:数控编程基础第三周:数控加工工艺第四周:数控机床操作与编程实践第五周:数控机床维护与故障排除教学内容注重科学性和系统性,结合教材章节进行合理安排和进度控制,旨在帮助学生全面掌握数控应用技术。
关于数控铣床的课程设计

关于数控铣床的课程设计一、课程目标知识目标:1. 让学生掌握数控铣床的基本结构、工作原理及操作流程,理解数控铣床编程的相关知识。
2. 使学生了解数控铣床在制造业中的应用,掌握其加工范围及优势。
3. 帮助学生掌握数控铣床操作的安全知识,提高安全意识。
技能目标:1. 培养学生能够熟练操作数控铣床,完成简单零件的加工。
2. 培养学生具备独立编写数控铣床加工程序的能力,提高编程技巧。
3. 提高学生运用数控铣床解决实际问题的能力,培养创新意识和动手能力。
情感态度价值观目标:1. 激发学生对数控铣床及制造业的兴趣,培养认真负责、敬业爱岗的职业态度。
2. 培养学生具备团队协作精神,学会与人沟通交流,提高解决问题的能力。
3. 增强学生的环保意识,培养学生节约资源、保护环境的价值观。
课程性质分析:本课程为专业技术课,以实践操作为主,理论联系实际,注重培养学生的动手能力和创新能力。
学生特点分析:学生为中职或高职学生,具备一定的理论基础,喜欢实践操作,好奇心强,学习积极性较高。
教学要求:结合学生特点和课程性质,采用项目教学法,让学生在实践操作中掌握知识,培养技能,提高情感态度价值观。
通过课程目标的分解,为教学设计和评估提供具体依据。
二、教学内容1. 数控铣床基本结构及工作原理:介绍数控铣床的组成部分、功能及其工作原理,使学生了解数控铣床的基本知识。
教学内容:第一章 数控铣床概述;第一节 数控铣床的结构与功能;第二节 数控铣床的工作原理。
2. 数控铣床编程与操作:学习数控铣床编程的基础知识,掌握编程方法和技巧,学会操作数控铣床进行零件加工。
教学内容:第二章 数控铣床编程与操作;第一节 编程基础知识;第二节 编程方法与技巧;第三节 数控铣床操作流程。
3. 数控铣床加工工艺:学习数控铣床加工工艺,掌握加工过程中的参数设置、切削用量选择等,提高加工质量。
教学内容:第三章 数控铣床加工工艺;第一节 参数设置;第二节 切削用量选择;第三节 加工质量分析。
数控系统课课程设计

数控系统课课程设计一、教学目标本课程旨在让学生了解和掌握数控系统的基本原理、结构及应用,培养学生对数控技术的兴趣和认识,提高学生在实际操作中的技能水平。
知识目标:使学生了解数控系统的基本概念、分类、工作原理及其主要组成部分;掌握数控编程的基本方法和技术要求;了解数控系统在我国的发展现状和应用领域。
技能目标:培养学生具备数控编程的基本能力,能根据加工要求编写合适的数控程序;培养学生具备数控机床的基本操作能力,能熟练进行数控加工操作。
情感态度价值观目标:培养学生对数控技术的兴趣,认识数控技术在现代制造业中的重要地位,提高学生对我国数控产业的支持和信心。
二、教学内容本课程的教学内容主要包括数控系统的基本原理、结构及应用。
具体安排如下:1.数控系统的基本概念、分类及其工作原理;2.数控系统的组成部分及其功能;3.数控编程的基本方法和技术要求;4.数控机床的基本操作;5.数控系统在我国的发展现状和应用领域。
三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式进行教学。
具体方法如下:1.讲授法:通过教师的讲解,使学生了解和掌握数控系统的基本原理、结构和编程方法;2.讨论法:学生进行分组讨论,培养学生对数控技术问题的思考和分析能力;3.案例分析法:通过分析实际案例,使学生了解数控系统在实际应用中的操作方法和技巧;4.实验法:安排学生进行数控机床的实际操作,提高学生的动手能力和实际操作技能。
四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:选用国内权威出版的数控系统教材,为学生提供系统、全面的学习资料;2.参考书:推荐学生阅读相关的数控技术书籍,丰富学生的理论知识;3.多媒体资料:制作课件、视频等多媒体资料,为学生提供直观、生动的学习内容;4.实验设备:准备数控机床、编程软件等实验设备,为学生提供实际操作的机会。
通过以上教学资源的支持,我们将努力提高学生的学习效果,培养学生的数控技术应用能力。
数控自动编程课程设计

数控自动编程课程设计一、教学目标本课程的教学目标是使学生掌握数控自动编程的基本原理和方法,能够使用相关软件进行简单零件的编程和仿真,培养学生动手能力和创新精神,使学生在理论和实践相结合的过程中,加深对数控自动编程技术的理解和应用。
知识目标:了解数控自动编程的基本概念、原理和编程方法;掌握常用的数控编程指令和功能模块;理解数控编程的工艺流程和参数设置。
技能目标:能够使用数控编程软件进行简单零件的编程和仿真;能够分析零件加工工艺,合理选择数控系统的型号和参数;能够编写和调试数控加工程序,解决加工过程中的问题。
情感态度价值观目标:培养学生对数控自动编程技术的兴趣和热情,增强学生的创新意识和团队合作精神;使学生认识到数控自动编程技术在现代制造业中的重要地位,提高学生的社会责任感和使命感。
二、教学内容本课程的教学内容主要包括数控自动编程的基本概念、原理和方法,数控编程软件的使用,以及数控编程工艺和参数设置等方面的知识。
具体包括以下几个方面的内容:1.数控自动编程的基本概念和原理:数控编程的基本概念,数控系统的组成和工作原理,数控编程的工艺流程等。
2.数控编程软件的使用:熟悉数控编程软件的界面和功能,使用软件进行零件编程和仿真。
3.数控编程指令和功能模块:掌握常用的数控编程指令,如G代码、M代码等,以及功能模块的使用。
4.数控编程工艺和参数设置:了解数控加工工艺的基本知识,熟悉数控编程参数的设置方法,如切削速度、进给量、刀具补偿等。
三、教学方法为了实现本课程的教学目标,我们将采用多种教学方法,如讲授法、案例分析法、实验法等。
1.讲授法:通过教师的讲解,使学生掌握数控自动编程的基本概念、原理和编程方法。
2.案例分析法:通过分析实际案例,使学生了解数控编程的工艺流程和参数设置,培养学生解决实际问题的能力。
3.实验法:通过实际操作,使学生熟悉数控编程软件的使用,掌握数控编程的实践技能。
四、教学资源为了保证本课程的教学质量,我们将准备丰富的教学资源,如教材、参考书、多媒体资料、实验设备等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计课程名称数控技术课程设计题目名称_数控中非圆曲线逼近的算法实现学生学院__机电工程学院专业班级机械设计制造及其自动化学号学生姓名指导教师_成绩评定教师签名2012年07 月05 日广东工业大学数控技术课程设计任务书题目名称数控中非圆曲线逼近的算法实现学生学院机电工程学院专业班级机械设计制造及其自动化2009级3班姓名学号一、课程设计的内容用计算机高级编程语言(如VB,VC++等)来实现非圆曲线的逼近,可任选(1)直线逼近(如等间距法、等弦长法、等误差法等)、或(2)圆弧逼近。
要求在满足允许误差的前提下,使得逼近的直线段或圆弧段的数量最少(即最优解),根据加工曲线轮廓自动生成刀具中心轨迹,自动生成加工NC代码。
二、课程设计的要求与数据具体的要求如下:(1)列出一般的直线或圆弧逼近的算法(流程图)。
(2)列出改进的直线或圆弧逼近的算法(流程图)——即优化算法。
比较改进前与改进后的两种算法结果。
(3)针对给定的某一由非圆曲线所构成的平面轮廓,根据指定的走刀方向、起刀点,自动生成CNC代码。
(4)有刀具自动补偿功能,根据给定的补偿量和进给方向自动计算刀具中心轨迹,有过切报警功能。
(5)在屏幕上显示该非圆曲线所构成的平面轮廓。
根据给定的进给速度能模拟加工过程,并在屏幕上留下刀具所走中心轨迹。
非圆曲线选择(根据组员最大最小学号选择,选择方法:若本组学号最小的同学学号为xxxxxxa,学号最大的同学学号为yyyyyyb,取p=a%8+1, q=b%8+1,若q==p,则q=p+1; 则该组选择的非圆曲线组合为第p组和第q组。
注:’%’是取余运算):1:渐开线凸轮;2:双曲线3:椭圆曲线4:正弦线5:星形线6:心脏线7:抛物线8:外摆线三、课程设计应完成的工作每组学生应在规定时间内,独立完成所选题目。
运用VB或其它编程语言,编写计算机软件在WINDOWS实现数控装置的计算机仿真。
要求清楚地分析问题、提出算法、确定人机界面、列出流程图,最后用程序验证,完成软件测试,并且提交程序说明书。
要求用编写计算机软件的方法解决典型非圆曲线的CAM问题。
可以任选用自己熟悉的一种编程语言,要求清楚地分析问题、提出算法、列出流程图,最后用程序验证,并且提交程序说明书。
四、课程设计进程安排五、应收集的资料及主要参考文献1《机床设计手册》第三分册2廖效果.数字控制机床.武汉:华中理工大学出版社.1992.93廖效果.数控技术. 武汉:湖北科学技术出版社.2000.74刘又午.数字控制机床.北京:机械工业出版社5龚浦泉.机床电气控制.重庆:重庆大学出版社6 谭浩强.Basic语言结构化程序设计教程.北京:中国科学技术出版社.19907 杨林,李继良. Visual Basic编程高手.北京:北京大学出版社.20008 一组专用凸轮的计算机辅助设计.机械工程师1998,(4): p58-599 凸轮曲线的快速画法.机械工程师1998,(6): p22-2310 平面凸轮机构CAD系统的研究与开发.机械设计与制造2000,(5):p12-1311 圆柱非圆曲线槽凸轮的数控加工.制造技术与机床2000,(8):p3412 圆柱凸轮的参数化设计及数控加工.精密制造及自动化2001,11: p2813 参数化凸轮轮廓转换及NC代码自动生成.机床与液压2001,6, p29~31发出任务书日期:2012年 5月 28日计划完成日期: 2012年 7月 6 日指导教师签名:基层教学单位责任人签章:主管院长签章:摘要基于Visual Basic 6.0编程软件平台,使用直线逼近算法实现设计模拟椭圆曲线和星形线曲线两种非圆曲线轮廓的加工过程。
根据所编的等间距算法和等误差算法的流程图,初步使用等间距法来实现直线逼近两种非圆曲线的过程,然后使用节点数较少的等误差法来优化直线逼近非圆曲线的过程。
利用Visual Basic 6.0编程语言,根据指定的走刀方向包括顺时针和逆时针,指定的走刀点,实现非圆曲线的模拟加工过程,根据刀具补偿量和进给方向在屏幕上留下刀具所走中心轨迹,根据软件计算出的点坐标能够自动生出CNC代码,并能够保存在电脑里面。
关键词:直线逼近,Visual Basic 6.0,非圆曲线,编程目录1 前言 (1)2 非圆曲线逼近的关键 (1)2.1 算法的选择 (1)2.2 算法实现的关键 (1)3 非圆曲线逼近的算法实现 (1)3.1 算法的流程图 (1)3.2 算法的解析 (4)4 软件开发与运行 (7)4.1 系统界面 (7)4.2 软件运行 (8)4.3 运行分析 (9)5 总结 (9)参考文献 (11)附录 (12)1 前言数控机床是一种依靠数字化的信息来实现自动控制的高度自动化机床,它具有高效率、加工精度高和加工质量稳定等优点,这使得数控机床在机械制造业中得到了日益广泛的应用。
当前我国的经济型数控机床,一般只具有直线插补和圆弧插补功能,并不具备抛物线、椭圆等非圆曲线的插补功能。
因此,当我们需要数控加工非圆曲线的轮廓时,就必须用直线或圆弧段去逼近非圆曲线。
对非圆曲线的逼近有直线逼近、圆弧逼近,分别可由G01、G02、G03完成加工,其中直线逼近较为简单,但逼近节点数多,导致数控程序往往过多,而圆弧逼近具有高效性,但计算过于复杂。
直线逼近的方法有等间距直线逼近、等弦长直线逼近和等误差直线逼近,圆弧逼近的方法有曲率圆法、三点圆法和相切圆法。
对于一个已知曲线,它的节点数主要取决于所用逼近线段的形状(直线段还是圆弧段)、曲线方程的特性和允许的逼近误差。
2 非圆曲线逼近的关键2.1 算法的选择对非圆曲线进行逼近,有不同的实现方法,包括直线逼近和圆弧逼近。
方法不同,最终得到的节点数也有所不同,因此选择好的一个算法对提高加工的效率和降低加工成本有着重要的作用。
在这次课程设计中,我们选择的算法是等间距直线逼近,并用等误差直线逼近作为优化算法。
2.2 算法实现的关键算法实现需要求出曲线的节点,而要求曲线的节点得先求出直线段与所逼近的曲线之间的最大逼近误差,而最大逼近误差的计算点就在曲线上某一点的切线斜率与直线段斜率相等的切点处,故关键问题是求出该切点。
一旦求出了该切点,就可以求出逼近时的最大误差,用于与允许误差作比较。
另外,由于此次课程设计是对任意非圆曲线进行逼近,因此求导数也成了一个关键的问题。
3 非圆曲线逼近的算法实现3.1 算法的流程图图1 等间距直线逼近的流程图2 等误差直线逼近的流程图3.2 算法的解析 3.2.1 等间距直线逼近等间距直线逼近是最简单的方法,已知椭圆方程12222=+b y a x ,给定第一点(x(0),y(0)),间距步长Δx =0.1,求出i x ,将i x 代入12222=+b y a x 即可求得一系列i y 。
i x 、i y 即为每个线段的终点坐标,并以该坐标值编制直线程序段(图3)。
图3 等间距直线逼近根据M ( x(0) , y(0) )、N ( x(1) , y(1) )两节点的坐标可求得如图3所示的逼近误差,方法如下:MN 方程:y=kx+c ,则直线MN 的斜率为)0()1()0()1(x x y y k --=(3-1)将M ( x(0) , y(0) )代入MN 方程:y=kx+c ,求得c=y(0)-kx(0) (3-2) 利用椭圆参数方程x=a Cos(i),y=b Sin(i),求出椭圆曲线上的切线斜率为k 的切点坐标(x(2),y(2)),对参数方程进行求导得切点对应的参数弧度为akbj -=arctan (3-3) 从而求出(x(2),y(2))。
联立式(3-1)、(3-2)、(3-3)求出逼近误差为1)0()0()2()2(2+-+-=k kx y y kx w (3-4)如果计算出来的逼近误差w 小于或等于输入的允许误差v ,则满足误差要求,即可进行直线逼近;否则令Δx 为原来的一半,且返回重新计算逼近误差再次比较,直到满足误差要求为止。
等间距直线逼近的流程图如图1所示,星形线的等间距直线逼近算法与椭圆计算方法相同,参考椭圆计算过程即可。
3.2.2 等误差直线逼近等间距直线逼近虽然计算简单,但由于取定值Δx 应保证曲线曲率最大处的逼近误差小于允许值,所以程序可能过多。
因此,在选择优化算法时,我们采用的是等误差直线逼近的节点计算法,而且对于曲率变化较大的曲线,用等误差法求得的节点数最少,从而输出的NC 代码也大大减少,等误差算法计算如下:等误差直线去逼近曲线,就是使所有逼近线段的误差δ相等,如图4。
图4 等误差直线逼近椭圆参数方程为x=a Cos(i),y=b Sin(i),A 点坐标(x(0) , y(0)),T 点坐标(x(1) , y(1)),B 点坐标(x(2) , y(2))。
(1)确定所有逼近线段的误差δ允的圆方程,即以起点A (x(0) , y(0))为圆心,允δ为半径作圆;(2)确定等误差圆与曲线公切线PT 的斜率k :以A 点为起点,利用参数方程x=a Cos(i),y=b Sin(i),增大弧度i 从而使横坐标变大。
从而得到下一个点T 坐标(x(1) , y(1)),弧度i 增大的步长为Δi=0.001*π。
对椭圆方程进行求导,利用T 点坐标求出曲线切线PT 斜率k :)1()1(22y a x b k -= (3-5)PT 直线方程为y=kx+c,代入点T 求得:c=y(1)-kx(1) (3-6) 联立2式(3-5)、(3-6)和点A (x(0) , y(0))求得A 点到直线PT 距离: 1)1()1()0()0(2+-+-=k kx y y kx w (3-7)比较距离w 与等误差圆半径δ是否相等,若相等,则直线PT 为等误差圆与曲线两者的公切线;若w<δ,则返回以上算法令Δi 增大一倍重新计算距离w 直到w=δ;若w >δ,则返回以上算法令Δi 变为原来一半重新计算距离w 直到w=δ。
(3)求B 点坐标(x(2) , y(2))。
使AB 弦的斜率为k ,即使AB 平行PT ,设AB 的方程为y-y(0)=k(x-x(0)),联立式(3-5)公切线PT 的斜率k 和椭圆方程12222=+b y a x 可求得: )(2))0(2)0(2()2(2222222b k a a x k y ka x +∆+--= (3-8)其中)(2))0()0(2)0()0(1)()((4))0(2)0(2(22222222222222222b k a b x ky y x k b a b k a a x k y ka +-+-++--=∆ 进而求出 y(2)=k(x(2)-x(0))+y(0) (3-9) (5)按以上步骤顺次求得其他各节点坐标。