基于单片机的车载太阳能板自动跟踪系统研究
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 CSDN 官方提供的联系方式
文章目录
- 概要
- 一、总体设计开发流程
- 二、机械结构设计与研究
- 3.1 机械系统总体设计
- 3.1.1 太阳能板折叠传动
- 三、太阳能自动跟踪系统硬件设计
- 仿真图
- 四、结论
概要
本论文的课题即为研究电动汽车如何利用太阳能板自动跟踪阳光解决传统太阳能板太阳能利用率低的问题。在汽车使用人群中,上班族占有很大的比例,在晴天长时间停泊时能够利用太阳能对电池能源进行补充是一个有着深远意义的课题。目前,如何最大效率地利用太阳能成为了大家探索的问题,由于地球的自转和公转,太阳与地球的两者的相对位置是持续变化的,本论文通过单片机控制太阳能板对阳光进行精准捕捉,使得太阳能入射光线能够在大部分时间内垂直太阳能板,以提高太阳能利用效率,大大提高了电能转化效率。综上所述,研发出一套在电动汽车上能够实现自动对阳光进行精准定位及捕捉的装置,对提高太阳能利用率、环境保护有着重大深远的意义。
一、总体设计开发流程
本课题的开发设计,总体分为3个部分,由机械机构、硬件和软件三个部分组成,机械部分关于机械结构展开折叠、电动推杆高度角的追踪和云台电机对方位角的追踪,硬件部分包括选用硬件类型,电路设计,以及电路仿真,软件部分包括系统控制总流程图,主程序编写以及子程序编写,程序编写完成后,编译输入硬件电路,仿真,观察电路显示状况,观察是否达标。
二、机械结构设计与研究
3.1 机械系统总体设计
对于机械系统的设计,本课题由于是在汽车上加载的太阳能自动跟踪系统机构,因此应该保证机械结构设计结构方便,轻量,易拆卸的主要功能,同时,机械结构是确保方案能正常实现功能的载体,机械系统的好坏直接影响了系统控制的精度。在本次设计中,设计方案抛弃了传统双轴的笨重与控制难度,能保证太阳能板展开面积的同时,解决了控制难的问题。
首先,展开机构由三个步进电机控制,控制太阳能板的展开与收回;太阳高度角的跟踪实现通过电动推杆的伸缩控制;太阳方位角的跟踪实现通过云台电机实现。

图3.1 装配图
通过CATIA的装配图,可直观看出机械机构的运动状态。
3.1.1 太阳能板折叠传动
本设计关于太阳能板折叠机构的研究,在设计前期,参考了众多太阳能板翻折的案例,与其翻折方法,由于太阳能板的特殊性,研究人员都尽可能增大其光照面积,但又必须考虑其体积影响,由此,延伸了许多种翻折结构;
目前,现代较为常用的翻折结构,一般有:(1)平板型;(2)轴心翻折型;(3)伞型;(4)轴心重叠型等;由于应用场景等限制因素,需自行选择展开方式。

本设计由于应用于常规汽车上,对于体积、重量、外形以及运动方式,都比较严格,所以本设计采用了平板式与轴心翻折式结合的方式进行改良,能很好的控制其空间体积,也能很好的减轻重量负担;本设计通过使用步进电机作为动力源,使用轴承、固定器,连接器、刚性轴等进行传动。

三、太阳能自动跟踪系统硬件设计
本设计是太阳能自动跟踪系统的研究,利用光电追踪作为主要追踪方式,并在扩大太阳能展开面积的方面,使用新型折叠方式,利用平面与翻折的方法结合;在追光系统方面,光电追踪作为如今研究技术较为成熟的追踪方式,技术与达成效果也是相当理想。现在控制领域里的控制系统和控制芯片有很多,它们有着自己的特点和优点以及适合使用场景。本文设计的是车载太阳能板自动追踪系统,所以需要控制系统满足控制稳定、能适应不良环境、体积小、抗电磁干扰能力强、价格合理、使用方便等特点。因此在本系统中,我们最终考虑选用单片机作为控制系统。因为单片机有着结构简单、控制功能强、可靠性高、体积小、价格低、低能耗、对数据的处理能力和运算能力
较强等特点。
根据设计方案,并且通过对比与参考,选择了一系列符合设计的元器件,在主控模块选择功能作用应用较为广泛的芯片AT89C51;信息采集输入器件选用一个光敏电阻作为检测天气光照强度的器件,另外选用四象限探测器用于判断大致太阳的高度角与方位角;选用PCF8591模块,进行信息采集,也就是A/D转换过程;利用ULN2003作为步进电机的驱动芯片;LCD1602液晶显示模块,对采集器的信息进行显示等。
仿真图

四、结论
本设计利用光敏电阻作为检测当时现场条件光照强度的元器件,在系统中,选用了四象限探测器作为识别太阳位置的检测元器件,探测器通过对比ABCD四个象限的光照感应值,并通过PCF8591实现A/D转换,输入电信号给单片机C51,单片机通过程序逻辑运算,给电机驱动模块传递信号,驱动相应电机,组成光电跟踪系统;由于光电追踪技术发展时间已经有一段时间,因此技术已经相对成熟。由于光电跟踪相对简单而且控制方便,系统在保证精准度的同时,也充分考虑了系统的简化程序。
相关文章:
基于单片机的车载太阳能板自动跟踪系统研究
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 CSDN 官方提供的联系方式 文章目录 概要 一、总体设计开发流程二、机械结构设计与研究3.1 机械系统总体设计3.1.1 太阳能板折叠传动 三、太阳能自动跟踪系统硬…...
前端传字符串的开始时间和 结束时间,数据库时间字段是 timestamp,Java 代码如何写
目录 1 需求2 实现 1 需求 数据库时间字段类型是timestamp,前端传的开始时间和结束时间是字符串,那么代码如何写,可以实现 时间段查询 2 实现 实体类里面的字段是String xml 里面是 </if><if test"startTime !null and sta…...
Mac电脑录屏软件 Screen Recorder by Omi 中文最新
Screen Recorder by Omi是一款屏幕录制软件,它可以帮助用户轻松地录制屏幕活动,并将其保存为高质量的视频文件。 该软件提供了多种录制选项,包括全屏录制、选择区域录制和单窗口录制等,同时提供了丰富的设置选项,如视…...
Android 接入ttf字体文件
一、业务实现 一些炫酷的App总会加一些App自己的字体。这时候需要找UI提供ttf字体文件。 然后实现 TTF(TrueType Font)字体文件并将其应用到 TextView。 二、大致流程 将 TTF 字体文件添加到你的 Android 项目中: 将 TTF 文件复制到 res/f…...
Java中各种数据格式-json/latex/obo/rdf/ turtle/owl/xml介绍对比示例加使用介绍
一、数据格式类型 这些文件名称似乎包含了不同的数据格式扩展名,如.json, .latex, .obo, .owl, .rdf, .turtle, 和 .xml。以下是对这些数据格式的简要解释和讲解: JSON (.json): JSON(JavaScript Object Notation)是一种轻量级数…...
计网note
目录 其他 未分类文档 应用层补充 分组交换和报文交换 TCP和OSI参考模型...
Mac版eclipse如何安装,运行bpmn文件
一、下载程序包 网址:https://www.eclipse.org/downloads M2芯片安装包名称:eclipse-jee-2022-12-R-macosx-cocoa-aarch64.dmg 具体安装包版本根据自己电脑型号选择 二、eclipse安装步骤 1)双击下载的文件 2)将eclipse拖入到…...
3D高斯泼溅(Splatting)简明教程
在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 3D场景编辑器 3D 高斯泼溅(Splatting)是用于实时辐射场渲染的 3D 高斯分布描述的一种光栅化技术,它允许实时渲染从小图像样…...
为什么要停止在 SpringBoot 中使用字段注,改用构造器注入
停止在 SpringBoot 中使用字段注入! 本文为翻译文,同时加入了一些自己的理解,翻译来源:https://medium.com 在 Spring Boot 依赖项注入的上下文中,存在关于注入依赖项最佳实践的争论:字段注入、Setter注入和构造函数…...
数据可视化:地图
1.基础地图的使用 如何添加颜色表示层级 代码实现 """基础地图的使用 """ from pyecharts.charts import Map from pyecharts.options import VisualMapOpts# 准备地图对象 map Map() # 准备数据 data [("北京市", 9),("上海市…...
java 数据结构 ArrayList源码底层 LinkedList 底层源码 迭代器底层
文章目录 数据结构总结ArrayList源码底层LinkedList底层源码 迭代器底层 数据结构 对于数据结构我这边只告诉你右边框框里的 栈的特点:后进先出,先进后出,入栈也成为压栈,出栈也成为弹栈 栈就像一个弹夹 队列先进先出后进后出 队列像排队 链表查询满 但是增删快(相对于数组而…...
如何在Python编程中应用Linux环境下的框架,以实现高效算法?
python是一种广泛使用的编程语言,能够帮助开发人员快速开发高效的算法。与此同时,linux环境下提供了许多优秀的框架,可以进一步提高Python编程的效率。本文将介绍如何在Python编程中应用Linux环境下的框架,以实现高效算法。 一、Python和Linux环境的优势 Python是一种易学…...
多机位直播案例
目录 1、案例简述 2、设备准备: (1)笔记本电脑 (2)手机 (3)触控一体机 (4)教室前端监控摄像机 (5)教室后端监控摄像机 (6&…...
前沿重器[37] | 大模型对任务型对话的作用研究
前沿重器 栏目主要给大家分享各种大厂、顶会的论文和分享,从中抽取关键精华的部分和大家分享,和大家一起把握前沿技术。具体介绍:仓颉专项:飞机大炮我都会,利器心法我还有。(算起来,专项启动已经…...
第三章:boundary-value analysis
文章目录 Boundary-value Analysiscomputational faults 计算错误boundary shift 边界偏移boundary value analysis 的优势Path condition, domain, and domain boundary (路径条件、域和域边界)Open and closed boundaries (闭合边界 / 开放边界)on / off pointGuidelinestr…...
Python模块psutil:系统进程管理与Selenium效率提升的完美结合
前言 在前面编写一个Selenium的自动化程序时候,发现一个问题。 因笔记本配置较为差,所以每次初始化Selenium的WebDriver都会非常慢,整个等待过程是不友好的。 所以我就想到: 在程序中初始化一个全局的WebDriver对象,…...
glibc 里的线程 id
这里讲的是通过 pthread_create() 函数返回的线程 id,其实就是 glibc 库里维护的线程id,它跟内核维护的线程 id 不一样,pthread_create() 返回的线程 id 并不一定是唯一的。我们看 pthread_create 函数的源码,它最后返回的线程 id…...
nacos的部署与配置中心
文章目录 一、nacos部署安装的方式单机模式:集群模式:多集群模式: 二、安装的步骤1、预备环境准备2、载安装包以及安装2.1、Nacos有以下两种安装方式:2.2、更换数据源数据源切换为MySQL 2.3、开启控制台授权登录(可选) 3、配置中心的使用3.1、创建配置信…...
undefined 与 undeclared 的区别?
在 JavaScript 中,undefined 和 undeclared 是两个不同的概念,表示不同的情况: 1:undefined: undefined 是一个特殊的值,表示一个变量已经被声明,但尚未被赋予一个值。当一个变量被声明但未进…...
Leetcode周赛370补题(3 / 3)
目录 1、找到冠军 Ⅰ- 暴力 2、找到冠军 Ⅱ - 寻找入度为0的点 3、在树上执行操作以后得到的最大分数 - dfs树 逆向思考 1、找到冠军 Ⅰ- 暴力 100115. 找到冠军 I class Solution {public int findChampion(int[][] g) {int ng.length;for(int i0;i<n;i){int cnt0;for…...
多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度
一、引言:多云环境的技术复杂性本质 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时,基础设施的技术债呈现指数级积累。网络连接、身份认证、成本管理这三大核心挑战相互嵌套:跨云网络构建数据…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...
Golang——7、包与接口详解
包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...
【深度学习新浪潮】什么是credit assignment problem?
Credit Assignment Problem(信用分配问题) 是机器学习,尤其是强化学习(RL)中的核心挑战之一,指的是如何将最终的奖励或惩罚准确地分配给导致该结果的各个中间动作或决策。在序列决策任务中,智能体执行一系列动作后获得一个最终奖励,但每个动作对最终结果的贡献程度往往…...
