- 1、本文档共29页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE \* MERGEFORMAT
PAGE \* MERGEFORMAT 26
《机床数控技术及应用》
课程设计说明书
时间:2011年12月15日
目录
一 .课程设计要求 ………………………………………………………………………… 2
二 .编程语言 ……………………………………………………………………………… 2
三 .插补界面说明 ………………………………………………………………………… 2
四 .逐点比较法直线插补流程图及算法 ……………………………………………… 2
DDA法圆弧插补插补流程图及算法 ……………………………………………… 7
其他程序说明 ………………………………………………………………………… 15
心得体会 ……………………………………………………………………………… 16
附录 ………………………………………………………………………………………… 17
一 .课程设计要求
直线插补要求:用逐点比较法插补第4象限的直线;
圆弧插补要求:用DDA法插补1-4象限的顺圆弧;
界面设计要求:具有数据输入框,具有插补过程动态显示功能,插补步长可调。
二 .编程语言
Visual C++
三 .插补界面说明
插补界面具有逐点比较法插补直线数据输入区,DDA法插补1-4象限顺圆弧的数据输入区,两者公用的步长输入区,图形显示区域,四个按钮实现插补过程的单步、连续显示、图形的清除,
插补界面的退出,以及必要的文字说明。
界面设计所用到的控件有:1个图像控件,用来显示输出图形;13个编辑框,用来输入插补直线与圆弧所必要的数据;2个单选框,用来选择直线插补和圆弧插补;4个按钮,用来控制插补、清除、退出界面;若干个静态文本,进行相应地文字说明。
各控件名称及对应的关联变量名称:
按钮控件1, IDC_BUTTON1, m_danbu ,实现单步插补功能按钮;
按钮控件2, IDC_BUTTON2, m_qingchu ,实现清除功能按钮;
按钮控件3, IDC_BUTTON3, m_lianxu ,实现连续插补功能按钮;
按钮控件4, IDC_BUTTON4, m_tuichu ,实现退出界面功能按钮;
单选框控件1,IDC_RADIO1, m_line,其属性选择GROUP ,选择直线插补;
单选框控件2,IDC_RADIO2 ,选择圆弧插补;
编辑框控件1, IDC_EDIT1, m_alx ,输入直线起点横坐标;
编辑框控件2, IDC_EDIT2, m_aly ,输入直线起点纵坐标;
编辑框控件3, IDC_EDIT3, m_blx ,输入直线终点横坐标;
编辑框控件4, IDC_EDIT4, m_bly ,输入直线终点纵坐标;
编辑框控件5, IDC_EDIT5, m_aax ,输入圆弧起点横坐标;
编辑框控件6, IDC_EDIT6, m_aay ,输入圆弧起点纵坐标;
编辑框控件7, IDC_EDIT7, m_bax ,输入圆弧终点横坐标;
编辑框控件8, IDC_EDIT8, m_bay ,输入圆弧终点纵坐标;
编辑框控件9, IDC_EDIT9, m_ox ,输入圆心横坐标;
编辑框控件10, IDC_EDIT10, m_oy ,输入圆心纵坐标;
编辑框控件11, IDC_EDIT11, m_r ,输入圆弧半径值;
编辑框控件12, IDC_EDIT12, m_n ,输入累加器位数;
编辑框控件13, IDC_EDIT13, m_bc ,输入插补步长;
图形控件:IDC_PRINTAREA,实现图形输出功能;
若干静态文本控件,IDC_STATIC,作为相关文字说明。
四 .逐点比较法直线插补流程图及算法
偏差判别公式的推导
设直线的起点坐标为(x1,y1),终点坐标为(x2,y2),直线上的任意一个动点为(x,y),插补的
步长为b,则偏差判别函数
F=(x2-x1)*y-(y2-y1)*x
对位于第四象限的直线,有:
当F=0时,向+x方向进给一个脉冲当量,此时x(i+1)=xi+b,则有
F(i+1)=Fi-(y2-y1)*b
当F 0时,向-y方向进给一个脉冲当量,此时y(j+1)=yj-b,则有
F(j+1)=Fj+(x2-x1)*b
终点判别器E用来判别脉冲次数,每进给一次E 减1,直到其值为0时插补过程结束,E 值由下面公式所得:
E=((x2-x1)+(y1-y2))/ b
YY
Y
Y
E=0
输入x1,y1,x2,y2,b
开始
F=0
初始化:E=(x2-x1)+(y1-y2),F=0,x=x1,y=y
文档评论(0)