当前位置:文档之家› 基于DSP和CPLD的运动控制卡设计与实现

基于DSP和CPLD的运动控制卡设计与实现

基于DSP和CPLD的运动控制卡设计与实现
基于DSP和CPLD的运动控制卡设计与实现

华中科技大学

硕士学位论文

基于DSP和CPLD的运动控制卡设计与实现

姓名:胡吉柱

申请学位级别:硕士

专业:计算机应用技术

指导教师:刘宏

2011-01-17

华中科技大学硕士学位论文

摘要

开放式体系结构的数控系统已成为当今数控技术发展的主要研究方向之一,其中,“计算机+运动控制卡”的模式已成为开放式数控技术发展的主流方向。在该模式中,运动控制卡的性能优劣成为影响数控系统整体性能的关键因素。

在分析与总结了当前国内外相关研究成果的基础上,针对运动控制卡的设计问题,提出一种基于数字信号处理器(Digital Signal Processor, DSP)和复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)联合控制技术的运动控制卡解决方案。在该解决方案中,运动控制卡采用PCI总线协议与计算机通信,实现了复杂轨迹运动的实时控制功能。在关键技术上,引入PCI总线控制器于CPLD片上集成技术,提高了频繁插拔型PCI总线设备的可靠性和安全性;研发了匀速输出状态可控FIFO(First Input First Output, 先入先出)的“漏水算法”,为用户端提供了更高效实用的API(Application Programming Interface,应用程序编程接口),使终端用户开发应用产品更加便捷高效,同时,保证了下层硬件输出控制的实时性与稳定性;采用DSP与CPLD复用RAM技术实现数据交互,极大的提高了带宽利用率;在高性能DSP上引入插补算法,实现了复杂轨迹坐标点的插补运算功能,使运动控制卡具备复杂轨迹控制信号的实时输出能力。

实验表明,基于DSP和CPLD的运动控制卡方案实现了高速、精确、实时、稳定的复杂轨迹运动控制,且接口广泛支持市面上多种类型的主流数控机构,是一款低成本、高性能及多功能的运动控制解决方案。

关键词:数控系统,嵌入式系统,运动控制,数字信号处理器,复杂可编程逻辑器件

华中科技大学硕士学位论文

Abstract

Open architecture CNC (computer numerical control) has become the popular trend of CNC technology, and the mode of "industrial computer with motion control card" is the mainstream of the development of open CNC technology. In this mode, the performance of motion control card acts as one key factor to decide system performance.

After analyzing and summarizing the current status of related research both at home and abroad, a motion control card was designed, which is based on DSP (Digital Signal Processor) and CPLD (Complex Programmable Logic Device) joint control technology, using PCI bus to communicate with industry PC. It achieved real-time complex trajectory control. The integration technology of introducing PCI bus controller in the CPLD chip improved the reliability and security of frequently plugging PCI device. And we developed a "leakage algorithm" which controls FIFO in the condition of different read and write rates, it not only supplies more efficient and practical API interface , but also makes end users more convenient and efficient to develop applications, and ensured real-time and stability of the hardware output. The sharing of SRAM between DSP and CPLD for data interaction, greatly improved the bandwidth utilization. The introduction of the interpolation algorithm on high-performance DSP realized the complex coordinates computations of the interpolation trajectory. DSP make the motion control card gain the ability of real-time complex trajectory control.

Experimental results show that this motion control card based on DSP and CPLD can achieve high-speed, accurate, real-time and stable control of complex trajectory and its interface can support many types of CNC institutions in the market. So, this card is a solution of low cost, high performance and multi-purpose.

Keywords:C omputer Numerical Control, Embedded System, Motion Control,

DSP, CPLD

独创性声明

本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到,本声明的法律结果由本人承担。

学位论文作者签名:

日期:年月日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

保密□,在_____年解密后适用本授权书。

本论文属于

不保密□。

(请在以上方框内打“√”)

学位论文作者签名:指导教师签名:

日期:年月日日期:年月日

华中科技大学硕士学位论文

1 绪论

本章重点阐述“基于DSP和CPLD的运动控制卡设计”这一研究课题的诞生意义与相关背景,并将针对性的提出该运动控制卡的应用对象及设计要求。

1.1 课题背景及意义

传统产业受高新技术的推动,发生了深刻的变革。机械工业作为传统产业之一,受技术革命的冲击,产品结构和生产系统结构都发生了很大变化,通过采用微电子技术与微计算机技术,信息和智能与机械装置和动力设备结合,机械工业开始了一场大规模的机电一体化革命[1]。

随着计算机、传感器和电子电力等技术的发展,各个先进国家的机电一体化产品层出不穷。激光打标机、数控机床、数控医疗设备、印刷机械及智能机器人等许多门类产品每年都有新的进展[2]。机电一体化技术在提高工作效率、改善生活质量、降低能源与材料损耗、增强企业核心竞争力等方面起着极大的作用。

随着机电一体化技术的发展,运动控制技术作为其关键组成部分,也得到迅速的发展,各厂家不断推出运动控制技术的新产品[3]。运动控制卡能对各类采用模拟信号、数字信号、脉冲信号等信号控制的机电一体化设备进行高速精确实时的运动控制,它作为一款运动控制领域的关键产品,其执行速度、定位精度与稳定性将成为影响各机电一体化设备实际工作效能的决定性因素[4]。

本文提出一种基于数字信号处理器(Digital Signal Processor, DSP)和复杂可编程逻辑器件 (Complex Programmable Logic Device, CPLD)联合控制技术的高速运动控制卡,其当前应用针对振镜式激光打标机的定位控制,并为今后开发实用的、高精度的、低成本的医疗诊断设备控制器奠定基础。基于DSP和CPLD的运动控制卡的硬件接口和逻辑电路通过对CPLD芯片编程来实现,而运动控制算法通过在DSP 上编程来实现,该方案相比传统的采用单片机作为控制核心的运动控制卡而言,不仅克服了单片机运算速度慢、易受电磁干扰等缺点,还在灵活性和移植性等方面得到了很大的提高。

本课题受到国家自然科学基金“基本四元数的彩色图像边缘检测和分割方法研

华中科技大学硕士学位论文

究”(项目编号:60972098)的支持。

1.2 运动控制技术研究概况

运动控制技术起源于早期的伺服控制技术,即对机械运动部件的位置、速度等参数进行实时控制,使其按照预定的运动轨迹和参数进行相应的运动。早期的运动控制技术的发展伴随着数控技术、工厂自动化技术和机器人技术的发展,往往无需另外的处理器和操作系统支持,能够独立运行。这类控制器主要针对专门应用而设计,用户往往只需编写相应的代码文件到控制器中,控制器即可完成相关的动作。但是这类控制器开放性不佳,难以根据用户要求的改变而重组系统。因此通用运动控制器的发展成为市场的必然需求。

1.2.1 国外的应用与发展

国外对运动控制技术的研究起步较早,技术成熟,尤其以美国最具代表性。美国空军在1987年由美国政府资助,发表了著名的“下一代控制器(Next Generation Controller, NGC)研究计划”[5],其中的一项重要内容就是提出了“开放系统体系结构标准规格(Open System Architecture for Controls within Automation System, OSACA)”[6]。从1996年开始,美国几个大的科研机构分别对下一代控制器计划发表了相应的研究内容[7],例如,美国国际标准研究院在美国海军支持下提出了“增强型机床控制器(Enhanced Machine Controller, EMC)”;由美国通用、克莱斯勒和福特三大汽车公司联合研制了“开放式、模块化体系结构控制器(Open and Modular Architecture Controller, OMAC)”[8],它的目的是用更开放、更加模块化的控制结构使制造系统更加具有柔性和敏捷度。下一代控制器计划启动后不久便公布了一个名为“开放式、模块化体系结构控制器应用程序接口(Open and Modular Architecture Controller Application Programming Interface, OMAC APT)”的规范,并促成了一系列相关研究项目的启动与运行[9]。

20世纪90年代,受市场需求的推动,许多发达国家的通用运动控制技术发展迅速,应用广泛。通用运动控制技术的不断进步和完善,近年已经被越来越多的产业领域接受,市场规模不断扩大。ARC顾问集团的一份研究显示,世界通用运动控制市场已经超过40亿美元,并且很有可能在未来5年内综合增长率达到6.3%[10]。

目前国际上主流运动控制器可以根据结构分为三大类[11]。

华中科技大学硕士学位论文

⑴基于计算机标准总线的运动控制器。这种运动控制器是将各类开放体系的独立运动控制器和与计算机相结合,多采用计算机CPU或DSP作为处理器,它能独立的完成实时插补、伺服滤波控制、伺服驱动、统一外部I/O等功能,借助于计算机操作系统及其开放的函数库,设计者可依据不同需求设计成相应的各种控制系统。目前市场上的主流产品就是这种运动控制器。

⑵软件型开放式运动控制器。其硬件部分较为简洁,仅提供计算机与伺服驱动及外部I/O 间接口统一的功能,而其运动控制功能则全部交由计算机上的软件完成。该类运动控制器成本低廉,能够为开发商提供一个更加灵活的开发平台。用户可以根据自身需求,在操作系统的支持下,利用开放的运动控制内核开发出各类高性能运动控制系统。基于软件型开放式运动控制器开发的典型产品有美国Soft SERVO公司的基于网络的运动控制器、德国PA(Power Automation)公司的PA8000NT和美国MDSI 公司的Open CNC等[12]。

⑶嵌入式运动控制器。该运动控制器实质上是基于计算机标准总线的运动控制器的一个变种。这种产品采用了采用针式连接器来连接标准总线的计算机模块,针式连接器是一种更加可靠的总线连接方式,因此更加适合工业应用。在实际应用中,采用如工业以太网、RS485、PROFIBUS(Process Field Bus)等现场网络通信接口联来连接上级计算机或控制面板。这种运动控制器也可配置软盘和硬盘驱动器,甚至可以通过互联网进行远程诊断,例如美国ADEPT公司的SmartController产品是该类控制器的代表性产品[4, 10]。

1.2.2 国内的应用与发展

国内对该领域的研究起步相对较晚,但随着国力的增强,技术的进步,我国的运动控制技术与发达国家相比,差距也正在慢慢缩小。

目前国内已经涌现出众多开发生产运动控制器的厂家,如固高科技(深圳)有限公司、研华自动化公司、成都步进机电公司、摩信公司以及深圳雷赛公司等。而其中的固高科技(深圳)有限公司,是国内最早研发开放式运动控制器产品的专业公司,目前已推出一系列的运动控制器,如基于计算机标准总线运动控制器GT系列,基于软件型开放式运动控制器GO系列和嵌入式结构的运动控制器GU系列等,该公司代表了国内运动控制技术的最高水平[13]。

但整体上看,国内在完善智能控制系统以及与之配套的底层软件方面,现阶段

华中科技大学硕士学位论文

还处于相对封闭的阶段,灵活性还不够。用户在使用产品时,常常需要对许多硬件接口程序和各种运动控制功能进行重复性的开发和实现,很难在短时间内通过二次开发或重新组合来满足自身的需求,降低了工作效率。

目前,国内主流的运动控制器主要可以分为三类。

⑴以微处理器或单片机作为核心的运动控制器。这类运动控制器的缺点是速度较慢且精度不高,它的优点是成本相对较低。

⑵专用芯片作核心处理器的运动控制器。这类运动控制器结构比较简单,但这类运动控制器大多数只能输出脉冲信号,采用开环控制方式。因此对单轴的点位控制场合下,这类控制器是基本可以满足要求的,但对于要求多轴协调运动和高速轨迹插补控制的设备,这类运动控制器难以满足要求。

⑶基于PC总线的以DSP和可编程逻辑阵列(Field Programmable Gate Array, FPGA)/CPLD作为核心处理器的开放式运动控制器。其采用“PC+运动控制器”的模式,充分利用了DSP对数据的高速运算功能,并结合FPGA/CPLD的超强逻辑处理能力。它的优点是信息处理能力强、运动轨迹控制准确、开放程度高、通用性好等。

第一类运动控制器由于其性能的限制,在市场上所占份额较少,主要应用于一些单轴简单运动的场合。第二类运动控制器因其结构简单、成本较低,占有一定的市场份额。第三类运动控制器是目前国内运动控制器产品的主流[14]。

1.3 课题研究目的及需求分析

由于常规的基于单片机控制方案的运动控制卡在运算能力、响应速度及接口兼容性方面存在诸多不足,故该研究的目的在于设计一套基于DSP加FPGA/CPLD联合控制技术的运动控制卡,从而实现高速率、高精度的复杂轨迹运动的实时控制功能,同时在硬件资源及逻辑功能上提供多种对象类型的接口支持。

通过对国内市场上各主流控制对象的控制方式进行调查研究,对采用各类方案实现的运动控制卡的市场性价比进行调研,对相关器件的成本与性能进行评估,综合分析后得出本次研究的总体设计需求如下。

1.3.1 支持32位PCI总线协议

运动控制卡需支持32位33MHz从模式及32位66MHz从模式的PCI总线协议,

华中科技大学硕士学位论文

从而满足运动控制卡与计算机之间的高速数据交换要求。在基于PCI总线协议的“计算机+运动控制卡”模式中,计算机为主设备,运动控制卡为从设备,运动控制卡需具备被主设备访问以及对主设备指令进行响应的能力,从而实现计算机对运动控制卡的全局过程控制[15]。

1.3.2 快速的并行浮点运算能力

为实现高速复杂轨迹运动的实时坐标运算,运动控制卡需具备快速的并行浮点运算能力。由于计算机与运动控制卡之间的数据传输存在延时,同时计算机应用程序无法满足精确定时控制要求,因此,在面对复杂轨迹的大量坐标数据运算问题时,单纯依靠计算机程序将无法满足运动控制的实时性与精确性要求。故运动控制卡需对从计算机获取的低密度坐标数据进行快速插补运算,实时生成高密度的坐标数据,从而实现高速率、高精度的复杂轨迹运动的实时控制功能。

1.3.3 高速大容量存储器

在对高速复杂轨迹进行坐标插补运算时,短时间内将产生大量中间数据,故运动控制卡需引入高速大容量存储器来支持大量数据的实时缓存。存储器需具备简洁高速的读写接口,能够被DSP处理器及CPLD高速稳定的访问,需具有大容量的存储空间,用以存放大量的运算数据。

1.3.4 充足的I/O接口及可靠的I/O兼容性

大型电气设备,如医疗运动床、激光标刻机,都涉及大量的开关信号(只有低电平、高电平两种状态的信号),如电源信号、指示灯信号、工作状态信号等,故运动控制卡必须拥有充足数量的I/O接口,来满足大量输入输出开关信号的接入。而不同设备通常具有不同的I/O接口标准及接口要求,如电平标准、负载能力、驱动能力等,故运动控制卡需具备可靠的I/O兼容能力,来满足不同I/O接口标准的要求。

1.3.5 多路模拟信号输出

在面向参数连续变化型控制对象时,需使用模拟信号进行控制,譬如伺服电机、功率可控电源等。其中,伺服电机转动角度、电源输出功率等参数皆为连续变化量,它们通常使用具备连续变化特性的模拟信号来控制。故运动控制卡需具备多路模拟信号输出能力,以满足多路模拟信号控制对象的控制要求。然而计算机、DSP处理

华中科技大学硕士学位论文

器以及CPLD等设备在高速的通信、运算和输出行为中皆使用数字信号,因此,为实现模拟信号输出,则运动控制卡需具备数字信号到模拟信号(Digital to Analog, DA)的转换功能。在DA转换过程中,输入数字信号的位宽决定了输出模拟信号的精度,因此,为满足不同控制精度要求的被控对象,同时合理地控制硬件成本,则运动控制卡需具备不同精度的DA转换电路。

1.3.6 两组差分信号输出

部分控制对象要求使用差分信号进行控制,如步进电机。为满足此类设备的控制要求,运动控制卡需具备差分信号输出能力。因此需设计一套差分信号输出电路,且具备两组差分信号输出的能力。

1.3.7 两路PWM信号输出

部分控制对象要求使用脉宽调试(Pulse Width Modulation, PWM)信号进行控制,如PWM控制型伺服电机。为满足此类设备的控制要求,运动控制卡需具备PWM信号输出能力[16]。因此需设计一套PWM信号输出电路,且具备两路PWM信号输出的能力。

1.4 本文主要内容

本文在对当前各主流运动控制卡方案进行研究,分析比较了各方案优劣及市场价值之后,确定了“基于DSP和CPLD联合控制技术”的总体设计方案,并基于此设计方案提出了若干关键技术与算法,其中的主要技术方案得以实现,经实际测试验证无误,其余技术方案及算法思想通过设计与分析,可行性得到验证,可在后续工作中实现。本文内容共分六个章节,其主要内容如下。

第1章:介绍了“基于DSP和CPLD的运动控制卡设计”这一研究课题的诞生意义与相关背景,提出了运动控制卡的总体设计需求,最后对本文所做的工作进行了归纳。

第2章:对运动控制卡硬件系统进行了总体设计,就通信接口、控制核心、输入输出驱动电路等三大方案进行了详细设计与描述,并对通信接口标准、驱动电路兼容性、内部总线带宽、信号建立时间与时间间隔精度等各项性能指标进行了分析与设定。

华中科技大学硕士学位论文

第3章:对运动控制卡中的DSP处理器、CPLD和RAM存储器三大核心器件进行芯片选型,并针对PCI接口、电源、地址与数据总线、DA转换、I/O控制与隔离、差分信号输出等六大模块进行了详细电路设计。

第4章:围绕CPLD内部模块设计中的PCI总线控制器模块、内部总线控制器模块、匀速DA输出控制模块,以及DSP程序设计中的高速插补运算等四大核心功能进行了详细的设计与描述。

第5章:对运动控制卡的主要功能模块进行测试,并依照测试结论进行分析与优化。

第6章:对“基于DSP和CPLD的运动控制卡的设计与实现”工作进行总结和展望。

华中科技大学硕士学位论文

2 运动控制卡总体方案设计

本章针对运动控制卡的设计需求进行总体方案设计,方案设计内容包括运动控制卡的硬件实体部分以及性能指标部分。

2.1 运动控制卡硬件系统方案设计

运动控制卡的硬件系统是基于DSP加CPLD联合控制技术,并采用PCI总线协议与计算机通信,其方案设计如图 2.1所示。

图 2.1 运动控制卡硬件系统设计图

华中科技大学硕士学位论文

2.1.1 通信接口

传统的运动控制卡普遍采用ISA协议,由于该协议是8/16bit位总线结构,不能满足高速数据交换的要求。本方案采用更先进的PCI协议实现总线控制。

PCI是由英特尔(Intel)公司1991年推出的用于定义局部总线的标准。随着PCI 规格的不断提升,其拥有多种频率及带宽标准,其中较广泛采用的是32位、33MHz 或32位、66MHz模式,其总线带宽分别为133MB/s和266MB/s[17]。

为实现运动控制卡对PCI总线协议的支持,需要专用的PCI总线控制器。PCI 总线控制器主要负责PCI总线与嵌入式系统内部总线间的转换工作,其功能如图 2.2所示。

图 2.2 PCI总线控制器功能示意图

目前应用于运动控制卡领域的主流PCI总线控制器方案主要有两种[18-19],一种是采用专用的PCI总线控制器芯片;另一种是采用FPGA、CPLD等可编程逻辑器件来片上集成PCI总线控制器模块的方案。其中,专用PCI总线控制器芯片简单易用,可大大的降低开发难度,但需额外的芯片成本;FPGA/CPLD片上集成方案开发难度较大,但节省了专用芯片的成本及其在控制卡上所占据的面积,并且在实际对比测试中发现,片上集成PCI总线控制器对电路板布线设计要求更低,板卡稳定性更好。

本系统采用CPLD片上集成PCI总线控制器的方案,可大大提升系统稳定性,并有效降低运动控制卡的总体成本,与此同时,由于CPLD中其它模块与PCI总线控制器间通过CPLD内部的可编程逻辑相连,故其具备可修改能力,在设计中拥有更大的灵活性。

2.1.2 控制核心

在运动控制卡中,DSP作为控制核心,通过控制及数据总线(包含8位控制线、19位地址线及16位数据线)对CPLD及RAM进行管理与调度。DSP通过访问CPLD

华中科技大学硕士学位论文

内部总线控制器模块的方式,能够实现三大功能:1.可以查询或修改CPLD内部相关模块的参数及配置,从而实现对CPLD内部模块的运行控制;2.可以向CPLD索取或转发相关数据,譬如PCI总线数据、DA转换数据等;3.可以向CPLD发送命令,使其根据命令要求完成操作,譬如命令CPLD将获取到的PCI总线数据存入RAM的特定区域。同时,DSP也可通过控制及数据总线来对RAM进行读写操作[20]。

2.1.3 输入输出驱动电路

运动控制卡上还包括各类外部设备的专用驱动电路,以满足不同种类控制方式外设的需求。其中,16位与12位DA转换电路在CPLD内部DA控制模块的控制下,完成数字信号到模拟信号的转换,通过放大电路放大后输出到模拟控制方式的设备驱动端。输入输出驱动电路在CPLD内部IO控制模块的控制下,实现从CPLD到外部设备或从外部设备到CPLD的数字信号的隔离与电平转换。在CPLD中,DA控制模块与IO控制模块统一由主控器模块来控制与管理。而对于有一定数据计算要求的对象,如编码器、步进电机、PWM信号,其相应的驱动电路则由DSP来控制。

2.2 运动控制卡性能指标

为实现高速、实时、精确、稳定的运动控制能力,通信接口标准、驱动电路兼容性、内部总线带宽、信号建立时间与时间间隔精度等性能指标将成为设计的技术关键。

2.2.1 通信接口标准

运动控制卡与计算机之间的通信采用PCI总线标准。普通PCI总线(相较于PCI Express总线)分为32位33MHz和32位66MHz两种模式,其总线带宽分别为133MB/s 和266MB/s。接入PCI总线的设备之间需具备主从关系,在计算机与运动控制卡之间,计算机为主设备,运动控制卡必须为从设备。因此,将运动控制卡通信接口标准制定为:支持32位数据位宽、33MHz及66MHz传输速率、从设备模式的PCI协议接口标准。

2.2.2 驱动电路兼容性

驱动电路需兼容不同类型被控对象的接口电平标准,其主要分为模拟信号电平

华中科技大学硕士学位论文

标准与数字信号电平标准两部分。

模拟信号即DA转换模块输出部分,在对市场上主流的模拟信号控制设备电平标准进行调查与统计后,制定出运动控制卡的DA转换模块输出电平标准。其中16位精度DA转换模块支持-5V~+5V、0V~+10V及-10V~+10V三种输出电平标准,12位精度DA转换模块支持-5V~+5V及0V~+10V两种输出电平标准,通过设置运动控制卡的电平标准设置跳线,可在不同的输出电平标准间进行自动切换。

数字信号主要包括I/O接口与PWM输出信号。其中,规定PWM输出信号与I/O 接口的输出部分需符合工业控制领域中常规的5V电平标准,且当输出为高电平状态时需具备推挽输出能力(即高电平状态时,用户接口直接连接至运动控制卡的5V电源),以增强输出负载能力。规定I/O接口的输入部分需兼容3.3V、5V、12V等电平标准,并将其统一转换为与DSP处理器及CPLD一致的3.3V电平标准。

另外,大功率设备在运行过程中,其I/O接口时常会因为受到功率干扰而出现大功率脉冲信号,若运动控制卡I/O接口电路不设计任何防范措施,则脉冲信号进入到I/O接口电路后,极易烧毁I/O接口电路,同时,由于I/O接口电路受DSP或CPLD 控制,故脉冲甚至可能经I/O接口电路传导至DSP或CPLD中,导致DSP或CPLD 芯片烧毁。为此,I/O接口模块需引入隔离电路设计,使运动控制卡的内部电路与外部接口产生电气隔离,从而避免运动控制卡内部电路受到外部脉冲信号的影响[21-22]。

2.2.3 内部总线带宽

DSP处理器、CPLD及RAM存储器通过统一的地址及数据总线进行数据传输,通过控制信号总线进行状态控制,其总线结构如图 2.3所示。

图 2.3 DSP、CPLD及RAM间的总线连接方式

在该总线结构中,由于DSP与CPLD两者皆具备充当主设备的能力,因此若不对总线访问权限加以限制,则可能导致总线冲突。故在此规定,DSP、CPLD及RAM

华中科技大学硕士学位论文

三者间由DSP充当主设备,DSP负责控制地址及数据总线的访问权限。当DSP占用地址及数据总线来访问RAM或CPLD时,DSP通过控制信号总线告知CPLD总线处于忙状态,此时,CPLD不得访问地址及数据总线;当DSP释放地址及数据总线时,DSP通过控制信号总线告知CPLD总线处于空闲状态,此时,CPLD允许访问地址及数据总线,则CPLD可通过地址及数据总线来访问RAM存储器[23]。

为保证充足的数据传输带宽,将地址及数据总线设计为19位地址线及16位数据线的形式,则总线具备512K的寻址空间以及16位的并行数据传输能力。同时DSP 与CPLD间具备8位控制信号线,DSP可通过控制信号总线向CPLD通知当前DSP 占用总线的情况或者回读到CPLD使用总线的情况。

2.2.4 信号建立时间与时间间隔精度

在DA转换过程中,数字信号输入到模拟信号输出的时间间隔称为信号建立时间,记为t set。在模拟信号控制伺服电机的过程中,模拟信号输入到电机动作输出的时间间隔称为电机响应时间,记为t act。故电机对数字信号的响应时间为(t set+t act)。当电机响应时间t act恒定时,则信号建立时间t set将直接影响伺服电机对数字信号的响应速度。

在DA转换过程中,将相邻两次数字信号输入的时间间隔记为△t,则在数字信号响应时间 (t set+t act) 恒定的情况下,伺服电机相邻两次动作的时间间隔也等于△t,而伺服电机保持匀速运动,即速率V恒定不变,故伺服电机相邻两次动作间的行程(V·△t) 与数字信号输入时间间隔△t成线性关系。因此,当△t恒定不变时,伺服电机的每次动作行程将保持一致。

以振镜式激光标刻机为例,其振镜机构即采用伺服电机驱动。信号建立时间t set 与时间间隔△t对该设备的直观影响体现于,t set越长,则从运动控制卡发出指令到激光焦点位置发生改变的时间间隔越长,即“反应过慢”;而△t若处于时刻变化状态,则激光焦点位置的偏移将“忽快忽慢”,从而导致被加工物体表面的激光刻痕“忽浅忽深”。

因此,快速的信号建立时间t set与恒定的数字信号时间间隔△t成为高速、精确运动控制的前提。

在运动控制卡中,16位DA转换电路的t set需低于1us,△t可控且最低可设置为1us;12位DA转换电路的t set需低于10us,△t不做要求。

华中科技大学硕士学位论文

2.3 本章小结

本章对运动控制卡的硬件系统进行总体设计,就通信接口、控制核心、输入输出驱动电路等三大方案进行了详细设计与描述,并对通信接口标准、驱动电路兼容性、内部总线带宽、信号建立时间与时间间隔精度等直接影响运动控制卡性能的各项指标进行了分析与设定。

华中科技大学硕士学位论文

3 运动控制卡硬件设计

硬件设计包含主芯片选型及运动控制卡的电路设计两部分内容,而硬件实现则是根据设计内容来制作完成运动控制卡实物。

3.1 运动控制卡主芯片选型

运动控制卡的运算及控制核心主要由DSP处理器、CPLD和RAM存储器等三大芯片构成,其各自性能优劣、三者间性能均衡性以及接口兼容性等条件将直接影响运动控制卡的整体性能。

3.1.1 DSP处理器

DSP处理器选用TI公司的TMS320F28335高性能浮点型数字信号处理器。TMS320F28335采用静态CMOS工艺,主频可达150MHz,其内核供电采用1.9V或1.8V低电压,可有效降低芯片功耗,而I/O供电采用3.3V电压,能与常规CPLD及RAM的I/O接口电平标准兼容[24]。

TMS320F28335除具备16 x 16和32 x 32乘法器外,其相较于常规定点型数字信号处理器,还内嵌有符合IEEE-754行业标准的单指令周期浮点处理单元(Floating-Point Unit),对浮点型运算任务拥有更高的执行效率。

TMS320F28335拥有多达6通道的DMA(Direct Memory Access)控制器,使用户实现对ADC、McBSP、ePWM、XINTF和SARAM等设备的高速访问。其中,对XINTF(External Interface)的访问支持16位与32位模式,且具备2M x 16位的寻址能力。其片上集成256K x 16的Flash型非易失性存储器,以及34K x 16的SARAM 型内部存储器,提供了更充足的程序存储空间以及程序运行内存[25]。

从性能参数中可以看出,TMS320F28335除具备浮点型数字信号处理器的性能特征外,还同时拥有微控制器的部分特性,满足了运动控制过程中对运算与控制的双重要求,极其适合于充当运动控制卡的主处理器芯片。

3.1.2 CPLD

CPLD与FPGA皆属于专用集成电路(Application Specific Integrated Circuit,

华中科技大学硕士学位论文

ASIC)范畴,它们可被看作半定制型电路,是一种用户可根据自身需求自行构造逻辑功能的数字集成电路。在设计中引入诸如FPGA和CPLD等大规模专用集成电路后,可将原本大量的分立式逻辑电路集成到单一芯片中,大大节省硬件资源及成本,此外,FPGA/CPLD拥有极高的逻辑单元密度,可实现大规模的数字电路设计,同时其灵活的可编程特性也使得开发效率大为提高[26]。

FPGA与CPLD皆是可编程ASIC器件,有很多共同特点,也存在诸多差异。从性能上来看,CPLD逻辑门密度在几千到几万个逻辑单元之间,而FPGA通常是在几万到几百万。大多FPGA含有高层次的内置模块,如加法器、乘法器和存储器等,而CPLD通常不具备以上功能。但另一方面,CPLD具有非易失特性,程序下载至CPLD后,上电即可运行,且断电数据不丢失,而FPGA断电后数据丢失,上电需重新加载数据,故需额外配置程序存储芯片,此特性的差异也使得FPGA的数据安全性不如CPLD。

之所以存在诸多性能差异,是由于FPGA和CPLD的结构特点和工作原理存在本质区别。其中,FPGA以查表法结构方式构成逻辑行为,集成度更高、功耗更低;CPLD以乘积项结构方式构成逻辑行为,速度更快、保密性更好、数据非易失、成本更低。

综合比较FPGA与CPLD各自性能优势后,认为CPLD的性能优势更适合用于设计高速、稳定、安全、低成本的运动控制卡,但其在集成度上劣势或将成为瓶颈。

在对市面上各大主流CPLD产品进行调研后发现,Altera公司的MAX II系列CPLD产品创新性的采用查找表体系结构,并在芯片内集成大容量的Flash型非易失性程序存储器,其相较于传统CPLD拥有更高的逻辑门密度,相较于FPGA又具备了非易失特性,整合了CPLD与FPGA各自优势,适合用于运动控制卡的开发[27]。

CPLD选用MAX II系列EPM1270,其支持高达300MHz的内部时钟频率,1.8V 内核电压降低了功耗,灵活的多电压I/O(MultiV olt I/O)支持1.5V、1.8V、2.5V和3.3V逻辑电平接口。

3.1.3 RAM存储器

嵌入式设计中,通常采用读写速率更高的随机存取存储器(Random Access Memory, RAM),按照集成电路内部结构不同,RAM又分为静态RAM(Static Random Access Memory, SRAM)和动态RAM(Dynamic Random Access Memory, DRAM)两

华中科技大学硕士学位论文

类。

静态RAM速度非常快,只要电源存在内容就不会消失。但他的基本存储电路是由6个MOS管组成1位。集成度较低,功耗也较大。一般高速缓冲存储器(Cache Memory)用它组成。

DRAM内容在短时间自动消失,因此必须周期性的在内容消失之前进行数据刷新。由于他的基本存储电路由一个晶体管及一个电容组成,因此他的集成成本较低,另外耗电也少,但是需要刷新电路。

SRAM不需要刷新电路即能保存它内部存储的数据,因此具有更高的性能,但是SRAM也有它的缺点,即集成度较低,相同容量的DRAM内存可以设计为更小的体积,但是SRAM却需要很大的体积,且功耗更大。所以在主板上SRAM存储器要占用更多面积[28]。

常规尺寸SRAM的容量虽不及DRAM,但已满足运动控制卡在数据缓冲方面的需求,而其更高的读写速率提高了运动控制卡的运算效率,带来更加高速实时的运动控制性能。因此运动控制卡采用SRAM作为内部存储器。

SRAM选用ISSI公司的IS61WV25616BLL型高速RAM芯片,其具备256K×16bits大容量存储空间,能在DSP进行插补运算过程中,提供大容量数据缓存支持。其最快响应速度低至8ns,为高速实时的数据存取提供保障,电源与接口采用 3.3V 电平逻辑,可与DSP及CPLD接口匹配,支持三态输出功能,避免了总线冲突的风险[29]。

3.2 运动控制卡电路设计

为实现需求分析所述的功能,并达到性能指标的要求,本节对运动控制卡进行详细电路设计。在确定了电路设计的开发环境以后,电路将分为PCI接口、电源、地址与数据总线、DA转换、I/O控制与隔离、差分信号输出等六大模块进行详细设计。

3.2.1 开发环境

运动控制卡电路设计采用protelDXP软件作为开发环境。protelDXP是Altium公司2004年的最新产品,PCB设计功能十分强大[30]。

运动控制卡设计步骤

运动控制卡开发四步曲 1使用黑金开发板实现脉冲控制的运动控制卡 运动控制器第一步:实现简单脉冲控制系统 方式、 占空比 可编程 脉冲输 出 1.1使用Quartus II软件建立SOPC工程,按照上图建立添加所需CPU及外设。 1.2使用Nios II建立UC-OS-II工程。 1.3在UC-OS-II中建立一个任务,用于收发以太网数据,跟上位机通讯。 1.4在Quartus II中加入编码器解析模块,将来自编码器的AB信号转化成位置和速度,并支持总线读写,最高编码器脉冲频率20M。 1.5在Quartus II中加入脉冲输出模块,实现CPU发出的脉冲速度和脉冲数,最高输出脉冲频率8M。 1.6在Nios II中规划速度曲线,周期200us输出一个脉冲速度。 1.7连接驱动器和电机进行调试。 1.8加入缓冲控制。 1.9加入高速捕获功能。 1.10加入回零功能。

2使用DSP开发板+黑金开发板实现脉冲控制的运动控制卡 运动控制器第二步:DSP+FPGA脉冲控制系统 方式、 占空比 可编程 脉冲输 出 电压保护 2.1在第一步的系统中,增加与DSP通信的模块。 2.2Nios II中接收到上位运动指令之后,发出中断信号给DSP,DSP读取运动数据。 2.3DSP读取位置信号,规划出速度曲线输出到FPGA输出脉冲。 3. 连接驱动器和电机进行调试。 3使用DSP开发板+黑金开发板实现速度控制的运动控制卡

运动控制器第三步:DSP+FPGA 速度控制系统 8路模 拟量输出 3.1在第二步的基础上,在DSP 中增加位置环调节算法,输出速度曲线到FPGA ,FPGA 控制DA 输出模拟量。 3.2连接驱动器和电机进行调试。 4实现速度控+脉冲制的运动控制卡 电压保护 运动控制器第四步:DSP+FPGA 速度控制运动控制器 8路模 拟量输出 16方式、占空比可编程脉冲输出 线驱动器

运动控制期末必考题

一、填空题 1、直流电动机有三种调速方案:(1)调节电枢供电电压U;(2)减弱励磁磁通Φ;(3)改变电枢回路电阻R。 2、当电流大到一定程度时才出现的电流负反馈,叫做电流截止负反馈。 3、额定励磁状态下的直流电动机电枢电流与直流电动机的电磁转矩成正比。 4、他励直流电动机的调速方法中,调压调速是从基速(额定转速)往下调,在不同转速下容许的输出恒定,所以又称为恒转矩调速。调磁调速是从基速往上调,励磁电流变小,也称为弱磁调速,在不同转速时容许输出功率基本相同,称为恒功率调速。 5、直流调速系统的静态性能指标主要包括静差率和调速范围。 6、在比例积分调节调节过程中,比例部分的作用是迅速响应控制,积分部分的作用是消除稳态误差。 7、采用积分速度调节器的闭环调速系统是无静差的。 8、直流调速系统中常用的可控直流电源主要有旋转变流机组、静止式可控整流器和直流斩波器或脉宽调制变换器三种。 9、所谓稳态是指电动机的平均电磁转矩与负载转矩相平衡的状态。 10、在额定负载下,生产工艺要求电动机提供的最高转速和最低转速之比叫做调速范围。 11、负载由理想空载增加到额定值时所对应的转速降落与理想空载转速之比叫做静差率。 12、一个调速系统的调速范围,是指在最低转速时还能满足所需静差率的转速的可调范围。 13、反馈控制的作用是抵抗扰动、服从给定。 14、脉宽调制的方法是把恒定的直流电源电压调制成幅值相同、频率一定、宽度可变脉冲序列,从而可以改变平均输出电压的大小,以调节转速。 15、调速系统的要求有调速、稳速、加,减速。 16、直流电动机在调速过程中,若额定转速相同,则转速越低时,静差率越大。 17、在转速、电流双闭环直流调速系统中转速调节器的输出作为电流调节器的输入,再用电流调节器的输出去控制电力电子变换器。 18、双闭环调速系统在正常运行时, ACR 调节器是不会达到饱和的。 19、反馈控制系统所能抑制的知识被反馈环包围的前向通道上的扰动。 20、一般来说,调速系统的的动态指标以抗扰性能为主,而随动系统的动态性能指标则以跟随性能为主。 21、转速、电流双闭环直流调速系统在起动过程中,转速调节器ASR经历了不饱和、饱和、退饱和三种情况。 22、双闭环调速系统的起动过程分为三个阶段,即电流上升阶段、恒流升速介段、转速调节阶段。 23、双闭环系统由于起动过程中转速调节器饱和,使电动机一直处于最大起动电流。 24、转速、电流双闭环系统在恒流升速阶段转速调节器饱和,电流调节器不饱和。 25、在转速、电流双闭环系统中,出现电网波动时,电流调节器其主要作用;出现负载扰动时,转速调节器其主要作用。26、在双闭环系统中中引入转速微分负反馈抑制转速超调,显著地降低(填增加或减少)动态速降,提高抗扰性能。 27、V-M系统的可逆线路有两种方法,即电枢反接可逆线路和励磁反接可逆线路。 28、变流装置有整流和逆变两种状态,直流电动机有电动和制动两种状态。 29、逻辑无环流可逆调速系统的结构特点是在可逆系统增加DLC,称为无环流逻辑控制环节,包括电平检测、逻辑判断、延时电路、联锁保护四部分,它的功能是根据系统运行情况实时地封锁原工作的一组晶闸管脉冲,然后开放原封锁的一组晶闸管的脉冲。 30、环流是指不流过电动机或其他负载,而直接在两组晶闸管之间流通的短路电流。 31、无环流可逆调速系统可按实现无环流的原理的不同分为逻辑无环流系统和和错位控制无环流系统。 32、有环流可逆调速系统中采用 β ≥ ?配合控制时可消除直流平均环流;设置环流电抗器可抑制瞬时脉动换流。 33、在转速、电流双闭环调速系统中,转速调节器按典型 II 型系统设计,其抗干扰能力 好,稳态无误差;电流调节器按典型 I 型系统设计,其抗干扰能力差,超调较小。 34、异步电动机变压变频调速系统必须具备能同时控制电压幅值和频率的交流电源。 35、电压型变频器的主电路包括整流电路、中间直流电路、逆变电路三部分。 36、根据直流环节的储能方式分,交-直-交变频器可分为电压型和电流型。 37、对异步电动机进行调速控制时,希望电动机的主磁通保持额定值不变。磁通太弱,铁心利用不充分;磁通太强,则铁心饱和,导致励磁电流过大。 38、异步电动机变频调速是靠改变电动机供电频率调速,而其转差频率控制方式中控制的是转差角频率,故可将电动机转差角频率与电动机转速信号相加获得定子给定频率,就可对定子频率进行控制。 39、异步电动机调速,按对转差功率处理方式的不同,交流调速系统可分为转差功率消耗型调速系统、 转差功率回馈型调速系统、转差功率不变型调速系统三类。 40、变频器的转差频率控制方式的控制思想是建立在异步电动机的稳态数学模型的基础上。 41、按照异步电动机的工作原理,电磁功率和机械功率的关系为 mech P= 1-s m P,电磁功率和转差功率的关系为 Ps=sPm 。 42、异步电动机变压调速系统,当电压减小时,最大电磁转矩减小,最大电磁转矩所对应的转差率减小。(减小、增大、不变) 43、SPWM的调制方式有同步调制、异步调制、分段同步调制和混合调制。 44、SPWM逆变器是利用正弦波信号与三角波信号相比较后,而获得一系列等幅不等宽的脉冲波形。 45、矢量控制系统的基本思想是通过坐标变换得到等效的两相数学模型,然后按转子磁链定向,将交流电动机定子电流分解为励磁分量和转矩分量,从而可以获得和直流电动机相仿的高动态性能。

运动控制卡概述

运动控制卡概述 ? ?主要特点 ?SMC6400B独立工作型高级4轴运动控制器 功能介绍: 高性能的独立工作型运动控制器以32位RISC为核心,控制4轴步进电机、伺服电机完成各种功能强大的单轴、多轴运动,可脱离PC机独立工作。 ●G代码编程 采用ISO国标标准G代码编程,易学易用。既可以在文本显示器、触摸屏上直接编写G代码,也可以在PC机上编程,然后通过USB通讯口或U盘下载至控制器。 ●示教编程 可以通过文本显示器、触摸屏进行轨迹示教,编写简单的轨迹控制程序,不需要学习任何编程语言。 ●USB通讯口和U盘接口 支持USB1.1全速通讯接口及U盘接口。可以通过USB接口从PC机下载用户程序、设置系统参数,也可用U盘拷贝程序。

●程序存储功能 程序存储器容量达32M,G代码程序最长可达5000行。 ●直线、圆弧插补及连续插补功能 具有任意2-4轴高速直线插补功能、任意2轴圆弧插补功能、连续插补功能。应用场合: 电子产品自动化加工、装配、测试 半导体、LCD自动加工、检测 激光切割、雕铣、打标设备 机器视觉及测量自动化 生物医学取样和处理设备 工业机器人 专用数控机床 特点: ■不需要PC机就可以独立工作 ■不需要学习VB、VC语言就可以编程 ■32位CPU, 60MHz, Rev1.0 ■脉冲输出速度最大达8MHz ■脉冲输出可选择: 脉冲/方向, 双脉冲 ■2-4轴直线插补 ■2轴圆弧插补 ■多轴连续插补 ■2种回零方式 ■梯型和S型速度曲线可编程

■多轴同步启动/停止 ■每轴提供限位、回零信号 ■每轴提供标准伺服电机控制信号 ■通用16位数字输入信号,有光电隔离 ■通用24位数字输出信号 ■提供文本显示器、触摸屏接口 技术规格: 运动控制参数 运动控制I/O 接口信号 通用数字 I/O 通用数字输入口 通用数字输出口 28路,光电隔离 28路,光电隔离,集电极开路输出 通讯接口协议

利用IEC61131-3和PLCopen的运动控制功能块来创建独立于硬件的可再用运动控制应用程序

利用IEC61131-3和PLCopen的运动控制功能块来创建独立于硬件的可再用运动控制应用程序 摘要 运动集成及自动化解决方案的可维护性和连通性这些问题已经出现,因此需要建立标准。 PLCopen建立了这样的标准。编程语言的标准是来协调各工作平台间运动控制功能性的访问。这样,生成的应用程序在工作平台间更独立于硬件而且可再度利用。 PLCopen运动控制功能块提供的标准以IEC61131-3功能块概念为基础。随着功能性和接口的标准化及在多个平台上执行,建立了编程标准,并在工业领域被广泛支持。由于封装隐藏了数据,此标准可用于不同结构,适用的控制从集中型到分散型或从集成型到网络型。它不是为某个应用程序特别设计的,而是可以作为在不同领域中正进行定义的基础层。正因为如此,它对现有和将来的技术都是开放的。 介绍 在很多情形中运动控制系统的用户支持多个应用层。例如,一个包装机供应商可支持三个不同层次:低成本、中等层次和高性能/高成本。使用不同的运动控制系统可解决速度和精确度的不同需求。不幸的是,运动控制市场显示各种系统/解决方案的不兼容。实际上,这意味着结构和用于开发、安装和维护的软件工具的各个层次存在很大的差异。 这种不兼容性带来了相当大的费用:使用不同的实现设备发生混乱,工程变得困难,培训费用增加,软件在各平台间不能再次使用。 标准化自然减少了以上提到的消极要素。标准化不仅适用于IEC61131-3国际标准这样的编程语言中,而且适用于不同的运动控制解决方案(如分散型、集成型或集中型)的接口。 这种标准化可有效地用于定义可再用部件的资料库。这样,编程更独立于硬件,应用软件的可再用性增加,培训和维护的费用减少,不同控制解决方案间的应用程序可伸缩。 任务工作小组的目标 机器制造业的主要供应商请求PLCopen帮助解决不兼容的问题,因此组建了运动控制的任务工作小组。通过使运动控制的功能块标准化,此任务工作小组定义了程序员接口。不仅用户包括在其中,还得到供应商的广泛支持,为很多产品和结构提供了大量实现设备,因而保证了此资料库的成功。

运动控制系统A卷及复习资料

2012-2013学年第二学期课程名称: 运动控制系统(A) 专业:姓名: 学号: 学习中心: 题号一二三四五六七八九十合计题分 一、简述下列问题(每题10分) 1.在转速、电流双闭环调速系统中,若要改变电动机的转速,应调节什么参数?2.哪些因素造成逻辑无环流系统要比配合控制的有环流系统的切换过程长?3.从电压频率协调控制而言,同步电动机与异步电动机的调速有何差异?4.伺服系统的给定误差和扰动误差与那些因素有关? 二、采用电压空间矢量PWM控制方法,若直流电压u d 恒定,如何协调输出电压与输出频率的关系?(15分) 三、分析比较按转子磁链定向和按定子磁链定向异步电动机动态数学模 型的特征,指出它们的相同和不同之处。(15分) 网络教育学院2011级(秋)期末试卷

五、试比较矢量控制系统和直接转矩控制系统的特点和性能。(15分) 四、论述同步电动机按气隙磁链定向和按转子磁链定向矢量控制系统 的工作原理,并与异步电动机矢量控制系统作比较。(15分)

运动控制系统试卷(A)答案 一、简答题 1、答:若调节电动机转速,应改变给定电压*,n U α,不能改变,n S K K 。 2、答:影响因素有:逻辑切换条件的判断,封锁延时时间,开放延时时间。 3、答:同步电机存在失步问题,可以根据转子位置直接控制变压变频装置换相时刻,进行自控变频调速。 4、答:给定误差与系统的开环增益K 和前向通道中所有积分环节的总数p+q 有关扰动误差则只与扰动作用点以前部分的增益K1和积分环节个数p 有关。 二、答: 有效的方法是插入零矢量,使有效工作矢量的工作时间仅为 1t t ?

三维运动平台控制系统的硬件设计【文献综述】

毕业设计开题报告 电气工程及其自动化 三维运动平台控制系统的硬件设计 1前言部分 三维运动平台控制系统是一套对空间X轴、Y轴、Z轴集中式智能化操作的控制系统。目前市场的运动平台控制系统在性能指标和价格定位方面基本是面向中、高端用户,无法满足低端用户的需用。因此研发一种面向于简单控制、低成本的三维驱动数控系统具有广泛的应用前景。该系统作为现有加工方式的升级换代手段,替代传统手工操作,从而提高产品的加工精度和速度、保证生产的一致性和稳定性、降低运行成本。本论文讨论的是三维运动平台控制系统的硬件设计。 三维运动平台是现代运动控制技术的基础实验设备,它在机械加工、工程测试、医疗等各种生产行业中都有极广泛的应用。 运动控制(Motion Control)是由电力拖动发展而来的,电力拖动或电气传动是对以电动机为对象的控制系统的通称。随着电力屯子技术、微电子技术的迅猛发展,原有的电气传动控制的概念已经不能充分地概括现代自动化系统中承担第一线任务的全部控制设备。因此,二十世纪八十年代后期,国际上开始出现运动控制系统(Motion Control System)这一术语。 一个运动控制系统的基本架构组成包括:一个运动控制器用以生成轨迹点(期望输出)和闭合位置的反馈环。许多控制器也可以在内部闭合一个速度环。一个驱动或放大器用以将来自运动控制器的控制信号(通常是速度或扭矩信号)转换为更高功率的电流或电压信号。更为先进的智能化驱动可以自身闭合位置环和速度环,以获得更精确的控制。一个执行器如液压泵、气缸、线性执行机或电机用以输出运动。一个反馈传感器如光电编码器,旋转变压器或霍尔效应设备等用以反馈执行器的位置到位置控制器,以实现和位置控制环的闭合。众多机械部件用以将执行器的运动形式转换为期望的运动形式,它包括齿轮箱、轴、滚珠丝杠、齿形带、联轴器以及线性和旋转轴承。通常,一个运动控制系统的功能包括:速度控制点位控制(点到点)。有很多方法可以计算出一个运动轨迹,它们通常

运动控制卡应用编程技巧

运动控制卡应用编程技巧 内容来源网络,由“深圳机械展(11万㎡,1100多家展商,超10万观众)”收集整理! 更多cnc加工中心、车铣磨钻床、线切割、数控刀具工具、工业机器人、非标自动化、数字化无人工厂、精密测量、3D打印、激光切割、钣金冲压折弯、精密零件加工等展示,就在深圳机械展. 关于源代码的阅读,需要读者有一定的C++编程基础,至少对以下表示形式不会产生误解:const char *pString; //指定pString邦定的数据不能被修改 char * const pString; //指定pString的地址不能被修改 const char * const pString; //含上面两种指定功能 当然,随便提醒一下,这些源代码若需要加入你的软件工程当中,还需要作一些调整和修改,因此,这些源代码实质上称为伪代码也可以,之所以展现它们,是让程序员们有个可视化的快感,特别是那些认为源代码就是一切的程序员。 同时,为了提高针对性,大部分控制卡调用的函数会明确指出是邦定哪些卡的,实际应用时,程序员可自行选择,以体现一下自己的智商是可以写写软件的。 一、控制卡类的单一实例实现 把控制卡类作一个类来处理,几乎所有C++程序员都为举双手表示赞同,故第一个什么都没有的伪代码就此产生,如下表现: class CCtrlCard { public:

…Function public: …attrib } 于是,用这个CctrlCard可以产生n多个控制卡实例,只要内存足够。然而,针对现实世界,情况并不那么美好。通常情况下,PC机内只插同种类型的控制卡1到2张,在通过调用d1000_board_init或d3000_board_init函数时,它们会负责返回有效卡数nCards,然后从0-nCards*4 - 1自行按排好轴数。初始化函数就是C++的new或malloc的操作,取得系统的资源,但是控制卡的资源与内存不一样,取得资源后必需要释放才可以再次获取,即控制卡资源是唯一的。 既然控制卡资源是唯一的,那么最好Cctrlcard产生的实例也是唯一的,这样,我们可以方便的需要定义一个全局变量即可: CctrlCard g_Dmcard; 在其它需要调用的地方,进行外部呼叫: extern CctrlCard g_DmcCard; 以上方法实在太简单了,很多人都会开心起来。实质上,方法还有很多,即然可以产生n 多对实例,我们的核心是只要保证调用board_init函数一次即可,故也可以单独定义一个InitBoard函数: class CctrlCard {

基于DSC和FP GA的运动控制卡设计

2016年1月第44卷第2期机床与液压MACHINETOOL&HYDRAULICSJan 2016Vol 44No 2DOI:10.3969/j issn 1001-3881 2016 02 048 收稿日期:2014-11-03 作者简介:张从鹏(1975 ),男,博士,副教授,研究方向为数字化制造技术与装备三E-mail:soaringroc@ncut edu cn三基于DSC和FPGA的运动控制卡设计 张从鹏,刘同,赵康康 (北方工业大学机电工程学院,北京100144) 摘要:针对四轴运动控制卡进行研究,设计了一种基于数字信号控制器DSC和FPGA双核架构的四轴数字量和模拟量运动控制卡;开发了数字脉冲输出模块二模拟量模块二标志位模块二编码器接收模块及接口电路等硬件;基于开发的硬件系统,实现了运动控制粗精两级插补算法,粗插补采用数据采样算法,精插补采用数字积分法,完成了控制卡软硬件调试三实验结果表明:控制卡实现了步进电机和伺服电机的多轴精确位置控制,性能稳定,可以满足多数工业场合应用三 关键词:四轴运动控制卡;DSC;FPGA;插补算法 中图分类号:TP23一一文献标志码:B一一文章编号:1001-3881(2016)2-156-3 DesignofMotionControllerBasedonDSCandFPGA ZHANGCongpeng,LIUTong,ZHAOKangkang(CollegeofMechanicalandElectricalEngineering,NorthChinaUniversityofTechnology,Beijing100144,China)Abstract:Afour?axisdigitalandanalogmotioncontrollerbasedondigitalsignalcontroller(DSC)andFPGAwasdesigned,in?cludingdigitalpulseoutputmodule,analogmodule,flagmodule,encoderreceivermoduleandinterfacecircuit.Basedonthedevel?opedhardware,coarseandfinetwointerpolationalgorithmwasrealized.Sample?datawaschosenascoarseinterpolation,digitaldiffer?entialanalyzerwaschosenasfineinterpolation.Thecontrolcardhardwareandsoftwaredebuggingwerealsocompleted.Theexperimen?talresultsshowthat:thecontrolcardisusedtorealizemulti?axisprecisepositioncontroltostepper/servomotor,itcanmeetmostin?dustrialapplications. Keywords:Four?axismotioncontroller;Digitalsignalcontroller(DSC);Fieldprogrammablegatearray(FPGA);Interpola?tionalgorithm一一运动控制卡作为运动控制系统中的核心数据处理部件,是高性能运动控制的重要部件,对其性能的要 求也越来越高三目前工业上应用的运动控制卡多采用DSP或x86芯片作为主处理器,依靠其强大的数据处理能力实现系统管理和数据插补,造价高昂,运动控 制的实时性得不到保障[1]三随着微电子技术的发展,以STM32F4为代表的新一代处理器数字信号控制器(DSC)应运而生三DSC是一种集微控制器(MCU)和数字信号处理器(DSP)专长于一身的新型处理 器,既集成了DSP处理器的实时硬件算法,又具有MCU接口丰富的优点,系统功耗低,十分适合电机控制二电源转换和传感器处理等领域[2-3]三作者面向工业应用,基于DSC+FPGA硬件架构,采用DSC处理器STM32F407ZGT6和FPGA芯片EP4CE10F17C8N 设计新型运动控制卡,粗精两级插补实现运动控制, 具有一定的现实意义三 1一运动控制卡结构 运动控制卡采用DSC+FPGA双核心结构,利用 了DSC的控制器接口资源丰富和FPGA硬件可编程 及并行处理特点三DSC负责接口二通信二数控粗插补二系统管理等功能,其上连接RS232接口二以太网接口二USB接口二FLASH二EEPROM等存储芯片等三FPGA负责数控精插补模块二运动控制接口模块,其中包括:脉冲接口,编码器接口,I/O接口,标志位及手轮接口等5个接口功能三运动控制卡硬件结构如图1所示 三 图1一运动控制卡的基本结构

多轴运动控制的同步通过实时网络实现

多轴运动控制的同步通过实时网络实现 摘要 实时确定性以太网协议(例如EtherCAT)已经能够支持多轴运动控制系统的同步运行。1 该同步包含两方面含义。首先,各个控制节点之间的命令和指令的传递必须与一个公共时钟同步;其次,控制算法和反馈函数的执行必须与同一个时钟同步。第一种同步很好理解,它是网络控制器的固有部分。然而,第二种同步到目前为止一直为人所忽视,如今成为运动控制性能的瓶颈。 本文介绍从网络控制器到电机终端和传感器全程保持电机驱动同步的新概念。所提出的技术能够大幅改善同步,从而显著提高控制性能。 问题陈述和现有技术 为了解释现有解决方案的局限性,考虑一个两轴网络运动控制系统,如图1所示。运动控制主机通过实时网络向两个伺服控制器发送命令和指令值,每个伺服控制器构成网络上的一个从机节点。伺服控制器本身由网络控制器、电机控制器、功率逆变器和电机/编码器组成。 实时网络协议采用不同的方法使从机节点与主机同步,一种常用方法是在每个节点处配置一个本地同步时钟。这种对时间的共识确保了所有伺服轴的指令值和命令均紧密同步。换言之,实时网络上的所有网络控制器都保持同步。 通常,在网络控制器和电机控制器之间有两条中断线。第一条通知电机控制器何时需要收集输入并将其放到网络上。第二条通知电机控制器何时从网络中读取数据。遵照这种方法,运动控制器和电机控制器之间以同步方式进行数据交换,并且可以实现非常高的定时精度。但是,仅将同步数据传送到电机控制器还不够;电机控制器还必须能以同步方式响应数据。如果没有这一能力,电机控制器就无法充分利用网络的定时精度。在响应指令值和命令时,电机控制器的I/O会出现问题。 电机控制器中的每个I/O(例如脉宽调制(PWM)定时器和ADC)都具有固有的延迟和时间

基于单片机的悬挂运动控制系统毕业设计开题报告

吉林建筑大学城建学院 毕业设计开题报告 所学专业:电气信息工程及其自动化 学生姓名: 指导教师: 论文题目:基于单片机的悬挂运动控制系统设计开题报告日期:2015.3.30

说明 1、开题报告由毕业生本人在完成文献阅读、科研调查的基础上,并通过开题报 告评议后填写。 2、本报告一式两份。一份交学院作为论文检查的依据;一份答辩后作为档案材 料归入学位档案。 3、开题报告用A4纸打印,不需标注页码。报告内容字体一律使用宋体小四, 行间距为1.25倍。

一、课题来源及研究的目的和意义 课题来源:生产 研究的目的: 科技的进步以及人们生活水平的逐步提高,各种方便于生活的自动控制开始进入了人们的生活,以单片机为核心的悬挂运动自动控制系统就是其中之一。在现代的工业控制、车辆运动和医疗设备等系统中,悬挂运动系统的应用越来越多,在这些系统中悬运动部件通常是具体的执行机构,因而悬挂部件的运动精确性是整个系统工作效能的决定因素,而在实际中实现悬挂运动控制系统的精确控制是非常困难的。靠改变悬挂被控对象的绳索长短来控制被控对象运动轨迹的悬挂运动控制系统,在生产控制等领域有很广的应用范围,但受技术上的制约,使用也有一定限制。采用单片机作为系统控制器。单片机可以实现各种复杂的逻辑功能,规模大,集成度高,体积小,稳定性好,并且可利用单片机软件进行仿真和调试。单片机采用并行工作方式,提高了系统的处理速度,常用于大规模实时性要求较高的系统。 研究的意义: 运动控制是自动化技术的重要组成部分,是机器人等高技术领域的技术基础,已取得了广泛的工程应用。运动控制集成了电子技术、电机拖动、计算机控制技术等内容。自二十世纪八十年代初期,运动控制器已经开始在国外多个行业应用,尤其是在微电子行业的应用更加广泛。而当时运动控制器在我国的应用规模和行业面很小,国内也没有厂商开发出通用的运动控制器产品。在现代的工业控制、车辆运动和医疗设备等系统中,悬挂运动控制系统的应用越来越多,在这些系统中悬挂运动部件通常是具体的执行机构,因此悬挂部件的运动精确性是整个系统工作效能的决定因素。靠改变悬挂被控对象的绳索长短来控制被控对象运动轨迹的悬挂运动控制系统,在生产控制等领域有很广的应用范围。

基于运动控制卡的控制系统的设计与实现 Design and implementation

基金颁发部门:国家自然科学基金委;项目名称:宽谱XCT 的投影数据模拟以及投影数据校正方法的研究;编号:60551003;基金申请人:牟轩沁,邓振生; 备注:本论文是基金项目中仪器设备研究科目:"控制X线机双能量曝光的控制设备"的控制方法研究之一。 基于运动控制卡的控制系统的设计与实现 Design and implementation of motion control system based on motion control card 柳叶青1,*邓振生1,陈真诚1,牟轩沁2 LIU Ye-qing1, DENG Zhen-sheng, CHEN Zhen-cheng, MOU Xuan-qin2 (1.中南大学信息物理工程学院生物医学工程研究所,湖南 长沙 410083; 2.西安交通大学电子与信息工程学院图像处理与模式识别研究所,陕西 西安 710049) (1.Institute of Biomedical Engineering, School of Info-Physic and Geomatic Engineering, Central South University, Changsha, Hunan, 410083, China; 2. Institute of Image Processing and Pattern Recognition, The School of Electronic and Information Engineering, Xi'an Jiaotong University, Xi'an, Shanxi, 710049, China)摘 要:本文介绍了一个基于多轴运动控制卡的运动控制系统。该系统以工控计算机、通用操作系统、PCI-8134多轴运动控制卡及其功能库函数为平台,采用VC++开发的人机界面,实现了三轴(X,Y,Z轴)独立运动、各个轴的连续直线运动以及梯形加减速运动等功能。 关键词:PCI-8134运动控制卡;运动控制;VC++ Abstract: In this article, a motion control system based on control card of multi-axis movement was introduced. It is grounded on the industrial computer, the common operation system; a multi-axis motion control card, PCI-8134, and its movement function library, the interface in VC++ Language can be programmed in order to implement the control. The motion control functions include the movement of three axes separately; continuous linear movement and T-curve acceleration/deceleration movement of each axes, etc. Key words: motion control card PCI-8134, motion control, VC++ 0 引言 运动控制技术的发展是推动新的产业革命的关键技术。传统的数字运动控制装置一般直接采用微机或单片机来实现位置控制,外围电路复杂,计算速度慢。近年来,对运动控制系统的速度和精度的要求愈来愈高,使得传统的运动控制系统难以取得满意的控制效果,因此急需一种运算速度快、可以满足高精度运动控制的。随着技术的成熟稳定,目前市场上出现了种类繁多的运动控制卡。 本研究利用基于PCI总线的PCI-8134多轴运动控制卡及其功能库函数、工控计算机,设计了可控制多轴的步进电机、按照编程预定的运动轨迹及运动参数作定位运动的控制系统。本系统具有通用性,可方便地移植到各种运动控制系统的开发中去,例如机器人、雕刻机及专用数控机床的开发等。 1 基于运动控制卡的运动控制系统实现原理 运动控制卡通常采用专业运动控制芯片或高速DSP作为运动控制核心,大多用于控制步进电机或伺服电机。运动控制卡与PC机构成主从式控制结构:PC 机负责人机交互界面的管理和控制系统的实时监控等方面的工作,例如键盘和鼠标的管理、系统状态的显示、运动轨迹规划、控制指令的发送、外部信号的监控等等;控制卡完成运动控制的所有细节,包括脉冲和方向信号的输出、自动升降速的处理、原点和限位等信号的检测等。 运动控制卡通过板卡接口输出PC机运算结果的运动控制脉冲数和运动方向控制等信号,经过伺服驱动功率放大器放大后,驱动步进电机或交流数字伺服电机转动,再通过滚珠丝杠传动机械,驱动两轴或三轴精密十字工作台运动。对于运动目标位置控制通常有两种模式:一种模式是采用步进电机驱动的开环控制系统模式,另一种是采用交流数字伺服电机驱动闭 * 本文通讯作者:邓振生

基于CAN总线的多伺服电机同步控制

基于CAN总线的多伺服电机同步控制 在印刷机械行业中,多电机的同步控制是一个非常重要的问题。由于印刷产品的特殊工艺要求,尤其是对于多色印刷,为了保证印刷套印精度(一般≤0.05mm),要求各个电机位置转差率很高(一般≤0.02%)。在传统的印刷机械中,以往大都采用以机械长轴作为动力源的同步控制方案,但机械长轴同步控制方案易出现振荡现象,各个机组互相干扰,而且系统中有许多机械零件,不方便系统维护和使用。随着机电一体化技术的发展,现场总线技术不断应用到各个领域并得到了广泛的应用。本文针对机组式印刷机械的同步需求,提出了一种基于CAN现场总线的同步控制解决方案,并得以验证。 一、无轴传动印刷机控制系统的同步需求 机组式卷筒印刷机一般由给纸机组、印刷机组、张力机组、加工机组和复卷机组等机组组成。在传统的有轴传动印刷机中,动力源由异步电机通过皮带轮带动一根机械长轴(约10-20m),然后通过长轴带动各机组的齿轮、凸轮、连杆等传动元件,再通过传动元件带动设备的执行元件完成设备的输人、输出任务。 卷筒印刷机要求印刷速度为300m/min,套印精度≤0.03mm,为了满足套印精度,要求在各个机组定位精度≤0.03 mm。在印刷机印刷过程中,要求各机组轴与机械长轴保持一定的同步运动关系,能否很好的实现各个机组轴的同步关系,将直接影响到印刷速度、套印精度等。其中,给纸机组、印刷机组要求与主轴转动速度成一定的比例关系,张力机组根据不同的印刷速度调整张力系数,加工机组需要与主轴保持凸轮运动关系,而复卷机组的运动规律,要求随着纸卷直径的增大而减小。 我们把机械长轴作为主轴(参考轴),各印刷机组轴为从动轴,如图1,各从动轴与主轴要满足同步关系θ1=f1(θ),θ2=f2(θ),θ3=f3(θ)···,其中,θ为主轴位置转角,θ1、θ2、θ3···为从动轴位置转角。 二、同步控制系统设计

运动控制卡C程序示例

2. VC 编程示例 2.1 准备工作 (1) 新建一个项目,保存为“ VCExample.dsw ”; (2) 根据前面讲述的方法,将静态库“ 8840.lib ”加载到项目中; 2.2 运动控制模块 (1) 在项目中添加一个新类,头文件保存为“ CtrlCard.h ”,源文件保存为“ CtrlCard.cpp ”; (2) 在运动控制模块中首先自定义运动控制卡初始化函数,对需要封装到初始化函数中的库函数进行初始化; (3) 继续自定义相关的运动控制函数, 如:速度设定函数,单轴运动函数,差补运动函数等; (4) 头文件“ CtrlCard.h ”代码如下: # ifndef __ADT8840__CARD__ # define __ADT8840__CARD__ 运动控制模块 为了简单、方便、快捷地开发出通用性好、可扩展性强、维护方便的应用系统,我们在控制卡函数库的 基础上将所有库函数进行了分类封装。下面的示例使用一块运动控制卡 ****************************************************** #define MAXAXIS 4 //最大轴数 class CCtrlCard { public: int Setup_HardStop(int value, int logic); int Setup_Stop1Mode(int axis, int value, int logic); (设置stop1 信号方式) int Setup_Stop0Mode(int axis, int value, int logic); (设置stop0 信号方式) int Setup_LimitMode(int axis, int value1, int value2, int logic); (设置限位信号方式) int Setup_PulseMode(int axis, int value); (设置脉冲输出方式) int Setup_Pos(int axis, long pos, int mode); (设置位置计数器) int Write_Output(int number, int value); (输出单点函数) int Read_Input(int number, int &value); (读入点) int Get_CurrentInf(int axis, long &LogPos, long &ActPos, long &Speed); (获取运动信息) int Get_Status(int axis, int &value, int mode); (获取轴的驱动状态) int StopRun(int axis, int mode); (停止轴驱动) int Interp_Move4(long value1, long value2, long value3, long value4); (四轴差补函数) int Interp_Move3(int axis1, int axis2, int axis3, long value1, long value2, long value3); (三轴差补函数) int Interp_Move2(int axis1, int axis2, long value1, long value2); (双轴差补函数) int Axis_Pmove(int axis ,long value); (单轴驱动函数) int Axis_Cmove(int axis ,long value); (单轴连续驱动函数) int Setup_Speed(int axis ,long startv ,long speed ,long add ); (设置速度模块) int Init_Board(int dec_num); (函数初始化) (设置速度模块) CCtrlCard(); (定义了一个同名的无参数的构造函数) int Result; // 返回值 }; #endif

多轴运动控制器开题报告

毕业设计(论文)开题报告 1.结合毕业设计(论文)课题情况,根据所查阅的文献资料,每人撰写2000字左右的文献综述: 多轴运动控制器文献综述 摘要:运动控制是20世纪90年代在国际上兴起的结合现代电力电子技术、计算机 技术、传感器技术等进行控制系统设计的一门多学科交叉的技术,在数控机床、 汽车、轻工、纺织和军事等领域应用广泛,其中的数控技术、机器人技术更是一个 国家运动控制技术发展水平的重要标志。 Abstract:Motion control is a interdisciplinary technology in the nineteen nineties,as the combination of modern power electronics technology, computer Technology, sensor technology, control system design . In the NC machine tool,Auto, light industry, textile and military and other fields are widely used, in which the numerical control technology, robotic technology are the symbol of a state's level of development of motion control technology. 1.运动控制器的概念: 运动控制起源于早期的伺服控制。简单地说,运动控制就是对机械运动部件的位置、速度等进行实时的控制管理,使其按照预期的运动轨迹和规定的运动参数进行运动。早期的运动控制技术主要是伴随着数控技术、机器人技术和工厂自动化技术的发展而发展的。早期的运动控制器实际上是可以独立运行的专用的控制器,往往无需另外的处理器和操作系统支持,可以独立完成运动控制功能、工艺技术要求的其他功能和人机交互功能。这类控制器可以成为独立运行的运动控制器。这类控制器主要针对专门的数控机械和其他自动化设备而设计,往往已根据应用行业的工艺要求设计了相关的功能,用户只需要按照其协议要求编写应用加工代码文件,然后传输到控制器,控制器即可完成相关的动作。这类控制器往往不能离开其特定的工艺要求而跨行业应用,控制器的开放性仅仅依赖于控制器的加工代码协议,用户不能根据应用要求而重组自己的运动控制系统2.运动控制需求:

使用mach3 usb插补控制卡

安装培训教程 声明: 本雕刻机作为网络交流的个人作品,成品及半成品及套件并非严格意义上的商品,使用者需具备相关知识,凡是涉及机械、电子、计算机的设备都有可能因使用不当或病毒、与其它软件兼容原因等造成故障,此故障可能造成一定的危险及经济损失,本人不对直接及间接损失承担相应责任。 有关软件版权: 本机器所涉及的相关软件均来自互联网,原作者享有版权,作为学习了解之用请及时删除并购买授权软件,使用没有授权的软件造成一切损失及法律问题由使用者自行承担。 有关培训范围: 本人只对CNC雕刻机承担相应的责任,货款只是设备本身的价格未包含任何软件及软件培训费用,货到后用户在手册指导或通过网络在作者指导下设备调试成功即确认作者的 工作完成,本设备使用过程中所涉及到的所有软件不在作者的培训责任之内,作者只能给予适当指导及在自己能力之内给予答疑解惑。 网络时代请广大玩家尽量利用网络工具求助交流.

设备及软件的安装及设置 警告: 数控雕刻机是依靠相关软件控制工作的,设备上的一些安全触发装置也是依靠正确的软件设置才能正常运行,在没有完全确认设置正确的情况下冒然装刀试机可能都设备造成永 久的损伤! 本设备采用计算机USB2.0接口和PC连接,控制软件MACH3通过端口控制雕刻机各轴按照指令运行。WINDOWS请用2000以上版本,其他版本可能出问题。 警告:控制用的PC应该是台专用的,使用时请断开网络,关闭杀毒软件,运行MACH3时请不要同时运行其他软件。本人并不建议用笔记本电脑控制本设备,如果一定要用请查看笔记本电脑的手册,关掉有关电源管理等相关功能! 一、控制软件MACH3的安装 警告:在软件的安装及设置过程中请不要开启雕刻机电源以免产生误动作发成意外! 1、在随机光盘“MACH3 2.63”目录中打开文件夹“MACH3” 2、运行“MACH3 R2.63.EXE”开始安装,全部默认点击“NEXT”直到安装完成 3、为了简化您的设置过程,安装完成后可以删除整个目录整个拷贝MACH3并将光盘内的目录,MACH3. 到C盘根目录下。

相关主题
文本预览
相关文档 最新文档