Power tree analysis of circuits, boards and systems.
Project description
sysLoss
sysLoss is a tool for analyzing power trees, system power and losses. From the smallest IoT sensor to large industrial installations. The tool is efficient and easy to use, the analysis result provides a detailed report on voltages, currents, power and efficiency for every component defined in the system. Output format is Pandas DataFrame: Create charts, plots and export to Excel and other formats.
Installation
$ pip install sysloss
or
$ conda install conda-forge::sysloss
Usage
Analyze the power tree of a simple battery-powered bluetooth sensor:
from sysloss.components import *
from sysloss.system import System
bts = System("Bluetooth sensor", Source("CR2032", vo=3.0, rs=10))
bts.add_comp("CR2032", comp=Converter("Buck 1.8V", vo=1.8, eff=0.87))
bts.add_comp("Buck 1.8V", comp=PLoad("MCU", pwr=13e-3))
bts.add_comp("CR2032", comp=Converter("Boost 5V", vo=5.0, eff=0.82))
bts.add_comp("Boost 5V", comp=RLoss("RC filter", rs=6.8))
bts.add_comp("RC filter", comp=ILoad("Sensor", ii=6e-3))
bts.tree()
Bluetooth sensor
└── CR2032
├── Boost 5V
│ └── RC filter
│ └── Sensor
└── Buck 1.8V
└── MCU
df = bts.solve()
print(df)
Create graphical power tree diagrams:
import sysloss.diagram as sd
sd.make_diag(bts, fname="bts.png")
And heat diagrams:
sd.make_hdiag(bts, fname="bts-heat.png")
Documentation
The documentation includes tutorials in the form of Jupyter notebooks, located in docs/nb.
Contributing
Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.
License
sysloss was created by Geir Drange. It is licensed under the terms of the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sysloss-1.10.0.tar.gz.
File metadata
- Download URL: sysloss-1.10.0.tar.gz
- Upload date:
- Size: 32.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a7011f081767dbae8c8b76eb0e8b0977e8e33ea7a4d94168e15432e3d086d94
|
|
| MD5 |
79c87c87dc3dcca666c7f5b8d8976a44
|
|
| BLAKE2b-256 |
593b88fdfe0842de032e068e76c31e5de83319b47bd55e5308b1669f413d2e3c
|
File details
Details for the file sysloss-1.10.0-py3-none-any.whl.
File metadata
- Download URL: sysloss-1.10.0-py3-none-any.whl
- Upload date:
- Size: 33.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7ad206db5fb4da432d7b5f49fe74f925bfcd352172a6a5a2c3c36e83a92c1b5
|
|
| MD5 |
6d7697687d33e2a67f2d0bac2e91e714
|
|
| BLAKE2b-256 |
f36fd021f79b1aca0d92271bf42a698651fabd924dc82b25e3a2e25421029aff
|