原文参考链接:https://www.instructables.com/ARDUINO-SOLAR-CHARGE-CONTROLLER-Version-30/

基础知识

  1. 适用于50W太阳能电池板为12V铅酸电池充电
  2. 目前市场上最先进的太阳能充电控制器是最大功率点跟踪(MPPT),与早期的充电控制器相比,其优点为:
    • 在低温下的效率提高了30%~40%,但与PWM充电器相比,MPPT充电控制器的制作比较复杂。
  3. MPPT电路基于同步降压转换器电路,将较高的太阳能电池板电压降低到电池的充电电压。Arduino通过控制占空比来最大化太阳能电池板的输入功率,以保持太阳能电池板在其最大功率点运行。
  4. 应具有过压保护
  5. 设计参考2:https://microcontrolere.wordpress.com/2016/12/16/mppt-solar-charger/

Basics on MPPT Charge Controller

MPPT充电控制器,用于在特定条件下从PV模块提取最大可用功率。
同步降压转换器:
开关频率与电感和电容的大小成反比,与MOSFET的开关损耗成正比。频率越高,电感和电容的尺寸越小,但开关损耗越高。
电感频率选用50Khz

设计计算

Assume We are designing for a 50W solar panel and 12V battery

  • Input voltage (Vin) =15V
  • Output Voltage (Vout)=12V
  • Output current (Iout) =50W/12V =4.16A = 4.2A (approx)
  • Switching Frequency (Fsw)=50 KHz
  • Duty Cycle (D) =Vout/Vin= 12/15 =0.8 or 80%
    电感Calculation
    L= ( Vin-Vout ) x D x 1/Fsw x 1/ dI
    上式中,dI为纹波电流,对于良好的设计,纹波电流的典型值在负载电流的30%~40%
  • Let dI =35% of rated current,dI=35% of 4.2=0.35 x 4.2 =1.47A
  • So L= (15.0-12.0) x 0.8 x (1/50k) x (1/1.47) = 32.65uH =33uH (approx)
  • Inductor peak current =Iout+dI/2 = 4.2+(1.47/2) = 4.935A = 5A (approx)
    So we have to buy or make a toroid inductor of 33uH and 5A.
    电容计算
    需要输出电容以最小化降压转换器输出端的电压过冲和纹波,大的过冲是由输出电容不足引起的。
  • The out put capacitor ( Cout)= dI / (8 x Fsw x dV)
    dV是纹波电压,Let voltage ripple( dV ) = 20mV
  • Cout= 1.47/ (8 x 50000 x 0.02 ) = 183.75 uF
  • By taking some margin, I select 220uF electrolytic capacitor.
    MOS选择
  1. Voltage Rating: Vds of MOSFET should be greater than 20% or more than the rated voltage.
  2. Current Rating: Ids of MOSFET should be greater than 20% or more than the rated current.
  3. ON Resistance (Rds on): Select a MOSFET with low ON Resistance (Ron)
  4. Conduction Loss: It depends on Rds(ON) and duty cycle. Keep the conduction loss minimum.
  5. Switching Loss: Switching loss occurs during the transition phase. It depends on switching frequency, voltage, current, etc. Try to keep it a minimum.
    在假设设计50W的太阳能MPPT控制器中,voltage(Voc) which is nearly 21 to 25V and the maximum load current is 5A,I have chosen the IRFZ44N MOSFET. The Vds and Ids value has enough margin as well as it has low Rds(On) value.
    MOS驱动器选择
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sp1sf0Zs-1676817679812)(null)]
    MOS驱动器允许来自控制器的低电流数字输出信号驱动MOS的栅极,5V数字信号可以使用驱动器切换高压MOS。
    Vout = Duty Cycle x Vin
    For example, if I give a 50% duty cycle to a 12 input supply, the output should be 6V in the scope.
    电压测量

    对于分压电路:
    Vout = R2/(R1+R2) x Vin
    Vin = (R1+R2)/R2 x Vout


参考2(重要)

https://microcontrolere.wordpress.com/2016/12/16/mppt-solar-charger/

接下来3个项目是博主推荐的链接

1.Arduino powered solar battery charger

原文链接:https://www.instructables.com/Arduino-powered-Solar-Battery-Charger/
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TcMOtWJo-1676817681208)(null)]
电流检测传感器采用ACS712
Q2是降压转换器的主开关MOSFET,Q3是同步开关MOSFET。MOSFET由U2驱动,U2是IR2104 MOSFET驱动器。IR2104从引脚2上的Arduino输入端获取PWM信号(Digital_pin_9),并使用它来驱动开关MOSFET。IR2104也可以通过将引脚3设置为低来关闭。由于Q2是NFET,它需要比作为太阳能输入的源电压高10V的栅极驱动电压。因此,IR2104使用由D2和C6制成的电荷泵电路来提升栅极驱动电压,以打开高侧MOSFET。D3是一个快速开关二极管,它应该在Q3之前开始导通,从而提高效率(增加1-2%)。
Q1防止电池在夜间放电。当Q2从电压通过D1导通时,Q1导通。R4将Q1栅极的电压耗尽,因此当Q2关断时。
L1是平滑开关电流和C8平滑输出电压的主电感器。
为了测量电池和太阳能电池板电压R2、R3、C1和R6,R7、C9被设置为分压器。在这种情况下,电容器C1和C9平滑信号中的任何脉冲,并向ADC提供干净的测量。C4是平滑任何输入电流脉冲的输入滤波电容器。
为了测量电池和太阳能电池板电压R2、R3、C1和R6,R7、C9被设置为分压器。在这种情况下,电容器C1和C9平滑信号中的任何脉冲,并向ADC提供干净的测量。C4是平滑任何输入电流脉冲的输入滤波电容器。
为了读取系统中的电流,有一个R分流电阻器。U1将两端的电压降放大100倍,并馈送给Arduino的ADC。
3个LED连接到微控制器的数字引脚,并用作显示充电状态的输出接口。
代码原理

  • 将当前输出功率与上一时刻进行对比,调节输出的PWM
  • 最大占空比设置为99.9%

ARDUINO SOLAR CHARGE CONTROLLER ( Version 2.0)

https://www.instructables.com/ARDUINO-SOLAR-CHARGE-CONTROLLER-Version-20/

本文作者的设计

Arduino 太阳能MPPT控制器设计参考相关推荐

  1. 基于bp神经网络的pid算法,神经网络pid控制器设计

    基于BP神经网络的PID控制器设计 参考一下刘金琨的<先进PID控制>这本书. 例子:被控对象yout(k)=a(k)yout(k-1)/(1+yout(k-1)^2)+u(k_1)其中a ...

  2. Arduino Uno微控制器采用的是Atmel的ATmega328

    参考:https://www.yiboard.com/thread-831-1-1.html 在本篇文章中,我们将详细介绍Arduino开发板的硬件电路部分,具体来说,就是介绍Arduino Uno开 ...

  3. 可以用api控制的电源开关_一种穿戴式系统电源控制器设计与实现

    随着电子及信息技术的突飞猛进发展,电子及信息技术产品体积更小.功耗更低.效率更高.功能更强大,这就为穿戴式系统设备的发展提供了技术可能.穿戴式系统要求其供电管理设备具有效率高.体积小等特点.本文介绍一 ...

  4. 基于 AHB 总线的 SRAM 控制器设计

    基于 AHB 总线的 SRAM 控制器设计 一.基于 AHB 的 sram 设计 1.总体设计框架 2.AHB总线传输协议 ①没有等待状态的单个读写操作 ②有等待状态的单个读写操作 ③连续读写操作 二 ...

  5. 太阳能MPPT充电控制板

    1.概念 MPPT控制器的全称"最大功率点跟踪"(Maximum Power Point Tracking)太阳能控制器,是传统太阳能充放电控制器的升级换代产品. 2.简介 我是搞 ...

  6. 二阶积分系统L1自适应控制器设计

    二阶积分系统极点配置 使用二阶积分系统设计的原因: - 二阶积分系统与四旋翼内环具有一定的相似性(动系下的角动量微分需考虑随动) - 二阶积分系统控制器设计相对简单,但包含L1设计需要考虑的全部内容 ...

  7. 基于 FPGA 的 UART 控制器设计(VHDL)(下)

    今天给大侠带来基于FPGA的 UART 控制器设计(VHDL)(下),由于篇幅较长,分三篇.今天带来第三篇,下篇,使用 FPGA 实现 UART.话不多说,上货. 之前有关于 Veriliog HDL ...

  8. HMI人机交互硬件设计参考

    MYD-Y6ULX-HMI 是米尔电子设计的基于 NXP 公司 i.MX 6UL/6ULL 系列处理器的嵌入式开发板.为 HMI 人机接口等应用提供尽可能完善的开发资源. MYD-Y6ULX-HMI ...

  9. 基于VHDL的全自动洗衣机控制器设计

    全自动洗衣机控制器设计 <数字电子技术>课程设计报告 <数字电子技术>课程设计任务书 设计内容与要求 1.概述 1.1EDA简介 1.2开发软件quartus简介 2.基本原理 ...

最新文章

  1. if(a==1且a==2且a==3),有没有可能为true?
  2. Android 中的Json解析工具fastjson 、序列化、反序列化
  3. 线性结构基本概念【数据结构】F
  4. 2019量子计算机上市公司,2019年第一炮:量子计算机终于来了!
  5. Dialog 基本使用
  6. 数据分类分级产品,一文详解
  7. 计算机属于电器还是学习用品,大学生必备的3件学习用品,学生表示:很实用!...
  8. 到底谁害了快播?或是服务器标准
  9. 中产需要盒马,盒马想要下沉
  10. J.U.C之AQS:CLH同步队列
  11. linux-Ubuntu-centos-deepin操作系统网卡驱动Realtek-RTL8111-RTL8168-rtlwifi-rtl8188-8192-8723-8821-免费下载---收集到的
  12. Ceph配置——5.Ceph-MON设置
  13. 离散数学复习笔记——图的着色
  14. 网络编程面试题:OSI模型是什么?/OSI模型介绍
  15. 也门亚丁一炼油厂爆炸起火造成数人受伤
  16. AD19-PCB常用规则设置
  17. 【2016读书】3月读书笔记
  18. 2019 斯坦福 CS224n 课程
  19. Android 仿微博的点赞上报功能,持续点赞再取消
  20. speedoffice(Excel)中表格怎样从竖向变成横向

热门文章

  1. 2021年维修电工证(高级)考试题库 职业技能鉴定职业资格
  2. Java解决主从数据库延迟问题_MySQL主从数据库同步延迟问题解决
  3. js跳转到谷歌play
  4. 《安富莱嵌入式周报》第262期:2022.04.18--2022.04.24
  5. docker tutorial报错unable to access ‘https://github.com/docker/getting-started.git/
  6. 怎么实现MindMapper中导图背景的添加
  7. 读书笔记《进化:如何成功突破舒适区?》
  8. 学习方法:如何在工作内外获得持续的技术成长
  9. VM虚拟机+本地服务器+配置静态IP+宝塔面板(详细过程)
  10. Cannot set LC_CTYPE to default locale 解决(make localedata/install-locales )