Skip to main content

Utilities for iorodeo's open colorimeter

Project description

Utilities for IO Rodeo's Open Colorimeter

Installing

Install using pip

$ pip install open-colorimeter-utils

Installinng from source

This package uses the poetry dependency manager. The installation instructions for poetry can be found here

Once poetry is installed the open-colorimeter-utils package can be installed using

$ poetry install

Additional documentation on using poetry can be found here

Using the Open Colorimeter calibration tool

The Open Colorimeter calibration tool "oc-cal" is a command line program which can fit calibratin data and generate the calibration.json used by the Open Colorimeter.

Usage: oc-cal [OPTIONS] [INPUT_FILES]...

  Generates an Open Colorimeter calibration .json file from the .toml input
  files

  .toml file format 
  -----------------
  name = "TestName"          # Name of the test
  led = 630                  # Led wavelength
  units = "ppm"              # Measurement units
  fit_type = "polynomial"    # Fit type, polynomial or linear
  fit_order = 2              # Order of the fit
  values = [                 # Array of measurements
      [c0, c1, .... , cn],   # Measurements in units
      [a1, a1, .... , an]    # Corresponding absorbances
      ]

Options:
  -o, --output-file FILENAME  output file
  --help                      Show this message and exit.

The input calibration data is provided in the from of one of more .toml files with the following format

name = "Nitrite API"
led = 520 
units = "ppm" 
fit_type = "polynomial"
fit_order = 2
values = [ 
    [0.00, 0.40, 0.80, 1.20, 1.60, 2.00], # concentration
    [0.00, 0.30, 0.59, 0.88, 1.14, 1.39], # absorbance
    ]

In order to generate the calibrations simple run

$ oc-cal nitrite.toml

The oc-cal program will generate the calibrations.json file used by the open colorimeter. An alternative name can be given to this file using the -o of --output options.

An example of the calibrations.json file generated using the data from the .toml file above is shown below

{
  "Nitrite API": {
    "units": "ppm",
    "led": "520",
    "fit_type": "polynomial",
    "fit_coef": [
      0.11543984594053638,
      1.2747960322708907,
      0.0
    ],
    "range": {
      "min": 0.0,
      "max": 1.39
    }
  }
}

In addtion the oc-cal program will fit the data and plots the results as shown below.

example plot

An example of calibrations.json file made using multiple .toml input files is shown below

{
  "Ammonia API": {
    "units": "ppm",
    "led": "630",
    "fit_type": "polynomial",
    "fit_coef": [
      1.0128521350438369,
      1.890930808804952,
      0.0
    ],
    "range": {
      "min": 0.0,
      "max": 2.0
    }
  },
  "Nitrate API": {
    "units": "ppm",
    "led": "520",
    "fit_type": "polynomial",
    "fit_coef": [
      0.32039213453320625,
      34.032597696304,
      0.0
    ],
    "range": {
      "min": 0.0,
      "max": 1.47
    }
  },
  "Nitrite API": {
    "units": "ppm",
    "led": "520",
    "fit_type": "polynomial",
    "fit_coef": [
      0.13111937060865314,
      1.2591439203550079,
      0.0
    ],
    "range": {
      "min": 0.0,
      "max": 1.4
    }
  }
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

open_colorimeter_utils-0.1.0.post1.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

open_colorimeter_utils-0.1.0.post1-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file open_colorimeter_utils-0.1.0.post1.tar.gz.

File metadata

  • Download URL: open_colorimeter_utils-0.1.0.post1.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.10.5 Linux/4.15.0-196-generic

File hashes

Hashes for open_colorimeter_utils-0.1.0.post1.tar.gz
Algorithm Hash digest
SHA256 dfa93dbfc3ac19e80794ec67715ae6470f1418556b3d4c56f386abba290c83d8
MD5 ac3bac476ce97a243b8fd0c424f04200
BLAKE2b-256 0799af05d93964df151c52a69f5de54b57ee928fecadc6b1e5fe79027dc87b9d

See more details on using hashes here.

File details

Details for the file open_colorimeter_utils-0.1.0.post1-py3-none-any.whl.

File metadata

File hashes

Hashes for open_colorimeter_utils-0.1.0.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 94cd0f274d304802ee75d91bf4f23089bffd5354624e5decae4f92caf1f01573
MD5 b3a93d7e3b1647ed61d84a16a184b10c
BLAKE2b-256 3b623ca57e4065c9d9e4748d3ac2674b969a65dc60fd8c659af8a8d60bece4d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page