找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

[嵌入式/ARM] 基于FPGA与FSM的高精度测角系统设计与实现

[复制链接]
admin 发表于 2013-3-25 03:04:30 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
摘  要: 介绍了一种基于有限状态机(FSM)的高精度角度测量系统。该系统采用Renishaw高精度增量式光电编码器作为位置传感器来测量角度,在FPGA上用VHDL语言描述与仿真有限状态机,实现信号滤波与去抖,从而保证了计数器计数的正确性。在ARM9处理器上实现角度的实时计算,并控制转台旋转。在激光跟踪测量系统的工程应用中验证了该系统的正确性和有效性。
关键词: 有限状态机; FPGA; 增量式光电编码器; EP1C12Q240
       激光跟踪测量系统(Laser Tracker System)是工业测量系统中常用的一种高精度的测量仪器,是近十年发展起来的新型大尺寸空间测量仪器,不仅对静止目标可以测量,而且对运动目标也可以进行跟踪测量。它集合了激光测距技术、光电技术、精密机械技术、计算机及控制技术等各种先进技术,对空间运动目标进行跟踪并实时测量目标的空间三维坐标。它具有快速、动态、精度高等优点,适合于大尺寸工件配装测量。在航空航天、机械制造、核工业、现代军事等测量领域得到广泛的应用。该系统的跟踪精度在很大程度上依赖于转台的旋转角度的测量精度。
     为了提高系统转台旋转角度测量的精度,本系统采用高分辨率的光电编码器来测量角度。光电编码器是利用光栅衍射原理实现位移数字变换的,光电编码器作为一种高精度的测角传感器已普遍应用于伺服跟踪系统中,它具有精度高、响应快、性能稳定可靠等优点。光电编码器按编码方式主要分为两类:增量式与绝对式。由于增量式光电编码器成本低、测角的精度高,因此本系统的增量式光电编码器选用Renishaw公司的高精度圆光栅。
     然而,由于机械振动或抖动等原因,增量式编码器的输出脉冲会出现抖动毛刺的现象,因此需要在对编码器输出脉冲进行计数的过程中采取有效的方法来去掉抖动干扰。本文介绍的有限状态机方法,在FPGA上可以有效消除抖动引起的计数干扰,提高计数的精度[1]。
1 方案设计
1.1 系统组成

     激光跟踪测量系统的核心处理模块主要由ARM处理器,FPGA组成。为了充分利用ARM9微处理器的运算能力和FPGA的高速逻辑处理能力,在设计中对功能的实现进行了划分。ARM9 用于运动控制平台的控制并且与FPGA一起形成一个完整的应用平台。FPGA主要完成编码器的精确计数功能、与ARM9处理器数据通信、与激光测距仪数据通信功能。系统的组成框图如图1所示。本文重点介绍在FPGA上实现编码器的输出脉冲计数与角度测量。
    20121107050428961673066.gif
   
   1.2 增量式编码器原理
     增量型编码器通常有3路信号输出:A、B和Z,每路都是差分信号,共6路信号,信号采用TTL电平,A脉冲在前,B脉冲在后,A、B脉冲相差90°,每旋转一圈发出一个基准脉冲Z,作为参考机械零位。Z相的波形中心对准A相输出的波形中心。利用A相B相的相位差来进行判相,A超前B 90°为正转,反之B超前A 90°为反转。
     由于增量式编码器不带记忆功能,因此对外界因素引起的干扰非常敏感,在实际应用中,由于机械振动、工作环境,电机负载等都无可避免地会产生震动,编码器会在某一相的脉冲边缘的地方出现抖动的情况,因此有效滤掉脉冲的抖动和毛刺,是提高计数精度的关键技术。编码器输出真实信号的波形如图2所示[2-3]。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-12-26 23:39 , Processed in 0.058371 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表