Piezo and Ultrasonic

Thread Starter

LuisDeveloper

Joined Feb 24, 2020
8
I am working on a project that will use a piezo as emitter and receiver for ultrasonic system. I am new to electronics, just know the basis.. As you guys may know Arduino analog output can not produce the voltage our system required, the driving voltage will be around 12v to 50v so an amplifier will be used to produce the desire frequency and intensity on the piezo. I am assuming a transistor can be used to control the amplifier when creating the pulse on the piezo but how can I avoid damaging the arduino since the same piezo will be connected on the arduino analog input pins to sense the coming signal so it will get the high voltage from thr amp as well. Also, the wave coming back to the piezo (in listening mode) could make the piezo generate voltage higher than 5v which is more than the arduino analog input channel can handle. So there are two things here to over come, first the high voltage coming from the amp that will goes to the analog input and second, the voltage generated by the piezo from the coming wave.
 

MrChips

Joined Oct 2, 2009
21,143
You don't need an amplifier to drive the transducer.
You will be sending a "chirp", that is, a square wave at a given frequency for a given duration.
Use a transistor in switch mode to drive the transducer.

You need to disconnect the receiver when in transmit mode. You can use a linear gate or an FET.
If the signal is too large that is not a problem for the Arduino because you have to process the signal before feeding into the Arduino. You will need a variable gain amplifier, rectifier, envelop detection and a comparator. The output of the comparator will put out a logic signal suited to the Arduino.
 

Thread Starter

LuisDeveloper

Joined Feb 24, 2020
8
Hi Mr Chips,
Thank you for replaying.. Ok you got me confused here.. On emitter mode I have to send a sinusoidal wave from the Arduino or directly from the PC to the piezo and I need to create different intensity on the target surface. If an amp is not use then it will only use 5 volt output from the arduino.

I though I could process the coming signal directly on my pc (passing first thought arduino). I have to process the signal to apply Fourier, wavelet filter then apply compress sensing and recreate an image base on this result so not sure how I can do the way you suggested. It looks like the comparator you mentioned is like a analog to digital converter?. Please notice the analog input on the arduino is a ADC as well and covert analog to 1024 values..

Programming is not an issue for me since I have programed for the past 20 years in different language but my knowledge in electronic is limited so I will have to do more research about what you said..
 
Last edited:

Alec_t

Joined Sep 17, 2013
11,302
On emitter mode I have to send a sinusoidal wave from the Arduino
Unless the sinusoid frequency exactly matches the natural (but load-dependent) resonant frequency of the transducer that may not be very efficient. If the transducer can provide feedback during transmission then an auto-adjusting frequency should be more efficient. Alternatively just hit the transducer with brief square-wave pulses as MrChips suggested and let it self-resonate.
 

MrChips

Joined Oct 2, 2009
21,143
As noted above, you don't need a sinewave to drive the transducer. You can still drive it with a 50V signal.
Take the 5V output through a 1kΩ resistor to the base of a 2N3904 NPN transistor.

Something like this:

1582647885957.png

You don't need the LED. Replace 3.3V with 50V. Replace R2 with 10kΩ.

Your transducer goes between the collector of the transistor and GND.
 

djsfantasi

Joined Apr 11, 2010
6,432
As noted above, you don't need a sinewave to drive the transducer. You can still drive it with a 50V signal.
Take the 5V output through a 1kΩ resistor to the base of a 2N3904 NPN transistor.

Something like this:

View attachment 199948

You don't need the LED. Replace 3.3V with 50V. Replace R2 with 10kΩ.

Your transducer goes between the collector of the transistor and GND.
The ground connection of the 50V supply must also connect to the Arduino ground...
 

Thread Starter

LuisDeveloper

Joined Feb 24, 2020
8
Unless the sinusoid frequency exactly matches the natural (but load-dependent) resonant frequency of the transducer that may not be very efficient. If the transducer can provide feedback during transmission then an auto-adjusting frequency should be more efficient. Alternatively just hit the transducer with brief square-wave pulses as MrChips suggested and let it self-resonate.
Ok so I will be using a square signal then. But a 5v from arduino is enough to move piezo? I have read that ultrasonic devices use voltage from 1v to as high as 150v on single cristal piezo. so how I can accomplish?
 

Thread Starter

LuisDeveloper

Joined Feb 24, 2020
8
As noted above, you don't need a sinewave to drive the transducer. You can still drive it with a 50V signal.
Take the 5V output through a 1kΩ resistor to the base of a 2N3904 NPN transistor.

Something like this:

View attachment 199948

You don't need the LED. Replace 3.3V with 50V. Replace R2 with 10kΩ.

Your transducer goes between the collector of the transistor and GND.
As noted above, you don't need a sinewave to drive the transducer. You can still drive it with a 50V signal.
Take the 5V output through a 1kΩ resistor to the base of a 2N3904 NPN transistor.

Something like this:

View attachment 199948

You don't need the LED. Replace 3.3V with 50V. Replace R2 with 10kΩ.

Your transducer goes between the collector of the transistor and GND.
Yes, Mrchip, I understand it. Correct not amplifier needed, I just need a voltage source at 50v then use the transistor that will be controled with the arduino thorough the 1k resistor. Now, you said to replace the 3.3v with 50v, I get that, but why I need a 10k resistor? Having a source 50v and resistor 10k , will it not cause a voltage drop going to the 2n3904?. So looks like voltage will remain the same but now current will be 5amp, is that the reson for the resistor correct?
 
Last edited:

MrChips

Joined Oct 2, 2009
21,143
Your transducer will see 50V via the 10k resistor.
The purpose of the transistor is to turn off the voltage to zero, not supply voltage.
 

Janis59

Joined Aug 21, 2017
1,179
RE: ""Unless the sinusoid frequency exactly matches the natural (but load-dependent) resonant frequency of the transducer that may not be very efficient.""
Solution number 1=CD4046
Solution number 2=LM567
 

Thread Starter

LuisDeveloper

Joined Feb 24, 2020
8
RE: ""Unless the sinusoid frequency exactly matches the natural (but load-dependent) resonant frequency of the transducer that may not be very efficient.""
Solution number 1=CD4046
Solution number 2=LM567
Janis,
thank you but going this route with a phase-locked loop and the LM567x Tone Decoder is little bit more complex of what I want to learn right now. by the way, Just read about the LM567x Tone Decoder, very interesting stuff.
 
Top