Giter Site home page Giter Site logo

biologic-pysoftioc's Introduction

Trigger IOC

This IOC connects to a remote raspberry pi which has been configured to allow remote access to it's GPIO pins. It is intended to send and recieve triggers to a Biologic SP300 Potentiostat, but it could be used for any triggering applications if modified.

This script is to be run on some other machine than the rpi with the pins. It could be run locally on the pi, but developing on a pi is slow!

To pins 17 and 18 a level shifter has been attached which converts the 3.3V from the pi to the 5V expected by the biologic.

The IOC uses the pigpio library to control the remote pins. Configuration of which IOC to attach to is performed in the start_ioc.sh script.

PV Description
SISSY2EX:BIOLOGIC:TRIGGER:SEND Writing anything to this PV will cause a 100us trigger to be output on pin 18
SISSY2EX:BIOLOGIC:TRIGGER:DONE When we send a trigger this PV goes to 0, it is then put back to 1 when we receive a trigger on pin 17
SISSY2EX:BIOLOGIC:TRIGGER:INCOUNT Increments by one every time we recieve a trigger on pin 17. You can monitor this PV to see the time that the trigger is received
SISSY2EX:BIOLOGIC:TRIGGER:OUTCOUNT Increments by one every time we send a trigger on pin 18 using the $(P):$(R):SEND PV

Intended Use with Biologic

  1. Connect the trigger cable from the rPi to the potentiostat DSub9 connector
  2. Open the Biologic software of your choice (EC-Lab or EC-Lab express)
  3. Connect to the Potentiostat
  4. Configure your measurement technique or techniquies
  5. Add a trigger in (TI) method at the start of all of your techniques
  6. Add a trigger out (TO) method at the end of all your techniques
  7. Start your measurement, being sure to select a network drive (like //172.17.9.22/sambashare)
  8. Trigger the acquisition using measurement software (Bluesky)
  9. The measurement starts and runs
  10. The measurement ends and generates a trigger that is registered by this IOC
  11. The measurement software (Bluesky) reads the generated file and parses it so it is in the same format as all other data

Configuration

Pin 17 -> Input Pin Pin 18 -> Output Pin (starts at 0)

Output Trigger length = 100us, Trigger is from 0 -> 1 -> 0

Files

file Description
ioc.py python soft IOC which connects to the GPIO pins
start_ioc.sh bash script to set the IP address of the remote rpi
biologic.bob phoebus .bob display file

biologic-pysoftioc's People

Contributors

whs92 avatar

Watchers

 avatar

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.