工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

电路设计->控制电路图->其他控制电路图->基于运动控制芯片AFD-X05的开放式五轴五联动数控系统的应用

基于运动控制芯片AFD-X05的开放式五轴五联动数控系统的应用

作者:沉默的offer时间:2018-08-22

基于运动控制芯片AFD-X05的开放式五轴五联动数控系统的应用

关键字:

AFD-X05 FPGA SOC 五轴五联动 G代码 运动控制器

摘要:

运动控制芯片AFD-X05是基FPGA实现的芯片,能够完成高速高精度的数控加工。其运动控制的稳定性和可靠性要比DSP系统或基于DSP技术的运动控制芯片如MCX314等要高一个等级。五轴五联动运动控制器支持大部分的G代码、M代码和宏指令,也具有可组配、模块化和开放式等特点。特别是它支持五轴直线插补,可以用计算机编写大型的五轴联动复杂软件,通过五轴五联动运动控制器控制数控机床完成加工,促进国产中高档数控系统软件水平的提高。本文介绍用它来快速开发一套五轴铣床数控系统。

一、引言

当前,各种运动控制卡的二次开发的比较复杂。目前国内比较多的工程师都熟悉数控系统的G代码,在ARM 32位单片机和国产运动控制芯片AFD-X05的基础上,研制成的可执行G代码的五轴联动运动控制器,使得二次开发变简单了。应用这种支持五轴直线插补的高速高精度的运动控制器,再开发各种专用的数控系统,工程师们只需将精力放在大型的复杂的软件开发上面,完全不需要去了解硬件。

二、G代码五轴联动运动控制器的硬件系统

2.1 AFDX05运动控制芯片

云山数控研发的AFDX05运动控制芯片,支持任意2~5轴直线插补,任意2轴圆弧插补,多达6级的运动指令缓冲区,特别适合高速多线段或圆弧连续插补的运动控制,另外,还有反向间隙补偿,速度控制,加减速控制,位置控制,通用输入输出口,8/16 位数据总线,中断发生,硬件限位,软件限位,紧急停止,暂停,编码器信号输入等功能,驱动脉冲频率高达8MPPS、插补精度±5LSB。用于控制以脉冲序列方式输入的伺服电机、步进电机。

“中国芯”AFDX05,更加符合中国人的使用习惯。可以控制最多5轴的点位运动、连续轨迹运动、同步运动等应用。

2.2 ARM 32位单片机

CPU为 S3C44B0X。32M Flash。脉冲方向差动输出驱动。60路光耦隔离输入42路集电极开路光耦隔离输出或 36路光耦隔离输入20路集电极开路光耦隔离输出 。 5路步进/伺服电机脉冲光耦隔离输出,最高频率4MHz。32位逻辑位置和实际位置计数器。RS232通讯。硬件部分已模块化,无需任何硬件知识即可开发。

三、G代码五轴联动运动控制器的软件系统

3.1 支持的G代码

G代码

分组

功能

*G00

1

定位(快速移动)

*G01

1

直线插补(进给速度)

G02

1

顺时针圆弧插补

G03

1

逆时针圆弧插补

G04

0

暂停,精确停止

*G17

2

选择X平面

G18

2

选择Z平面

G19

2

选择Y平面

G27

0

返回并检查参考点

G28

0

返回参考点

G29

0

从参考点返回

G30

0

返回第二参考点

*G40

7

取消刀具半径补偿

G41

7

左侧刀具半径补偿

G42

7

右侧刀具半径补偿

G43

8

刀具长度补偿+

G44

8

刀具长度补偿-

*G49

8

取消刀具长度补偿

G52

0

设置局部坐标系

G53

0

选择机床坐标系

*G54

14

选用1号工件坐标系

G55

14

选用2号工件坐标系

G56

14

选用3号工件坐标系

G57

14

选用4号工件坐标系

G58

14

选用5号工件坐标系

G59

14

选用6号工件坐标系

G60

0

单一方向定位

*G64

15

切削方式

G65

0

宏程序调用

G66

12

模态宏程序调用

*G67

12

模态宏程序调用取消

*G90

3

绝对值指令方式

*G91

3

增量值指令方式

G92

0

工件零点设定

*G98

10

固定循环返回初始点

G99

10

固定循环返回R点

3.2 支持的M代码

M代码

功能

 

M00

程序停止

 

M01

条件程序停止

 

M02

程序结束

 

M03

主轴正转

 

M04

主轴反转

 

M05

主轴停止

 

M06

刀具交换

 

M08

冷却开

 

M09

冷却关

 

M18

主轴定向解除

 

M19

主轴定向

 

M30

程序结束并返回程序头

 

M50

备用输出1开

 

M51

备用输出1关

 

M52

备用输出2开

 

M53

备用输出2开

 

M54

备用输出3开

 

M55

备用输出3开

 

M56

备用输出4开

 

M57

备用输出4开

 

 

M98

调用子程序

 

M99

子程序结束返回/重复执行

 

3.3 宏指令编程

变量号

变量类型

功能

#0

“空”

这个变量总是空的,不能赋值。

#1~#33

地方变量

地方变量只能在宏中使用,以保持操作的结果,关闭电
源时,地方变量被初始化成“空”。宏调用时,自变量分
配给地方变量。

#100~#149
#500~#531

公共变量

公共变量可在不同的宏程序间共享。关闭电源时变量
#100~#149被初始化成“空”,而变量#500~#531保持数
据。公共变量#150~#199和#532~#999可以选用,但是当
这些变量被使用时,纸带长度减少了8.5米。

#1000~

系统变量

系统变量用于读写各种NC数据项,如当前位置、刀具补偿值

#2000~#2059

IO输入

60路光耦隔离输入信号

四、三轴铣床数控数控系统开发实例

4.1 参数初始化。

以下参数,五个轴,每个轴的都有。

参数名称

参数设置

参数单位

脉冲当量

P01=XXX.XXXXXX

毫米

G00指令速度

P02=XXXX

毫米/分钟

G01指令速度

P03=XXXX

毫米/分钟

G02指令速度

P04=XXXX

毫米/分钟

G03指令速度

P05=XXXX

毫米/分钟

起始速度

P06=XXXX

毫米/分钟

加速时间

P07=XXXX

毫秒

正向软限位

P08=XXXX

毫米

负向软限位

P09=XXXX

毫米

反向间隙补偿

P10=XXXX

毫米

回零速度

P11=XXXX

毫米/分钟

手动速度

P12=XXXX

毫米/分钟

最大进给速度

P13=XXXX

毫米/分钟

系统总刀数

P14=XX

 

M代码等待时间

P15=XXXX

毫秒

回参考点坐标

P16=XXX.XXXXXX

毫米

主轴编码器线数

P17=XXXX

(/R)

归零方向

P18=X

 

换刀基准位

P19=XXX.XXXXXX

毫米

换刀安全高度

P20=XXX.XXXXXX

毫米

换刀间隔

P21=XXX.XXXXXX

毫米

换刀速度

P22=XXX.XXXXXX

毫米/分钟

最大行程

P23=XXX.XXXXXX

毫米

设置工件坐标系

P25=XXX.XXXXXX

毫米

4.2 发送G代码,控制机床工作。如:

G54

M03 X8

G0 G90 G17

G28

G00X-2.046Y59.111Z10.000

Z4.000

G01Z-1.000F300

G17

G02X1.245Y54.864I-54.422J-45.566K0.000F800

X2.203Y53.318I-15.407J-10.613K0.000

G00Z10.000

G91 G28 M09

五、小结。

基于该开放式五轴五联动数控系统平台做开发,只需要将G代码传送到这个平台,可以快速开发出一套基于国际标准G代码加工的专用数控系统。应用开发工程师在完全不需要了解硬件的情况下,集中精力做好特定的行业专用数控系统。降低数控系统的开发成本,促进数控机床的普及应用。

欢迎转载,信息来自维库电子市场网(www.dzsc.com)


关键词:

评论

技术专区