Giter Site home page Giter Site logo

alberto-battistel / teensy-eis Goto Github PK

View Code? Open in Web Editor NEW
6.0 4.0 0.0 5.86 MB

Transform your teensy 3.6 (pjrc.com) into an instrument for electrochemical impedance spectroscopy.

License: GNU General Public License v3.0

Arduino 6.18% MATLAB 8.60% Python 8.19% C 63.22% C++ 13.81%
electrochemistry instrument teensy

teensy-eis's Introduction

Teensy-EIS

At the moment this git is still slightly chaotic, but it is getting better. The idea is to use the two ADCs of the Teensy 3.6 (pjrc.com) to aquire data and the DAC to create the perturbation (sinus/multisine) to work as an impedance analyzer. All controlled by a PC using Python, which also make the analysis part. We have an analog front-end for voltage shift (Teensy works 0-3.3V both ADC and DAC) to connect to the real potentiostat. This is tested and works.

1 - ADC-DAC

ADC-DAC.ino and readFromPython.py work together. They are THE Teensy-EIS programs. CalculateParameters.m helps to make the parameters to feed in Python.

2 - Examples

In ADC-DAC there are examples of the part of the ADC-DAC.ino. DAC is for the DAC and PingPong manages the serial communication with the PC. They are more or less the most updated or the same as in ADC-DAC.ino.

3 - Regarding the DAC

The signal for the DAC is generated through a Matlab/GNU Octave/Scilab script. (Generate_DAC_vector).

4 - Analog front-end

In analog front-end there is all about the core of the voltage shift. All the analog interface with the instrument is based on four INA128. They are very flexible pieces. There is no schematic for the power stage and activation of the signal line, but the elements are in the two PDF.

5 - Control flow

In Schematics there are the diagrams of the programs. At the moment only the part for the aquisition, which is the most complex. In summary, the Teensy can aquire infinite amount of data which are streamed in blocks to the PC. Python can handle easily several milions data points.

6 - pointer?

pointers-reference-test contains a couple of examples about passing by reference or by pointer to a function. Not fundamental for the rest, just to remember.


Version list:

Version 1.00

Fully operational tidy up version.

Version 0.99

Fully operational prototype, both for the programing side and for the analog side.


Bug List:

So we can keep track of what needs to be fixed

-To be filled (Priority: 1)


Future Feature List:

Version 1.1?

what shall we implement next?

teensy-eis's People

Contributors

alberto-battistel avatar crdennison avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

teensy-eis's Issues

Remove PBD

Change the acquisition from PDB to interval timer.

Noise at some frequency

Some frequencies are more noisy than others. For example 1 Hz is very noisy, but nothing strange appears in the FFT.

Make plotting

At the moment Python side has a terrible plotting capability. It needs improvement!

Teensy code ADC library

The code on the Teensy side is still a bit messy. It does not use completely the ADC library.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.