Arduino as DAQ board?

Dear all,
I'm quite ignorant in electronics :(, and I'd like to know if I can easily use an arduino board as an acquisition board of analog signals, such as National Instruments DAQ ones.
I've read that this is possible :), but I've some more questions:

  • how can I acquire signals with nevative values, and/or with values outside the max range?
  • is there an acquisition software so that I've not to write mine? :wink: I need only a csv export of acquired signals.
    Thanks for help!
    Regards.

You can use it as a DAQ board but with only 10bits of resolution (and positive signals)
you may want to add an external ADC (or at least some signal conditioning board).

(* jcl *)


www: http://www.wiblocks.com
twitter: http://twitter.com/wiblocks
blog: http://luciani.org

such as National Instruments DAQ ones.

The arduino has 6 analogue input channels of 10 bits each, that's a reading of 0 to 1023 on each input.

how can I acquire signals with nevative values, and/or with values outside the max range?

You need some signal conditioning (extra hardware) in front of the analogue inputs.

is there an acquisition software so that I've not to write mine?

there is this:- http://arduino.cc/en/Reference/Firmata it puts the onus of gathering data onto something like a program written in Processing or other such language.

I need only a csv export of acquired signals.

You will have to do that in some language running on the host PC, like processing mentioned above.

Thanks to all for answers!
It seems to me really strange that nobody have done such a useful additional card and software, as this can be a very good low cost DAQ board. Or at least it has not put schematics and compiled software online.
This would be very helpful in tech schools laboratories.

I'll not be able to desing such hw and sw... :cry:

I am working on a generic sensor interface board (and op-amp tutorial) and a
high-current sink board (20A per channel).

No generic DAQ though (yet ;))

(* jcl *)


www: http://www.wiblocks.com
twitter: http://twitter.com/wiblocks
blog: http://luciani.org

I would like to see someone interface the Arduino with Excel or some other spreadsheet program.

interface the Arduino with Excel

You can't do the because the arduino doesn't write files onto a PC.

What you have to do is let the PC program that the arduino is talking to write the Excel file.

This is very easy, simply write the text of the values you want separated by a comma and do a println to get a new line. If you call the file something.csv then double clicking it will load it directly into Excel. You can then save it as a fully fledged .xls file. In fact that's what I am doing now at work. The programming language is called Processing.
EDIT before you ask here it is:-

/**
 * Generates some random numbers and stores the results in an output file 'Results.csv'
 */

PrintWriter output;
int index = 0;

void setup() {
  size(200, 200);
  background(0);
  stroke(255);
  frameRate(12);
  output = createWriter("Results.csv");

      for(int j = 0; j < 40; j++) {
      output.print("Random Number ");
      output.print(" , " + random(-5, 10.2));
      output.print(" , " + random(-5, 10.2));
      output.println();
       } // end of 'for J' lines
  
  output.flush(); // Write the remaining data
  output.close(); // Finish the file
  println("Generation finished");
}

void draw() { // nothing in the loop it's all done once in setup.
}