基于AT89C52单片机控制的双轴太阳自动跟踪系统设计

控制/MCU

1799人已加入

描述

太阳能是已知的最原始的能源,它干净、可再生、丰富,而且分布范围广,具有非常广阔的利用前景。但太阳能利用效率低,这一问题一直影响和阻碍着太阳能技术的普及,如何提高太阳能利用装置的效率,始终是人们关心的话题,太阳能自动跟踪系统的设计为解决这一问题提供了新途径,从而大大提高了太阳能的利用效率。

跟踪太阳的方法可概括为两种方式:光电跟踪和根据视日运动轨迹跟踪。光电跟踪是由光电传感器件根据入射光线的强弱变化产生反馈信号到计算机,计算机运行程序调整采光板的角度实现对太阳的跟踪。光电跟踪的优点是灵敏度高,结构设计较为方便;缺点是受天气的影响很大,如果在稍长时间段里出现乌云遮住太阳的情况,会导致跟踪装置无法跟踪太阳,甚至引起执行机构的误动作。

而视日运动轨迹跟踪的优点是能够全天候实时跟踪,所以本设计采用视日运动轨迹跟踪方法和双轴跟踪的办法,利用步进电机双轴驱动,通过对跟踪机构进行水平、俯仰两个自由度的控制,实现对太阳的全天候跟踪。该系统适用于各种需要跟踪太阳的装置。该文主要从硬件和软件方面分析太阳自动跟踪系统的设计与实现。

系统总体设计

本文介绍的是一种基于单片机控制的双轴太阳自动跟踪系统,系统主要由平面镜反光装置、调整执行机构、控制电路、方位限位电路等部分组成。跟踪系统电路控制结构框图如图1所示,系统机械结构示意图如图2所示。

AT89C52单片机

AT89C52单片机

任意时刻太阳的位置可以用太阳视位置精确表示。太阳视位置用太阳高度角和太阳方位角两个角度作为坐标表示。太阳高度角指从太阳中心直射到当地的光线与当地水平面的夹角。太阳方位角即太阳所在的方位,指太阳光线在地平面上的投影与当地子午线的夹角,可近似地看作是竖立在地面上的直线在阳光下的阴影与正南方的夹角。系统采用水平方位步进电机和俯仰方向步进电机来追踪太阳的方位角和高度角,从而可以实时精确追踪太阳的位置。上位机负责任意时刻太阳高度角和方位角的计算,并运用软件计算出当前状况下俯仰与水平方向的步进电动机运行的步数,将数据送给跟踪系统驱动器,单片机接收上位机送来的数据,驱动步进电机的运行。系统具有实现复位、水平方位的调整,俯仰方向的调整,太阳的跟踪及手动校准等功能。

硬件电路设计

1 跟踪系统驱动器接口电路

跟踪系统中微处理器选用89系列性价比高和功耗低的89C52。74HC14芯片是6非门施密特触发器,与P1.1和P1.2口相连,控制方位限位信号。74HC240芯片,八反相三态缓冲器/线驱动器,用于数据缓冲及总线驱动。系统使用两片74HC240芯片,通过P0口引脚控制,两片74HC240的16个输出引脚作为步进电机驱动电路的输入控制信号,分别控制步进电机俯仰方向和水平方位的正反转。系统与上位机的通信选用MAX485接口芯片,由P1.0口控制其收发状态。驱动器接口电路如图3所示。

AT89C52单片机

2 步进电机驱动电路

步进电动机是一种用电脉冲信号进行控制,并将电脉冲信号转换成相应角位移的执行器。在跟踪系统中,以74HC240的16个输出信号作为步进电机驱动器的输入控制信号,用以控制步进电机俯仰方向和水平方位的正反转。图4所示的是步进电机一路驱动电路图,系统共有四路驱动电路,分别驱动步进电机俯仰方向和水平方位的正反转。

其中,水平方位电机由D7,D6,D5,D4驱动;俯仰方向电机由D3,D2,D1,D0驱动。跟踪装置中步进电机选用42BYG250C型,步矩角1.8°。水平俯仰方向步进电机运行的最大角度是360°,共需运行20000步。减速器的传动比为1:100,即电机转动100°时水平转台相应转动1°。以步进电机1.8°的步距角计算,当镜面装置的水平转台转动1°时,步进电机发出100/1.8个脉冲,由此可以计算平面镜法向量的方位角为a时步进电机发出的脉冲数为100α/1.8个。步进电机动作频率可手动设置,默认情况下,步进电机每隔15s动作一次。

AT89C52单片机

3 限位信号采集电路

采用光电耦合器与电压比较器电路组成的微机步进电机限位电路,其电路图如图5所示。

AT89C52单片机

限位电路中利用双三态门来控制步进电机的脉冲通路。工作原理是:在到达限位位置之前,光耦导通,电压比较器LM393的反向输入端有信号,允许步进电机控制脉冲从此通过。当限位杆到达限位位置时,挡住了光耦的光通路,使LM393的反向输入端无信号,步进电机就停止。

软件设计

太阳自动跟踪系统的软件分为两部分,一是步进电机控制部分,主要由单片机完成。单片机的软件设计采用模块化设计的方法,主要分为如下几个软件模块:主程序模块、串行口中断处理模块、正常跟踪处理模块、串行口中断复位处理模块等。单片机主程序流程图如图6所示。

AT89C52单片机

软件的另一部分为PC机部分,PC机软件部分主要是负责任意时刻太阳位置的计算并运用软件计算出当前状况下俯仰与水平方向步进电机运行的步数,并将数据送给跟踪系统驱动器。与单片机通信的部分使用VC++中的MSComm控件来编译串口通讯的应用程序,采用MSComm32.OCX控件。使用控件的属性进行串口设置,使用控件的事件驱动进行串口响应,使用控件的方法完成串行口接收和发送数据。PC机通信流程图如图7所示。

上位机控制系统具有实现复位、水平方位的调整,俯仰方向的调整,太阳位置的跟踪、手动校准及计算当日数据等功能。其中“设置”按钮,可进行地方经纬度、波特率、步进电机动作频率等的设置。上位机可执行程序控制界面如图8所示,图9所示的是控制主界面下“设置”按钮的对话框。

试验观察数据分析

由于影响跟踪精度的因素很多,不仅跟当地纬度、太阳赤纬角、太阳时角的取值有关,还跟步进电机的精度以及跟踪转台的机械结构有关,因而需要对跟踪轨迹的程序进行校正。校正采用手动操作,通过控制水平俯仰方位步进电机,使两个轴带动平面镜反光装置转动,同时不断观察平面镜反射太阳光的影子,当影子中心刚好聚在指定点时为最佳,记录下从原点到该点两轴的步进电机各自走过的步数,根据实际运行步数与理论运行步数之差,可计算得到角度之差,就是高度角和方位角的修正值。校正可以选择任一天中几个不同时刻进行。系统在实际运行时,观察到太阳在正午至下午3点期间,高度角方位角变化曲线存在明显拐点,变化比较显著,在此期间内系统对太阳位置的跟踪存在误差。

表1中列出了2009年1月12日中午至下午三时左右的理论数据,并用系统的手动校准功能,记录下不同时刻的步进电机实际运行步数。

AT89C52单片机

为了更准确地得到太阳实际位置的参数修正值,应在春夏秋冬四季中不同时刻分别观测记录数据,将得到的一组高度角和方位角的校正值,拟合其曲线。用校正系数校正理论值存入控制程序,可以提高跟踪精度。

本文介绍的太阳自动跟踪装置可以有效地提高太阳能利用率,适用于各种需要跟踪太阳的装置。经过试验、测试和实际使用,各项指标均达到了设计要求。本文设计的太阳自动跟踪装置是基于视日运动规律,为使系统具有更高的跟踪精度,可采用光电传感器跟踪校正,构成由视日运动规律跟踪和传感器跟踪的混合跟踪系统。随着太阳能自动跟踪装置的广泛应用,它定会有助于提高绿色能源利用的进程,为环境保护和提高人民的生活质量做出更大的贡献。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分