基于stm32的太阳跟踪装置设计与制作
摘要
对绿色能源的开发和利用是响应我国节能减排,环保政策的举措,太阳能作为可持续,零污染,具有很高的环保价值和经济效益,高效利用太阳能还可以有效替代部分化石能源,从而降低因石化能源燃烧导致的污染,减轻雾霾。然而农村太阳能丰富,却没能得到很好的利用,即便现有的发电产品对太阳能电池板也大多采用固定支架。课题对此提出了能够跟踪太阳方向的云台支架,可实现太阳能电池板自动调节而始终面向光线最强的一面,提高太阳能发电的利用率。课题从云台,电机驱动,控制器,光线传感器,液晶显示等构成,课题成果不仅可以用到太阳能发电,还可以用到其它的向光场所,如天文观测等具有较高的实用价值。
关键词:太阳能;电机驱动;控制器;光线传感器;液晶显示屏

第一章 绪论
1.1 前言
随着时代的进步与科技的飞速发展,使得对能源的需求随之增加,对不可再生能源的过度依赖[1],从而使得不可再生能源的存储量急剧减少,一些不可再生能源(石油)被视为战略资源,据目前统计,煤炭、石油、天然气也会在岁月的实践中而日趋枯竭,消耗殆尽。这些不可再生能源的产生显然跟不上人类对其的需求,为更好的实现可持续发展,本课题提出了一种太阳追踪的可行方案,可以大大提升对太阳能的利用,减少对不可再生资源的过度依赖。
1.2 研究太阳能跟踪器的目的和意义
为了解决人们对不可再生资源的过度依赖和对清洁能源的高利用率。提出设计一款零污染高效率的装置——太阳追踪器。通过电机,控制器,采光板光线传感器等元器件之间的相互配合,实现对太阳光照射最强的方位,实现全方位无死角跟踪,恰巧正好急需这样一款具有安全、环保、高效率、以及取之不尽用之不竭的特点,也很方便就可以获取,如风能和潮汐能一样是绝对的无污染清洁能源,这也就很好的阐述了光能的可行性[2]。——对此提出太阳跟踪装置设计与制作。
1.3 对太阳能的认识
优点:太阳作为一个取之不尽用之不竭的能源。在《太阳能利用技术》[3]就有相关的提到,所到达地球表面能量等同于每秒向地球源源不断的投放了500万吨煤炭。阳光所到之处,皆为财富,免费使用的同时也不需要考虑任何的运输费用以及零污染等特性。
缺点:即便如此的看似完美无缺,也存在着两个致命性缺点[4]:一是能流密度很小;二是太阳的光照强度也会因为(天气、白夜等)因素的不同而有着很大的差距,很难长时间维持在恒定值,这也在一定程度上大大的影响了使用效率[5]。
1.4 太阳追踪器国内外现状与发展趋势
国外太阳追踪器:对太阳能的使用在两千零四年到两千零六年太阳能的发电量都是惊人的4961MW[6],在一九九七年,美国的Blackace研制了单轴追踪器,热接收率提高了百分之十五…,后期围绕高效率,轻质量展开。在太阳能游艇、太阳能飞机、太阳能瓦片等方面得到运用,也见证了太阳能利用的高效率性[7]。
国内太阳追踪器:在应用市场上面得到了不断扩张,对于太阳能追踪器的利用那也是一个相当热门的谈话主题,途径多年的经验,将其用在了太阳能热水器、太阳能路灯以及西部计划、利用太阳能发电、太阳能供暖等等[8]。
更多的往往是采用单轴跟踪的方式,相比之下更需要多轴,实现全方位无死角跟踪。
1.5 工作内容
针对不同条件下,提出了自动控制和手动调节的两种工作方式:

  1. 其中以“自动模式”概述:在自动追寻的过程中,会自动判断光的强度的大小,若下面光照强度大于上面光照强度,STM32单片机就会直接驱动上端电机向下翻转;以便于在下午太阳西落的时候,获得更多的光照,若上面光照强度大于下面光照强度,STM32单片机就会直接驱动上端步进电机向上运动;若上下两个方位的光照强度均等,上端步进电机不进行动作。在上下光照均匀,左右方向运动的情况,右方位的光照强度大于左方位,STM32单片机就直接驱动下方位第一个步进电机向左方位一定角度转动;若左方位的光照强度大于右方位的光照强度,STM32单片机就直接驱动下方位第一个步进电机向左方位进行运动;当左右方位采光度也保持几乎均应的时候光照,那么下方位的第一个电机也将保持不动。
  2. “手动模式”状态进行使用按键手动来完成设备状态的切换。四个按键对应控制电机完成:上、下、左、右的翻转动作。通过点动的方式来控制驱动步进电机的实际运动。
  3. 在给设备系统进行上电后,系统最初为“自动模式”,这样可以更好的在不受人为干预的情况下实现对太阳能的最大接收。

第二章 方案论证与系统设计

2.1 编译语言的选取
方案一:C语言
简洁紧凑、灵活方便;运算符的丰富性;数据结构的丰富性;结构式语言;语法局限性小,程序编写自由度大;通过对物理地址的直接访问,使得完全可以对硬件实现直接控制;程序执行效率高。
C语言面向过程,最主要的在于算法和数据结构。通过一个过程,对输入进行运算处理得到输出。
方案二:C++
C++语言是面向对象的语言,在C的基础上添加了面向对象、模板等现在程序设计语言的特性。拓展了面向对象设计的内容,使之更加符合现代程序设计的需要。
看似C++比C多了很多优点和特性,但C++并不是所有场合都适用,很多嵌入式开发系统,都只提供了C语言的开发环境,而没有提供C++的开发环境。很多C++语言不愿意干的脏活累活,C语言运行也不较快。而C++因为过于复杂,在这方面就稍逊一筹了。
方案三:Java
Java是一种解释性语言,Java人气极高,但其代码由于需要在运行前进行解释因此性能表现更差。C++会被编译为二进制形式,因此其能够立即运行且速度更快。两个程序都足够大、而且C++的代码经过优化,两者的速度差就会变得很显著甚至很惊人,C++会比java快很多。
从系统的复杂性出发来考虑,同时整个过程的计算量比较大,因此我选用了浮点数的计算方式,选用方案一作为整个系统编译方式。
2.2 控制系统总体方案选取
方案一:视日寻迹追踪模式
这样的一种模式,是基于天文学公式来得出太阳在不同时候的理论性的方位角和俯仰角,在后根据太阳每天在当地实际的运行轨迹位置编写控制算法程序,通过使用控制算法的方式来实现对太阳所在位置的计算,最后通过驱动太阳能板的两个步进电机来达到俯仰和方位上的转动。有点是对外界环境的依赖小,同是也存在弊端,那就是不管外界环境是何种天气,它都会以同样的工作方式运动,增加了不必要的能耗和元器件的寿命磨损。
太阳的俯仰角h和方位角A的两个位置参数,可表达如下所示:

δ为赤纬角,Φ是本地纬度,Ω表示太阳时角。
方案二:光电追踪模式
该模式的核心算法是利用光敏传感器对太阳位置进行检测。具体方法:在遮阳板两侧完全对称地安装光敏传感器,当太阳光垂直照射在太阳能光伏电池板上时,安装在两侧上的光敏传感器所产生的电信号相等,将这两路信号经过放大后送入比较器进行比较,此时不驱动步进电机进行转动。当太阳位置移动后,遮阳板对阳光进行遮挡,此时两侧的光敏传感器产生的电信号不相等,从而经过放大比较后产生差信号,电机开始运动,完成太阳跟踪过程。
通过两者的比较,选择方案二,简单易操作性,更适合被普及广泛使用,在同等使用条件下,最简方案,则是最优方案。
2.3主控系统选择
方案一:51单片机作为控制芯片。主要是表现在:主要控制参数是使用设置寄存器变量得以实现,在程序的修改方面,也是相当的方便快捷,成本也是相对低廉,性能与相对简单的太阳能跟踪装置系统匹配;数字化的控制系统,可以达到较高的精度。
方案二:采用FPGA这样的大规模可编程逻辑器件,FPGA都是基于SRAM,那么编程信息存储于SRAM中,这样的致命缺点就是在系统断电后信息会丢失,下次使用需要重新配置。
方案三:ARM作为一种高性能嵌入式系统。考虑到方案的可实行性,STM32可以很好的解决数据处理和控制功能,十分适用于太阳能跟踪,断电后信息不会丢失,可无限次使用。
结合本次设计的任务要求,以及上述三种方案的相对比较,最后选用方案三更适合本课题的设计标准,具体采用STM32F103C8T6。
2.4电机选择
方案一:选择步进电机,然而步进电机的最大优点就是可以精确地控制电机步数和角度,缺点是价格昂贵。
方案二:选择直流电机。价格便宜是它的一大亮点,通过减速齿可以提高扭力,具有更大的负载,电机的高精度控制直流电机达不到设计要求。
步进电机是将电脉冲转换成相应角位移或线位移的电磁机械装置。通过直接控制输入的脉冲数量,直接控制其启停,启动是速度快,步距角和转速只取决于脉冲频率,受外界影响因素小。因此,对于本设计任务要求,为更精确地完成对角度值的精度把控,更好地利用太阳能,因此我选用方案一作为本次课程设计的驱动电机。
2.5步进电机驱动系统选择
方案一:L298专业电机驱动模块的选择,这类驱动模块的操作方便以及接口简单同时他们既可以驱动步进电机,也可驱动直流电机。
方案二:三极管等分立元件搭H桥。亮点在于实惠,控制方式简单以及结构简单。缺点是电流的承载能力比较小,相同的驱动能力受到限制,分立元件则体积较大同时稳定性也得不到保证。
方案三:采用集成芯片,ULN2003。
达林顿管ULN2003,该芯片最多可一次驱动八块步进电机,本设计作用于两个步进电机,在实际的使用中,往往起着放点输出的作用用于驱动大负载的步进电机等。
本次设计综合考虑,依据实际设计需求,选择方案三作为步进电机的驱动系统。
2.6实体结构框架选择
方案一:两电机互相处以垂直状态,电机一是左右的转动而电机二是上下的转动,在不引入外界条件辅助设备的情况下会出现运动死角,从成本化出发是不可取的。
方案二:将两个电机由之前的垂直安装,改变为大于90°的安装,在不引入外部设备的情况下,可以很好的避开运动死角,从而可实现全方位无死角跟踪,综合上述情况选择方案二进行本次的实体结构设计。
2.2系统设计
2.2.1 单片机构成如下图:

图2–2–1 单片机构成示意图
控制方式:第一步就是将数据程序输入到输入设备里面,输入设备将程序传输给运算器CPU和存储器,各自程序都对应的传输到控制器里面,由控制器完成完成相互的指令传递,最后都是作用于输出设备,在输出设备上显示出来的结果就是最初程序所要表达的效果。
2.2.2 系统整体控制框图如下:

图2–2–2 系统整体控制框图
控制方式:完成整个驱动控制,第一步就是感光元件及光敏电阻传感器对外界光的采集,完成电压跟随,通过A/D转换,然后通过电压的比较,使用STM32F103C8T6单片机控制电机的驱动,最终完成不同电机在不同的光照强度情况下不同方向的运动,最后实现对光的最大化接收。

2.2.3 电机控制框图如下:

图2–2–3 电机控制框图
控制方式:通过光敏传感器对光的采集,实现了最后对电机运动方式的不同选择和控制。
1、当感光元器件第一组接受到的光照强度值大于其它三个方位的光照强度时,那么电机完成水平方向的电机正转,并返回最初状态。
2、当感光元器件第二组接受到的光照强度值大于其它三个方位的光照强度时,那么电机完成水平方向的电机反转,并返回最初状态。
3、当感光元器件第三组接受到的光照强度值大于其它三个方位的光照强度时,那么电机完成垂直方向的电机正转,并返回最初状态。
4、当感光元器件第四组接受到的光照强度值大于其它三个方位的光照强度时,那么电机完成垂直方向的电机反正,并返回最初状态。
当所有的感光元器件都处于接受管的均匀照射时,此时的光照强度几乎大小相等,也就电机的状态保持不运动。
2.2.4整体电路原理图如下:

图2-2-4 整体电路原理图
系统软件总体设计流程如图 2-2-4 所示。系统启动后,软件先进行初始化等工作,当程序初始化完成后,通过 感光元器件获得当前的光照强度,然后根据初始化的参数,控制步进电机将太阳能光伏板转动到理论的初始状态,预定方位。将太阳能光伏板转动到理论位置后,程序开始判断步进电机转动模式是手动模式还是自动,初始默认状态是自动跟踪模式。
当手动模式时,人为调整电机控制上下左右 4 个按键的状态,使得电机按照人们预想的方向进行运动,以此来得以控制四个方位的不同垂直转动和水平移动的俯仰角和方位角。当程序判断为自动模式后,开始自动读取检测电路的返回信号,当检测到是各个方位的光照强度值有较大的的差异是,那么单片机就发出控制指令控制步进电机进行转动,升压模块是为了给整个系统稳定供电而存在。

第三章 元器件介绍
3.1 系统硬件系统分析设计
3.1.1 STM32单片机核心电路设计
STM32单片机系列,处理器是基于ARM 7架构的32位,可以支持实时仿真的同时也可以实现跟踪的微控制器。对于本系统之所以使用STM32的原因便是,设计最初,要求达到的就并非最低成本与更小功耗,而是在实现规定的设计需求外,可以更好的为实验外的部分需求而提供更多的串口和扩展应用电路而选择,对于发展前景也相较于51有了更多的选择。
一、STM32的主要优点:

  1. 采用ARM架构的Cortex-M3内核
  2. 实时性能的优越无可厚非性
  3. 功耗控制的把握性
  4. 出众及创新的外设
  5. 集成整合的高度完善性
  6. 易于开发性,可以更好的快速投入市场使用
    二、STM32平台的选择可靠性:
    同平台的项目开发,STM32是最优之选,具体表现如下:
  7. 存储空间和管脚应用少到大存储空间和多管脚的过度
  8. 对于苛求性能的应用到电池供电的应用
  9. 对于简单应用到高端应用的过度
  10. 对软件和引脚的高度兼容性,也使得其具有了灵活多变性。
    STM32F103C8T6核心板接口电路图如下所示:

图3-1-1(a) STM32单片机核心板接口原理图
STM32单片机实物图如下图所示:

图3-1-1(b) STM32单片机核心板实物图
3.1.2 28BYJ-48步进电机ULN2003驱动电路设计
步进电机是通过电脉冲信号的采集,再者就是将其转换为角、线位移的开环控制电机,在正常的运行工作下,电机的启停是通过对脉冲信号的采集比较。步距角 是通过驱动步进电机,使其按照预定的角度和方向进行运动,通过位移量的控制从而使其达到对转动方向和转到角度的精确控制,以此达到对太阳光采集达到最大值化。
现如今步进电机在机械、数电模电等都已经涉及。相比直流电机而言,则交流电机在常规双环形脉冲信号电路所组成控制系统方可使用,其中涉及到了机械、电子等诸多专业知识。步进电机在系统中是作为执行元件,却在机电一体化行业得到了充分地认可,同时而是被广泛应用在各种自动化控制系统之中。
系统中选用4相5线的5V步进电机。
具体参数如下:

  1. 型号为28BYJ-48。
  2. 直径:28mm
  3. 电压:5V
  4. 步进角度:5.625 x 1/64
  5. 减速比:1/64
  6. 单个重:0.04KG
    使用普通uln2003芯片驱动,配套开发板使用也是可以的,可以进行直接插接。
    具体驱动电路原理图如下:

图3-1-2(a) 驱动电路原理图

图3-1-2(b) 驱动电路原理图

图3-1-2© 步进电机实物图
3.1.3 按键电路设计
按键控制相当于一种电子开关,通过控制按键的闭合与断开从而实现对电源腿短的控制,其内部原理主要是通过内部的金属弹簧片因受外力的作用而相对运动,按键在整个控制过程中占据着输入的主导地位,使其达到人机交互的结果,当按键被人为按下的时候,所对应的单片机引脚电平由高变为低电平,以此达到对系统发出手动输入指令。注意,按键个数可变。
其电路原理图如下图所示:

图3-1-3 按键电路原理图
在整个电路里面,也可以把电阻作为上拉电阻,以此达到对按键信号输出的稳定性控制,按键的个数是可以根据实际需求对其进行适当的增加与删减。
3.1.4 光照检测电路设计
本系统的感光元件是行业最新出现的光敏电阻元件,其制作而成的主要原材料是由硫化隔或者是硒化隔等半导体材料制成,工作原理是针对于内光电效应得以实现。在使用过程中电阻值会跟随着外部的光照强度的不同而随之呈现为正态分布,规律性变化。依据本系统中使用到的光敏电阻,针对于其的特殊性能,在现如今的如此高速发展的现代社会也将得到更为广泛的用武之地,通过四个光敏电阻的串联,达到分压的效果,同时也是起着对整个系统的一个保护作用。光敏电阻原理图如下:

图3-1-4 光敏电阻原理
3.1.5 TFT触摸彩屏1.44寸模块
TFT(Thin Film Transistor)也被称之为薄膜场效应晶体管,隶属于有源矩阵液晶显示器之一。然而对于TFT显示器,像素通过点脉冲直接控制,相当于对每个像素都有一个控制开关,也因此这样使得每个节点都是处于完全独立的状态,然而也可以实现对它进行连续控制,通过连续控制不仅提高显示器的在使用中的反应速度同时也可以实现对色阶的显示实现精确控制。TFT液晶显示屏的亮点是亮度好、对比度高等。
全新LCD模块,本模块是通用型的TFTLCD模块。
一、该模块有如下特点:

  1. 128×128的分辨率。
  2. 1.44寸彩屏。
  3. 驱动IC:ST7735。
  4. 色彩深度:16位(65K色)。
    二、接口定义
    表 3-1-5 接口定义表
    管脚顺序 管脚定义 功能阐述
    1 GND 电源接地端
    2 VCC 电源正极
    3 SCL SPI时钟输入
    4 SDA SPI数据输入
    5 RES 屏得复位
    6 DC 命令/数据选择
    7 CS SPI片选输入
    8 BL 背光控制输入
    三、模块实物图如下图所示:

图3-1-5 显示屏
原理图如下:

图3-1-5 显示屏原理图

3.1.6 太阳能发电路设计
太阳辐射能要通过光电效应或者化学效应来实现电能的转换,那么我们首先就要使用到可以吸收太阳光的太阳能电池板(Solar panel),其制作材料大部分依旧使用“硅”,对于其普通的干电池或者充电电池而言,最大的亮点则是节能环保零污染。
一、太阳能电池板结构组成

  1. 超白玻璃是一种具有在高透明性的低铁玻璃,透光率达到了惊人的91.5%,晶莹剔透、高贵典雅的特征,因此也被富裕了“水晶王子”的美称。
  2. 使用EVA作为固定钢化玻璃和电池片的原材料,对于使用中的EVA材质的好坏,这也会是直接影响到相关组件的使用寿命,当相关组件在自然情况下是全部裸露在自然化环境中,而空气中的容易色变,从而影响组件的透光率。
    晶体硅主要是分为多晶和单晶料是最主要的光伏材料,在市场中的占比也是惊人的达到了90%以上,然而在今后较长时间内也是主要是以硅作为太阳能电池板的主要材料,可将其相当不错的未来可预见性。
    实物图如下图所示:

图3-1-6(a) 太阳能电池板实物图
其电路接口原理图如下图所示:

图3-1-6(b) 太阳能电池板发电接口原理图
3.1.7 TP4056锂电池充电模块电路设计
TP4056锂电池充电模块是可以适用于USB电源和与适配器,其内部采用PMOSFET架构,再使用了防倒充电电路,因此不需要外接隔离二极管,防止电回流,TP4056是作为一种恒定电流/电压的可持续性充电模块,也是作为本次选择的有力依据。为了防止因为高温和大功率状态下对芯片的影响,选用TP4056可完成对电流大小的可控调节。
本模块特点:

  1. 板载TP4056锂电充电管理芯片。
  2. USB接头,可完成直接电脑或者外设通过USB口直接上电。
  3. IN+与IN-排针供电。
  4. 输入电压范围值:4V-8V,输出最大充电电流范围值:1000mA。
  5. 充电时红灯亮,充电完成蓝灯亮。
    TP4056锂电池充电模块接口原理图如下图所示,锂电池并联的电容是滤波作用,保证锂电池充电电压的稳定平稳输出。
    锂电池充电模块如下:

图3-1-7(a) TP4056锂电池充电模块接口原理图
TP4056锂电池充电模块实物图如下图所示:

图3-1-7(b) 锂电池充电模块实物图
3.1.8 USB-5V升压模块电路设计
本USB-5V升压模块,器件丝印为4X-NXH也称之为HX3001,是一款高效输出、恒定频率、PWM控制。其显著特点是低压0.9V低压启动,同时转换效率高达94%,中等功率运用,可提供我电压输出规格。此设计系统使用的既是升压模块将3.7V升压到5V的电压的转换过程。
三、使用说明

  1. 本模块USB母口输出5V直流电压,如果需要外接5V电源线,可以直接充USB母口座的5V正极焊盘或者模块正面特定位置电容一端跳线取线。
    实物图如下:

图3-1-8(a) 模块5V跳线取线图
2) USB-5V升压模块焊接时,可以直接用电源线直接焊接电源输入端,也可以插入单排针焊接后插在PCB板或万用板上。
下图就是USB-5V升压模块接口原理图,当我们将开关拨下后,系统中的升压模块得电开始正常工作,随之使3.3V锂电池电压升压到5V,相反则是升压模块不工作。电容的作用在系统中都是起着减小电压波动,让电压更平稳的输出。
接口原理图如下:

图3-1-8(b) USB-5V升压模块接口原理图
USB-5V升压模块实物图如下图所示:

图3-1-8©USB-5V升压模块实物图
3.1.9 分压电路设计
串联分压的原理:
在串联电路,不变的是电流大小处处相等,各个分支的电压之和为电压总和,即分电路电压从始至终都小于总电压,因此称为分压。
当所采集到的电压信号超过选择的A/D模块最大采集电压值,那么就在这时就需要采用分压电阻的形式来解决因电压过大而出现的溢出。
3.2 STM32 单片机系统软件设计
3.2.1 Keil程序开发环境
系统中所使用到的单片机开发环境是Keil,而与汇编相比,C语言的闪光点则是在可维护性、结构性、可读性、功能上,一目了然的逻辑框架,使得易学易用,在Keil的中,有着C编译器、链接器和库管理等在内的一整套而又完整开发方案,我们使用集成开发环境(μVision),把各个部分组合在一起。通过上面的基本诠释选择Keil那就是最后的选择,最好的选择。当然了运行Keil软件需要WIN98、WINXP等操作系统都是可以的。其中Keil有以下特点:

  1. Keil软件可以支持在WIN7、WIN8以及WINXP等多种操作系统,这也是给编译者程序员提供了及其丰富的库函数与功能强大的开发工具。
  2. Keil实现从编辑到编译到到连最后到调试的一整套开发流程。
    Keil软件界面如下图所示:

图3-3-2 Keil uVision5开发界面图
3.2.2 STM ISP程序烧录
STM ISP是用于stm32进行程序的烧录软件,可以实现通过直接下载单片机所用程序,同时也是完全支持编程的编写、程序的校验等。单片机开发板、下载器和PC连接完成后,第一步打开软件并选择对应的串口号,再者就是选择目标程序文件对应所在的地址,最后鼠标单击“开始变成(P)就可以完成对程序的下载”。
具体下载界面如下图所示:

图3-3-3 烧录软件下载界面
3.2.3 CH340串口程序烧写模块介绍
CH340串口烧写模块,通过USB接口相接,这使得可以实现与任何一台笔记本电脑的完成对STC系列单片机的程序烧写,通过此下载器的高性能和低成本的绝对优势,显然在本次STC系列单片机中的应用也将表现得格外独到。
一、CH340串口烧写模块特点:

  1. 支持 USB多种通信,非单一固定通信。
  2. 全面支持WIN98、VISTA、WIN7 等多种现目前常见的操作系统,适应性强。
  3. 采用USB接口直接供电。
  4. 在对芯片编程时,可自行供电也可以从USB口来获电。
  5. 新程序的编写不影响目标板的程序运行。
  6. 投射范围广,对于STC全系列芯片烧录支持的。
  7. 输出电压接口使用编程器提供3.3V与5V。
  8. 速度更快更稳定。
  9. 使用进口原装芯片,使得其能够在能高速稳定编程。
    模块如下图所示:

图3-3-4(a) CH340串口烧写模块
二、CH340串口烧写模块引脚说明

  1. TXD 接单片机的RXD引脚
  2. RXD 接单片机的RXD引脚
  3. GND 接GND。
    三、CH340串口烧写模块
    具体接线图如下表所示:
    表3-4-4(b) CH340串口烧写模块与单片机接线
    CH340模块 单片机开发板
    TXD 引脚PA10
    RXD 引脚PA9
    GND GND
    3.4 软件开发工具
  4. STC11F16XE单片机开发集成环境:Keil
  5. 单片机下载上位机软件:STM ISP下载器MCUISP
  6. PCB绘图软件:dxp
  7. 流程图绘画软件:WPS Office

第四章 系统测试

第五章 全文总结与展望
5.1 全文总结
整个系统使用了以STM32F103C8T6单片机作为核心板、太阳能板、锂电池充电、稳压电路、光敏采集电路、驱动电路、升压稳压模块、步进电机、按键电路组成。整个系统共计有光敏采集板与主控板和两块板子,以对应的连接线进行相互连接。其中光敏采集板主要放置光敏传感器,模拟太阳能板的运作;另外的主控板起着对显示器、电源接通管理、按键接通控制以及步进电机的相关驱动。
具体控制展现如下:
一、太阳能板将太阳光能进行收集,收集的同时进行光能与电能的转换,通过电路的稳压过程,将电传递给备用电池进行电量的储存,在干锂电池经过升压模块和稳压模块稳压到5V给整个系统供电,有单独的电源控制开关可以进行电源的通断控制。在给设备系统进行上电后,系统最初的默认形式为随太阳运动而运动的“自动模式”,还有就是可以通人为控制改为“手动模式”[9]也是可行的。
二、在系统通电的情况下不管是属于自动还是手动模式,此时的光敏电阻都会采集光线强度,并且在显示屏上面进行完美的显示出来,其中显示的效果为上、下、左、右四个方位。通过两个步进电机驱动来完成上下左右运动,将两个步进电机焊接在一块形成了一个角度多自由度的整体。两个电机都是通过连接线与主板进行的连接,通过光敏电阻对光强度的采集获得四个方位的不同关照强度值,最后通过与预计值的比较,最后来确定电机的运动轨迹[10]。
三、其中以“自动模式”为例:在自动追寻的过程中,会自动判断光的强高度的大小,若下面光照强度大于上面光照强度,STM32单片机就会直接驱动上端电机向下翻转;以便于在下午太阳西落的时候,获得更多的关照,若上面光照强度大于下面光照强度,STM32单片机就会直接驱动上端步进电机向上进行运动[11];若上下两个方位的光照强度均是大小相差无几,那么上端步进电机则不进行任何的动作。接下来就是对于当上下光照均匀左右运动的情况,若右方位的光照强度大于左方位的情况下,STM32单片机就直接驱动下方位第一个步进电机向左方位一定角度转动[12];若左方位的光照强度大于右方位的光照强度,STM32单片机就直接驱动下方位第一个步进电机向左方位进行运动[13];当左右方位采光度也保持几乎均应的时候光照,那么下方位的第一个电机也将保持不动。那么此时此刻设备的状态将是完全的禁止,STM32单片机将不对电机给出任何的运动指令[14]。
三、也可以切换为“手动模式”状态进行使用按键手动来完成设备状态的切换。四个按键对应控制电机完成:上、下、左、右的翻转动作。通过点动的方式来控制驱动步进电机的实际运动[15]。
四、当太阳能采集受限的时候,那么此时就使用外部电源USB充电模块对其进行锂电池上电,以保障系统的正常运行[16]。
1.44寸显示屏显示了光敏电阻采集光强的数值范围为0-1000,在实际应用过程中不管是处于自动还是手动模式下工作,光敏电阻都可以通过上、下、左、右四个方位来进行光的采集。其中通过两个不同维度的步进电机驱动来实现,既是上下翻滚和左右转动。上端步进电机与光敏采集板直接像粘接,两板通过连接线直接焊接而成。当然了对其的封装也是很有必要的完善过程。
5.2 后续工作展望
在原有的基础上还可以进行与外部设备进行搭配使用,比如在发电厂蓄电上的使用、对鱼塘中的制氧机进行提供供电、通过电红外传感器实现人走灯灭,蓝牙远程控制路灯等。

致 谢
时间很快,毕业设计已经开始接近尾声,几年的大学学习生涯即将告一段落,在后期的研究生生涯中希望可以得到更好的视野拓展。通过本次的设计,问题也是层出不穷,也是这些困难让我学会了成长,以前几乎自己一个人没有单独做过设计,因此也遇到C程序的编写这一大困难。慢慢的一切都会因人而解,吴导师的大力帮助,是很重要的一个环节。
从这次的毕业设计中,深刻的体会到学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次毕业设计中的最大收获。硬件只有多做,自己多搭建电路来调试才能真正的学得知识。
首先,我要感谢我的导师对我的悉心指导。他为我的毕业设计指导尽心竭力,他渊博的知识、平易近人的性格以及在设计上敏锐的洞察力,使我受益非浅。在整个毕业设计期间,老师时不时提醒着我,要做什么了,听在耳里,看在眼里更是记在心里。从最初的选题到后期的完成,少不了导师的教导。占用了老师的宝贵时间,得以最后完成论文。
在大学的几年学习生活中,感谢学院也感谢各位老师让我们有了获取知识的平台,结识了一帮有着共同爱好的朋友,我们大家共同学习,为完成毕业设计打下了基础——感谢得以与大家相识、相知、相惜。
谢谢大家!

参考文献
[1] 张翠华,范小振.《能源新视野》. [M]. Boston: Artech House, 2017 , 5-8
[2] 舟丹.太阳能发展利用进入新时代[J].中外能源, 2013 , 56-60
[3] 罗运俊.《太阳能利用技术》化学工业出版社[M]. 化学工业出版社, 2015 , 6-10
[4] 叶伟慧,廖才,石金强,陈国康. 基于单片机的跟踪式太阳能追光控制系统[J].北京:清华大学出版社, 2020, 01:44-45
[5] 郭欣. 太阳能双轴跟踪系统的研究与设计[J].装备制造与教育, 2017, 03 , 6-9
[6] 杨亚龙. 太阳能电池板自动追光系统研究与实现[D]. 长安大学, 2014 , 5-6
[7] 高绪昊. 太阳能跟随系统设计[J].硅谷, 2013 02
[8] 刘卿卿,俞强,赵毛毛,王竞雄. 基于STM32的光电式太阳跟踪系统设计[J]. 仪表技术与传感器, 2017, 01
[9] 李仁浩,龚思敏,杨帆. 基于单片机控制太阳能智能跟踪控制系统的设计[J]. 仪表技术与传感器.2015(04) :21-23
[10] 叶伟慧,廖才,石金强,陈国康.基于阳光方位探测器的太阳能收集板姿态调节系统 [J]. 仪表技术与传感器, 2011(03) :156-160
[11] 刘卿卿,俞强,赵毛毛,王竞雄.基于STM32的光电式太阳跟踪系统设计[J].仪表技术与传感器.2017(01)
[12] 李仁浩,龚思敏,杨帆,刘松,李小兵.基于单片机控制太阳能智能跟踪控制系统的设计[J].仪表技术与传感器.2015(04)
[13] 王定玲,夏美娟.太阳能自动跟踪系统设计[J].江苏科技信息. 2017(02)
[14] 申来明,杨亚龙.一种利用单片机实现太阳跟踪的设计方法[J].现代电子技术. 2014(10)
[15] 许义泉,王燕昌,王子文,慕松.赤道坐标系下新型太阳能自动跟踪装置设计[J].机械设计与制造. 2013(09)
[16] 闫云飞,张智恩,张力,代长林.太阳能利用技术及其应用[J].太阳能学报. 2012(S1)
[17] 王阳.太阳能电池板追光系统的研究[D].沈阳工业大学.2017
[18] Du Xiaoqiang,Li Yuechan,Wang Pengcheng,Ma Zenghong,Li Dangwei,Wu Chuanyu. Design and optimization of solar tracker with U-PRU-PUS parallel mechanism [J] IOP J.MECHMACHTHEORY.2020.104107
[19] Qingli HaidongLiu. Design of Solar Energy Automatic Tracking Control System Based on Single Chip Microcomputer [J]. IOP Conference Series Earth and Environmental Science March 2019
[20] Du Xiaoqiang, Li Yuechan, Wang Pengcheng, et al. Design and optimization of solar tracker with U-PRU-PUS parallel mechanism[J]. 2021, 155:104107

基于stm32的太阳跟踪装置设计与制作相关推荐

  1. 基于STM32的智能鞋柜设计与实现--“臭臭没了”

    Hello,大家好,我是阿金,本文仅供参考,提供一些建议.如有不对,还请指正.谢谢~ 随着5G网络的迅速普及,"万物联网"的时代指日可待.针对传统鞋柜及目前市场上现有的智能鞋柜功能 ...

  2. 智能手环功能模块设计_基于STM32实现智能手环设计

    龙源期刊网 http://www.qikan.com.cn 基于 STM32 实现智能手环设计 作者:付海生 陈婷婷 韩百科 涂曾兵 来源:<科学导报 · 学术> 2017 年第 10 期 ...

  3. 基于STM32的电子时钟设计

    基于STM32的电子时钟设计 1.设计目的 2.设计具体要求 3.proteus仿真图 4.程序代码 1.设计目的 (1)掌握使用KEIL MDK5进行软件开发的具体流程: (2)掌握硬件电路的设计方 ...

  4. 【毕业设计】基于STM32的智能路灯设计与实现 - 物联网 嵌入式 单片机

    文章目录 1 简介 2 绪论 2.1 项目背景 2.2 需求分析 3 系统设计 3.1 功能设计 3.1.1 系统角色分析 3.1.2 开发环境 3.2 总体设计 3.3 硬件部分 3.3.1 整体架 ...

  5. 【毕业设计】基于STM32 的电子计步器的设计与实现 - 物联网 单片机 嵌入式

    文章目录 1 简介 2 项目介绍 3 具体实现 3.1 整体架构 3.2 MPU6050 3.2.1 什么是MPU6050 3.2.2 MPU6050的特点: 4 如何实现记步 4.1 峰值判断记步法 ...

  6. 基于stm32单片机的电子称设计

    基于stm32单片机的电子称设计 **==完整论文和程序关注我获取==** 摘要 关键字 1 绪论 2 系统硬件方案设计 2.1系统总体设计方案比较与论证 2.2系统元器件选型及器件参数介绍 2.2. ...

  7. 基于STM32的智能储物柜设计

    本设计是基于STM32的智能储物柜设计,主要实现以下功能: 1.实现快递箱.快递员和客户之间的手机通信功能 2.实现设置6位密码.密码开锁 3.实现快递箱控制,区分箱体大.中.小 4.实现OLED显示 ...

  8. 基于STM32的微型电子琴设计

    基于STM32的微型电子琴设计 第一章 总体设计 1.1 系统功能 1.2 主要技术性能指标 第二章硬件设计 2.1 整体硬件图 2.2 按键模块 2.3 扬声器模块 2.4 显示模块 2.5 主控模 ...

  9. 基于 STM32的USB万用表设计

    该方案为一个可测量电流和电压的USB万用表. 特征: 主回路电压检测, D+电压检测 D-电压检测,温度检测检测 电源采用DC-DC和LDO 芯片最大耐压40V 最大设计为30V/6.5A 电流检测部 ...

  10. 智能灯控制页面用HTML编写,一种基于STM32的智能灯控制系统的制作方法

    本发明涉及电子系统控制领域,具体是一种基于STM32的智能灯控制系统. 背景技术: 随着我国教育业的发展,学校照明用电量急速增加,电能损失也呈现出增大的趋势.目前,国内外照明自动控制装置基本都采用被动 ...

最新文章

  1. 如何测量智能产品的AI智商水平,论AI的三种智商 |未来研究
  2. spring学习12 -Spring 框架模块以及面试常见问题注解等
  3. 项目开发总结:前端开发部分总结[兼容性、DOM操作、跨域等](持续更新)
  4. python 虚拟环境使用
  5. PHP7扩展开发(二):配置项与全局数值
  6. 国外程序员整理的 C++ 资源大全 (zt)
  7. 二分法(递归非递归)
  8. 【转载】推荐系统-矩阵分解-SVD-通俗易懂
  9. 众所周知,YouTube是个学习网站
  10. 详谈Windows消息循环机制
  11. codeforces gym-101755 D-Transfer Window 二分图匹配、递归
  12. 从图森未来的数据处理平台,看Serverless工作流应用场景
  13. Huawei eNSP 安装教程
  14. 全网最详细的HBase启动以后,HMaster进程启动了,几秒钟以后自动关闭问题的解决办法(图文详解)
  15. LDA主题模型原理解析与python实现
  16. Window Linux双系统安装 超详细教程
  17. 继CDH收费之后,这家公司率先推出了免费版大数据套件服务!
  18. 电脑版微信网络连接已断开,解决方案
  19. 女孩,请把第一胎留给丈夫!!!
  20. android学习总结(16.08.29)进度条控件ProgressBar和ProgressDialog

热门文章

  1. 软件测试基础知识大全(新手入门必备)
  2. 计算机辅助翻译 教学大纲,《计算机辅助翻译》本科课程教学大纲翻译本科
  3. qss之QRadioButton
  4. Novel-Ai本地部署教程
  5. vb adodb mysql_PHP_ADODB类使用,MySQL的例子PHP中最通用的数据 - phpStudy
  6. 实战-Android开机时间优化
  7. VR沙盘 日夜场景的制作(Unity2018)
  8. Windows XP 32位环境下VS2008+DDKXP驱动开发环境配置
  9. 架构之美第十三章-美丽的架构
  10. python gps坐标系utm坐标系等不同坐标系相互转换详细教材