王钰 黄开亮 杨笑然 邓旭东
摘要:随着社会的发展,新能源的研究与应用已经成为必然趋势。作为新能源的太阳能,虽然是清洁能源,但利用率有待提高。为了提高太阳能的利用率,文章提出了基于Arduino uno单片机的太阳能追随系统。当太阳光照充足的时候,系统进行光电检测,Arduino uno单片机控制着舵机随光转动,太阳能电池板进行追光运动,蓄电池不断地进行蓄电;当太阳光变暗的时候,蓄电池进行放电,从而点亮LED。太阳能追随系统,有效地提高了太阳能的利用率,达到节能的目的。
关键词:太阳能追随系统;Arduino uno单片机;太阳能电池板;节能
中图分类号:TP39 文献标志码:A
0 引言
如今,人们对能源的需求日益增大,不可再生能源不断地被消耗,能源问题逐渐成为人们重点研究的对象。随着科技的进步,大量的新能源不断地被开发与利用,有效地缓解了能源问题。作为清洁能源的太阳能,不断地被应用到生产生活中,比如新能源汽车、太阳能热水器、节能路灯以及光伏发电等。
国内外学者不断地研究如何更高效地利用太阳能,为此提出不同的设计方案。韩竺秦等[1]提出了基于STC89C52单片机的太阳能追踪系统,主要设计了驱动电路、检测电路以及太阳定位电路等。石玉军等[2]通过四象限光敏传感器探测太阳的位置,并利用STC89C52单片机控制步进电机运行,从而实现对太阳能的跟踪。随云飞等[3]开发了一套太阳能自动追踪系统,使得太阳能电池板和集热管垂直于太阳光线,实现较高的跟踪精度。韩悦等[4]基于STM32单片机设计追踪系统,通过角度追踪和光电感应方式全方位地追踪太阳能。邱锡强[5]基于STM32单片机研制了一种可移动的太阳能自动追踪装置,利用GPS模块和倾角传感器测量太阳和装置的角度。陈沛宇等[6]从机械结构方面设计了一种太阳能目标双轴追踪机械系统,将光电传感器和双轴追踪相融合,实现快速追踪太阳能。张双华等[7]为提高光电转换效率通过时控和光控方式跟踪太阳能,设计了一种高精度太阳能双轴跟踪系统。太阳能追踪系统可以应用到生活中,比如家用电器、汽车行业、农业等,充分利用新能源太阳能,减少了空气污染,改善了人们的生活环境。因此,研究和设计太阳能追踪系统具有很大意义。
本文提出了基于Arduino uno单片机的太阳能追随系统。软件设计部分,通过Arduino平台进行软件编程,并将编译无误的程序加载到Arduino uno单片机内,根据是否有太阳光判断是否进行光电检测,通过单片机控制着舵机和太阳能电池板的角度进行追光运动;硬件设计部分,本文设计了追随系统的电路并进行实物制作与调试,确保该系统可以达到实时追光的效果。当有太阳光照射时,光敏电阻模块给Arduino uno单片机提供信号,单片机控制着舵机和太阳能电池板进行追光运动,蓄电池持续蓄电操作;当光线变暗时,蓄电池进行放电,点亮LED。
1 太阳能追随系统的总体设计
基于Arduino uno单片机的太阳能追随系统的总体结构如图1所示,以光敏电阻模块为触发开关,Arduino uno单片机作为太阳能追随系统的主控芯片,搭载了舵机、太阳能电池板和蓄电池等模块[8]。该太阳能追随系统在有太阳光的时候可进行自动追光运动,提高了太阳能的利用率,达到了节能的目的。
基于Arduino uno单片机的太阳能追随系统的总体设计流程如下:
(1)当有太阳光照射到光敏电阻模块时,光敏电阻模块为Arduino uno单片机提供信号,驱动单片机运行。
(2)通过Arduino平台进行编程,并将程序加载到Arduino uno单片机内,控制着两个舵机追随太阳光进行水平运动和垂直运动。
(3)太阳能电池板随着舵机进行追光运动,并且太阳能电池板通过充电模块TP4056给蓄电池充电。
(4)当太阳光光线变暗时,舵机和太阳能电池板不再运动,蓄电池进行放电,从而点亮LED。
2 太阳能追随系统的软件设计
太阳能追随系统的程序是通过Arduino uno单片機在Arduino平台上编程实现的,其软件设计总体流程如图2所示。
根据是否有太阳光来判断程序是否进行光电检测,如果没有太阳光,程序进入初始化状态;如果有太阳光,经光电检测后设置两个舵机的水平和垂直运动的角度等参数。在Arduino平台编译好程序后,将程 序加载到单片机内,并调试舵机能否正常运行。为了消除舵机转动发生抖动的现象,进行了滤波处理。
3 太阳能追随系统的硬件设计
3.1 太阳能追随系统的电路设计
基于Arduino uno单片机的太阳能追随系统的电路原理是利用太阳光照射到太阳能电池板上方的光敏电阻模块时,舵机就会受到Arduino uno单片机的控制,实时地调整舵机的角度,进行追光运动,其电路原理如图3所示。
本设计选用的是5 V的太阳能电池板,将太阳能电池板一正一负接到电池充电模块TP4056输入上,再把充电模块输出接上充电的电池。当太阳光照射的时候,太阳能经处理后通过充电模块给蓄电池充电,蓄电池持续蓄电操作。
将PNP三极管8550的发射极接到充电模块OUT+,集电极经过一个10 Ω的限流电阻接上LED,三极管的基极和太阳能电池板的正极接在一起。当太阳光照射太阳能电池板时,太阳能电池板有电压,正极就是高电位给到PNP三极管的基极,三极管就被截止了,LED不亮,相当于给充电电池充电。当光线变弱的时候,太阳能电池板两端的电压就会逐渐降低,低到比较小的电压的时候,电池板的正极就相当于一个低电位,正极和三极管的基极相接,此时三极管导通。从充电电池里面流出的电流经过三极管和限流电阻,点亮LED,从而实现有光照时追光蓄电、光线暗时给LED供电的功能。
3.2 太阳能追随系统的硬件设计与实现
通过Arduino uno单片机控制两个舵机转动来实现系统自动追光的效果。当有太阳光照射时,光敏电阻模块检测到光线亮度,会给Arduino uno单片机提供信号。Arduino uno单片机控制舵机进行追光运动,太阳能电池板的方位随着舵机的运动而改变,達到实时追光的效果。
利用舵机来控制太阳能电池板运动时,使用两个舵机分别控制太阳能电池板的方位,从而进行垂直运动和水平运动,这两个舵机的布局如图4所示。两个舵机的运动范围是0~180°,在组装的时候要进行调整,防止在追光运动过程中舵机卡住,从而导致舵机损坏。由于舵机的工作角度受限,太阳能追随系统有时候停留的地方光线较弱,按下Arduino uno开发板上的红色按钮或者盾板上的RESET键重新寻找并跟随太阳光,从而实时掌握当前的坐标位置。根据照射角传感器的变化来调整定位角度,从而增强太阳能电池板的追光效果,提高了太阳能的利用率。
在制作实物时,实验器材的使用情况如下表所示,追随系统实物如图5所示。当有太阳光照射时,光敏电阻模块会给Arduino uno单片机提供信号,单片机发挥控制作用,舵机和太阳能电池板进行追光运动,蓄电池进行蓄电操作;当光线变暗时,舵机和太阳能电池板不运动,蓄电池不断放电,LED被点亮。表1为实验器材。
4 结语
本文设计了一种基于Arduino uno单片机的太阳能追随系统,提高了太阳能的利用率,达到节能的目的。当太阳光照射到光敏电阻模块上,Arduino uno单片机控制着舵机进行水平和垂直运动,太阳能电池板进行追光运动,并通过蓄电池进行蓄电操作;当光线变暗时,舵机和太阳能电池板不运动,蓄电池释放电能,从而点亮LED。太阳能追随系统有效地提高了太阳能的利用率,经研究后也可以应用到人们的日常生活中,比如太阳能电动车、太阳能充电宝以及太阳能风扇等,有效地缓解了能源问题,减少了空气污染,营造美好的生活环境。
参考文献
[1]韩竺秦,牛王元,李玉华,等.基于STC89C52的太阳能追踪系统设计[J].电子质量,2016(2):31-34.
[2]石玉军,刘振来,向根祥.太阳能追踪系统的设计[J].河西学院学报,2015(5):51-55.
[3]随云飞,赵建伟.太阳能自动追踪系统的设计与研究[J].山西电子技术,2016(4):82-83.
[4]韩悦,刘忠富,张可,等.基于STM32的多功能太阳能追踪系统[J].山西电子技术,2019(6):52-55.
[5]邱锡强.一种可移动太阳能自动跟踪装置的研制[D].成都:西华大学,2016.
[6]陈沛宇,欧阳华兵,何克劲,等.基于Arduino单片机的太阳能目标追踪系统设计[J].上海电机学院学报,2019(5):255-261.
[7]张双华,文小玲,邵鹏程,等.高精度双轴太阳能跟踪控制系统的设计[J].武汉工程大学学报,2018(3):315-319.
[8]蒋婵静,罗志荣.基于AT89S52芯片的LED路灯控制系统的设计[J].照明工程学报,2018(3):86-88.
(编辑 傅金睿)
Design of solar tracking system based on Arduino uno microcontroller
Wang Yu, Huang Kailiang, Yang Xiaoran, Deng Xudong
(Nanjing Normal University Taizhou College, Taizhou 225300, China)
Abstract: With the development of society, the research and application of new energy has become an inevitable trend. As a new energy, solar energy is a clean energy, but its utilization needs to be improved. In order to improve the utilization of solar energy, this paper proposes a solar tracking system based on Arduino uno microcontroller. When the sun is shining, the system performs photoelectric detection, the servo is controlled by the Arduino uno microcontroller to rotate with the sun, at the same time,the solar panel moves with the sun, then the battery keeps charging with the system tracking the sun;when the sun dims, the battery is discharged, so the LED is lit. The solar tracking system can effectively improve the utilization of solar energy and achieve the purpose of saving energy.
Key words: solar tracking system; Arduino uno microcontroller; solar panel;save energy