PyResistorColorCode
Overview
PyResistorColorCode is a Python module that provides some tools to manage IEC 60062 marking codes for resistors.
The associated program resistor-decoder provides a graphical user interface to help user to decode a resistor colour-coding using an inference algorithm. This feature is an enhancement compared to a program like gresistor which is only a colour-coding calculator.
I started to develop this software a day where I had to sort a lot of unsorted resistors in a jumble. Resistors colour-coding using no more than 3 bands (2 digits and a multiplier) are no too difficult to decode when a person is experienced. But for more accurate resistors, it is more tricky. Another difficulty arises when it is difficult to recognise the colour of a band, due to an inappropriate colour contrast or tone. For strange colour-coding we can in last resort use an Ohmmeter to measure the resistance value. But it doesn't respond to the question what is the specification of this resistor: tolerance, temperature coefficient, etc. For all theses reasons, I developed an inference algorithm coupled to an graphical user interface to help user to decode resistor colour-coding.
Inference Algorithm
The inference algorithm works as follow:
- code orientation (left-right or right-left) doesn't matter,
- unset bands are not take into account,
- at least 3 colours must be provided: 2 digits and the multiplier,
- colour band are interpreted by priority as:
- resistance value,
- resistance tolerance,
- temperature coefficient,
- the resistance value must exists in a IEC 60063 series: E6, E12, E48, E96, E192,
- the resistance tolerance must be defined if there is a colour band assigned to it.
When there is more than one hypothesis for the given input, the hypotheses are sorted by ascending precision (series).
Where is the Documentation ?
The documentation is available on the PyResistorColorCode Home Page.
How to install it ?
Look at the installation section in the documentation.
Credits
Authors: Fabrice Salvaire
News
V1 2017-11-21
Ported to Python 3 and PyQt5
V0 2012-05-20
Started project