PyResistorColorCode

Python module providing some tools to manage IEC 60062 marking codes for resistors.


Keywords
resistor, color, colour, code, IEC, 6006, electronics, pyqt5, python3, resistor-calculator
License
GPL-3.0
Install
pip install PyResistorColorCode==1.0.0

Documentation

PyResistorColorCode

PyResistorColorCode license PyResistorColorCode python version

PyResistorColorCode last version

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.

https://raw.github.com/FabriceSalvaire/PyResistorColorCode/master/doc/sphinx/source/images/resistor-decoder.png

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:
  1. resistance value,
  2. resistance tolerance,
  3. 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