全国大学生电子设计大赛A题正弦信号发生器.docx
《全国大学生电子设计大赛A题正弦信号发生器.docx》由会员分享,可在线阅读,更多相关《全国大学生电子设计大赛A题正弦信号发生器.docx(112页珍藏版)》请在冰豆网上搜索。
全国大学生电子设计大赛A题正弦信号发生器
2005年全国大学生电子设计大赛
A题:
正弦信号发生器
1.A组题1………………………………………………..2
2.A组题2………………………………………………..17
3.A组题3………………………………………………..32
4.A组题4………………………………………………..41
5.A组题5…………………………………………………………..86
正弦信号发生器1
华南理工大学电子与信息学院
摘要
这个正弦信号发生器利用最新的频率合成技术,实现了1KHz~30MHz的正弦波输出,频率步进可达到1Hz,可输出调制度可调的AM信号,5KHz、10KHz最大频偏的FM信号,100KHz固定频率载波、码速10kbps的PSK,ASK信号。
采用了超宽带、超低噪声的高速运放,提高了输出电压的幅度。
整个系统以ADuC841为控制中心,有很高的精确度和稳定度。
双CPU结构,大大增强了信息的处理能力;行列式键盘输入,大屏幕LCD输出,操作简便,人机界面友好。
Abstract
Thissinewavegenerator,basedontheDDSnewtechnique,cangenerateasinewavewithafrequencyrangingfrom1KHzto30MHz,whichhasafrequencystepof1Hz!
ThesystemcanalsooutputanAMsignalwithanadjustablemodulationindex,anFMsignalwithafrequencydeviationof5kHzor10kHz,controlledbythekeyboardinput.MeanwhileithasafunctionofoutputtingPSKorASKsignals,withacoderateof10kpsand100KHzcarrier.Applyingthelownoise,highspeed,widepassbandOpAmp,increasestheoutputvoltageamplitude.ThewholesystemhasanADuC841asitscontrollercenter,whichprovidesahighprecisionandstabilization.TwoCPUsenhancetheabilityofprocessing.MatrixkeyboardandlargescreenLCDdisplayprovideafriendlyinterface,whichmakestheoperatingmoreeasy.
一、方案设计与论证
1.1方案比较
本题目的要求是设计一个正弦信号发生器,并且能够输出模拟幅度调制(AM)信号,模拟频率调制(FM)信号,二进制PSK、ASK信号。
综合各方面考虑,可以把这个系统分为几个子模块:
信号源部分、控制处理部分、AM,FM,PSK,ASK信号的产生部分,输入输出用户接口和末级放大部分。
本系统采用模块化制作,对各模块分析如下:
(1)信号源部分
信号源是这个系统的核心,它的成功与否,将直接影响到整个系统的性能。
方案一:
利用RC、LC网络产生振荡信号
利用成熟的三点式晶体管振荡电路,可以通过改变电阻,电感,电容元件的参数,来改变正弦振荡的频率。
这种电路的特点是频率稳定性较好,并且很容易起振,电路简单。
但是如果要实现题目中要求的1KHz至10MHz那么宽的频率范围,很难做到,或者实现起来系统体积太大,功耗很高,容易产生杂波,不易精确调节振荡频率。
因此该方案在设计之中不予考虑。
方案二:
利用压控振荡器VCO产生振荡信号
压控振荡器(又称为VCO或V/F转换电路)产生的波形的振荡频率与它的控制电压成正比,因此,调节可变电阻或可变电容可以调节波形发生电路的振荡频率。
利用集成运放可以构成具有一定精度、线性较好的压控振荡器。
并且,可以用数字电位器实现对电压的程控。
但是,开环VCO的频率稳定度和频率精度较低,题目中的频率范围对于压控振荡器来说太宽,很难实现,加之压控振荡器产生的信号频率稳定度也达不到题目的设计要求。
方案三:
利用锁相环进(PLL)行间接频率合成
这个方案是在方案二的基础上,用锁相环将VCO输出的频率锁定在所需的频率上。
PLL使输出频率的稳定度和精度,接近参考振荡源(通常用晶振),如图1所示。
如果只用一个锁相环,频率肯定覆盖不了1KHz-10MHz的变化范围。
因此可以考虑用多个PLL进行分段锁定。
缺点是硬件复杂,增加了调试难度。
因此也不采用这种方案。
方案四:
直接数字合成法(DDS)
DDS或DDFS是DirectDigitalFrequencySynthesis的简称,通常将此视为第三代频率合成技术,它突破了前几种频率合成法的原理,从”相位”的概念出发进行频率合成。
这种方法不仅可以产生不同频率的正弦波,而且可以控制波形的初始相位,还可以用DDS方法产生任意波形(AWG)。
利用专用的DDS芯片产生的信号频率准确,频率分辨率高,易于控制。
而且,电路相对简单易行。
综上所述,我们采用了最后一种方案作为信号源。
(2)控制部分
方案一:
采取FPGA或者CPLD控制
近年来,可编程器件发展很快,在很多方面都得到了广泛的应用。
采用大规模的可编程器件来完成系统的控制是一种很不错的解决方案,它具有体积小、改动灵活的特点。
用它们作为系统的“神经中枢”,可以采用VHDL或者Verilog语言来描述。
但是一般来说,复杂可编程逻辑器件CPLD(ComplexProgrammableLogicDevice)集成的门数目不会很多。
现场可编程门阵列FPGA(FieldProgrammableGateArray)是新一代的可编程器件,但是需要外部的配置芯片,否则断电后,保存在RAM中的程序会丢失。
这个方案特别适用于大型、高速、复杂系统的控制,但是本系统中,考虑到成本和制作难易程度,没有采用这个方案。
方案二:
采取MCS51单片机作为控制中心
MCS51系列单片机是一种廉价的,应用极为广泛的单片机,它体积小,功能强大。
可以用汇编或者C语言进行开发。
并且这种单片机的接口电路丰富。
缺点是运行速度不够快,12个时钟周期一条指令,如果用12MHz的晶振,执行一条指令最快也要1us。
因此不适合高速的控制。
方案三:
采取ADuC841芯片作为主控
ADuC841是美国模拟器件公司(ADI)生产的内嵌MCU的高性能、多通道12位数据采集系统芯片,它具有体积小、功耗低等诸多特点。
它具有与8051兼容的内核,12个中断源、2个优先级、双数据指针、扩展的11位堆栈指针。
每条指令一个时钟周期,最大的工作时钟为25MHz(5V时)及16MHz(3V时)。
用该芯片来控制DDS,可以完美地实现系统的指标性能要求。
同时考虑到,输入输出的接口需要较多的I/O口,而且这部分对单片机的速度要求不高,所以在此系统中,采取了双CPU结构,即利用ADuC841作为主控,用AT89S52作为输入输出的控制,两个CPU通过串口进行通信。
(3)AM、FM、PSK、ASK信号产生部分
a.调幅(AM)信号的产生
调幅的方法有很多,使用的场合不同,产生调幅信号的方法也有很大的不同。
实现调幅的方法大致分为低电平调幅和高电平调幅。
其中低电平调幅又有平方律调幅,斩波调幅,而高电平调幅又分集电极(阳极)调幅和基极(控制栅极)调幅。
平方律调幅是载波和调制信号通过非线性器件之后,产生丰富的频率分量,其中含有所需的调幅波边频,这些信号通过一个带通滤波器之后,把不需要的频率分量滤掉得到调幅波。
斩波调幅就是将调制信号经过一个受载波控制的开关电路,再通过中心频率为载波频率的带通滤波器,得到调幅波。
这种电路原理简单,但实现起来有一的难度,因为对器件的要求很高,易引入干扰。
调试困难。
用模拟乘法器实现调幅也是常用的方法。
集成模拟乘法器构成的调制器线性失真小,包络波形好,比用分立元件所构成的调制器稳定,而且实现起来也很方便,很容易控制,并且很稳定。
所以本系统采用这种方法。
b.调频(FM)信号的产生
产生调频信号的也有方法很多,归纳起来主要有两类:
一是用调制信号直接控制载波的瞬时频率——直接调频;二是先将调制信号积分,然后对载波进行调相,结果得到调频波,即由调相变调频——间接调频。
常用的调频方法是变容二极管调频,实现起来也不困难,但是要进一步提高灵敏度和精度,减少失真,实现数控,也不易于做到。
因为系统的正弦波发生器是基于DDS芯片的,所以可以充分利用硬件资源,根据调制信号和载波信号,用程序控制DDS芯片直接输出调频信号,这样做的好处是电路简单,频偏的改变只需要改变置入的频偏参数即可。
经过我们在实验中的测试,发现这种方法的效果良好。
c.二进制PSK、ASK信号的产生
在幅度键控中,载波幅度是随着调制信号而变化的。
ASK(幅度键控)信号的产生,可以把二进制序列看作一个开关信号的序列,用这个开关信号对载波进行调制,就得到了ASK信号。
二进制相移键控(PSK)中,载波的相位随信号1或0而改变,通常用相位0和180来分别表示1或0。
相移键控信号的产生和ASK类似,可以由两个初相位不同的ASK信号相加得到。
在这个设计中,因为所采用的DDS芯片自带了FSK、PSK、ASK的功能,所以只需要写程序控制DDS芯片,即可得到所需要的信号。
从而节省了硬件开销,实现起来更加容易,效果也好。
(4)末级放大电路部分
系统的输出要求在频率范围内50
负载电阻上正弦信号输出电压的峰峰值为6V,因此一定要在末级加上放大电路。
方案一:
用晶体管组成放大电路
用分立的晶体管元件构成的放大电路,优点是灵敏度高、能承受的较大的功率、动态范围广等,它们的通频带也较宽。
但是,分立元件组成的电路调试起来很困难,特别是在高频段,而且容易引入噪声和失真。
方案二:
用运算放大器构成放大电路
一个较好的解决方案是利用集成的运算放大器,但是一般的运放的频带都满足不了本系统1KHz~10MHz这么宽的范围。
因此一定要采用低噪声,宽频带的高速运放。
AD8099和AD8039具有高达1GHz的频带,用来作末级放大,则可达到题目提出的高指标。
(5)输入输出用户接口
可以使用8255、8155扩展I/O口,或者使用键盘数码管接口专用芯片,这种方案成本较高。
因为AT89S52“物美价廉”,功能强大,所以在这个设计中,利用它作用输入输出设备的接口控制,采用了4×4行列式键盘,大屏幕LCD显示器。
其中,LCD显示器和LED数码管相比,有其无法比拟的优点。
LED数码管无论采用静态或者动态的方式扫描,都要占用很多的CPU硬件和软件资源。
LCD自带有锁存功能,只有当要改变显示内容的时候才需要占用软件资源,“空闲”时处于锁存状态,可以和CPU断开了联系。
1.2总体方案框图
整个系统的框图如图2所示,其中左边虚线方框内所示的输入输出部分以MCUI(AT89S52单片机)为中心,右边虚线方框内所示为信号发生部分,以MCUII(ADuC841)和DDS芯片(AD9958)为中心。
二、原理分析和说明
(1)正弦波的产生
1.DDS的原理
图3
DDS的基本结构框图如图3所示,DDS的工作过程为:
1)将存于数表中的数字波形,经数模转换器D/A,形成模拟量波形.
2)两种方法可以改变输出信号的频率:
a、改变查表寻址的时钟CLOCK的频率,可以改变输出波形的频率.
b、改变寻址的步长来改变输出信号的频率.DDS即采用此法。
步长即为对数字波形查表的相位增量,由累加器对相位增量进行累加,累加器的值作为查表地址。
3)D/A输出的阶梯形波形,经低通(带通)滤波,成为质量符合需要的模拟波形
图4正弦输出的DDS原理图
正弦输出的DDS原理图如图4所示。
设相位累加器的位宽为2N,sin表的大小为2p,累加器的高P位用于寻址sin表,时钟Clock的频率为fc,若累加器按步进为1地累加直至溢出一遍的频率为
若以M点为步长,产生的信号频率为
M称为频率控制字。
DDS系统的核心是相位累加器,它由一个加法器和一个位相位寄存器组成,每来一个时钟,相位寄存器以步长增加,相位寄存器的输出与相位控制字相加,然后输入到正弦查询表地址上。
正弦查询表包含一个周期正弦波的数字幅度信息,每个地址对应正弦波中0~360o范围的一个相位点。
查询表把输入的地址相位信息映射成正弦波幅度的数字量信号,驱动DAC,输出模拟量。
相位寄存器每经过2N/M个fc时钟后回到初始状态,相应地正弦查询表经过一个循环回到初始位置,整个DDS系统输出一个正弦波。
输出正弦波周期为
频率控制字与输出信号频率和参考时钟频率之间的关系为:
其中N是相位累加器的字长。
频率控制字与输出信号频率成正比。
通常用频率增量来表示频率合成器的分辨率,DDS的最小分辨率为
与PLL不同,DDS的输出频率可以瞬时地改变,即可以实现跳频,这是DDS的一个突出优点,用于扫频测量和数字通讯中,十分方便。
2.AD9958的简介
这个系统的核心:
信号波形产生部分,采用了专用DDS芯片AD9958。
AD9958是美国AD公司新推出的一款多通道DDS器件。
它是2路带10位DAC的500MSPSDDS,取样频率500MSPS,在各路中能单独控制频率/相位/幅度,能匹配频率/相位/幅度的变化,通路-通路之间有极好绝缘(大于72dB)。
具有线性频率/相位/幅度扫描功能,多达16级频率/相位/幅度调制,单独可编程DAC满刻度电流。
有两个集成的10位DAC,32位频率调整分辨率,14位相位失调分辨率,10位输出幅度可缩放的分辨率,有增强数据吞吐量的串行I/O口(SPI),软件/硬件控制降功耗,双电源工作(1.8VDDS核,3.3V串行I/O),内置了多种器件的同步,56引脚LFCSP封装,跳频本地振荡器。
系统要求产生1KHz到10MHz的频率范围,频率步进为100Hz,可知,用该芯片可以很好地实现。
AD9958是具有32位的相位累加器,本系统所用的外部振荡源是22.1184M的晶振。
振荡源信号经过4~20倍频(可程序控制)后,作为系统时钟。
所以,输出信号频率的计算公式为:
从上式可以看出,频率步进最小可以达到
这个设计中用5倍频,算得
是题目所要求的步进量的3883倍!
如果已知输出频率,可以由下式算得控制字:
3.信号质量
1)频率稳定度,等同于其时鈡信号的稳定度。
时钟信号由晶振产生,它的频稳度优于10-6。
2)频率的值的精度,决定于DDS的相位分辨率。
即由DDS的相位累加器的字宽和ROM函数表决定。
本题要求频率按100Hz步进,但实际上可以达到小于1Hz的步进。
所以说DDS可达到很高的频率分辨率。
3)失真与杂波:
可用输出频率的正弦波能量与其他各种频率成分的比值来描述。
失真与杂波的成分可分为以下几个部分:
a.采样信号的镜像频率分量。
DDS信号是由正弦波的离散采样值的数字量经D/A转换为阶梯形的模拟波形的。
所以存在着以采样频率为折叠频率的一系列镜像频率分量。
b.D/A的字宽决定了它的分辨率,它所决定的杂散噪声分量,满量程时,对信号的信噪比影响可表示为
S/D+N=6.02B+1.76dB
其中B为D/A的字宽,所用的DDS有10位的D/A,信噪比可达到60dB以上。
c.相位累加器截断造成的杂波。
这是由正弦波的ROM表样点数有限而造成的。
通过提高时钟频率或采用插值的方法增加每个周期中的点数(过采样),可以减少这些杂波分量。
d.D/A转换器的各种非线性误差形成的杂散频率分量,其中包括谐波频率分量,它们在N频率处。
这些杂波分量的幅度较小。
e.其他杂散分量,包括时钟泄漏,时钟相位噪声的影响等。
D/A后面的低通滤波器可以滤去镜像频率分量和谐波分量,可以滤去带外的高频杂散分量,但是,无法滤去落在低通带内的杂散分量。
(2)AM信号的产生
图5模拟乘法器MC1496的内部电路图
MC1496的内部电路如图5所示,它由差分放大器(T1~T4)和差动放大器T5,T6组成,T7,T8,T9构成差动放大器T5、T6的恒流源。
工作时输入信号V1加至双差分放大器的输入端8,10脚,另一输入信号V2加至差动放大器的输入端1、4脚。
差动放大器的两个发射极分别引出两个接引线端2,3,用以接入适当的反馈电阻,使V2的输入幅度的线性动态范围满足一定的要求,它还决定乘法器的增益。
当V1,V2足够小时,输出电压
,
令
并调节电位器,合1、4端的直流电位相等时,则
即模拟乘法器的输出为抑制载波的调幅波。
当调节1,4端的电位器,使1、4端含有直流电压VD时,则
即模拟乘法器的输出为普通调幅波。
由上式可得
其中,
,
即为调制度。
这是调幅信号的一般表达式
可见,当VD一定时,调制度ma和V2m成正比关系,通过调节调制信号的幅度就可以线性地改变调制度。
题目中要求在1MHz~10MHz范围内产生调制度ma可在10%~100%之间可以程控调节的AM波。
因此,只需在实验中把调制度为10%,20%,30%,40%...100%时调制信号的幅度值保存起来,就可以根据需要输出步进量为10%的AM波了。
同时,可以扩展为调制度任意调节。
(3)FM信号的产生
在调频或调相中,载波的瞬时频率或瞬时相位受调制信号的控制,作周期性的变化,这变化的大小与调制信号的强度成线性关系,变化的周期由调制信号的频率所决定。
但已调波的振幅则保持不变,不受调制信号的影响。
它的原理示意图如图6所示。
调频信号的一般表达式为:
式中V是FM波的振幅,ф(t)是FM信号的瞬时相位;且
图6调频原理示意图
其中ωc为FM波的中心角频率,即载波频率,Kf为FM波的调频灵敏度,
是调制信号。
频偏就是调频波频率摆动的幅度,一般说的是最大频偏。
下面以最大频偏为10KHz,正弦调制信号为1KHz为例说明用DDS产生调频信号的方法。
因为调制信号频率为1KHz,即它的周期为1ms,所以输出的调频信号频率以1ms为周期变化;最大频偏为10KHz,所以输出信号的频率最大为fc+10KHz(fc为载波频率),最小为fc-10KHz。
建立一个正弦函数表(以时间为横轴取100个点),得到下表
点值序号k
0
1
2
3
4
5
Y=sin(2*pi*k/100)
0
0.062791
0.125333
0.187381
0.24869
0.309017
deltaf=100*Y
0
627.9052
1253.332
1873.813
2486.899
3090.17
控制字的变化值
0
24385.42
48674.6
72771.68
96581.57
120010.3
…
…
…
…
…
…
…
点值序号k
94
95
96
97
98
99
Y=sin(2*pi*k/100)
-0.36812
-0.30902
-0.24869
-0.18738
-0.12533
-0.06279
deltaf=100*Y
-3681.25
-3090.17
-2486.9
-1873.81
-1253.33
-627.906
控制字的变化值
-142965
-120010
-96581.6
-72771.7
-48674.6
-24385.5
每隔1ms/100=10us,单片机从上表中读取一个控制字的变化值加上到当前的中心频率控制字,即可输出符合要求的调频信号。
(4)PSK、ASK信号的产生
ASK幅度键控,即传“1”信号时,发送载波,传“0”信号时,送0电平,所以也称这种调制为通(on)、断(off)键控,即OOK。
其实现模型和调制波形分别如图7和图8所示。
图7ASK信号实现模型
图8ASK信号波形图
ASK信号的时间表示式为:
s(t)为随机的单极性矩形脉冲序列。
绝对相移键控(PSK),即传“1”信号时,发起始相位为π的载波,传“0”信号时,发起始相位为0的载波,或者取其相反的形式。
2PSK的实现方式和调制波形如图9和图10所示。
图9PSK信号实现模型
图10PSK信号波形图
可见,2PSK信号的时间表达式为
AD9958芯片自带有ASK,PSK调制功能,通过设置相应的寄存器就可以输出所需的调制信号,十分方便,用软件就可以实现,不用增加硬件资源。
要产生二进制PSK、ASK信号,在100KHz(fc)固定频率载波进行二进制键控,二进制基带序列码速率固定为10kps(Rs),可得,码元周期:
T=1/10K=0.1ms。
利用单片机内部的定时器定时0.1ms,同时根据二进制序列,决定输出波形的幅度,相位,频率,即可完成调制。
三、系统方案设计
1.硬件设计
(1)电源电路
本系统的直流稳压电源采用通常的全波整流、大电容滤波、三端固定输出的电路。
输入市电220V/50Hz,经过变压器后,降压为
交流电,全波整流后加到各三端稳压器的滤波电容上。
因为本系统采用高速度低电压的器件,各芯片所需的电压值不同,所以要用几种不同的三端稳压器。
末级放大器需
,AD9958需+3.3V和+1.8V,ADuC841需+3.3V,AT89S52需+5V,对应的三端稳压器为:
7806,7906,117-3.3,117可调,7805。
所有的集成稳压器根据功耗均安装有充分裕量的散热片。
图11是电源的部分电路图。
值得一提的是,为了提高系统的可靠程度,减少电源偶然波动对电路的影响,在设计的过程中,在每个芯片的电源和地引脚的附近都加了0.1uF的滤波电容,在电源网络中还加了47uH的电感作为高频扼流圈,进一步提高了电源的稳定。
图11电源部分电路图
(2)单片机系统及DDS电路
本系统采用双CPU结构,ADuC841负责控制DDS芯片,AT89S52负责输入输出部分的控制及输入内容的处理,它们之间通过串口进行通信。
为了保证通信正确,采用了累加和校验。
为了使得下次开机时,输出信号为用户预设值,需加一个EEPROM。
设计中用24C256,它是一款串行的、I2C协议通信的32KByte的EEPROM。
(3)末级放大电路
鉴于DDS输出的是电流值,我们采用了电阻取样,把电流信号转为电压信号(约500mA)。
为了增加电路的驱动能力,满足题目所要求的幅度输出,加了末级放大电路。
实际上是利用AD8039,AD8099组成两级放大电路,分别放大3倍和5倍,再加一级跟随器作为缓冲。
运放用双6V供电,题目中要求6Vpp,因此一定可以达到指标。
(4)真有效值检波电路
为了同时显示的预设和实际的信号电压值,必须对输出的信号进行检测,设计中运用了真有效值芯片AD8361,测得的电压有效值反馈到ADuC841单片机,经过处理后,再通过串口发送到AT89S52单片机,送到LCD显示出来。
2.软件设计
本系统软件主程序采用结构化程序设计方法,功能模块各自独立。
接口部分单片机软件流程图如下:
信号控制部分软件流程图如下:
四、系统测试与数据分析