历史上的今天

今天是:2024年09月04日(星期三)

正在发生

2020年09月04日 | 基于ARM和FPGA的开放性计算机数控系统

发布者:RainbowGarden 来源: elecfans关键字:ARM  FPGA  计算机数控系统 手机看文章 扫描二维码
随时随地手机看文章

本文提出了一种基于ARM和FPGA的嵌入式数控系统设计方案。详细介绍了ARM系统的软硬件设计,基于FPGA的硬件精插补实现方法以及数控系统的加减速控制策略。该系统将ARM运行速度快、计算精度高的优点和FPGA内部逻辑的在线可重构性等特点相结合,提高了资源利用率和实时性,增强了数控系统的灵活性。仿真和实践结果表明,整个控制系统具有实时性好、低成本、高性能等优点。


现有的数控系统中多采用工控机加运动控制卡的计算机数控系统方案进行运动控制器的设计。随着工控机整体功能日趋复杂,对运动控制系统的体积、成本、功耗等方面的要求越来越苛刻。现有计算机数控系统在运动控制方面逐渐呈现出资源浪费严重、实时性差的劣势。此外,数控系统的开放性、模块化和可重构设计是目前数控技术领域研究的热点,目的是为了适应技术发展和便于用户开发自己的功能。本文基于ARM和FPGA的硬件平台,采用策略和机制相分离的设计思想,设计了一种具有高开放性特征的嵌入式数控系统。该数控系统不仅具备了以往大型数控系统的主要功能,还具备了更好的操作性和切割性能,而且在开放性方面优势更为突出,使数控系统应用软件具有可移植性和互换性。


1 基于ARM和FPGA的嵌入式数控系统整体方案

基于ARM和FPGA的嵌入式数控系统结构如图1所示。按照模块划分的思想,本文将控制器分为人机交互、插补算法和通信三部分。系统中ARM采用三星公司推出的16/32位RISC微处理器S3C2440A,它采用了ARM920T内核,核心频率高达400MHz。FPGA采用Xilinx公司Spartan 3E系列的XC3S250E。

基于ARM和FPGA的开放性计算机数控系统

2 S3C2440A控制系统

ARM作为数控系统的控制核心主要负责对从数据存储器中读取或直接从上位PC或网络获得的零件加工代码和控制信息进行译码、运算、逻辑处理,完成加工数据的粗插补以及人机界面和数据通信。ARM系统是整个数控系统的控制核心,在嵌入式操作系统的管理下,采用分时处理的方式实现整个系统的信息处理和粗插补运算,通过键盘、触摸屏等输入装置输入各种控制指令,对数控系统的实时运行状态通过LCD、指示灯等显示,实现人机友好交互。基于S3C2440A控制器有各种通信接口,包括RS232、RS485、以太网口、USB等接口模块。通过这些接口实现文件传输和网络控制。


嵌入式数控的软件系统总体结构如图2所示。系统的软件结构主要分为两部分:操作系统软件和数控应用软件。由于数控系统是个实时多任务系统,实时性要求很高,为保证各个任务的协调执行,本系统采用了μC/OS-II实时操作系统作为软件平台。

基于ARM和FPGA的开放性计算机数控系统

要实现该操作系统在S3C2440A微处理器平台上的正常运行,需要修改与处理器类型有关部分的代码,操作系统移植需要完成的工作是改写三个文件,即改写文件0S_CPU.H、0S_CPU_A.ASM和OS_CPU_C.C。其中0S_CPU.H包括了用#define语句定义的,与处理器相关的变数、宏和类型。0S_CPU_A.ASM中定义了几个汇编语言函数,包括中断服务程序的中断向量地址等。如果某些C编译器允许在C语言中直接插入汇编语言语句,就不一定需要,用户可以把所需的汇编语言代码直接放到OS_CPU_C.C文件中。


3 ARM和FPGA的接口设计

为使系统能够按照预期设计良好工作,首先要从硬件上实现ARM和FPGA之间的可靠通信。本文采用的方案是在FPGA上实现SRAM时序,将FPGA作为一块特殊的内存设备挂接到ARM的内存地址空间。这样在ARM端只需要编写SRAM的驱动程序就可以实现对FPGA端的数据写入和读取。


3.1 SRAM时序

SRAM时序分为读时序和写时序两种。当CPU对SRAM进行读操作时,首先会在地址线上写入正确的地址信号,接着是对SRAM芯片的片选信号,然后是对芯片的读信号,之后经过一定的振荡期后CPU在数据线上读到稳定的有效数据。


当CPU对SRAM进行写操作时,首先会在地址线上写入正确的地址线号,接着是对SRAM芯片的片选信号,然后是对芯片的写信号,在写信号上升沿之前CPU会在数据线上准备好有效数据,以供SRAM芯片在写信号上升沿将数据写入相应的地址单元。


3.2 FPGA端SRAM实现
ARM和FPGA的通信需要的接口信号有地址线A0-A15、数据线D0-D15、片选信号nCS,读信号nRD和写信号new,每次需要实现16位数据的读写。用Verilog硬件语言描述SRAM时序如下:
   

基于ARM和FPGA的开放性计算机数控系统

可知只有在片选信号、读信号都拉低而写信号仍为高的情况下,才在data线上输出地址线上对应单元的数值,其他情况下FPGA都将data线置为高阻态,放弃对data线的控制。

4 基于FPGA的DDA精插补器设计

随着FPGA器件及其开发技术的日臻成熟,采用FPGA实现运动控制的方案显示出巨大的潜力。由于FPGA的设计是并行的、多线程,而且具有在线可编程能力,兼备了速度快和成本低的优点,同时克服了专用处理器灵活性方面的不足。基于FPGA的DDA精插补器相对传统的软件插补具有强大的优势。


4.1 数字积分插补算法

目前比较成熟的数控插补算法有逐点比较法、最小偏差法和数字积分法等,数字积分法又称数字微分分析器(Digital DifferenTIal Analyzer,DDA)。采用该方法进行插补,具有运算速度快、逻辑功能强、脉冲分配均匀等特点,可实现一次、二次甚至高次曲线插补,易于实现多轴联动。


数字积分插补算法是将函数的积分运算转换成变量的求和运算。如果所选择的脉冲当量足够小,则用求和运算代替积分所引起的误差可以不超过允许的数值。采用两个寄存器(函数寄存器和累加寄存器)和一个全加器构成数字积分器,将单位周期选得足够小,每单位周期都向累加器累加函数寄存器中的数值,如果累加器溢出,就向外发送脉冲,实时地改变函数寄存器的值,就可以完成步进电机的调速。DDA插补控制器设计的硬件描述语言程序的流程图如图3所示。

基于ARM和FPGA的开放性计算机数控系统


4.2 数字积分插补的FPGA实现
采用有限状态机的设计方法,每个轴的数字积分插补均由一个三状态机的积分累加器完成。本系统的FPGA开发环境为Xilinx公司的Xil inx ISE,并结合ModelSim仿真软件对整个系统进行了全面的功能验证。如图4所示为DDA插补模块的顶层RTL级原理图,由图5可知DDA插补模块的输入信号为各轴的起始坐标以及时钟信号和启动信号,输出信号为各轴的脉冲信号和方向信号。

基于ARM和FPGA的开放性计算机数控系统


运用ModelSim仿真软件对DDA插补模块进行仿真验证。测试数据的起点坐标为(0,0,0)终点坐标为(8,15,11),仿真结果如图5所示,显示系统很好的完成了三轴的脉冲分配。


4.3 加减速控制模块

加减速控制是数控系统的关键技术之一,也是实现数控系统高实时性的瓶颈。数控系统中,为了保证机床在启动或停止时不产生冲击、失步、超程或振荡,必须对进给电机的脉冲频率或电压进行加减速控制。即当机床加速启动时,保证加在电机上的脉冲频率逐渐增加;而当机床减速停止时,保证加在电机上的脉冲频率逐渐减小。目前,电机加减速的常用控制方法是梯形加减速控制和S形加减速控制。本次设计采用两种控制方案以适应不同工作场合的要求。


4.3.1 梯形加减速

梯形加减速是指在加减速过程中加速度为常数,速度曲线为梯形的加减速过程。梯形加减速控制算法简单、易于实现,但在加减速过程中加速度曲线不连续会导致驱动机构的振动和冲击。正常情况下梯形加减速运动过程如图6所示分为加速段、匀速段和减速段三个阶段。

基于ARM和FPGA的开放性计算机数控系统


图7所示为ModelSim对梯形加减速模块的仿真结果,可以看到插补器输出的脉冲速度曲线呈现梯形,输出脉冲的频率的大小随速度的变化而变化,实现了电机的梯形调速。

基于ARM和FPGA的开放性计算机数控系统


4.3.2 S形加减速
S形加减速是指在加减速时,加速度导数为常数,速度曲线为S形曲线的加减速过程。通过控制加速度导数来避免加速度突变,减小加工过程中由于加速度突变引起的机械系统振动。S形曲线速度控制可以得到平滑的速度曲线,但算法复杂,运算时间长。

基于ARM和FPGA的开放性计算机数控系统


S形加减速中加速度相对加速度导数的变化规律相当于直线加减速中速度相对加速度的变化规律。如图8所示为S形曲线加减速的曲线图,图中从上到下依次为速度曲线、加速度曲线以及减速度曲线。从图中可以看出,正常情况下S形加减速分为:加加速段、匀加速段、减加速段、匀速段、加减速段、匀减速段和减减速段七个阶段。加速度连续,调速光滑,不会导致驱动机构的振动和冲击。

基于ARM和FPGA的开放性计算机数控系统

图9所示为ModelSim对S形加减速模块的仿真结果,可以看到插补器输出的脉冲速度曲线呈现梯形,输出脉冲的频率的大小随速度的变化而变化,实现了电机的S形调速。


5 结束语

本文给出了一种基于ARM和FPGA的开放性的嵌入式数控系统,突破了传统的计算机数控系统架构,采用ARM处理器S3C2440A和 FPGA器件XC3S25 0E和μC/OS-II嵌入式实时操作系统组成的数控系统软硬件平台,充分利用了ARM微处理器的高速运算能力与FPGA的快速配置能力,大大减少了系统的外围接口器件,并具有良好的稳定性、模块化、可扩展性、可移植性等特点,有利于实现数控系统的开放化和网络化,有效地降低了系统成本,适合我国数控系统发展的需要,具有广阔的应用前景。

关键字:ARM  FPGA  计算机数控系统 引用地址:基于ARM和FPGA的开放性计算机数控系统

上一篇:基于ARMv7M的微控制器内核CortexM3研究 CortexM3异常处理
下一篇:对ARM异常中断的集中情况进行总结,并给出了一些解决方法

推荐阅读

众所周知,精密减速器严重制约了我国工业机器人的发展,特别是在我国工业机器人逐渐产业化时期,工业机器人精密减速器的关键技术突破显得更加迫切。国务院印发的《中国制造 2025》提出,“突破机器人本体、减速器、伺服电机、控制器、传感器与驱动器等关键零部件及系统集成设计制造等技术瓶颈。”在机器人行业,小白都知道这样一个事实,全球工业机器人用...
据外媒报道,今年夏天,加拿大北阿尔伯塔理工大学(NAIT)的一名学生兼新手妈妈Emer Burke将刚出生的女儿从汽车座椅上抱出来之后发现,孩子的后背都被汗水浸透了。于是,Burke开始寻求设计一种更好的汽车座椅,能够知道孩子什么时候感到温度过高,或者什么时候不在自己伸手可及的范围内。(图片来源:techlifetoday.ca)Burke是NAIT生物医学工程技术专业...
一年前,余承东在HDC2019上发布HarmonyOS,鸿蒙用中文的意思可能有‘开天辟地’的意思,最接近的英语单词就是Genesis。但用汉语拼音表达鸿蒙太难发音了,我们取名HarmonyOS,希望给世界带来更多和平、方便。”而今,世界仍然不够和平,所有的物联网设备仍不够便利,所以我们期待HarmonyOS 2.0的到来,能够给中国的物联网界开辟出一片新天地。9月10日~12...
文/陈根两周前,造车的特斯拉突然成为了机器人圈内的热点,马斯克在特斯拉AI Day的结尾以一个彩蛋的形式宣布特斯拉正在开发的人形机器人,立时引起人们的热议。马斯克提到,这款人型机器人最早会在2022年投放市场,而就机器人行业发展现状来看,这无疑又是一个激进的目标。上周,特斯拉公开招聘与机器人相关的职位,包括机械工程师-执行器集成、机械工程师-制动器...

史海拾趣

问答坊 | AI 解惑

改善PCB阻焊膜厚度均匀性

改善PCB阻焊膜厚度均匀性…

查看全部问答∨

led显示的一点粗浅经验-转载

关于led显示的一点粗浅经验之谈 作者[秋雨]转载 [日期:2005-6-29 17:17:13] [字体:大 中 小] 这段时间有不少朋友在作led显示, 问了我不少问题, 一一回答总是找不到要点在此我把我几年来作led的一点经验总结以下,作为对大家回答, 希望对大家有 ...…

查看全部问答∨

基于DSP的液晶模块的显示原理及实现

1 硬件电路接口的设计 图1给出了液晶显示模块的硬件电路接口设计框图,该系统采用TI公司的TMS320F206芯片(以下简称F206),其内部带有4KB的FLASH存储器,可以根据系统需要外挂EEPROM作为外部程序存储区。 SED1335控制器是日本EPSON公司生产 ...…

查看全部问答∨

部分资料___原STC单片机生厂商 笙泉科技 Megawin_8051

部分资料___原STC单片机生厂商 笙泉科技…

查看全部问答∨

国内便携式血压计有哪几家做得最好?

小的刚刚进入这个行业,想问问国外及国内便携式血压计有哪几家做得最好?谢谢!…

查看全部问答∨

基于msp430g2553延时程序

#include \"msp430g2553.h\"#define  uint unsigned int//60us延时,8M的晶振void delay(uint z){    unsigned int i,j;    for(i = 0;i<60;i++)      for(j=0;j<z;j++) & ...…

查看全部问答∨

在全编译时出现hold time问题,跪求大侠知道

小弟最近在写FPGA程序,以前写过一些小程序,这次写的比较大的工程,用的是cyclone 3 的EP3C40的片子。在用这个片子时编译前还需要编写SDC文件,由于没有经验,就直接在class timming 内输入tsu、tco、th,在全编译时出现如附件中图片所示的warning ...…

查看全部问答∨

ADE7912: 内置SPI接口的2通道、隔离式Σ-Δ型ADC

本帖最后由 dontium 于 2014-2-18 15:39 编辑           ADE7912/ADE7913 是隔离式3通道Σ-Δ型ADC,将分流电流传感器用于三相电能计量应用。 数据和电源隔离采用ADI公司的iCoupler®技术。 ADE7912集成2个24 ...…

查看全部问答∨

相序检测

求助电路检测原理 …

查看全部问答∨

你希望邂逅怎样的我——eeworld app

我想大部分人都是手机不离手的,有时候手机总比电脑来的方便快捷些,那你想邂逅怎样的一个eeworld手机APP呢?她是什么样子,长着怎样的容貌?是仗剑天涯的侠客,在你需要的时候护你左后?还是一个温婉如水姑娘,在你挑灯夜读时,红袖添香?她又身怀 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

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

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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