Email Print

No image

The DataDuino data acquisition (DAQ) kit is designed to be robust and configurable but relatively simple. It is based upon the Arduino platform (using the Uno bootloader). It stores data to an SD card and uses a real time clock for accurate timestamping. The fastest resolution is 1 second sampling, up to 99999 second sampling.

Data acquisition is always useful to monitor a wide range of projects. Knowledge is power. With data, you can monitor your system, make changes and record how well they do and generally improve the things you are working on. Also having real data and real facts is vital if we are trying to prove an effect.

Data is stored onto an SD card. A real time clock is used to time-stamp the data and the output is a .csv file.

Sample Arduino code for a datalogger unit is provided here and can be built upon.

Kit Information

This kit is designed as the data-logging 'backbone' you your project. You will need to include interface circuits for your sensors.

The DataDuino code is designed to read 1 x pulse sensor, up to 4 x 1-wire temperature sensors, 3 digital channels and 4 analogue channels.

This can all be changed within the DataDuino code using the Arduino IDE.

The kit includes these parts:

No image

Note: This kit does NOT include a FTDI USB to Serial Cable, an SD card or an enclosure. It requires a 5V power supply to operate as a stand alone unit.

Instructions

The construction instructions are available here:

Design Overview

This design is based upon an ATmega328 programmed with the Arduino bootloader. This makes it easy to configure and change and there are a huge amount of open libraries to use. This board (with an ATmega328) does not include the USB to serial converter (which would be on a standard Arduino), but I used an external USB to serial FTDI cable to program these boards. These cable are available at low cost and easily and are very useful.

The ATmega328 is interfaced to an SD card holder, along with very simple voltage level conversion. The ATmega IC works at 5V and the SD card works at 3V3, hence a 3V3 regulator and some potential divider resistor networks are required.

A real time clock is also used to time-stamp the data. This is a standard IC (PCF8563) which has a battery backup. It is a fully configurable PCB with an SD card holder and real time clock with battery backup. It also works as a Arduino for any other project.

The completed board is shown here:

No image

The completed circuit board with battery backup for the real time clock and SD card holder.

As a basic unit, there are 5 digital data lines and 4 analogue data lines. The analogue lines can be converted into digital, if required. There are 4 additional digital lines which can also be used for data logging, but which mean slight loss of functionality.

The pin allocation is listed here:

Pin Number Type of data Allocation
D0 Digital Serial Rx - Can be used if required
D1 Digital Serial Tx -  Can be used if required
D2 Digital Clock interrupt at 1 second - Cannot be used
D3 Digital Available
D4 Digital Available
D5 Digital LED indicator - Can be used if required
D6 Digital  SD card - Card detect - Can be used if required
D7 Digital Available
D8 Digital Available
D9 Digital Available
D10 Digital  SD card - Chip select - Cannot be used
D11 Digital  SD card - MOSI - Cannot be used
D12 Digital  SD card - MISO - Cannot be used
D13 Digital  SD card - Clock - Cannot be used
A0 Analogue  Available
A1 Analogue  Available
A2 Analogue  Available
A3 Analogue  Avaiable
A4 Analogue  RTC - SDA - Cannot be used
A5 Analogue  RTC - SCL - Cannot be used

Circuit Schematics

Here is the circuit schematic:

Parts List

Reference Item Description
BT1 Battery holder
  CR2032 3V BATT
C1 100uF
C2 100nF
C3 10uF
C4 22pF
C5 22pF
C6 10uF
C7 10uF
C8 Trimmer capacitor 8-30pF
C9 100nf
D1 LED power
D2 1N4148
D3 1N4148
D4 LED RTC (Not used)
D5 LED data
IC1 ATMEGA328P-P
  28 pin DIL socket
J1 CON-SD-MMC-3
P1 2.1mm DC power socket
P2 3 x 2 ISP connector
P3 6 pin Programming header
P4 Not used
R1 1k
R2 10k
R3 10k
R4 10k
R5 1k (not used)
R6 2k2
R7 2k2
R8 2k2
R9 3k3
R10 3k3
R11 3k3
R12 100k
R13 4k7
R14 1k
R15 10k
SW1 SPST
U1 PCF8563
  8 pin DIL socket
U2 MC1703 (3v3 regulator)
X1 32.27 kHz
X2 16MHz
  PCB

Arduino Code

The code for this project was written using the Arduino bootloader and IDE. (Note: It was written in version 0.22 of the IDE and is untested in version 1.0 or above).

This project assumes some knowledge of the Arduino platform. If you do not have this then please start with the numerous examples available within the Arduino community.

There are two programs written, which you will need to download and add to your Arduino sketchbook:

The code has numerous comments and follows a flow structure as shown here:

No image

Programming the unit

As mentioned previously, you will need an FTDI USB to 3v3 serial lead with a 6 pin socket to program this device. This is available here from FTDI and also electronics suppliers such as RS and Farnell. The part number is: TTL-232R-3V3. Plug your FTDI cable into the 6 pin header and you should be able to use the Arduino IDE to upload new code.

Update 25/3/14: We now also sell a re-programming lead which works with this kit, here.

There is also an ISP (In series programming) 6 pin area (although pin connector is not included). This means you can program the chip while it is in-situ using an ATMEL ISP programmer.

Design details

More details on the PCB design and circuit schematics are available on the DataDuino project page.

Enclosure design

This kit does not come with an enclosure. I designed a small enclosure for the LEEDR DAQ project, which is available for downloading here. It is designed to be cut out of 3mm plywood using a laser cutter. It fits onto a piece of A4 sized wood.

No image

This is the DAQ unit in a laser cut wooden box. (Note: this is NOT included in the kit)

 

You can download the .dxf file for the enclosure design here. (Note: This is not large enough to hold the DAQ AND an Arduino shaped prototyping board.

Note: We are working on an enclosure which fits the DAQ board plus an additional Arduino shaped prototype board. If you would like one of these then This email address is being protected from spambots. You need JavaScript enabled to view it. .