基于ARM9的数控铣床系统设计方案
步进电机发送连续信号定义为写操作; 从8253中读数据定义为读操作; 由键盘控制各电机动作作为自定义操作。
2.3 G代码编译
G代码是国际通用的机床加工代码,其编译的思想是: 首先将G代码文件读入流中,逐行分析其意义,并且带有查错功能。当遇到子程序跳转时记录文件指示出其位置和循环次数时,子程序返回后从记录位置继续执行;遇到主轴旋转时,在编译文件中写入旋转标志和PWM 的脉宽; 遇到插补命令时写入脉冲标志和每步的三坐标脉冲信号诸如此类。最后生成记录整套加工步骤的二进制文件。编译流程如图5所示。
2.4 插补算法与刀补算法
数控铣床控制系统使用逐点比较法实现直线和圆弧插补算法。以刀的当前位置为起点,以G代码给定位置为终点,在其间的直线或圆弧上插入拟合点,根据这些点产生一系列三坐标脉冲信号。逐点比较法的缺陷是圆弧插补只能走x 或y 方向的正交线,而缺失了最应该在圆弧插补中出现的由x、y 方向合成的±45/135°斜线,系统根据圆弧相对于x 或y 轴的倾向性,使插补过程中在圆弧的±45 /135°附近尽量使用斜线,使得插补精度更高、步数更少。图6 是由M atlab仿真得到的改进算法和传统算法的比较,如果定义理想曲线和拟和曲线的误差为两曲线相夹的面积(图中灰色部分) , 可看出改进算法的误差较小。
编写加工程序时,一般只考虑刀具中心沿零件轮廓切削,而忽略刀具半径对加工的影响,在实际加工时需要在刀具中心与刀具切削点之间进行位置偏置,补偿上述影响。这种变换过程即为刀具补偿。系统采用的是带有过度连接的C刀具补偿算法,该算法比较复杂,与许多因素有关,为此定义了一个结构作为刀补函数的参数,该函数更改插补始末位置、增加过渡曲线实现刀补功能。参数结构如下,
3 结论
以ARM9微处理器为硬件平台,免费的Linux操作系统为软件平台,开发了嵌入式数控铣床,实现了对步进电机和伺服电机的控制。 在对制作的电路板和编程的系统程序实验的基础上表明,与传统数控系统相比,嵌入式数控系统发挥了其耗能少、成本低、体积小等优势。
- ARM7和ARM9双核平台的技术分析(02-27)
- 基于WinCE的液位遥测系统软件设计(04-13)
- 基于ARM920T的嵌入式电力参数检测系统设计(02-14)
- 基于ARM9的道路交通数据采集系统设计(03-12)
- 基于ARM9的电梯缓冲器复位时间测试仪的设计(06-05)
- 基于嵌入式ARM9的USB设计与实现(07-16)