一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于FPGA的I-V曲线生成电路及方法与流程

2021-10-09 12:15:00 来源:中国专利 TAG:曲线 电路 生成 方法 太阳能电池

一种基于fpga的i

v曲线生成电路及方法
技术领域
1.本发明属于太阳能电池阵列模拟领域,具体涉及一种基于fpga的i

v曲线生成电路及方法。


背景技术:

2.太阳能是最具大规模开发潜力的新型清洁能源之一,太阳能利用的主要方式为太阳能光伏发电,高效利用太阳能的关键在于拥有一套高性能的光伏发电系统。由于太阳能电池板的输出特性受环境因素的影响很大,采用真实的太阳能电池板进行研究与试验是无法在全天候条件下完成的,很难开展相关研究工作。因此,研究一种能够真实反映太阳能电池板输出特性的装置代替真实太阳能电池板,成为了极具吸引力和应用价值的一项研究内容,这种装置就是太阳能电池阵列模拟器。
3.太阳能电池阵列模拟器就是利用电路来模拟太阳能电池板的输出特性,使得系统输出的i

v特性和p

v特性与特定光照、温度条件下实际太阳能电池板特性相符合,并且要能满足太阳能电池板的静态特性以及当光照或者负载发生变化时的动态特性。目前太阳能电池阵列模拟器主要有模拟式与数字式两种。
4.模拟式太阳能电池阵列模拟器,使用一种可以模拟太阳光的装置,称为太阳光照模拟器,等效作为太阳光源,用它来模拟太阳光照射,将此模拟光照射到太阳能电池样品上,获得太阳能电池的输出特性。但是这种太阳能电池阵列模拟器存在的主要缺点有:存在较大的误差,并且随时间越来越大;模拟光源的光谱与实际太阳光的光谱有较大的偏差;不同生产厂家制造的模拟光源在制作参数、工艺以及性能上有很大的差别。
5.数字式太阳能电池阵列模拟器,是以电力电子变换电路构成主电路,采用cpu、fpga等控制芯片,实时检测负载电流、电压,通过某种控制算法,实时调节与控制主电路的工作状态,使主电路输出端的电流、电压符合实际太阳能电池板的输出特性。这种模拟器克服了模拟式太阳能电池阵列模拟器的缺点,同时具有:较宽的模拟范围、能较理想的模拟环境的变化、可靠性高等特点。
6.要实现数字式太阳能电池阵列模拟器的输出特性真实精确地模拟太阳能电池板的输出特性,需要研究新的控制算法,使模拟器的输出电流与电压能够模拟太阳能电池板在某种环境条件下的输出电流与电压变化曲线,即i

v曲线。因此,需要研究新的i

v曲线生成电路及实现方法。


技术实现要素:

7.为了解决上述问题,本发明提出了一种基于fpga的i

v曲线生成电路及方法,以fpga为核心生成i

v曲线。
8.本发明的技术方案如下:
9.一种基于fpga的i

v曲线生成电路,包括电压编程d/a模块、电压嵌位模块、电流编程d/a模块、误差检测模块、功率调节模块、功率变换模块、分流器、电流监测模块、电流测量
a/d模块、电压监测模块、电压测量a/d模块、fpga、cpu系统;
10.所述电压编程d/a模块,被配置用于产生电压开路编程值;
11.所述电压嵌位模块,被配置用于根据电压开路编程值,产生电压嵌位值;
12.所述电流编程d/a模块,被配置用于产生电流编程值;
13.所述误差检测模块,被配置用于根据电流编程值和电流监测值,产生电流误差值;
14.所述功率调节模块,被配置用于根据电流误差信号,产生功率调节驱动信号;
15.所述功率变换模块,被配置用于根据功率调节驱动信号,产生输出信号;
16.所述分流器,被配置用于输出电流取样,将电流信号转换成电压信号;
17.所述电流监测模块,被配置用于将电流取样值处理成电流测量a/d转换器量程范围内的值,产生电流监测值;
18.所述电流测量a/d模块,被配置用于将电流监测值转换成数字量,送给fpga作为电流测量数字值;
19.所述电压监测模块,被配置用于将输出电压值处理成电压测量a/d转换器量程范围内的值,产生电压监测值;
20.所述电压测量a/d模块,被配置用于将电压监测值转换成数字量,送给fpga作为电压测量数字值;
21.所述fpga,被配置为将电压测量数字值、电流测量数字值送给cpu系统,且接收cpu系统发送的设定数据;同时,根据电压测量数字值设定电流编程;
22.所述cpu系统,被配置为用于向fpga设定数据,以及读取fpga检测到的电压测量数字值、电流测量数字值,实时显示电压、电流测量数据。
23.优选地,fpga接收cpu系统发送的开路电压值,通过电压编程d/a模块产生电压开路编程值,作为功率调节的一部分,共同实现压控电流源的闭环控制设计。
24.优选地,i

v曲线生成电路是sas工作模式,cpu系统根据最大功率点电压、最大功率点电流、开路电压、短路电流四个参数以及太阳能电池指数模型,计算生成256点对电压表数据和电流表数据,从而建立i

v曲线所需的数据;cpu系统将建立i

v曲线的数据发送给fpga,在fpga中实现i

v曲线生成。
25.优选地,fpga中开辟2段双端口block ram存储空间,深度为256,宽度为16bit,分别用于存储电压表数据和电流表数据,存储器读操作和写操作同时执行。
26.一种基于fpga的i

v曲线生成方法,采用如上所述的基于fpga的i

v曲线生成电路,以fpga为控制核心,fpga对获取到的电压测量数字值进行数据处理,使用电压数据处理后的值,对电压表ram进行寻址,得到电压地址,同时对应到电流地址,通过电流地址,得到对应的电流数据,使用读取到的电流数据,对电流编程d/a模块进行电流设定,从而实现输出电流调节,完成压控电流源的闭环控制设计,精确模拟太阳能电池板的i

v曲线输出。
27.优选地,压控电流源闭环控制设计的流程如下:
28.s101:执行初始化相关操作,包括电压当前值、电流初始值;
29.s102:检测输出是否打开;
30.若检测到输出打开,则执行s103;
31.若没有检测到输出打开,继续执行s102;
32.s103:电流编程初始值设定,以短路电路作为初始值进行电流编程设定;
33.s104:从电压测量a/d模块处获取输出电压测量数字值;
34.s105:采用64点丢弃式数据处理方法,对获取到的电压测量数字值进行数据处理,产生电压测量值;
35.s106:判断电压测量值;
36.若电压测量值等于电压当前值,则执行s112;
37.若电压测量值不等于电压当前值,则执行s107;
38.s107:将电压测量值赋值给电压当前值;
39.s108:根据电压当前值进行电压表寻址,采用二分法实现电压表快速寻址,产生电压当前值对应的电压地址;
40.s109:将电压地址赋值给电流地址;
41.s110:根据电流地址,读取电流表中对应的电流数据值;
42.s111:根据电流数据值,对电流编程d/a模块进行电流编程设定,返回s104;
43.s112:压控电流源闭环控制达到平衡状态,返回s104。
44.优选地,压控电流源的闭环控制设计中,输出电压通过电压监测、电压测量a/d模块实现输出电压测量,fpga将输出电压测量数字值进行数据处理,作为电压表数据寻址的源数据,采用基于fpga的二分法实现电压表快速寻址,其电压寻址的具体设计流程为:
45.s201:执行初始化相关操作,包括电压地址、电压当前值、电压前值、电压索引值、电压索引初始值、电压索引总值;
46.s202:将电压索引总值除2后赋值给电压地址,同时将电压索引总值除2赋值给电压索引值;
47.s203:获取电压测量值;
48.s204:检测电压测量值;
49.若判断结果是电压测量值大于等于电压当前值,且电压测量值小于电压前值,则执行s207;
50.若判断结果是电压测量值小于电压当前值,或电压测量值大于等于电压前值,则执行s205;
51.s205:检测电压测量值与电压当前值;
52.若判断结果是电压测量值小于电压当前值,则执行s206;
53.若判断结果是电压测量值小于电压当前值不成立,则表示电压测量值大于等于电压当前值,结合s204判断结果,可得到电压测量值大于等于电压前值,则执行s209;
54.s206:检测电压索引值加1;
55.若判断结果是电压索引值加1后等于电压索引总值,则执行s207;
56.若判断结果是电压索引值加1后不等于电压索引总值,则执行s208;
57.s207:将电压索引值赋值给电压地址,转至执行s216;
58.s208:将电压索引值赋值给电压索引初始值,同时将电压索引值和电压索引总值求和再除2赋值给电压索引值,转至执行s214;
59.s209:检测电压索引值除2;
60.若判断结果是电压索引值除2后大于1,则执行s210;
61.若判断结果是电压索引值除2后小于等于1,则执行s211;
62.s210:将电压索引值赋值给电压索引总值,同时将电压索引初始值和电压索引值求和后除2赋值给电压索引值,转至执行s214;
63.s211:检测电压测量值与电压前值;
64.若判断结果是电压测量值等于电压前值,则执行s212;
65.若判断结果是电压测量值不等于电压前值,则执行s213;
66.s212:将电压索引初始值加1后赋值给电压地址,转至执行s216;
67.s213:将电压索引初始值赋值给电压地址,转至执行s216;
68.s214:产生电压ram读使能、读时钟信号;
69.s215:读取电压ram中电压前值和电压当前值,返回执行s204。
70.s216:电压寻址结束,得到电压地址,返回执行s203。
71.优选地,电压数据处理采用64点丢弃式,其设计的流程如下:
72.s301:执行初始化相关操作;
73.s302:开辟电压数据数组volt_data,深度为64,宽度为16bit,可得电压数据数组为volt_data[0~63];
[0074]
s303:从电压测量a/d模块处获取输出电压测量数字值;
[0075]
s304:丢弃电压数据数组最高位数据volt_data[63];
[0076]
s305:执行电压数据数组volt_data移位操作,将volt_data[62]送给volt_data[63],volt_data[61]送给volt_data[62],volt_data[60]送给volt_data[61],依次类推,直至volt_data[0]送给volt_data[1];
[0077]
s306:将获取到的输出电压测量数字值存入电压数据数组最低位数据volt_data[0]中;
[0078]
s307:计算电压数据数组中全部64个数据的累加和;
[0079]
s308:计算电压数据数组累加和的平均值,得到电压测量值;
[0080]
s309:检测是否启动下1次电压测量;
[0081]
若判断结果是启动下1次电压测量,则返回执行s303;
[0082]
若判断结果是不启动下1次电压测量,则执行s310;
[0083]
s310:电压数据处理结束,返回执行s309。
[0084]
优选地,电流编程设计的流程如下:
[0085]
s401:执行初始化相关操作,包括电流地址、电流当前地址;
[0086]
s402:将电压地址赋值给电流地址;
[0087]
s403:检测电流地址;
[0088]
若判断结果是电流地址等于电流当前地址,则返回执行s402;
[0089]
或判断结果是电流地址不等于电流当前地址,则执行s404;
[0090]
s404:将电流地址赋值给电流当前地址;
[0091]
s405:产生电流ram读使能、读时钟信号;
[0092]
s406:读取电流表中电流当前地址对应的电流数据;
[0093]
s407:产生电流编程开始信号;
[0094]
s408:执行电流编程设定操作;
[0095]
s409:完成电流编程设定,返回执行s402。
[0096]
本发明所带来的有益技术效果:
[0097]
与现有技术相比,本发明提出的i

v曲线生成电路及方法,以fpga为控制核心,可实现微秒级的电流调整恢复时间;具有sas工作模式,可根据最大功率点电压vmp、最大功率点电流imp、开路电压voc、短路电流isc四个参数以及太阳能电池指数模型,生成256点对电压表数据和电流表数据,建立i

v曲线;在fpga中开辟2段双端口block ram存储空间,分别用于存储电压表数据和电流表数据,存储器读操作和写操作可以同时执行;fpga作为i

v曲线生成的控制核心,fpga将电压测量值进行数据处理,作为电压表数据寻址的源数据,根据电压表寻址结果,从电流表中读取相应的电流数据,根据电流数据实时调整电流编程d/a值,以达到调整输出电流,实现压控电流源的闭环控制设计;采用64点丢弃式数据处理方法,可以获得电压快速测量以及防止i

v曲线出现振荡的良好效果;核心控制和算法全部在fpga中实现,速度快、可移植性高。
附图说明
[0098]
图1是本发明i

v曲线生成电路框图;
[0099]
图2是本发明电压表数据和电流表数据示意图;
[0100]
图3是本发明i

v曲线;
[0101]
图4是本发明压控电流源设计流程图;
[0102]
图5是本发明电压寻址设计流程图;
[0103]
图6是本发明电压数据处理设计流程图;
[0104]
图7是本发明电流编程设计流程图。
具体实施方式
[0105]
下面结合附图以及具体实施方式对本发明作进一步详细说明:
[0106]
实施例1
[0107]
如图1所示,一种基于fpga的i

v曲线生成电路,包括电压编程d/a模块、电压嵌位模块、电流编程d/a模块、误差检测模块、功率调节模块、功率变换模块、分流器、电流监测模块、电流测量a/d模块、电压监测模块、电压测量a/d模块、fpga、cpu系统。以fpga为控制核心,实现压控电流源的闭环控制设计,精确模拟太阳能电池板的i

v曲线输出。
[0108]
fpga作为实现i

v曲线生成的控制核心。一方面,fpga和cpu系统间实现数据传输,将电压测量数字值、电流测量数字值送给cpu系统,同时fpga接收cpu系统发送的设定数据;另一方面,在fpga设计中,根据输出电压测量数据,实现电流编程值设定,最终实现压控电流源的闭环控制设计。
[0109]
电压监测模块实现输出电压的监测值vmon,由电压测量a/d实现电压监测值vmon的模数转换,并且电压测量a/d为16bit。电流监测模块通过分流器实现输出电流监测值imon,由电流测量a/d模块实现电流监测值imon的模数转换,并且电流测量a/d为16bit。fpga将电压测量数字值和电流测量数字值送给cpu系统,以实现电压、电流测量数据实时显示。
[0110]
在压控电流源闭环控制设计中,fpga对获取到的电压测量数字值进行数据处理,使用电压数据处理后的值,对电压表ram进行寻址,得到电压地址,同时对应到电流地址,通
过电流地址,得到对应的电流数据。使用读取到的电流数据,对电流编程d/a进行电流设定,电流编程d/a为12bit,因此在fpga设计中,需要将16bit电流数据转换成12bit数据,取高12bit即可,生成电流编程值cc_prog。结合电流编程值cc_prog和电流监测值imon,实现电流误差检测,生成电流误差值error。并且fpga根据开路电压voc对电压编程d/a进行电压设定,电压编程d/a为12bit,因此在fpga设计中,需要将16bit开路电压数据转换成12bit数据,取高12bit即可,生成电压编程值cv_prog。并通过电压嵌位作用,结合电压编程值cv_prog和电流误差值error,共同实现功率调节,最后通过功率变换,实现输出电流调节,完成压控电流源的闭环控制设计。
[0111]
如图2所示,本发明的i

v曲线生成电路具有sas工作模式,在cpu系统中,可根据最大功率点电压vmp、最大功率点电流imp、开路电压voc、短路电流isc四个参数以及太阳能电池指数模型,计算生成256点对电压表数据和电流表数据,电压表数据和电流表数据宽度都为16bit,从而建立i

v曲线所需的数据。其中,电压表数据和电流表数据是按开路到短路的趋势进行排列,可得到电压表数据按大到小进行排列,而电流表数据按从小到大进行排列,电压表地址等于电流表地址,因此电压表数据与电流表数据是一一对应的。
[0112]
在sas工作模式下,设置最大功率点电压vmp=140v、最大功率点电流imp=1a、开路电压voc=170v、短路电流isc=1.2a。由于在256点对电压表和电流表数据中,在表的末端可能存在无效的数据,判断依据是短路点之后数据全部为无效数据,结合电压表有效数据和电流表有效数据,可建立i

v曲线,如图3所示。
[0113]
在cpu系统中,为减小cpu系统与fpga间的数据传输量,给fpga发送的数据包括:有效数据开始地址、结束地址、有效电压表数据、有效电流表数据、开路电压voc,fpga接收cpu系统下发的数据,实现i

v曲线生成。
[0114]
实施例2
[0115]
在上述电路的基础上,本发明还提供一种基于fpga的i

v曲线生成方法,具体为一种压控电流源闭环控制设计。
[0116]
在压控电流源闭环控制设计中,fpga对获取到的电压测量数字值进行数据处理,使用电压数据处理后的值,对电压表ram进行寻址,得到电压地址,同时对应到电流地址,通过电流地址,得到对应的电流数据。使用读取到的电流数据,对电流编程d/a进行电流设定,从而实现输出电流调节,完成压控电流源闭环控制设计。
[0117]
压控电流源闭环控制设计流程如图4所示,具体步骤如下:
[0118]
步骤1:执行初始化相关操作,包括:电压当前值、电流初始值等;
[0119]
步骤2:检测输出是否打开;
[0120]
若:检测到输出打开,则执行步骤3;
[0121]
或没有检测到输出打开,继续执行步骤2;
[0122]
步骤3:电流编程初始值设定,以短路电路isc作为初始值进行电流编程设定;
[0123]
步骤4:从电压测量a/d处获取输出电压测量数字值;
[0124]
步骤5:采用64点丢弃式数据处理方法,对获取到的电压测量数字值进行数据处理,产生电压测量值;
[0125]
步骤6:判断电压测量值;
[0126]
若:电压测量值等于电压当前值,则执行步骤12;
[0127]
或电压测量值不等于电压当前值,则执行步骤7;
[0128]
步骤7:将电压测量值赋值给电压当前值;
[0129]
步骤8:根据电压当前值进行电压表寻址,采用二分法实现电压表快速寻址,产生电压当前值对应的电压地址;
[0130]
步骤9:将电压地址赋值给电流地址;
[0131]
步骤10:根据电流地址,读取电流表中对应的电流数据值;
[0132]
步骤11:根据电流数据值,对电流编程d/a进行电流编程设定,返回步骤4;
[0133]
步骤12:压控电流源闭环控制达到平衡状态,返回步骤4。
[0134]
下面对压控电流源闭环控制设计中,涉及到的电压表寻址方法、电压数据处理方法、电流编程设计方法进行详细说明。
[0135]
1.电压表寻址方法
[0136]
在压控电流源闭环控制设计中,涉及一种基于fpga的电压表寻址方法,根据电压测量值,在电压表中寻找到该电压测量值对应的电压表地址。本发明采用二分法设计思想,可实现电压表快速寻址。
[0137]
基于fpga的电压表寻址设计流程如图5所示,具体包括步骤如下:
[0138]
步骤1:执行初始化相关操作,包括:电压地址volt_addr、电压当前值volt_data_now、电压前值volt_data_pre、电压索引值index、电压索引初始值index_init、电压索引总值index_total等;
[0139]
步骤2:将电压索引总值index_total/2赋值给电压地址volt_addr,同时将电压索引总值index_total/2赋值给电压索引值index;
[0140]
步骤3:获取电压测量值volt_data;
[0141]
步骤4:检测电压测量值volt_data;
[0142]
若:判断结果是电压测量值volt_data大于等于电压当前值volt_data_now,且电压测量值volt_data小于电压前值volt_data_pre,则执行步骤7;
[0143]
或判断结果是电压测量值volt_data小于电压当前值volt_data_now,或电压测量值volt_data大于等于电压前值volt_data_pre,则执行步骤5;
[0144]
步骤5:检测电压测量值volt_data与电压当前值volt_data_now;
[0145]
若:判断结果是电压测量值volt_data小于电压当前值volt_data_now,则执行步骤6;
[0146]
或判断结果是电压测量值volt_data小于电压当前值volt_data_now不成立,则表示电压测量值volt_data大于等于电压当前值volt_data_now,结合步骤4判断结果,可得到电压测量值volt_data大于等于电压前值volt_data_pre,则执行步骤9;
[0147]
步骤6:检测电压索引值index 1;
[0148]
若:判断结果是电压索引值(index 1)等于电压索引总值index_total,则执行步骤7;
[0149]
或判断结果是电压索引值(index 1)不等于电压索引总值index_total,则执行步骤8;
[0150]
步骤7:将电压索引值index赋值给电压地址volt_addr,转至执行步骤16;
[0151]
步骤8:将电压索引值index赋值给电压索引初始值index_init,同时将(index
index_total)/2赋值给电压索引值index,转至执行步骤14;
[0152]
步骤9:检测电压索引值index/2;
[0153]
若:判断结果是电压索引值(index/2)大于1,则执行步骤10;
[0154]
或判断结果是电压索引值(index/2)小于等于1,则执行步骤11;
[0155]
步骤10:将电压索引值index赋值给电压索引总值index_total,同时将(index_init index)/2赋值给电压索引值index,转至执行步骤14;
[0156]
步骤11:检测电压测量值volt_data与电压前值volt_data_pre;
[0157]
若:判断结果是电压测量值volt_data等于电压前值volt_data_pre,则执行步骤12;
[0158]
或判断结果是电压测量值volt_data不等于电压前值volt_data_pre,则执行步骤13;
[0159]
步骤12:将电压索引初始值index_init 1赋值给电压地址volt_addr,转至执行步骤16;
[0160]
步骤13:将电压索引初始值index_init赋值给电压地址volt_addr,转至执行步骤16;
[0161]
步骤14:产生电压ram读使能、读时钟信号;
[0162]
步骤15:读取电压ram中电压索引值index

1对应的电压值,即电压前值volt_data_pre,读取电压ram中电压索引值index对应的电压值,即电压当前值volt_data_now,返回执行步骤4。
[0163]
步骤16:电压寻址结束,得到电压地址volt_addr,返回执行步骤3。
[0164]
2.电压数据处理方法
[0165]
在压控电流源闭环控制设计中,涉及一种基于fpga的电压数据处理方法,fpga从电压测量a/d处获取输出电压测量数字值,使用电压数据处理后的值,对电压表ram进行寻址,以实现电压寻址。本发明采用64点丢弃式数据处理方法,可以获得电压快速测量以及防止i

v曲线出现振荡的良好效果。
[0166]
基于fpga的电压数据处理设计流程如图6所示,具体包括步骤如下:
[0167]
步骤1:执行初始化相关操作;
[0168]
步骤2:开辟电压数据数组volt_data,深度为64,宽度为16bit,可得电压数据数组为volt_data[0~63];
[0169]
步骤3:从电压测量a/d处获取输出电压测量数字值;
[0170]
步骤4:丢弃电压数据数组最高位数据volt_data[63];
[0171]
步骤5:执行电压数据数组volt_data移位操作,将volt_data[62]送给volt_data[63],volt_data[61]送给volt_data[62],volt_data[60]送给volt_data[61],依次类推,直至volt_data[0]送给volt_data[1];
[0172]
步骤6:将获取到的输出电压测量数字值存入电压数据数组最低位数据volt_data[0]中;
[0173]
步骤7:计算电压数据数组中全部64个数据的累加和;
[0174]
步骤8:计算电压数据数组累加和的平均值,得到电压测量值;
[0175]
步骤9:检测是否启动下1次电压测量;
[0176]
若:判断结果是启动下1次电压测量,则返回执行步骤3;
[0177]
或判断结果是不启动下1次电压测量,则执行步骤10;
[0178]
步骤10:电压数据处理结束,返回执行步骤9。
[0179]
3.电流编程设计方法
[0180]
在压控电流源闭环控制设计中,涉及一种基于fpga的电流编程设计方法,根据电压寻址结果,得到对应的电流地址,快速读取电流表中对应的电流数据,实现电流编程d/a设定。
[0181]
基于fpga的电流编程设计流程如图7所示,具体包括步骤如下:
[0182]
步骤1:执行初始化相关操作,包括:电流地址curr_addr、电流当前地址curr_addr_now等;
[0183]
步骤2:将电压地址volt_addr赋值给电流地址curr_addr;
[0184]
步骤3:检测电流地址curr_addr;
[0185]
若:判断结果是电流地址curr_addr等于电流当前地址curr_addr_now,则返回执行步骤2;
[0186]
或判断结果是电流地址curr_addr不等于电流当前地址curr_addr_now,则执行步骤4;
[0187]
步骤4:将电流地址curr_addr赋值给电流当前地址curr_addr_now;
[0188]
步骤5:产生电流ram读使能、读时钟信号;
[0189]
步骤6:读取电流表中电流当前地址curr_addr_now对应的电流数据;
[0190]
步骤7:产生电流编程开始信号;
[0191]
步骤8:执行电流编程设定操作,
[0192]
步骤9:完成电流编程设定,返回执行步骤2。
[0193]
本发明i

v曲线生成电路以fpga为控制核心,可实现微秒级的电流调整恢复时间;具有sas工作模式,可根据最大功率点电压vmp、最大功率点电流imp、开路电压voc、短路电流isc四个参数以及太阳能电池指数模型,生成256点对电压表数据和电流表数据,建立i

v曲线;在fpga中开辟2段双端口block ram存储空间,分别用于存储电压表数据和电流表数据,存储器读操作和写操作可以同时执行。在i

v曲线生成方法中,fpga作为i

v曲线生成的控制核心,采用二分法可实现电压表的快速寻址,以及电流表的快速读取、电流编程,实现压控电流源的闭环控制设计;采用64点丢弃式数据处理方法,可以获得电压快速测量以及防止i

v曲线出现振荡的良好效果;核心控制和算法全部在fpga中实现,速度快、可移植性高。
[0194]
当然,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜