用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

一种简单实用的测角码盘设计方案

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-10 23:48:16
【本文由PB创新网为您整理】
摘要:介绍一种制作简单、价格便宜、应用面广的测角码盘设计方案;并以码盘信号的产生、处理和传输为主线,详细说明工作原理,进而再次证明其简单便宜的突出优点。

    关键词:测角码盘 编码胶片 状态编码

测控系统中,经常用到采集各种角度参数或对转动机构进行测速的角度传感器。目前,市场上一些具有成熟技术的角度传感器有自增角机、电位器、javascript:window.open(this.src);" style="cursor:pointer;"/>码盘、霍尔元件和齿轮计数器等。这些产品中,有的精度很高,但价格昂贵,有的价格便宜,但结构复杂,往往难于同时满足结构简单、价格便宜的要求。本文介绍一种光电码盘设计方案,硬件结构非常简单、成本价格十分便宜,而且稳定性好、使用寿命长,又能满足多数情况下的精度要求。

1 工作原理

1.1 原始信号的产生

(1)信号产生原理

图1是码盘产生原始信号的原理示意图。

本码盘用于采集信号的器件是一对发光管和接收管,每个管内有两套收发装置。其功能实现过程为:在发光管和接收管之间放一圆形黑白相间且宽度相同的编码胶片,使三者分别处于相互平行的平面内,将发光管和接收管中心对正,并使编码胶片可以绕其轴心旋转。javascript:window.open(this.src);" style="cursor:pointer;"/>上电后,发光管会连续不断地发射信号,但由于胶片是黑白相同的,所以当黑色部分正对发光管时,发光管发出的信号将被阻挡,使接收管接收不到信号;而当白色部分正对发光管时,发光管发出的信号将透过胶片射到接收管上。这样,在接收端就得到两路连续变化的正弦波。

(2)方向判别原理

图2为原理示意图。

编码胶片宽度是收发装置距离的两倍,两收发装置位置关系应满足B=(0.7n+0.35)+A,图中n=0。

同理,当胶片向右转动时,A、B信号变化恰好相反。这样,通过A、B信号不同的变化规律实现对方向的判别。

1.2 信号处理

图3是码盘信号处理电路图。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    该电路的主要任务是将产生的原始模拟信号转换为数字信号,即模数转换。由传感器产生的0V为振荡中心的正弦波信号,经跟随器处理后转换为以+2.5V为振荡中心的正弦波信号。通过调节电位器,使其波形达到最佳状态,然后,经过大器将正弦波信号放大10倍。此时,由于放大的拉伸作用,被钳位在0~5V之间的信号已具有非常陡的上升沿和下降沿,最后经施密特触发器整形后,以方波形式输给单片机。其波形关系如图4所示。

1.3 信号控制及传输

图5为控制传输电路图。

    这部分主要通过软件编程实现对信号的处理。硬件结构包括信号处理芯片AT89C2051、信号传输芯片75176和相应的复位电路。其中,复位电路采用由MAX813L芯片组成的看门狗电路。正常工作时,由89C2051为其定时提供触发信号,不产生复位;若发生错误,则在距上次触发信号1.6s后,该电路会自动产生复位信号,对89C2051进行复位。

信号处理电路产生的方波信号A、B由端口Px.m和Px.n输入,然后通过软件比较端口现在时刻和下一时刻的状态变化,实现功能选择。最后,通过端口Px.k控制的串行通信 芯片75176传给主控板,实现信号的控制传输。
javascript:window.open(this.src);" style="cursor:pointer;"/>
2 软件设计

2.1 状态编码

由图4可知,A、B信号的相位相差1/4个周期,所以可得图6所示的状态变换图。

若规定顺序时针方向计数器为加,逆时针方向计数器为减。

这样,通过不同状态值的变换就可对数据进行加操作、减操作和不操作,从而实现对信号的连续处理功能。javascript:window.open(this.src);" style="cursor:pointer;"/>

2.2 软件编程

软件流程如图7所示。

主要可分为以下几部分。

①上电开始后,软件首先对AT89C2051的内部寄存器和RS422串行口进行初始化。通过对专用寄存器的赋值,设定工作状态和通信 方式,串行通信的波特率为9600b/s。

②初始化完成后,软件将检测端口Px.m和Px.n的状态,程序用两位记录端口相邻状态值,左一位代表前一状态,右一位代表当前状态,然后通过带进位的左循环指令进行状态更新。通过状态值变化,查表2,跳转进入执行程序。

③在执行程序中,可根据不同需要设定上下限进行数据处理。同时,由于处理程序很少,执行时间短,串行通信部分可采用查询方式完成。

3 应用实例

把该设计应用到笔者开发的项目—某型转达训练系统上。采用图3和图5所示的电路设计方案,用该码盘连续采集空中飞行目标的方位角和高低角。

以高低角采集为例,系统指标要求高低角变化范围是-50~1450密位,设计中采用的编码胶片精度是480单位/圈。如文中图1所示,由于编码胶片是圆形的,且一个黑色或一个魄区间均可称为一个单位,所以计算其精度时用每圈包含的黑白区间个数确定,因此用单位/圈。对高低角增减判断主要通过软件编程实现,这段程序如下。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    MAIN1:MOV A,R4 ;读骊盘A、B信号到码盘状态暂存器R4

MOV C,P3.3 ;P3.3为A信号采集端口,

RLCA ;用于A信号新旧状态转换

MOV C,P3.5 ;P3.5为B信号采集端口,

RLCA ;用于B信号新旧状态转换

MOV R4,A

ANL A,#0FH ;计算散转地址

MOV B,#03H

MUL AB

MOV DPTR,#TIM1;TIM1为状态真值表首地址

LJMP @A+DPTR ;散转至真值表

然后,通过查真值表状态值,转入处理程序实现角度的加减。若出现丢码现象,说明单片机采集速度低于码盘转动速度,可根据实际情况更换采集芯片或降低码盘转动速度。同时,通过规定编码胶片每旋转个单位对应的角度值变化1密位(密位是军事用语,一种更精确的划分角度方法,一周为360度,6000密位)和相应的单位转换。在软件中确定了码盘采集量的上下限和单位变化量,从而限定了高低角的变化范围,也达到了采集精度要求。

图8

   

[1] [2]  下一页

Tags:

作者:佚名
  • 好的评价 如果您觉得此文章好,就请您
      0%(0)
  • 差的评价 如果您觉得此文章差,就请您
      0%(0)

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:22,250.00000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号