基于ARM9的数控铣床系统设计方案
传统数控系统的使用流程是先由用户编辑G代码或其它格式的加工文件,数控系统根据该文件中代码的意义,控制刀具做出相应的动作。所以在软件方面,系统需要提供文本编辑功能、对加工文件的编译功能、电机驱动功能等。为了使用户验证加工程序的正误,系统还要提供仿真功能,将走刀过程展现给用户。
为了实现网络功能,本系统还移植了嵌入式浏览器Konqueror/Embedded, 这是一款自由软件。由于浏览器可以访问HTTP、FTP、SMTP、NNTP等多种不同协议的服务,故安装浏览器可谓一举多得,移植过程参考文献。软件结构如图3所示。
2.1 操作系统平台的搭建
2.2 伺服电机和步进电机驱动程序
伺服电机需要的信号是PWM 波形控制信号,因此伺服电机驱动程序主要是实现脉宽调制。这个脉宽调制是利用一个定时器,并根据由SPWM 算法得到的延迟时间,控制一个通用I /O 端口高低电平持续时间得到的。系统产生的PWM 波形如下图4所示。
而在三个步进电机的设备驱动程序中,向步进电机发送连续信号定义为写操作; 从8253中读数据定义为读操作; 由键盘控制各电机动作作为自定义操作。
2.3 G代码编译
G代码是国际通用的机床加工代码,其编译的思想是: 首先将G代码文件读入流中,逐行分析其意义,并且带有查错功能。当遇到子程序跳转时记录文件指示出其位置和循环次数时,子程序返回后从记录位置继续执行;遇到主轴旋转时,在编译文件中写入旋转标志和PWM 的脉宽; 遇到插补命令时写入脉冲标志和每步的三坐标脉冲信号诸如此类。最后生成记录整套加工步骤的二进制文件。编译流程如图5所示。
评论