EDN China > 设计实例 > 微处理器与DSP > DSP应用 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

基于DSP的运动控制器的研究与开发

詹海菊?? 2009年02月03日 ?? 收藏0

  1 运动控制器硬件结构

  本运动控制器的硬件结构主要分为如下几个模块:DSP+CPLD 主控模块,包括 DSP 核心 模块和 CPLD 驱动与扩展模块;通信接口模块,包括 PCI 总线、USB 总线和串口;I/O 输入输 出接口模块以及外围存储器模块,包括 SRAM 和 FLASH。本运动控制器的硬件结构如图 1 所示。

运动控制器硬件结构图

图 1 运动控制器硬件结构图

  1.1 DSP+CPLD 主控模块

  本系统采用了 TI 公司的 TMS320F2812 DSP 为控制核心,这是工业界首批 32 位的控制 专用、内含 FLASH 以及高达 150MHz 主频的数字信号处理器,专门为工业自动化、光学网络及自动化控制等应用而设计的。TMS320F2812 采用哈佛总线结构,有独立的程序和数据空间;具有很强的运算能力,能够实时地处理许多复杂的控制算法;片上内存丰富,可支持45 个外设级中断和 3 个外部中断,提取中断向量和保存现场只需 9 个时钟周期,响应迅速; 片上集成了多种先进的外设,包括两个事件管理器(EV)、12 位 A/D、两个串行通信接口(SCI)、一个串行外围接口(SPI)以及一个多通道缓冲串行接口(McBSP)等;其通用输 入/输出多路复用器(GPIO)拥有多达 56 个 I/O 口,在系统的软件开发中正是利用了这些丰富的内外设资源,才实现了系统要求的各种功能。

  本系统中选用的 CPLD 是 Altera 公司 MAX3000A 系列的 EPM3128,这是一款高性能、 低功耗的基于 EEPROM 的 PLD。由于本系统的控制对象是步进电机,所以设计中主要利用TMS320F2812 的 GPIO 口进行电机控制接口与 I/O 接口的输入输出,但是由于 TMS320F2812是低功耗处理器,其 GPIO 引脚的输出驱动能力有限,而且由于 DSP 是主控核心,负载比 较多,所以将所有输出信号都经过 CPLD 驱动后输出,提高信号的驱动能力。此外,CPLD还用于系统电路的译码,增加系统设计的灵活性和可扩展性。

  1.2 通信接口模块

  本系统在用作插卡式运动控制时利用 PCI 总线实现 DSP 与 PC 的通信。PCI(PeripheralComponent Interconnect 外围部件互联)总线是 Intel 公司联合其他 100 多家公司于 1992 年推 出的基于新一代处理器的一种局部总线,是一种高性能 32/64 位数据/地址复用总线,能为 CPU 及外设提供高性能数据。PCI 总线具有严格的规范,目前已经发布了 PCI V1.0 和 V2.1规范,保证了其良好的兼容性;PCI 总线与 CPU 无关,与时钟频率也无关,可适用于各种平台,支持多处理器和并发工作;PCI 总线可以提供极高的数据传输速率,还具有良好的扩 展性。因此,PCI 总线在基于计算机总线的运动控制系统,即“PC+运动控制器”的结构中应用十分广泛。

  本系统选用 CYPRESS 公司的 CY7C68001 芯片实现 PC 机和 DSP 之间的 USB 通信。CY7C68001 是通用 USB2.0 接口控制器,它是基于应用层编程的接口器件,相对于其它基于 链路层编程的接口器件,使用和开发都很方便。本系统采用 DSP 片上的 SCI 串行通信模块以及 MAX232 芯片转换成标准 RS-232 的通 信信号,实现正常的串口通信。

  1.3 I/O 输入输出接口模块

  本系统的输入/输出是通过 CPLD 的逻辑控制来实现的,以提高系统的工作可靠性和设 计柔性。考虑到运动控制器的可扩展性以及 DSP 的 GPIO 引脚的数量,共设计了 16 路数字量输出通道和 16 路数字量输入通道。数字量输出通道主要用于各轴方向、脉冲信号的输出以及一些外部设备的启停控制,如主轴及冷却液的开关控制等;数字量输入通道可根据用户 具体要求来定义其用途,如作为传感器接口,用于零点、限位信号的输入等。为提高系统应用的灵活性,系统输出采用了普通输出和差分输出两种方式,具体使用可由用户自行设定。

  1.4 外围存储器模块

  TMS320F2812 芯片内部包括 128KB 的 FLASH 和 18KB 的 SARAM,其中 128KB 的FLASH 用来存储系统软件程序已经足够,但是在实际使用中,考虑到运动控制指令和加工程序需要通过 USB 总线或 PCI 总线下载到运动控制器中,且 DSP 在工作过程中需要处理大 量的数据,仅依靠 DSP 芯片内部的存储空间远远不够,所以考虑外扩一片 FLASH 和一片SRAM 作为用户加工程序存储器和系统的工作存储器,它们通过 CPLD 完成与 DSP 之间的读写操作。

  本系统选用了 Intel 公司的 E28F128 FLASH 和 ISSI 公司的 IS61LV51216SRAM。E28F128 是一种采用 CMOS 工艺制成的 8MB 的 FLASH,其读写访问时间为 150ns,此读写周期已经 大于 DSP 对外部端口的读写周期,为了能够和 DSP 的读写周期进行匹配,在对 FLASH 进 行读写操作过程中必须插入等待周期。IS61LV51216 是一种高速异步静态 512KB 的 SRAM, 其读写周期为 10ns,与 DSP 之间可以无需插入等待周期便可以进行读写操作,并可以直接映射到 DSP 外部存储接口的 Zone2 或者 Zone6 区域。

  2 运动控制器软件结构

  2.1 系统软件功能设计

  运动控制器通常作为一个独立的过程控制单元用于工业自动化生产中,它的功能是由硬件和软件共同实现的硬件为软件运,行提供了支撑环境,软件负责实现系统要求的所有功能。本系统软件需要完成控制和管理两大任务,图 2 表示的是其软件功能结构。

运动控制器软件功能结构图

图 2 运动控制器软件功能结构图

  其中,系统的控制包括位置控制、插补、速度处理和开关量 I/O 控制等,这类任务的实时性很强,所以软件程序的优先级也较高;系统的管理包括人机界面显示、参数设置和程序 下载等,这类任务的实时性要求不高,所以软件程序的优先级也相对较低。可以说,一个运 动控制系统的基本功能均由上述功能的子程序实现,通过增加子程序可进一步增加系统的功能。


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

DSP? 运动控制器? CPLD? TMS320F2812?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈