Black Lives Matter. Please consider donating to Black Girls Code today.

Dash DAQ experiment controller project

I am just getting into Dash for a project in my lab so i thought id outline it here and then detail the updates and problems i encounter on the way.

ill start with the intention of the project and key goals so we can hopefully tick them off as we go.

  • System to monitor a Thermocouple and a Pressure transducer reporting a value every 10 seconds
  • Output a live combined graph showing a time trace for both
  • Output a single table for both data streams
  • Begin this monitoring and recording process by a button on the Dash page
  • Have a way to select values (either manually or automatically) at various time points as key steps are triggered in the experiment
  • A function that uses the data produced by the Thermocouple and Pressure transducer along with the set time point values to calculate new data
  • Creating a graph for this data and adding it to the original data table next to the corresponding values
  • a stop button that stops the recording and dumps the table to an excel file.

That is currently the plan for now.

I have several parts of this in Python format already and was looking for ways to control it better when i came across Dash. So ill be a little while working out the changes and how to implement some of the DAQ control parts and visualisers. Hope to be back soon with updates.

if anyone has any comments on feasibility or difficulties i may come across in advance, that would be useful.

Wish me luck!

This sounds very cool! I’d be curious on what you’re using for hardware - LabJack? Keep us posted!

Ive got the Thermocouple through a Phidget hub and the Pressure gauge is just straight to a com port, though i may look into moving that through the hub too for ease of routing if possible.

Looks like a cool company! https://www.phidgets.com/ I don’t think I’ve seen them before. Thanks for sharing.

Hey no problem. all their parts come with example code so it makes it quite easy to set up basic stuff to run them.