电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>使用Arduino Nano的电池容量测量设备

使用Arduino Nano的电池容量测量设备

2022-07-29 | zip | 0.11 MB | 次下载 | 2积分

资料介绍

PCB图如下:
pYYBAGLaAS6AcU6pAABDEOT421I572.jpg
poYBAGLaATCAdDbbAAB8WlqZlK4840.jpg
pYYBAGLaATOATL5_AACAdNCSIsc322.jpg
poYBAGLaATWANYGbAAA_krwRFeA831.png
pYYBAGLaATiASkZCAABg1yac1m0447.jpg
poYBAGLaATuAcnfKAACpA0bPaHg814.jpg
poYBAGLaAT2AJ8QIAACPWegm6Ho128.jpg

描述

一个完整的电池容量测量设备,使用 Arduino-Nano [Lithium-NiMH-NiCd]

特征:

识别假锂离子/锂聚合物/镍镉/镍氢电池

可调恒流负载(也可由用户修改)

能够测量几乎任何类型电池的容量(低于 5V)

易于焊接、构建和使用,即使对于初学者也是如此(所有组件均为 Dip)

LCD 用户界面

规格

电源:7V 至 9V(最大值)

电池输入:0-5V(max) – 无反极性

恒流负载:37mA 至 540mA(max) – 16 步 – 可由用户修改

电池容量的真实测量对于许多情况都是必不可少的。容量测量设备也可以解决发现假电池的问题。如今,假冒的锂电池和镍氢电池随处可见,无法满足其宣传的容量。有时很难区分真假电池。这个问题存在于备用电池市场,例如手机电池。此外,在许多情况下,必须确定二手电池(例如笔记本电脑电池)的容量。在本文中,我们将学习使用著名的 Arduino-Nano 板构建电池容量测量电路。我为浸入式组件设计了 PCB 板。因此,即使是初学者也可以焊接和使用该设备。

示意图

pYYBAGLaAUCALZ-BAACuGvgk-bk446.jpg

印刷电路板

pYYBAGLaAUKAIKcyAACpRouuwwE622.jpg

材料清单

poYBAGLaAUSAcK4QAADK81Hi5UM804.jpg

Arduino代码

 

#include  
#include 
 
常量 浮动Low_BAT_level = 3.2 ;
 
//3R 负载 (R7) 的电流步长
const  int Current[] = { 0 , 37 , 70 , 103 , 136 , 169 , 202 , 235 , 268 , 301 , 334 , 367 , 400 , 440 , 470 , 500 , 540 };
 
常量字节 RS = 2 , EN = 3 , D4 = 4 , D5 = 5 , D6 = 6 , D7 = 7 ;
常量字节 PWM_Pin = 10 ;
常量字节扬声器 = 12 ;
常量 int BAT_Pin = A0;
int PWM_Value = 0 ;
无符号 长容量 = 0 ;
int ADC_Value = 0 ;
浮动BAT_Voltage = 0 ;
字节 Hour = 0 , Minute = 0 , Second = 0 ;
布尔计算=假,完成=假;
 
LiquidCrystal lcd (RS、EN、D4、D5、D6、D7);
 
按钮UP_Button ( 16 , 25 , false , true ) ;
按钮Down_Button ( 15 , 25 , false , true ) ;
 
无效 设置()  {
 
  pinMode(PWM_Pin,输出);
  pinMode(扬声器,输出);
 
  模拟写入(PWM_Pin,PWM_Value);
 
  UP_Button.begin();
  Down_Button.begin();
 
  lcd.setCursor( 0 , 0 );液晶显示器开始( 
  16、2 );
  lcd.print( "电池容量" );
  lcd.setCursor( 0 , 1 );
  lcd.print( "测量 v1.0" );
  延迟(3000);
  lcd.clear();
  lcd.print( "加载调整:向上/向下" );
  lcd.setCursor( 0 , 1 );
  lcd.print( "0" );
 
}
 
无效 循环()  {
  UP_Button.read();
  Down_Button.read();
 
  if (UP_Button.wasReleased() && PWM_Value < 80 && calc == false )
  {
    PWM_Value = PWM_Value + 5;
    模拟写入(PWM_Pin,PWM_Value);
    lcd.setCursor( 0 , 1 );
    lcd.print( "" );
    lcd.setCursor( 0 , 1 );
    lcd.print(String(Current[PWM_Value / 5 ]) + "mA" );
  }
 
  if (Down_Button.wasReleased() && PWM_Value > 1 && calc == false )
  {
    PWM_Value = PWM_Value - 5 ;
    模拟写入(PWM_Pin,PWM_Value);
    lcd.setCursor( 0 , 1 );
    lcd.print( "" );
    lcd.setCursor( 0 , 1 );
    lcd.print(String(Current[PWM_Value / 5 ]) + "mA" );
  }
  if (UP_Button.pressedFor( 1000 ) && calc == false )
  {
    数字写入(扬声器,高);
    延迟(100);
    数字写入(扬声器,低);
    lcd.clear();
    定时器中断();
  }
 
}
 
无效 定时器中断()  {
  计算 =真;
  而(完成==假){
    第二个++;
    如果(第二 == 60){
      第二 = 0 ;
      分钟++;
      lcd.clear();
    }
    如果(分钟 == 60){
      分钟 = 0 ;
      小时++;
    }
    lcd.setCursor( 0 , 0 );
    lcd.print(String(Hour) + ":" + String(Minute) + ":" + String(Second));
    lcd.setCursor( 9 , 0 );
    ADC_Value = 模拟读取(BAT_Pin);
    BAT_Voltage = ADC_Value * ( 5.0 / 1024 );
    lcd.print( "V:" + String(BAT_Voltage));
    lcd.setCursor( 0 , 1 );
    lcd.print( "BAT-C: 等等!..." );
 
    如果(BAT_Voltage < Low_BAT_level)
    {
      lcd.setCursor( 0 , 1 );
      lcd.print( "" );
      lcd.setCursor( 0 , 1 );
      容量 = (小时 * 3600 ) + (分钟 * 60 ) + 秒;
      容量 = (容量 * 电流 [PWM_Value / 5 ]) / 3600 ;
      lcd.print( "BAT-C:" + String(容量) + "mAh" );
      完成 =真;
      PWM_Value = 0 ;
      模拟写入(PWM_Pin,PWM_Value);
      数字写入(扬声器,高);
      延迟(100);
      数字写入(扬声器,低);
      延迟(100);
      数字写入(扬声器,高);
      延迟(100);
      数字写入(扬声器,低);
    }
 
    延迟(1000);
  }
}

 

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费