This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| mission:resources:ezvd [2016-04-10 19:43] – created chrono | mission:resources:ezvd [2016-09-21 07:56] (current) – [EZVD - Easy Voltage-Divider Calc-/Simulator] chrono | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== EZVD - Easy Voltage-Divider Calc-/ | ====== EZVD - Easy Voltage-Divider Calc-/ | ||
| + | |||
| + | When you migrate from just learning by copying open-source hardware designs/ | ||
| + | |||
| + | In the past, online-tools like [[http:// | ||
| {{: | {{: | ||
| + | EZVD was born out of the necessity to have a paperless math proving ground that should be easily hackable and fun to play with various math models and parameters. Python seemed like a logical choice to rebuild the whole division/ | ||
| + | |||
| + | With EZVD you can simulate and instantly assert your design choices and get warnings for certain constraints you can set: | ||
| + | |||
| + | * Power Efficiency | ||
| + | * How much power will it cost to drive the divider? | ||
| + | * How much power is dissipated in each Resistor? | ||
| + | * Determines package/ | ||
| + | * Determines temperature increase of package which changes its own resistance | ||
| + | * Design Efficiency Indicator Bar (wasted resolution vs. clipping) | ||
| + | * Analog Reference Voltage (ADC) | ||
| + | * VD output impedance (to match ADC input muxer circuit, which lowers the ADC input impedance) | ||
| + | * Simultaneous Overview for most common ADCs (8,10,12 and 16 Bit) | ||
| + | * Have consistent/ | ||
| + | |||
| + | It's still a very hackish and early implementation but it (or the idea of it) serves well as a basic tool we can build upon. So everyone interested is invited to make it better to help us all to reduce design failure risks by mis-aligning a simple voltage divider where a calculator/ | ||
| + | |||
| + | * Review, verify and extend its math model | ||
| + | * Add more functionality | ||
| + | * Make it more robust (Fix uncaught cases where EZVD will crash with large step sizes) | ||
| ===== Installation ===== | ===== Installation ===== | ||
| ==== Dependencies ==== | ==== Dependencies ==== | ||
| - | * Python 3.x for full UTF support | + | * Python 3.x |
| - | + | * with UTF support | |
| + | * with ncurses support | ||
| + | |||
| + | Every reasonably recent GNU system should have this available. | ||
| ==== Clone repo ==== | ==== Clone repo ==== | ||
| Line 15: | Line 43: | ||
| $ cd ezvd | $ cd ezvd | ||
| </ | </ | ||
| - | | + | |
| - | ===== Run ===== | + | ===== Usage ===== |
| + | |||
| + | ==== Run ==== | ||
| < | < | ||
| $ ./ezvd.py | $ ./ezvd.py | ||
| - | </ | + | </ |
| - | | + | |
| + | ==== Interaction ==== | ||
| + | |||
| + | === Basic Parameters === | ||
| + | |||
| + | ^ Key ^ Function | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | |||
| + | === Simulation Control === | ||
| + | |||
| + | ^ Key ^ Function | ||
| + | | Tab | Cycle between simulation targets (VIN/ | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | P/ | ||
| + | |||
| + | |||
| + | ===== Development / Sources / Issue-Tracking ====== | ||
| + | |||
| + | People are fighting board-wars over the 1024 vs. 1023 multiplier issue and a lot of code out there one could use as an example bears the risk of also just being copy-pasted from some other bad example. So anyone with the skill to provide knowledge, reflection, verification and feature expansion is invited to join development, | ||
| + | |||
| + | https:// | ||
| + | |||
| + | |||
| + | ===== Roadmap ===== | ||
| + | |||
| + | * Reverse Finding of optimal resistor values for given inputs | ||
| ===== License ===== | ===== License ===== | ||
| Line 33: | Line 95: | ||
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | ||
| GNU General Public License for more details. | GNU General Public License for more details. | ||
| + | |||
| + | |||
| + | ~~DISCUSSION~~ | ||
| + | |||
| + | {{tag> | ||
| + | |||
| + | {{keywords> | ||