海洋科学  2019, Vol. 43 Issue (8): 86-92   PDF    
http://dx.doi.org/10.11759/hykx20180824002

文章信息

虞丽娟, 李世超, 陈成明, 曹守启, 李佳佳. 2019.
YU Li-juan, LI Shi-chao, CHEN Cheng-ming, CAO Shou-qi, LI Jia-jia. 2019.
基于STM32的浮标及其定日光伏控制系统设计
Buoy powered by a photovoltaic control system design based on STM32
海洋科学, 43(8): 86-92
Marina Sciences, 43(8): 86-92.
http://dx.doi.org/10.11759/hykx20180824002

文章历史

收稿日期:2018-08-24
修回日期:2018-10-18
基于STM32的浮标及其定日光伏控制系统设计
虞丽娟1,2, 李世超1, 陈成明1,2, 曹守启1, 李佳佳1     
1. 上海海洋大学 工程学院, 上海 201306;
2. 同济大学 机械与能源工程学院, 上海 200092
摘要:为了提高海洋浮标对太阳能的利用率而设计了一种定日光伏系统的控制方案,采用STM32嵌入式单片机作为控制核心,结合浮标的特制外形,其太阳能电池板能够始终向着太阳转动,最大限度地为浮标进行供电。所述的浮标特制外形由带有对称肋板的浮标体和透明保护罩组成,提高了浮标的抗变形能力,减弱了太阳能电池板转动引起的反转及左右摇摆趋势。该系统经试验及仿真分析,达到预期目标,运行稳定可靠,有良好的推广应用价值。
关键词浮标    STM32    定日    太阳能发电    结构设计    
Buoy powered by a photovoltaic control system design based on STM32
YU Li-juan1,2, LI Shi-chao1, CHEN Cheng-ming1,2, CAO Shou-qi1, LI Jia-jia1     
1. College of Engineering Science and Technology, Shanghai Ocean University, Shanghai 201306, China;
2. School of Mechanical and Energy Engineering, Tongji University, Shanghai 200092, China
Abstract: Buoys are vital in the maintenance of marine environment and exploration and utilization of marine resources. As the main power supply of ocean buoys, solar power generation is particularly important in improving the utilization of solar energy. In this paper, a control scheme for the solar system is designed. An STM32 embedded microcontroller is used as the control core and incorporated in the special shape of the buoy. The solar panel harnesses solar energy generated from the sun to supply the buoy with maximum power. The special shape of the buoy comprises a buoy body with a symmetrical rib plate and a transparent protective cover that improves the anti-deformability of the buoy and reduces the reversal and left and right swaying caused by the rotation of the solar panel. The system has been tested and simulated, and the power supply is reliable and stable. It has good popularization and practical applications.
Key words: buoys    STM32    chasing the sun    solar power    structural design    

由于地球的自转与公转, 使得太阳能电池板在一天中每个时段接收到的太阳能无法一直保持最大值, 而定日光伏海洋浮标是一种利用自动跟踪太阳位置的太阳能电池板发电的海洋浮标。太阳能板配有太阳跟踪机构, 实现对太阳的双轴跟踪, 精确地跟踪太阳位置可使太阳能电池板的光伏接收效率大大提高, 进而提高系统的太阳能利用率, 因此定日太阳能电池板的跟踪效果对太阳能的利用效率有着重要影响[1-3]

1 系统整体设计方案 1.1 机械结构设计

浮标的整个定日太阳能电池板自动跟踪控制装置与浮标体通过四级平衡环[4]活动连接, 环之间设有旋转阻尼器, 其机械结构如图 1所示, 锂电池组及负载装箱后固定于自动跟踪控制装置底下, 定日装置通过平衡环与浮标外壳通过旋转阻尼连接, 当浮标受海况影响发生倾斜、摇摆时, 旋转阻尼对平衡机构的晃动进行必要的衰减, 使平衡机构迅速达到稳定状态, 减少控制系统过度重复调整, 从而为定日装置提供一个平衡稳定的工作平台, 避免太阳能电池板的高度角因海水的波动而大范围变化。本结构通过Adams软件仿真分析, 如图 2所示, 横坐标t表示时间, 纵坐标v表示太阳能电池板中心摇晃的线速度绝对值, 仿真结果显示该机械结构结构在20 s内能够基本恢复稳定, 控制采用双轴跟踪控制, 实现在方位角和高度角两个方向上的同时跟踪。该装置机械结构简单, 在复杂的海况下可以保证较高的可靠性。

图 1 机械结构模型 Fig. 1 Mechanical structure model

图 2 太阳能电池板稳定曲线 Fig. 2 Solar panel stability curve
1.2 控制方案设计

当太阳位置发生变化时, 跟踪控制系统通过控制步进电机转动, 使太阳能电池板法线始终指向太阳, 也就是使太阳光始终直射太阳能电池板。此装置较普通太阳能电池板固定式的太阳能供电浮标对太阳能的收集量至少提高2倍, 除去此装置正常工作所必须的耗电量, 在常态海况下对太阳能的利用率至少提高10%~15%。系统主要分为控制太阳能电池板的高度角和方位角两个部分如图 3所示。第一部分, 若方位角按顺时针一圈360°, 默认正南方位为0°, 根据地磁方位传感器测出浮标自身方位角α, 经A/D转换并及时反馈给MCU, MCU通过GPS信号处理模块提供的当地实时时间[6]计算出太阳方位角As, 当|αAs| > δ时, 自动控制驱动器发出脉冲信号给方位角步进电机转动, 调整太阳能板方位角直到|αAs| < δ, 其中δ为方位角允许偏离值。

图 3 角度调整示意图 Fig. 3 Angle adjustment

为了节约浮标电能, 当|αAs| > 180°或|αAs| < 0°时, 太阳能电池板顺时针调整; 0° < αAs < 180°时, 太阳能电池板逆时针调整。第二部分, 由于太阳与地球的相对运动, STM32控制器根据太阳运行规律公式及海洋浮标所在位置的经纬度、时区时间等信息计算出太阳的高度角Hs, 以此通过GPS信号处理器实时感知浮标内太阳能电池板高度角ε的变化, 将得到的经纬度及时间数据及时地反馈给MCU(central processing unit), MCU通过编辑好的程序执行相应的操作, 计算出此时太阳的高度角偏离值, 当偏离值超过允许值Δ时, 自动控制驱动器发出脉冲信号给高度角步进电机转动调整太阳能板高度角直到偏离值小于允许偏离值Δ, 即|Hsε| < Δ。通过系统对以上两部分的控制实现对太阳能板跟踪太阳的精确控制。

2 系统硬件设计

本系统由嵌入式主控模块、GPS信号处理器及控制电路、地磁方位传感器、光敏传感器, 电源模块、步进电机驱动模块、反馈机构等部分组成, 系统整体硬件结构如图 4所示。

图 4 系统整体硬件结构图 Fig. 4 Overall system hardware structure
2.1 主控制器

本系统采用STM32F101X8系列单片机, 它具有高性能的ARM® CortexTM-M3 32位的RISC内核, 工作频率为72 MHz, 内置高速存储器(高达128 kB的闪存和16 kB的SRAM), 丰富的增强GPIO端口和两条APB总线, 每个GPIO端口可以自由编程, 用于连接本系统的全部外设模块。

2.2 太阳能电源控制模块

太阳能电源控制模块电路是整个系统的能源来源, 其主要功能是将太阳能转化为电能供给系统的用电电路。将双电压比较器LM393两个反相输入端连接在一起, 并由稳压管ZD1提供6.2 V的基准电压做比较电压, 两个输出端分别接反馈电阻, 将部分输出信号反馈到同相输入端, 这样就把双电压比较器变成了双迟滞电压比较器, 可使电路在比较电压的临界点附近不会产生振荡。电位器起调节设定过充、过放电压的作用。可调三端稳压器LM371提供给LM393稳定的8 V工作电压。被充电电池为12 V, 65 Ah全密封免维护铅酸蓄电池; 太阳电池用一块40 W硅太阳电池组件, 在标准光照下输出17 V, 2.3 A左右的直流工作电压和电流; 二极管防止硅太阳电池在太阳光较弱时成为耗电器。当太阳光照射的时候, 硅太阳电池组件产生的直流电流对蓄电池进行充电; 三端稳压器输出8 V电压, 电路开始工作, 过充电压检测比较控制电路和过放电压检测比较控制电路同时对蓄电池端电压进行检测比较[7-8]

2.3 电源模块

本系统采用LM1117系列的低压差线性调压器, 分别输出3.3 V和5 V的直流电, 其电流为800 mA。太阳能电源控制模块输出12 V, 经过调压和滤波后, 输出3.3 V和5 V电压, 同时将输入的12 V直接输出。3.3 V为光敏传感器、GPS定位模块和电子罗盘供电, 5 V为单片机系统和步进电机驱动板供电, 12 V为步进电机供电, 在电路中加入了单项稳压二极管和保险丝以保护电路。

2.4 光敏传感器

本系统的光敏传感器模块主要采用LM393电压比较芯片, 其工作电源电压范围宽, 单电源、双电源均可工作, 消耗电流小, 输入失调电压小, 输出与TTL, DTL, MOS, COMS等兼容, 输出可以用开路集电极连接“或”门。整个模块可以输出数字量和模拟量两种信号类型, 当模块在环境光线亮度达不到设定阈值时, 数字量输出端输出高电平, 反之输出低电平。同时模块的模拟量输出端与STM32单片机的AD管脚相接, 根据光照强度不同, 模拟电压值为0~3.3 V[9-10]

2.5 GPS定位模块

该模块采用U-BLOXNEO-6M模组, 体积小巧, 性能优异。增加放大电路, 有利于无源陶瓷天线快速搜星。可通过串口进行各种参数设置, 并可保存在EEPROM, 使用方便。自带SMA接口, 可以连接各种有源天线, 适应能力强。兼容3.3 V/5 V电平, 方便连接各种单片机系统。自带可充电后备电池, 可以掉电保持星历数据。在本系统中, 将GPS模块的串口端与STM32的串口相接, 波特率为9600, 每1 s更新一次数据, 为之后浮标太阳能电池板方位的调节做准备。

2.6 电子罗盘

本系统采用HMC5883L三轴磁场模块作为电子罗盘, 主要功能是为系统提供精确可靠的地磁方位, 其供电电压为3~5 V, 采用IIC通信协议[11-12]

2.7 步进电机驱动

本系统采用TB6560步进电机驱动和42步进电机, 工作电压直流10~35 V, 采用12 V工作电压, 采用6N137高速光藕, 保证高速不失步, 内有低压关断、过热停车及过流保护电路, 保证优性能。额定最大输出为: ±3 A, 峰值3.5 A, 具有自动半流功能, 细分:整步, 半步, 1/8步, 1/16步, 最大16细分[13-15], 经减速器减速后使太阳能电池板达到8 r/min的转速。

3 系统软件设计

本系统是基于嵌入式的框架设计完成的, 通过KEILS软件作为程序开发的集成编译环境, 主要包括GPS数据接收与处理程序、光照数据读取与处理程序、地磁数据读取与处理程序、步进电机调节程序, GPS数据接受与处理程序在串口中断中执行, 剩下的程序在1 s的定时器中断中执行。主程序流程如图 5所示。

图 5 主程序流程图 Fig. 5 Main program flow chart
3.1 GPS数据接收与处理程序

本系统MCU通过串口[16]中断的方式接收GPS数据, GPS模块每1 s的时间间隔会输出数据, 当有信号传入时, STM32的MCU触发串口中断, 系统将控制数据按照设定好的方式依次获取数据, 如果数据符合协议, 系统将读取GPS数据头“$GPRMC”信息直到收集完成本次数据之后, 截取当前GPS时间, 判断是否为白天, 如果是, 则Time标志位置1, 跳出串口中断, 继续主程序任务, 反之则继续接收下一次的数据。

3.2 光照数据和地磁数据读取与处理

当串口中断结束, GPS数据中的时间正确解析之后, Time标志位置1, 在1 s的定时器中断内, 判断Time置1, 读取此时光照传感器的AD值, 传感器模块的输出为0~3.3 V的模拟量, MCU通过自身的AD转换器, 转化为0~255的数字量, 如果大于开始时设定的阈值, 则继续程序, 读取电子罗盘的数据, 主要获得浮标的方位角, 反之则返回程序头。

3.3 步进电机调节程序

图 6所示, 本系统选用TB5606作为步进电机驱动器, STM32作为驱动时序的输出控制器, 其E1—E6端口控制方位角步进电机, E1和E2控制启停, E3和E4控制旋转方向, E5和E6作为时钟输入端; A1—A6端口控制高度角步进电机, A1和A2控制启停, A3和A4控制旋转方向, A5和A6作为时钟输入端。当所有的传感器数据读取成功后, 根据系统所得到的太阳高度角和地磁方位角信息, 依次调节两个步进电机, 使浮标上的太阳能电池板可以保持正对太阳。

图 6 步进电机调节程序流程图 Fig. 6 Stepper motor regulation program flow chart
4 数据采集与分析

已知数据采集地点在静水池塘中, 天气晴, 风速1.2 m/s, 121.902725°E, 30.891987°N, 海拔1.6 m, 如图 7所示。

图 7 测试样机 Fig. 7 Test prototype

根据太阳运行规律可得出太阳高度/方位角的精确曲线, 具体算法如下:

$ \sin {H_{\rm{s}}} = \sin \phi \sin \delta + \cos \phi \cos \delta \cos t, $ (1)
$ \cos {A_{\rm{s}}} = (\sin {H_{\rm{s}}}\sin \phi - \sin \delta )/(\cos {H_{\rm{s}}}\cos \phi ), $ (2)
$ \begin{array}{l} {\delta ^{}}{\rm{ = 180(0}}{\rm{.006918}} - {\rm{0}}{\rm{.399912cos}}b{\rm{ + 0}}{\rm{.070257sin}}b - \\ \;\;\;\;\;\;{\rm{0}}{\rm{.006758cos2}}b{\rm{ + 0}}{\rm{.000907sin2}}b - {\rm{0}}{\rm{.002697cos3}}b{\rm{ + }}\\ \;\;\;\;\;\;{\rm{0}}{\rm{.00148sin3}}b)/{\rm{ \mathsf{ π} }}\;\;\;\;\;\;, \end{array} $ (3)

其中$b = 2{\rm{ \mathsf{ π} }}(N - 1)/365$, N是每年1月1日起, 距计算日的天数, 即, 1月1日, N=1, 1月2日, N=2, 以此类推。

$ \lambda = (\omega - 12) \times 15^\circ , $ (4)

太阳时角在正午时为零, 上午为正, 下午为负, 日出时为–90°, 日落时为+90°, 平均每小时角变化15°。

其中Hs表示太阳高度角, ϕ表示地理纬度, δ表示太阳赤纬, λ表示时角, ω表示真太阳时[18]

现对2018年5月1日定日太阳能电池板实际运转情况进行记录, 见表 1

表 1 定日跟踪过程数据采集 Tab. 1 Data acquisition for tracking process
时间/(年-月-日T时:分) 太阳方位角/° 太阳高度角/°
2018-05-01 T08: 00 90.3 30.5
2018-05-01 T09: 00 79.1 48.2
2018-05-01 T10: 00 65.0 50.8
2018-05-01 T11: 00 48.3 66.3
2018-05-01 T12: 00 5.7 78.5
2018-05-01 T13: 00 45.2 70.8
2018-05-01 T14: 00 65.9 58.1
2018-05-01 T15: 00 77.3 45.5
2018-05-01 T16: 00 88.5 33.7
2018-05-01 T17: 00 95.6 19.9

从太阳当日理论运行状况与太阳能电池板法线实时指向对照曲线来看, 设备运行稳定, 达到预期效果。如图 8所示。

图 8 理论与实际测试拟合曲线 Fig. 8 Theoretical and practical test fitting curve

将太阳能电池板面积相同的定日太阳能供电浮标与普通固定式太阳能供电浮标置于同一环境中对其发电输出功率进行对照, 已知两浮标太阳能电池板理论总功率均为320 W, 测量数据如表 2所示。

表 2 光伏输出功率跟踪对照表 Tab. 2 PV output power tracking table
时间/
(年-月-日T时:分)
输出功率/W
普通固定光伏 定日光伏
2018-05-01 T06: 00 15 9
2018-05-01 T07: 00 70 78
2018-05-01 T08: 00 125 188
2018-05-01 T09: 00 203 231
2018-05-01 T 10: 00 246 268
2018-05-01 T 11: 00 253 316
2018-05-01 T 12: 00 260 310
2018-05-01 T 13: 00 244 306
2018-05-01 T 14: 00 205 295
2018-05-01 T 15: 00 124 265
2018-05-01 T 16: 00 77 173
2018-05-01 T 17: 00 47 59
2018-05-01 T 18: 00 11 13

通过对照两种太阳能电池板的功率输出, 控制光伏电池板运动跟踪光源运动的光伏控制的浮标供电系统, 确实能够达到提高光伏发电的效率的目的, 如图 9所示。

图 9 光伏输出对比曲线图 Fig. 9 Photovoltaic output curve
5 结论

本文设计了一种基于STM32的浮标及其定日光伏控制系统。该系统有效提高了浮标对太阳能的利用率。根据实际现状分别对其机械结构和电气控制部分进行了设计。整个装置由嵌入式STM32单片机控制光感、GPS、地磁方位传感器的数据采集、方位角和高度角电机的运行, 实现太阳能电池板自动跟踪太阳的功能, 最大限度的提高太阳能电池板对太阳能的利用率, 为浮标正常工作提供充足稳定的电源。

经测试, 由光伏输出对比曲线图经过分析计算可知该浮标在良好天气状况下除去自身定日系统消耗(共计18 W)外, 光伏输出功率较原来约提高15%。该装置通过STM32嵌入式单片机控制技术配合特制的外形结构设计, 调控速度快且稳定, 定日反应灵敏且误差小, 整个装置结构轻量小型, 定日准确, 运行稳定、智能化程度高, 既高效又经济, 可进一步推广应用在海洋资源探测及开发、海洋环境保护等领域。

参考文献
[1]
吕文华, 贺晓雷, 于贺军, 等. 全自动太阳跟踪器的研制和应用[J]. 光学精密工程, 2008, 16(12): 2544-2550.
Lü Wenhua, He Xiaolei, Yu Hejun, et al. Serial port communication based on interrupts technology and application[J]. Chinese Journal of Scientific Instrument, 2008, 16(12): 2544-2550. DOI:10.3321/j.issn:1004-924X.2008.12.036
[2]
申来明, 杨亚龙. 一种利单片机实现太阳跟踪的设计方法[J]. 现代电子技术, 2014, 417(10): 158-162.
Shen Laiming, Yang Yalong. Achievement of sun-tracking by using single-chip computer[J]. Modern Electronics Technique, 2014, 417(10): 158-162. DOI:10.3969/j.issn.1004-373X.2014.10.046
[3]
王波, 李民, 刘世萱, 等. 海洋资料浮标观测技术应用现状及发展趋势[J]. 仪器仪表学报, 2014, 35(11): 2401-2414.
Wang Bo, Li Min, Liu Shixuan, et al. Current status and trend of ocean data buoy observation technology applications[J]. Chinese Journal of Scientific Instrument, 2014, 35(11): 2401-2414.
[4]
张燕娥. 船用双平衡环挠性陀螺仪接头设计准则及力学分析[J]. 船舶工程, 1998(3): 51-53.
Zhang Yan'e. The design criteria and mechanical analyses of marine flexible gyroscope joints with bibalance ring[J]. Ship Engineering, 1998(3): 51-53.
[5]
陈柯, 李媛媛, 方璇, 等. 单片机驱动电机的设计与实现[J]. 实验室研究与探索, 2016, 35(3): 119-122.
Chen Ke, Li Yuanyuan, Fang Xuan, et al. Design and implementation of driving motor based on MCU[J]. Research and Exploration in Laboratory, 2016, 35(3): 119-122. DOI:10.3969/j.issn.1006-7167.2016.03.029
[6]
王尔申, 张淑芳, 胡青. 基于时钟偏差模型的GPS不完整星座定位方法[J]. 大连海事大学学报, 2009, 35(2): 59-61.
Wang Ershen, Zhang Shufang, Hu Qing. Incomplete constellation positioning method for GPS receiver augmented with clock bias model[J]. Journal of Dalian Maritime University, 2009, 35(2): 59-61.
[7]
崔岩, 胡宏勋. 太阳能光伏电源控制器弱电控制线路的研究[J]. 太阳能学报, 1996, 17(3): 293-296.
Cui Yan, Hu Hongxun. Study on the weak electricity control circuit of solar power controller[J]. Acta Energiae Solaris Sinica, 1996, 17(3): 293-296.
[8]
张欢, 钮文良, 王淑英, 等. 太阳能充电系统控制结构研究与设计[J]. 北京联合大学学报:自然科学版, 2008, 22(4): 54-58.
Zhang huan, Niu Wenliang, Wang Shuying, et al. The research and design of control structure in solar energy charging system[J]. Journal of Beijing Union University (Natural Sciences), 2008, 22(4): 54-58. DOI:10.3969/j.issn.1005-0310.2008.04.012
[9]
李昂, 王天会, 汪亮, 等. 工科物理实验教学中传感器应用实验综述[J]. 实验室研究与探索, 2017, 36(3): 217-220.
Li Ang, Wang Tianhui, Wang Liang, et al. Review on college physics experiments of the applications of sensors[J]. Research and Exploration in Laboratory, 2017, 36(3): 217-220. DOI:10.3969/j.issn.1006-7167.2017.03.053
[10]
马逊, 王平. 塔式太阳能热发电中定日镜无光线位置传感器跟踪控制及误差消除[J]. 太阳能学报, 2012, 33(5): 816-820.
Ma Xun, Wang Ping. Light-beam sensorless control of heliostats for tower type solar thermal power generation applications[J]. Acta Energiae Solaris Sinica, 2012, 33(5): 816-820. DOI:10.3969/j.issn.0254-0096.2012.05.019
[11]
张秀再, 张一波, 杜蒙, 等. 数字式电子罗盘[J]. 电子技术应用, 2014, 40(10): 134-137.
Zhang Xiuzai, Zhang Yibo, Du Meng, et al. The digital electronic compass[J]. Application of Electronic Technique, 2014, 40(10): 134-137. DOI:10.3969/j.issn.0258-7998.2014.10.040
[12]
竺春祥, 鹿存跃. 一种基于STM32的目标实时跟踪系统研究[J]. 半导体光电, 2017, 38(6): 908-910.
Zhu Chunxiang, Lu Cunyue. Design of 2D Target Tracking System Based on STM32[J]. Semiconductor Optoelectronics, 2017, 38(6): 908-910.
[13]
刘自程, 李永东, 郑泽东. 多相电机控制驱动技术研究综述[J]. 电工技术学报, 2017, 32(24): 17-29.
Liu Zicheng, Li Yongdong, Zheng Zedong. Control and drive techniques for multiphase machines:A review[J]. Transactions of China Electrotechnical Society, 2017, 32(24): 17-29.
[14]
罗天资, 陈卫兵, 邹豪杰, 等. 直线电机模糊增量PID控制算法的研究[J]. 测控技术, 2011, 30(2): 56-59.
Luo Tianzi, Chen Weibing, Zou haojie, et al. A study of fuzzy incremental PID control algorithm for linear motor[J]. Measurement & Control Technology, 2011, 30(2): 56-59. DOI:10.3969/j.issn.1000-8829.2011.02.015
[15]
朱嵘涛, 武洪涛. 基于增量式PID算法的直流电机调速系统[J]. 仪表技术与传感器, 2017(7): 121-126.
Zhu Rongtao, Wu Hongtao. Design of DC motor speed regulation system based on incremental PID algorithm[J]. Instrument Technique and Sensor, 2017(7): 121-126. DOI:10.3969/j.issn.1002-1841.2017.07.031
[16]
李蓉, 傅志中. 串口中断编程技术及应用[J]. 仪器仪表学报, 2006, 27(Z3): 2558-2559, 2584.
Li Rong, Fu Zhizhong. Serial port communication based on interrupts technology and application[J]. Chinese Journal of Scientific Instrument, 2006, 27(Z3): 2558-2559, 2584. DOI:10.3321/j.issn:0254-3087.2006.z3.315
[17]
王国安, 米鸿涛, 邓天宏, 等. 太阳高度角和日出日落时刻太阳方位角一年变化范围的计算[J]. 气象与环境科学, 2007, 30(s1): 161-164.
Wang Guoan, Mi hongtao, Deng Tianhong, et al. Calculation of the change range of the sun high angle and the azimuth of sunrise and sunset in one year[J]. Meteorlolgical and Environmental Sciences, 2007, 30(s1): 161-164.