0
\$\begingroup\$

My objective is to use a single piezo as a transceiver and calculate the distance between the sensor and the object that sound echos from using time of fly. I use tone() function or manually create square wave to the piezo, but after transmitting all I see on the oscilloscope screen is noise. Without Arduino there is not that much noise. How can I detect the echo?

\$\endgroup\$
14
  • 2
    \$\begingroup\$ Schematic, please ... \$\endgroup\$
    – Antonio51
    Commented Jul 3 at 11:13
  • 1
    \$\begingroup\$ Are you measuring distance in air/water/other? Have you verified that the piezo element is able to "recieve" the echo or some other equivalent sound? I imagine you'd require amplification and something a lot less squishy than air. You'll also likely have significant error in your results (due to timing) if you plan to use the Arduino framework and its tone() function... \$\endgroup\$
    – Attie
    Commented Jul 3 at 11:30
  • 1
    \$\begingroup\$ I expect you will need a microphone to receive the sound with any usable signal-to-noise. \$\endgroup\$
    – winny
    Commented Jul 3 at 11:31
  • \$\begingroup\$ No schematichs yet i started yet and trying to discover \$\endgroup\$
    – ali demir
    Commented Jul 3 at 12:04
  • 1
    \$\begingroup\$ @alidemir 4 kHz, or 40 kHz? A 4 kHz piezo electric transducer would be fairly thick and uncommon. 40 kHz is very common. What does your transmit/receive (T/R) circuit look like? If you are using a flat smooth surface, angular alignment needs to be fairly precise. \$\endgroup\$
    – qrk
    Commented Jul 3 at 16:02

0