基于DSP 的PCI 通用运动控制卡的硬件设计
摘要:本文提出了一种基于TMS320F2812 的PCI 总线通用运动控制卡的设计方案。详细介绍了运动控制卡的硬件结构,并对控制卡的配置进行了深入分析,给出了具体的配置参数。最后,介绍了板卡驱动程序的设计方法。采用DSP 和PCI 结合的方式,实现了上下位机的高速通讯,并充分发挥了DSP 强大的运算能力和极高的处理速度,以保证控制卡对实时性和精度的苛刻要求。
1 引言
随着 DSP 技术的飞速发展,以其为核心的多轴运动控制卡越来越广泛的应用在运动控制系统中。上位机只需对被控对象实施总体的控制和管理,而位置反馈信号的采集、闭环控制的计算和控制量的输出均由运动控制卡完成,这极大地提高了运算速度和控制响应速度。本文设计的运动控制卡以TI 公司的32 位定点DSP TMS320F2812 为核心处理器,辅以运动控制器LM628,通过PCI 总线专用接口芯片PCI9052 与上位机通信,实现3 轴(可扩成多轴)伺服电机的控制,完成位置、速度控制以及直线、圆弧插补功能。本文将对运动控制卡的硬件设计进行详细的介绍。
2 运动控制卡的硬件结构
TMS320F2812 是基于TI 公司最新的C28x 内核而设计的。与其他的处理器相比,其具有如下一些特点:采用低功耗设计,核心电压仅1.8V~1.9V,显著降低了功耗,指令周期可达6.67ns;新增了扩展控制寄存器以实现各种增强功能;多达128K×16 位的Flash 存储器,足够用于存储程序和数据变量;56 个可编程或复用的通用I/O。
LM628 是NSC 公司专为使用增量式编码器作为位置反馈的伺服机构而设计的一种芯片,其集成度高,需要外围部件少,易于调试。主要特点如下:具有32 位位置、速度和加速度寄存器;带有16 位参数的可编程数字PID 控制器;可编程微分采样间隔;运动过程中可改变速度、预期位置和PID 控制器参数;实时可编程的主机中断。
PCI9052 是PLX 公司推出的低成本、低功耗、32 位PCI 总线专用目标接口芯片。其兼容PCI V2.1 协议特性,可与多种局部总线相连;支持复用或非复用的8/16/32 位局部总线;支持4 个局部片选信号和5 个局部地址空间;支持两个来自局部总线的中断,可生成一个PCI 中断;支持局部总线等待状态,附加的LRDYi#握手信号可用于产生各种等待状态。运动控制卡的总体硬件结构如图 1 所示。其中,DB 为数据总线,AB 为地址总线,CB为控制总线,CS-1~CS-4 为片选信号,XA0 为DSP 经电平转换后的最低位地址线。
图 1 运动控制卡的总体硬件结构
从图中可以看出 PCI 接口芯片的PCI 总线端直接与金手指相连,局部总线端则通过双端口RAM 与DSP 相连,构成16 位存储转换电路。DSP 分别与三片LM628 相连,与其配合以实现3 轴运动控制。这样既解决了DSP 因系统资源不足不能控制多轴的问题,又弥补了LM628 单独控制时总线传输延时的缺点。LM628 的数字量输出经数/模转换和电压放大后转换为交流伺服驱动器可以接收的模拟电压信号(-10V~+10V)。而伺服电机增量式光电编码器的反馈经差分电路滤波并合成单端信号接入到LM628 中,以构成位置闭环控制。
图 2 PCI 总线接口框图
2.1 PCI 总线接口
PCI 总线是一种高性能、32 位地址/数据复用总线,数据传输速率高达132MB/s。目前实现PCI 接口的有效方案有使用可编程逻辑器件和使用专用接口芯片两种。前者实现PCI接口比较灵活,但是设计难度很高。后者虽没有前者那么灵活,但其优越性非常明显:能够有效降低接口设计的难度,缩短开发时间,同时其还具有较低的成本和通用性,并能够优化数据传输,提供配置空间等。这里采用PCI9052 实现PCI 总线接口,并选用EEPROM93LC46B 对其进行配置,电路框图如图2 所示。中断信号这里只用到一条中断线INTA#。
2.2 局部总线接口
为了满足DSP 与上位机之间大量数据的高速交换,这里采用主从式共享双口RAM 的通信方案,接口电路如图3 所示。由于IDT7133 是2K×16 位的SRAM,因此将PCI9052的局部总线设置为16 位宽的数据总线,即将LBE1#单独接到IDT7133 的A0L 端。BUSYL经非门接到PCI9052 的LRDYi#端,这是因为当BUSYL 为高时才允许外部设备访问,而局部总线准备好信号LRDYi#为低电平有效。BUSYR 经电平转换后直接接到TMS320F2812 的READY 端。当BUSYL 或BUSYR 任何一个引脚被置低,其所属设备就等待一个访问周期,直到BUSY 被拉高,即双口RAM 不再忙,这样便保证了数据传输的准确性和可靠性。因此,采用双口RAM 通信不但简化了接口电路的设计,而且提高了上下位机数据交换的速度。
图 3 局部总线接口电路
2.3 LM628 伺服控制单元
控制卡共有 3 路输出,其中一路如图4 中虚线框(1)所示
控制卡 硬件 设计 运动 通用 DSP PCI 基于 相关文章:
- 基于DSP+CPLD的伺服控制卡的设计(04-10)
- 基于TMS320F2812的多轴运动控制卡设计(09-18)
- 基于PCI总线运动控制卡的开放式圆柱凸轮数控加工系统的开发(12-20)
- 基于运动控制卡的喷涂机控制系统设计(12-13)
- 基于89C51单片机的数字视频监控系统键盘及报警控制卡设计(12-13)
- 基于PCI 总线的四轴运动控制卡的研制(09-15)