I am looking at using a Arduino Mega to log data from a crash test dummy. The dummy will be launched on a bicycle at 20 km/h and then struck by a car moving at 30 km/h. My goal is to design a measurement and data logging system that can take in acceleration and force values from the crash at a very high rate so that the peak forces during the impact are recorded. I will then take this data and interpret it using MatLab.
I have no experience with Arduino and I was curious if what I listed above would be possible? Also, I read that a Raspberry Pi 3 maybe work as well since it has 1.2GHz processor and 1 Gb of RAM, what do you think would be a better choice? Any recommendations, or tips on what I should do would be greatly appreciated.
My initial plan was to use a Raspberry Pi 3 as a means of data logging. I believe this would require an ADC and RTC since the Pi does not have them built in. However, I have no experience with Raspberry Pi or Arduino, but have heard that Arduino is easier for beginners.
Would the Arduino Mega be a viable option for completing my task? I think I saw that it has a 16MHz ADC and RTC built in, which would make things easier. Any help would be greatly appreciated.
If processor speed is important for more granularity in the data logging, but you need a very small package like the micro or nano, since the smaller the rig the less likely it will be damaged, the teensy would be right up your alley. However, I don't believe it has a real crystal clock unless you add it, so if a real time clock is more important, then it might just be extra work.
Tri-axial accelerometers for arduino are available, and accelerometers are a 'core' sensor, meaning you should have no problems finding libraries to use.
The raspberry pi is better served as a smart device with sensors, it has a lot of unnecessary crap if all you want to do is data log.
Making the device itself survive 60-200g's of acceleration will be the tough part.
The Arduino itself doesn't have enough memory for any substantial data logging. Usually you add an SD card but that is slower and can be dislodged from its socket. An FRAM memory chip can be used if you want to solder it to a board.
But first work out how many pieces of data you want, how often, for how long and how big they are. That will tell you if you need kilobytes or megabytes. Also, if you choose to store it inside the Arduino, work out how you will trigger it to capture the 2 seconds of data you actually need.
Then work out how to download it. That's where an SD card is great because you can just pop it into your laptop.
The Mega is clocked at 16MHz, but analogRead() requires several clock cycles to complete, see the data sheet. For high speed measurement you may use multiple small (Pro Mini…) Arduinos, which collect data only from a small number of analog inputs. E.g. you can build a module for handling a single accelerometer, then add as many of these modules as required. You also can use an IMU, which can collect the accelerations in parallel at the specified rate into its FIFO, and read out the digital values.
The memory (SRAM) of most Arduinos is very limited. How many values do you want to collect from each sensor, and where should these values go for post-processing? Here a RasPi may be a better solution, with more RAM and capabilities of processing and visualisation, of the values obtained from the IMU’s.