首页 > 文章 > 切削技术 > 机床技术应用

数控机床操作教程(四) 第三节 数据采样法插补原理实验

       2023-05-29 来源:互联网热度:48评论:0
    广告
    核心提示:第三节 数据采样法插补原理实验一、实验目的1.掌握数据采样法直线与圆弧插补的基本原理2.了解数据采样法直线插补与圆弧插补的程序编制方法3.加深对数据采样法插补的理解二、实验原理随着数控系统中计算机的引入,插补实时性和计算复杂性之间的矛盾已不再那么突出了。因此,现代

第三节 数据采样法插补原理实验

一、实验目的

1.掌握数据采样法直线与圆弧插补的基本原理

2.了解数据采样法直线插补与圆弧插补的程序编制方法

3.加深对数据采样法插补的理解

二、实验原理

随着数控系统中计算机的引入,插补实时性和计算复杂性之间的矛盾已不再那么突出了。因此,现代数控系统中就采用了结合计算机采样思想的数据采样插补法。

数据采样法实际上是一种粗插补过程,它所产生的微小线段仍然比较大,必须进一步对其密化(即精插补)。粗插补算法较复杂,大多用高级语言编制;精插补算法较简单,多用汇编语言或硬件插补器实现。

粗插补产生微小线段的周期称为插补周期Ts,精插补的周期称为位置控制周期Tc,它是伺服位置环的采样控制周期。对于特定的系统,Ts、Tc是两个固定不变的时间参数,且Ts=nTc,n为自然数。

Ts对系统稳定性没有影响,但对被加工轮廓的轨迹精度有影响,Ts愈大,则产生的微小线段愈长(△L=FTs,F为程编速度),插补计算误差就愈大。而Tc对系统稳定性和被加工轮廓的轨迹精度都有影响。

 可见,为减小插补误差,应尽量减小Ts,但Ts若太小,则CPU可能来不及进行位置计算、显示、监控、I/O处理等CNC任务,Ts必须大于插补运行时间和完成其他相关

数控机床操作教程-(4)轮廓控制原理实验    数控机床操作教程-(4)轮廓控制原理实验

图4-18 第一象限直线  图4-19 第一象限数据采样直线插补软件流程图

任务所需时间之和。目前,Ts一般在10ms左右,如美国AB公司的7360CNC系统,Ts=10.24ms;德国SIEMENS公司的System-7CNC系统,Ts=8ms。随着计算机速度的提高,Ts有减小的趋势。

Tc选择一般有两种情况:Tc=Ts(7360CNC系统),Tc=0.5Ts(System-7CNC系统)。

以上是数据采样法的基本原理,下面讨论插补具体轮廓线时的情形。

1.1. 直线插补

图4-18为第一象限直线,现分析其插补规律。

刀尖从点Ni-1移动到点Ni,沿轮廓直线方向的增量为DL=F×Ts,沿X向的增量为DX,沿Y向的增量为DY,它们之间的关系是:

DX=DL×Xe/L,DY=DL×Ye/L

其中,L为轮廓直线的长度,它满足等式:L2=Xe2+Ye2

Ni点的动态坐标可以用前一个点的坐标动态表示:X=X+DX,Y=Y+DY

由此,可设计第一象限数据采样直线插补软件流程图,见图4-19。

2.2. 圆弧插补

数据采样法圆弧插补的基本思路是在满足加工精度的前提下,用切线、弦线或割线来代替圆弧实现进给,即用直线逼近圆弧。

(1)切线法(一阶DDA算法)

图4-20为第一象限逆圆,现分析其切线法插补规律。

设当前点在Ni-1,按切线方向前进一个粗插补周期后到达Ni点,走过的粗插补

单位长度为 L=F×Ts,其中:F为进给速度,粗插补周期为Ts。

数控机床操作教程-(4)轮廓控制原理实验           数控机床操作教程-(4)轮廓控制原理实验

图4-20 切线法逆圆插补示意图    图4-21切线法圆弧插补流程图

显然,Xi-1=Rcosψi-1   (R为圆弧半径)

    Yi-1=Rsinψi-1

    Xi=Rcos(ψi-1+θ)

Yi=Rsin(ψi-1+θ)

从而

   Xi=Xi-1cosθ-Yi-1 sinθ

   Yi=Yi-1cosθ+Xi-1 sinθ

因θ很小,所以

sinθ=θ-θ3/3!+θ5/5!-……

   cosθ=1-θ2/2!+θ4/4!-……

取一阶近似(一阶DDA名称的由来),得

   sinθ=θ=F×Ts/R=K

   cosθ=1

因此

   Xi=Xi-1-KYi-1

     Yi=Yi-1+KXi-1

  数控机床操作教程-(4)轮廓控制原理实验Xi=Xi-Xi-1=-KYi-1

  数控机床操作教程-(4)轮廓控制原理实验Yi=Yi-Yi-1=KXi-1

   由此,可设计第一象限切线法数据采样圆弧插补软件流程图,见图4-21。

本法与脉冲增量方式DDA插补在本质上是相同的,前者是后者的推广。由于误差太大(可以在随后的实验中验证),在实际的CNC系统中并不使用。

(2)弦线法(直接函数算法)

图4-22为第一象限顺圆,弦线法插补规律(请参考有关书籍自行分析)如下:

Ⅰ区:

   ∆Xi=(Yi-1+∆Yi-1×0.5)×FTs/R

   ∆Yi=-Yi-1+(R2-(Xi-1+∆Xi)2)1/2

    Xi=Xi-1+∆Xi

    Yi=Yi-1+∆Yi

Ⅱ区:

   ∆Yi=(Xi-1+∆Xi-1×0.5)×FTs/R

   ∆Xi=-Xi-1+(R2-(Yi-1+∆Yi)2)1/2

    Xi=Xi-1+∆Xi

    Yi=Yi-1+∆Yi

Ⅲ区:

   ∆Xi=(Yi-1+∆Yi-1×0.5)×FTs/R#8710;Yi=-Yi-1—(R2-(Xi-1+∆Xi)2)1/2

 

    Xi=Xi-1+∆Xi

    Yi=Yi-1+∆Yi

Ⅳ区:

   ∆Yi=(Xi-1+∆Xi-1×0.5)×FTs/R

   ∆Xi=-Xi-1-(R2-(Yi-1+∆Yi)2)1/2

    Xi=Xi-1+∆Xi

    Yi=Yi-1+∆Yi

数控机床操作教程-(4)轮廓控制原理实验           数控机床操作教程-(4)轮廓控制原理实验

图4-22 弦线法顺圆插补示意图    图4-23 分区图

分区情况见图4-23。由此,不难得到其流程图4-24。

弦线法的精度比切线法高。

(3)割线法(二阶DDA算法)

一阶算法时曾得到:sinθ=θ-θ3/3!+θ5/5!-……

cosθ=1-θ2/2!+θ4/4!-……

我们现在取两阶近似,即为二阶DDA算法:

sinθ=θ-θ3/3!≈θ

cosθ=1-θ2/2!≈1-0.5×θ2

图4-25逆圆第一象限插补时,可计算得到:

∆Xi=K×Yi-1-0.5×Xi-1K2

∆Yi=-K×Xi-1-0.5×Yi-1K2

Xi=Xi-1+∆Xi

Yi=Yi-1+∆Yi

按此编制程序流程图4-26。割线法的精度比弦线法高。

数控机床操作教程-(4)轮廓控制原理实验

图4-24 弦线法圆弧插补流程图

数控机床操作教程-(4)轮廓控制原理实验           数控机床操作教程-(4)轮廓控制原理实验

图4-25 割线法逆圆插补示意图           图4-26 割线法圆弧插补流程图

3.参考程序:

直线:

Sub 插补()

Dim l, K, a, B, f1, t

x动点对起点 = 0: z动点对起点 = 0

f1 = f × 10: t = Ts / 60000

l = Sqr((x终点对起点 ^ 2 + z终点对起点 ^ 2))

K = f1 × t / l

a = Sqr((x动点对起点 - x终点对起点) ^ 2 + (z动点对起点 - z终点对起点) ^ 2)

x步长 = K × x终点对起点: z步长 = K × z终点对起点:

B = Sqr(z步长 ^ 2 + x步长 ^ 2)

Do Until a <= B / 2

x动点对起点 = x动点对起点 + x步长: z动点对起点 = z动点对起点 + z步长

a = Sqr((x动点对起点 - x终点对起点) ^ 2 + (z动点对起点 - z终点对起点) ^ 2)

Line -Step(z步长 × 系数, x步长 × 系数), vbRed

x动点对原点 = x动点对起点 + x起点对原点: y动点对原点 = y动点对起点 + y起点对原点: z动点对原点 = z动点对起点 + z起点对原点

Loop

End Sub

圆弧(切线法):

Sub 插补()

Dim 区间符号 As Integer

Dim x, y, z As Double

Dim K

Dim 径向误差, R动 As Double

顺逆符号判别

读数据

If R < 0.001 Then

Else

Ts = Ts / 60000

步长 = f × Ts:

K = 步长 / R

x动点对圆心 = -x圆心对起点 / 系数: z动点对圆心 = -z圆心对起点 / 系数

End If

x = ((x动点对圆心 - x终点对圆心) ^ 2 + (z动点对圆心 - z终点对圆心) ^ 2) ^ 0.5

y = 3 × 步长 × 系数

Do Until x <= y

deltaZ = -顺逆符号 × K × x动点对圆心

deltaX = 顺逆符号 × K × z动点对圆心

Line -Step(deltaZ, deltaX), vbRed

x动点对圆心 = x动点对圆心 + deltaX: z动点对圆心 = z动点对圆心 + deltaZ:

x动点对原点 = x动点对圆心 + x圆心对原点: y动点对原点 = y动点对圆心 + y圆心对原点: z动点对原点 = z动点对圆心 + z圆心对原点:

x = ((x动点对圆心 - x终点对圆心) ^ 2 + (z动点对圆心 - z终点对圆心) ^ 2) ^ 0.5:

y = 3 × 步长 × 系数

R动 = Sqr(x动点对圆心 ^ 2 + z动点对圆心 ^ 2)

Loop

End Sub


  • 信息来源:互联网
  • 版权声明:本站部分内容文章及图片来自互联网或自媒体,版权归属于原作者。如内容、图片有任何版权侵权问题,请联系我们处理,我们将在第一时间删除内容。
  • 免责声明:数控信息网发布此文目的在于促进信息交流,不存在盈利性目的,此文观点与本站立场无关,不承担任何责任。未经证实的信息仅供参考,据此操作风险自担。
  • 文本链接:https://skxx.site/news/show-4415.html
  • 阿凡达共发布829篇

  • 生成海报

    分享到微信

    分享到QQ

    更多分享

0相关评论
  • 阿凡达
资源共享,严禁用于商业用途。非专业传播关于数控行业的知识。
  • 文章829
  • 浏览8800
  • 收藏0
  • 粉丝 0