I am trying to drive a piezo speaker at 20kHz with maximum voltage swing from a 10V source. Previously I had used a square wave plus its inverse to give the equivalent of 20V across the speaker but I knew this could be improved. My research revealed autotransformer and LC resonant circuit options and I also came across TI's DRV8662 as well as the LT3469 from Linear.
After considering the choices I tried an autotransformer which didn't work (I guess the frequency I needed was too high for the sample autotransformer I had) so I settled on the tuned LC approach.
Fig.1 is the LTSpice circuit that I breadboarded and it works pretty well. C5 represents the piezo speaker and L1 is the resonant inductor. With preferred component values I get resonance at about 23kHz. The single-ended waveform on my scope across the speaker is 38Vpp which correlates pretty well with the simulated one in fig.2 (OUT_A blue trace). In the simulation I show a 2nd output across C2 (OUT_B red trace), to show the two out of phase waveforms of equal magnitude.
The goal was to connect the two complementary outputs across C5 ( omitting C2) and getting 2x the voltage swing. One difference to note between simulation and breadboard is that I use a TC4428 dual high-speed MOSFET driver with inputs from one 555 rather than the outputs from the two 555 timers as in the simulation - the second 555 in the simulation configured as an inverter was purely to get a quick LTSpice model running with a square wave source plus its inverse. The TC4428 has complementary outputs plus good drive capability for capacitive loads.
Fig.3 shows what I intended to be the final differential drive setup and fig.4 shows the LTSpice waveforms. The green trace is what I was hoping to get. It all looks good but in practise I do not get the full differential waveform across the speaker and the question is why. Instead of approx. 80Vpp I am getting only 35Vpp. Each output measured separately shows they are down to about 16Vpp instead of the previous 38Vpp. My assumption at the outset was that I need the same value inductor for each of the outputs to get resonance since they are driven independently , but perhaps this assumption is wrong. The simulation seems to suggest that this assumption is indeed correct. I also included ESR in C5 as well as series resistance in L1 and L2 in the simulations. Replacing the speaker with a 100n cap on the breadboard produces the same results.
It seems as though the TC4428 is running out of puff (highly unlikely - the total power drain is approx 300mA) and the power supply is not going into current limit. So I have run out of ideas.
- What could be causing the loss of amplitude in the individual signals and hence in the differential?
- Are there additional considerations that I've missed when driving the load differentially?
- Is my assumption about the inductor values incorrect?
- Is the duty cycle of the driving waveform critical to the outcome?
I have researched similar questions on this forum eg. Differential Driver Maximum Output Voltage Swing but none that I could find address this situation. Any insight would be most welcome.