论文部分内容阅读
【摘 要】FPAG即现场可编程门阵列,其是在GAL、PAL和CPLD等一系列可编程器件的基础上发展而来的产物。作为专用集成电路的一种半定制电路,FGPA的应用既弥补了定制电路的不足,又克服了初始可编程器件的门电路数有限的缺点。本文以基于FPGA的增量式编码器接口电路设计作为研究对象,通过对增量式编码器的概念和优点进行阐述,在分析其接口电路设计基本原理的基础上对基于FPGA的增量式编码器接口电路的设计方法展开了深入探讨。
【关键词】FPGA;增量式编码接口;电路设计;ARM
前言:作为目前国内外应用较多的传感器,光电编码器可以以光电转换的形式将输出轴上的几何机械位移量转变为脉冲量与数字量可以较好的满足信息的传递、输出、储存和应用。增量式编码器是光电编码器的一种主要形式,近年来,在我国的信息领域得到了广泛应用。本文通过对增量式编码器接口电路设计的基本原理进行分析,并结合增量式编码器的相关概念和特点,为基于FPGA的增量式编码器接口电路提供了合理的设计思路。
一、增量式编码器简述
增量式编码器是将输出轴上的机械位移转换为具有周期性的电信号,再将此电信号转变为计数脉冲,进而将位移的大小用脉冲个数来表示的一种光电编码器[1]。增量式编码器的优点为构造和原理较为简单、支持其运作的机械平均寿命最高可达几万小时、抗外部干扰能力强且稳定性与安全性较高,适用于长距离的电路信号传输。
二、增量式编码器接口电路设计的基本原理
(一)四倍频与鉴相电路的设计原理
增量式编码器运行过程中,流经其内部的两路信號(设为A相信号与B相信号)在上升沿与下降沿的过程中各自变化了两次,且在电路转换的一个周期内,无论A相信号与B相信号如何变化,其范围均处于00-10-11-01-00与00-01-11-10-00之中。此外,由于A、B两路信号的频率要比系统时钟的时钟信号低得多,因此,利用系统时钟对A、B两路信号进行出发判断,进而产生四倍频脉冲信号与鉴相电平[2]。此时,增量式编码器中的计数器则会通过触发四倍频脉冲器的跳变沿将两路信号的产生的脉冲个数进行计数,以完成位移向电路信号的转化工作。鉴别电机正反转的具体方法为:如鉴相电平在00-10-11-01-00范围内的输出为0,说明电机正转;若在00-01-11-10-00范围内的输出为1,则说明计数器在做单位为1的减法计数。
(二)基于FPGA的ARM接口设计原理
由于数据总线是编码器计数值输出进而传达到ARM(RISC微处理器)的媒介,而FPGA本身的配置时间通常要大于同一系统中ARM的上电加载程序时间,又由于ARM芯片的数据总线是与系统中FPGA的控制及检测通道相连,通道内的电平值会有一部分存在FGPA在加载完成后的数据总线当中。因此,ARM芯片在进行电加载程序时会和系统的现场可编程门阵列发生较大冲突,造成系统无法读取正确的数据。
为了保证ARM可以将增量式编码器的计数值正确读取出来,将专门删除电子目录的读使能信号RD作为数据总线的三态控制信号与增量式编码器连接,而在系统运行时,只有读使能信号与地址信号均被选通时,由编码器内的计数器所计算出的16位计数值才得以导通,进而传输到数据总线上[3]。
三、基于FPGA的增量式编码器接口电路设计方法
利用QuartusⅡ软件(Altera公司开发的FPGA/PLD综合性软件)以混合模式的电路工程设计方法进行增量式编码器接口的电路设计。首先,构造出系统的四倍频模块和鉴相模块,在QuartusⅡ软件平台上通过利用标准硬件描述语言VHDL实现上述两个模块的功能。具体流程为:编码器前级四倍频模块与鉴相模块分别向线路输出四倍频信号与鉴相信号,设定计数器以信号输出的方向依据对其进行双向计数,当读使能信号与输出地址信号均被选通时,将相关数据经由数据总线显现到计数器终端屏幕上。至此,完成电路接口的位移和电能转换。
四、时序仿真与验证结果分析
就本文而言,所选取的FPGA芯片的型号为E144C8,仿真平台QuartusⅡ的版本为QuartusⅡ8.1,经由仿真平台建立增量式编码器的波形仿真文件对所涉及电路接口的仿真验证,并将系统编译后的仿真波形记录下来。在此基础上,通过建立逻辑分析文件的形式对经由增量式编码器转化而来的电路内部信号进行实时采集和监测,进而将系统逻辑分析仪的采集信号波形进行记录并加以分析。
通过对上述系统编译的仿真波形与逻辑分析仪的采集信号波形进行分析,得出结论如下:(1)记录增量式编码器正转时的仿真波形,并对其观察和分析可知,当计数值count_out由初始值0000增至000F时,系统实现四倍频加计数;(2)记录增量式编码器反转时的仿真波形,通过对其观察发现计数值count_out由(1)中的末值000F将至0003时,系统实现四倍频减计数;(3)对增量式编码器正反转切换时的仿真波形进行记录并加以分析发现,正反转切换时,位于某项信号后,另一相信号前的第一个定时器INCLK的上升沿,其计数方向立刻发生转变,即由加计数变为减计数。(4)对逻辑信号仪采集的信号波形进行分析可知,当读使能型号RD波形较低且地址信号为00h时,增量式编码器中计数器所显现的计数值则会经由三态总线传输到系统的数据总线上。。综上所述,本文所涉及的电路已基本实现了增量式编码器的四倍频、双相信号计数以及信号鉴别和ARM的通信功能。
结论:本文以基于FPGA的增量式编码器接口电路设计为研究对象,通过对增量式编码器的概念和优点进行分析,从四倍频与鉴相电路以及基于FPGA的ARM接口设计原理等方面对增量式编码器接口电路设计的基本原理展开了深入研究。在此基础上,结合增量式编码器接口电路的设计方法对其时序仿真进行了模拟分析。可见,未来加强对基于FPGA的增量式编码器接口电路设计在ARM上应用的研究力度,对于实现信号的自动检测与自动控制具有重要的现实意义。
参考文献:
[1]徐悦.基于单片机的板带轧机AGC控制系统开发与设计[D].燕山大学,2013.
[2]杨艺勇.基于SOPC技术的编码器检测装置研究与实现[D].华中科技大学,2013.
[3]孙大海.基于FPGA和ARM设计EnDat2.2接口电路[D].中国科学院研究生院(长春光学精密机械与物理研究所),2013.
【关键词】FPGA;增量式编码接口;电路设计;ARM
前言:作为目前国内外应用较多的传感器,光电编码器可以以光电转换的形式将输出轴上的几何机械位移量转变为脉冲量与数字量可以较好的满足信息的传递、输出、储存和应用。增量式编码器是光电编码器的一种主要形式,近年来,在我国的信息领域得到了广泛应用。本文通过对增量式编码器接口电路设计的基本原理进行分析,并结合增量式编码器的相关概念和特点,为基于FPGA的增量式编码器接口电路提供了合理的设计思路。
一、增量式编码器简述
增量式编码器是将输出轴上的机械位移转换为具有周期性的电信号,再将此电信号转变为计数脉冲,进而将位移的大小用脉冲个数来表示的一种光电编码器[1]。增量式编码器的优点为构造和原理较为简单、支持其运作的机械平均寿命最高可达几万小时、抗外部干扰能力强且稳定性与安全性较高,适用于长距离的电路信号传输。
二、增量式编码器接口电路设计的基本原理
(一)四倍频与鉴相电路的设计原理
增量式编码器运行过程中,流经其内部的两路信號(设为A相信号与B相信号)在上升沿与下降沿的过程中各自变化了两次,且在电路转换的一个周期内,无论A相信号与B相信号如何变化,其范围均处于00-10-11-01-00与00-01-11-10-00之中。此外,由于A、B两路信号的频率要比系统时钟的时钟信号低得多,因此,利用系统时钟对A、B两路信号进行出发判断,进而产生四倍频脉冲信号与鉴相电平[2]。此时,增量式编码器中的计数器则会通过触发四倍频脉冲器的跳变沿将两路信号的产生的脉冲个数进行计数,以完成位移向电路信号的转化工作。鉴别电机正反转的具体方法为:如鉴相电平在00-10-11-01-00范围内的输出为0,说明电机正转;若在00-01-11-10-00范围内的输出为1,则说明计数器在做单位为1的减法计数。
(二)基于FPGA的ARM接口设计原理
由于数据总线是编码器计数值输出进而传达到ARM(RISC微处理器)的媒介,而FPGA本身的配置时间通常要大于同一系统中ARM的上电加载程序时间,又由于ARM芯片的数据总线是与系统中FPGA的控制及检测通道相连,通道内的电平值会有一部分存在FGPA在加载完成后的数据总线当中。因此,ARM芯片在进行电加载程序时会和系统的现场可编程门阵列发生较大冲突,造成系统无法读取正确的数据。
为了保证ARM可以将增量式编码器的计数值正确读取出来,将专门删除电子目录的读使能信号RD作为数据总线的三态控制信号与增量式编码器连接,而在系统运行时,只有读使能信号与地址信号均被选通时,由编码器内的计数器所计算出的16位计数值才得以导通,进而传输到数据总线上[3]。
三、基于FPGA的增量式编码器接口电路设计方法
利用QuartusⅡ软件(Altera公司开发的FPGA/PLD综合性软件)以混合模式的电路工程设计方法进行增量式编码器接口的电路设计。首先,构造出系统的四倍频模块和鉴相模块,在QuartusⅡ软件平台上通过利用标准硬件描述语言VHDL实现上述两个模块的功能。具体流程为:编码器前级四倍频模块与鉴相模块分别向线路输出四倍频信号与鉴相信号,设定计数器以信号输出的方向依据对其进行双向计数,当读使能信号与输出地址信号均被选通时,将相关数据经由数据总线显现到计数器终端屏幕上。至此,完成电路接口的位移和电能转换。
四、时序仿真与验证结果分析
就本文而言,所选取的FPGA芯片的型号为E144C8,仿真平台QuartusⅡ的版本为QuartusⅡ8.1,经由仿真平台建立增量式编码器的波形仿真文件对所涉及电路接口的仿真验证,并将系统编译后的仿真波形记录下来。在此基础上,通过建立逻辑分析文件的形式对经由增量式编码器转化而来的电路内部信号进行实时采集和监测,进而将系统逻辑分析仪的采集信号波形进行记录并加以分析。
通过对上述系统编译的仿真波形与逻辑分析仪的采集信号波形进行分析,得出结论如下:(1)记录增量式编码器正转时的仿真波形,并对其观察和分析可知,当计数值count_out由初始值0000增至000F时,系统实现四倍频加计数;(2)记录增量式编码器反转时的仿真波形,通过对其观察发现计数值count_out由(1)中的末值000F将至0003时,系统实现四倍频减计数;(3)对增量式编码器正反转切换时的仿真波形进行记录并加以分析发现,正反转切换时,位于某项信号后,另一相信号前的第一个定时器INCLK的上升沿,其计数方向立刻发生转变,即由加计数变为减计数。(4)对逻辑信号仪采集的信号波形进行分析可知,当读使能型号RD波形较低且地址信号为00h时,增量式编码器中计数器所显现的计数值则会经由三态总线传输到系统的数据总线上。。综上所述,本文所涉及的电路已基本实现了增量式编码器的四倍频、双相信号计数以及信号鉴别和ARM的通信功能。
结论:本文以基于FPGA的增量式编码器接口电路设计为研究对象,通过对增量式编码器的概念和优点进行分析,从四倍频与鉴相电路以及基于FPGA的ARM接口设计原理等方面对增量式编码器接口电路设计的基本原理展开了深入研究。在此基础上,结合增量式编码器接口电路的设计方法对其时序仿真进行了模拟分析。可见,未来加强对基于FPGA的增量式编码器接口电路设计在ARM上应用的研究力度,对于实现信号的自动检测与自动控制具有重要的现实意义。
参考文献:
[1]徐悦.基于单片机的板带轧机AGC控制系统开发与设计[D].燕山大学,2013.
[2]杨艺勇.基于SOPC技术的编码器检测装置研究与实现[D].华中科技大学,2013.
[3]孙大海.基于FPGA和ARM设计EnDat2.2接口电路[D].中国科学院研究生院(长春光学精密机械与物理研究所),2013.