Recently I had occasion to do a number of calculations based on wire size (as in AWG or wire diameter).
How many amps can I send through one strand of a given flat band cable and what is the voltage loss per meter? Given a coil geometry, what size wire do I need so that the DC resistance of the coil is 12 Ohm?
This is quite possible to do using web recources like AWG tables and specialized calculators (not to forget your own pocket calculator), but it gets tedious. So I have written a stand-alone command line tool (a perl script) that answers similar questions.
The tool, called "wire" works with a number of wire parameters (currently AWG, diameter, cross section, "ampacity" rating, and resistivity (Ohms/km)). You can specify the value of any of these as an entry parameter and it prints the values of the others, or a selection of the others.
Given a coil geometry (inner, outer diameter and length), additional coil parameters (number of turns, wire length, copper resistance, inductivity) are available. These can also be entry parameters.
It is possible to specify multiple entry values in a single call, using a from,to,step scheme, which results in a table of the requested output parameters. A number of examples are appended below.
Now, my question is, would it be worth while to make this tool publicly available? Is it superfluous? Not trustworthy enough? Command-line tools are out of fashion anyhow?
Or is it too limited in scope? Should features be added? Non-metric units, for instance? Materials beside copper?
If anyone cares, I have packed up a runnable version of its current incarnation at
It's a tar archive that unpacks to a directory "wirepack" which contains the script named "wire" and auxiliary material. The script should be run from the directory "wirepack". It assumes you have perl as "/usr/local/bin/perl". Calling "./wire -h" produces a (lenghty) help message. "perldoc wire" shows a kind of man page, currently mostly examples. The first few are reproduced below.
Anno
---------------------------------------------------------------- In the simplest case, you call "wire" with a single argument, the AWG number of the wire in question. That prints the wire-related quantities (diameter, cross-section, resistivity, and current rating) pertaining to that gauge:
wire 13 AWG dia sec rho amp mm mm^2 Ohm/km A 13 1.83 2.62 6.58 17.5
wire 15 AWG dia sec rho amp mm mm^2 Ohm/km A 15 1.45 1.65 10.5 12.5
To see more than one gauge at once, specify them in a "first last step" format:
wire 10 20 2 AWG dia sec rho amp mm mm^2 Ohm/km A 10 2.59 5.26 3.28 30 12 2.05 3.31 5.22 20 14 1.63 2.08 8.3 15 16 1.29 1.31 13.2 10 18 1.02 0.82 21 5 20 0.81 0.52 33.4 3.3
...