6 通道射频遥控器采用 CC2500 射频收发器模块和 microchip 的 PIC16F1847 微控制器设计。发射器配有 6 个轻触开关、4 个...
电机控制专区中的基于运动控制芯片AFD-X05的开放式五轴五联动数控系统的应用
基于运动控制芯片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为 S
三、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 |
公共变量 |
公共变量可在不同的宏程序间共享。关闭电源时变量 |
#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
G
G28
G00X-2.046Y59.111Z10.000
Z4.000
G01Z
G17
G02X1.245Y54.864I-54.422J-45.566K
X2.203Y53.318I-15.407J-10.613K0.000
G00Z10.000
G
五、小结。
基于该开放式五轴五联动数控系统平台做开发,只需要将G代码传送到这个平台,可以快速开发出一套基于国际标准G代码加工的专用数控系统。应用开发工程师在完全不需要了解硬件的情况下,集中精力做好特定的行业专用数控系统。降低数控系统的开发成本,促进数控机床的普及应用。
欢迎转载,信息来自接线图网(www.jiexiantu.com)
相关文章
发表评论