DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 95|回复: 0
打印 上一主题 下一主题

基于MCU+CPLD的新型光栅数显系统设计

[复制链接]
跳转到指定楼层
楼主
发表于 2011-4-25 19:20:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
基于MCU+CPLD的新型光栅数显系统设计
1 引言
  光栅数显系统主要用于普通机床,可直接显示机床加丁的长度值,有助于提高加工精度和效率。目前国内市场上的光栅数显系统大多采用国外集成电路实现,研发成本高,且不便于操作人员使用。针对这种状况,研发了基于MCU+CPLD的新型光栅数显系统。该系统具有计数精度高、成本低、操作方便以及升级快等特点,能够处理高达5 MHz/s的正交脉冲,并在掉电时有效存储当前长度值,其数码管可显示关键的长度值,点阵式液晶屏还可显示相关的提示信息。
  2 系统工作原理
  利用CPLD实现正交脉冲处理逻辑电路,而可逆计数器则用于处理计数光栅尺输出的正交脉冲,CPLD的高速并行处理能力可保证光栅尺输出信号无遗漏采样,从而确保计数的可靠性。可逆计数器的值通过MCU一系列运算后转换为机床加工的长度值、MCU再将其长度值回送至CPLD并在数码管上显示。
  此外,CPLD还具有7×8键盘按键检测和去抖功能,将处理后的可靠按键送至MCU。MCU主要用于液晶屏的显示控制、掉电数据保存,以及复杂的数学运算。系统工作原理框图如图1所示。



  3 正交脉冲信号采集处理
  3.1 正交脉冲采集
  光栅尺输出一组正交脉冲信号,即相位差为90°的两路方波,如图2所示。当光栅尺正向移动一个栅距时,光栅尺输出一个00—01一11—10—00循环,A路方波相位超前于B路90°;当光栅尺反向移动一个栅距时,光栅传感器输出一个00—10一11一01一00循环,A路方波相位滞后B路90°。




点击看原图


  分析A,B两路方波的逻辑状态发现A,B两路方波在任意时刻下只有一路信号发生逻辑状态变化。如果在逻辑状态变化前A,B两路的状态相同,那么变化后的逻辑状态肯定相异;如果变化前A,B两路方波逻辑状态相异,那么变化后逻辑状态肯定相同。只需对这两路信号异或,就能提取光栅尺运动的方向信号updown以及与运动距离成正比的计数脉冲cp。
 由图2看出,光栅尺移动一个栅距将输出4个cp脉冲,系统测量的最小分辨率提高至1/4栅距,通常称为四裂相或四倍频。CPLD在每个clk的上升沿检测A,B两路方波的状态,首先分别对当前检测的状态A0,B0和上次检测的状态A1,B1相异或,然后将两次异或值再异或。如果最后异或值为1,则说明A,B两路方波发生变化,则向可逆计数器输入一个高电平宽度为1个clk周期的计数脉冲cp,实现逻辑如图3所示。




点击看原图


  3.2 可逆计数器
  将提取的方向信号updown和计数脉冲cp输入至可逆计数器,实现对光栅尺输出的正交脉冲计数。可逆计数器模块的VHDL程序如下:




点击看原图


  3.3 clk的取值
  由于CPLD的采样时钟clk必须大于8倍光栅尺输出的正交脉冲,因此系统不会丢失信号。该系统设计使用40 MHz有源晶体振荡器作为CPLD的采样时钟源,可记录的最大光栅传感器输出信号频率为5 MHz。如果使用50线/mm的光栅尺,经过CPLD的四裂相细分后,计算该光栅尺接该系统的最大不漏数加工速度为20 μmx5 MHz="100" m/s,最小分辨率为5μm。远远超出机床运行的极限速度,完全满足实际需求。
  3.4 EPM240简介
  选用Altera公司的EPM240作为CPLD,EPM240是MAX Ⅱ系列器件中的一员。MAX Ⅱ CPLD系列的体系结构使其在所有CPLD系列器件的单位I/O引脚的功耗和成本最低;支持高达300 MHz的内部时钟频率,面向通用低密度逻辑应用,MAX Ⅱ CPLD可替代高功耗和高成本 ASSP 以及标准逻辑CPLD。
  EPM240含有240个逻辑单元(LE),等效于192个宏单元;8 192 bit的用户Flash存储器,可满足用户小容量信息存储要求:最大用户I/O数为80,最快速度为4.5 ns,完全满足系统设计要求。 4.4 中断服务程序

  为了避免MCU频繁写入EEPROM,使用次数超出最大有效写入次数。中断程序对中断输入引脚上的电平进行必要滤波。滤波算法为:系统进入中断程序后,首先关闭中断,然后连续10次判断INT0的电平,如果每次判断得到的电平值都为低,则继续往下执行中断服务程序,只要有一次为高则立即退出中断服务程序。完成写入数据,要确保INT0上的低电平解除后再返回中断,否则等待,直至低电平解除。中断服务程序流程图如图5所示。



  5 结束语
  详细介绍光栅数显系统设计,采用CPLD可大大简化系统硬件设计,降低系统成本,增强系统可靠性和灵活性。选用STC89C516RD,可避免扩展外部存储器,从而简化单片机的外围电路设计。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-6-30 07:02 , 耗时 0.084659 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

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