插补算法——圆弧插补

上传人:ali****an 文档编号:120421431 上传时间:2020-02-06 格式:PDF 页数:18 大小:344.04KB
返回 下载 相关 举报
插补算法——圆弧插补_第1页
第1页 / 共18页
插补算法——圆弧插补_第2页
第2页 / 共18页
插补算法——圆弧插补_第3页
第3页 / 共18页
插补算法——圆弧插补_第4页
第4页 / 共18页
插补算法——圆弧插补_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《插补算法——圆弧插补》由会员分享,可在线阅读,更多相关《插补算法——圆弧插补(18页珍藏版)》请在金锄头文库上搜索。

1、17 6 16 上午10 16 H Matlab Do demo m 第 1 页 共 1 页 初始化 clear clc close all warning off feature jit off 主程序 R代表所插补的圆的半径 R 10 ThetaAround代表所要插补的角度范围 ThetaAround 135 90 90 0 0 45 Use SN代表所在控制的插补方向 Use S表示进行顺向插补 Use N表示进行逆向插补 Use SN Use S 通过OCT MControl函数进行插补并返回插补信息 Data是切削刀头的移动坐标数据 MovePosition是切削刀头的移动方向信息

2、 Data MovePosition OCT MControl ThetaAround R Use SN 作图 动态演示插补过程 hold on grid on axis equal ezplot strcat x 2 y 2 num2str R 2 R R mycomet Data X Data Y 17 6 16 上午10 19 H OCT MControl m 第 1 页 共 1 页 function Data MovePosition OCT MControl ThetaAround O R Use SN 插补过程的总控制函数 对于跨过几个象限的圆弧 程序可以分段对其每个象限圆弧进行插

3、补 Data X Data Y Data Fm 确定插补段数 for n 1 size ThetaAround 1 将半径及角度信息转换为插补的起始与终止点坐标 Position X FirstPosition O R cosd ThetaAround n 1 Position Y FirstPosition O R sind ThetaAround n 1 Position X EndPosition O R cosd ThetaAround n 2 Position Y EndPosition O R sind ThetaAround n 2 对每一象限的圆弧进行单独插补并返回数据 Tmp

4、Data n 1 OCT GetData OCT Function Position Use SN 记录移动方向信息 MovePosition n 1 TmpData n 1 MovePosition 记录坐标及误差等数据信息 Data X Data X TmpData n 1 X Data Y Data Y TmpData n 1 Y Data Fm Data X TmpData n 1 Fm end 17 6 16 上午10 17 H Matlab mycomet m 第 1 页 共 3 页 function mycomet varargin ax args nargs axescheck

5、 varargin if nargs 3 error message MATLAB narginchk tooManyInputs end if nargs 2 x args 1 y x x 1 length y end if nargs 2 x y deal args end if nargs 3 p 0 10 end if nargs 3 x y p deal args end if isscalar p isreal p p 1 error message MATLAB comet InvalidP end ax newplot ax if ishold ax minx maxx min

6、max x miny maxy minmax y axis ax minx maxx miny maxy end co get ax colororder m length x k round p m if size co 1 3 colors co 1 co 2 co 3 lstyle else colors repmat co 1 3 1 lstyle end head line parent ax color colors 1 marker o linestyle none xdata x 1 ydata y 1 Tag head body matlab graphics animati

7、on AnimatedLine color colors 2 linestyle lstyle Parent ax MaximumNumPoints max 1 k tag body 17 6 16 上午10 17 H Matlab mycomet m 第 2 页 共 3 页 tail matlab graphics animation AnimatedLine color colors 3 linestyle Parent ax MaximumNumPoints 1 m tag tail if length x 0 Message n 1 1 List elseif Position X F

8、irstPosition 0 Message n 1 1 List elseif Position X FirstPosition 0 SR2 TmpData List OCT SetData OCT ForS TmpData 2 2 Message n 1 1 List elseif Position X FirstPosition 0 Message n 1 1 List elseif Position X FirstPosition 0 Message n 1 1 List elseif Position X FirstPosition0 NR2 TmpData List OCT Set

9、Data OCT ForN TmpData 2 2 Message n 1 1 List elseif Position X FirstPosition 0 TheLastPosition NewXm TheNowPosition Xm TheLastPosition NewYm TheNowPosition Ym 1 TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Ym 1 case 2 TheLastPosition MovePosition X TheLastPosition NewXm TheNowPosition Xm

10、 1 TheLastPosition NewYm TheNowPosition Ym TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Xm 1 case 3 TheLastPosition MovePosition Y TheLastPosition NewXm TheNowPosition Xm TheLastPosition NewYm TheNowPosition Ym 1 TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Ym 1 case 4 TheLas

11、tPosition MovePosition X TheLastPosition NewXm TheNowPosition Xm 1 TheLastPosition NewYm TheNowPosition Ym TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Xm 1 end else switch Quadrant case 1 TheLastPosition MovePosition X TheLastPosition NewXm TheNowPosition Xm 1 TheLastPosition NewYm TheN

12、owPosition Ym TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition 17 6 16 上午10 18 H Matl OCT ForS m 第 2 页 共 2 页 Xm 1 case 2 TheLastPosition MovePosition Y TheLastPosition NewXm TheNowPosition Xm TheLastPosition NewYm TheNowPosition Ym 1 TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Y

13、m 1 case 3 TheLastPosition MovePosition X TheLastPosition NewXm TheNowPosition Xm 1 TheLastPosition NewYm TheNowPosition Ym TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Xm 1 case 4 TheLastPosition MovePosition Y TheLastPosition NewXm TheNowPosition Xm TheLastPosition NewYm TheNowPosition

14、 Ym 1 TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Ym 1 end end end 17 6 16 上午10 18 H Matl OCT ForN m 第 1 页 共 2 页 function TheLastPosition OCT ForN TheNowPosition Quadrant 顺向插补控制函数 就是按书的原理写的 if TheNowPosition Fm 0 switch Quadrant case 1 TheLastPosition MovePosition X TheLastPosition NewX

15、m TheNowPosition Xm 1 TheLastPosition NewYm TheNowPosition Ym TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Xm 1 case 2 TheLastPosition MovePosition Y TheLastPosition NewXm TheNowPosition Xm TheLastPosition NewYm TheNowPosition Ym 1 TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition

16、 Ym 1 case 3 TheLastPosition MovePosition X TheLastPosition NewXm TheNowPosition Xm 1 TheLastPosition NewYm TheNowPosition Ym TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Xm 1 case 4 TheLastPosition MovePosition Y TheLastPosition NewXm TheNowPosition Xm TheLastPosition NewYm TheNowPosition Ym 1 TheLastPosition NewFm TheNowPosition Fm 2 TheNowPosition Ym 1 end else switch Quadrant case 1 TheLastPosition MovePosition Y TheLastPosition NewXm TheNowPosition Xm TheLastPosition NewYm TheNo

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 机械/制造/汽车 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号