SeniorDesignProject Arduino Torsional sensor Demonstration Unit Data acquisition

My group has to create a torsional sensor demonstration unit (here is the link if anyone cares to read futher..Industrial Solutions Laboratory | Industrial Solutions Lab | UNC Charlotte)
Basically what I have to do in the project is code. I have to come up with the speed of the shaft, the temperature of the shaft, and the ambient temperature of the area the shaft is enclosed in, and a mems accelerometer. My question is what type of board should I use for a constant output of data. I am a computer engineering student and I have never had to output data this fast before. I was looking into the arduino leonardo because I seen it was the one with the most outputs that we needed but I wasn't sure how much one to get within my 300 dollar budget. If someone could give me some type of insight or guidance I would gladly appreciate it.

Well the Leonardo w/ headers in the Arduino store is $24, but you can find one cheaper online at say eBay or DigiKey. Do is need to be a Leonardo? You can do the practically the same things with a Nano, Mini, Micro and Uno. All can be found online for cheaper prices. Make sure you pick the right ones, most if not all say Arduino compatible, but you can still run into problems.

The Arduino Playground has many libraries for various sensors, I'm sure you'll find what you need there.

The reason I choose arduino leonardo was because it had 15+ outputs. I just need to make sure it will be able to output the temperature an speed at a VERY FAST rate. Do you feel this leonardo will?

Every Arduino, except maybe the Lilipad, has at least 20 output pins. The Leonardo will do fine, but you do have other options, if needed.

Now what do you consider to be VERY FAST? The Arduino can send data Serially to a number of terminals at whatever baud rate you set it to. I'm not sure what the absolute highest baud rate is but the current highest is 115200.

Added:
What sensors are you planning on using?

I just need to make sure it will be able to output the temperature an speed at a VERY FAST rate. Do you feel this leonardo will?

Speed I understand. But, really, how often will the temperature change? And, output to what?

You need to nail down the precise requirements for the inputs and outputs. Vague terms such as 'constant' and 'fast' are not adequate to show what you need to achieve.

Basically what I need is the speed at the fastest output possible? The temperature obviously doesn't need to be ever second but the speed needs to be updating as fast as possible. The whole objective that I am trying to achieve trigger the brake when the temperature is too high. Also when the user wants to lower the speed or increase the speed, they are able to do so while staying within the restricted area( which will be coded in labview).

Looking at the design paper it appears you will need an accurate tachometer that operates up to 4000 rpm, and a system to provide control to the driving motor to maintain the rpm under some changing load conditions. Not sure what of use for the design spec. can be made with only a $300 budget..

uncc_14:
Basically what I need is the speed at the fastest output possible?
.
.

Have you read the previous questions? "The fastest output possible" doesn't convey any useful information. Please quantify "fastest" in some numerical term such as "1k samples per nano-second" or "six samples per fortnight". Then people will be able to recommend a suitable hardware combination.

If you do need a sample rate in the tens of micro-seconds region then Atmel AVR is probably not the right platform and you need to be looking at Cortex M3 or similar.

zoomkat:
Looking at the design paper it appears you will need an accurate tachometer that operates up to 4000 rpm, and a system to provide control to the driving motor to maintain the rpm under some changing load conditions. Not sure what of use for the design spec. can be made with only a $300 budget..

Basically for the speed what I did was From the motor I have it going to a speed sensor then to an ADC converter to the Arduino to the current amplifer and then to the voltage amplifer then to the motor again. The arduino's objective is for me to write code to have speed control for the user within a specific range. Then it change to that speed that the user implemented in decent speed. Thats why I kept saying "fastest possible".

uncc_14:
Thats why I kept saying "fastest possible".

As we keep telling you, that is a meaningless thing to say.

If the performance matters then you need to quantify your performance requirements.

There may be useful info in the below post on monitoring rpm.

https://www.google.com/search?as_q=tachometer&as_epq=&as_oq=&as_eq=&as_nlo=&as_nhi=&lr=&cr=&as_qdr=all&as_sitesearch=http%3A%2F%2Fforum.arduino.cc%2Findex&as_occt=any&safe=images&tbs=&as_filetype=&as_rights=