一种SSI接口光电编码器数据并行采集设计方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一种SSI接口光电编码器数据并行采集设计方法

靳红涛, 赵勇进, 陈朝基, 张斌

中国兵器工业第二零八研究所北京 102202

摘要:SSI接口即同步串行接口具有传输速度快、连线简单、抗干扰能力强等优点,因而在光电编码器上得到了越来越广泛的应用,但其与计算机接口的连接实现较为复杂,在一定程度上影响了SSI接口光电编码器的推广和应用。基于复杂可编程逻辑器件CPLD开发的SSI接口模块SSI208P,实现了SSI接口编码器数据的高速并行采集。本文对SSI208P模块进行了详细介绍,并给出了硬件设计和软件设计思路及实现方法。

关键词:SSI 光电编码器串并转换高速采集

1 概述

光电角度编码器利用光电转换原理,将连接轴的转动角度量转换成相应的电脉冲序列并以数字当量输出,具有体积小、精度高、接口数字化等优点,被广泛应用于雷达、机器人、数控机床和高精度伺服系统等诸多领域。光电编码器的数据输出有并行和串行两种接口,串行方式又分为同步串行接口(Synchronous Serial Interface,简称SSI)和异步串行接口两种。SSI方式比异步串行方式速度快很多,因此SSI接口以及在SSI基础上发展起来的Endat、BISS等接口在光电编码器上得到越来越广泛的应用。

单片机、DSP、PC104、工控机等工控领域常用的控制器一般不提供SSI接口,市场上常见的SSI转换器多是将SSI信号转换成通用异步串行信号,通信速率低、价格高、不易安装,此外SSI光电编码器供应商一般也不提供接口转换器,这些因素在一定程度上限制了SSI光电编码器的应用。本文给出了一种SSI接口数据高速并行采集、低成本实现方法。

2 SSI接口介绍

SSI接口光电编码器采用主机主动读取方式,是以2对符合RS-422电平的信号线进行信号传输,1对数据(Data)线,1对同步时钟(Clock)线。SSI同步时钟频率决定数据传输速率,其范围较宽,为0.1~2MHz,可以根据传输距离远近选择相应的传输速率。SSI数据传输时序如图1所示。在同步时钟控制下,从最高有效位(MSB)开始传输数据,在时钟信号的第一个下降沿,编码器的当前位置值被储存,在随后的时钟上升沿,存储的数据被送出。不传输数据时,时钟信号和数据信号都为高电平。图中T为同步时钟周期,T m为脉冲序列结束保持低电平时间,T p为时钟脉冲序列间隔(T p≥T m),D1~D n为角位置数据,MSB为最高有效位,LSB为最低有效位。

图1 SSI接口数据传输时序图

3 SSI208P通用接口模块

由中国兵器工业第二零八研究所基于CPLD研制的SSI208P模块,内部封装了SSI同步时钟发生模块、数据串并转换模块、接口控制逻辑模块、输出控制模块以及收发驱动(TTL-RS422电平转换)模块等功能模块,其功能框图如图2所示。

CLK+

CLK-/EOC

图2 SSI208P模块功能框图

SSI208P模块完成了SSI接口与并口的转

换和封装,对SSI 接口数据的读取操作就变得类似于对A/D 、D/A 或存储器读取数据的操作,非常简单。SSI208P 模块通信速率可配置为250KHz 、500KHz 、1MHz 、2MHz ,当通信速率配置为2MHz 时,对于16位精度的编码器,系统数据更新率不低于100KHz ,可以满足高速伺服控制系统的需求。

3.1 管脚配置

SSI208P 接口转换模块采用DIP28封装,其管脚排列如图3所示。

1234567891011121314

15

16171819202122232425262728D0D1D2D3D4D5D6D7NC A1

A0CLK+CLK-DATA-DATA+NC /CS /EOC CONVST CLKMD1CLKMD0GND VCC NC

NC NC NC NC

图3 SSI208P 管脚排列图

CLKMD1,CLKMD0:SSI 时钟频率设置,

00-250KHz , 01-500KHz , 10-1MHz , 11-2MHz 。

CONVST :启动指令,上升沿启动转换。 /EOC : 转换结束状态查询,低为转换结束。 /CS : 编码器数据输出选择。 D0~D7:8位输出数据并口。 A1,A0:输出数据高低位选择;

00-最低八位,

11-最高八位。

CLK+,CLK-: SSI 编码器时钟信号。 DATA+,DATA-: SSI 编码器数据信号。 VCC ,GND : 电源,电源地。 NC : 空管脚。

3.2 控制时序

SSI208P 控制时序如图4所示。CONVST 上升沿启动一次SSI 编码器数据收发过程。CONVST 电平升高后,125ns 内SSI208P 模块开始向编码器发送一帧同步时钟脉冲信号,脉冲的个数由编码器的精度决定,同时转换结束管脚/EOC 变高。发送脉冲期间管脚/EOC 保持高电平状态,转换结束/EOC 管脚电平变低后,即可从D0~D7并行读取编码器数据,每次读取八位,由A1、A0控制输出数据高低位,00表示读取最低八位、11表示读取最高八位,例如对于16位编码器只需读取两次(A1、A0分别为00、01),最多可以读取32位数据。编码器并行数据读取结束后将CONVST 管脚置低,准备启动下一次转换。

CLK /EOC

/CS

A0 A1D0~D7

图4 SSI208P 控制时序图

4 基于SSI208P 模块的编码器接口设计

采用SSI208P 模块,可以大大简化单片机、DSP 、PC104等控制器扩展SSI 编码器接口的软硬件设计。下面给出一种基于DSP 处理器TMS320F2812的典型应用。

4.1硬件设计

DSP 处理器TMS320F2812与SSI208P 模块的硬件连接原理图如图5所示。

VCC XD0XD1XD2XD3XD4XD5XD6XD7GPIOB4GPIOB5/XZCS01

XA0

D0D1D2D3D4D5D6D7CONVST /EOC /CS A0A1

VCC

0.1u

CLK+CLK-DATA+DATA-CLKMD0CLKMD1

GND

SSI208

TMS320F2812

10K

编码器

10K

VCC

图5 SSI208P 硬件设计原理图

相关文档
最新文档