(2)存储器模块。存储器是嵌入式系统中的重要组成部分,它用于存储程序和数据。本系统的存储器包括EPROM、SDRAM、SRAM和NAND-Flash,其中,EPROM用于存储系统程序;SDRAM用于存储系统运行时的程序与数据;SRAM用于存储突然掉电时的重要实时数据;NAND-Flash用于存储用户的数控加工程序。
(3)电源模块。新型的CPU和FPGA的内核电压一般都是2.5V或以下的,I/O电压一般都是3.3V。所选择的开关电源可以提供5V,±12V,24V电源,其中±12V用于主轴模拟信号模块电路,24V用于光电隔离电路,因此,需要使用低压差线性稳压器产生3.3V和2.5V的电压,供CPU、FPGA和CPLD使用。为了保证微处理器稳定而可靠地运行,还需要配置电压监控电路。
(4)人机交互模块。人机交互模块包括键盘及指示灯模块和液晶显示模块。键盘及指示灯模块负责键盘的扫描并读取键值,同时负责LED的显示控制。液晶显示模块实现数控系统用户界面。
(5)通信接口模块。通信接口模块包括JTAG接口、RS-232串行接口和USB接口。JTAG接口与PC通讯,实现系统运行程序的仿真调试;RS-232串行接口与PC通讯,实现NC文件的上传与下载;USB接口实现对U盘NC文件的读写。
(6)D/A转换模块。D/A转换模块负责产生变频器所需要的模拟信号,由隔离器件、D/A转换器和集成运算放大器组成。
(7)CPLD/FPGA模块。CPLD模块包括CPLD、FPGA、CPLD对FPGA的配置电路。CPLD主要是用来对SRAM工艺的FPGA进行配置和加密,同时扩展数控系统的通用I/O口;FPGA主要负责精插补,产生轴运动所需的脉冲信号以及处理编码器返回信号,同时负责处理手轮输入和开关量的输入输出。
(8)输入输出模块。本系统的输入/输出信号是通过FPGA和CPLD的逻辑控制来实现,以提高系统的工作可靠性和设计柔性。对于输出的脉冲信号和输入的编码器信号采用差分输出输入的方式,这样不仅提高脉冲传输的抗干扰能力,也增加了信号传输距离;而对于I/O信号则采用光电隔离的方法,进一步提高了系统的抗干扰性和可靠性。
3.2 软件设计
该系统采用嵌入式μClinux 操作系统作为嵌入式数控系统软件平台,其源代码开放、内核小,非常适合运行在嵌入式微处理器上,并且μClinux操作系统也支持TCP/ IP 协议,具有强大的网络功能,同时该操作系统也支持多任务并发运行,可以采用多任务编程方法。这样,数控系统的每个功能可以作为一个独立的任务来实现,这大大地增强了系统软件的可靠性、稳定性,也便于以后的维护和升级,同时也提供了图形用户接口(GUI),结合键盘、LCD 液晶显示和触摸屏模块为用户提供友好的人机交互界面。
(1) 调度任务的划分。
软件平台设计中,采用嵌入式实时操作系统μClinux对系统多任务进行调度及管理。基于实时多任务操作系统的应用程序中,实时性取决于对任务及中断的处理。用户根据需要调用μClinux的任务调度函数,调度函数从就绪任务中寻找优先级最高的任务,并进行任务切换操作。μClinux把任务分为各不相同的优先级(唯一),已经准备就绪的高优先级的任务可以剥夺正在运行的低优先级对CPU的使用权,所以正确的任务划分及优先级分配可以充分体现嵌入式实时操作系统任务调度算法的效率,从而提高整个系统的实时性能。μClinux可以支持64个任务,最多支持56个用户任务,其余8个是系统任务。按照任务划分原则,结合数控系统的具体要求,把应用软件分成以下几类任务:
① 数控系统基本功能实现任务:包括刀具的转换、位置的测量、工件的插补运算及补充运算、加工工艺设置等等,该级别的优先级最高。
② 保护功能任务:主要是报警功能。要求尽可能快的完成。
③ 人机交互功能:键盘响应、显示器显示等。优先级最低。
(2) 软件功能设计。
由于该嵌入式数控系统采用uClinux 操作系统管理系统的资源,相对于传统的单片机,更类似一台微型计算机系统,具有更强的性能和不同于传统单片机的软件设计方法,其软件结构包括加载程序、uClinux内核、系统调用接口和应用程序。
加载程序负责在加电后对微处理器进行必要的硬件设置,初始化内存,并把uClinux 内核映像从Flash 中复制到内存,把控制权交给内核,使内核运行,最终使应用程序运行。uClinux内核作为应用程序控制系统硬件的接口,提供应用程序对硬件的间接访问,在具体设计中,对微处理器中内置A/D 转换器的操作、对键盘的操作以及对LCD的操作由在uClinux下编写的设备驱动程序完成,这些驱动被编译进uClinux 的内核。
系统任务的实现由两个不同的进程实现:加工程序和网络服务程序,分别用来完成数控系统的工件加工、计算的功能及网络服务的功能。
4结语
数控系统作为现化制造业的核心技术,是衡量一个国家制造业水平的重要标志之一,受到各国的普遍重视,特别是发达国家。自20世纪80年代以来,国际上的数控技术和市场基本上被日本、德国和美国等少数公司所垄断。考虑到我国机床数控系统当前的具体情况,研制一款拥有自主知识产权的嵌入式机床控制系统,对于提高我国中高档数控系统的技术水平具有十分重要的意义。本文从嵌入式数控系统硬件平台和软件平台的总体结构及其功能设计的角度对嵌入式数控系统进行了详细的设计研究,对于我国嵌入式数控系统的开发与应用,是一次有益的尝试与探索,是值得推广和借鉴的。