嵌入式在太阳方位跟踪系统中的应用
2018-11-19张彩霞巫炳和王向东
张彩霞,巫炳和,王向东
(1.佛山科学技术学院自动化学院,广东佛山528000;2.佛山市精视自动化科技有限公司,广东佛山528200;3.佛山科学技术学院数学与大数据学院,广东佛山528000)
近年来随着太阳能光伏发电技术的发展,人们对太阳能设备的使用率越来越高[1],从而对高效且稳定的采集更多的太阳能提出了更高的要求,而传统的太阳能电池板大都采用固定式安装,严重影响光电转换效率,因此需要重视太阳跟踪系统的开发研究。
如今能源技术的发展越来越快,对能源的需求也越来越高,太阳能有着取之不尽、绿色无污染的特点而受到了重视[2]。要获取更高的转换效率,其中一项技术就是太阳能跟踪,这些技术在光热、光伏等有高精度追日要求的场合中更为重要。太阳能跟踪系统通过利用光敏阵列传感器去感知周围环境信息,采用光控与时控相结合的跟踪模式实现太阳方位跟踪控制。
本研究主要对太阳能跟踪系统进行研究,采用阵列式光感器对环境光照进行数据采集,通过双核心控制系统对环境数据进行管理和分析,在光感跟踪、时间跟踪算法以及定位方法上达到更好的控制效果,从而使电池板或其他光伏器件的法线始终与太阳光线平行,以保存最大的转换效率。同时嵌入式对太阳能利用在控制智能化与信息化等方面有很大的作用。因此,本文将嵌入式[3-4]应用在太阳方位跟踪系统中,探讨其软硬件设计。
1 系统总体方案设计
在本系统中,采用了ARM+FPGA的双核心结构,使得太阳跟踪系统更加灵活。
(1)ARM作为整个系统的核心部分,包含时间跟踪单元和光感跟踪单元,时间跟踪单元对所获得的时间数据与地理位置信息进行管理和分析计算。
(2)光感跟踪单元则对光感阵列传感器采集到的光强变化数据进行处理和分析。通过这两种跟踪单元的组合,减小系统误差,计算出最佳太阳能电池板倾角。
FPGA核心作为逻辑器件角色,负责对光感阵列传感器的并行管理和数据的实时采集、双轴电机控制以及ARM核心进行数据交换[5]。
ARM和FPGA两个核心采用16位并行总线通信,使得两核心数据交换具有便利性和实时性。这样FPGA较大程度地分担了ARM的工作,减少了ARM系统的资源利用,让ARM有更多地资源进行数据分析和管理方面的工作,大大提高太阳跟踪系统的实时性和稳定性,以获得最大发电功率。图1是系统总体框图。
图1 系统总体框图
2 系统硬件设计
2.1 阵列式光感传感器的设计
本设计研究一种阵列式光强检测方法能实现太阳光照的垂直跟踪。阵列式光强传感器采用n2个光敏元件并且每个元件呈陈列分布设计。其工作原理是通过采集阵列分布的n2个光敏元件的感光量,根据各光敏元件所获相对感光量及其在陈列中的位置进行分析[6],从而获得太阳光线与阵列分布的光敏元件的检测面间的夹角。光敏元件之间采用挡板将各光敏传感器隔开进行排列。光检测阵列排列方式如图2。
图2 光检测阵列排布
2.2 ARM与FPGA双核心系统设计
系统供电如图3所示。
由图3可知,双核心模块的ARM核心采用Coretex-M4内核的STM32F407IGT6,其具有168 MHz主频、FPU浮点单元及DSP指令集等高性能特性[7],而且具有多外设、多接口及多I/O口等优点。FPGA核心采用Altera Cyclone系列第4代产品EP4CE10F17C8N,具有功耗低、性能强、资源多及使用方便等优点。双核心板采用USB OTG、USB UART和EXT IN共3种供电方式,其供电电压为5 V,供电电流约为300 mA。双核心板从4个方面为系统供电,同时提供电源监控和基准。
2.3 电机驱动模块设计
模块的接口电路如图4所示。
图3 系统供电示意
图4 步进电机驱动接口电路
为了让太阳跟踪系统达到更精准的运动,采用了2个两相四线步进电机,步进电机驱动模块采用ZD-M42S微型步进电机驱动器[8],此款驱动器体积较小,减少了占用空间,更适合安装在移动机器人上。并且集成度高,可靠性高,接口采用超高速光耦隔离,抗高频干扰能力强,拥有过热自动关断输出保护,输出电流在0~1.8 A范围可选,非常适合用于双轴电机驱动[9]。FPGA通过生成PWM和方向信号输出到该信号控制,从而实现FPGA两路脉冲精确控制。
3 系统软件设计
3.1 ARM程序设计
ARM程序设计主要包括时间跟踪单元和光感跟踪单元[10]的设计,其ARM程序设计如图5所示。
图5 ARM程序设计
时间跟踪单元的控制策略为根据当地经纬度,应用Klein位置算法确定高度角和方位角,以实现对太阳位置的精确跟踪。光感跟踪单元则是根据光敏阵列传感器检测到的偏差信号,计算出最佳太阳能电池板倾角。
通过时间跟踪和光感跟踪相结合的跟踪系统[11],不仅可以弥补日光轨迹跟踪过程中会出现累计误差的问题,而且可解决光电跟踪在阴雨天气无法工作的问题,混合跟踪系统精度高。
3.2 FPGA程序设计
FPGA主要负责步进电机对光伏阵列板的高度角和水平角的位置调整,保持阵列板与太阳光线垂直。利用QuartusⅡ进行FPGA的设计,其流程如图6所示。
利用FPGA产生PWM控制电机驱动模块[12],PWM采用调频方式控制,其中PWM模块的接口及内部信号定义分别如下。
(1)复位信号。复位信号为input rsn。
(2)时钟信号。时钟信号为clk。
(3)PWM输出。PWM输出为pwm_out。
(4)参数确定。核心板输入基准时钟频率是25 MHZ,PWM输出频率为10~200 kHZ[13],所以预分配系数最大值是2 500。
这里建立一个PWM寄存器pwm_reg,设计的寄存器功能定义如表1所示。PWM模块Verilog HDL程序流程如图7所示。
图6 FPGA程序设计
表1 PWM寄存器功能定义
图7 PWM流程设计
4 小结
本文设计了一种嵌入式全天候太阳方位跟踪装置,实现了电池板跟随太阳光全天候垂直照射的方位跟踪。将基板与光敏元件,相邻两排和相邻两列的光敏元件间的隔板,二轴驱动的多维驱动器,太阳能电池板、ARM和FPGA双核心控制器等有机结合成跟踪装置,将光感跟踪与时间跟踪方法有效结合,从而实现了精确且稳定的跟踪,有效地保证了太阳能电池的最大输出功率,提高了太阳能转化电能的利用效率。实验表明该方法切实有效,具有成本低、安装简易、稳定性较高、精度较高以及应用范围广泛等优点。