目前,基于PC 的开放式数控系统是数控技术开放式架构的主要实现方式,这种实现方式主要是考虑利用工业PC 丰富的系统资源和业已标准化的接口来简化数控系统的设计,降低数控系统开发的技术难度,并使设计出的数控系统具有一定的开放性,但这种体系结构也存在很大的局限性,主要体现为: ①系统实时性和稳定性较差,基于PC 的数控系统的操作系统多采用通用操作系统,与RTOS相比,其在任务调度的实时性和系统运行的稳定性上都比较差; ②系统的开放性有限,无论是PC 嵌入NC 的结构,还是NC嵌入PC 的结构,其开放性特征都是基于PC 固有的开放特征,没有针对数控加工的特点而进行单独的定义; ③工控机模式数控系统的成本太高,一台能满足数控加工要求的计算机至少需要投资数千元再配上价格昂贵的运动控制卡,使得成本很难降低。
另一方面,进入20世纪90年代以来,嵌入式计算机应用技术获得了飞速发展。 各种高性能的嵌入式微控制器MCU 层出不穷,与以前相比,嵌入式微控制器的CPU 运算速度大大提高,处理数据宽度不断加大,更重要的是片上集成资源越来越丰富; 与此同时,出现了很多高效率、高可靠性和高稳定性的内核可裁减的嵌入式实时操作系统(RTOS) ,如VxW orks、LC /OS-Ⅱ等,这就使嵌入式系统在生活和生产的很多领域都得到了广泛的应用,如汽车工业、宇航工业等。 基于以上分析,笔者提出在数控系统的设计中采用嵌入式技术,即基于微控制器的嵌入式数控系统,这种设计方案的优势在于: ①市场上可供选择的嵌入式微控制器种类繁多,片上资源丰富,针对不同的应用,其片上集成资源有很大不同,完全可以选择一种片上资源和运算速度都相对非常适合数控系统设计的MCU 和DSP来构建数控系统的硬件平台,这种硬件平台的设计可以使系统集成度更高,体积更小,运行更稳定; ②数控系统的运行是一个多任务的调度过程,特点是运行任务相对较少,但实时性要求很强,不存在冗余的任务,而采用RTOS作为嵌入式数控系统的操作系统,将使数控系统拥有更好的多任务调度能力和更强的实时性;③嵌入式数控系统的开发是一个从底层硬件到上层软件的独立开发过程,可以针对当今数控系统特点和开放性的特征要求,根据嵌入式系统的特点,来构建适合于嵌入式应用的数控系统开放式架构,与基于PC 的数控系统相比,它将有更好的稳定性和开放性。
1 基于MCU + DSP双CPU 架构的硬件平台搭建
根据数控系统多任务的运行特征,针对系统任务运行实时性的特殊要求,以及嵌入式系统的特点,文中采用MCU + DSP的双CPU 架构来构建嵌入式数控系统的硬件平台。 MCU 的主要功能是负责运行系统中与管理相关的任务,是系统的主控制CPU; 而DSP 主要负责运行插补运算等运算量较大、对任务的实时性要求较高的任务,专用于繁重的插补运算,减轻主控制CPU 的负担。 本数控系统的设计,MCU 选用MOTOROLA公司生产的MC68K 系列的MC68F375微控制器,DSP则选用NOVA 生产的DSP运动控制专用芯片MCX314。
1.1 嵌入式微控制器MC68F375简介
MC68F375是由MOTOROLA 公司推出的高速32位微控制器,它具有速度快、并行处理能力强和片上资源丰富等特点,适用于各种控制场合。 芯片支持BDM(background debug mode)模式,通过简易的专用电缆接口,可以直接对微控制器系统进行仿真开发; 也可采用全功能的在线仿真器进行实时开发。 同时,MC68F375非常适合运行多用户、多任务操作系统,使其更容易做到不死机。
MC68F375的片上资源主要包括: 系统集成模块(SIM ) ; 8 KB 掉电保护SRAM; 8 KB 掩模ROM; 10位队列式的模数转换器(QADC64) ,16路A /D 转换模块具有强大的数模转换控制功能; 队列式串行通信模块(QSMCM) ,可以方便地实现同步、异步通信功能; 可构造时钟模块(CTM4) ,具有多种强大的定时、计数和脉冲调制功能; 时间处理单元(TPU ) ,分辨率高达250ns,可对各种事件进行快速的智能处理,同时集成PWM 算法及各种输入捕捉算法; CAN 控制模块( TouCAN ) ,能方便地实现工业自动化等场合的现场总线控制。
1.2 DSP专用运动控制芯片MCX314简介
MCX314是NOVA电子有限公司研制的DSP运动控制专用芯片,性能优良,接口简单,编程方便,工作可靠,可广泛用于数控机床及机器人等领域的运动控制。芯片能与8位或16位数据总线接口,通过命令、数据和状态等寄存器实现4轴3联动的位置、速度、加速度等的运动控制和实时监控,实现直线、圆弧和位元3种模式的轨迹插补,输出脉冲频率最高达4MH z。 每轴都有伺服反馈输入端、4个输入点和8个输出点,能独立设置为恒速、线性或S曲线加/减速控制方式,并有2个32位的逻辑、实际位置计数器和状态比较寄存器,实现位置的闭环控制。
与通用DSP相比,MCX314更适合数控系统的设计,是一种专用的运动控制芯片,主要表现在3方面:① 插补算法(三轴直线、平面圆弧和位模式插补)、运动控制和位置控制主要由硬件来实现,主控制CPU 通过接口对MCX314进行相应的工作方式、速度和加速度的设置,然后将运动的起点和终点传送给MCX314,之后不再需要主控制CPU 的干预就能自动完成从起点到终点的插补运动控制,减少了运行过程中与主控制CPU 频繁的数据交换,也减少了相应软件的设计,缩短数控系统的开发研制周期,且能提高系统的运行速度; ②片上集成有专用于运动控制的I/O接口,如硬件限位、急停等,可简化数控系统的硬件设计,提高系统运行的稳定性; ③与主控制CPU 之间的通讯简单,易于协调,对主控制CPU 来说,MCX314更像是一个外围功能芯片,通过设置一定的地址和读写控制字就能实现对MCX314的控制。
1.3 嵌入式数控系统硬件平台的搭建
图1为本文研究的嵌入式数控系统硬件平台模块图,以MC68F375和MCX314为硬件平台的核心,根据数控系统的功能特点和工作特性要求,分别扩展了如下多种功能模块。
图1 嵌入式数控系统硬件平台模块
(1) 扩展FLASH 模块,MC68F375片上集成有8K字节的掩模ROM,但这对于数控系统的运行是远远不够的,必须进行片外扩展。 在系统设计中,主要是在片外扩展了2片512K字节的FLASH,主要用于存储系统运行所需的程序代码,语言字库,需要断电和长期保存的系统参数、刀具参数、补偿参数、机床参数以及数控加工程序等。
(2) 扩展RAM模块,虽然MC68F375片上集成有8K字节的SRAM,但由于数控系统不同于小型的嵌入式系统,在运行过程中需要有充足的RAM 空间,特别是由于运算和RTOS的多任务调度以及文件系统的运行都将产生大量的堆栈、全局变量和局部变量,而且由于系统内置软PLC( PLC的内部继电器R、定时器T 和计数器C)的运行也将占用一部分RAM 空间,因此在数控系统设计时,在片外扩展了2片512K字节的静态高速RAM,用于扩展RAM空间,增强系统的运行效率和实时性。
(3) 时钟控制模块,也就是日历系统,需要在系统断电时能够长时间的保持日历的工作状态。 当系统工作时,进行到文件相关操作时,如在数据传输或用户在对系统进行编程、二次开发时,都需要数据以文件的形式进行存储或传输,需要记录下文件编写的日期,以便文件系统的管理。
(4) LCD控制模块,主要用于完成液晶显示的控制刷新和与CPU32的数据交换,将机床的当前状态、系统信息、坐标信息、参数信息和图形仿真信息等通过LCD向用户显示出来,属人机交互的一部分。
(5) 键盘控制模块,它是数控系统交互的重要环节,键盘扩展电路有多种实现方式,设计采用CPLD 来实现专用键盘接口芯片的设计方案,这种设计方案,既保证了设计的通用性和灵活性,同时所有的键值判断等可通过CPLD 编程来实现,最大限度节省了MC68F375的资源。
(6) 数据采集模块,当今的数控系统越来越重视对现场加工条件和机床工作状态的实时监控和诊断,本系统数据采集模块设计主要是基于MC68F375片上集成的16 路QADC,外加抗混滤波单元和信号调理单元。
(7) 主轴控制模块,由D /A控制芯片和编码器反馈高速输入口组成,能够完成对单极性和双极性模拟变频主轴的控制。
(8) 网络通讯模块,为了适应数控系统网络化的发展趋势和数控机床远程控制和远程诊断的发展需要,设计采用Realtek公司的10Mbps网络通讯芯片RTL8019进行系统网络接口模块的设计,为机床的网络化提供了硬件基础。
(9) CAN 总线接口,主要由CAN 总线收发器和光藕元件组成,与MC68F375 片上集成的TouCAN 模块一起构成数控系统CAN 总线通讯功能的硬件基础。
(10) BDM 调试接口,用于数控系统的开发调试阶段,在上位计算机上,开发人员通过BDM 可方便地对数控系统进行开发调试。
(11) COM 串行接口,主要利用MC68F375 片上集成的QSM 的SC I子模块,外加芯片驱动电路(如MAX238等) ,构成数控系统与个人计算机之间串行通讯的硬件基础。
(12) I/O接口,主要完成内置PLC对外部机床电气的控制,电机控制输出和其他功能模块的对外输出,由驱动元件、继电器元件和光耦隔离元件等组成。通过上面对嵌入式数控系统硬件框架的搭建和各个硬件功能模块的分析可知,本文设计的嵌入式数控系统除保留了传统数控系统的功能外,特别加入了数据采集模块、网络通讯模块和CAN 总线通讯模块,通过这3个模块,设计出的数控系统能很方便地实现与现场其他设备的总线连接和网络通讯,更易于实现数控设备的远程诊断、监控以及网络化和数字化制造。
2 基于RTOS的嵌入式数控系统软件平台的研究
以前的数控系统的软件结构设计通常通过一个无限循环来判断任务的标志量,通过中断(定时中断和键盘中断)来激活新的任务,进入固定的任务中断程序入口,来实现任务的调度。 在这种单任务且无任务运行环境调度方式下,系统的大多数时间被任务等待的无限循环占据了,在任务处理的过程中,其他的同等级的任务无法使用CPU 的资源,无法进行任务之间有效的上下文切换,导致了系统的实时性十分不可靠。 同时,如果任务在执行过程中需要等待信号,或延时信号处理,当这种延时不可预计的情况下,就可能占据大量的系统时间,就会造成对系统资源的大量浪费,导致无法响应更紧急的任务,这种无限的等待情况会导致许多不可预计的后果。 针对单任务系统的软件架构的不足,本设计在数控系统软件构建中引入基于VxWo rks嵌入式实时多任务操作系统(RTOS)作为系统的任务调度基础。
2.1 嵌入式实时操作系统VxWorks特点简介
VxWorks操作系统是美国W indR iver公司设计开发的一种嵌入式实时操作系统( RTOS)。 系统具有如下特点: ① 内核可裁剪,具有极好的伸缩性; ②成熟高效的任务调度机制,支持优先级和时间片轮番调度法; ③ 任务间通讯手段灵活快速,支持信号量、消息队列和互斥等多种通信方式; ④ 丰富的板级支持软件包( BSP) ,缩短了系统开发周期,减少了开发的工作量; ⑤ 强大的网络开发支持,简化了网络开发的工作,系统集成TCP / IP协议的支持; ⑥ 支持多种文件系统;⑦ 具有集成开发环境TORNADO 的支持,界面友好,能够对系统的任务调度和占用的时间片进行实时监控,提高系统的利用率,充分发挥系统性能; ⑧ 功能可扩展,根据千变万化的嵌入式应用,除提供基本的内核功能外,还可以根据需要加入功耗控制、嵌入式文件系统、嵌入式GU I系统和嵌入式数据库,用户也可以根据自己的需要利用VxWorks的功能扩展接口,开发出自己的功能; ⑨ 内核可剥夺性,即当前系统总是运行就绪状态下优先级最高的任务。
2.2 基于VxWorks的嵌入式数控系统层次化软件体系结构设计
本文设计的嵌入式数控系统的层次化软件体系结构如图2所示,它由以下3部分组成。
图2 基于VxWorks的嵌入式数控系统软件体系结构
(1) 底层硬件驱动层。 硬件驱动程序的主要功能是为上层软件提供良好的函数调用接口,完成对系统硬件资源的抽象,屏蔽掉底层的硬件细节。 通过抽象底层硬件的物理行为,使上层用户实现对硬件功能的调用。 硬件驱动程序单独分层的编程思想为系统的升级提供了良好的条件,当系统硬件设计发生变化时,上层软件不用做过多的修改,仍可以通过原有的接口实现硬件的调用,只需要修改底层驱动就可以了。 另外,硬件驱动程序的提出能够方便项目开发,软硬件协同进行设计。
(2) 实时操作系统层。 设计采用了实时性操作系统VxWorks作为系统任务调度与开发平台,本层的主要功能是处理由外部或内部事件引发的中断、设备驱动层的激活以及执行任务的调度。
(3) 系统应用层。 它是在VxW orks的基础上,通过对VxWorks的接口函数的系统调用,实现系统的具体的应用功能,如交互模块、控制模块等。 在本设计中,各种任务以应用程序的形式集合在应用层,服务于不同的功能模块。 VxW roks根据每个任务的要求,进行资源管理,对MC68F375、MCX314、存储器和外设的资源进行合理分配,实现消息管理、任务调度和异常处理等工作。 在VxW orks的支持下,每个任务都被分配一个优先级,根据优先级别的高低,动态切换各个任务,以保证实时性要求。
可以看出,设计采用分层型模块化软件结构和实时性操作系统相结合的软件设计方案,这种设计方法的优势在于可以实现软硬件设计的并行开发,VxWorks作为系统的硬件驱动层与应用层之间的桥梁,使应用层的函数调用完全屏蔽掉了硬件细节,层与层之间只需要通过定义好的接口函数进行通讯,使得上层的软件开发不必顾虑硬件设计。 这种软件设计模式,实际上是软硬件交叉进行、并行设计的过程,在设计的开始阶段,通过软硬件的协商,定义系统的总体设计方案,一旦系统的体系结构设计完成,软硬件设计就可以独立进行了。 等软硬件设计完成后,再集成一体进行集成测试,使系统的开发周期缩短到最小,极大地提高了嵌入式系统的开发效率。
2.3 基于VxWorks的数控系统多任务调度机制的实现
2.3.1 数控系统中任务的划分
数控系统是一个专用性很强的多任务调度运行系统,按照任务运行实时性强弱的划分方法,一般将数控系统的任务划分为管理任务和控制任务2大类。 如图3所示,其中控制类任务的工作与数控加工直接相连,对实时性要求高,而管理类任务的工作对实时性的要求相对较低。 系统的控制任务又可细分为位置控制、轨迹插补、指令译码、I/O 控制、误差控制、状态实时监控与故障诊断等子任务; 系统的管理任务则包括人机交互管理、显示管理、数据管理、通信管理和网络管理等子任务。 而且,在实际的开发设计中可根据需要对各个子任务进行进一步细分,形成一个任务集合,任务集合中的任务都必须根据外部事件及时被激活运行,同时结合具体的加工情况,由V xWorks统一调度,动态地对任务进行优先级控制,以适应不同加工任务的要求。当有高优先级的任务进入任务列表时,内核通过优先级抢占调度方式切换到高优先级的任务; 当同等优先级的多个任务进入任务列表时,内核通过时间片轮转调度法实现多任务的并发控制。
图3 数控系统中任务的划分
2.3.2 数控系统中多任务调度机制的实现
图3中划分出的数控系统任务由VxWo rks进行统一调度,由前面分析可知VxW orks支持优先级和时间片轮番调度法,现将图3中的控制任务按照优先级由高到低的顺序排列如下: 位置控制、轨迹插补、误差控制、I/O 控制、指令译码、实时监控、故障诊断; 而管理任务的优先级要比控制任务的优先级都低,系统设计中对管理任务的5个子任务采用时间片轮番调度法,即它们拥有相同的优先级,任务调度的示意如图4所示。 在系统完成初始化后自动进入时间分配环中,在环中依次轮流处理各项管理任务。 在环中轮流处理各项管理任务时,只要当前时间片结束,不论当前任务是否完成,都要暂时释放CPU,把CPU 让给另一个就绪的任务,直到再次轮到该任务的时间片时,再重新占用CPU,自动跳转到断点处继续执行。 而对于系统中的实时性强于管理任务的控制任务则按优先级排队,分别分配不同的优先级,由于环外的任务优先级均高于管理任务,环外的任务可以随时通过优先级抢占的任务调度方式中断环内的任务执行,占用系统资源。 当有多个同等级的任务进入任务就绪队列时(如零件加工时多轴的位置控制任务),根据时间片轮转调度方式形成新的当前任务调度环,保证同优先级的任务并发进行。 同理,这种任务的抢占和调度机制也适用于其他不同优先级的任务。
图4 基于VxW orks的数控系统任务调度机制示意
3 数控系统引导型二次开发平台理论模型的研究
数控系统二次开发功能的强弱在一定程度上代表了其开放性的好坏,根据嵌入式系统的结构模式、设计特点和数控系统的功能特征,本文设计了一种适合嵌入式数控系统、具有引导功能的数控系统二次开发平台的理论模型,如图5所示。 二次开发平台采用一种引导开发的模式,借助于预先定义的各种信息库,将使用特殊语言描述的用户功能要求转换成信息库中特定策略的组合,然后通过与MCU 相匹配的代码编译器,将策略描述翻译并通过计算机的并口经由下载电缆传送至数控系统的仿真开发接口。
图5 二次开发平台的理论模型
二次开发环境包括语言描述和引导设置2种开发方式。 语言描述方式采用结构化的功能机制,预先定义出系统扩展的算法结构,用户只需根据算法的提示加入自己功能要求的描述。 二次开发平台提供独立的结构化描述语言,采用面向对象的编程思想,以功能对象群组的构成方式来完整描述数控组件对象的特定工作状态。 语言描述方案,可以通过灵活定义的算法规范深入系统内部的软件构成细节,适用于系统底层策略方案的自定义配置。 引导设置采用开发向导的形式以图形化询问界面来定制用户的扩展需求,一般用于较为简单的扩展开发。
4 数控系统的设计实现
成功搭建出了以MC68F375+ MCX314为基础的硬件开发平台,规划出了以嵌入式实时操作系统(RTOS)VxWorks为核心的层次化系统软件体系结构和任务调度机制,开发出了TDNCM4 数控系统原型机,该系统能用于控制车床、钻铣床,可控制4个进给轴和1个模拟主轴三轴联动,具有直线插补和平面圆弧插补、螺旋线插补和空间圆弧( C IP) 插补等控制方式,能进行螺纹加工、变距螺纹加工等,可通过Internet进行数据传输和网络化制造,并将该系统应用于TDNC-M40A 四轴加工中心的设计上,如图6 所示。 经实验证明,该数控机床工作稳定,性能可靠,主轴转速最高可达6 000 r/m in,切削进给X、Y、Z 可达0~10 000mm /m in,定位精度X、Y、Z 可达? 0.005mm,重复定位精度X、Y、Z 可达? 0.003 mm,目前已被应用于天津大学数字化制造与测控技术研究所的一般金属切削加工和工业陶瓷加工的实验。
图6 TDNC-M40A四轴加工中心
5 结 语
本系统设计的最大特点是将嵌入式技术应用到数控系统的设计中来,针对基于PC 的数控系统在稳定性、实时性等方面的不足,提出利用控制性能更加稳定和优异的MCU 以及运算性能更加强大的专用DSP芯片,为双CPU 架构构建嵌入式数控系统的硬件平台,利用性能优异的嵌入式实时操作系统VxWo rks作为数控系统的操作系统来统一调度系统运行的各个任务,使系统拥有了更佳的实时性和稳定性,初步研究了数控系统引导型二次开发平台的理论模型,开发设计出TDNCM4数控系统的原型机,探索出了一条数控技术研究和开发的新渠道-嵌入式数控技术。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:基于嵌入式技术的数控系统开发设计