Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here


Ultra Low Budget 50khz data acquisition

Ultra Low Budget 50khz data acquisition

Ultra Low Budget 50khz data acquisition

Hello. If you are in a rush, skip to the bold text.
I am currently working on a project using an arduino Uno R3 micro controller for data acquisition. This is outside of expertise (As if I have one of those). The Scope of this project is not for high precision. This is a monitoring system which will not have the responsibility of high precision. What I'm monitoring is engine knock. I am sampling well above the Nyquist rate for engine knock, and the samples are 10 bits. It is sufficient for the intents and purposes of the project, but don't be afraid to point out the more optimal routes than an Arduino Uno.

Background/Current status.
- I have figured out how to over-clock the arduino to acheive 50khz sample rate at 10 bits (500,000 bit/sec).
- I am able to sustainably transfer the data bytes to my PC by sending them in 1kb batches
- I have a non-resonant piezoelectric knock sensor with a shielded wire (Bosch 0 261 231 047).
- The charge from the knock sensor is of very high impedance (near 1 Mohm), and presumably low in voltage
- The ADC on the Arduino requires impedance less than 10,000 ohms (zero is ideal)
- The voltage range of inputs should ideally be between 0 and 5 volts.

Questions/Next steps.
- For this application, whats the easiest way to amplify this signal into a low impedance 0-5v charge?
- Is there anything inexpensive that I could buy off the shelf to do this?

If this thread has interest, I will expand the purpose of this thread to help other beginners do similar projects later.
Thank you

RE: Ultra Low Budget 50khz data acquisition

All you need is a high input impedance buffer, which you probably need in any case, since it's unlikely that the 26 mV/g sensitivity maps well into the 4.9mW/bit of the ADC. I'm guessing typical knock would be under 0.1 g, which would be about 1/2 of an LSB.

I can do absolutely anything. I'm an expert!
homework forum: //www.engineering.com/AskForum/aff/32.aspx
FAQ731-376: Eng-Tips.com Forum Policies forum1529: Translation Assistance for Engineers

RE: Ultra Low Budget 50khz data acquisition

IRstuff you are right on the money.

To minimize trouble-shooting while developing/testing this, could I possibly purchase the desired an op-amp from an online store? I want a solid one for getting a baseline.


RE: Ultra Low Budget 50khz data acquisition

That link provided a lot of good knowledge for me. As of now, it looks like they provide the exact products that I need.

This is an amp they offer: http://www.analog.com/media/en/technical-documenta...

It is the most optimal setup that I have seen so far. Thanks for the help, I am probably going to buy their evaluation board.

RE: Ultra Low Budget 50khz data acquisition

I ordered this evaluation board: http://www.newark.com/webapp/wcs/stores/servlet/Pr...

I am hoping that the AD8220 amp will be able to amplify the signal up to a maximum of 5 volts.

The sensor that is providing signal is: http://www.bosch-motorsport.com/media/catalog_reso...

The data sheet is very high level, but the output impedance is actually around 500K ohms.

Can anybody foresee any of the problems that I will face when amplifying signal with those two products acting as a system?

The knock sensor is shielded relatively well, and I am going to be processing the data digitally. The software I will use is Matplotlib, or I may be able to use Matlab.

After I get it working, I hope to integrate a circular buffer for the data. This is for monitoring transients, so I don't really need every single data point to be logged.

"Formal education is a weapon, whose effect depends on who holds it in his hands and at whom it is aimed." ~ Joseph Stalin

RE: Ultra Low Budget 50khz data acquisition

The Bosch sensor appears to be a bare piezo-crystal that would typically need a charge amplifier. Can your amplifier convert charge to voltage before amplification?


RE: Ultra Low Budget 50khz data acquisition

Thanks for drawing my attention to that. My thought was that I could just amplify the voltage that the sensor produces

I am not sure that the AD8220 can convert charge to voltage, but I am somewhat doubting it. The sensor produces 26 ± 8 mV/g at 5khz. Id definitely like to understand this more if you could help.

This is the information that I was basing my theory on:

(Using the same sensor that I have) The sensor output was fed directly into the analyser (high impedance) to avoid loading the sensor andtThe analyser was set up to perform a frequency sweep at 1g between 1kHz and 25kHz. The result is shown below:

RE: Ultra Low Budget 50khz data acquisition

^ Thank you for those. I will read those more diligently when I get some time today. I skimmed through them and I have a firmer grasp on the real differences of charge vs voltage amplifier.

I do know that my amp has a FET buffer in the input. The output impedance from the sensor is 500kOhms, the input impedance on the amp is 10Mohms, if I remember correctly. I have some reading to do on the amps I have, and alternative plans of action.

RE: Ultra Low Budget 50khz data acquisition

I bought the evaluation board for the amps that IRstuff linked me to. I worked with an electrical engineer at work, who was a huge help. I have not yet tried to read the amplified signal with my arduino, but we have been able to light up an LED with the amplified knock signal on bench tests. I need to get more information on the raw sensor signal that I will be amplifying in the actual application that this is used for, and then I will be able to start refining the system.

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Close Box

Join Eng-Tips® Today!

Join your peers on the Internet's largest technical engineering professional community.
It's easy to join and it's free.

Here's Why Members Love Eng-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close