FA info icon.svg Angle down icon.svg Device data
Operating instructions https://www.appropedia.org/OpenSourceDAQ/Setting_up_Node-RED
Hardware license CERN-OHL-S
Certifications Start OSHWA certification
Development of an Open Source Data Acquisition and Control device

Every physical research project, be it a final year student or PhD candidate, requires the measurement and logging of data, most often while controlling and preferably automating the experimental set up. For smaller projects Data Acquisition (DAQ) units are often used, with the student required to control the device manually. Larger projects may make use of full laboratory automation and control systems, with National Instruments (NI) DAQs combined with their NI Labview software being a common standard.

However DAQ units are costly , especially for the simpler projects. As a result there is often a shortage of these devices in laboratories , with students having to share devices.

Thus an open source DAQ device, coupled with software that would allow for data logging, control and automation capabilities is being investigated that could in effect replace an industry version.

This site details the various aspects of the the solution found and the rationale behind it.

Overview of Solution[edit | edit source]

The final solution has rested on an Arduino micro controller serving as the DAQ board and either Node-Red or python serving as the programming and user interface.

Project goals[edit | edit source]

Simplify the use of Arduino's for data acquisition and control for users with no electrical or electronic experience. "Plug-and-play" type capability is the ultimate goal for the OpenSourceDAQ.

Design[edit | edit source]

The Hardware[edit | edit source]

A number of low cost development boards could have be used - an Arduino was chosen simply as it very common and been a round for a while, allowing for a large amount of easily accessible example code and easy access for us tip of Africa dwellers.

While one can perform on the various control and automation logic on the board itself, I felt a similar approach to Labview was required, namely that the control, automation and data logging code would be kept on a connected PC, with the Arduino simply recording data based on commands from the PC. This is in line the rationale employed by the robotics community that has started to use these development boards quiet extensively, and from who the majority of this project has stolen from.

Thus the Arduino board is loaded with Firmata, which will allow node.js to communicate with the board's various input and output pins.

Setting up the Arduino as a DAQ

The software[edit | edit source]

A friendly and easy to use graphical interface is considered key to the project. Newly developed and existing options have been considered, and two main paths have been followed:

  1. Node-RED as a DAQ interface
  2. Python as a DAQ interface

Examples[edit | edit source]

Simple temperature measurement with the node-RED and Arduino setup [1]

Next steps[edit | edit source]

  1. Find user friendly 3D printable cases
  2. Increase the library of node for sensor measurement

Further Resources[edit | edit source]

Open Source DAQ Resources

Conclusions[edit | edit source]

Your conclusions.

References[edit | edit source]


Contact details[edit | edit source]

Bradley D. Bock - bradley.bock@up.ac.za

FA info icon.svg Angle down icon.svg Page data
Authors Bradley D. Bock
License CC-BY-SA-3.0
Language English (en)
Translations Czech, Korean, Italian
Related 11 subpages, 3 pages link here
Impact 268 page views
Created March 4, 2019 by Bradley D. Bock
Modified June 9, 2023 by StandardWikitext bot
Cookies help us deliver our services. By using our services, you agree to our use of cookies.