0 引言
数控系统的开放性是目前数控技术研究的热点。现阶段,数控系统的真正开放性还很难做到,一些数控系统只是具备了开放式系统的特点或者开放程度相对大一些而已。目前的研究大都着眼于基于PC 平台的软硬件开发,其实质就是在PC 平台的基础上,配以一定的接口卡及人机交互界面进行数控加工的专门工具,在结构和性能上都存在很大局限性。由于嵌入式数字信号处理器具有高速运算能力,使许多复杂的控制算法和功能得以实现;加之其把实时处理能力和控制的外设功能集于一身等优点,所以它在数控技术中越来越被广泛应用。本文提出了基于T I 公司嵌入式数字信号处理器
TMS320F2812 的数控系统,此控制系统能够独立完成伺服电机的实时运动控制,另外利用DSP 内部的CAN总线控制器,实现了数控设备检测系统的网络化,构成了分布式测控网络。为弥补单任务系统的软件设计的不足,本系统移植了嵌入式实时内核mC/OS-II,为上层的软件开发建立了良好的任务管理平台和底层驱动平台。
1 嵌入式数控系统的硬件构成
本系统采用模块化的设计方法,定义了系统的总线,预留了标准的工业级接口,用户可根据不同功能要求选择模块以重构自己的系统。这样的设计为实现数控系统的开放性要求做了良好的硬件基础。
1.1 主控及交互模块
主控及交互模块主要由T I 公司的T M S 3 2 0F2812 DSP 及相应的存储单元、显示、键盘、外围驱动等电路组成,是该系统的硬件基础。
1.2 控制电路
本数控系统采用全数字式交流伺服电机,其控制由定制的运动控制模块完成。准确可靠的位置和速度检测环节是数控系统高速高精度的基础。为此,我们采用一片CPLD 来实现4 倍频计数电路,由于在CPLD 内的门电路和触发器的特性完全一致,所以在相同转速下各电机轴倍频信号的脉冲周期可以保持一致。为抑制长距离传输中可能引入的干扰信号,输出至驱动器的脉冲信号和输入至CPLD 的编码器反馈信号采用差分输出方式。该方案可改善整个电路的逻辑和电气特性,增强电路的抗干扰性能,从而提高整个数控系统的加工精度和工作的可靠性。
1.3 信号采集模块
数据采集模块实时地监测数控加工过程,可采集当前各个控制轴坐标位置、运动速度、加速度、加工程序指针、系统增益、刀具参数等数据,保证系统的可靠运行,对数控系统进行实时监测及诊断。该模块主要由TMS320F2812 片内的ADC 和外围的信号调理电路组成。
1.4 网络通讯模块
CAN(Controller Area Network)总线,属于现场总线技术范畴,是一种有效支持分布式控制或实时控制的串行通信局域网络,以半双工的方式工作,采用基于数据的传输方式,消息可以在任何时刻由任何节点发送到总线上,并被其他所有节点接受、判断后决定是否应用这个消息。由于其具有通信速率高、开放性好、实时性好、纠错能力强以及控制简单、传输可靠性高、扩展能力强、系统成本低等特点,已广泛应用于控制系统中的各检测和执行机构之间的数据通信,是当今自动化领域中公认为最具有应用前景的技术之一。
CAN总线系统的硬件电路主要由T M S 3 2 0 -F2812、CAN 总线收发器PCA82C250 等芯片组成。TMS320F2812 中的CAN 有32 个邮箱,占用512 字节RAM,并且所有邮箱都具有独立的接收屏蔽寄存器,都可以配置为发送或接收邮箱,且都有一个可编程的接收屏蔽寄存器。所有进行数据传输和接收滤波的协议功能都是由CAN 控制器执行的,通过DSP 片内的特殊功能寄存器可配置CAN 控制器访问接收到的数据以及传输数据。因此,TMS320F2812可完成CAN 总线协议的数据链路层和应用层的所有功能。
另外,TMS320F2812 片内有集成的SCI接口,我们通过DSP 的SCI 实现了与PC 机的RS-232 通讯,可进行上下位机的数据交换。
2 网络监测的层次化激活机制
为了保证数控设备现场运行的安全可靠和产品的加工质量,加工车间采用传感器对机床运行状态,如振动信号、刀具磨损、轴承温度、设备振动量和切削力等模拟量进行实时数据采集,并进行在线分析,及时调整机床运行参数。当现场条件要求严格,需要的传感器网络比较庞大,相对的数据采集和分析计算量很大时,单独一台数控设备就可能无法及时的处理现场的数据。特别是需要进行故障诊断和返回控制的场合,当涉及的情况比较复杂,会经常发生超出单独设备处理能力和存储能力的情况,这时有必要组建数控设备的加工通讯网路,利用分布式计算的思想,将现场数据的采集处理诊断返回控制分散的其他的设备中去。
TMS320F2812 内部自带了一个CAN 总线控制器。CAN 总线能够在工厂构成低层的分布式数据采集系统,能够做到数控设备检测系统的网络化,随时提供上层数据获取的需要,因此,可以充分利用DSP 内部的CAN 总线控制器,构成分布式测控网络。将通讯网络化处理能力和控制能力划分为群控设备级、车间级、企业级直到互联网级。单独的设备被逐层的联系起来,其监控逻辑只负责本机的一些常见的故障诊断情况,软硬件结构可以有很大简化,在这一级,我们用CAN 总线把数控系统的各功能模块联接起来。上一层次的网络节点设备,则具有更强的处理能力和故障分析能力,能够接受下层无法处理的数据或初步运算结构,进行再加工,完成现场的分析诊断要求。随着层次的不断提高,诊断水平也不断增强,但所耗费的网络资源也就越大,为优化网络处理资源,我们提出了状态监控的分层激活机制。其核心原则是,采用一种可由用户定制的现场监控策略,先期定义一些可能的现场诊断形式和所需的监控处理强度,当现场监测需要诊断处理模块相应时,根据定义策略,激活相应的处理机制,可以采用逐层向上激活的方式,也可以直接激活指定的处理层,并且建立起一种系统的自学习机制,记忆和归类经常出现的监测状态,提高状态监测的平均效率。
3 基于mC/OS-II的系统软件设计
单任务数控系统的软件设计结构通常通过一个无限循环来判断任务的标志量,通过中断(定时中断和键盘中断)来激活新的任务,进入固定的任务中断程序入口,来实现任务的调度。在这种调度方式下,系统的大多数时间被任务等待的无限循环占据,在任务处理的过程中,其他的同等级的任务无法使用CPU 的资源,无法进行任务之间有效的上下文切换,导致了系统的实时性十分不可靠。同时,如果任务在执行过程中需要等待信号,或延时信号处理,当这种延时不可预计的情况下,就可能占据大量的系统时间,造成系统资源的大量浪费,导致无法响应更紧急的任务,这种无限的等待情况会导致许多不可预计的后果。在DSP系统中嵌入mC/OS-II将增强系统的可靠性,并使得调试程序变得简单。在系统中嵌入mC/OS-II,可以把整个程序分成许多任务,每个任务相对独立,然后在每个任务中设置超时函数,时间用完以后,任务必须交出CPU 的使用权。即使一个任务发生问题,也不会影响其他任务的运行。mC/OS-II 优越的技术性能,有利于数控系统的实时响应,能够促进数控系统整体性能的提升,提高系统的可靠性,同时也使得调试程序变得容易。
系统在以C/OS-II为底层软件平台的基础上,由 C/OS-II 提供的各种软件平台支持,构建以任务管理,通信管理,中断仲裁,堆栈管理,内存管理,时钟管理和网络支持的软件框架,同时在C/OS-II的基础上制定合理有效的优先级,以保证CNC 系统稳定可靠的运行。根据数控系统加工的特点可将任务划分为模块:位置控制模块,插补运算模块,动态监控模块,译码解释模块,交互显示模块,键盘任务模块,文件系统管理模块,通过各模块之间的合理结合,形成系统的工作和应用平台,集成便于用户进行二次开发的接口程序,便于系统的维护与升级。
4 结束语
基于CAN 总线构建的层次化网络监测模块,保证了数控设备现场运行的安全可靠和产品的加工质量。DSP 和CPLD 的应用使系统控制结构大为简化,易于实现各种较复杂的运动轨迹控制。同时,基于实时操作系统构建的软件体系,克服了当前数控平台的缺陷,实现了系统的实时调度,提高了系统的可靠性和精度。
(审核编辑: 智汇张瑜)