Electrical – Ultrasonic cleaner control with Arduino

arduinocleaningh-bridgeultrasound

I'm trying to build a small sized ultrasonic cleaner. I bought a couple ultrasonic transducers (ranging between 40kHz – 102kHZ and 15 – 35 watt) which I want to play around with.

There are already quite some driver boards and transducers out there, but I really want to keep a small form factor. Also I try to make a setup where I can easily play around with different transducers, so be able to change the frequency and supply voltage with little effort

I was thinking about creating a setup with Arduino so I can easily and precisely change the PWM frequency. I found the circuit below as a starting point from Ultrasonic schematic source:

Ultrasonic schematic

I'm trying to control a 35W 40khz transducer which is widely available: transducer link

Now I changed the first 555 timer part of the circuit with the Arduino. Resulting in the following:

Arduino ultrasonic cleaning circuit

But for one reason it's not working properly. It's drawing some current but not very much and seems not to do so much. As a power supply I'm using a simple bench-top power supply (0-30v, 5A)

What am I doing wrong and is there otherwise another way I could drive the Ultrasonic transducer using an Arduino?

Best Answer

enter image description here

Figure 1. Poor bridge driver circuit.

The problem is that of a badly designed bridge driver. The CD4013 is driven from a 5 V supply so the outputs (1) and (2) can only switch between 0 and +5 V. T1 and T2 are configured as voltage followers so the emitter can only reach 5 V less 0.7 V, the voltage drop across the base-emitter junction. The highest voltage at (3) or (4) is 4.3 V despite being powered from 25 V.

Note that the original circuit is all 12 V so the bridge may be able to switch between about 1 and 11 V.

You'll need to use a proper H-bridge driver circuit.