仪器仪表-虚拟示波器

仪器仪表-虚拟示波器


by 吴雪 & 王柏旭

 

第一部分

设计概述 /Design Introduction

 

设计概述:

设计目的:通过一块带有ADC采集模块的FPGA板和现有的显示装置来实现示波器的功能,解决了示波器对实验的限制问题,降低了成本,可以在简单的环境下完成需要示波器的实验。

设计内容:本实验拟利用PWM发生器或DAC模块产生模拟信号,再通过ADC采集外部模拟信号,转换为数字信号,将其存储在RAM中,计算出其频率和峰值,通过确定的最高点和最低点坐标以及频率,形成图像,最后利用显示模块将图像呈现在屏幕上。

应用领域:可以在实验室中用更加简单小巧的装置来替代示波器,完成简单的显示波形的功能。也可以在各种不方便使用示波器的场景下,都可以通过FPGA和显示装置完成呈现各种波形的功能,方便对工程进行调试。

 

作品展示

  

 

第二部分

系统组成及功能说明 /System Construction & Function Description

项目功能

功能一,通过板载ADC模块直接采集外部模拟电压信号,并将数据传输给MCU,MCU根据接收到的数据在显示器上绘制并显示波形;功能二,通过板载DAC模块采集离散信号,DAC模块将其转化为模拟信号之后,传给ADC模块的输入端,最后将数据传输给MCU,MCU根据接收到的数据在显示器上绘制并显示波形。

 

项目系统框图

示波器模块:

利用DAC产生模拟信号模块:

 

使用的技术方向

使用的技术方向主要分为了三个部分,MATLAB中信号的生成、ADC和DAC模块的驱动和HDMI显示的驱动。MATLAB中利用sin(),rectpuls()和tripuls()等函数产生波形的模拟信号,再采集其中256个点生成离散信号的coe文件,利用ROM输入给DAC模块;ADC和DAC模块的驱动主要是依靠ROM和RAM的读写操作,ADC的驱动中在RAM基础上加上了计算频率和幅值的模块;HDMI显示的驱动,将点的坐标转化为RGB模式,利用rgb2dvi的IP核,以1080p-60Hz的HDMI 数据时钟进行显示屏上的显示。

 

 

第三部分

完成情况及性能参数 /Final Design & Performance Parameters

  1. DAC模块:通过添加寄存器的IP核来调用三种波形的COE文件,并且把文件内的数据转存到定义的DAC_data变量中。
  2. ADC模块:用变量DAC_data来作为ADC采集模块的输入,完成波形采集的功能。(其他来源的信号可以通过ADC采集模块将模拟信号转换为离散信号)
  3. Vpp 计算模块:通过对比找出波形中的最高点与最低点从而计算出 Vpp。
  4. 频率计算模块:通过设置一个阈值,将波形转化为方波。然后通过计算方波的周期,换算成频率,从而得出波形的频率。
  5. 波形 RAM:预先将采集的波形数据存储在 RAM 内,然后通过 Vpp 控制具体的输出点坐标。
  6. RGB转换:将RAM输出的波形坐标转换为RGB模式,输出到显示模块中。
  7. 显示模块:利用rgb2dvi的IP核,将波形、Vpp、频率显示在屏幕上。

最终综合,能够实现采集模拟信号且运用显示器显示信号波形的功能。

性能参数如下:

 

 

2020年9月15日 14:26
浏览量:0
点赞
首页    Catalog    2020 Summer School    仪器仪表-虚拟示波器