首页 范文大全 古典文学 职场知识 中国文学 公文书信 外国名著 寓言童话 百家讲坛 散文/诗歌 美文欣赏 礼仪知识 民俗风情
  • 范文大全
  • 古典文学
  • 职场知识
  • 中国文学
  • 公文书信
  • 外国名著
  • 寓言童话
  • 百家讲坛
  • 散文/诗歌
  • 美文欣赏
  • 礼仪知识
  • 民俗风情
  • 谜语大全
  • 名言警句
  • 函数信号发生器课程设计报告

    时间:2021-03-15 12:10:10 来源:蒲公英阅读网 本文已影响 蒲公英阅读网手机站

    相关热词搜索:函数 课程设计 信号发生器

    函数信号发生器课程设计报告 本文关键词:函数,课程设计,信号发生器,报告

    函数信号发生器课程设计报告 本文简介:课程设计报告书专用纸淮海工学院课程设计报告书课程名称:电子技术课程设计题目:函数信号发生器学院:电子工程学院学期:2012-2013-2专业班级:通信工程111姓名:彭孟瑶学号:2011120688评语:成绩:签名:日期:函数信号发生器1.引言在人们认识自然、改造自然的过程中,经常需要对各种各样的电

    函数信号发生器课程设计报告 本文内容:

    课程设计报告书

    课程名称:

    电子技术课程设计

    目:

    函数信号发生器

    院:

    电子工程学院

    期:

    2012-2013-2

    专业班级:

    通信工程111

    名:

    彭孟瑶

    号:

    2011120688

    评语:

    成绩:

    签名:

    日期:

    函数信号发生器

    1.引言

    在人们认识自然、改造自然的过程中,经常需要对各种各样的电子信号进行测量,因而如何根据被测量电子信号的不同特征和测量要求,灵活、快速的被测电路提供所需要的已知信号(各种波形),然后用其它仪表测量感兴趣的参数。可见信号源在各种实验应用和实验测试处理中,它不是测量仪器,而是根据使用者的要求,作为激励源,仿真各种测试信号,提供给被测电路,以满足测量需要。

    波形发生器就是信号源的一种,能够给被测电路提供所需要的波形,传统的波形发生器多采用模拟电子技术,由分立元件或模拟集成电路构成,其电路结构复杂,不能根据实际需要灵活扩展。随着微电子技术的发展,运用单片机技术,通过巧妙的软件设计和简易的硬件电路,产生数字式的正弦波、方波、三角波、锯齿等幅值可调的信号。与现有各类型波形发生器比较而言,产生的数字信号干扰小,输出稳定,可靠性高,特别是操作简单方便。

    2.设计要求

    设计一个能够输出正弦波、三角波和矩形波的信号源电路,电路形式自行选择。输出信号的频率可通过开关进行设定,具体要求如下:

    输出信号的频率范围为1000~2000Hz,步进为50Hz。

    要求输出信号无明显失真,特别是正弦波信号。

    图1

    函数信号发生器方框图

    3.函数信号发生器的方案

    3.1

    方案一

    由555定时器组成的多谐振荡器产生方波,然后由积分电路将方波转化为三角波,最后用低通滤波器将方波转化为正弦波。

    低通滤波器

    积分电路

    555多谐振荡器

    图2

    方波、三角波、正弦波、信号发生器的原理框图

    但这样的输出将造成负载的输出正弦波波形变形,因为负载的变动将拉动波形的崎变。

    3.2方案二

    先通过RC正弦波振荡电路产生正弦波,再通过电压比较器产生方波,最后通过积分电路形成三角波。

    积分电路

    电压比较器

    RC正弦波振荡电路

    图3

    正弦波、方波、三角波信号发生器的原理框图

    此电路具有良好的正弦波和方波信号。但经过积分器电路产生的同步三角波信号,存在难度。原因是积分器电路的积分时间常数是不变的,而随着方波信号频率的改变,积分电路输出的三角波幅度同时改变。若要保持三角波幅度不变,需同时改变积分时间常数的大小。

    3.3方案三

    8038集成函数发生器是一种多用途的波形发生器,可以直接用来产生正弦波、方波、三角波和锯齿波。

    图4

    利用ICL8038芯片构成8038集成函数发生器

    综上所述,我们选择方案二。

    4.单元电路的设计

    4.1正弦波发生器

    RC振荡电路由RC串并联选频网络和反向相放大电路组成,图中RC选频网络形成负反馈电路。

    图5-1

    正弦波波发生电路

    在图5-1电路中,当R1

    =

    R2

    =

    R,C1=

    C2

    =

    C时

    (5-1)

    当频率时,,根据幅度平衡条件,只有

    电路才能维持振荡。

    令C=100Nf,R4<1.592千欧。

    图5-1-1

    正弦波仿真图

    由图可知

    Umax=6v,f=1.041KHZ。

    4.2方波发生器

    电压比较器由比较器741的反相输入端接电压构成,在实用电路中为了满足负载需要,常在集成运算的输出端加稳压管限幅电路。限幅电路的作用是把输出信号幅度限定在一定的范围内,亦即当输入电压超过或低于某一参考值后,输出电压将被限制在某一电平(称作限幅电平),且不随输入电压变化。

    图5-2

    方波发生电路

    经过阈值UTH1时,输出电平由高电平(Uz)跳变为低电平(-Uz)。当输入电压由高向低变化,经过阈值UTH2时,输出电平由低电平(-Uz)跳变为高电平(Uz)。

    UTH1=R5*UZ/(R5+R6)

    (5-2)

    UTH2=-R5*UZ/(R5+R6)

    +

    (5-3)

    图5-2-1

    方波仿真图

    由图可知Umax=5.2V,f=1.041KHZ。

    4.3三角波的设计

    三角波的产生是由积分电路实现的,积分电路将方波转换成三角波。积分电路中,由于集成运放的反相输入端“虚地”,又由于“虚断”,运放反相输入端的电流为零。

    图5-3

    三角波发生器

    积分器元件参数计算如下:

    Ui/R=-C*dU0/dt

    (5-4)

    令C=100nf,R用可变电阻R8表示。

    图5-3-1

    三角波仿真图

    由图可知,Umax=8v,f=1.044KHZ。

    5.总电路图

    图6

    总电路图

    5.1正弦波-方波

    图6-1

    正弦-方波仿真图

    5.2方波-三角波

    图6-2

    方波-三角波仿真图

    5.3总波形

    图6-3

    总波形仿真图

    第8

    共9页

    6.收获与体会

    在这次设计过程中我对抽象的理论有了进一步的认识。通过这次课程设计,我了解了常用元件的识别和测试;熟悉了常用的仪器仪表;了解了电路的连接方法;以及如何提高电路的性能等等。虽然这次实验使得我纠结了近三天,但收获的确很多。

    在这次实验中,总结了很多感触体会,我们不能盲目的图快,一定要在心底有个具体的谱然后下手去设计,这样能让我们少走弯路,更加节省时间。在实验过程中,我也遇到了不少的问题,如波形失真或者完全没有波形这样的问题。在老师和同学的帮助下,自己的总结思索下,把问题一一解决。实验中暴露出我们在理论学习中所存在的问题,有些理论知识还处于懵懂状态,这次实验让我对过去未理解的很多知识有了明了的认识。这次课程设计让我体会到了在接好电路后测试出波形的喜悦与如重释负的轻松。

    此课程的设计,真的让我认识到了实践能力的的重要性与真实性。这能让我们很好的加深对不知道的理论知识的理解,同时也巩固了以前知道的知识。明白老师为什么要求我们做好这个课程设计的原因。这次课程设计让我意识到运用所学的知识去解决实际的问题的重要性,我们学理工科的同学应更多的锻炼提高我们的动手能力。

    7.参考文献

    [1]

    冯军.电子线路基础[M].北京:高等教育出版社,1979.

    [2]

    康华光.电子技术基础[M].浙江:华中工学院电子学院高等教育出版,1997.

    [3]

    谢自美.电子线路设计[M].江苏:华中科技大学出版社,1990.

    [4]

    程开明.模拟电子技术[M].四川:重庆大学出版社,1992.

    [5]

    劳五一.模拟电子电路分析、设计与仿真[M].西安:西安电子科技大学出版社,2007.

    [6]

    劳五.电子电路分析与设计[M].北京:北京清华大学出版,2007.

    第9

    共9页

    篇2:北京邮电大学课设基于MSP430的简单信号发生器的设计

    北京邮电大学课设基于MSP430的简单信号发生器的设计 本文关键词:北京,邮电大学,信号发生器,简单,设计

    北京邮电大学课设基于MSP430的简单信号发生器的设计 本文简介:基于MSP430的信号发生器设计报告学院:电子工程学院班级:2013211212组员:唐卓浩(2012211069)王旭东(2013211134)李务雨(2013211138)指导老师:尹露课程设计报告——基于MSP430的信号发生器的设计学院:电子工程学院班级:2013211212小组成员:唐卓浩

    北京邮电大学课设基于MSP430的简单信号发生器的设计 本文内容:

    基于MSP430的信号发生器

    设计报告

    学院:电子工程学院

    班级:2013211212

    组员:唐卓浩(2012211069)

    王旭东(2013211134)

    李务雨(2013211138)

    指导老师:尹露

    课程设计报告——基于MSP430的信号发生器的设计

    学院:电子工程学院班级

    :2013211212

    小组成员:

    唐卓浩(2012211069)

    王旭东(2013211134)李务雨(2013211138)

    一、摘要

    信号发生器是电子实验室的基本设备之一,目前各类学校广泛使用的是标准产品,虽然功能齐全、性能指标较高,但是价格较贵,且许多功能用不上。本设计介绍一款基于MSP430G2553

    单片机的信号发生器。该信号发生器虽然功能及性能指标赶不上标准信号发生器,但能满足一般的实验要求,且结构简单,成本较低。本次需要完成的任务是以MSP430

    LaunchPad的单片机为控制核心、DAC模块作为转换与按键电路作为输入构成的一种电子产品。MSP430

    LaunchPad单片机为控制核心,能实时的进行控制;按键输入调整输出状态,DAC0832将单片机输出的数字信号转化为模拟量,经运放放大后,在示波器上输出。在本次程序设计中充分利用了单片机内部资源,涉及到了中断系统、函数调用等。

    关键字:信号发生器

    MSP430

    单片机

    数模转换

    二、设计要求

    以msp430单片机为核心,通过一个DA(数字模拟)转换芯片,将单片机输出的方波、三角波、正弦波(数字信号)转换为模拟信号输出。提供芯片:msp430G2553、DAC0832、REF102、LM384、OP07。参考框图如下:

    图1

    硬件功能框图

    1、基本要求

    (1)

    供电电压

    VDD=

    5V~12V;(√)

    (2)

    信号频率:5~500Hz(可调);(√)

    (3)

    输出信号电压可调范围:≥0.5*VDD,直流偏移可调:≥0.5*VDD;(√)

    (4)

    完成输出信号切换;(√)

    (5)

    方波占空比:平滑可调20%~80%;(√)

    (6)

    通带内正弦波峰峰值稳定度误差:≤±10%(负载1K)。(√)

    2、发挥部分

    (1)

    信号频率:5~2000Hz(可调);(√)

    (2)

    多通道同时输出同频正弦波,方波,三角波。(频率可调);

    (3)

    输出频率与幅度可调的正弦波与余弦波,相位误差≤±5度;

    (4)

    自由发挥。

    三、实验器材

    MSP430G2553单片机(Texas

    Instrument);DAC0832模数转换芯片;REF102高精度电压基准;OP07运算放大器;阻值不同的电阻及电位器若干;电容若干;导线若干。

    1、

    MSP430G2553单片机

    TI的MSP430G2系列Launchpad开发板是一款适用于TI最新MSP430G2xx系列产品的完整开发解决方案。其基于USB

    的集成型仿真器可提供为全系列MSP430G2xx器件开发应用所必需的所有软、硬件。LaunchPad具有集成的DIP插座,可支持多达20个引脚,从而使MSP430

    Value

    Line器件能够简便地插入LaunchPad电路板中。此外,其还可提供板上Flash仿真工具,以直接连接至PC

    轻松进行编程、调试和评估。此外,它还提供了从MSP430G2xx器件到主机PC或相连目标板的9600波特率的UART串行连接。

    MSP430G2系列Launchpad开发板的特性:

    (1)USB

    调试与编程接口无需驱动即可安装使用,且具备高达9600波特的UART

    串行通信速度;

    (2)支持所有采用PDIP14或PDIP20封装的MSP430G2xx和MSP430F20xx器件;

    (3)两个按钮可实现用户反馈和芯片复位;

    (4)器件引脚可通过插座引出,既可以方便的用于调试,也可用来添加定制的扩展板。

    (5)由此易知,MSP430单片机将用于系统的控制部分。

    2、

    DAC0832模数转换芯片

    DAC模块主要由DAC0832和OPA227PA运算放大器组成。DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。其主要参数如下:

    (1)分辨率为8位;

    (2)电流稳定时间1us;

    (3)可单缓冲、双缓冲或直接数字输入;

    (4)只需在满量程下调整其线性度;

    (5)单一电源供电(+5V~+15V);

    (6)低功耗,20mW

    其引脚功能如下:

    (1)D0~D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);

    (2)ILE:数据锁存允许控制信号输入线,高电平有效;

    (3)CS:片选信号输入线(选通数据锁存器),低电平有效;

    (4)WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变化换,LE1的负跳变时将输入数据锁存;

    (5)XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;

    (6)WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。

    (7)IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化;

    (8)IOUT2:电流输出端2,其值与IOUT1值之和为一常数;

    (9)Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;

    (10)Vcc:电源输入端,Vcc的范围为+5V~+15V;

    (11)VREF:基准电压输入线,VREF的范围为-10V~+10V;

    (12)AGND:模拟信号地;

    (13)DGND:数字信号地

    3、

    REF102高精度电压基准

    REF102是高精度10V电压基准集成电路。由于REF102无需外加恒温装置,因而功耗低、升温快、稳定性好、噪声低。REF102的输出电压几乎不随供电电源电压及负载变化。通过调整外接电阻,输出电压的稳定性及温度漂移可降至最校11.4V至36V的单电源供电电压及优异的全面性能使REF102成为仪器、A/D、D/A及高精度直流电源应用的理想选择。

    REF102的特点:

    (1)高精度输出:+10V

    0.0025V

    (2)超低温度漂移:≤2.5ppm/℃

    (3)高稳定性:5ppm/1000小时(典型值)

    (4)高负载调整率:≤1ppm/V,≤10ppm/mA

    (5)宽供电电压范围:11.4VDC至36VDC

    (6)低噪声

    (7)低静态电流:≤1.4Ma

    REF102的引脚:(2)为芯片电源脚,电压范围是11.4V~36V;(4)为公共引脚;(5)为外接调整电阻脚,调整输出电压稳定度及温度漂移;(6)为输出引脚;(8)为输出噪声衰减。

    4、

    OP07运算放大器

    OP07芯片是一种低噪声,非斩波稳零的双极性运算放大器集成电路。由于OP07具有非常低的输入失调电压(对于OP07A最大为25μV),所以OP07在很多应用场合不需要额外的调零措施。OP07同时具有输入偏置电流低(OP07A为±2nA)和开环增益高(对于OP07A为300V/mV)的特点,这种低失调、高开环增益的特性使得OP07特别适用于高增益的测量设备和放大传感器的微弱信号等方面。

    OP07芯片引脚功能说明:1和8为偏置平衡(调零端),2为反向输入端,3为正向输入端,4接地,5空脚

    6为输出,7接电源。

    四、硬件电路设计

    1、

    整体设计思路

    方案一:控制部分由MSP430G2553实现,波形产生采用单片压控函数发生器(MAX038等),可同时产生频率可控可变的正弦波、三角波、方波。

    优缺点:简单易行,采用专用芯片,系统体积大大减小;但频率步进的步长很难控制,并且整个设计中MSP430G2553仅完成简单的控制功能,资源没有充分利用。

    方案二:由MSP430G2553实现对专门的DDS芯片(如AD9850)的控制,产生各种波形。

    优缺点:此方案产生波形的频率稳定度高,易于程控。但DDS芯片价格高,系统成本高。

    方案三:由MSP430G2553结合DAC0832实现各种波形的产生。

    优缺点:此方案可以充分利用MSP430G2553上的资源,降低系统成本,但是产生波形频率较低。

    综上,方案三充分利用MSP430G2553的资源,外围电路简单、系统成本较低,可以满足信号发生器的要求,所以最终采用方案三。

    2、

    硬件控制模块

    这次试验共有三个按键输入,分别作为切换波形,加频,减频。

    一个滑动变阻器作为占空比的调节,一个作为幅度的调节,一个作为直流偏置的调节。按键直接采用分压法给一个高电位,当按下去的时候相当于接地也就输出了低电平。占空比的调节在于分压法,让滑动变阻器所占电压在0~2.5伏,从而输给芯片产生相应的占空比,再输出。

    3、

    DAC0832的模块

    其八位数据输入接MSP430的八位数据输出,通过Iout1端口输出。使能端与430相连,电源接12V。Iout2接地,f不接。

    4、

    放大模块

    采用了反向放大电路,电源输入电压是12伏,放大了5倍左右。

    同时在放大电路前并联一个滑动变阻器100K,通过它来调节整个DAC对应的输出负载电阻,也就可以达到改变电压的幅度的目的。

    效果如下(由于该方波是2KHz的方波,频率较高因此边沿看上去不垂直):

    5、

    直流偏置

    采用反向加法电路通过改变直流的接入电阻调节直流电压的大小。图如下,u1为放大之后的输入,u2为-12伏的电压。R1,3,6都是5K的电阻,R2位100k的电位器。则Uout1=12*5/R2-U1,这就达到了直流偏置的效果。

    效果见下图:

    五、

    软件程序设计

    1、

    设计指标与功能

    (1)波形产生和切换。正弦波、三角波和方波依次切换,采样点均为100个。

    (2)频率调节。从5Hz到2000Hz可调,步进5Hz,一共400个有效频率点。

    (3)占空比调节。从20%到83%平滑可调,使用ADC10连续采集滑动变阻输出电压实现。

    2、

    软件模块介绍

    (1)

    变量及宏定义

    #define

    SWITCH_SIG_TYPE(BIT0)

    //P1.0

    #define

    ADD_FREQ(BIT1)

    //P1.1

    #define

    SUB_FREQ(BIT2)

    //P1.2

    #define

    DAC_WR(BIT3)

    //P1.3

    #define

    ADC10_IN_PORT(BIT4)

    //P1.4

    #define

    P1_IN_PORTS

    ~(SWITCH_SIG_TYPE

    +

    ADD_FREQ

    +

    SUB_FREQ

    +

    ADC10_IN_PORT)

    #define

    P1_OUT_PORTSDAC_WR

    //

    3:DAC

    WR

    #define

    P1_INTERRUPT

    (SWITCH_SIG_TYPE

    +

    ADD_FREQ

    +

    SUB_FREQ)

    #define

    P2_OUT_PORTS

    (0xff)

    //

    DAC

    data

    in

    #define

    TOTAL_SAMPLING_POINTS100

    #define

    MAX_FREQ_STEPS400

    #define

    ENABLE_WR_PORTP1OUT

    //当前的波形,0表示正弦波,1是三角波,2是方波

    inttccr0_now;

    //表示当前的计数初值

    uintccr0_idx;

    //表示当前计数初值在表中的索引号

    ucharpoint_now;

    //表示现在采用点的索引值

    intduty_circle;

    //表示当前的方波高电平的点数,用于表示占空比。

    const

    long

    tccr0_table[MAX_FREQ_STEPS]={32000,.,78,75

    };

    //5-2000Hz每隔5Hz频率对应的计数器初值表,一个400个频点。

    const

    uchar

    sin_data[TOTAL_SAMPLING_POINTS]={.};

    //正弦值表,100点。

    const

    uchar

    tria_data[TOTAL_SAMPLING_POINTS]={.};

    //三角波值表,100点。

    (2)

    基本时钟系统

    MSP430x2xx家族的单片机的基本时钟系统模块如下图所示:

    MSP430有四个时钟源:LFXT1CLK、XT2CLK、DCOCLK和VLOVLK,系统时钟使用BCSCTL1寄存器设置。下面的初始化代码将系统的时钟时钟源设置为16MHz,DCO的频率设置为16MHz。

    void

    init_DCO(){

    BCSCTL1

    =

    CALBC1_16MHZ;

    DCOCTL

    =

    CALDCO_16MHZ;

    }

    上述的每一个时钟源都可以驱动时钟信号电路产生周期时钟信号,一共有三种独立的时钟信号,分别是MCLK、SMCLK和ACLK,其时钟源可以任意指定。这些时钟由寄存器BCSCTL2设置。

    BCSCTL2

    =

    SELM_1

    +

    DIVM_0;

    //

    SELMx位置SELM_1,选择MCLK的时钟源为DCOCLK,DIVM_0分频比为1

    BCSCTL2

    //

    SELS位为0表示将SMCLK的时钟源设置为DCOCLK

    (3)

    定时器A

    定时器A是一个16位的计时器,有三种计数模式,可配置任意时钟源驱动,多种capture/compares模式和寄存器。

    定时器A的工作模式如下表所示

    MCx

    模式

    工作方式

    00

    Stop

    停止计时

    01

    Up

    mode

    从0到TACCR0循环计数

    10

    Continous

    mode

    从0到0FFFFH循环计数

    11

    Up/down

    mode

    从0计时到TACCR0再回到0循环

    定时器的计数模式和时钟源的选择由寄存器TACTL设置。

    定时器的中断的产生主要依赖capture/compare寄存器的设置。MSP430x2xx家族一共有三套独立的capture/compare寄存器,可以独立产生中断。

    本程序使用的是连续计数模式,计数和中断产生方式如下图所示。本程序只是用了capture/compare寄存器TACCR0和TACTL0产生中断。

    void

    init_timer_A0(void){

    TACTL

    |=

    TASSEL_2

    +

    MC_2;

    //

    TASSELx置TASSEL_2选择SMCLK作为时钟源,

    //

    MC_2设置技术模式为连续模式

    TACCR0

    =

    tccr0_now;//设置捕获/比较寄存器0的初值

    TACCTL0

    |=

    CCIE;//

    捕获/比较寄存器0的中断使能

    }

    (4)

    单片机ADC10

    MSP430的ADC是一个十位的模数转换模块,转换出的数字范围为0~1023。转换值的计算公式为:

    ADC10一共有两大类工作方式,第一种是直接转换方式,该模式主要的特点是转换后的数据直接存放在ADC10MEM寄存器中。第二种是数据传输方式,主要特点是会将数据自动存放在内存中用户定义好数组中。

    在直接转换方式中又有四种模式:

    CONSEGx

    模式

    工作方式

    00

    单通道单次转换

    一个通道输入,只转换一次,下一次转换的触发需要用户手动设置。

    01

    多通道顺序转换

    多通道输入,每个通道依次转换一次,下一次转换的触发需要用户手动设置。

    10

    单通道循环转换

    一个通道输入,下一次转换的触发自动触发。

    11

    多通道顺序循环

    多个通道输入,每个通道依次转换,下一次转换自动触发。

    ADC10的中断可选择在数据在ADC10MEM里准备好后触发。

    本程序使用的是单通道单次转换,并且不设置ADC10中断,而是在主函数的while(1)循环中手动处理采集数据的时序。之所以不采用中断模式是因为在MSP430中默认不能中断嵌套,当ADC10中断进入时,定时器中断就无法进入,从而影响定时器的精度,另外如果开启中断嵌套,那么中断处理将会更复杂,因此权衡考虑后选择该工作方式。这种方式下ADC10在主程序中执行转换和处理,而定时器中断可以按时进入,保证了定时器的精度。转换的流程如下图所示:

    ADC10的参考电平可以有多种选择,如下所示:

    本程序选择的是第二种参考电平设置。其中VREF+是ADC10内置的参考电平,将ADC10CTL0寄存器的REF2_5V位置1,表示该电平为2.5V。Vss是MSP430的20号引脚,将其接地,表示最低参考电平为0。因此转换值的计算公式为NADC=1023*Vin/2.5。

    初始化函数如下:

    void

    init_ADC10(void){

    ADC10CTL1

    |=

    INCH_4;

    //

    A4通道,P1.4输入模拟值。

    ADC10CTL1

    |=

    SHS_0;

    //

    Sample-and-hold

    source

    select

    ADC10SC

    ADC10CTL1

    |=

    ADC10SSEL_3;//

    时钟源为SMCLK

    ADC10CTL1

    //

    数据存储格式,表示使用ADC10MEM的低十位存储数据

    ADC10CTL1

    |=

    CONSEQ_0;//

    单通道单转换模式

    ADC10AE0

    =

    ADC10_IN_PORT;//P1.4输入模拟值

    ADC10CTL0

    //

    屏蔽中断

    ADC10CTL0

    |=

    SREF_1

    +

    ADC10SHT_0

    +

    REF2_5V

    +

    REFON;

    //

    VR+

    =

    2.5V,VR-

    =

    Vss

    =

    0

    //REFON开启内部参考电平

    ADC10CTL0

    //

    REFOUT位置1会将参考电压输出到P1.3和P1.4上,不需要因此置0.

    ADC10CTL0

    |=

    ADC10ON;//打开ADC10

    }

    主程序循环如下,采集数据到占空比的转换算法为右移4位再加20:

    while(1){

    ADC10CTL0

    //关闭采样使能

    while(ADC10CTL1

    //检测是否忙

    ADC10CTL0

    |=

    ENC

    +

    ADC10SC;//打开采样使能,开始转换

    while(ADC10CTL1

    //检测是否忙

    int

    adc_data

    =

    ADC10MEM;//读取数据

    duty_circle

    =(adc_data

    >>4)+20;

    //占空比限制在

    20(20%)~83(83%)之间

    //采集到的数据是0~1023

    //右移四位就是0~63

    //加20就是20~83

    //总采样点数是100点

    //占空比就是20/100=20%

    ~

    83/100=83%

    之间

    }

    (5)

    端口I/O与中断

    MSP430有P1、P2一共十六个通用IO口。其功能分配如下

    端口

    功能

    I/O方向

    P2.0

    P2.7

    输出8位数据到DAC

    输出

    P1.0

    按键中断,切换波形

    输入

    P1.1

    按键中断,增加频率

    输入

    P1.2

    按键中断,减小频率

    输入

    P1.3

    DAC的WR信号

    输出

    P1.4

    ADC10的模拟输入口

    输入

    主要初始化端口方向、功能以及中断,程序如下:

    void

    init_port_io(void){

    P2DIR=

    P2_OUT_PORTS;//

    设置输出端口P2.0~P2.7

    P2REN=0x00;//

    不使用上/下拉电阻

    P2SEL=0x00;//

    端口的功能为IO

    P2SEL2=0x00;//

    端口的功能为IO

    P1DIR//

    P1.0

    P1.1

    p1.2

    p1.4输入

    P1DIR|=

    P1_OUT_PORTS;//

    P1.3输出给DAC

    WR

    P1REN=0x00;

    P1SEL=0x00;

    P1SEL2=0x00;

    }

    void

    init_port_interrupt(void){

    P1IES|=

    P1_INTERRUPT;//相应位置1表示下降沿触发

    P1IE|=

    P1_INTERRUPT;//输入位中断使能

    P1IFG//清除标志位

    }

    五、功能实现

    1、

    波形输出及切换

    波形的输出主要靠定时器周期性触发中断,然后将波形值数组中的值依次循环写到P2上。流程图如下:

    波形切换靠按键中断以及改变波形类型标志变量curr_signal_type实现,流程图如下:

    获得如下结果:

    2、

    频率调节

    波形的频率调节通过改变计时器初值TACCR0来实现,所需的频率计算公式为

    波频率

    =

    CPU时钟频率/(采样点数*定时器初值)

    流程图如下:

    为了能够使得频率可达到2000Hz,需要适当减小采样点数。在没有实现最大2000Hz时,采样电视为200点,将点数减少到100点,并适当减小DAC的WR信号的宽度,以达到在更高速的情况下能够将数据写入DAC。

    结果如下。

    产生5Hz的正弦波:

    产生2.145KHz的正弦波

    3、

    占空比调节

    占空比的调节主要靠ADC10采集电位器输入电压并按照一定的算法算出高电平持续的点数duty_circle来表示占空比。

    采集转换的流程图如下

    相应的产生方波的逻辑为:

    20%占空比:

    80%占空比:

    六、问题及解决方案

    1、

    三角波和方波没有波形

    最开始三角波的每一个采样点的值是由程序计算出来的,程序如下所示:

    case

    1:

    //triangle

    if

    (point_now

    #define

    SWITCH_SIG_TYPE(BIT0)

    //P1.0

    #define

    ADD_FREQ(BIT1)

    //P1.1

    #define

    SUB_FREQ(BIT2)

    //P1.2

    #define

    DAC_WR(BIT3)

    //P1.3

    #define

    ADC10_IN_PORT(BIT4)

    //P1.4

    #define

    P1_IN_PORTS

    ~(SWITCH_SIG_TYPE

    +

    ADD_FREQ

    +

    SUB_FREQ

    +

    ADC10_IN_PORT)

    #define

    P1_OUT_PORTSDAC_WR

    //

    3:DAC

    WR

    #define

    P1_INTERRUPT

    (SWITCH_SIG_TYPE

    +

    ADD_FREQ

    +

    SUB_FREQ)

    #define

    P2_OUT_PORTS

    (0xff)

    //

    DAC

    data

    in

    #define

    TOTAL_SAMPLING_POINTS100

    #define

    MAX_FREQ_STEPS400

    #define

    ENABLE_WR_PORTP1OUT

    inttccr0_now;

    uintccr0_idx;

    ucharpoint_now;

    intpush_key;

    intduty_circle;

    const

    long

    tccr0_table[MAX_FREQ_STEPS]={

    32000,16000,10666,8000,6400,5333,4571,4000,3555,3200,2909,2666,2461,2285,2133,2000,1882,1777,1684,1600,1523,1454,1391,1333,1280,1230,1185,1142,1103,1066,1032,1000,969,941,914,888,864,842,820,800,780,761,744,727,711,695,680,666,653,640,627,615,603,592,581,571,561,551,542,533,524,516,507,500,492,484,477,470,463,457,450,444,438,432,426,421,415,410,405,400,395,390,385,380,376,372,367,363,359,355,351,347,344,340,336,333,329,326,323,320,316,313,310,307,304,301,299,296,293,290,288,285,283,280,278,275,273,271,268,266,264,262,260,258,256,253,251,250,248,246,244,242,240,238,237,235,233,231,230,228,226,225,223,222,220,219,217,216,214,213,211,210,209,207,206,205,203,202,201,200,198,197,196,195,193,192,191,190,189,188,187,186,184,183,182,181,180,179,178,177,176,175,174,173,172,172,171,170,169,168,167,166,165,164,164,163,162,161,160,160,159,158,157,156,156,155,154,153,153,152,151,150,150,149,148,148,147,146,146,145,144,144,143,142,142,141,140,140,139,139,138,137,137,136,136,135,135,134,133,133,132,132,131,131,130,130,129,129,128,128,127,126,126,125,125,125,124,124,123,123,122,122,121,121,120,120,119,119,118,118,118,117,117,116,116,115,115,115,114,114,113,113,113,112,112,111,111,111,110,110,109,109,109,108,108,108,107,107,107,106,106,105,105,105,104,104,104,103,103,103,102,102,102,101,101,101,100,100,100,100,99,99,99,98,98,98,97,97,97,96,96,96,96,95,95,95,94,94,94,94,93,93,93,93,92,92,92,91,91,91,91,90,90,90,90,89,89,89,89,88,88,88,88,87,87,87,87,86,86,86,86,86,85,85,85,85,84,84,84,84,83,83,83,83,83,82,82,82,82,82,81,81,81,81,81,80,80,80,78,75};

    //

    cpu_freq

    //

    ccr0

    =

    -----------------------------------

    //

    sig_freq

    total_sampling_points

    const

    uchar

    sin_data[TOTAL_SAMPLING_POINTS]={127,135,143,151,159,167,174,182,189,196,203,209,215,221,226,231,235,239,243,246,249,251,253,254,254,254,254,253,252,250,247,245,241,237,233,228,223,218,212,206,199,192,185,178,171,163,155,147,139,131,123,115,107,99,91,83,76,69,62,55,48,42,36,31,26,21,17,13,9,7,4,2,1,0,0,0,0,1,3,5,8,11,15,19,23,28,33,39,45,51,58,65,72,80,87,95,103,111,119,127};

    const

    uchar

    tria_data[TOTAL_SAMPLING_POINTS]={0,5,10,15,20,26,31,36,41,46,52,57,62,67,72,78,83,88,93,98,104,109,114,119,124,130,135,140,145,150,156,161,166,171,176,182,187,192,197,202,208,213,218,223,228,234,239,244,249,255,255,249,244,239,234,228,223,218,213,208,202,197,192,187,182,176,171,166,161,156,150,145,140,135,130,124,119,114,109,104,98,93,88,83,78,72,67,62,57,52,46,41,36,31,26,20,15,10,5,0};

    #pragma

    vector

    =

    TIMER0_A0_VECTOR

    __interrupt

    void

    timer_A0(void){

    if(point_now

    >=

    TOTAL_SAMPLING_POINTS){

    point_now

    =0;

    }

    switch(curr_signal_type){

    case0:

    //

    sin;

    write_dac(sin_data[point_now]);

    break;

    case1:

    //

    triangle

    write_dac(tria_data[point_now]);

    break;

    case2:

    //

    box

    if(point_now

    =3){

    curr_signal_type

    =0;

    }

    }elseif(push_key

    if(ccr0_idx

    >=

    MAX_FREQ_STEPS){

    ccr0_idx

    =0;

    }

    tccr0_now

    =

    tccr0_table[ccr0_idx];

    }elseif(push_key

    if(ccr0_idx

    >=

    MAX_FREQ_STEPS){

    ccr0_idx

    =

    MAX_FREQ_STEPS

    -1;

    }

    tccr0_now

    =

    tccr0_table[ccr0_idx];

    }

    P1IFG

    //清除标志位

    }

    void

    init_vars(){

    curr_signal_type

    =0;

    point_now

    =0;

    ccr0_idx

    =

    MAX_FREQ_STEPS

    /2-1;//初始

    1kHz

    tccr0_now

    =

    tccr0_table[ccr0_idx];

    duty_circle

    =

    TOTAL_SAMPLING_POINTS

    /2;//初始50%

    占空比

    }

    void

    init_DCO(){

    BCSCTL1=

    CALBC1_16MHZ;

    DCOCTL=

    CALDCO_16MHZ;

    BCSCTL2=

    SELM_1

    +

    DIVM_0;

    //

    select

    DCO

    as

    the

    source

    of

    MCLK

    BCSCTL2

    //

    select

    DCO

    as

    the

    source

    of

    SMCLK

    }

    void

    init_timer_A0(void){

    TACTL|=

    TASSEL_2

    +

    MC_2;//

    SMCLK

    source

    and

    Mode

    continous

    TACCR0=

    tccr0_now;

    TACCTL0

    |=

    CCIE;//

    interrupt

    enable

    _EINT();

    }

    void

    init_port_io(void){

    P2DIR=

    P2_OUT_PORTS;//

    P2

    11111111b

    all

    out

    P2REN=0x00;//

    disable

    pull

    up/down

    resistor

    P2SEL=0x00;//

    io

    function

    is

    selected

    P2SEL2

    =0x00;

    P1DIR

    //

    P1.0

    P1.1

    p1.2

    p1.4

    in

    P1DIR

    |=

    P1_OUT_PORTS;//

    P1.3

    for

    DAC

    WR

    P1REN=0x00;

    P1SEL=0x00;

    P1SEL2

    =0x00;

    }

    void

    init_port_interrupt(void){

    P1IES|=P1_INTERRUPT;//置1,下降沿触发

    P1IE|=P1_INTERRUPT;//中断使能

    P1IFG//清除标志位

    }

    void

    init_ADC10(void){

    ADC10CTL1

    |=

    INCH_4;//

    A4

    channel

    for

    convertion,P1.4

    in

    ADC10CTL1

    |=

    SHS_0;

    //

    Sample-and-hold

    source

    select

    ADC10SC

    ADC10CTL1

    |=

    ADC10SSEL_3;//

    SMCLK

    16M

    ADC10CTL1

    //

    straght

    binary

    format

    ADC10CTL1

    |=

    CONSEQ_0;//

    Single

    channel

    single

    convertion

    ADC10AE0=

    ADC10_IN_PORT;//

    P1.4

    in

    ADC10CTL0

    //

    disable

    interrupt

    ADC10CTL0

    |=

    SREF_1

    +

    ADC10SHT_0

    +

    REF2_5V

    +

    REFON;

    //

    V+

    =

    2.5V,V-

    =

    Vss

    =

    0

    ADC10CTL0

    //

    diasable

    refout

    to

    p1.3

    p1.4

    ADC10CTL0

    |=

    ADC10ON;//

    enable

    adc

    }

    void

    main(void){

    WDTCTL

    =

    WDTPW

    |

    WDTHOLD;//

    Stop

    watchdog

    timer

    init_vars();

    init_port_io();

    init_port_interrupt();

    init_DCO();

    init_timer_A0();

    init_ADC10();

    _bis_SR_register(GIE);//全局中断使能

    while(1){

    ADC10CTL0

    //关闭采样使能

    while(ADC10CTL1

    //检测是否忙

    ADC10CTL0

    |=

    ENC

    +

    ADC10SC;//打开采样使能,开始转换

    while(ADC10CTL1

    //检测是否忙

    int

    adc_data=

    ADC10MEM;//读取数据

    duty_circle=(adc_data

    >>4)+20;

    //占空比限制在

    20(20%)~83(83%)之间

    //采集到的数据是0~1023

    //右移四位就是0~63

    //加20就是20~83

    //总点数是100点

    //占空比就是20/100=20%

    ~

    83/100=83%

    之间

    }

    }

    28

    /

    29

    篇3:外文翻译---基于DDS参数可调谐波信号发生器的研究

    外文翻译---基于DDS参数可调谐波信号发生器的研究 本文关键词:可调,外文,谐波,翻译,参数

    外文翻译---基于DDS参数可调谐波信号发生器的研究 本文简介:附录AResearchofParameterAdjustableHarmonicSignalGeneratorBasedonDDSLIWeiCollegeofComputerandInformationEngineeringHohaiUniversityChangzhou,213022,China[

    外文翻译---基于DDS参数可调谐波信号发生器的研究 本文内容:

    附录A

    Research

    of

    Parameter

    Adjustable

    Harmonic

    Signal

    Generator

    Based

    on

    DDS

    LI

    Wei

    College

    of

    Computer

    and

    Information

    Engineering

    Hohai

    University

    Changzhou,213022,China

    [email protected]

    ZHANG

    Jinbo

    College

    of

    Computer

    and

    Information

    Engineering

    Hohai

    University

    Changzhou,213022,China

    [email protected]

    Abstract

    Harmonic

    signal

    generator

    whose

    frequency,phase

    and

    harmonic

    proportion

    are

    adjustable

    is

    designed

    for

    the

    detecting

    equipment

    of

    power

    system.

    The

    principle

    of

    DDS

    and

    the

    design

    requirement

    are

    introduced.

    Then

    the

    algorithm

    of

    ROM

    compression

    based

    on

    the

    symmetry

    of

    sine

    wave

    is

    expounded.

    Finally,using

    Altera

    FPGA,the

    detail

    design

    of

    the

    whole

    system

    is

    presented

    and

    test

    waveforms

    are

    given.

    Test

    results

    indicate

    that

    the

    system

    fulfils

    the

    design

    requirements.

    1.

    Introduction

    An

    ideal

    power

    system

    supplies

    power

    with

    sine

    wave,but

    the

    practical

    waveform

    of

    power

    supply

    often

    has

    many

    harmonic

    components.

    The

    basic

    reason

    of

    harmonic

    is

    that

    the

    power

    system

    supplies

    power

    to

    the

    electrical

    equipment

    with

    nonlinear

    characteristic.

    These

    nonlinear

    loads

    feed

    higher

    harmonic

    back

    to

    the

    power

    supply,and

    make

    the

    waveform

    of

    current

    and

    voltage

    in

    power

    system

    produce

    serious

    distortion.

    In

    the

    detection

    field

    of

    power

    system,standard

    signal

    generators

    which

    can

    simulate

    the

    power

    harmonic

    are

    highly

    needed

    to

    calibrate

    the

    power

    detecting

    equipment,such

    as

    phase

    detector,PD

    detector,and

    so

    on.

    So

    the

    research

    of

    parameter

    adjustable

    harmonic

    signal

    generator

    provides

    the

    exact

    basis

    for

    the

    stable

    operation

    of

    power

    detecting

    equipment,and

    has

    great

    economic

    benefit

    and

    social

    value.

    2.

    Principle

    of

    direct

    digital

    synthesis

    Direct

    digital

    synthesis

    (DDS)

    is

    a

    new

    frequency

    synthesis

    technology

    which

    directly

    synthesizes

    waveform

    on

    the

    basis

    of

    phase.

    Using

    the

    relationship

    between

    phase

    and

    amplitude,the

    phase

    of

    waveform

    is

    segmented

    and

    assigned

    relevant

    addresses.

    In

    each

    clock

    period,these

    addresses

    are

    extracted

    and

    the

    relevant

    amplitudes

    are

    sampled.

    The

    envelope

    of

    these

    sampled

    amplitudes

    is

    the

    expected

    waveform.

    If

    the

    clock

    frequency

    is

    constant,the

    frequency

    of

    output

    signal

    is

    adjustable

    with

    different

    extracted

    steps

    of

    addresses.

    DDS

    is

    composed

    of

    phase

    accumulator,ROM

    table,DAC

    and

    LPF.

    In

    each

    clock

    period,the

    output

    of

    phase

    accumulator

    is

    accumulated

    with

    frequency

    control

    word,and

    high

    L-bit

    of

    the

    output

    are

    used

    as

    address

    to

    query

    the

    ROM

    table.

    In

    the

    ROM,these

    addresses

    are

    converted

    to

    the

    sampled

    amplitudes

    of

    the

    expected

    waveform.

    Then

    DAC

    converts

    the

    sampled

    amplitudes

    to

    ladder

    wave.

    In

    the

    LPF,the

    ladder

    wave

    is

    smoothed,and

    the

    output

    is

    the

    continuous

    analog

    waveform.

    Suppose

    that

    the

    clock

    frequency

    is

    fc,frequency

    control

    word

    is

    K,phase

    accumulator

    is

    N-bit,then

    output

    frequency

    is

    fout=(K/2N)fc,frequency

    resolution

    is

    Δfmin=fc/2N.

    According

    to

    the

    Nyquist

    Sample

    Criterion,output

    frequency

    upper

    limit

    is

    fmax<0.5fc.

    Because

    of

    the

    non-ideal

    characteristic

    of

    LPF,output

    frequency

    upper

    limit

    of

    DDS

    is

    fmax=0.4fc.

    3.

    Scheme

    design

    3.1.

    Design

    requirements

    The

    goal

    of

    the

    system

    is

    to

    design

    a

    harmonic

    signal

    generator,whose

    frequency,phase

    and

    harmonic

    proportion

    are

    adjustable.

    The

    output

    waveform

    is

    composed

    of

    fundamental

    wave,3th

    harmonic,5th

    harmonic

    and

    7th

    harmonic.

    Frequency

    resolution

    is

    1Hz.

    The

    adjustable

    range

    of

    initial

    phase

    is

    0~2π

    and

    its

    resolution

    is

    1o.

    The

    adjustable

    range

    of

    harmonic

    proportion

    is

    0~50%

    and

    its

    resolution

    is

    1%.

    According

    to

    the

    design

    requirements,system

    clock

    frequency

    is

    15MHz

    and

    phase

    accumulator

    is

    24-bit.

    In

    order

    to

    make

    the

    most

    of

    EAB,211×8

    bits

    ROM

    table

    is

    adopted.

    11-bit

    phase

    control

    word

    is

    used

    to

    meet

    the

    requirement

    of

    initial

    phase

    resolution.

    7-bit

    proportion

    control

    word

    is

    adopted

    to

    realize

    the

    setting

    of

    harmonic

    proportion.

    3.2.

    Algorithm

    of

    ROM

    compression

    As

    is

    known,phase

    truncation

    error

    is

    the

    main

    factor

    of

    output

    waveform

    distortion.

    To

    avoid

    this,the

    ROM

    size

    must

    be

    exponentially

    increased,however

    the

    EAB

    of

    FPGA

    is

    limited.

    So

    the

    algorithm

    of

    ROM

    compression

    based

    on

    the

    symmetry

    of

    sine

    wave

    is

    adopted

    in

    the

    system.

    Sine

    wave

    of

    one

    period

    is

    divided

    into

    4

    sections:

    [0~π/2]

    、[π/2~π]

    、[π~3π/2]

    、[3π/2~2π].

    Using

    the

    symmetry

    of

    sine

    wave,sampled

    amplitudes

    of

    the

    first

    section

    are

    stored

    in

    the

    ROM

    table.

    By

    address

    conversion

    and

    amplitude

    conversion,sampled

    amplitudes

    of

    one

    period

    sine

    wave

    can

    be

    generated.

    By

    this

    means,the

    ROM

    size

    is

    a

    quarter

    of

    the

    previous

    size.

    In

    the

    same

    ROM,sampling

    points

    can

    be

    increased

    by

    4

    times

    with

    this

    method.

    Sampled

    amplitudes

    of

    quarter

    wave

    are

    stored

    in

    the

    ROM

    table.

    The

    output

    address

    of

    phase

    accumulator

    is

    (L+2)-bit.

    The

    low

    L-bit

    are

    used

    to

    query

    the

    ROM

    table

    while

    the

    high

    2-bit

    are

    used

    to

    identify

    phase

    sections.

    When

    the

    highest

    bit

    is

    1,the

    output

    of

    ROM

    table

    should

    be

    symmetrically

    converted

    by

    the

    amplitude

    convertor.

    When

    the

    second

    highest

    bit

    is

    1,the

    L-bit

    address

    should

    be

    symmetrically

    converted

    by

    the

    address

    convertor.

    4.

    System

    design

    based

    on

    FPGA

    The

    system

    can

    be

    divided

    into

    two

    function

    modules:

    sine

    wave

    generation

    module

    and

    harmonic

    synthesis

    module.

    Sine

    wave

    generation

    module

    is

    the

    key

    part

    of

    the

    system.

    It

    can

    be

    divided

    into

    phase

    accumulator

    module

    and

    ROM

    compression

    module

    .

    Altera

    FPGA

    EP2C5Q208C8

    is

    adopted

    as

    the

    core

    component

    of

    the

    system.

    VHDL

    is

    used

    to

    program

    the

    whole

    system.

    Compilation

    and

    simulation

    are

    implemented

    in

    Quartus

    Ⅱ.

    4.1.

    Sine

    wave

    generation

    module

    phase

    accumulator

    module

    is

    composed

    of

    24-bit

    accumulator

    and

    11-bit

    adder.

    Under

    the

    control

    of

    system

    clock,the

    output

    of

    24-bit

    accumulator

    is

    accumulated

    with

    9-bit

    frequency

    control

    word.

    Then

    11-bit

    adder

    adds

    11-bit

    phase

    control

    word

    to

    the

    output

    of

    accumulator.

    High

    13-bit

    of

    the

    final

    result

    are

    used

    as

    address

    to

    query

    the

    ROM

    compression

    module.

    ROM

    compression

    module

    is

    composed

    of

    address

    convertor,amplitude

    convertor

    and

    ROM

    table.

    13-bit

    address

    of

    phase

    accumulator

    module

    is

    divided

    into

    three

    parts.

    The

    highest

    bit

    is

    used

    as

    trigger

    signal

    of

    the

    amplitude

    convertor.

    The

    second

    highest

    bit

    is

    used

    as

    trigger

    signal

    of

    the

    address

    convertor.

    The

    low

    11-bit

    are

    used

    to

    query

    the

    ROM

    table.

    Then

    sampled

    amplitudes

    of

    sine

    wave

    are

    generated.

    Simulation

    result

    of

    sine

    wave

    generation

    module

    is

    shown

    in

    Fig.4.

    Frequency

    control

    word

    is

    set

    as

    50

    while

    phase

    control

    word

    is

    set

    as

    180.

    When

    the

    enable

    signal

    is

    turned

    into

    low

    level,the

    first

    output

    value

    is

    the

    waveform

    data

    of

    address

    180

    in

    the

    ROM

    table.

    With

    each

    rising

    edge

    of

    system

    clock,the

    waveform

    data

    of

    address

    180,181,182,183

    are

    sent

    out.

    The

    output

    values

    are

    respectively

    76,76,77,77.

    4.2.

    Harmonic

    synthesis

    module

    Harmonic

    synthesis

    module

    implements

    the

    synthesis

    of

    fundamental

    wave,3th

    harmonic,5th

    harmonic

    and

    7th

    harmonic.

    The

    3th,5th

    and

    7th

    harmonic

    data

    are

    respectively

    multiplied

    by

    their

    proportion

    control

    words.

    Then

    the

    results

    of

    multiplication

    are

    added

    to

    the

    fundamental

    wave

    data.

    The

    realization

    of

    multiplication

    is

    the

    emphasis

    of

    the

    module.

    Because

    it

    is

    difficult

    to

    implement

    the

    multiplication

    of

    floating-point

    format

    on

    FPGA,harmonic

    proportion

    is

    divided

    into

    numerator

    and

    denominator.

    The

    numerator

    is

    defined

    as

    proportion

    control

    word

    while

    the

    denominator

    is

    100.

    Firstly,harmonic

    data

    is

    multiplied

    by

    the

    proportion

    control

    word

    in

    the

    multiplier.

    Then,the

    product

    of

    multiplier

    is

    divided

    by

    100

    in

    the

    divider.

    Finally,the

    remainder

    is

    excluded

    and

    the

    quotient

    is

    preserved.

    Using

    Altera

    IP

    tools,the

    multiplier

    and

    the

    divider

    of

    harmonic

    synthesis

    module

    are

    realized.

    Block

    diagram

    of

    harmonic

    synthesis

    module

    is

    shown.

    Simulation

    result

    of

    harmonic

    synthesis

    module

    is.

    Control

    words

    are

    set

    before

    2.0ms.

    Fundamental

    wave

    frequency

    is

    50Hz,and

    its

    initial

    phase

    is

    0o.

    The

    3th

    harmonic

    frequency

    is

    150Hz,initial

    phase

    is

    45o

    and

    proportion

    is

    50%.

    The

    5th

    harmonic

    frequency

    is

    250Hz,initial

    phase

    is

    90o

    and

    proportion

    is

    25%.

    The

    7th

    harmonic

    frequency

    is

    350Hz,initial

    phase

    is

    135o

    and

    proportion

    is

    17%.

    When

    enable

    signal

    is

    turned

    into

    low

    level,harmonic

    synthesis

    module

    begins

    to

    generate

    the

    harmonic

    synthesis

    data.

    5.

    Test

    results

    Figure

    7.

    Two-channel

    sine

    waves

    (frequency

    is

    50Hz

    and

    phase

    difference

    is

    180o)

    Figure

    8.

    Two-channel

    sine

    waves

    (frequency

    is

    50Hz

    and

    phase

    difference

    is

    120o)

    Figure

    9.

    Harmonic

    synthesis

    waveform

    After

    the

    design

    of

    the

    system,the

    whole

    function

    is

    tested.

    Fig.7

    shows

    two-channel

    sine

    waves

    whose

    frequency

    is

    50Hz

    and

    phase

    difference

    is

    180o.

    Fig.8

    shows

    two-channel

    sine

    waves

    whose

    frequency

    is

    50Hz

    and

    phase

    difference

    is

    120o.

    Fig.9

    shows

    the

    harmonic

    synthesis

    waveform,whose

    fundamental

    wave

    proportion

    is

    100%,3th

    harmonic

    proportion

    is

    25%,and

    5th

    harmonic

    proportion

    is

    10%.

    Test

    waveforms

    indicate

    that

    the

    parameter

    adjustable

    harmonic

    signal

    generator

    fulfils

    the

    design

    requirements.

    6.

    Conclusion

    In

    the

    detection

    field

    of

    power

    system,standard

    signal

    generators

    which

    can

    simulate

    the

    power

    harmonic

    are

    highly

    needed

    to

    calibrate

    the

    power

    detecting

    equipment.

    To

    solve

    this

    problem,a

    harmonic

    signal

    generator

    whose

    frequency,phase

    and

    harmonic

    proportion

    are

    adjustable

    is

    presented.

    Using

    Altera

    FPGA,the

    whole

    system

    is

    implemented.

    Test

    results

    indicate

    that

    the

    adjustment

    and

    stabilization

    precision

    of

    parameters

    meet

    the

    design

    requirements.

    This

    subject

    provides

    the

    exact

    basis

    for

    the

    stable

    operation

    of

    power

    detecting

    equipment,and

    has

    great

    economic

    benefit

    and

    social

    value.

    References

    [1]

    Li

    Xiaoming

    and

    Qu

    xiujie,“Application

    of

    DDS/FPGA

    in

    Signal

    Generator

    Systems”,Modern

    Electronics

    Technique,2006:78-79.

    [2]

    Yu

    Yong

    and

    Zheng

    Xiaolin,“Design

    and

    Implementation

    of

    Direct

    Digital

    Frequency

    Synthesis

    Sine

    Wave

    Generator

    Based

    on

    FPGA”,Journal

    of

    Electron

    Devices,2005:596-599.

    [3]

    M.A.

    Taslakow,“Direct

    Digital

    Synthesizer

    with

    improved

    spectrum

    at

    low

    frequencies”,2000

    IEEE/EIA

    International

    Frequency

    Control

    Symposium

    and

    Exhibition,2000:280-284.

    [4]

    Yang

    Li

    and

    Li

    Zhen,“Multi-wave

    shape

    Signal

    Generator

    Based

    on

    FPGA”,Radio

    Engineering,2005:46-48.

    [5]

    D.J.

    Betowski

    and

    V.

    Beiu,“Considerations

    for

    phase

    accumulator

    design

    for

    Direct

    Digital

    Frequency

    Synthesizers”,IEEE

    International

    Conference

    on

    Neural

    Networks

    and

    Signal

    Processing,2003:176-179.

    [6]

    J.

    Vankka,“Methods

    of

    mapping

    from

    phase

    to

    sine

    in

    Direct

    Digital

    Synthesis”,1996

    IEEE

    International

    Frequency

    Control

    Symposium,1996:942-950.

    [7]

    K.A.

    Essenwanger

    and

    V.S.

    Reinhardt,“Sine

    output

    DDSs

    A

    survey

    of

    the

    state

    of

    the

    art”,1998

    IEEE

    International

    Frequency

    Control

    Symposium,1998:370-376.

    附录B

    基于DDS参数可调谐波信号发生器的研究

    李炜

    学院计算机与信息工程河海大学

    常州,

    213022

    ,中国[email protected]

    张金波

    学院计算机与信息工程河海大学

    常州,

    213022

    ,中国[email protected]

    摘要

    谐波信号发生器的频率,相位和谐波比例可调的目的是为检测设备的电源系统。介绍了DDS的原理和设计要求。然后在ROM的压缩算法的基础上阐述了正弦波的对称性。最后,利用Altera的FPGA详细的设计了整个系统,并给出了测试波形。实验结果表明,该系统满足了设计要求。

    1简介

    一个理想的电力系统是正弦波供电,但实际波形电源往往有许多谐波成分。产生谐波的基本原因是电力系统供电的电气设备的非线性特性。这些非线性负载依靠高次谐波回到电源,使波形的电流和电压的电力系统产生严重的失真。在电力系统的检测领域,标准信号发生器可以模拟电力谐波非常需要标定功率检测设备,如相位检测器,局部放电检测仪,等等。因此,为参数可调谐波信号发生器的研究提供准确的依据和稳定运行的电力检测设备,并具有很大的经济利益和社会价值。

    2直接数字频率合成的原理

    直接数字合成(

    DDS

    )是一种在相位的基础上直接合成波形的新的频率合成技术,利用相位和振幅之间的关系,对相位的波形分割和分配有关的地址。在每一个时钟周期,提取这些地址和有关振幅采样。系统中这些被抽样幅度是预期的波形。如果时钟频率是恒定的,频率可调输出信号的地址可有不同提取步骤。

    直接数字频率合成器由累加器,存储器,

    DAC和低通滤波器组成。在每一个时钟周期,输出相位累加器是由频率控制字累计,高左旋位输出作为地址查询存储器。在ROM中,这些地址被转换为预期波形的抽样振幅。然后数模转换器转换采样振幅为阶梯波。在低通滤波器,平滑阶梯波,输出的是连续的模拟波形。

    假设时钟频率是fc,频率控制字为K

    ,相位累加器为N位,则输出频率fout

    =

    K/2N

    )fc,频率分辨率是Δfmin

    =

    fc/2N

    。根据奈奎斯特采样标准,输出频率上限是fmax<0.5fc

    。由于非理想特性的低通滤波器,DDS的输出频率上限的是fmax

    =

    0.4fc。

    3方案设计

    3.1设计要求

    该系统的目标是设计一个谐波信号发生器,其频率相位和谐波比例可调。输出波形是由基波,第三谐波,第五次谐波和第七次谐波构成。频率分辨率是1赫兹。可调范围的初始阶段为0~2π,其图形分辨率为1。可调范围的谐波比例为0~50%,其图形分辨率是1%。根据设计要求,系统时钟频率是15MHz,相位累加器是24位。为了产生最多的EAB,采用211×8位ROM。11位相位控制字是用来满足初始阶段的图形分辨率。7位比例控制字采用正确设定的谐波比例。

    3.2ROM的算法

    正如人们所知,相位截断误差的主要因素是输出波形畸变。为避免出现这种情况,ROM大小必须成倍增加,但EAB的FPGA是有限的。因此,该算法压缩的ROM基于系统中正弦波的对称性。正弦波一期分为4个部分:[0~π/2],[π/2~

    π],[π~3π/2],[3π/2~2π]。使用对称的正弦波,取样振幅的第一部分都存储在ROM。通过地址转换和振幅转换,一期正弦波的采样振幅可以生成。通过这一手段,ROM大小是之前大小的四分之一。在相同的ROM中应用这种方法,采样点可提高4倍。

    采样波振幅分块存储在ROM中。输出相位累加器地址是(L+2)-bit。低左旋位是用来查询表的ROM,而高2位是用来识别阶段部分。当最高位为1

    ,输出的ROM表为对称转换的幅度变换器。当第二个最高位是1

    ,L型位地址为对称转换的地址转换。

    4基于FPGA的系统设计

    该系统可分为两个功能模块:正弦波代模块和谐波合成模块。正弦波代模块是系统中关键的部分。它可分为阶段累加器模块和ROM压缩模块。Altera的FPGA

    EP2C5Q208C8是该系统的核心组成部分,VHDL语言用来设计整个系统。汇编和仿真使用Quartus

    实现。

    4.1正弦波生成模块

    相位累加器模块由24位累加器和11位加法器组成的。系统时钟所控制的是9位频率控制字与24位累加器的相加的输出。然后11位相位控制字增加了11位加法器和累加器的输出。高13位的最后结果被用作处理查询正弦数据查询ROM模块。正弦数据查询ROM模块是由地址转换,振幅转换器和ROM模块组成的。13位地址相位累加器模块分为三部分。最高位被用作触发信号的幅度变换器。第二个最高位被用作触发信号的地址转换。低11位是用来查询正弦数据查询ROM模块。然后取样振幅产生正弦波。正弦波信号发生器模块的仿真结果正确。频率控制字设置为50,而相位控制字设置为180。当时钟控制信号变成低电平时,第一个产生数值是ROM模块中地址为180时所对应的正弦波的值。系统时钟的每个上升沿产生波形数据地址所对应的180,181,182,183。其产生的数值分别为76,76,77,77。

    4.2谐波合成模块

    谐波合成模块完成的是基波,第三次谐波,第五次谐波和第七次谐波的合成。第三次,第五次和第七次谐波数据分别乘以其比例控制字。然后其相乘的结果再加上基波数据。其结果实现的是增强电路模块。因为基于FPGA很难实施多元化的浮点格式,调和比例的划分结果分为分子和分母。分子被定义为比例控制字而分母为100。首先,谐波的数据是乘以这个比例控制字的乘数。然后,这个相乘后的结果再在触发其里除以100。最后,剩下的是余数和商被保存了下来。使用Altera

    IP工具、乘法器和除法来实现器谐波合成模块。框图的谐波合成将被显示。谐波合成模块的仿真结果正确。使用2.0ms以内的控制字的话。基波的频率为50赫兹,其初始相位是0度。第三次谐波频率为150赫兹,其初始相位是45度和比例为50%。第五次谐波频率是250赫兹,其初始相位是90度和比例是25%。第七次谐波频率是350Hz,其初始相位是135度和比例是17%。当时钟控制信号转变成低电平时,谐波合成模块开始产生所合成的谐波的数据。

    5测试结果

    经过系统的设计,整体功能的测试。图7显示双通道正弦波,其频率为50赫兹和相位差是180度。图8显示双通道正弦波,其频率为50赫兹和相位差是120度。图9显示了谐波合成波形,其基波比例为100%,第三谐波的比例是25%,和第5次谐波的比例是10%。试验表明,波形参数可调谐波信号发生器满足了设计要求。

    7

    双通道正弦波(频率

    50,相位差是180o

    8

    双通道正弦波(频率

    50,相位差是120o

    图9

    谐波合成波形

    6结论

    在电力系统的检测领域,标准信号发生器模拟电力谐波非常精确的标定功率检测设备。为了解决这个问题,介绍了一种频率,相位和谐波比例可调的谐波信号发生器。利用Altera的FPGA实现了整个系统的实施。试验结果表明,调整和稳定精度的参数达到设计要求。这一主题提供了准确的依据,稳定运行的电力检测设备,具有强大的经济利益和社会价值。

    参考文献

    [

    1

    ]李晓明,曲秀杰,“DDS/FPGA在信号发生器的系统的应用”,现代电子技术,2006年:78-79

    [

    2

    ]于育,郑小琳,“基于FPGA的直接数字频率合成正弦波发生器的设计与实现”,电子器件杂志,2005年:596-599

    [

    3

    ]M.A.

    Taslakow,“改进频谱低频的直接数字频率合成器”,2000年的IEEE

    /频率控制的环境影响评估国际研讨会及展览,

    2000年:280-284

    [

    4

    ]杨力,李镇,“多波形信号发生器的FPGA实现”,无线电工程系,

    2005年:46-48

    [

    5

    ]

    D.J.

    Betowski,

    V.

    Beiu,“思考阶段累加器设计直接数字频率合成器”,IEEE国际会议的神经网络和信号处理,2003年:176-179

    [

    6

    ]

    J.

    Vankka,“以正弦波直接数字频率合成方法测绘阶段”,1996年IEEE国际频率控制专题讨论会,1996年:942-950

    [

    7

    ]

    K.A.

    Essenwanger,

    V.S.

    Reinhardt,“正弦输出统计局的调查,国家的艺术”,1998年IEEE国际频率控制专题讨论会,1998年:370-376

    • 范文大全
    • 职场知识
    • 精美散文
    • 名著
    • 讲坛
    • 诗歌
    • 礼仪知识