SINUMERIK支持多项式插补,但一直没有学习过,因为不会编写多项式程序
多项式在学校学过,例如:
关键用多项式编程,要写成下面的格式,就有些费劲儿了
举例,资料上的程序:
N10 FGROUP(X,Y,Z)
N15 G1 X0 Y0 F1000
N20 POLY PO[X]=(10,10) Y10
你看出X和Y的关系了吗?能画出路径曲线吗?运行程序得到的曲线如下:
上面的程序X,Y的函数关系是:
下面做个比较,分别运行多项式程序和按上面函数生成的点位程序,看看哪个效率更高些。
先看看准备好的程序:
多项式程序:
N10 FGROUP(X,Y,Z)N15 G1 X0 Y0 F1000 N20 POLY PO[X]=(10,10) Y10
点位程序:
X0 Y0X0.01 Y0.316227766016838X0.02 Y0.447213595499958X0.03 Y0.547722557505166X0.04 Y0.632455532033676X0.05 Y0.707106781186548X0.06 Y0.774596669241483X0.07 Y0.836660026534076X0.08 Y0.894427190999916X0.09 Y0.948683298050514X0.1 Y1
....(此处省略后面的点位)
多项式程序只有一行,而对应的点位程序有1000行(X轴按增量0.01mm计算获得的点位)
下面执行程序,用伺服跟踪记录,然后比较两个程序的运行效率。
先看看点位程序运行的结果:
然后是多项式程序运行的结果:
比较上面两个曲线图,可以看出:
- XY的插补运动的时间相近,但点位程序受压缩器容差和进给速度的影响,原则上多项式程序执行应该更快
- 从整体时间上看,多项式程序明显快,估计是节省了计算点位的时间。