写点什么

智能小车系列 - 树莓派 UPS-X750 电源

发布于: 2021 年 04 月 10 日

开源项目:

https://github.com/xujialiang/ezX750UPS


X750 是一款树莓派用的多功能高端 UPS 电源扩展板。它提供高达 8A 的大电流输出,提供脚本通过 I2C 来读取电池容量等信息。


由于官方只给了 Python 代码,转成 Nodejs 方便使用。



树莓派上 开启 I2C

pi@raspberrypi ~ $  sudo raspi-config
复制代码

选择 5 Interfacing Options

选择 I2C - Enable/Disable automatic loading.

选择 "Yes


const struct = require('python-struct');const i2c = require('i2c-bus');
const address = 0x36;
const readVoltage = rawData=>{ console.log('rawData', rawData); let packData = struct.pack(">H", rawData); console.log('packData', packData); let unpackData = struct.unpack("<H", packData); console.log('unpackData', unpackData[0]); let vol = unpackData[0]*1.25/1000/16; return vol;};
const readCapacity = rawData=>{ let packData = struct.pack(">H", rawData); console.log('packData', packData); let unpackData = struct.unpack("<H", packData); console.log('unpackData', unpackData[0]); let cap = unpackData[0]/256; return cap;};
i2c.openPromisified(1).then(i2c1 => i2c1.readWord(address, 0x2). then(rawData => console.log(readVoltage(rawData))). then(_ => i2c1.close())).catch(console.log);
i2c.openPromisified(1).then(i2c1 => i2c1.readWord(address, 0x4). then(rawData => console.log(readCapacity(rawData))). then(_ => i2c1.close())).catch(console.log);
复制代码


支持硬件及软件关机 https://github.com/geekworm-com/x750

sudo apt-get install python-smbus sudo apt-get install i2c-tools git clone https://github.com/geekworm-com/x750.gitcd x750chmod +x x750.shsudo bash x750.shprintf "%s\n" "alias x750off='sudo x750shutdown.sh'" >> ~/.bashrcsudo reboot
// 测试软件关机./x750off
复制代码


发布于: 2021 年 04 月 10 日阅读数: 30
用户头像

每个人都应该为他的梦想付出他的全部! 2018.02.28 加入

一个喜欢搞破坏,研究新技术、新硬件的技术人~

评论

发布
暂无评论
智能小车系列-树莓派UPS-X750电源