毕业设计 基于FPGA多通道采样系统的设计


🔥 毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。
为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天要分享的是:基于FPGA多通道采样系统的设计

1  单元电路的设计

由图2.1可以看出,系统可以分为4个大部分,分别是音频放大、滤波部分,FPGA控制部分,AD采样电路,FPGA硬件电路的设计。其中以FPGA控制部分为主体部分,它涉及到AD采样控制,通道选择控制,串并输出模式选择模块,延时模块以及FIFO模块介绍。这些模块的实现是系统实现的关键。下面分别对系统的这些单元电路做详细的阐述。

图1.1 多通道系统的组成

1.1 音频放大、滤波部分

人的耳朵可以辨别到的声音频率范围是:20Hz-20KHz,所以对音频放大部分的放大器有带宽要求,要求放大器是宽频带的。所以本次设计选用专门用于音频放大的高速低噪声运放NE5532作为放大部分的放大器。滤波部分是一个有源带通滤波器,滤掉电路的20Hz以下的低频和20KHz以上的高频干扰。

1.1.1音频放大部分

音源采用普通CD输出的音频信号,它产生输出的信号的幅度约有300mV左右,根据设计AD7892的输入电压是±10V,选择放大器的放大倍数在10-30之间,通过一个精密可调电阻来调节放大倍数。音频放大芯片NE5532特性是双运放、宽频带、低噪声、转换速率大、电源范围广。

NE5532的管脚结构及其功能:

(1脚)输出信号                  (2脚)反相端输入

   (3脚)同相端输入                (4脚)负电源

   (5脚)同相端输入                (6脚)反相端输入

   (7脚)输出信号                  (8脚)正电源

NE5532技术参数

    参数名称      单位      数据值

    输入失调电压   mV        ±0.5

    温漂          μV/℃        5

    增益带宽积     MHz         10

    转换速率       V/us         9

    谐波失真        %         0.001

    工作电流        mA          8

工作电压        V         ±3-±22

设计中因为采用反相端输入音频信号,为了在输出端得到正向的音频信号,所以放大部分采用两级放大,前级放大10倍,后级放大通过可调电阻设计在1-3倍,这样得到的正向音频信号就方便了AD采样。

1.1.2有源滤波器的设计

在一个实际的电子系统中,输入信号往往因受干扰等原因而含有一些不必要的成份,应设法将干扰衰减到足够小的程度。在其他一些情况,我们需要的信号和干扰信号混在一起,如果这两个信号在频率成分上有较大的差别,就可以用滤波的方法将所需要的信号滤出。为了解决上述问题,可采用滤波电路。滤波器包括电抗性元件LC构成的无源滤波器、由集成运算放大器组成的有源滤波器、以及晶体滤波器等。本次设计需要的通带频率范围是20Hz-20KHz,如果用有源带通滤波器来实现,考虑到该带通滤波器的上下截止频率之比20000/20=1000,大于一个倍频程,为一个宽带滤波器,所以采用一个低通滤波器和一个高通滤波器级联来实现带通滤波。

(1)设计步骤

有源滤波器的设计,就是根据所给定的指标要求,确定滤波器的阶数n,选择具体的电路形式,算出电路中各元件的具体数值,安装电路和调试,使设计的滤波器满足指标要求,具体步骤如下:

①根据阻带衰减速率要求,确定滤波器的阶数n。

②选择具体的电路形式。

③根据电路的传递函数和附录中表1归一化滤波器传递函数的分母多项式,建立起系数的方程组。

④解方程组求出电路中元件的具体数值。

⑤将设计好的电路,在EWB上进行仿真。

⑥按照所设计的电路,将元件安装在实验板上。

⑦安装电路并进行调试,使电路的性能满足指标要求。

(2)对安装好的电路按以下方法进行调整和测试

① 仔细检查安装好的电路,确定元件与导线连接无误后,接通电源。

② 在电路的输入端输入Ui=10mv的正弦信号,慢慢改变输入信号的频率(注意保持Ui的值不变),用示波器观察波形的变化,在滤波器的截止频率附近,观察电路是否具有滤波特性,若没有滤波特性,应检查电路,找出故障原因并排除之。

③ 若电路具有滤波特性,可进一步进行调试。对于低通和高通滤波器应观测其截止频率是否满足设计要求,若不满足设计要求,应根据有关的公式,确定应调整哪一个元件才能使截止频率既能达到设计要求又不会对其它的指标参数产生影响。然后观测电压放大倍数是否满足设计要求,若达不到要求,应根据相关的公式调整有关的元件,使其达到设计要求。最后设计的有源带通滤波器在EWB上的仿真图如图1.1所示:

图1.2 有源带通滤波器的仿真图

有源带通滤波电路分成两个部分,高通部分和低通部分,图1.2是20HZ的高通滤波器,图4.3是20KHZ的低通滤波器。

图1.3 低通滤波器电路图

1.2 AD采样电路

由于人的耳朵能识别的音频的频率范围是20Hz-20KHz,根据奈魁斯特(NYQUIST)采样定理知道,要使采样后的数字信号能恢复成模拟信号,采样的频率必须是模拟信号的频率的两倍,即本次采样系统的采样频率最低要设计在40KHz,而一般CD格式的音频信号的采样频率是44.1KHz,由于是8路通道的采样,所以AD芯片的最低采样频率应该是44.1KHz

8=352.8KHz,所以选择采样频率为500KHz的AD7892。这样我们每个通道的采样频率就是500KHz/8=62.5KHz。

1.2.1芯片介绍

AD7892是美国ANALOG DEVICE公司生产的具有采样保护功能的逐次逼近式12位高速ADC,根据输入模拟信号范围的不同可分为AD7892-1,AD7892-2,AD7892-3三种类型。其中,AD7892-1输入信号范围为±10V或者±5V(可设置),AD7892-2输入信号范围为0~+2.5V,这两种的采样转换速率均为500kSPS,AD7892-3的输入信号范围为±2.5V,采样转换速率为600kSPS,AD7892-1和AD7892-3的输入信号过压保护电压分别为±17V和±7V。本次设计选用的是AD7892AN-1,因为其采样速率已符合8路的音频采集速率。

AD7892模数转换器具有如下特点:

①单电源工作(+5V);

②内含采样保持放大器;

③具有高速串、并行接口。

AD7892的内部框图如图1.5所示,它内含模拟信号换算电路、采样保持电路、A/D转换的基准电源(+2.5V)、时钟电路、12位逐次逼近式ADC电路和控制电路,转换的结果可以并行输出,也可以串行输出,非常容易和微处理器或DSP(数字信号处理器)接口。AD7892共有两种封装,一种是24脚双列直插式DIP封装,另一种为贴面式SOIC封装,AD7892的引脚排列如图1.4所示。各个引脚的功能说明如表1.1所列。

图1.4 AD7892引脚排列图                          图1.5 AD7892功能框图

1.2.2芯片应用

如图4.7所示为AD7892应用于采样系统。目的是把音频输入模拟信号转换为12位数字信号,该电路采用的是AD7892AN-1的并行输出模式,其采集速度设计为500kSPS。

在此应用中,将IN2接到AGND,IN1接音频输入信号,其输入范围为±10V,音频信号经过放大、滤波和AD7892的输出信号为100…000~111…111,即从2048→4095,在D11反相后,在状态机的第5个状态锁存器锁存的数据为000…000→011…111,即从0→2047。由P/S选择相应的输出模式输出。

图1.7 AD7892采样系统

    电路中的CONV,EOC,CS,RD控制信号均由有限状态机提供,D[0]到D[11]数字信号是经过AD采样后的数字信号。

1.3 FPGA控制部分

1.3.1通道选择模块

通道选择部分是一个二进制模8的计数器,计数器的时钟是AD数字信号的锁存信号,每次锁存数据后,计数器就会一次进行加一操作,CD4051选择下一个通道的音频信号进行采集。在MAX+PlusⅡ中用VHDL语言设计图形如下图1.8所示:

图1.8 通道选择部分

通过CNT[0]到CNT[2]来选择相应的通道,CD4051的输出就是最后要进行AD采样的音频信号。例如:若CNT[0]CNT[1]CNT[2]=“000”,则选择第一通道音频信号进行AD采样。这个部分实现的重点是对数字锁存信号记数,计数器的输出作为CD4051的通道选择地址。

1.3.2AD7892控制部分

这个部分的主要工作是对AD7892的控制,使得AD7892可以工作。对AD7892的控制部分主要是通过一个有限状态机来实现的,通过对AD7892的工作时序观察,用有限状态机对AD的控制信号做出描述,从而让AD芯片能工作起来,这就是有限状态机的主题任务,当然还有一些其他的功能,将在后序的部分介绍,这里先对有限状态机作个阐述。

(1)有限状态机的介绍

AD采样的控制部分主要是设计一个有限状态机来实现,利用VHDL设计的使用逻辑系统中,有许多是可以利用有限状态机的设计方案来描述和实现的,无论与基于VHDL的其他设计方案相比,还是与完成相似功能的CPU相比,状态机都有其难以超越的优越性,它主要表现在以下几个方面:

有限状态机克服了纯硬件数字系统顺序方式控制不灵活的缺点。状态机的工作方式是根据控制信号按照预先设定的状态进行顺序运行的,状态机是纯硬件数字系统中的顺序控制电路,因此状态机在其运行方式上类似于控制灵活和方便的CPU,而在运行速度和工作可靠方面都优于CPU。

由于状态机的结果模式相对简单,设计方案相对固定,特别是可以定义符号化枚举类型的状态,这一切都为VHDL综合器尽可能发挥其强大的优化功能提供了有利条件。而且,性能良好的综合器都具备许多可控或自动的专门用于优化状态机的功能。

状态机容易构成性能良好的同步时序逻辑模块,这对于对付大规模逻辑电路设计中令人深感棘手的竞争冒险现象无疑是一个上佳的选择。为了消除电路中的毛刺现象,在状态机设计中有很多种设计方案可供选择。

与VHDL的其他描述方式相比,状态机的VHDL表述丰富多样、程序层次分明,结构清晰,易懂易读;在排错、修改和模块移植方面也有其独特的特点。

在高速运算和控制方面,状态机就更有其巨大的优势。由于在VHDL中,一个状态机可以由多个进程构成,一个结构体可以包括多个状态机,而一个单独的状态机(或多个并行进程的状态机)以顺序方式所能完成的运算和控制方面的工作与一个CPU的功能类似。因此,一个设计实体的功能便类似于一个含有并行运行的CPU的高性能微处理器的功能。事实上,多CPU的微处理早已在通信、工控和军事等领域有了十分广泛的应用。

就可靠性而言,状态机的优势也是十分明显的。CPU本身的结构特点与执行软件指令的工作方式决定了任何CPU都不可能获得圆满的容错保障,这已是不争的事实了。因此,用于要求高可靠性的特殊环境中的电子系统中,如果以CPU作为主控部件,应是一项错误的决策。然而,在状态机系统就不同了,首先它是由纯硬件电路构成,不存在CPU运行软件过程中固有的缺陷;其次是由于状态机的设计中能使用各种完整的容错技术;再次是当状态机进入非法状态并从中跳出,进入正常状态所耗的时间十分短暂,通常只有2、3个时钟周期,约十个ns,尚不足对系统的运行构成损害;而CPU通过复位方式从非法运行方式中恢复过来,耗时达到十ms,这对于高速高可靠系统显然是无法容忍,特别是本次设计的采集音频信号,十ms的就会丢失很多的模拟数据,这样就会让音频信号的不完整,所以采用有限状态机是一个很好的选择。

(2)有限状态机的设计

根据AD7892的时序图设计的状态转换图如图1.10所示:

图1.10  AD采样的状态转移图

1.3.3延时模块的设计

在采样控制部分的状态机中也加入了输出数据编码部分,因为是循环采集8路的模拟信号,而输出为一路输出,这样就需要对输出信号进行标志,方法就是把12位数据转换为16位数据,第一位是0,第二位到第四位是标志位,标志是哪一通道数字信号,如果是串行输出的时候可以让接受方知道是第几通道的数据。又因为数字信号数据锁存信号是比通道选择信号早一个周期,所以要加一个延时模块,这样就可以实现每次锁存了通道的标志位和采样的数据。通过程序来实现对通道选择信号的延时。如果当前选择第3个通道采样,那么通道选择信号就是“011”,在这个通道信号采集完毕后锁存信号就会使计数器进行加1操作,这样通道选择信号就是“100”,而这个时候锁存的数据需要“011”,所以将标志位信号通过“100”的延时一个时钟周期变成“011”即可。VHDL完成可以胜任。

2  整机调试

2.1硬件电路的调试步骤

在硬件电路中用到了音频放大、滤波电路,电源稳压电路,AD采样电路,FPGA控制等主要部分,由于电路连线较多而且复杂,采用的方法是分块调试,这样比较容易发现问题和解决问题。这种硬件调试方法在实际应用是比较普遍的。

在进行硬件调试之前,首先要检查电路板,看看电路板上的线路是否有短路、虚焊或者是断路的情况,如果有则要修正它,如果没有就可以进行各个模块的调试。

6.1.1音频放大部分调试

对音频放大部分调试需要一个函数信号发生源,一个示波器,一个万用表和提供放大器电源的直流稳压电源。首先,给NE5532加上+12V的电源,使之工作起来,用万用表检查NE5532除了正负电源引脚的电压,电压接近为零,这表明放大器正常工作,在输入端输入频率为1KHz,幅度为300mV的正弦波,用示波器观察输出端的波形,可以看到输出幅度为5.3V的正弦波,正弦波中包含了很多高频干扰,这是由于周围的干扰在放大器的放大作用,使得干扰成为一个明显波形出现在示波器上,通过滤波器后可以滤掉这些干扰。调节可调电阻,可以观察到输出波形的幅度变化。接上音源,可以看到示波器有不规则波形输出,增大音源的音量可以看到输出波形的幅度也随之增大,只是这不规则波形中混有很多的干扰,通过滤波器后可以滤掉这些干扰。这表明音频放大部分工作正常,达到设计要求。

2.1.2滤波部分调试

对滤波部分调试需要一个函数信号发生源,一个示波器,一个万用表和提供放大器电源的直流稳压电源。首先,给LM324加上+12V的电源,使之工作起来,用万用表检查LM324除了正负电源引脚的电压,电压接近为零,这表明滤波器的放大器正常工作。输入1KHZ,300mv的正弦波信号,经过音频放大电路放大后得到的1KHZ,5.3V的正弦波信号从输入点进入滤波电路。调试过程中发现示波器中的波形一直有一定高频和低频的干扰,检查电路没有错误,最后判断是电源的干扰,在电源输入端加上一个大电容和一个小电容分别滤掉电源的高频干扰和低频干扰,再调试可以看到完整的正弦波波形。减少输入信号的频率到10HZ,可以看到当频率减到20HZ的时候,输出信号的幅度逐渐变小,这表明高通滤波部分已实现其功能,滤掉小于20HZ的低频干扰;然后慢慢增加输入信号的频率到30KZ左右,可以看当频率大于18KHZ的时候,输出信号的幅度开始减小,达到20KHZ,输出信号幅度衰减到通带内的幅度的75%,大于20KZ后,输出幅度小于通带内幅度一半,达到衰减的目的,这表明低通滤波器也实现了其功能。整个滤波器部分调试完毕,达到设计要求。

2.1.3LM317稳压块调试

在调试LM317的输出电压的时候遇到这样一个问题,本来LM317是稳压块,它的输出电压是不应该随输入电压的改变而改变的,而当改变输入电压的时候,输出电压有很大的变化,这样对FPGA芯片很危险,如果电源电压突然变高,FPGA的VCCINT引脚无法承受这个电压就会烧掉整块FPGA芯片。在后面的毕业设计中发现,在用LM317的时候,最好不要用可调电阻,虽然是精密的可调电阻,它的阻值随温度的变化是很大的,当外部电压升高,通过可调电阻的电流就越大,就会让电阻的温度升高。这样LM317的输出电压随温度的变化而变化,所以换下可调电阻,用一个固定24

代替它,这样就解决输出电压随外部电压的变化而变化的问题。

2.1.4FPGA硬件电路调试

这部分调试是整个调试的主体,包括对有源晶振的调试,配置电路的调试。在MAX+PlusⅡ中写一个小程序,选择器件和锁定引脚后,用ByteBlaster(MV)下载电缆连接PC机上的打印并行口和硬件电路板上的下载口,在配置即将结束的时候弹出配置失败,读静态存储器失败,检查硬件和FPGA的配置时序图知道,在配置结束的时候,芯片的第二个引脚CONFING_DONE会跳回高电平,而硬件上的一直是低电平,经过了解,是应该在引脚上加一个1K的上拉电阻,这样在配置结束后就会变成高电平。加上拉电阻后还是出现同样的问题,查阅相关资料后知道,芯片的

引脚是应该接地的, PS配置模式下,FPGA芯片的MSEL0,MSEL1引脚是应该接地,改过电路后,再进行配置,用示波器检查配置时候的5个引脚的波形符合配置时序图。这样就解决了芯片无法配置的错误。接着是检查外部时钟产生电路,由于采用的是有源晶振,所以必须把2.5V电源接入FPGA模块上,让有源晶振工作起来,把有源晶振的输出端连接到示波器上,由于采用的20M的有源晶振,在用示波器观察波形的时候要选用100MHZ示波器,而且要把输入信号衰减后才可以进入示波器,否则无法看不到准确的时钟波形。通过示波器,可用看到有源晶振已经起振。

2.1.5AD采样模块调试

将实现AD采样的状态机程序单独写成一个文件,选择器件和锁定引脚后,配置到FPGA芯片中,模拟信号采用+5V电源,在调试过程中,发现AD采样在工作若干次后,就会出现“死机”现象,分析知道,在采样过程中会出现控制AD开始采样的CONV信号丢失现象,导致AD无限期等待采样开始信号CONV,而状态机又无限期等待采样结束信号EOC,这样就使得状态机进入“死机”状态。解决的方法是加入一段“看门狗”程序,当状态机进入死机状态后,用一个变量判断状态机是否等待超过一个采样周期,如果超过,就复位状态机,使状态机重新进入开始状态。这样就可以解决状态机的“死机”现象了。加入“看门狗”程序后,通过示波器可以看到12位数据的任何一位的电平信号。这样AD采样部分就调试完毕。

2.2 联机调试

联机调试需要实验工具有:示波器,稳压电源,EDA实验台,PC机,ByteBlaster(MV)下载电缆。按照图2.1中各模块连接顺序连接好整个采样系统,分别接上12V的放大器工作电压,+5V的AD采样电压和+2.5V的FPGA芯片工作电压,把串并选择端口选择串行输出,也即将短路帽短路,这样输入到器件是低电平。将示波器连接到串行输出口,用EDA实验台上的下载电路连接PC机上的打印并行口和硬件电路板上的下载口,可以看到示波器有高低的电平输出。将串并选择端口选为并行输出,也即将短路帽断开,这样输入到器件是高电平,任意选择一位连接到示波器,也可以看到有高低电平输出。通过调试可以证实整个高速多通道采样系统基本实现,联机调试完毕。

2.3调试注意事项

在调试音频放大部分的时候,话筒和电路板的连接线要选用屏蔽线,这样用助于屏蔽周围的干扰信号,普通的电线无法做到这一点。

由于FPGA芯片引脚过多,而且电路相对复杂,所以在硬件电路的功能调试之前,需要对硬件电路的检查和调试。特别是对FPGA芯片的电源的检查,电源电压的过高,芯片就会烧坏;电压过低,芯片就工作不起来。设计把AD部分和FPGA芯片分到了两块板子上,而且FPGA芯片电源是由LM317稳压块提供,所以先在AD模块加上+5V电源,用万用表测得LM317的输出电压是否是2.5V,这样就起到保护FPGA芯片的作用。

电路需要外部供电的部分,为防止电源对电路的干扰,在电源的输入两端都要接一个大电容(47uF)和一个小电容(0.1uF),这样可以滤掉电源中的高频和低频的干扰。

 FPGA顶层设计图

音频放大

滤波器

PCB图

如果学弟学妹们在毕设方面有任何问题,随时可以私信我咨询哦,有问必答!学长专注于单片机相关的知识,可以解决单片机设计、嵌入式系统、编程和硬件等方面的难题。
愿毕业生有力,陪迷茫着前行!

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
心电信号采集电路设计是将人体心电信号转换为可测量的电压信号的过程。设计一个高质量的心电信号采集电路对于心电检测和医学研究非常重要。 心电信号采集电路设计需要考虑以下几个方面: 首先,设计一个适当的前置放大电路来放大微弱的心电信号。由于心电信号的幅度通常只有几毫伏至几十毫伏,所以通过将输入信号放大到合适的范围,能够提高信号质量并减少噪声干扰。 其次,需要设计一个带通滤波器来滤除非心电信号。由于心电信号位于0.05Hz至150Hz的频率范围内,所以采用带通滤波器去除其他频率范围内的干扰信号,以保证采集到的信号是纯净的心电信号。 另外,为了确保信号的稳定性和可靠性,设计一个适当的直流偏置电路非常重要。直流偏置电路能够消除信号的偏移,使得采集到的信号更加稳定和准确。 还有,设计一个合适的采样率和分辨率非常关键。采样率需要足够高,以充分捕获心电信号中的细节信息,而分辨率则需要足够高,以提供足够的精度。 最后,需要考虑电源和地线的设计,以确保电路的稳定工作。稳定的电源和良好的接地是保证电路性能的关键。同时,还可以采取一些降噪技术,如差分放大和滤波等,以进一步提高信号质量。 总之,心电信号采集电路设计需要考虑信号放大、滤波、直流偏置、采样率和分辨率等多个因素。合理的设计可以提高心电信号的准确性和稳定性,为医学研究和临床诊断提供更可靠的数据支持。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值