DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 92|回复: 0
打印 上一主题 下一主题

正弦信号发生器

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-21 23:37:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1 引言    为了精确地输出正弦波、调幅波、调频波、PSK及ASK等信号,并依据直接数字频率合成(Direct Digital FrequencySvnthesizer,简称DDFS)技术及各种调制信号相关原理,设计了一种采用新型DDS器件产生正弦波信号和各种调制信号的设计方法。采用该方法设计的正弦信号发生器已广泛用于工程领域,且具有系统结构简单,界面友好等特点。2 系统总体设计方案    图1给出系统总体设计方框图,它由单片机、现场可编程门阵列(FPGA)及其外围的模拟部分组成。在FPGA的内部数字部分中,利用FPGA内部的总线控制模块实现与键盘扫描、液晶控制等人机交互模块的通信,并在单片机与系统工作总控制模块之间的交互通信中起桥梁作用。系统工作总控制可统一控制各个时序模块;各时序模块用于完成相应的控制功能。在模拟部分中,利用无源低通滤波器及放大电路,使AD9851型DDS模块的输出信号成为正弦波和FM调制信号;再利用调幅电路,使FPGA内部DDS模块产生的信号与AD9851输出的载波信号变为调幅信号,同时在基带码控制下通过PSK/ASK调制电路得到PsK和ASK信号。最后,各路信号选择通道后,经功率放大电路驱动50Ω负载。

3 理论分析与计算3.1 调幅信号    调幅信号表达式为:   

式中:ω0t,ωt分别为调制信号和载波信号的角频率;MA为调制度。    令V(O)=Vocos(ω0t),V(ω)=MAcos(ωt),则V(t)=V(O)+V(O)V(ω)。故调幅信号可通过乘法器和加法器得到;通过改变调制信号V(ω)的幅值改变MA,V(ω)的范围为0.1~l V,MA对应为10%"100%。3.2 调频信号    采用DDS调频法产生调频信号,具体实现方法:通过相位累加器和波形存储器在FPGA内部构成一个DDS模块,用于产生1 kHz的调制信号。其中,波形存储器的数据即为调制信号的幅度值。将这些表示幅度值的数据直接与中心频率对应的控制字相加,即可得到调频信号的瞬时频率控制字,再按调制信号的频率切换这些频率控制字,即可得到与DDS模块输出相对应的调频信号。3.3 PSK和ASK信号    ASK信号是振幅键控信号,可用一个多路复用器实现。当控制信号为1时,选择载波信号输出;当控制信号为0时,不选择载波信号输出;当控制信号由速率为10 Kb/s的数字脉冲序列给出时,可以产生ASK信号。PSK信号是移相键控信号,这里只产生二相移相键控,即bPSK信号。它的实现方法与ASK基本相同,只是在控制信号为0时,选择与原载波信号倒相的输出信号,该倒相信号可由增益倍数为l的反相放大电路实现。4 主要功能电路设计    图2给出调幅电路。它采用ADI公司的乘法器AD835实现。该器件内部自带加法器,可直接构成调幅电路。图3给出PSK/ASK电路。它主要由多路复用器和移相器构成。其中,移相器采用Maxim公司的高速运算放大器MAX477所构成的反相放大电路实现,多路复用器采用ADI公司的AD7502。当两条通道选择控制线A1AO为ll时,输出原信号;当A1A0为00时,输出原信号的反相信号;当A1A0为01时,无信号输出。这样只要FPGA按固定速率通过Al和AO两条控制线给出基带序列信号,就能相应输出PSK和ASK信号。

    FPGA内部DDS调频电路由分频器、累加器、ROM和AD985l时序控制电路构成。分频器用于得到20 kHz的信号,作为AD985l控制字的切换频率;ROM中存储了1 kHz的正弦波表,接收累加器给出的控制字切换信号,同时向AD985l时序控制模块发送频偏控制字;AD985l时序控制电路根据中心频率并结合频偏控制字向AD985l器件发送频率控制字,以实现DDS调频。

    功率放大电路由ADI公司的高速运算放大器AD811和T1公司的缓冲器bUF634构成,如图4所示。AD8ll采用同相放大器接法,将输入信号放大到电压峰峰值为6 V;后级缓冲电路用于提供足够的输出电流,使负载的输出电压峰值稳定在6 V。由于AD81l的输出电流较大,所以在AD811与缓冲器之间串接了一只l kΩ的电阻用于限流。电路调试时发现.输出高频信号有衰减。经过分析获知,主要原因在于后级缓冲器有8 pF的等效输入电容(见图4中虚线),该电容影响电路的高频响应。于是在AD811输出与bUF634输入之间接入了 一只330nF的补偿电容,补偿后的电路高频响应效果良好。

5 系统软件设计    该系统软件采用结构化和层次化的设计方法。前者指相应的基本功能模块利用底层处理子程序所处理的数据,向上层全功能模块提供处理后的数据;后者指利用前者的接口完成该模块功能。最后由主程序调用全功能模块构建系统。图5给出程序流程图。

    整个程序以按键中断为主线,分为正弦波、调幅波、调频波、键控波4种输出模式和1个复位模式。在不同的模式下分别执行相应的子程序,最后分别向FPGA写入相应的控制字。6 测试数据    该系统测试主要由高频毫伏表、频率计、示波器完成。其中,高频毫伏表测试输出信号峰值;频率计测试输出信号的频率;示波器用于测试正弦波、调幅波、调频波、PSK以及ASK等信号波形。这里选取1 kHz,lO kHz,100 kHz,l MHz和10 MHz这5个频率点对正弦信号发生器进行测试,将实际频率与预置频率相比较,得到各频率点的相对误差均小于0.05‰。其中100 kHz和10 MHz处的相对误差小于0.02‰;5个频率点所对应正弦信号的电压峰值分别为6.28 V,6.25 V,6.10 V,5.90 V,5.60 V。7 结语    该系统较好地完成了预期的各项功能和指标。正弦波的输出频率范围为l kHz~10 MHz,在其内频率稳定度为10~4;调频波的输出频率范围为100 kHz~10 MHz,在其内最大频偏可分为5 kHz/10 kHz二级程控调节;调幅波的输出频率范围为l"10 MHz,在其内调制度可在10%"100%之间程控调节,且步进为10%;ASK及PSK信号则通过移相电路和多路复用器的结合,在FPGA给出的基带序列信号控制下产生。
                          
                       
                          
                               
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-11-14 21:24 , 耗时 0.094073 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表