摘要:同步串行接口(SSI)具有速度快、连线简单、抗干扰能力强等优点,在工业控制等领域得到了越来越广泛的应用。一般的工控机上不提供SSI接口,市场上的SSI接口扩展卡很少且价格昂贵。介绍了SSI并行接口模块SSI208P,基于数字量输入/输出扩展卡和SSI208P,给出了一种工控机高速采集多通道SSI光电编码器数据的低成本实现方案,详细阐述了硬件和软件设计方法。
关键词:SSI;光电编码器;工控机;数据采集
SSI(Synchmnous Serial Interface)即同步串行接口,具有传输速度快、连线简单、抗干扰能力强等优点,在光电编码器等各种传感器上得到了广泛的应用。工控机即工业控制计算机,具有计算机CPU、硬盘、内存、外设及接口,并有操作系统、控制网络和协议、计算能力、友好的人机界面,工控机以低成本、高性能、高可靠性等优势成为工业控制等领域的主流计算机。
工控机一般不提供SSI接口,很难直接采集SSI接口的编码器等传感器数据。SSI接口转换器多将SSI数据转换成异步串行总线等低速现场总线,这大大限制了数据采集的实时性;市场上也有国外提供PCI或ISA接口的SSI接口卡,但价格昂贵且驱动程序较为复杂。工控机上多配备数字量输入/输出卡。本文采用数字量输入/输出卡控制SSI并行接口模块SSI208P,实现了一种SSI接口的低成本、高速数据采集方法。
1 SSI208P模块介绍
SSI208P模块可将SSI数据高速转换成并行数据,采用DIP28封装,内部集成了SSI同步时钟发生模块、数据串并转换模块、接口控制逻辑模块、输出控制模块以及收发驱动(TTL-RS422电平转换)模块等功能模块,其功能框图如图1所示。
采用SSI208P模块对SSI接口数据的读取操作就变得类似于对A/D、D/A或存储器读取数据的操作,非常简单。SSI208P模块还能将格雷码转换成二进制码。通信速率可配置,当通信速率配置为2 MHz时,对于16位精度的编码器,系统数据更新率不低于100 kHz,可以满足高速伺服控制系统的需求。
SSI208P控制时序如图2所示。CONVST上升沿启动一次SSI编码器数据收发过程。CONVST电平升高后,125 ns内SSI208P模块开始向编码器发送一帧同步时钟脉冲信号,脉冲的个数由编码器的精度决定,同时转换结束管脚变高。发送脉冲期间管脚保持高电平状态,转换结束管脚电平变低后,即可从D0~D7并行读取编码器数据,每次读取八位,由A1、A0控制输出数据高低位,0表示读取最低八位、1表示读取最高八位,例如对于16位编码器只需渎取两次(A1、A0分别为00、01),最多可以读取32位数据。编码器并行数据读取结束后将CONVST管脚置低,准备启动下一次转换。
2 硬件设计
数字量输入/输出卡与SSI并行接口模块SSI208P及SSI光电编码器之间的硬件连接原理图如图3所示。图中数字量输入/输出卡扩展了四路SSI编码器。数字量输入/输出接口由研华公司的多功能PCI数据采集卡PCI-1716提供,该采集卡除了提供16路模数转换通道和2路数模转换通道外,还提供了16路数字量输入和16路数字量输出通道。四通道光电编码器为16位格雷码输出格式。接口板上采用了四片SSI208P芯片,SSI时钟速率和编码器数据格式的设置都由接口板完成。PCI-1716的数字量输入端口的信号电气特性为:输入逻辑高电平:2.0~5.25 V;输入逻辑低电平:0.0~0.80V;输出逻辑高电平:2.4 V(最小);输出逻辑低电平:0.4 V(最大)。参考SSI208P管脚的电气特性可知,PCI-1716和SSI208P的管脚可以直接连接。
采用PCI-1716的输入端口D10~D17连接四片SSI208P的数据线D0-D7,由于SSI208P在没有片选信号的情况下数据线是高阻态的,因此数据线可以共用。PCI-1716的输出端口D01连接四片SSI208P的启动转换管脚START,可以同时控制四路SSI编码器。PCI-1716的输出端口DO0连接四片SSI208P的地址选择管脚A0,因编码器为16位,A1接地。PCI-1716的四个输出D02-D05分别连接四片SSI208P的片选管脚CS。IO卡的四个输入D19-DI11分别连接四片SSI208P的转换结束指示管脚/END。使用PCI-1716的18个IO口就可以实现四路光电编码器的时序控制和数据采集。
3 软件设计
编程采用Borland C++ Builder,调用PCI-1716的驱动程序操作各输入输出端口,在各输入输出端口上产生满足SSI208P的控制逻辑即可启动转换,采集数据。由图2可以看出SSI208P模块的启动转换控制和数据读取操作比较简单,软件流程如图4所示。
相应的软件代码如下:
4 结束语
本文基于SSI并行接口模块SSI208P和数字量输入/输出接口扩展卡,给出了一种工控机高速采集多通道SSI光电编码器数据的低成本实现方案。试验证明,在同步时钟设置为500 kHz的情况下,转换读取四路16位SSI光电编码器的时间小于100μs,可用于实时性要求很高的应用场合。该方案已经成功运用于某车载武器系统的火控分系统中,运行稳定可靠。