基于多核ARM的数控系统的设计

发布者:花开堂前最新更新时间:2021-05-18 来源: eefocus关键字:数控系统 手机看文章 扫描二维码
随时随地手机看文章

1 绪论


随着嵌入式技术的发展,嵌入式处理器 ARM 广泛应用于数控系统。ARM 是英国剑桥从事基于 RISC(Reduced Instruction SetComputer)技术芯片设计开发,作为知识产权供应商 ARM 公司设计的芯片。根据各自不同的应用需要,在芯片外适当添加外围电路,从而形成更具特色的 ARM 处理器。ARM 芯片具有RISC 体系的一般特点,如:具有大量的寄存器。绝大多数操作都在寄存器中进行,通过 Load/Store 的体系结构在内存和寄存器之间传递数据。寻址方式简单。采用固定长度的指令格式。目前的 ARM 内核有ARM7、ARM9、ARM9E、ARM10E、ARM11、SecurCore 等多种类型。以最典型的 ARM920T 为例,该型内核具有400 多 MHz 的主频在国内低档数控系统应用最广。但是随着数控技术的发展,加工对象的复杂度增加,CPU处理运动控制插补运算的负载更大。要解决这一问题,除了更换更高性能的 ARM 芯片,就只能往多核方向发展。本文主要论述多核心 ARM 的数控系统的设计。


2 数控软件的任务分析


整个数控系统的功能可以划分为人机交互、数据预处理、运动控制、伺服控制、逻辑控制和辅助控制五大部分。人机交互为机床的准备工作提供数据和信息,反馈机床的运行状态,监控整个加工过程。数据预处理主要包括数据指令的译码,刀具的长度补偿、半径补偿、螺距补偿、间隙补偿等插补前的预处理工作。运动控制主要控制位移,速度,加速度或三者的组合,主要是机床各运动轴的插补运动控制和主轴速度、主轴定位的控制等。逻辑控制分为简单的逻辑输入、逻辑输出及组合逻辑控制,主要是主轴电机的正反转、电机停止、冷却泵电机的启动、停止控制等。在嵌入式实时系统中,通常把五大部分的数控系统功能划分为:插补任务、译码任务、PLC任务、人机交互界面任务,底层辅助任务。如图 1-1 所示:在单个CPU 上运行,各个任务的负载和实时等级。插补任务的实时性和负载最高达 43%;人机交互任务其根据不同用户的需求,不同交互功能占的负载不同,最高达 24%,但是实时性要求最低;底层辅助任务支撑各个任务的运行。根据这些分析数据,我们对各个数控任务进行多 CPU 的划分。



3 多核 CPU 软件架构


多核 CPU 的架构是日益严苛的运算要求的必然结果。多核 CPU 并不仅限于双核,多个核结构更灵活。嵌入式多 CPU 系统将一个特定的任务分割成较小的任务由多个处理器并行地执行,因而具有速度优势.采用嵌入式多 CPU 系统使得信息处理模块化,各个 CPU 采集分配的数据量并独立处理信息,从而可以减轻单个CPU 的负担,提高系统的信息处理速度和处理能力。根据数控系统的任务,本文引入三个 ARM+DSP 的结构,对原来单个 CPU 的数控系统进行升级改造。如图 2 所示:把插补任务划分为精插补任务和粗插补任务,粗插补任务主要是对译码数据的坐标点进行一定的速度规划和细分,精插补任务需要对粗插补数据进行曲线拟合,速度规划,发点控制等,需要更大的浮点运算要求。因此把精插补任务划分到独立的 DSP 芯片,粗插补任务与译码任务一起划分到单一个 ARM 上。人机交互任务和逻辑控制(PLC)任务分别个占一个 CPU。各个任务的数据从原来的单 CPU 内部通信,变更为现在 CPU 之间的通信,所以通信需要经过一个握手应答协议,以协调不同 CPU 之间的时序。


该软件划分的优点主要有:


(1)原来单 CPU 模式下,由于人机交互任务的复杂性,导致负载的不确定性,使得软件规模和功能受到很大的限制,任务优先级的低下,使得该任务容易受其他多任务的影响而不稳定,但在单独占用 CPU 的情况下,资源充足,可以实现更强大更稳定的性能。


(2)独立 CPU 的 PLC 功能,是 PLC 模块独立运作的基础。现在在国外装备行业,独立的 PLC 已经成为主流产品。


(3)译码速度的提高,可实现更多的程序译码的前瞻功能。


(4)DSP 提高强大的浮点运算能力,可实现更高效的插补运算。



4 多 CPU 的数控主板设计


基于以上的软件功能分析,本文设计的多 CPU 硬件是基于 ARM9、DSP6713、OMAPL138、FPGA 为核心,采用多 CPU 体系结构来设计,系统采用两片 ARM9、一片 DSP 和一片大容量 FPGA,以及各种不同功能的存贮器、相关外围器件组成系统的主控 CPU 板。系统中各 CPU 与相应的存贮器构成独立的 CPU 子系统。主 ARM系统进行文件系统管理、系统参数管理、人机界面管理、USB 接口管理、系统逻辑任务管理等。DSP 子系统负责插补算法、GSK-LINK 总线部分管理工作等。从 ARM 子系统负责 PLC 逻辑任务。FPGA 利用内部双口RAM 为各 CPU 子系统提供数据交换通道,FPGA 管理系统的各种外部设备,如 TFT 液晶显示器、主轴电机、机床 IO、键盘管理、串口管理等。根根据上面功能划分,同时考虑到后续的升级、维护等工作,将硬件划分为几个块,具体内容在硬件模块里有详细的描述。大致内容包括:ARM9 处理器、DSP、58M/SDRAM、256K/NVRAM、电源电路、FPGA、LCD 数据口、DC 电路、缓冲电路、光电隔离器件、USB 通讯电路,AVR 对按键扫描电路等。简易框图如图 3,实物图如图 4:




主要元器件说明如下:


(1)ARM9_CPU:采用 ARM920T 模型,采用三星 2440 芯片。


(2)FPGA:采用 Altera 公司的产品,负责中断控制和机床 I/O 信号,机床 I/O 信号初步定为 48-IN/48-OUT。


(3)DSP6713:为 TI 的 DSP6000 系列,主要负责插补算法等工作。


(4)其他:除脉冲串发生器以外,采用 181 低速光电隔离。采用一个 AVR 单片机负责键盘、LED 等信号处理


5 结论


采用多 CPU 结构的数控系统,在数据运算能力方面大大增强,使得更多更强 的数控软件功能得到发展。本文所设计的主板已经成功应用于广州数控 GSK-218TD,GSK-980TE2 等数控系统上,获得良好的市场反应和非常好的经济效益。


关键字:数控系统 引用地址:基于多核ARM的数控系统的设计

上一篇:基于ARM+μC/OS-Ⅱ的斜井防跑车控制器设计
下一篇:基于嵌入式ARM9的USB通信设计与实现

小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved