首页 > 范文大全 > 正文

基于DSP与FPGA的四轴运动控制器设计与研究

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于DSP与FPGA的四轴运动控制器设计与研究范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:针对数控系统的工作特点和要求,通过对DSP TMS320F2812、FPGA EP2C8F256C6及以太网控制器RTL8019AS的深入研究,设计了一种基于dspfpga运动控制器。该控制器以DSP和FPGA为核心器件,针对运动控制中的实时控制、高精度等具体问题,规划了DSP的功能扩展,并在FPGA上扩展了功能相互独立的四轴运动控制电路。该电路实现了四路控制信号输出,四路编码信号的接收和处理,以及原点信号,正负限位信号等数字量的接收和处理。具有结构简单、开放性、模块化等特点,能够较好的满足运动控制器的实时性和精确性。

关键词:DSP; FPGA; 以太网控制器; 运动控制器

中图分类号:TN830.1-34; TP271 文献标识码:A 文章编号:1004-373X(2011)21-0202-03

Design and Research on Four-axis Motion Controller Based on DSP and FPGA

SHI Jiang-hua1, WEI Shi-min2, LI Jin-quan2, YANG Xiang-dong3

(1. Automation School of Beijing University of Posts and Telecommunications, Beijing 100876, China;

2. Beijing University of Posts and Telecommunications, Beijing 100876, China;

3 .Tsinghua University, Beijing 100084, China)

Abstract: According to the characteristics and requirements of CNC system, a motion controller based on DSP and FPGA was designed through a research on DSP TMS320F2812, FPGAEP2C8F256C6 and Ethernet controller RTL8019AS. For the real-time control and high precision issues of motion control, planning the DSP function expansion and expanding four-axis motion control circuit with independent function in the FPGA. The circuit can implement four-way control signal outputs, can deal with four-way encoder feedback signals, and can receive and dispose input digital signals such as origin signal, positive and negative limit signals and so on. The motion controller has simple structure, openness, modularity, etc. It can better meet the real-time and accurate performance of the motion controller.

Keywords: DSP; FPGA; Ethernet controller; motion controller

0 引 言

运动控制技术是制造自动化的关键基础,其水平高低是衡量一个国家工业现代化的重要标志,研究和开发具有开放式结构的运动控制器是当前运动控制领域的一个重要发展方向[1-2]。随着集成电路技术、微电子技术、计算机技术和网络技术的不断发展,运动控制器已从以单片机和微处理器作为核心的运动控制器和以专用芯片(ASIC)作为核心处理器的运动控制器,发展到了基于PC机平台的以数字信号处理器(DSP)和现场可编程门阵列(FPGA)作为核心处理器的协处理架构的开放式运动控制器[3]。该控制器将PC机和DSP的信息处理能力与FPGA的扩展功能很好的结合在一起,具有信息处理能力强、模块化、开放程度高、运动轨迹控制精确等优点。

1 系统概述

该四轴运动控制器系统以TI公司C2000系列DSP芯片TMS320F2812和ALTERA公司Cyclone Ⅱ系列FPGA芯片EP2C8F256C6为核心,DSP通过网口接收上位机的控制参数,完成系统位置、速度控制及运动轨迹规划;FPGA完成运动控制器的精确插补功能和电路的扩展,系统总体框图如图1所示。

运动控制器的主要功能包括:4路模拟电压输出,电压范围为-10~+10 V,分辨率为16 b;4路脉冲量信号输出;4路脉冲方向信号输出;4路驱动复位信号输出;4路驱动使能信号输出;4路差分编码信号输入;4路驱动报警信号输入;8路正负限位信号输入;4路原点信号输入;16路通用数字量I/O。

2 DSP模块设计

DSP根据从上位机接收的运动模式和运动参数实时计算规划位置和规划速度,生成所需的速度曲线,实时的输出规划位置。TMS320F2812是TI推出的一款专门用于电机控制的32位定点DSP芯片,采用高性能静态CMOS技术,主频高达150 MHz(指令周期6.67 ns),低功耗,核心电压为1.8 V,I/O电压3.3 V,支持JTAG边界扫描,128K×16 b的片内FLASH。有两个事件管理器(EVA和EVB),它们都是特定的设备,为多轴运动控制器而设计的[4]。可通过外部存储器接口XINTF扩展外部存储器。DSP模块设计如图2所示。

图2 DSP模块

为增强抗干扰性,DSP通过以太网控制器RTL8019AS与上位机连接,RTL8019AS内部含有┮桓16 KB的SDRAM,DSP通过外部存储器接口对其进行读写来接收上位机的命令或向上位机传送反馈信号。在数据处理过程中要占用大量的存储空间,DSP内部仅含有18K×16 b的SARAM和128K×16 b的FLASH,存储空间显得过小,所以通过外部接口扩展了256K×16 b RAM和512K×16 b FLASH,RAM和FLASH芯片分别选择IS61LV25616AL、SST39V-

F800,它们都具有接口简单、读写速度快等优点[5-6]。SCI模块用于扩展RS 232串行通信接口,串口芯片使用MAX 3232。

运动控制器所需电压为5 V,3.3 V,1.8 V,1.2 V。输入电压5 V,分别采用稳压芯片LM1085IS-3.3,LM1117-1.8将其转换成3.3 V和1.8 V,由于TMS320F2812的I/O电压3.3 V要先于内核电源上电,所以1.8 V要由3.3V降压得到,以确保上电次序。1.2 V是FPGA内核所需电压,由稳压芯片LM317S稳压得到,LM317S的输出电压范围为1.2~25 V, 复位电路采用SP708低功耗微处理器监控器件,此器件有众多的组件,有效的增强了系统的可靠性及工作效率。

3 FPGA模块设计

FPGA用于轴资源的扩展,当接收到DSP中的规划位置后,在轴资源中对其进行变换处理,输出到伺服控制器中,伺服控制器将规划位置与编码反馈的计数位置进行比较,获得跟随误差,并通过伺服控制算法得到实时的控制量,将控制量传递给D/A转换器,由D/A转换器转换成控制电压输出。

EP2C8F256C6是ALTERA公司Cyclone Ⅱ系列芯片,其特点为高性能低功耗,内核供电电压为1.2 V,8 256个逻辑单元(LEs),182个用户I/O口(项目中使用了157个I/O口),165 888 b的内部RAM,嵌入了18 b的乘法器,每个乘法器又可拆成2个9 b的乘法器,芯片内部含有2个锁相环(PLL),8个全局时钟(Global Clocks)[7-8]。该芯片所具有的逻辑单元数、频率和用户I/O口等都能很好的满足设计需求。FPGA的模块扩展如图3所示。

3.1 与DSP接口设计

DSP芯片的事件管理器(EVA,EVB)用于和FPGA连接,当输出脉冲量控制驱动器时,DSP使用两个事件管理器进行PWM波的控制,当输出模拟量时,DSP使用GPIOA/GPIOB向FPGA输出规划位置。

3.2 模拟信号输出电路设计

采用D/A转换器AD669进行模拟信号的输出,AD669具有两级锁存,在设计中,将其四路D/A芯片的第一级锁存处于透明状态,第二级锁存控制信号LDAC连在一起,当四路D/A芯片的数据预装好后,打开┑诙级锁存,四路D/A芯片即可同时转换,实现了四轴驱动的同时控制。

3.3 脉冲信号输出电路设计

脉冲输出电路由FPGA内部精插补器完成,精插补器根据DSP发送来的粗插补数据产生均匀的脉冲输出,脉冲的输出有两种格式:“脉冲+方向”和“正负脉冲”。由于差分信号对外部电磁等信号有很好的抗干扰性,特别是对共模干扰有很好的抑制作用。所以脉冲经过光耦隔离后,再将信号接入差分线驱动器AM26LS31后输出,差分线驱动器AM26LS31的作用是将输入的单极性方波信号转化为一对极性相反的电机驱动信号。

3.4 编码反馈电路设计

电机编码信号直接传入电机驱动器中,电机驱动器将三对差分编码信号A+,A-,B+,B-,N+,N-作为反馈传给运动控制器。在电机旋转时,所发出的编码信号会出现非常多的毛刺,并且经过驱动器大电源的干扰,如果直接接到FPGA中,可能会引起误判断,所以先将三对编码信号经过差分芯片AM26LS32转化成单路信号A,B,N后再接入FPGA中。芯片AM26LS32功能是将输入的一对极性相反的编码器差分信号转化成单极性的脉冲信号,与AM32LS31正好相反。

3.5 开关量接口和通用I/O电路设计

输出信号包括复位信号和使能信号,由FPGA产生,经光耦隔离后直接输出;输入信号包括驱动报警信号,正负限位信号和原点信号,这些信号经光耦隔离、电平转换后再由FPGA接收,当FPGA检测到这些信号后,确定具体的触发信号,做出相应的反应。另外运动控制器还提供了八路数字量输入通道和八路数字量输出通道,输入、输出通道都经光电隔离,以提高抗干扰性[9]。

4 网口模块设计

DSP通过以太网控制器RTL8019AS与上位机连接,RTL8019AS在一块芯片上集成了RTL8019AS内核和一个16 KB的SDRAM存储器,兼容RTL8019AS控制软件和NE2000 8 b或16 b传输,其接口符合Ethernet2和IEEE 802.3标准。RTL8019AS与主机的接口模式有三种模式:跳线模式,PnP模式,RT模式[10]。此运动控制器使用便于DSP应用的跳线模式。DSP与RTL8019AS的连接如图4所示。

(1) 数据总线和地址总线。RTL8019AS的数据总线和DSP的16位数据总线直接相连即可。RTL8019AS片内NE2000寄存器组都是通过其映射I/O端口进行访问,I/O端口共32个,地址偏移量为00H~1FH,把I/O基地址设为300H,则对应的I/O端口寻址范围为:300H~31FH。只需要10根地址线就可以对I/O端口进行寻址,把SA10~SA19接低电平,SA0~SA9按照表1接法即可。

只需要5根地址线就可以寻址32位I/O端口,所以可以直接把SA9,SA8接高电平,SA5~SA7接低电平,SA0~SA4与DSP的低5位地址线XA0~XA4相接。

(2) 控制总线。RTL8019AS片选信号AEN使用DSP的扩展片选信号XZCS0AND1,IORB、IOWB直接与DSP的读写控制信号XRD、XWE相连,中断输出引脚INT0与DSP的XINT2相连,高电平有效的复位输入引脚与监控电路芯片SP708的RST相连,当DSP复位时,RTL8019AS也复位。

(3) RTL8019AS与网络介质接口。RTL8019AS可以使用同轴电缆或双绞线作为传输媒介,将其AUI接口接地或悬空,使用BNC接口。BNC接口方式支持8线双绞线或同轴电缆。20F001N是双绞线驱动器,为耦合隔离变压器模块,通过它可以去除因电路数字特性导致的高次谐波。RTL8019AS与20F001N的连接如图4所示。其差分输入信号TPIN+、TPIN-与差分输出信号TPOUT+、TPOUT-分别与20F001的对应引脚相连。

5 结 语

在PC平台下,充分利用了DSP的数据处理能力和FPGA的硬件特性, 使系统既能进行复杂的轨迹规划、高速插补,又能保证运动控制器的稳定性和精确性,这种运动控制器能应用于数控系统,机器人制造等控制领域。

参考文献

[1]钱志恒,周亚军.基于DSP与FPGA的运动控制器[J].机电工程,2009,26(1):38-41.

[2]丛爽,李泽湘.实用运动控制技术[M].北京:电子工业出版社,2006.

[3]汪卫民,李银华,张劲.基于DSP+FPGA的开放式伺服运动控制器的研究[J].工业控制计算机,2006,19(1):58-59.

[4]Texas Instruments Incorporated.TMS320C28X系列DSP的CPU与外设[M].张卫宁,译.北京:清华大学出版社,2005.

[5]Integrated Silicon Solution Incorporated. 256k*16 high speed asynchronous CMOS static ram with 3.3 V supply \[M\]. \[S.l.\]: Integrated Silicon Solution Incorporated, 2003.

[6]Silicon Storage Technology Incorporated. 8 Megabit (512k*16-Bit) multi-purpose flash \[M\]. \[S.l.\]: Silicon Storage Technology Incorporated, 1999

[7]Altera Corporation. Cyclone Ⅱ device handbook \[M\]. \[S.l.\]: Altera Corporation, 2007.

[8]王诚,吴继华.Altera FPGA/CPLD设计(基础篇)[M].北京:人民邮电出版社,2005.

[9]郑晓峰,方凯,黄迎华.一种基于DSP和FPGA的多轴运动控制卡的设计[J].自动化与仪器仪表,2006(4):18-20.

[10]姚斌,康世英,谢佳.嵌入式以太网接口硬件部分的设计与实现[J].微处理机,2008,29(2):155-157.

作者简介:

石江华 男,1985年出生,山东菏泽人,硕士。主要研究方向为机器人控制。

魏世民 男,1965年出生,北京人,教授。主要研究方向为机器人机构学、机器人虚拟设计、移动机器人测控技术。

李金泉 男,1968年出生,北京人,讲师。主要研究方向为机器人机构学、机器人运动学、动力学分析。

杨向东 男,1966年出生,北京人,副教授。主要研究领域为机器人运动规划、机器人运动学、动力学分析。