用DSP实现增量式光电编码器的细分

发布者:HeavenlyMelody最新更新时间:2014-12-17 来源: eccn关键字:光栅传感器  DSP  光电编码器 手机看文章 扫描二维码
随时随地手机看文章

1引言

目前,各类伺服驱动器及其应用中广泛采用光栅装置作为速度测量、位置测量的敏感元件。而且,广泛采用两路正交方波的形式,系统的实时性要求极高。因此,对于光栅编码器的信号的细分等主要处理环节,一方面集中考虑提高分辨率的问题,同时,需要考虑实时性的问题。

有很多采取纯硬件进行细分的方法,如,电阻链细分,空间细分,锁相倍频,还有两种方法的结合使用等。上述几种方法在实际应用中被广泛采用,特别是电阻链细分,在低倍频的情况下是一种很好的方案。但是在高倍频的情况下,不可避免地出现大量使用比较器的情况,以及比较器死区(滞后区)问题,难以调节。空间细分的方法中,主要解决的问题是切割电平精准的问题,其中的三角波切割三角波的方案有很多优点,可以改变使用过零比较造成的细分误差。但是仍然存在大量使用比较器的问题,调节起来比较繁琐。锁相倍频细分的方法,一方面,成本较前两种高,另一方面,受环境温度的影响比较大,实际的应用中很少采用。

高速数字处理器件DSP的应用可以极大地改善系统的实时性,DSP中集成了16路10位A/D转换,同时有丰富的硬件资源,比较器、定时器,和两个专门用于产生PWM波的事件管理器。DSP中丰富的指令集为做除法提供了条件。设DSP(2407a)的时钟频率是40MHZ,除法程序可以在35个指令周期内执行完,两路A/D转换需要29个指令周期,查询数据得细分值需要两个指令周期。共69个指令周期,DSP中程序执行是流水线执行的,一个时钟周期最多可以执行4条指令。则需要不到1.6us就可以得到精确的光栅位移值。对于一般的应用场合,用DSP细分可以足够保证控制器500KHz的频带,和定位的精确性。

本文从原理上考虑在DSP中完成细分的方案,使用取绝对值,八卦限理论,利用DSP器件(速度为25纳秒)对信号进行逻辑运算和处理等一整套信号细分方案。

2细分及框图

通过软件查询的方式进行细分。从光电编码器输出的两路角位移信号首先进行滤波整型,硬件辨向,提取整周期信号,得到粗位移;同时对两路信号进行A/D转换,通过U函数得到计数脉冲,从而得到卦限值,通过V函数得到精位移的地址信号,查询得到精位移。系统框图如下:

输入的两路信号分别是x1=2.5*sin(fai)+2.5(v),x2=-2.5*cos(fai)+2.5(v);在DSP中有专门的16路A/D转换电路,因而不用再设计A/D转换电路。A/D转换后得到y1=|2.5*sin(fai)|,y2=|-2.5*cos(fai)|。对其进行卦限计数,
A/D转换周期由软件设定,而在硬件电路实现时,必须要考虑卦限信号,控制信号的高度同步,但在实际电路中是很难做到的。

如果将该数据与相位之间的对应关系用一张表来描述,就是我们所建立的细分表,放在DSP中的SRAM中,DSP中集成了2K×16的SRAM,足够放置查询表。两者之间并不是一一对应关系。
(FAI)(t)=arctanθt∝sinxt/cosxt;

软件流程图如下:

软件程序流程图:

U函数取为U=y1*y2*(y2-y1);当U为零时,卦限信号就增加1

;;;;;;;;;;;-------细分程序

XIFEN:LDP#0E1h;

CLRCSXM;抑制符号位扩展

LACCRESULT0,10

SACHX1;存X1值

LACCRESULT1,10;

SACHX2;存X2值

SETCSXM;允许符号位扩展

LACLR1SIN;

SUB#JUNZHI;(2.5V);

ABS

SACLY1;得到y1

LACLX2;

SUB#JUNZHI(2.5V);

ABS

SACLY2;得到y2

SUBY1;

SACLY;得到Y=y2-y1值,保存;用dsp中计数器T4记卦限

BCNDss,NEQ

Lacly1

BCNDss,NEQ

Lacly2

BCNDss,NEQ;若U=0,卦限计数器计数

sett4clkin;为计数器提供脉冲

ss:LACLy

BCNDDEVISION,GEQ;判断卦限,y2>=y1时,直接y1/y2;否则y2/y1,除数变被除数

JIAOHUAN:LACCy1;y1和y2交换

SACLTEMP_AD;

LACLy2;

SACLy1;

LACCTEMP_AD;

SACLy2;y2/y1;毫秒为Q8格式

DEVISIONLACCR1SIN,6;;;;取分子并左移6位;

RPT#15;后面的指令执行15+1次。

SUBCR2COS;16CYCLEDIVIDEDLOOP

;.ACC中的数据减去Demon减10次,直到被减数小于0

SACLQUOT;得到商

SACHREMAIN;得到余数

LACCREMAIN;取余数后再除

RPT#13;后面的指令执行14次。

SUBCDENOM;

ANDQUOT;

;SACLQUOT;;;保存商。得到十位地址信号。用此信号得到RAM中对应地址细分值保存在DSP的sram中)

ADD#0800h;SRAM初始地址为#0800H(

SALXIFEN_ADR;

LACC#XIFEN_ADR

ADD#0800h;SRAM初始地址为#0800H

SALXIFEN_ADR;

LACLY;Y2>=Y1;

BCNDyy2,GEQ

LACL#05h;设编码最小栅格为40秒,一个卦限为5秒。

SUB#XIFEN_ADR

BYY

YY2:LACC#XIFEN_ADR

YY:Ldp#0eah;

LTt4cnt;卦限值

MPY#05h;一个卦限相差5秒,

APAC得到精确细分值

根据得到的细分值与整周期值相加就可以得到对应的光栅编码信号。

当速度特别慢时,用软件判卦限会出现重复计数。也就是一个细分周期里,电机转动的位移小于20/1024秒,如下图。卦限函数使得卦限增1,产生错误。我们要舍弃这个计数。

为了解决这个问题,我们把软件的判卦限程序改以下:用一个flaggx标志来表示卦限信号是否刚记过。刚刚记过,就舍弃掉。改正的程序流程如下图。

3软件辨向

要精确的控制电机,就必须精确判断当电机转动出现来回摆动时的方向。对硬件辨向只能做到在整周期计数时知道电机的转动方向,当在一个整周期内方向改变时,硬件辨向就不能及时的传递方向信息。我们根据判方向的规则,在软件中完成辨向,在1,2,7,8卦限,x2小于等于2.5v时为顺时针转动,大于2.5v为逆时针转动;在3,4,5,6卦限,x2大于2.5v时为顺时针转动,小于等于2.5v为逆时针转动;程序流程:

direction=1,表示顺时针,为0是逆时针;

若做到1024细分,分八个卦限,每个卦限有256个细分值。在DSP中只需要256×16个单元存储细分值即可。

细分码如下:

在DSP中有

关键字:光栅传感器  DSP  光电编码器 引用地址:用DSP实现增量式光电编码器的细分

上一篇:电容器测试的挑战与方案
下一篇:比值方案的桥式测量传感器

推荐阅读最新更新时间:2024-03-30 22:51

现代数字DSP的结构划分
  最近两年,DSP处理器的更高性能由于不能从传统结构中得到解决,因此提出了各种提高性能的策略。其中提高时钟频率似乎是有限的,最好的方法是提高并行性。提高操作并行性,可以由两个途径实现:提高每条指令执行的操作的数量,或者是提高每个指令周期中执行的指令的数量。这两种并行要求产生了多种DSPs新结构。    增强型DSP   以前,DSP处理器使用复杂的、混合的指令集,使编程者可以把多个操作编码在一条指令中。传统上DSP处理器在一条指令周期只发射并执行一条指令。这种单流、复杂指令的方法使得DSP处理器获得很强大的性能而无需大量的内存。   在保持DSP结构和上述指令集不变的情况下,要提高每个指令的工作量,其中的一个办法是用额外的执行单
[嵌入式]
ARM的DSP增强型扩展
  现在,很多新兴的应用领域涌现了许多新的算法标准,这些算法对于处理器提出了更高的性能和控制要求。信号处理需要处理器提供高峰值性能,但这部分在整个算法中的比例有减少的趋势。对于开发包含高性能算法的大规模应用的设计团队来说,有很多种可供选择的方案。市场竞争的压力使得选择一个对高性能有充分保障的处理器平台来实现高性能的功能变得非常重要。但是选择超出需求性能很多的处理器平台对于系统成本和电源消耗也是有着很大影响的,这会直接导致产品缺乏竞争力。   ARM在提供通用的RISC处理器架构的同时,为其增添了一些针对特定应用的高性能指令集,以期能够达到软件和硬件的一个优化平衡。这样,一些高度涉及信号处理的应用本来是要借助一块专用DSP来完成的,
[单片机]
ARM的<font color='red'>DSP</font>增强型扩展
物联网市场的春天还没来?
  根据The Linley Group的研究显示,大约要到2019年以后,IoT市场才可能达到每年十亿台的市场规模…下面就随网络通信小编一起来了解一下相关内容吧。   根据业界分析师表示, 物联网 (Internet of Things;IoT)的成长速度并不如预期的那么快,但由于更多的整合元件与低功耗网路而持续稳定成长。   此外,为了加速成长动力,业界厂商陆续推出 物联网 产品,包括晶心科技(Andes Technology)日前发布了四款新的核心,可用于IoT闸道器以及其他用途。   The Linley Group资深分析师Mike Demler表示,大约要到2019年以后,IoT市场才可能达到每年十亿台的市场规模。届
[网络通信]
让繁杂的音视频压缩标准不再束缚您的设计
  AVS视频从诞生那一刻开始,科学家和工程人员就在为缩小音视频码流而做着不懈的努力,各种先进的视频压缩算法不断涌现和标准化,这不仅是为了满足降低视频信号的存储量和带宽的需求,更是为在此基础上提供更高的分辨率和更佳的音视频质量,以满足消费者对音视频体验的无休止的需求。   无论在便携式多媒体播放还是在数字家庭娱乐领域,多样的音视频压缩标准一直是工程师比较头疼的问题。在便携式领域,由于移动带宽的昂贵和网络多媒体内容的丰富,音视频压缩标准更新很快,种类也十分繁多,给工程师的设计造成了持续的挑战。在家庭娱乐领域,随着高清内容的逐渐普及和传输方式的多样化,视频带宽不断增加,视频处理和各种高速接口的设计也更加复杂,机顶盒和数字电视的设计面
[嵌入式]
让繁杂的音视频压缩标准不再束缚您的设计
TI系列DSP的I2C模块配置与应用
I2C总线最早是由Philips公司提出的串行通信接口规范,标准I2C总线只使用两条线通信,能将多个具有I2C接口的设备连接,进行可靠的通信,连接到同一总线的I2C器件数量,只受总线最大电容400pF的限制,而且最高通信速率可以达到3.4Mb/s,由于I2C接口简单,使用方便,被很多芯片采用,成为一种广泛应用的接口 。 DSP即数字信号处理器,是一种广泛应用的嵌入式处理器,主要应用是实时快速地实现各种数字信号处理算法,目前,国际主要的DSP供应商是TI公司,其TMS32系列产品占据了DSP市场近一半的份额,为了用户能方便快捷的进行系统的开发与集成,TI公司在一些型号的DSP中集成了I2C通信模块,本文以TMS320C6713为例
[嵌入式]
DSP片外高速海量SDRAM存储系统设计
在数字图像处理、航空航天等高速信号处理应用场合,需要有高速大容量存储空间的强力支持,来满足系统对海量数据吞吐的要求,通过使用大容量同步动态RAM(SDRAM)来扩展嵌入式DSP系统存储空间的方法,选用ISSI公司的IS42S16400高速SDRAM芯片,详细论述在基于TMS320C6201(简称C6201)的数字信号处理系统中此设计方法的具体实现。   1 IS42S16400芯片简介   IS42S16400是ISSI公司推出的一种单片存储容量高达64Mb(即8MB)的16位字宽高速SDRAM芯片。SDRAM的主要特点是:①同步访问,读写操作需要时钟;②动态存储,芯片需要定时刷新。IS42S16400采用CMOS工艺,它的同
[嵌入式]
电源中的数字控制支持工业4.0、物联网和应用特定要求
数字信号处理(DSP)控制在电源和电源系统中的应用带来了巨大的效益。从通信和控制到支持网络化的工厂和高效的智能制造,被称为工业4.0、第四次工业革命或更广泛地作为物联网(IOT),通过在终端设备内的通信和控制和/或裁剪来实现在独立应用中的灵活性和效率,在终端设备开发阶段提供电源,以确保高效集成和优化性能特性。 在这里,我们将介绍在将电源和电源系统集成到连接和独立的应用程序和设备中时,真正的数字控制所提供的背景、可能性和好处。 背景 电源和电源系统中的数字控制大致分为两种实现方式。更常见的方法是在传统的模拟控制系统和外部世界之间建立一个数字接口,通过通信总线提供信号和警报以及各种级别的控制。 带数字接口的模拟电源
[电源管理]
电源中的数字控制支持工业4.0、物联网和应用特定要求
DSP在电能表中的应用
  实时数字信号处理、超大规模集成电路技术的飞速发展,不断地推动着数字信号处理器性能的提高,使其在信号处理、军事及民用电子技术领域发挥着越来越重要的作用,其应用广度和深度也在不断地扩展和深化。数字信号处理相对于模拟信号处理有很大的优越性,主要表现在精度高、灵活性强、可靠性好、易于大规模集成及存储等方面,而且可以采用多种性能优良的数字信号处理方法和算法。实时数字信号处理技术的核心和标志是数字信号处理器。快速傅里叶变换等实用算法的提出,促进了实现数字信号处理的发展。数字信号处理在于运算处理的实时性。   电能表作为电能的计量工具,多年来一直倍受国家电力部门的重视,电能表生产企业更是不遗余力地致力于设计与开发,但目前我国电能表设计水
[嵌入式]
<font color='red'>DSP</font>在电能表中的应用
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved