基于AVR单片机与FPGA的低频数字式相位测量仪

发布者:polkmm最新更新时间:2011-09-21 关键字:数字相位仪  单片机  FPGA  误差  频率  相位差 手机看文章 扫描二维码
随时随地手机看文章
    在工业领域中经常要用到低频数字式相位仪来精确测量两信号之问的相位差,比如在电力系统、频率特性的研究、激光测距等领域均有广泛的应用,相位检测的精度直接决定系统的整体性能。这就要求测量仪逐渐向智能化和测试自动化方向发展,本设计采用MCU和FPGA相结合的系统方案,以AVR单片机ATmega128和Altera公司的Cyclone系列EP1C3T100为核心,充分发挥各自的优势,如AVR单片机先进的RISC结构和强劲的运算、控制功能,Altera公司的FPGA运算速度快、资源丰富以及易编程的特点,合理设计,此方案的相位仪具备速度快、稳定可靠、精度高等优点,而且容易实现“智能化”和“自动化”。

1 系统方案设计
1.1 测量方法的比较与选择
    目前相位测量的方法主要有两种:
    1)DFT测相法即将待测信号通过A/D转换得到f(n),f(n)按离散傅里叶变换得出离散频谱F(k),f(n)和F(k)为傅里叶变换对,通过运算得到两路信号的基波相位,从而计算出相位差。DFT测相法的精度受限于ADC的采样精度,需要高速ADC对信号进行过采样,测量方案复杂,可以通过采集卡在计算机上实现虚拟仪器,所以主要应用在精度要求很高的场合和虚拟仪器中。
    2)填充计数测相法 即两路同频的正弦信号经过信号整形电路后得到方波信号,方波信号经过鉴相器后,得到两路输入信号的相位差信号,用固定频率的采样脉冲进行填充并计数,从而计算出相位差。填充计数测相法主要应用在要求一定的精度,测量的频率不是太高但实时性要求很强的场合,易于实现数字化和自动化,低频数字相位仪适合用填充计数法。
    填充计数测相法的基本算法:若正弦波整形后的方波信号频率为f,周期为T,采样脉冲周期为TC,方波一个周期内对采样脉冲计数为,n则被测信号频率f=1/T=1/nTC。同样的方法测出两个同频正弦波起点之间的时间差为△t,则两信号的相位差△θ=△t·360°/T。
1.2 系统方案的确定
    由系统测量方法可知,数据需要采集、运算及显示,考虑到Field Programmable Gate Array(FPGA)集成度高、I/O资源丰富、稳定可靠,选择余地大,外围元件很少,近年来价格下降等优势,以及MCU良好的人机接口和运算控制功能,所以本系统由MCU和FPGA相结合构成测控主体。FPGA负责采集测频和测相位差的脉冲信号,MCU负责读FPGA采集的数据,计算待测信号频率和相位差并在LCD上显示。
    所以,系统由4个部分组成:待测信号调理电路、FPGA数据采集电路、MCU数据运算控制电路和LCD数据显示电路,如图1所示。

a.JPG



2 测量误差的分析与消除
    相位测量仪的完善设计,不仅要有合适的测量方法和系统实现方案,还需要着重分析误差产生的原因和确定消除的方法。
    1)填充时钟频率(即数据采样信号)的影响与确定本相位测量仪的测频范围为20 Hz~20 kHz,相位差的范围为△θ=0°~359.9°,相位差的显示分辨率为0.1°,要求测量相位的绝对误差≤2。
    被测频率20 Hz≤f≤20 kHz,则周期50μs≤T≤50 ms。
    T=50 μs,绝对误差取0.1°~2°。
    则填充时钟信号周期:0.1°x50 μs/360°≤TC≤2°x50 μs/360°即:1/72(μs)≤TC≤1/3.6(μs),可以得出填充时钟频率:
3.6 MHz≤fC≤72 MHz。
    T=50ms内对TC=1/3.6(μs)的填充脉冲计数,计数值Nmin=180000≤218;对TC=1/72(μs)的填充脉冲计数,计数值Nmax=3600000≤ 222。
    本设计考虑MCU的计算及分频取得信号的方便,填充时钟信号频率fC=20 MHz,测量绝对误差<1°,FPGA在20 MHz时钟信号作用下对待测信号周期和相位对应的时间差进行计数,FPGA采样的二进制数据位为20 bit,可以保证测量的精度。
    2)待测信号调理电路中零点漂移的影响与消除待测信号调理电路主要作用是把输入信号整形变换成矩形波,通常采用过零比较器或者施密特触发器。
    过零比较器在零点电位附近可能会有振荡,输入信号在零点电位附近时,电压比较器处于放大区,整形后的矩形波在边沿会产生抖动,使系统无法进行测量。要消除这种抖动,可以采用施密特触发器。为了保证测量的精度,施密特触发器必须符合两个条件:一是两路被测信号幅度基本相等,二是门限电平要基本接近。
    3)整形后方渡边沿的陡峭程度的影响与消除信号经过整形后输出的矩形脉冲信号直接送给FPGA,则FPGA不能立即获取稳定的数字脉冲信号,就会使系统的精度受到很大影响。这主要是由于整形后方波边沿不够陡峭造成的。要解决此问题,一是选取具有较大压摆率的器件,二是在比较器的后端加一级微分电路来提升脉冲信号的边沿。
    4)中低频测量精度的影响与消除采用20 MHz数据采样信号来循环计数被测信号的周期及相位差对应的时间差,精度达到0.05 μs,20位数字量的单位是0.05μs。利用被测信号刷新采样计数,实现高频多测量,低频少测量,时间计数精确可靠,这样,FPGA可以为MCU提供稳定的数据。
[page]

3 系统硬件电路的设计
3.1 前端信号调理电路的设计
    施密特触发器(迟滞比较器)虽然可以很好地消除比较器过零引起的抖动,但是其输出信号和输入信号存在相位差,如果两路被测信号的幅度基本相等且两个施密特触发器的门限电平又很接近,则施密特触发器引入的相位误差对测量系统误差几乎无影响。
    采用LM339内部有4个独立的电压比较器,该电压比较器的特点是:失调电压小,典型值为2 mV;电源电压范围宽,双电源电压为±1~±18 V;对比较信号源的内阻限制较宽。同相和反相输入端电压差别大于10 mV就能确保输出能从一种状态可靠地转换到另一种状态,输出端相当于一只不接集电极电阻的晶体三极管,在使用时输出端到正电源一般须接一只电阻。在跳变电压值附近的干扰不超过回差AU,输出电压的值就将是稳定的。正反馈可以加快比较器的响应速度。由于迟滞比较器加的正反馈很强,远比电路中的寄生耦合强得多,所以可免除由于电路寄生耦合而产生的自激振荡。通过调节电位器,使两个施密特触发器的门限电平基本相等,保证输入电路对相位差测量不带来误差。电路如图2所示。

d.JPG


3.2 系统测量电路设计
    以单片机为核心设计相位仪,如其晶振为24 MHz,单片机C/T的计数误差为1个机器周期为±0.5 μs,则绝对误差为360°x0.5 μs/50μs=3.6°,所以,当被测信号频率很高时很难满足测量要求。
    本设计采用AVR单片机与FPGA相结合的方案,FPGA实现数据采集,将所测信号的频率和相位差所对应时间差转换为二进制数据传给单片机;单片机从FPGA获取数据,经过运算、转换等数据处理,将被测信号的频率和相位差在LCD上显示。
    系统电原理图如图3所示。MCU采用ATMEL公司的AVR单片机ATmega128,具有先进的RISC结构,大多数指令在一个时钟周期内完成,有32个8位通用工作寄存器及外设控制寄存器,克服了一般单片机单一累加器数据处理带来的瓶颈。有128 KB的系统内可编程Flash,4 KB的EEPROM以及4 KB的内部SRAM,遵循JTAG标准的边界扫描功能,支持扩展的片内调试,可通过JTAG接口实现对Flash、EEPROM、熔丝位和锁定位的编程。

c.JPG


    FPGA采用Altem Cyclone系列的EP1C3T100,配置芯片为EPCS1,VHDL功能程序经过全编译会生成.sof和.pof文件,配置的下载为Byte-Blaster II,[Mode]项选择“JTAG”为把.sof文件配置到FPGA芯片EP1C3T100中,用于调试;[Mode]项选择“Active Serial Programming”为把.pof文件下载到配置芯片EPCS1中,系统重新上电时正常运行。
    LCD采用HTM12864,为128x64串行数据传送液晶显示器,背光灯通过光耦受到控制。
    ATmega128和EP1C3T100设计各自的JTAG接口。图3绘出了ATmega128和EP1C3T100的接口D0~D19、EN、Dsel、LCN;ATmega128与HTM12864的接口RET、D/C、SCLK、DATA;EP1C3T100的输入信号FAin和FBin,66 MHz外部有源晶振,配置芯片EPCS1。

[page]

4 系统软件的设计
4.1 FPGA数据采集VHDL程序设计
    FPGA数据采集的VHDL程序设计是在Altera QuartuslI开发软件平台及实验开发系统上完成的。程序设计采用自顶向下(up-to-down)的设计方法。FPGA系统的模块构成如图4所示。采样信号发生模块完成时钟信号源的分频工作,得到CLK=20 MHz;待测信号采样模块在控制信号产生模块的周期闸门信号Tk和时间清零信号Tcr的作用下,输出待测信号周期和相位差数据;测量数据提取模块在鉴相信号JXc和计数提取信号Lad的作用下,并在输出使能信号EN和数据类型信号Dsel控制下分别输出周期和相位差数据,交MCU运算处理显示。

f.JPG


    FPGA在单片机输出使能信号EN和数据类型信号Dsel控制下,输出所测信号的频率和相位差所对应的二进制数据仿真波形如图5所示。VHDL程序经过编译调试生成.pof文件下载到配置芯片EPCS1中实现所设计的功能。

g.JPG


4.2 ATmega128运算控制程序设计
    AVR单片机ATmega128从FPGA分别读取频率和相位差的20位数字量,由于FPGA在20 MHz数据采集信号作用下对待测信号周期和两同频信号的相位差所对应的时间差计数,因此20位数字量的单位是0.05μs,单片机对这些数字量进行计算,可以得到待测信号的频率和相位差。
    单片机运算控制程序设计思路:单片机(ATmega128)通过控制信号EN和Dsel从FPGA(EP1C3T100)读取待测信号的周期和两待测信号相位差所对应的时间差,对读取的数据进行计算、转换,送液晶显示器显示,显示待测信号的频率、相位差以及有关信息。主程序流程图如图6所示。源程序由主程序及若干子程序组成,主程序是一个循环执行程序。

h.JPG


    1)单片机从FPGA读数据
    根据MCU与FPGA的20位数字量的接口,从单片机的PA、PB和PC(低4位)读取数据,组合成20位的数据,控制线EN和Dsel控制FPGA释放数据。当Dad=1时,FPGA向单片机传送待测信号的相位差数据;当Dsel=0时,FPGA向单片机传送待测信号的周期数据;当EN=1时,FPGA向单片机释放数据,当EN=0时,FPGA禁止向单片机释放数据。
    2)频率和相位差数据的运算
    为了测量达到要求的精度,在运算时不能丢失数据,所以采用扩大倍数定点取数的方法,保证数据计算准确。依据如下方法进行计算:信号频率F=106/T,计算结果精确到1 Hz;相位差△θ=△tx360°x10/T,计算结果精确到0.1°。
    3)LCD显示器显示频率、相位差等相关信息
    本设计采用HTM12864(128x64)的LCD液晶显示器,控制器为S6B0724,与单片机数据与控制接口是:CS、RET、D/C、SCLK、DATA,背光灯根据按键动作控制,用按键来切换显来示信息。

5 结论
    本设计采用MCU和FPGA相结合的方法,ATmega128单片机具有先进的RISC结构和运算控制功能,而FPGA集成度高、高频率的数据采集功能强劲,它们发挥各自的优势。均具备JTAG接口在线调试和编程功能,用此方法设计的数字式相位测量仪具有较高的精度,稳定可靠。本仪器测量正弦信号的频率及两个同频正弦信号的相位差,较好地满足了设计的技术指标要求。

 

 

关键字:数字相位仪  单片机  FPGA  误差  频率  相位差 引用地址:基于AVR单片机与FPGA的低频数字式相位测量仪

上一篇:AVR单片机在无线自动报靶系统中的应用
下一篇:基于AVR和振弦式渗压计的大坝监测系统设计

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

51 单片机:在 P0 口接上 8 个 LED,实现每次亮两个灯的流水灯
要求:每次亮相邻两个灯,分别闪烁五次后,移动一位,汇编。 做而论道编程如下: ;------------------------ ORG 0000H LJMP MAIN ORG 0100H MAIN: MOV R2, #0FCH MOV A, #1 ;------------------------ LOOP: MOV P0, R2 ;亮两位 CALL FLASH ;闪一位 RL A CALL FLASH ;闪下一位 XCH A, R2 RL A XCH A, R2 LJMP LOOP ;
[单片机]
初学单片机的一些概念
  随着电子技术的迅速发展,计算机已深入地渗透到我们的生活中,许多电子爱好者开始学习单片机知识,但单片机的内容比较抽象,相对电子爱好者已熟悉的模拟电路、数字电路,单片机中有一些新的概念,这些概念非常基本以至于一般作者不屑去谈,教材自然也不会很深入地讲解这些概念,但这些内容又是学习中必须要理解的,本文将就这些最基本概念作一说明,希望对自学者有所帮助。   一、总线:我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中,连线并不成为一个问题,因为各器件间一般是串行关系,各器件之间的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以就需要的连线就很多了,如果仍
[单片机]
用AT90S1200代换显示驱动芯片MC14499的应用电路
1 MC14499简介 MC14499 是Motorola公司生产的串行输入BCD十进制输出的CMOS集成块,它内含BCD译码器和串行接口,可以与任何CPU接口连接,在比较复杂的单片机控制系统中,MC14499具有占用I/O少、控制显示器多、功耗低、使用方便等优点,因而得到广泛的应用。但其缺点是用它来实现显示系统比较复杂,并且成本太高。随着技术的飞速发展和微处理性能价格比的较高,人们可以采用高性价比的MCU来代换它,这也许是一个趋势,如用力源PS7219代换 MAX7219等。笔者用AT90S1200来代换CM14499,取得了非常好的效果。AT90S1200是一种性能非常优异的RISC单片机,它可以与主CPU并行工作,而且功
[单片机]
用AT90S1200代换显示驱动芯片MC14499的应用电路
采用AT89C51单片机和温度变送器实现炉温控制系统的设计
1、引 言 电加热炉随着科学技术的发展和工业生产水平的提高,已经在冶金、化工、机械等各类工业控制中得到了广泛应用,并且在国民经济中占有举足轻重的地位。对于这样一个具有非线性、大滞后、大惯性、时变性、升温单向性等特点的控制对象,很难用数学方法建立精确的数学模型,因此用传统的控制理论和方法很难达到好的控制效果。 单片机以其高可靠性、高性能价格比、控制方便简单和灵活性大等优点,在工业控制系统、智能化仪器仪表等诸多领域得到广泛应用。采用单片机进行炉温控制,可以提高控制质量和自动化水平。 2、单片机炉温控制系统结构 本系统的单片机炉温控制系统结构主要由单片机控制器、可控硅输出部分、热电偶传感器、温度变送器以及被控对象组成。如图1所示
[单片机]
采用AT89C51<font color='red'>单片机</font>和温度变送器实现炉温控制系统的设计
单片机---HLK-W801开发环境搭建
最近刷淘宝,偶尔就会刷到一些国产芯片,于是买了一块海凌科的开发板,型号HLK-W801。 这是一块基于W801芯片设计的开发板,支持平头哥自研指令集C-SKY架构。底板上提供RST复位按键、BOOT升级按键和USB20接口,扩展接口支持Touch、UART、PWM、GPIO SPI、I2C、I2S、ADC、LCD等外设。 挺起来怪厉害的,还有阿里的C-SKY自研指令集…… 那么这个开发环境,肯定是和阿里的指令架构有关系,没错,用的是平头哥CDK开发平台。不过打开之后,配置的布局,跟ST的IAR,kail-MDK都差不多。 为啥不弄个中文的? 开发工具安装 阿里的开发工具下载 链接 提取码:aso9。 双击setup.
[单片机]
<font color='red'>单片机</font>---HLK-W801开发环境搭建
IAR调试stm8单片机时延时函数被优化的问题
IAR优化等级选到最高,调用以下延时函数时会被编译器直接优化,无法达到延时的效果。 void delay_n_ms(u32 time) { u32 m = 0; u16 n = 0; for(;m time;m++) { for(n = 0;n 2720;n++)//16Mhz { ; } } } 在函数的变量前加volatile关键字后问题解决。 void delay_n_ms(u32 time) { volatile u32 m = 0; volatile u16 n = 0; for(;m time;m++) { for
[单片机]
PIC单片机基础知识之一
PIC16中档单片机的基本架构 PIC16中档系列单片机是精简指令集的单片机,它具有以下特性: 内部为哈佛结构 指令流水线操作 文档寄存器的概念 单指令周期 所有指令为单字指令 长字指令 指令数很少 指令实现的功能基本不重复 接下来分别介绍上面各个特性。 1)哈佛结构-介绍哈佛结构通常要和冯.纽曼结构对比来介绍。我们熟悉的8086就是一种典型的冯.纽曼结构,它的程序和数据是共用同一个存储空间,CPU也是使用同一个总线来访问它们。那么,取指令和取数据势必分时来进行,这就限制了数据的流量。和它相对应的哈佛结构,则是不同。哈佛结构的典型特点就是程序和数据是分立的空间,CPU对程序和数据的访问也是使用完全独立的两套总线。所
[单片机]
基于AVR单片机FPGA的低频数字相位测量仪
摘要:提出了以AVR ATmega128单片机和Altera公司的Cyclone系列EP1C3T100为核心的系统设计方案。分析了数字式低频相位测量仪的测量原理和测量误差及其消除的方法。利用单片机强劲的运算、控制功能和FPGA运算速度快、资源丰富的特点。主要介绍了系统的软硬件设计。实践表明,此方案设计的相位仪对低频正弦波信号实现精确测频和测相位差,具有处理速度快、稳定可靠、精度高等优点。 关键词:数字相位仪;单片机;FPGA;误差;频率;相位差 在工业领域中经常要用到低频数字式相位仪来精确测量两信号之问的相位差,比如在电力系统、频率特性的研究、激光测距等领域均有广泛的应用,相位检测的精度直接决定系统的整体性能。这就要求测量仪
[嵌入式]
基于AVR<font color='red'>单片机</font>与<font color='red'>FPGA</font>的低频<font color='red'>数字</font>式<font color='red'>相位</font>测量仪
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

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