66kVA单相STATCOM软件详细设计说明书_第1页
66kVA单相STATCOM软件详细设计说明书_第2页
66kVA单相STATCOM软件详细设计说明书_第3页
66kVA单相STATCOM软件详细设计说明书_第4页
66kVA单相STATCOM软件详细设计说明书_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

6.6kVA单相STATCOM软件详细设计说明书编写:魏晓刚校核: 批准: 日期: 目录目录概述控制功能需求硬件资源介绍硬件资源分配软件流程框图1概述1.1编写目的本详细设计说明书的编写目的是为了说明程序系统的各个层次中的每个软件对象(包括每个模块和程序)的设计考虑,每个功能模块的具体实现等。1.2项目概况项目名称:6.6kVA单相STATCOM软件详细设计。项目背景:单相STATCOM采用电压型全桥电路拓扑,其结构图如图1。!LT1;1叮1[c二T2;—图1单相STATCOM电路结构图电路采用单极性倍频调制方式,开关频率15kHz,电压电流双环控制。电压环稳定直流侧电压,电流环跟踪指令电流。对负载电流中无功、谐波的检测采用基于傅里叶分析的方法,采用捕获电网电压上升沿来跟踪电网电压相位。其整个控制框图如图2。iusicSIN凶i+ipiL-.*LqhLoad-1U _I^^DCiusicSIN凶i+ipiL-.*LqhLoad-1U _I^^DCre^—提取无功厂谐波电流电流控制器电压控制器锁相PWM"SIN图2控制框图控制功能需求根据单相STATCOM的详细参数设计报告,其软件部分控制功能需求如下:1、 实现开机软启动。2、 各种保护功能,包括补偿电流、电网电压、直流侧电压瞬时值保护;补偿电流、电网电压有效值保护;直流侧电压平均值保护;硬件保护信号读取。3、 逐周期限流实现。4、指令电流限幅。5、 通过CAN实现与上位机通信。6、 温度开关信号读取。7、 电压环PI稳定直流侧电压。8、电流环PI跟踪指令电流变化。软件控制系统图如图3所示。图3软件控制系统图硬件资源介绍DSP2407控制平台主要用到以下几个模块:

图4DSP2407控制平台各个模块功能介绍如下:1、模拟信号调理模块:该模块主要对通过传感器采样回来的电网电压、负载电流、补偿电流、直流侧电压四路模拟信号进行调理,然后送至DSP2407的10位ADC模拟数字转换模块进行模数转换,为后续计算控制做准备。2、开关信号调理:该开关信号为75°温度开关信号,主要用来检测温开状态,执行相应的程序。3、PWM驱动放大:对DSP产生的PWM波形进行放大隔离。4、开关输出放大:对DSP输出信号进行放大,主要用于控制预充电继电器、交流接触器继电器。5、保护信号输出:对DSP产生的各种保护信号,进行放大输出至相应指示灯,指示相应的保护类型。6、CAN驱动:提供对CAN总线的差动发送和接收功能。硬件资源分配该项目所用芯片为TI公司的TMS320LF2407芯片,其硬件资源分配如下表1所示。表1DSP2407硬件资源分配表序号板上资源信号名称信号含义额定幅值允许范围传感器调理电路传递系数传递系数1AIN3Us电网电压220*1.4140〜530V264/3.5310/432AIN8Ude直流侧电压3800〜450V10/251/13AIN9IL负载电流100*1.4140~110A200/100m2/14AIN10IC补偿电流30*1.4140〜66A100/50m100/200序号板上资源信号名称信号含义引脚功能保护阀值5I0PA1IOusOV电网电压过压保护输出IO270*1.4146I0PC3IOusUV电网电压欠压保护输出IO180*1.4147I0PC4IOudcOV直流过压保护输出IO4208I0PE7IOicOI输出过流保护输出IO45*1.414序号板上资源信号名称信号含义引脚功能9IOPA3USCAP电网电压捕获基本功能10IOPE1Pro-temp温开状态检测输入IO11IOPE2Pro-hd硬件保护状态检测输入IO

12PWM1PWM1驱动脉冲1基本功能13PWM2PWM2驱动脉冲2基本功能14PWM3PWM3驱动脉冲3基本功能15PWM4PWM4驱动脉冲4基本功能16IOPC2IOK1继电器信号(交流接触器)输出IO17IOPC5IOK2继电器信号(预充电继电器)输出IO18CANTXCANTXCAN发生脚基本功能19CANRXCANRXCAN接收脚基本功能软件流程框图根据上述控制功能需求分析,该程序主要设计了以下几个功能模块:系统初始化模块变量初始化模块、启动模块、定时器中断模块、CAP捕获中断模块、CAN接收中断模块。以下对上述几个模块做详细介绍。各变量含义见程序注释与EXCELE文件“变量注释”系统初始化模块系统初始化模块主要是对系统需要用到的各功能模块使能并进行初始化配置,包括I/O口初始化、ADC采样初始化、捕获初始化、定时器Tl、T3)初始化、PWM初始化、CAN初始化。I/O初始化根据表1通过寄存器MCRx将DSP各复用引脚设置成相应的基本功能或者一般I/O功能,对于一般I/O功能,我们可通过寄存器PxDATDIR,设置其输入输出方向。ADC采样初始化使能CAP1,T2选作时基,检测上升沿级连工作模式,EVA触发源启动模数转换,预定标系数ACQPS3-PS0为4(0100),最大转换通道数4路,转换顺序为AIN3、AIN8、AIN9使能CAP1,T2选作时基,检测上升沿、、、、ADC_INT配置ADCTRL1ADC时钟预定标(TCLK二配置ADCTRL1ADC时钟预定标(TCLK二CLK/1)排序器的工作模式(级联)启动/停止模式 —转换顺序(AIN3、8、9、10配置T2(连续增计数、128分频、禁止比较)T2PR=0FFFFH—T2CNT-0使能CAP1中断5.1.3捕获初始化选择CAP1作为捕获口,捕获上升沿,选用通用定时器2作为时基5.1.4定时器(Tl、T3)初始化通过通用定时器T1来设置采样频率与PWM波频率——15kHz,定时器T1设置为连续增减计数模式,下溢中断使能并启动模数转换。定时器T3作为一个时间片,连续增计数模式,周期为2ms(初始化时周期中断禁止,后期将会使能周期中断)。5.1.5PWM初始化这里通过EVA的比较单元1、2来产生PWM1〜4,初始设置PWM1、3高有效,PWM2、4低有效,死区设置为3us。设置比较寄存器CMPR1=CMPR2=1334(初始占空比为0)设置比较方式控制寄存器

PWM2、4低有效,1、3设置比较寄存器CMPR1=CMPR2=1334(初始占空比为0)设置比较方式控制寄存器

PWM2、4低有效,1、3高

有效-单极性倍频调制

(PWM2、3低有效,1、4

高有效-双极性调制)TI下溢启动ADC图7PWM初始化图8CAN初始化5.1.6CAN初始化使能邮箱MBOXO、MBOX1、MBOX2、MBOX3,其中邮箱0、1为接收邮箱(MBOXO接收开关机指令,MBOX1接收电容投切状态),邮箱2、3配置为发送邮箱(向上位机发送电网电压有效值、补偿电流有效值(极性)、保护信号、负载电流、负载有功电流、负载无功电流)。波特率为125Kb/s,局部接收屏蔽高位寄存器。表2CAN初始化功能标识符数据MBOX0接收(接收中断)MSGID0H=xCAAAMSGID0L=x3333开关机指令MBOX1接收(接收中断)MSGID0H=xCAAAMSGID0L=x7777电容投切状态MBOX2发送(自动应答远程帧)MSGID0H=xEAAAMSGID0H=x5555MBX2A=realusMBX2B=ICrms(极性)MBX2C—握手信号MBX2D—保护信号MBOX3发送(自动应答远程帧)MSGID0H=xEAAAMSGID0H=x6666MBX3A=icrmsrealMBX3B=ilprmsrealMBX3C=ilqrmsrealMBX3D=ilqhrmsreal禁止所有可屏蔽中断5.1.7系统初始化流程图禁止所有可屏蔽中断通过SCSR1使能ADC、CAN、禁止看门狗EVA、EVB模块禁止看门狗通过控制寄存器一般I/O引脚数据方向设置定时器T1设置MCRA/B/C一般I/O引脚数据方向设置定时器T1设置图9系统初始化5.2变量初始化该模块主要是对各个变量进行初始化,为后续计算控制做准备。各个变量的含义详见程序注释。这里列出几个变量。变量CAP_CNT变量CAP_CNT(初始值300)为计数器,计算一个工频周期(50Hz)内发生的TK15kHz)中断次数(300次),并用来判断捕获正确与否。若发生捕获中断且CAP_CNT的值大于290,则可认为是实捕获。变量CNT变量CNT(初始值300)为一个工频周期内采样的次数,在程序中用作除数,用来计算直流电压平均值、采样变量内直流分量等。变量CNT_DC变量CNT_DC(初始值1200)用于计算各采样对象(us、il、ic)的直流分量,相当于时间片。每个T1下溢中断其值减一,当CNT_DC值为0时,共经历了4个工频周期(80ms)。将每个工频周期采样回来的值累加求平均,可得直流分量(一个工频周期内交流分量累加和为0)。变量FLAGS_FIRST变量FLAGS_FIRST(初始值1)为标志位,其值为0或1,用于逐周期限流。变量Sintable[]变量Sintable[]为正弦表,可用于计算负载电流有功、无功分量幅值。5.3启动模块启动模块完成对设备的启动过程。启动初始PWM禁止——Dpwm(),给继电器K2高电平——PULL_K2_UP(),串入预充电电阻给直流侧电容进行充电。2s后(count_pwm=1000时)给继电器K1高电平——PULL_K1_UP(),控制交流接触器吸合。1s后(count_k1=1500时)使能PWM Epwm(),进行PWM整流,将直流侧电压升至380V。count_pwm、count_k1用于规划时间,其值每增加1代表2ms(1000*2ms=2s)。PWMREC_OVER、FLAGS_SOFTSTAR、FLAGS_STAR_FUNC为状态标志位,其值可为0或1°PWMREC_OVER标志预充电状态,1代表预充电结束。FLAGS_STAR_FUNC为1标志STAR_FUNC(void)结束,FLAGS_SOFTSTAR为1标志进入PWM整流阶段(此时使能PWM),当直流侧电压为380V时,设其值为0,标志PWM整流结束。CLEAR_PI=1标志此时初始化PI环相关变量,为后续PI控制(升压、跟踪电流)做准备。其流程图如下图所示。

图10启动流程图5.4定时器下溢中断定时器下溢中断在此起着十分重要的作用,完成许多重要功能。包括数据采样、瞬时值保护、逐周期限流、滑窗迭代计算、负载无功有功幅值计算、指令电流计算、电流环PI、PWM生成等。电压电流

瞬时值保护逐周期限流根据电容状态计算

指令无功电流确定电流极性..补偿Nilqh=O5:计算us*us、ic*ic、 ilsin、|ilcos——限定指令无功电流补偿电流换算

成实,际值滑窗迭代求电网电压

补偿电流平方累加和

直流电压累加和计算指令电流ilqh电压电流

瞬时值保护逐周期限流根据电容状态计算

指令无功电流确定电流极性..补偿Nilqh=O5:计算us*us、ic*ic、 ilsin、|ilcos——限定指令无功电流补偿电流换算

成实,际值滑窗迭代求电网电压

补偿电流平方累加和

直流电压累加和计算指令电流ilqh(负载无功+谐波)电流环PI电流环输出限幅滑窗迭代求ilsin、ilcos累加禾口—滑窗迭代计算ilqh平方累加和—改变比较寄存器幅值负载电流有功无功幅值计算—负载电流有功无功瞬时值峰值电流限幅温度保护电流减半返回图11定时器下溢中断5.5CAP捕获中断该模块主要是对电网电压相位进行捕获。在该中断中主要完成了以下几个功能:1、判断是否是实捕获;2、实捕获则正弦表指针指向正弦表表首,捕获电网电压相位;3、 直流侧电压软起,其基准UDCref从584(311V)加至714(380V)(每个捕获中断其值加1);4、 电流峰值限幅;5、 硬件保护检测。捕获中断仝:.实捕获结束正弦表指针

指向表首不控整流结束::'PI相关变量初始化

(仅在第一次)图13CAN接收中断使能PWM(仅在第一次)N捕获中断仝:.实捕获结束正弦表指针

指向表首不控整流结束::'PI相关变量初始化

(仅在第一次)图13CAN接收中断使能PWM(仅在第一次)N 时间计数器+1禁止PW「MI电压基准+1

(直到目标值)不控整流结束有效值、平均值保护(封驱动、断继电器、置标志位)—电压环PI

将比例、积分换成累加和形式电流峰值限幅电流峰值限幅检测硬件保护

并置相应标志位有效值计算平均值计算电压环输出限幅电压环输出作为电流环给定的一部分返回检测硬件保护

并置相应标志位有效值计算平均值计算电压环输出限幅电压环输出作为电流环给定的一部分返回图12捕获中断图14图12捕获中断5.6CAN接收中断CAN接收中断,接收上位机发来的信号,邮箱MBOX0接收上位机发来的开关机指令,邮箱MBOX1接收由上位机发来的电容投切状态,以调整指令电流大小。5.7T3周期中断T3周期中断完成以下几个功能:1、 每个周期为2ms,可用作时间片基准(如预充电延时2s、交流接触器延时Is);2、 电网电压、补偿电流有效值计算,直流侧电压平均值计算;3、 电网电压、补偿电流有效值保护,直流侧电压平均值保护;4、 电压外环PI计算。5.8电流峰值限幅主要完成对指令电流限幅,当指令电流(负载无功加谐波电流)峰值大于最大允许值时需要对电流峰值进行限幅,防止电流超出设备承受范围。本设计采用比例法对电流进行限幅,i*当电流i大于最大允许值i*时,对其进彳丁限幅i=k*i,其中k=一(kW1),i为电流峰newimm值。通过上述方法可以将电流成比例的减小,并保证限幅后的电流峰值为允许最大值,实现最大化补偿。其整个原理如图所示。T1周期内:在t0~t1阶段,i<i*,inew=i;在t1~t2阶段,i>i*,k1=i*/i,inew=iXk1=iX(i*/i)=i*,t2时刻找出最大值im1。在t2~t3阶段,k2=i*/im1,inew=iXk2。在T1周期内,找出最大点im1,并求得k2=i*/im1,可作为下个周期地参考。T2周期内:在t3~t5阶段,i<im1,inew=i^k2,并在t5时刻i=i*。在t5~t6阶段,i>iml,k3=i*/i,inew=iXk3,t6时刻找出比im1大的点im2,用于计算k值。在t6~t7阶段,k4=i*/im2,inew=iXk4.T3周期内:在t7~t8阶段,i<im2,此时表明电流已开始下降,但最大点im3任然大于i*,inew=iXk4。得到的inew最大点应该小于i*。T4周期内:从上一个周期可知,电流已经开始下降,这时可求出最合适的k值:k5=i*/im3,以保

证电流不会过多地减小(T3周期得到的电流已过多减小)。在t8~t9阶段,iWim3,不用重新计算k值,inew=Mk5,可以保证inew最大值为i*。下图为使用DSP实现上述功能。在一个工频周期(50Hz)内会产生300次T1下溢中断(15kHz),在T1下溢中断内对负载电流采样,并求得初始指令电流。通过比较判断找出一个工频周期内最大峰值,并计算出k值。在CAP中断内可判断过去两个周期电流峰值变化情况(增大或减小),并修正K值。.i_maxTi」max|yMAINLOOP=i*/im1k=i*/i*/im2‘i*/im3im30T1T2T3T4*tonFLAGS_COUNT^=1Y—k=i*/i—kmm22t43t5t6iii_mcxN」maxi_maxTT2CAP中断储存上一个周期电流峰值rri•i_maxiL=i_maxi=imii_maxT=IMAXi_maxTL>=i_max'i-mazim.i_maxTi」max|yMAINLOOP=i*/im1k=i*/i*/im2‘i*/im3im30T1T2T3T4*tonFLAGS_COUNT^=1Y—k=i*/i—kmm22t43t5t6iii_mcxN」maxi_maxTT2CAP中断储存上一个周期电流峰值rri•i_maxiL=i_maxi=imii_maxT=IMAXi_maxTL>=i_max'i-mazim1imaxN=im1 flagscount主=0i_maxT/imaxT1下溢中断(300次)T2找出该周期中电流峰im2i_maxT=im2i_maxN=im2im2>imi i_rnax=im2k=IMAX/imaximaxT——.imaxNimaxCAP中断储存上一个周期电流峰值rri•i_maxiL=i_maxi=im2i_maxT=IMAXi_maxTL>=i_max、^-_max~=m2imaxN=im2 flagscountk=oT3.i_maxT'_max下溢中断(300次)T4找出该周期中流峰im3i_maxT=im下溢中断(300次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论