多数数控机床不具备非圆曲线的插补指令,在编制非圆曲线数控程序时一般通过直线和圆弧来替代,又由于直线替代法直观简单,在满足精度要求的条件下,通常以直线段折线代替非圆曲线,这样数控语言编程的关键问题就是节点的确定。
多数数控机床不具备非圆曲线的插补指令,在编制非圆曲线数控程序时一般通过直线和圆弧来替代,又由于直线替代法直观简单,在满足精度要求的条件下,通常以直线段折线代替非圆曲线,这样数控语言编程的关键问题就是节点的确定。 直线替代法的节点确定多采用间距法和等步长法两种。在理论曲线与直线的最大偏差小于允许偏差的条件下,等间距法是X 轴节点间的距离Δx相等。而等步长法是各节点间直线的长度ΔL相等。等间距法和等步长法共同的特点是计算简单,但由于Δx和ΔL为定值,当曲线的曲率较大时,节点数较多,造成程序的段数过多,同时曲线的曲率变化较大时,带来零件加工表面的粗糙度变化也大,影响零件的表面加工精度。
1 等误差直线逼近原理
数控加工中非圆曲线等误差直线逼近法是各节点之间曲线与直线的误差δ 相等,如附图所示。 确定允许误差的圆方程,即以起点a(xa,ya)为圆心,δ 为半径作圆:
(x-xa)2+(y-ya)2=δ2
(1) 求圆与曲线公切线PT的斜率K:
K=
(yT-yp)
(xT-xp)
(2) 为求xT、yT、xp、yp,需求解联立方程:
yT-yp=f'(xp)(xT-xp)
yp=f1(xp)
yT-yp=f2(xT)(xT-xp)
yT=f2(xT)
(3) 其中f1(x)为误差圆函数,f2(X)为加工曲线函数。 由式(3)得到yT、yp、xT、xp,按式(2)求出与PT平行的弦ab的斜率K。 则弦ab的直线方程为:
y-ya=K(x-xa)
(4) 联立曲线方程和弦方程求得b点坐标:
y=f2(x)
y-ya=K(x-xa)
(5) 按以上步骤顺次求得c、d、e……各点坐标。 等误差直线逼近法在非圆曲线数控加工中是节点和数控程序段最少的方法,并且零件的加工表面精度和尺寸精度高。但由于等误差直线逼近法计算比较繁琐,如果用手工解四元二次方程一般很难求得精确解,故很少用于数控机床的程序编制。
2 等误差直线逼近法的节点算法举例
以数控加工的理论曲线取抛物线右半枝y=ax2(a>0,x>0)为例,则有y'=2ax。 根据允差圆方程(1)得到:
y=ya-
√
δ2-(x-xa)2
y'=
(x-xa)
(y-ya)
(6) 故方程组(3)可以写为:
yT- yp=-
(xp-xa)
(xT-xp)
(yp-ya)
y=ya-
√
δ2-(x-xa)2
yT-yp=2axT(xT-xp)
yT=axT2
(7) 通过方程组(7)求的第一节点后,以该节点作为新的起点,反复求下去,即可求得所有节点。