当前位置: 首页 > news >正文

基于单片机的车载太阳能板自动跟踪系统研究

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 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&#xff0c;前端传的开始时间和结束时间是字符串&#xff0c;那么代码如何写&#xff0c;可以实现 时间段查询 2 实现 实体类里面的字段是String xml 里面是 </if><if test"startTime !null and sta…...

Mac电脑录屏软件 Screen Recorder by Omi 中文最新

Screen Recorder by Omi是一款屏幕录制软件&#xff0c;它可以帮助用户轻松地录制屏幕活动&#xff0c;并将其保存为高质量的视频文件。 该软件提供了多种录制选项&#xff0c;包括全屏录制、选择区域录制和单窗口录制等&#xff0c;同时提供了丰富的设置选项&#xff0c;如视…...

Android 接入ttf字体文件

一、业务实现 一些炫酷的App总会加一些App自己的字体。这时候需要找UI提供ttf字体文件。 然后实现 TTF&#xff08;TrueType Font&#xff09;字体文件并将其应用到 TextView。 二、大致流程 将 TTF 字体文件添加到你的 Android 项目中&#xff1a; 将 TTF 文件复制到 res/f…...

Java中各种数据格式-json/latex/obo/rdf/ turtle/owl/xml介绍对比示例加使用介绍

一、数据格式类型 这些文件名称似乎包含了不同的数据格式扩展名&#xff0c;如.json, .latex, .obo, .owl, .rdf, .turtle, 和 .xml。以下是对这些数据格式的简要解释和讲解&#xff1a; JSON (.json): JSON&#xff08;JavaScript Object Notation&#xff09;是一种轻量级数…...

计网note

目录 其他 未分类文档 应用层补充 分组交换和报文交换 TCP和OSI参考模型...

Mac版eclipse如何安装,运行bpmn文件

一、下载程序包 网址&#xff1a;https://www.eclipse.org/downloads M2芯片安装包名称&#xff1a;eclipse-jee-2022-12-R-macosx-cocoa-aarch64.dmg 具体安装包版本根据自己电脑型号选择 二、eclipse安装步骤 1&#xff09;双击下载的文件 2&#xff09;将eclipse拖入到…...

3D高斯泼溅(Splatting)简明教程

在线工具推荐&#xff1a; Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 3D场景编辑器 3D 高斯泼溅&#xff08;Splatting&#xff09;是用于实时辐射场渲染的 3D 高斯分布描述的一种光栅化技术&#xff0c;它允许实时渲染从小图像样…...

为什么要停止在 SpringBoot 中使用字段注,改用构造器注入

停止在 SpringBoot 中使用字段注入&#xff01; 本文为翻译文&#xff0c;同时加入了一些自己的理解&#xff0c;翻译来源&#xff1a;https://medium.com 在 Spring Boot 依赖项注入的上下文中&#xff0c;存在关于注入依赖项最佳实践的争论:字段注入、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、设备准备&#xff1a; &#xff08;1&#xff09;笔记本电脑 &#xff08;2&#xff09;手机 &#xff08;3&#xff09;触控一体机 &#xff08;4&#xff09;教室前端监控摄像机 &#xff08;5&#xff09;教室后端监控摄像机 &#xff08;6&…...

前沿重器[37] | 大模型对任务型对话的作用研究

前沿重器 栏目主要给大家分享各种大厂、顶会的论文和分享&#xff0c;从中抽取关键精华的部分和大家分享&#xff0c;和大家一起把握前沿技术。具体介绍&#xff1a;仓颉专项&#xff1a;飞机大炮我都会&#xff0c;利器心法我还有。&#xff08;算起来&#xff0c;专项启动已经…...

第三章: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的自动化程序时候&#xff0c;发现一个问题。 因笔记本配置较为差&#xff0c;所以每次初始化Selenium的WebDriver都会非常慢&#xff0c;整个等待过程是不友好的。 所以我就想到&#xff1a; 在程序中初始化一个全局的WebDriver对象&#xff0c…...

glibc 里的线程 id

这里讲的是通过 pthread_create() 函数返回的线程 id&#xff0c;其实就是 glibc 库里维护的线程id&#xff0c;它跟内核维护的线程 id 不一样&#xff0c;pthread_create() 返回的线程 id 并不一定是唯一的。我们看 pthread_create 函数的源码&#xff0c;它最后返回的线程 id…...

nacos的部署与配置中心

文章目录 一、nacos部署安装的方式单机模式:集群模式:多集群模式: 二、安装的步骤1、预备环境准备2、载安装包以及安装2.1、Nacos有以下两种安装方式:2.2、更换数据源数据源切换为MySQL 2.3、开启控制台授权登录&#xff08;可选&#xff09; 3、配置中心的使用3.1、创建配置信…...

undefined 与 undeclared 的区别?

在 JavaScript 中&#xff0c;undefined 和 undeclared 是两个不同的概念&#xff0c;表示不同的情况&#xff1a; 1&#xff1a;undefined&#xff1a; undefined 是一个特殊的值&#xff0c;表示一个变量已经被声明&#xff0c;但尚未被赋予一个值。当一个变量被声明但未进…...

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…...

【位运算】消失的两个数字(hard)

消失的两个数字&#xff08;hard&#xff09; 题⽬描述&#xff1a;解法&#xff08;位运算&#xff09;&#xff1a;Java 算法代码&#xff1a;更简便代码 题⽬链接&#xff1a;⾯试题 17.19. 消失的两个数字 题⽬描述&#xff1a; 给定⼀个数组&#xff0c;包含从 1 到 N 所有…...

Frozen-Flask :将 Flask 应用“冻结”为静态文件

Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是&#xff1a;将一个 Flask Web 应用生成成纯静态 HTML 文件&#xff0c;从而可以部署到静态网站托管服务上&#xff0c;如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

给网站添加live2d看板娘

给网站添加live2d看板娘 参考文献&#xff1a; stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下&#xff0c;文章也主…...

华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)

题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...

QT开发技术【ffmpeg + QAudioOutput】音乐播放器

一、 介绍 使用ffmpeg 4.2.2 在数字化浪潮席卷全球的当下&#xff0c;音视频内容犹如璀璨繁星&#xff0c;点亮了人们的生活与工作。从短视频平台上令人捧腹的搞笑视频&#xff0c;到在线课堂中知识渊博的专家授课&#xff0c;再到影视平台上扣人心弦的高清大片&#xff0c;音…...

虚幻基础:角色旋转

能帮到你的话&#xff0c;就给个赞吧 &#x1f618; 文章目录 移动组件使用控制器所需旋转&#xff1a;组件 使用 控制器旋转将旋转朝向运动&#xff1a;组件 使用 移动方向旋转 控制器旋转和移动旋转 缺点移动旋转&#xff1a;必须移动才能旋转&#xff0c;不移动不旋转控制器…...

使用ch340继电器完成随机断电测试

前言 如图所示是市面上常见的OTA压测继电器&#xff0c;通过ch340串口模块完成对继电器的分路控制&#xff0c;这里我编写了一个脚本方便对4路继电器的控制&#xff0c;可以设置开启时间&#xff0c;关闭时间&#xff0c;复位等功能 软件界面 在设备管理器查看串口号后&…...

21-Oracle 23 ai-Automatic SQL Plan Management(SPM)

小伙伴们&#xff0c;有没有迁移数据库完毕后或是突然某一天在同一个实例上同样的SQL&#xff0c; 性能不一样了、业务反馈卡顿、业务超时等各种匪夷所思的现状。 于是SPM定位开始&#xff0c;OCM考试中SPM必考。 其他的AWR、ASH、SQLHC、SQLT、SQL profile等换作下一个话题…...