• 收藏
  • 加入书签
添加成功
收藏成功
分享

基于AT89C51控制的太阳能逐日智能小车设计与实现

黄程远 董学良 崔雅嵩
  
格调·教育创新
2022年6期
吉林工程技术师范学院 吉林长春 130000

打开文本图片集

摘要:本设计介绍一种基于单片机控制的太阳能智能小车,采用AT89C51芯片为主要控制元件。在太阳能电池板上安装光敏元件,通过光敏元件接收外界光照信息,将检测到的信息传入单片机处理并输出信号控制逐日云台带动太阳能板向光源位置旋转,从而实现光照追踪。单片机控制驱动电机、避障模块、循迹模块,实现小车沿固定轨迹行走,完成太阳能逐日及避障循迹功能。太阳能电池板可为蓄电池、驱动电机供电,真正实现零排放,更加节能环保。

关键词:太阳能电池板;太阳能逐日;AT89C51避障;循迹

0引言

随着科学技术的发展,人们在对太阳能的开发利用极为重视。太阳能作为一种可再生的清洁能源,可运用于各行各业。而循迹小车作为一种小型的智能车,广泛应用于各行各业。本设计提出一种可以利用太阳能为整车供电,并且自主实现避障和循迹的智能小车设计方案,本文以AT89C51为控制核心、逐日云台、驱动电机等其他传感器组建硬件系统。单片机发出相应的控制指令,从而实现小车自动循迹、避障及逐日功能。

1.系统设计思路

本文设计的太阳能逐日智能小车硬件主要包括:太阳能电池板、光敏元件、驱动电机、逐日云台、PCF8591芯片、ULN2803芯片、AT89C51单片机、太阳能充电模块、超声波避障模块和红外循迹模块。该小车通过AT89C51单片机控制。当外界光照充足时,太阳能电池板将光能转换为电能,为蓄电池充电也可为小车整体提供电能。太阳能电池板安装在逐日云台上,通过太阳能电池板上安装的光敏元件进行感光,逐日云台接收信号后可自动旋转与光照方向垂直。驱动模块、避障循迹模块接收单片机传来的信号,感应路面轨迹辨别方向。在遇到障碍物时,避障模块发出信号使小车能够停止或换向。具体方案:小车以AT89C51为核心,运用传感器进行工作。逐日云台、太阳能电池板及光敏元件通过支架安装在车顶。太阳能电池板,通过光敏元件感知光源所在方向并将光照信号传送给PCF8591芯片经过数模转换后传送给单片机,单片机发出信号给ULN2803芯片使逐日云台旋转,实现自动追踪光照,可实现光能利用率最大化。太阳能电池板吸收太阳光照,将太阳能转化为电能可为蓄电池充电。光敏电阻通过PCF8591芯片向单片机传输信息,单片机分别向逐日云台、驱动模块、避障模块及循迹模块发送信号,实现小车自动逐日、避障、循迹。系统整体结构如图所示:

2.系统硬件设计

2.1驱动模块

小车采用步进电机驱动车轮运动。步进电机是一种将电脉冲信号转换成相应角位移或线位移的电动机。步进电机的转换精度高、驱动电路简单,动作精确,能够快速启停,适合精确定位的控制系统。电机的启停的位置和速度通过单片机发出的脉冲信号个数作为反馈,实现电机的控制。小车系统中单片机发送信号给驱动模块,由驱动模块直接控制步进电机。驱动模块采用L298N作为电机驱动,具有稳定性好、响应频率高、控制简单的特点,且L298N具有过热自断和反馈检测功能,可以更好的保护硬件电路。驱动原理图如下图所示:

2.2循迹避障模块

循迹模块采用红外传感器设计实现。采用红外发光管与接收二极管,发射管发射出一定频率的红外线,当检测方向遇到障碍物时,红外线反射回来被接收管接收,经过比较电路处理之后,输出指示灯会亮起,同时信号输出接口输出一个人低电平数字信号。利用黑白线对红外线不同的反射能力,通过光敏二极管,接收反射回的不同光强信号再把不同光强转换为电流信号。

TC端是电压比较芯片工作控制端,为高电平时,发光二极管不工作,传感器休眠,为低电平时,传感器启动。当传感器检测到黑线时,黑线吸收大量的红外线,反射的红外线很弱,光敏二极管不导通,输出高电平;当传感器检测到白线时,与黑线相反,反射的红外线很强,光敏二极管导通,输出低电平。单片机直接对接收到的信息进行判断,是否检测到障碍物,并通过对检测到的信息进行分析来决定小车的运动方向。

避障采用超声波避障模块,将超声波避障模块与舵机固定,一起安装在车体前部,通过单片机控制,超声波发射器向某一方向发射超声波,在空气中传播途中碰到障碍物就立即返回,利用舵机进行范围检测。并将超声波避障模块与蜂鸣器结合,当与障碍物距离小于30cm时,超声波避障模块在检测到障碍物的同时蜂鸣器会自动报警,从而实现避障功能。

2.3光照采集系统设计

本设计将逐日系统应用于太阳能逐日智能小车,太阳能逐日系统由逐日云台、太阳能电池板、光敏元件组成。当外界光照充足时,太阳能电池板直接为小车供电。当外界光照方向改变时,太阳能电池板上的光敏元件会感应光照方向,并将信号传送给PCF8591芯片经过数模转换后将信号传送给单片机。单片机接收信号并发出指令通过ULN2803驱动芯片使逐日云台旋转,直至太阳能电池板与光照垂直。

将光敏元件安装在太阳能板上用于感光,光敏元件中有四个性能参数相同的光敏电阻,在黑暗环境里,光敏电阻阻值很高。当受到光照时阻值会降低。在AC端接一个稳定的电源输入,R1、R2用来测量东、西方向的光照强度。当东西方向光照均匀时,R1、R2受到光照相同,其阻值也相同,则B点电压就是AC端的一半。将A端接地,C端接5V电源,当东西光照均匀时UBA=2.5V,当R1所在方向光照强时,UBA<2.5V,当R2所在方向光照强时,UBA>2.5V。R1在西边R2在东边,则单片机检测到UAB的大小就可以判断出光源所在的东西方位。如图所示:

2.4逐日云台设计

逐日云台可控制太阳能板使其向光照位置运动,逐日云台主要由两个步进电机和支架组成,光敏元件感光将信息通过芯片PCF8591进行数模转换,将数据传送给AT89C51单片机,单片机处理后将信息输出给ULN2803驱动芯片控制逐日云台的两个步进电机带动太阳能电池板运动,直至太阳能电池板与光照方向垂直。

2.5蓄电池充电系统设计

太阳能电池板与太阳能充电模块连接,太阳能充电模块与蓄电池连接。从而实现太阳能电池板给蓄电池充电。单片机产生PWM波形通过控制三极管Q4的基极进而控制Q3的栅极电压,控制MOS管的通断给蓄电池充电。改变PWM方波的占空比,可调节蓄电池充电电压进而控制蓄电池充电电流。在供电系统中,太阳能电池板提供电能。如果内阻不变,只须内阻与外阻相等即可得到最大输出功率,但在实际当中这是不可行的,由于太阳能电池板的内阻容易受到负载、环境温度、日照强度等外在因素的影响,因此根据此法不可能获得最大输出功率。为了提高系统能量的利用率,可以通过最大功率点跟踪来实时获得最大输出功率。常用的方法实在光伏阵列和负载之间串联最大功率点跟踪电路,当蓄电池接入后,升压电路的输出基本不变,因此当改变加在MOS管控制栅极的脉冲宽度时可以改变太阳能电池板的输出电压。通过MPPT控制算法使太阳能电池板给蓄电池充电时利用率最大,当蓄电池电压超过一定电压后,关断Q6,防止过充,如图:

系统主要是用天文公式计算出最大功率点跟踪,在分析太阳运动轨迹的基础上,确定光伏组件摆放的角度,要想太阳光精确垂直的照射到组件上,实现高精度跟踪,计算的精准性尤为重要。

最大功率点是通过MPPT控制器控制,能够实时侦测太阳能板的发电电压,使系统以最大功率输出对蓄电池充电。可根据相关公式计算最大功率:

3.程序设计

通过AT89C51单片机控制,将数字信号发送至各个模块,从而驱动小车,这要通过C语言编程来实现。因为C语言相较于其他汇编语言简单,且适配于所使用的单片机。光敏电阻接收光照将模拟信号传送给PCF8591芯片,经过模数转换后将信息输入给单片机,单片机将信号处理后输出给ULN2803驱动芯片,实现逐日功能,部分程序如图所示:

逐日云台软件设计流程图如图所示,首先读取水平方向电压U1和U2,判定U1和U2是否相等,若不相等,调节垂直方向电机直至U1、U2相等;然后继续读取水平方向电压U3和U4并判定是否相等,若不相等,调节水平方向电机直至U3、U4相等,待机定计时启动后,结束程序。其中,待机定时器是常闭状态。

4.结语

本文设计一种带有太阳能逐日充电并能沿着固定轨迹自动行驶与避障的智能小车。以AT89C51单片机为核心控制器,通过PCF8591芯片模数转换将信号传送给单片机,单片机输出信号给ULN2803芯片从而实现太阳能逐日功能,太阳能电池板通过太阳能充电模块给蓄电池充电,保证了智能小车的续航。本设计为小车增加了逐日系统由于MPPT及最大功率点跟踪的应用,小车能够自主的跟踪光照,通过计算,能够最大化的对光源进行利用。

参考文献

[1]杨潞霞,安琪霞,曹砚江. 基于Arduino的智能循迹小车的设计与实现[J]. 电子测试,2022(1):19-22. DOI:10.3969/j.issn.1000-8519.2022.01.004.

[2]杨佳义. 自动循迹小车控制系统设计[J]. 南方农机,2022,53(6):50-53. DOI:10.3969/j.issn.1672-3872.2022.06.013.

[3]王利平,黄健. 一种新型循迹小车的研制[J]. 微特电机,2018,46(1):56-58,62. DOI:10.3969/j.issn.1004-7018.2018.01.015.

[4]巫帮锡,李政,廖杰,等. 循迹小车的设计与研究[J]. 科技与创新,2019(18):90-91,93. DOI:10.15913/j.cnki.kjycx.2019.18.036.

[5]巫帮锡,李政,廖杰,陈熵,李旭.循迹小车的设计与研究[J].科技与创新,2019(18):90-91+93.DOI:10.15913/j.cnki.kjycx.2019.18.036.

[6]于雷,支语睿,朱一凡. 基于STM32的智能循迹小车设计[J]. 赤峰学院学报(自然科学版),2019,35(4):108-110. DOI:10.3969/j.issn.1673-260X.2019.04.034.

[7]任晓芳.PCF8591在数据采集过程中的应用[J].自动化应用,2015(10):42-43.

*本文暂不支持打印功能

monitor