光伏并网发电模拟装置设计论文.docx
- 文档编号:24643135
- 上传时间:2023-05-29
- 格式:DOCX
- 页数:52
- 大小:958.20KB
光伏并网发电模拟装置设计论文.docx
《光伏并网发电模拟装置设计论文.docx》由会员分享,可在线阅读,更多相关《光伏并网发电模拟装置设计论文.docx(52页珍藏版)》请在冰豆网上搜索。
光伏并网发电模拟装置设计论文
中文摘要:
本系统是一个光伏并网发电模拟装置,使用FPGA生成SPWM波,以MSP430F16单片机为控制核心,实现自动锁频,自动锁相,频率跟踪,相位跟踪、最大功率点跟踪(MPPT)功能。
可调的频率范围为45Hz-55Hz,误差小于1%,相位控制在5°以内。
后级的功率放到模块使用的是D类功率放大的H桥
关键词:
SPWM波,FPGA,MPPT
第一章系统方案
本系统基于低功耗MSP430单片机和可编程片上系统的嵌入式系统设计技术,实现了数字化,完成了频率在45-55Hz的跟踪控制和最大功率点(MPPT)的跟踪,以提高系统效率和精度。
系统主要由SPWM波生成模块、DC-AC变换电路、相位频率控制电路、测量模块、欠压过流保护电路和电源模块组成,下面分别论证这几个模块的选择。
1.1SPWM波产生的比较与选择
方案一:
采用CPU+通用硬件电路生成SPWM波。
这种方案是利用CPU通过软件生成单纯的三角波(载波)和正弦波,再经过硬件电路生产SPWM波,但是电路的可靠性以及控制精度都比较低。
方案二:
采用CPU生成SPWM波。
这实际就是直接采用软件生成SPWM波,在数字系统中,采用软件生成SPWM波,一般均由微处理器通过定时中断服务程序产生SPWM脉冲,因每个载波周期必须进行中断处理,故对载波频率有限定要求,从而限制了载波频率的进一步提高,同时加重了CPU的工作任务。
方案三:
采用CPU+FPGA生成SPWM波。
为了简化硬件电路,提高控制精度,采用Altera公司的FPGA芯片EP1C3T144C8实现SPWM波形的产生,而CPU只需通过改变正弦波频率、三角波频率及相应的载波比,实现对SPWM脉宽的控制,从而大大减轻了CPU的负担。
方案四:
由NE555产生三角波,通过过零比较器(LM339)直接和参考频率进行比较产生SPWM波。
由NE555和比较器产生直接生成SPWM波电路简单,容易实现。
综合以上四种方案,选择方案三。
1.2DC-AC模块的比较与选择
方案一:
用三极管进行DC-AC变换。
通过三极管的开关状态可以实现DC-AC变换,但是转换效率达不到要求。
方案二:
用场效应管进行DC-AC变换。
脉冲信号控制场效应管使其工作在较高开关频率状态提高转换效率。
图XXXXXXXXXXX
综合以上方案,选择方案二为最优。
1.3控制模块的比较与选择
方案一:
MSP430单片机+FPGA控制系统。
单片机MSP430为核心的单片机最小系统,FPGA采用ATMELCyloneEP1C3144C8N,用FPGA进行相位差的测量,并把结果送给单片机计算出相位差的时间,通过相位控制字对FPGA的输出波形相位进行控制。
单片机对参考信号进行测频,再控制FPGA的输出频率。
方案二:
51单片机和锁相环电路(锁相环芯片HEF4046)与锁频环电路结合起来实现最大功率点,频率和相位的自动跟踪,锁相环先跟踪频率,然后进行锁相。
使用锁相环芯片电路简单容易实现,但是由于FPGA和51单片机间的电平不匹配,处理速度等问题存在。
综合考虑采用方案一。
1.4测量模块的选择
将负载电压通过取样电阻值取样到差动放大电路,经过有效值/直流转换芯片(AD637)转换成直流电平,再经A/D转换为数字量,交给控制器处理。
再通过计算求得电流(I=U/R)。
通过A/D采样来测量参考信号(uREF)和取样信号(uF)的频率。
将采样电压和电流送给单片机,通过数据处理实现功率的计算后,将控制信号送给FPGA调整三角波的个数实现MPPT的功能。
图XXXXXXXXXXX
第二章理论分析与计算
2.1MPPT的控制方法与参数计算
MPPT即电源的最大输出功率点的动态追踪由于环境的变化,电源的内阻在动态的变化,在外部的负载不变时由功率计算的公式:
P=I*E-I*I*r,所以在Rs=R时的输出功率最大,把内阻外的网络看成是一个总体,用戴维南定理就可以知道R=Ud/I,则要找到最大的功率的输出点,一般来说得调整外部的等效电阻,在负载一定的情况下,通过控制开关脉冲的宽度,从而达到电阻的改变,找到最大功率点。
2.2同频、同相的控制方法与参数计算
要达到同频同相的目的就是要把给进来的参考信号和取样回来的信号进行比较,使频率在45-55Hz范围内进行调整来实现同频,同相的目的。
1.频率的自动跟踪,通过MSP430单片机对参考信号频率的测量和对原电网频率的测量比较来控制FPGA的频率控制字k,使参考频率和取样信号uF频率相等。
FPGA合成正弦波的频率fz=k·fc/1024,fc经FPGA的内部程序分频到1kHz,那么频率的步进量为fq=fc/1024=0.9765625Hz。
2.相位的控制,通过MSP430单片机给FPGA一个使能信号,使FPGA开始测量参考信号uREF和取样信号uF的相位差,当取样信号uF出现上升沿时,判断取样信号uF的电平,为1时表示相位超前,0表示滞后。
FPGA并开始24位计数(时钟为10MHz),计数完成FPGA的一个引脚高电平反馈给单片机来读取计数值,一个上升沿读取8位数据,读取完成后在单机内计算相差时间,通过时间计算出相位差,经相位控制字控制FPGA产生与参考信号相同的相位的波。
FPGA相位控制字为8位256给相位点,相位步进为360/256=1.4。
2.3提高效率的方法
1.为了减少能耗提高效率,可以用开关管放大,通过开关管来减小功率的损耗。
2.在开关时尽量达到饱和,用电阻分压和加9V稳压管的方法。
2.4滤波参数计算
SPWM波带来的高频成分,会对整个系统带来干扰信号,所以需要滤除高频成分,从而达到系统的稳定。
要滤除高频成分,需要制作一个低通滤波器,低通(LPF)用于工作信号为低频(或直流),并且需要削弱高次谐波或频率较高的干扰和噪声等场合——整流后滤波。
滤波器对相位有一定的影响,会使相位出现偏差。
设计一个5阶的滤波器:
利用归一化元件值表可以查出,阶次为5的巴特沃斯LPF滤波器电路结构如下:
第三章电路与程序设计
3.1电路的设计
3.1.1系统总体框图
系统总体框图如图1所示:
图1系统总体框图
3.1.2DC-AC主回路与器件选择
P沟道和N沟道CMOS对管,因为要求的功率为最大50W、输出电压(uo)最大为30V,所以选择大电流的管子,以满足大功率的要求。
DC-AC电路如图2所示。
图2DC-AC电路
3.1.3保护电路
1)过流保护:
运用电流互感器检测负载电流,当负载电流大于1.5±0.2A时电压比较器翻转控制继电器断开电路电源。
2)欠压保护:
用电阻分压取一电压值,当供给电压小于25±0.5V时比较器翻转控制继电器断开电源。
图:
为过流保护电路
3.1.4MSP430核心板电路图
系统使用的是MSP430F169单片机,使用过程中位了简化设计,采用了利尔得公司的核心系统板。
电路原理图如下:
图XXXXXXXX
3.1.5功率模块的设计原理
ClassAB音频功放是纯模拟功放,和ClassB类功放一样,它通过集成对管有效的减小了
ClassA功放无谓的偏置电流带来的静态功率耗散,同时它通过集成偏置电压,有效减小了
ClassB类功放的交越失真,这样它能提供较好的效率(全功率时可接近75%)和较好的音质。
D类放大器拥有很高的效率,能提供最长的电池使用时间和最低的热损耗。
而ClassD音频功放又被称为“数字”功率放大器,这是因为它的功率放大过程是数字的。
图XXXXX
ClassD放大器通过将模拟输入信号与锯齿波比较,获得脉冲宽度调制信号,再通过数字开关将PWM信号放大,由于是数字方式放大,效率很高,同时静态功耗很低,最后通过低通滤波器将原始输入信号还原出来,这个低通滤波器可以外接LC滤波器,或者可以直接将喇叭看作一个LC滤波器来使用。
整个原理框图就是设计过程中到的一些思想,为系统后面提供功率输出级的电压转换关系,具体的设计原理图在前面有展示。
3.2程序的设计
3.2.1主程序
图XXXXXX
2、SPWM程序和相位差计算程序
图XXXXXX
SPWM产生如下图所示:
图XXXX
FPGA相位差时间如下图所示
图XXXXXXXX
第四章MSP430软件使用介绍和环境的搭建
4.1IAREmbeddedWorkbenchforMSP4303.42的使用介绍
1、找到:
开始->所有程序->IARsystem->IAREmbeddedWorkbenchforMSP430->IAREmbeddedWorkbench点开它可以看到一个界面如下:
图XXXXXXXXXXXXXX
2、选择:
createnewprojectintcurrentworkspace出现如下的界面:
图XXXXXXXXXX
单击OK输入你要保存的工程名。
3、在界面里输入代码,
4、几个重点要设置的地方
(1)、project菜单下的options选择使用的处理核,例如用的是MSP430F169的单片机选择如下:
图XXXXXXX
(2)、如果要用到调试仿真,一种用的是仿真器仿真,后面会详细介绍仿真器的使用。
这里将介绍的是软件仿真的设置
图xxxxxxxx
如果用的是在线调试技术,这里就设置为FETDebugger。
(3)、FETDebugger的设置。
(1)、选择setup选项卡,在connection中选择为TexasInstrumentUSB。
(2)、在download中选择verifydownload就可以了。
图xxxxxxxxx
使用介绍中的还一个当初使用遇到的一个问题就是很多用户都不知道怎样去下载,其实很简单,在编译通过了,选择为release发布后再编译一次就把程序写到单片机中去了。
4.2FET的搭建和安装过程
连接好硬件,打开硬件管理界面,选择搜索硬件改动。
在这里可以选择更新驱动程序,选择到放驱动程序的文件夹下。
就可以自动安装了。
第五章功能模块的介绍
5.1MSP430单片机总体概述
如下图所示的框图,介绍单片机的整体功能和系统的各中资源,具体包含的资源如下:
时钟系统(主时钟系统,辅助时钟系统)、16位的RSIC的CPU、JTAG调试口、Flash/ROM、RAM、看门狗、12通道的ADC10(10bit)、UATR接口、精确比较器comper、I2C总线、timerA、timerB等资源。
重点的是AD、timer、UART接口,下将详细介绍这些资源的应用。
图XXXXXXXXX
5.212通道的ADC10(10bit)
MSP430单片机的ADC10模块是一个10位精度的A/D转换模块,他具有高速度,通用性等特点。
大部分都内置了ADC模块.而有些不带ADC模块的片子,也可通过利用内置的模拟比较器来实现AD的转换。
在系列产品中,我们可以通过以下列表来简单地认识他们的ADC功能实现。
从以下ADC10结构图中可以看出,ADC10模块中是由以下部分组成:
(1)输入的16路模拟开关,
(2)ADC内部电压参考源,(3)ADC12内核,(4)ADC时钟源部分,(5)采集与保持/触发源部分,(6)ADC数据输出部分,(7)ADC控制寄存器等组成。
%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@í
(1)、输入的16路模拟开关%ûy=_Øõe!
ª:
_À_e«@í
16路模拟开关分别是由IC外部的8路模拟信号输入和内部4路参考电源输入及1路内部温度传感器源及AVCC-AVSS/2电压源输入。
外部8路从A0-A7输入,主要是外部测量时的模拟变量信号。
内部4路分别是VerefADC内部参考电源的输出正端,Vref-/Veref-ADC内部参考电源负端(内部/外部)。
1路AVCC-AVSS/2电压源和1路内部温度传感器源。
片内温度传感器可以用于测量芯片上的温度,可以在设计时做一些有用的控制;在实际应用时用得较多。
而其他电源参考源输入可以用作ADC10的校验之用,在设计时可作自身校准。
%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@í
(2)、ADC内部电压参考源%ûy=_Øõe!
ª:
_À_e«@í
ADC电压参考源是用于给ADC10内核作为一个基准信号之用的,这是ADC必不可少的一部分。
在ADC10模块中基准电压源可以通过软件来设置6种不同的组合。
AVCC(Vr),Vref,Veref,AVSS(Vr-),Vref-/Veref-。
%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@í
(3)、ADC10内核%ûy=_Øõe!
ª:
_À_e«@í
ADC10的模块内核是共用的,通过前端的模拟开关来分别来完成采集输入。
ADC10是一个精度为10位的ADC内核,1位非线性微分误差,1位非线性积分误差。
内核在转换时会参用到两个参考基准电压,一个是参考相对的最大输入最大值,当模拟开关输出的模拟变量大于或等于最大值时ADC内核的输出数字量为满量程,也就是0xfff;另一个则是最小值,当模拟开关输出的模拟变量大小或等于最大值时ADC内核的输出数字量为最低量程,也就是0x00。
而这两个参考电压是可以通过软件来编程设置的。
%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@í
(4)ADC时钟源部分%ûy=_Øõe!
ª:
_À_e«@í
ADC10的时钟源分有ADC12OSC,ACLK,MCLK,SMCLK。
通过编程可以选择其中之一时钟源,同时还可以适当的分频。
%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@í
(5)、采集与保持,触发源部分%ûy=_Øõe!
ª:
_À_e«@í
ADC10模块中有着较好的采集与保持电路,采用不的设置有着灵活的应用。
关于这方面的详情请参考手册上的寄存器说明,此部分我们日后再作补上。
%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@í
(6)ADC数据输出部分%ûy=_Øõe!
ª:
_À_e«@í
ADC内核在每次完成转换时都会将相应通道上的输出结果存贮到相应用通道缓冲区单元中,共有16个通道缓冲单元。
同时16个通道的缓冲单元有着相对应的控制寄存器,以实现更灵活的控制。
%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@í
ADC控制寄存器%ûy=_Øõe!
ª:
_À_e«@í
ADC12CTL0转换控制寄存器0%ûy=_Øõe!
ª:
_À_e«@í
ADC12CTL1转换控制寄存器1%ûy=_Øõe!
ª:
_À_e«@í
ADC12IE中断使能寄存器%ûy=_Øõe!
ª:
_À_e«@í
ADC12IFG中断标志寄存器%ûy=_Øõe!
ª:
_À_e«@í
ADC12IV中断向量寄存器%ûy=_Øõe!
ª:
_À_e«@í
ADC12MEM0-15存储控制寄存器0-15%ûy=_Øõe!
ª:
_À_e«@í
ADC12MCTL0-15存储控制寄存器0-15%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@%ûy=_Øõe!
ª:
_À_e«@í
图XXXXXXXXXXXXX
5.3MSP430单片机MSP430定时器:
在MSP430系列单片机中带有功能强大的定时器资源,这定时器在单片机应用系统中起到重要的作用。
利用MSP430(以下称为430)单片机的定时器可以用来实现计时,延时,信号频率测量,信号触发检测,脉冲脉宽信号测量,PWM信号发生。
另外通过软件编写可以用作串口的波特率发生器。
后面我们将用定时器A作为一个波特率发生器,来编写一个串口例程给初学者参考。
以加强初学者对定时器用。
在430的大系列产品中,不同的子系列产品定时器资源有所不同;在F11X,F11X1中是不带定时器B资源的。
430的定时器主要分为3部分模块:
看门狗定时器,定时器A,定时器B。
定时器A主要资源特点有16位定时计数器,其计数模式有4种。
多种计数时钟信号供选择。
3个可配置输入的捕获/比较功能寄存器和8种输出模式的3个可配置输出单片。
以上各块定时器资源可作多种组合使用,以实现强大的功能。
%ûy=_Øõe!
ª:
_À_e«@í
定时器资源功能说明%ûy=_Øõe!
ª:
_À_e«@í
(1)看门狗定时器(WDT):
主要用于程序在生错误时用作单片机系统复位重起的。
另外,也可作为一个基本定时器使用。
%ûy=_Øõe!
ª:
_À_e«@í
(2)定时器A:
作基本定时器使用,结合捕获/比较功能模块可实现时序控制,可编程波形信号发生输出。
可作串口波特率发生器使用。
%ûy=_Øõe!
ª:
_À_e«@í
(3)定时器B:
作基本定时器使用,与定时器A基本相同,但是功能方面有某些功能会比A增强些
图XXXXXXXXX
表XXXX
5.4UART接口:
图XXXXXXXX
在MSP430系列产品中,每一款型号都能实现串行通讯的功能,在MSP430F1X11系列中,可以用定时器A和软件编程结合实现串行通讯功能。
而在其它系列产品中都带有硬件的串行通讯模块USART;另外,MSP430F14X系列产品中还带了两个串行通讯模块。
而在MSP430F15X,F16X系列中USART0还可以实现IIC总线通讯。
在UART模块中带有UART串行异步通讯和SPI同步通讯硬件资源。
图是USART模块结构图,从下图可以看出USART模块分别由波特率部分:
波特率发生器,串行通讯接收/发送控制寄存器。
%ûy=_Øõe!
ª:
_À_e«@í
接收部分,发送部分,端口IO部分。
%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@í
⑴串行异步通讯的特点:
%ûy=_Øõe!
ª:
_À_e«@í
①异步通讯模式,包括线路空闲/地址位通信协议。
%ûy=_Øõe!
ª:
_À_e«@í
②有两个单独的移位寄存器,输入\输出移位寄存器。
③传输7位或8位数据,可采用奇偶或无校验。
%ûy=_Øõe!
ª:
_À_e«@í
④可编程实现波特率调整。
%ûy=_Øõe!
ª:
_À_e«@í
⑤分别发,收单独中断。
%ûy=_Øõe!
ª:
_À_e«@í
⑥有效地检测到起始位实现从低功耗唤醒。
%ûy=_Øõe!
ª:
_À_e«@í
⑦状态标志检测错误或者地址位。
%ûy=_Øõe!
ª:
_À_e«@í%ûy=_Øõe!
ª:
_À_e«@í
⑵串行同步通讯(SPI)的特点:
%ûy=_Øõe!
ª:
_À_e«@í
①动持3线/4线的SPI通讯。
%ûy=_Øõe!
ª:
_À_e«@í
②支持主机模式与从机模式。
%ûy=_Øõe!
ª:
_À_e«@í
③收发有单独的缓冲器,移位寄存器。
%ûy=_Øõe!
ª:
_À_e«@í
④收发有单独的中断。
%ûy=_Øõe!
ª:
_À_e«@í
⑤时钟极性和相位可编程。
%ûy=_Øõe!
ª:
_À_e«@í
⑥主机模式的时钟频率可编程。
%ûy=_Øõe!
ª:
_À_e«@第六章FPGA简介及其应用
6.1 FPGA芯片的简介
FPGA:
基于门阵列结构的器件.内部互连结构由多种长度不同的连线资源组成,每次布线的延迟时间可能不同,属统计型结构。
逻辑单元主体为静态存储器(SRAM)构成的函数发生器,即查找表。
通过查找表可以实现各种逻辑函数功能。
采用SRAM工艺。
FPGA组成
⏹可配置逻辑模块CLB(ConfigurableLogicBlock)
⏹输入/输出模块IOB(Input/OutputBlocks)
⏹互连资源ICR(InterconnectCapitalResource)
⏹静态触发器SRAM
6.2FPGA的基本特点主要有:
⑴采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。
⑵FPGA可做其它全定制或半定制ASIC电路的中试样片。
⑶FPGA内部有丰富的触发器和I/O引脚。
⑷FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
⑸FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。
可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。
用户可以根据不同的配置模式,采用不同的编程方式。
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。
掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。
FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。
当需要修改FPGA功能时,只需换一片EPROM即可。
这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。
因此,FPGA的使用非常灵活。
6.3FPGA配置模式
FPGA有多种配置模式:
并行主模式为一片FPGA加一片EPROM的方式;主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。
如何实现快速的时序收敛、降低功耗和成本、优化时钟管理并降低FPGA与PCB并行设计的复杂性等问题,一直是采用FPGA的系统设计工程师需要考虑的关键问题。
如今,随着FPGA向更高密度、更大容量、更低功耗和集成更多IP的方向发展,系统设计工程师在从这些优异性能获益的同时,不得不面对由于FPGA前所未有的性能和能力水平而带来的新的设计挑战。
例如,领先FPGA厂商Xilinx最近推出的Virtex-5系列采用65nm工艺,可提供高达33万个逻辑单元、1,200个I/O和大量硬IP块。
超大容量和密度使复杂的布线变得更加不可预测,由此带来更严重的时序收敛问题。
此外,针对不同应用而集成的更多数量的逻辑功
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 并网发电 模拟 装置 设计 论文