机械测量中旋转编码器与单片机的通用接口

发布者:数据迷航者最新更新时间:2011-12-17 关键字:机械测量  旋转编码器 手机看文章 扫描二维码
随时随地手机看文章

  在准备”Freescale”杯全国大学生智能车比赛中我们开始的时候是采用红外传感器来测量速度,但是它受环境的干扰很大,且响应频率很小,还达不到1K Hz,为了提高速度测量精度和响应频率,减小环境的干扰,决定采用了旋转编码器,我们成功地开发了单片机与旋转编码器的最简硬件接口。

  旋转编码器及其工作原理

  旋转编码器是用来测量角度的装置。它分为单路输出和双路输出两种。单路输出是指旋转编码器的输出是一组脉冲,而双路输出的旋转编码器输出两组相位差90度的脉冲,通过这两组脉冲不仅可以测量转速,还可以判断旋转的方向。

  它将测量到的角度量转换为数字脉冲信号输出,用来检测被检对象的角位移、角速度、角加速度、线位移、线速度和线加速度等,因而,应用十分广泛。旋转编码器有绝对式和增量式两种。绝对式所测量到的角位置是绝对位置;而增量式所测量的是转动体角位移的累计量。

  旋转编码器有一个中心有轴的光电码盘,其上有环形通、暗的刻线,有光电发射和接收器件读取,获得四组正弦波信号组合成A、B、C、D,每个正弦波相差90度相位差(相对于一个周波为360度),将C、D信号反向,叠加在A、B两相上,可增强稳定信号;另每转输出一个Z相脉冲以代表零位参考位。

  由于A、B两相相差90度,可通过比较A相在前还是B相在前,以判别编码器的正转与反转,通过零位脉冲,可获得编码器的零位参考位。

  信号输出有正弦波(电流或电压),方波(TTL、HTL),集电极开路(PNP、NPN),推拉式多种形式,其中TTL为长线差分驱动(对称A,A-;B,B-;Z,Z-),HTL也称推拉式、推挽式输出,编码器的信号接收设备接口应与编码器对应。编码器的脉冲信号一般连接计数器、PLC、计算机,PLC和计算机连接的模块有低速模块与高速模块之分,开关频率有低有高。如单相联接,用于单方向计数,单方向测速。B两相联接,用于正反向计数、判断正反向和测速。 A、B、Z三相联接,用于带参考位修正的位置测量。A、A- 、B、B- 、Z、Z-连接,由于带有对称负信号的连接,电流对于电缆贡献的电磁场为0,衰减最小,抗干扰最佳,可传输较远的距离。

  为方便用户使用,旋转编码器信号有电压、NPN、PNP、T、D多种输出方式。不同输出方式的抗电磁干扰的能力也不同。因而,可根据使用的具体要求选择恰当输出形式的旋转编码器。本设计采用旋转编码器的单相联接输出方波。

  旋转编码器与单片机的接口

  由于工程实践和比赛的需要,我们研究开发了一种单片机与旋转编码器直接接口的方法。此方法就是直接将旋转编码器信号端与Freescale 的S12的单片机的输入捕捉/输出比较通道(IOC)极为简洁,由此构成的系统极为简单而可靠性很高。旋转编码器A相输出信号,故可使用单片机的IOC1(IOC0~IOC7任意一个都可以)与之相接。实际使用时,根据旋转编码器信号线的长度及电磁干扰的程度,可以在旋转编码器与单片机之间增加光电耦合器,或整形门电路,以抵抗干扰,调理旋转编码器的输入信号。我们在使用中采用了电压输出形式的旋转编码器,而且信号线很短,接口电路见图1。

                    

                     图1 旋转编码器与单片机的接口电路

  图1上拉电阻R是因为我们的编码器是NPN型集电极开路的。在这个接口方式中,将旋转编码器的A相与单片机的IOC1/PT1引脚相连,输出端需接1KΩ的上拉电阻,这个电阻是我们通过实验得到的结果,其空载输出脉冲频率为0~10KHz。

  实物图见图2,我们采用齿轮啮合的原理将电机的齿轮和编码器的齿轮啮合,当电机旋转带动编码器的旋转,编码器就在接上拉电阻的信号线A上产生方波。

             

                         图2 智能车上旋转编码器的安装

  接口程序[page]

  上述接口方法是利用了S12单片机的ECT模块的外部输入捕捉/输出比较工作方式。单片机也仅仅使用外部输入捕捉的来处理旋转编码器数据,只要将旋转编码器的A相(或B相)接至外部输入捕捉口IOC1(IOC0~IOC7任意一个都可以),程序如下:

  用PT1(IOC1)通道作为速度脉冲信号输入,ECT模块初始化步骤如下:

  1)设置TIOS寄存器,设置PT1通道为输入;

  2)设置TCTL4寄存器,使得上升沿和下降沿(任何沿)均能得到捕捉;

  3)设置ICOVW_NOVW寄存器,保护脉冲累加器的数据;

  4)置位ICPAR_PA1EN,使能脉冲累加器。设置此寄存器之后,脉冲累加器开始计数;

  5)通过读取PACN1寄存器,即可以获取当前的脉冲累加值。

  初始化程序为:

  void ECT_initial(void) //ECT初始化

  {

  DDRT_DDRT1=0; //置PT1(IOC1)脚为输入

  TIOS_IOS0=0;

  TIOS_IOS1=0; //通道1为输入捕捉

  TCTL4=0b00001101; //通道1为任何沿捕捉

  TSCR1_TEN=1; //计数器1使能

  ICOVW_NOVW1 = 1; //保护

  ICPAR_PA1EN = 1; //脉冲累加器使能

  }

  在每一控制周期开始时,MC9S12DG128读取脉冲累加器中的数值(average[5]),然后与前5个控制周期的脉冲累加器值求和(all_speed)再求平均值,做为当前速度反馈值(speed)。程序流程图如图3所示。

             

                               图3 直流电机测速流程图

  计数速度的测试

  采用以下两种方法对电机测速部分进行测试:

  1)让智能车在赛道上行驶,每20ms将赛车当前速度值通过SCI串口发送到上位机上,并利用串口调试器进行监控。对正好在一圈当中赛车行驶的速度值进行累加求和,再乘以20ms,得到的总行驶距离约为27m,而模拟赛道总长约为26m,两者的相对误差不到4%。这说明,速度传感器测量基本准确。

  2)直流电机空载运行时,改变脉冲捕捉方式,在上升沿、下降沿和任何沿捕捉方式间进行切换。不改变驱动电机占空比设置,理想情况下,单位时间内捕捉的脉冲数满足:上升沿获取下的脉冲数=下降沿获取下的脉冲数=任何沿获取下的脉冲数/2。在脉冲捕捉方式不变的情况下,改变PWM信号占空比(即改变速度给定值),检测的速度值与占空比近似成线性比例关系。以上间接说明脉冲检测的可靠性。

 

 

关键字:机械测量  旋转编码器 引用地址:机械测量中旋转编码器与单片机的通用接口

上一篇:X25043的原理及在单片机系统中的应用
下一篇:MSP430系列超低功耗单片机及应用

推荐阅读最新更新时间:2024-03-16 12:49

旋转编码器在线速度检测控制中的应用
引言   该项目是为某电缆厂的技术改造项目,要改造的设备是利用束线原理制造的盘绞式成缆机,改造的内容是更换全部电气控制系统。这种成缆机的放线盘固定,而收线盘固定在盘绞架上同时完成绞合和收线的双重运动。工作时,在线缆盘直流电机的带动下,完成电缆的收线运动,在排线电机的带动下实现电缆在收线盘的整齐排列。在大盘电机的带动下,通过齿轮箱带动盘绞架实现轴向旋转,完成电缆绞合运动,是保证节距的关键。线速度是由收线盘的旋转速度决定的,如果收线电机的转速恒定,收线盘随着收线轴的变粗,线速度会增大,因此,为保证收线速度恒定,要逐渐降低收线电机的转速。    1 系统设计原理   根据电缆的生产工艺要求,不同型号的电缆,其走线速度是恒定的。通常
[模拟电子]
<font color='red'>旋转</font><font color='red'>编码器</font>在线速度检测控制中的应用
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved