嵌入式数控系统开发应用研究

来源:互联网

点击:1355

A+ A-

所属频道:新闻中心

关键词:嵌入式 数控系统

    1 引言

      从20世纪70年代以来,以数控机床为代表的现代基础机械已成为制造工业最重要的技术特征,数控机床水平的高低和机床数控化率的高低已成为衡量国家工业化水平高低的重要标志。数控系统是数控机床的大脑,是计算机技术在机械制造领域的一种典型应用,它集计算机技术、测量技术、现代机械制造技术、微电子技术、自动控制技术、信息处理技术等多项技术于一体,是近年来应用领域中发展十分迅速的一项高新技术。

      随着电子技术的飞速发展,数控系统逐渐朝嵌入式方向发展。嵌入式系统是近年发展最快的技术之一,它是以应用为中心,以计算机技术为基础、软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。本论文主要对嵌入式数控系统进行研究设计,以期从中找到可行的嵌入式数控系统控制方法,并以此和广大同行分享。2 嵌入式数控系统总体结构设计

      系统由几个不同功能的模块组成,模块间通过并行I/O、高速串行协议或其他方法相互联系。主要包括人机交互装置、嵌入式数控操作和管理模块、嵌入式运动控制模块和I/O及伺服控制器等。

      嵌入式数控操作和管理模块通过I/O与人机交互装置相连,并通过串口与运动控制模块连接,运动控制模块通过I/O模块与伺服控制器和机床各开关量相连。

      (l) 人机交互装置。包括一个LCD显示器、一个键盘和其他一些按钮,完成人机交互任务,例如NC代码的输入/编辑显示、手动操作以及一些机床状态显示等。

      (2) 嵌入式数控操作和管理模块。是数控系统的核心模块之一,负责全部的人机交互处理,各种机床参数的设置,NC代码的编辑、编译、存储和传输,系统监控与故障诊断,移动U盘的控制及网络通信等。

      (3) 嵌入式数控运动控制模块。机床逻辑运动控制的核心,利用逻辑运算能力,负责送料机运行轨迹的计算、插补、反向间隙补偿、信号采集、主轴及开关量控制等实时性强的运算和控制。

      (4) I/O模块与伺服控制器。FO模块的主要任务是不同电平的转换、隔离及功率放大等。包括3.3V到5V转换、3.3V到24V的转换、采用光电祸合器隔离防止干扰以及增大驱动功率等。另外还包括单路信号转换成差分信号及差分信号转换成单路信号电路。伺服控制器的作用在于接受来自上位控制装置的指令信号,驱动被控对象跟随指令脉冲运动,并保证动作的快速和准确。3 嵌入式数控系统的设计与实现

      3.1 硬件设计

      本论文所设计的嵌入式数控系统硬件系统结构构成原理图如下图所示:

      (1)ARM微处理器模块。ARM处理器是系统的控制核心,负责运行数控系统控制软件。本系统选用SAMSUNG公司的S3C44B0X处理器。本模块还包括时钟电路、复位电路和实时时钟RTC(Real Time Counter)电路。

      (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年代以来,国际上的数控技术和市场基本上被日本、德国和美国等少数公司所垄断。考虑到我国机床数控系统当前的具体情况,研制一款拥有自主知识产权的嵌入式机床控制系统,对于提高我国中高档数控系统的技术水平具有十分重要的意义。本文从嵌入式数控系统硬件平台和软件平台的总体结构及其功能设计的角度对嵌入式数控系统进行了详细的设计研究,对于我国嵌入式数控系统的开发与应用,是一次有益的尝试与探索,是值得推广和借鉴的。

    (审核编辑: 智汇张瑜)

    声明:除特别说明之外,新闻内容及图片均来自网络及各大主流媒体。版权归原作者所有。如认为内容侵权,请联系我们删除。