您好,欢迎来到赴品旅游。
搜索
您的当前位置:首页直线插补,圆弧插补

直线插补,圆弧插补

来源:赴品旅游


数控技术第三次作业

题目【1】:第一象限的逆圆插补。

1.取该圆弧的圆心坐标为(0,0),起点坐标为(4,0),终点坐标为(0,4),圆弧半径为4.

2.采用逐点比较法的C程序如

#include void main() {

int n=8,x,y,f,g;

scanf(\"%d,%d\f=x^2+y^2-16; if (f>=0)

g=f-2x+1,x--,n--;

printf(\"%d,%d,%d\\n\else

g=f+2y+1,y++,n--;

printf(\"%d,%d,%d\\n\if (g>=0)

g=g-2x+1,x--,n--;

printf(\"%d,%d,%d\\n\

else

g=g+2y+1,y++,n--;

printf(\"%d,%d,%d\\n\ }

3.程序流程图如下:

开始 否 逆圆? 初始化 是 +Y向进一步 f=f—2X+1 —X向进一步 while (n==0) printf(\"it is over\");

否 暂停 直线插补 有插补? 是 圆弧? 是 f=f+2Y+1 X=X—1 Y=Y+1 取起点,终点,令f=0 Xe—X=0 是 第一象限? 是 是 f>=0? 是 否 逆圆? 是 否 结束 Ye—Y=0 否 否 否

4.程序运行后得到一系列插补点,连接插补点得到插补轨迹如

下图所示:

5.综上,第一象限的逆圆采用逐点插补法的插补过程及其解决算

法如上所述。

题目【2】:第一象限的直线插补

取第一象限的直线方程为Y=X,起点坐标为原点(0,0),终点坐标为(4,4)。

1. 基于MATLAB的插补程序如下: Xe = input('输入终点横坐标 X\\nXe = '); Ye = input('输入终点纵坐标 Y\\nYe = '); h = input('输入步长\\nh = '); Tstep= (abs(Xe)+abs(Ye))/h; Step=0; F=0; Xi=0; Yi=0; x = 0; y = 0;

Xi=Xi+h; x = [x Xi]; y = [y Yi]; end Step=1;

while (StepF=Xe*Yi-Xi*Ye; if (F>=0) Xi=Xi+h; else

Yi=Yi+h; end x = [x Xi]; y = [y Yi]; Step = Step+1; hold on end plot(x,y)

2.MATLAB程序运行得到的插补图形及其轨迹如下图:

综上,用逐点比较法完成了第一象限的逆圆插补和直线插补。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- fupindai.com 版权所有 赣ICP备2024042792号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务