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

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1一种SSI接口光电编码器数据并行采集设计方法靳红涛,赵勇进,陈朝基,张斌中国兵器工业第二零八研究所北京102202摘要:SSI接口即同步串行接口具有传输速度快、连线简单、抗干扰能力强等优点,因而在光电编码器上得到了越来越广泛的应用,但其与计算机接口的连接实现较为复杂,在一定程度上影响了SSI接口光电编码器的推广和应用。基于复杂可编程逻辑器件CPLD开发的SSI接口模块SSI208P,实现了SSI接口编码器数据的高速并行采集。本文对SSI208P模块进行了详细介绍,并给出了硬件设计和软件设计思路及实现方法。关键词:SSI光电编码器串并转换高速采集1概述光电角度编码器利用光电转换原理,将连接轴的转动角度量转换成相应的电脉冲序列并以数字当量输出,具有体积小、精度高、接口数字化等优点,被广泛应用于雷达、机器人、数控机床和高精度伺服系统等诸多领域。光电编码器的数据输出有并行和串行两种接口,串行方式又分为同步串行接口(SynchronousSerialInterface,简称SSI)和异步串行接口两种。SSI方式比异步串行方式速度快很多,因此SSI接口以及在SSI基础上发展起来的Endat、BISS等接口在光电编码器上得到越来越广泛的应用。单片机、DSP、PC104、工控机等工控领域常用的控制器一般不提供SSI接口,市场上常见的SSI转换器多是将SSI信号转换成通用异步串行信号,通信速率低、价格高、不易安装,此外SSI光电编码器供应商一般也不提供接口转换器,这些因素在一定程度上限制了SSI光电编码器的应用。本文给出了一种SSI接口数据高速并行采集、低成本实现方法。2SSI接口介绍SSI接口光电编码器采用主机主动读取方式,是以2对符合RS-422电平的信号线进行信号传输,1对数据(Data)线,1对同步时钟(Clock)线。SSI同步时钟频率决定数据传输速率,其范围较宽,为0.1~2MHz,可以根据传输距离远近选择相应的传输速率。SSI数据传输时序如图1所示。在同步时钟控制下,从最高有效位(MSB)开始传输数据,在时钟信号的第一个下降沿,编码器的当前位置值被储存,在随后的时钟上升沿,存储的数据被送出。不传输数据时,时钟信号和数据信号都为高电平。图中T为同步时钟周期,Tm为脉冲序列结束保持低电平时间,Tp为时钟脉冲序列间隔(Tp≥Tm),D1~Dn为角位置数据,MSB为最高有效位,LSB为最低有效位。clockdataTDnDn-1D2D1MSBLSBTmTp图1SSI接口数据传输时序图3SSI208P通用接口模块由中国兵器工业第二零八研究所基于CPLD研制的SSI208P模块,内部封装了SSI同步时钟发生模块、数据串并转换模块、接口控制逻辑模块、输出控制模块以及收发驱动(TTL-RS422电平转换)模块等功能模块,其功能框图如图2所示。时钟发生器脉冲计数器收发驱动控制逻辑串并转换输出控制VCCGND/CSA0A1D0~D7CLK+CLK-DATA+DATA-CLKMD0CLKMD1CONVST/EOC图2SSI208P模块功能框图SSI208P模块完成了SSI接口与并口的转2换和封装,对SSI接口数据的读取操作就变得类似于对A/D、D/A或存储器读取数据的操作,非常简单。SSI208P模块通信速率可配置为250KHz、500KHz、1MHz、2MHz,当通信速率配置为2MHz时,对于16位精度的编码器,系统数据更新率不低于100KHz,可以满足高速伺服控制系统的需求。3.1管脚配置SSI208P接口转换模块采用DIP28封装,其管脚排列如图3所示。12345678910111213141516171819202122232425262728D0D1D2D3D4D5D6D7NCA1A0CLK+CLK-DATA-DATA+NC/CS/EOCCONVSTCLKMD1CLKMD0GNDVCCNCNCNCNCNC图3SSI208P管脚排列图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管脚置低,准备启动下一次转换。T1125nsT20CONVSTCLK/EOC/CSA0A1D0~D7图4SSI208P控制时序图4基于SSI208P模块的编码器接口设计采用SSI208P模块,可以大大简化单片机、DSP、PC104等控制器扩展SSI编码器接口的软硬件设计。下面给出一种基于DSP处理器TMS320F2812的典型应用。4.1硬件设计DSP处理器TMS320F2812与SSI208P模块的硬件连接原理图如图5所示。VCCXD0XD1XD2XD3XD4XD5XD6XD7GPIOB4GPIOB5/XZCS01XA0D0D1D2D3D4D5D6D7CONVST/EOC/CSA0A1VCC0.1uCLK+CLK-DATA+DATA-CLKMD0CLKMD1GNDSSI208TMS320F281210K编码器10KVCC图5SSI208P硬件设计原理图3编码器为单圈16位绝对式角度编码器,SSI208P模块的八位数据总线与TMS320F2812的低八位数据线相连;因使用的编码器为16位,所以仅需一位地址线即可区分编码器数据高八位和低八位;使用外部地址片选管脚/XZCS67作为SSI208P的外部片选信号;使用通用IO口GPIOB4控制SSI208P模块启动;使用通用IO口GPIOB5进行SSI208P模块转换结束状态查询;CLKMD0、CLKMD1接上拉电阻拉高,将SSI208P模块同步时钟频率配置为2MHz。4.2软件设计由SSI208P模块控制时序图可以看出SSI208P模块的启动转换控制和数据读取操作比较简单,软件流程如图6所示。开始给CONVST上升沿,启动转换延时(不少于125ns)转换结束读取高低位数据CONVST置低结束YN图6SSI208P软件流程图对应图5中硬件设计,DSP处理器TMS320F2812相应的软件代码如下所示:#includeDSP28_Device.h#defineSSIL*(int*)0x00100000//SSI模块低八位地址#defineSSIH*(int*)0x00100001//SSI模块高八位地址intSSI_VAL;//编码器数据main(){……EALLOW;GpioMuxRegs.GPBMUX.bit.GPIOB4=0;GpioMuxRegs.GPBMUX.bit.GPIOB5=0;//配置GPIO4、GPIO5引脚为IO引脚GpioMuxRegs.GPBDIR.bit.GPIOB4=1;//GPIOB4配置为输出GpioMuxRegs.GPBDIR.bit.GPIOB5=0;//GPIOB5配置为输入EDIS;GpioDataRegs.GPBDAT.bit.GPIOB4=0;GpioDataRegs.GPBDAT.bit.GPIOB4=1;//启动数据发送及转换for(i=0;i1;i++);//延时约200nswhile((GpioDataRegs.GPBDAT.bit.GPIOB5)!=0);//查询转换是否结束SSI_VAL=(SSIL&0xFF)|((SSIH8)&0xF00);//读取SSI编码器高低八位数据并组合GpioDataRegs.GPBDAT.bit.GPIOB4=0;……}5结束语本文提供了一种SSI接口转并口高速采集数据的模块实现方法,并提供了详细的硬件原理图和软件代码。该模块已经运用于某车载系统的火控分系统中,运行稳定可靠。SSI208P系列模块适合用在以单片机、DSP、PC104等作为控制器的控制系统中,适用于各种精度具有SSI接口的编码器数据采集,也可用于Endat、BISS等接口形式的数据采集。参考文献[1]张子蓬,王淑青,刘辉.SSI接口的绝对值角度编码器值的读出方法研究[J].工业控制计算机,2005,(12)[2]张子蓬,王淑青,袁晓辉.基于缓冲器的编码器接口扩展方法研究[J].微计算机信息,2006,(20)[3]苏奎峰吕强等,TMS320F2812原理与开发[M].北京:电子工业出版社,2005[4]TexasInstruments.TMS320F281xDigitalSignalProcessorsDataManual.2003靳红涛:博士、工程师,从事伺服控制及陀螺稳定系统研究,Email:htjin@asee.buaa.edu.cn。

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功