(SKU:DFR0494)Raspberry Pi UPS HAT V2.0

来自DFRobot Product Wiki
跳转至: 导航搜索
Raspberry Pi UPS HAT

目录

简介

DFRobot Raspberry Pi UPS HAT是一款针对Raspberry Pi的不间断电源扩展板,兼容Pi 2/3/3B+/A+/ZERO/ZERO W。UPS HAT可以在系统断电的情况下持续为树莓派提供一定时间的供电,避免诸如用于路由等项目时经常因为突然断电导致系统损坏,有必要使用UPS进行安全的关机。另外在一些移动项目中,例如树莓派照相机、平板、野外数据采集系统中也需要一块电池提供稳定的电源。
我们使用了一颗MAX17043做精确电量检测,并且板载一颗MCU做数据处理,树莓派主板只需要通过基本的I²C通信就可以直接获取电量、电池电压等信息。板载5颗LED灯可以在无需编程的情况下直观的指示当前电池电量。
我们使用了非常好的电源方案,高达90%以上的电源转换效率以及无二极管设计使得我们的UPS扩展板即使在树莓派连续高负荷工作下也能够保持较低的发热。

技术规格

IMG1: Raspberry Pi UPS HAT尺寸图
  • 供电电压:4.5~5.5V
  • 供电电流:(推荐使用2A及以上功率的电源适配器)
  • 供电接口:Micro-USB
  • 最大充电电流: 1.6A
  • 电池接口:PH2.0-2P或可焊接触点
  • 适配电池:3.7V锂离子电池
  • 输出电压:5V
  • 最大输出电流:2A
  • 适配主板:树莓派 B/B+/2B/3B/3B+及可能的后续版本
  • 通信接口:I²C
  • 尺寸:65mmx56mm
  • 安装孔尺寸:58mmx49mm
  • 工作温度:-40℃~85℃

注意事项

1、3.7V锂电池由于运输限制,并不包含在配送清单中
2、请选择使用满足技术规格参数的3.7V锂离子电池
3、产品工作时电源区域会有正常的一定程度发热,请根据实际应用场景避免其可能带来的安全隐患

功能示意

  • 接口描述
IMG2: Raspberry Pi UPS HAT底部视图
IMG3: Raspberry Pi UPS HAT顶部视图












































序号 功能描述 状态描述
1 USB充电口 5V直流充电
2 充电指示灯 常量充电/闪烁未检测到电池/熄灭未充电
3 功能按键 固件版本更新及功能说明
4 电量指示 指示当前电量
5 锂电池焊接点 焊接锂电池
6 树莓派40Pin插口 连接树莓派


  • 灯显与电量关系
电量 LED灯状态(未充电时) LED灯状态(充电时)
电量<10% 第一格LED灯为慢闪(频率约为3HZ) 第一格LED灯为快闪(频率约为6HZ)
10%≤电量<20% 第一格LED常亮 第一格LED灯为快闪(频率约为6HZ)
20%≤电量<40% 第一格、第二格LED常亮 第一格LED常亮,第二格LED灯为快闪(频率约为6HZ)
40%≤电量<60% 前三格LED常亮 前两格LED常亮,第三格LED灯为快闪(频率约为6HZ)
60%≤电量<80% 前四格LED常亮 前三格LED常亮,第四格LED灯为快闪(频率约为6HZ)
电量≥80% LED全亮 前四格LED常亮,第五格LED灯为快闪(频率约为6HZ)


  • 固件版本更新及功能说明
版本号 变更日期 按键功能 其它
V1.0 2018/11/19 显示电池当前电量约10秒 当电池电量小于10%,5V电源输出将被自动断开。
V1.1 2019/09/20 1、短按显示电池当前电量约3秒。

2、长按(>2S)实现开、关5V电源输出。

当电池电量小于5%,5V电源输出将被自动断开。

寄存器说明

寄存器一览表
寄存器(8bit) 名称 读写 数据范围 默认值 描述
0x00 设备地址 R/W 1-127 0x10 I2C从机地址,默认地址为0x10,改变地址后,模块重新上电后新地址才生效
0x01 产品ID R 0xDF 用于产品校验
0x02 固件版本 R 0x** 0x10表示V1.0,0x11表示V1.1
0x03

0x04

电压值寄存器高位(VCELL_H)

电压值寄存器低位(VCELL_L)

R

R

0x00

0x00

LSB表示1.25mV,与电压值寄存器高位一起组成12位的电压值. 例:VCELL_H = 0x0A, VCELL_L = 0x50, VCELL =0x0A50 * 1.25 = 3300mV
0x05

0x06

电量值寄存器高位(SOC_H)

电量值寄存器低位(SOC_L)

R

R

0x00

0x00

LSB代表0.003906%电量。例:SOC_H = 0x3C,SOC_L = 0xFF,读出的电量值SOC = 0x3CFF * 0.003096 ≈ 60.99%


使用教程

  • 通过40Pin与树莓派连接
  • 通过树莓派读取电量

如何开启树莓派I2C外设

     一般情况下,树莓派系统默认没有开启I2C外设,需要手动进行开启,才能通过I2C总线访问DFRobot Raspberry Pi UPS HAT相关数据,如电池当前电量、设置定时开机时间等等。

  • 开启I2C外设功能

     在终端中输入命令: sudo raspi-config ,依次选择【 Interfacing Options 】(或者【 Advanced Options 】)->【 I2C 】->【 Yes 】->【 OK

step 1
step 2
step 3
step 4


     配置完成后重启树莓派生效(重启命令:reboot

  • 查看I2C外设是否配置正确

     用lsmod命令查看树莓派是否成功配置I2C外设,如下图所示:

step 5:成功导入I2C模块


  • 安装测试I2C设备的工具

     命令如下:

sudo apt-get install i2c-tools

     测试是否安装正确,命令:

sudo i2cdetect -y l
step 7:检测到总线上的I2C设备


     如果出现如下图所示问题

step 8:什么设备也没连接

则需要更改 raspi-blacklist.conf 配置, raspi-blacklist.conf /etc/modprobe.d/ 目录下,输入命令:

sudo nano /etc/modprobe.d/raspi-blacklist.conf

    在i2c设备驱动前加“#”,例如:#blacklist i2c-bcm2835,这样I2C外设就可以正常使用了。

查看UPS电量

  • 新建脚本

新建ups.py文件,输入内容如下:
import smbus
addr=0x10 #ups i2c地址
bus=smbus.SMBus(1) #i2c-1
vcellH=bus.read_byte_data(addr,0x03)
vcellL=bus.read_byte_data(addr,0x04)
socH=bus.read_byte_data(addr,0x05)
socL=bus.read_byte_data(addr,0x06)

capacity=(((vcellH&0x0F)<<8)+vcellL)*1.25 #容量
electricity=((socH<<8)+socL)*0.003906 #当前电量百分比

print("capacity=%dmV"%capacity)
print("electricity percentage=%.2f"%electricity)

  • 运行脚本

在终端中输入:python3 ups.py 即可查看电量信息。

常见问题

还没有客户对此产品有任何问题,欢迎通过qq或者论坛联系我们!


更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。


更多


DFshopping car1.png [Link DFRobot商城购买链接]

个人工具
名字空间

变换
操作
导航
工具箱