Skip to main content

A package for high-throughput measurement of deep eutectic solvents’ melting point using IR bolometry

Project description

Build Status

musical-robot

Python module for high-throughput measurement of deep eutectic solvents’ melting point using IR bolometry

Github musical robot image

Introduction

Deep eutectic solvents (DES) are novel solvents that can be easily produced at low-cost for several important applications, such as chemical synthesis, extractions, electrochemistry, and even pharmaceutical drug delivery. The design space for DES is enormous and high throughput measurement of melting points is required to rapidly identify DES with melting points that are feasible for their specific application. High throughput measurement of melting points was made possible through the use of an infrared camera and subsequent image analysis. The melting point of the DES was obtained by recording the temperature profile of the sample as it was heated, and locating the inflection point in the profile that results from an increase in thermal conductivity as the sample melts. The python package developed is able to obtain accurate melting points of multiple samples at once, while only requiring a matter of minutes to perform the physical measurement, and at low-cost. In contrast, standard melting point determination techniques utilize equipment that is orders of magnitude more expensive and can take up to an hour for individual samples.

Installation

  • This package can be pip installed using the following command: pip install musicalrobot

Usage

The python package adopts the following two techniques to obtain the temperature profile of the samples and sample holder to determine the melting point of the samples:

  1. Temperature profile through edge detection
  • This method can be used for images(video frames) with high contrast and minimal noise which will allow for detection of edges of just the samples.
  • The temperature profile of the samples and plate is determined by detecting the edges, filling and labeling them, and monitoring the temperature at their centroids.
  • This technique can be adapted by using the functions input_file and centroid_temp from the musicalrobot.edge_detection module to load the recorded video and obtain the temperature profile of the samples and sample holder.
  1. Temperature profile through pixel value analysis.
  • This is an alternative technique for low contrast images(video frames). In some situations, the contrast between the image and sample maybe too low for edge detection, even with contrast enhancement.
  • Alternatively, centroid location for each sample can be found by summing pixel values over individual rows and columns of the sample holder(well plate).
  • This technique can be adapted by using the functions input_file and pixel_temp from the musicalrobot.pixel_analysis module to load the recorded video and obtain the temperature profile of the samples and sample holder.

Melting point determination

  • An inflection is observed at the melting point in the temperature profile of the samples due to the following reasons
  1. Change in thermal conductivity of the sample
  2. Increase in thermal contact between the sample and the well plate
  • The point of inflection in the temperature profile is determined by detecting the peak in the second derivative of the temperature profile. Since an analytical approach is used to determine the melting point, the temperature profile plots have to classified to eliminate plots with noise and without an inflection in them.
  • The module musicalrobot.data_encoding can be used to classify the temperature profiles.

An example of adapting the above mentioned modules and functions using the musicalrobot package can be found in the ipython notebook Tutorial.ipynb found in the examples folder.

For Development

  • Install python version 3.6
  • Clone the repository on your machine using git clone https://github.com/pozzocapstone/musical-robot.git . This will create a copy of this repository on your machine.
  • Go to the repository folder using cd musical-robot.
  • Install the python dependencies by using pip install -r requirements.txt

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

musicalrobot-0.993.tar.gz (56.6 MB view details)

Uploaded Source

Built Distribution

musicalrobot-0.993-py3-none-any.whl (56.6 MB view details)

Uploaded Python 3

File details

Details for the file musicalrobot-0.993.tar.gz.

File metadata

  • Download URL: musicalrobot-0.993.tar.gz
  • Upload date:
  • Size: 56.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.10

File hashes

Hashes for musicalrobot-0.993.tar.gz
Algorithm Hash digest
SHA256 25bda8b543f320decacdc0edd3bed171835527dc9d2b42a86a21e8a6fd0dcd9b
MD5 157ad1841e5a8bfedef731e3da4fc3d5
BLAKE2b-256 25a6aaf15c9b5a2976003ca491a8ab6356427b102c4136660902d77b373f732f

See more details on using hashes here.

File details

Details for the file musicalrobot-0.993-py3-none-any.whl.

File metadata

  • Download URL: musicalrobot-0.993-py3-none-any.whl
  • Upload date:
  • Size: 56.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.10

File hashes

Hashes for musicalrobot-0.993-py3-none-any.whl
Algorithm Hash digest
SHA256 fa214c29a41a18d8508bbf7f1d9df813bd20b852b16a27072e58a6277d22a4e2
MD5 e93d3472de1ccf0adebada9b4bc54f05
BLAKE2b-256 13e59c176e81ab513b5534d44b75208a5a378a9147263c33c842481fa23c001c

See more details on using hashes here.

Supported by

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