UPS Module Mini

来自Waveshare Wiki
跳转至: 导航搜索
UPS Module Mini
{{{name2}}}
{{{name3}}}
功能简介
特性 不间断电源扩展板
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 I2C

产品概述

这是一块非常迷你的不间断电源(UPS)模块,支持同时充电和放电,可提供稳定5V电压输出,支持I2C通信,可以获取电池的电压、电流、功率跟充电状态等信息。

特点

  • 迷你 UPS 扩展板,方便焊接或集成到小车设计、工控设备中
  • 可通过 I2C 接口通信,测量电池电压、电流、功率和剩余电量等参数,实时检测模块工作状态
  • 板载多个功能引脚,并提供了焊盘跟排针两种充放电方式
  • 板载电池保护电路,防过充、防过放、防过流、防短路和防反接,均衡充电,工作稳定更安全
  • 板载 5V 稳压芯片,连续输出电流可达 2.5A
  • 板载警示指示灯,方便查看电池是否接反和充电状态
  • 提供完善的配套资料手册

产品参数

  • 输出电压:5V
  • 充电电源:5V
  • 控制接口:I2C
  • 电池规格:350mAh 10440 锂电池 3.7V
  • 产品尺寸:61 × 38mm

硬件说明

引脚名 描述
IN 电源输入 (5V 3A)
OUT UPS 输出(5V 2.5A)
GND 电源地
UPS OFF UPS 关闭 (连接 PWR 时 UPS 关闭)
BOOT 电池激活 (拉低 500ms 后拉高即可)
CHARGE 充电指示 (低电平表示正在充电)
SCL I2C 时钟
SDA I2C 数据
PWR UPS 开关 (连接 UPS OFF 时,关闭 UPS 输出)

注意1:首次接上电池需要注意WARNING LED灯是否亮,如果LED亮则表示对应的电池接反了。电池接反情况下禁止充电。
注意2:首次接上电池有可能会没有电源输出,需要按一下电路板上的BOOT键激活电池保护芯片才会有电源输出。
注意3:要使用产品配置的电源充电,使用其他电源有可能输出电源纹波太大不稳定导致产品损坏。
注意4:电池正极绝缘垫如果弄掉坏了建议不要继续使用容易导致短路起火,拆电池时切忌用螺丝刀撬电池正极容易导致短路要撬电池负极。

锂电池使用注意事项

  • 锂聚合物和锂离子电池很不稳定。如果充电或使用不当,可能会导致火灾,人身伤害和财产损失。
  • 对电池组充电和放电时,切勿极性连接错误。请勿选用其他劣质的充电器或充电板对锂电池进行充电。
  • 请勿混用和使用旧电池和新电池,避免使用其他品牌的电池。
  • 如需另购锂电池产品,须确保电池参数与锂电池扩展板兼容,推荐选择正规的电池厂家,并需要自行老化测试确保锂电池能够稳定安全工作。
  • 锂电池具有循环寿命,请在达到使用寿命或使用两年时(以先到者为准),用新电池更换旧电池。
  • 请妥善放置电池类产品,远离易燃易爆类物品,远离儿童,避免因保管不慎,引发安全事故。

例程使用

树莓派使用说明

硬件连接

注意:此处只是跟主机通信,如果要充放电,需要连接IN跟OUT。

UPS模块引脚 树莓派(BCM)
GND GND
SDA 2
SCL 3
CHARGE 4

示例使用

开启I2C接口

  • 打开树莓派终端,输入以下指令进入配置界面
sudo raspi-config
选择Interfacing Options -> I2C -> Yes 开启I2C接口

UPS-Module-Mini-2.jpg
然后重启树莓派:

sudo reboot

请确保I2C没有被其他的设备占用,你可以在/boot/config.txt中间检查

安装库

BCM2835
#打开树莓派终端,并运行以下指令
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.71.tar.gz
tar zxvf bcm2835-1.71.tar.gz 
cd bcm2835-1.71/
sudo ./configure && sudo make && sudo make check && sudo make install
# 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
wiringPi
git clone https://github.com/WiringPi/WiringPi
cd WiringPi
./build
gpio -v
# 运行gpio -v会出现2.70版本,如果没有出现说明安装出错
Python
#python2
sudo apt-get update
sudo apt-get install python-pip
sudo pip install RPi.GPIO
sudo pip install smbus
#python3
sudo apt-get update
sudo apt-get install python3-pip
sudo pip3 install RPi.GPIO
sudo pip3 install smbus

下载测试程序

打开树莓派终端,执行:

sudo apt install unzip -y
cd ~
sudo wget https://www.waveshare.net/w/upload/5/58/UPS_Module_Mini_Code.zip
sudo unzip UPS_Module_Mini_Code.zip
cd UPS_Module_Mini_Code/Raspberrypi/

运行测试程序

以下命令请在RaspberryPi下执行,否则不在索引不到目录

C语言
  • 重新编译,编译过程可能需要几秒
cd ~/UPS_Module_Mini_Code/Raspberrypi/c/
sudo make clean
sudo make -j
sudo ./ups_module
python
cd ~/UPS_Module_Mini_Code/Raspberrypi/python/
sudo python UPS_Module_Mini.py
  • 运行对应屏幕的程序即可,程序支持python2/3

运行效果

  • 从上往下得参数分别是电池电压,电池电流,电池功率,是否在充电。
  • In charge:正在充电
  • In discharge:正在放电
  • 下图显示实际值,不是最大值

放电

UPS-Module-Mini-3.jpg

充电

UPS-Module-Mini-4.jpg

C语言库选择

  • 我们默认使用自己编写得IO库:USE_DEV_LIB
  • 可以通过修改Makefile中的命令进行修改:
# USELIB = USE_BCM2835_LIB
# USELIB = USE_WIRINGPI_LIB
USELIB = USE_DEV_LIB
  • 三选一,需要用谁,解除对应的注释,另外两个需要加上注释,否则以最后一个为主
  • 例如:需要使用wiringpi库进行编译,则这样设置:
# USELIB = USE_BCM2835_LIB
USELIB = USE_WIRINGPI_LIB
# USELIB = USE_DEV_LIB

注意:使用了BCM2835库后需要重启树莓派,否则无法使用Python跟其他库的C程序。

树莓派Pico

硬件连接

注意:此处只是跟主机通信,如果要充放电,需要连接IN跟OUT。

UPS模块引脚 树莓派Pico
GND GND
SDA 8
SCL 9
CHARGE 7

C/C++ 开发环境安装

MicroPython 开发环境安装

Pico-R3-Tonny1.png
  • 配置Micrpython环境及选择Pico端口。
    • 先将Raspberry Pi Pico 接入电脑,左键点击Thonny右下角的配置环境选项--》选择configture interpreter
    • 在弹出的窗口栏中选择MicroPython(Raspberry Pi Pico),同时选择对应的端口。

Raspberry-Pi-Pico-Basic-Kit-M-2.png
Raspberry-Pi-Pico-Basic-Kit-M-3.png

  • 点击ok后返回到Thonny主界面,下载固件库到Pico里面,然后点击停止按钮,在Shell窗口中即可显示当前使用到的环境。
  • Pico在windows下载固件库方法: 按住BOOT键后连接电脑后,松开BOOT键,电脑会出现一个可移动磁盘,将固件库复制进去即可。

树莓派环境下

  • 打开树莓派终端,执行:
sudo apt install unzip -y
cd ~
sudo wget https://www.waveshare.net/w/upload/5/58/UPS_Module_Mini_Code.zip
unzip UPS_Module_Mini_Code.zip
cd ~/UPS_Module_Mini_Code
cd Pico/c/build/

例程使用

C部分
  • 以下教程为在树莓派上操作,但由于cmake的多平台、可移植的特点,在PC上也是能成功编译,但操作略有不同,需要自行判断。

进行编译,请确保在c目录:

cd ~/UPS_Module_Mini_Code/Pico/c/

创建并进入build目录,并添加SDK: 其中 ../../pico-sdk 是你的SDK的目录。 我们示例程序中是有build的,直接进入即可

cd build
export PICO_SDK_PATH=../../pico-sdk
(注意:务必写对你自己的SDK所在路径)

执行cmake自动生成Makefile文件

cmake ..

执行make生成可执行文件,第一次编译时间比较久

make -j9

编译完成,会生成uf2文件。 按住Pico板上的按键,将pico通过Micro USB线接到树莓派的USB接口,然后松开按键。接入之后,树莓派会自动识别到一个可移动盘(RPI-RP2),将build文件夹下的main.uf2 文件复制到识别的可移动盘(RPI-RP2)中即可。

cp UPS_Module_Mini.uf2 /media/pi/RPI-RP2/
python
  • 1.树莓派上将~/UPS_Module_Mini_Code/Pico/python/rp2-pico-20230329-unstable-v1.19.1-994-ga4672149b.uf2 文件拷入pico中。
  • 2.在树莓派上打开Thonny IDE (点击树莓logo -> Programming -> Thonny Python IDE ),你可以在Help->About Thonny查看版本信息

以确保你的版本是有Pico支持包的,同样你可以点击Tools -> Options... -> Interpreter选择MicroPython(Raspberry Pi Pico 和ttyACM0端口
如图所示:
Pico-lcd-0.96-img-config2.png
如果你当前的Thonny版本没有pico支持包,输入以下指令来更新Thonny IDE

sudo apt upgrade thonny

3.点击File->Open...->~/UPS_Module_Mini_Code/Pico/python/UPS_Module_Mini.py,运行脚本即可

Windows环境下

C部分

  • 进入Pico\c后,使用vs code打开工程

UPS-Module-Mini-5.jpg

  • 选择编译器

UPS-Module-Mini-6.jpg

  • 开始编译

1.28inch-Touch-LCD-17.jpg

  • 编译完成

1.28inch-Touch-LCD-18.jpg

  • 将build中的UPS_Module_Mini.uf2文件拷贝带Pico中,就会自动运行程序了。

UPS-Module-Mini-7.jpg

python

  • 1.按住Pico板上的BOOTSET按键,将pico通过Micro USB线接到电脑的USB接口,待电脑识别出一个可移动硬盘(RPI-RP2)后,松开按键。
  • 2.将python目录中rp2-pico-20230329-unstable-v1.19.1-994-ga4672149b.uf2 文件复制到识别的可移动盘(RPI-RP2)中
  • 3.打开Thonny IDE(注意:要使用最新版本的Thonny,否则是没有Pico的支持包的,当前Windows下的最新版本为v3.3.3)
  • 4.点击工具->设置->解释器,如图所示选择Pico及对应的端口

Pico-lcd-0.96-img-config.png

  • 5.文件->打开->UPS_Module_Mini.py,点击运行即可,如下图所示:

LCD 1inch47 3.jpg

运行效果

  • 信息内容查看树莓派的运行效果介绍

C

  • 需要通过串口调试助手,打开Pico的虚拟串口查看信息

Python

  • 运行程序后在shell串口查看信息

MicroPython(适用于Raspberry Pi Pico)

  • 基本库使用可以查看此链接,更多可点击此处查看。
  • 温馨提示,此处都为英文,英文水平差的国内小伙伴可以搭配翻译软件使用,有问题可咨询我们。

STM32例程使用说明

硬件连接

注意:此处只是跟主机通信,如果要充放电,需要连接IN跟OUT。

模块引脚 STM32F103RB
GND GND
SDA PB9
SCL PB8
CHARGE PB5

示例下载

例程是基于HAL库进行开发的。
点击下载程序,解压后,打开UPS_Module_Mini_Code\STM32\UPS_Module_Mini\MDK-ARM目录下的UPS_Module_Mini.uvprojx,即可看到程序。
UPS-Module-Mini-8.jpg
打开main.c,可以看到程序,重新编译下载即可。
UPS-Module-Mini-9.jpg

运行效果

  • 需要通过串口调试助手,打开STM32的虚拟串口查看信息
  • 信息内容查看树莓派的运行效果介绍

Arduino软件说明

注:例程均在Arduino uno上进行了测试,如果需要是其他型号的Arduino需要自己确定连接的管脚是否正确。

arduino IDE 安装教程

arduino IDE 安装教程

硬件连接

注意:此处只是跟主机通信,如果要充放电,需要连接IN跟OUT。

UPS模块引脚 Arduino uno
GND GND
SDA SDA
SCL SCL
CHARGE 4

运行程序

点击下载程序,然后解压。程序位于UPS_Module_Mini_Code\Arduino\UPS_Module_Mini
UPS-Module-Mini-10.jpg

安装好Arduino IDE后运行UPS_Module_Mini.ino文件。
打开程序,选择开发板型号Arduino UNO
1.28inch-Touch-LCD-9.jpg
选择对应COM口
1.28inch-Touch-LCD-10.jpg
然后点击编译并下载即可
UPS-Module-Mini-11.jpg

运行效果

  • 需要通过串口调试助手,打开Arduino UNO的虚拟串口查看信息
  • 信息内容查看树莓派的运行效果介绍

FAQ


技术支持


联系人:黄工
QQ:2850151199
EMAIL:2850151199@qq.com
电话:0755-83040712
微信:扫下方二维码添加
Service20-Weichat.png

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证