Monday, 2 July 2018

audio - Is this circuit for Piezo Transducer and corresponding resistor values correct?


I want to drive this piezo transducer (https://www.mouser.com/datasheet/2/670/cpt-9019s-smt-1310960.pdf) at 3V and 4kHz with STM32F0 microcontroller. This is a follow-up to my previous question (Is this circuit for Piezo Transducer sufficient?). Since then, I've made some progress and come up with this circuit:


schematic


simulate this circuit – Schematic created using CircuitLab


R1 is to limit the amount of current the microcontroller pin draws and R2 is to discharge the speaker when there is no output to the speaker (since it acts like a capacitor). The MCU can draw a max of 25mA of current, but the speaker only uses a max of 5mA when driven at 3V and 4kHz. So I will limit the current draw from the MCU to 10mA. This gives i_c a value of 10mA and R1 a value of \$330\Omega\$. (R1 = \$\frac{3.3V}{10mA}\$). Since the speaker draws a max of 5mA, i_s = 5mA and i_b = 5mA. The schematic with the values plugged in is:


schematic


simulate this circuit


To determine R2, I know I want 3V to be applied to the speaker, so the voltage drop over R2 will be 3V. Using Ohm's Law, \$R2 = \frac{3V}{5mA} = 600\Omega\$.


My two main questions are:




  1. Is this circuit fundamentally correct to drive the transducer?

  2. Do the values for resistors R1 and R2 make sense or am I overlooking something?



Answer



If the piezo speaker only draws 5 mA at 4 kHz when driven with a peak positive voltage of 3 volts then there is no need for a current limiting resistor if you are driving it with a peak voltage of 3 volts.


On the other hand, it might be a good idea to have a series resistor to prevent the instantaneous current draw from the MCU pin exceeding limits stated in the data sheet so, focus on that and not the speaker.


You don’t need a parallel resistor to discharge the piezo speaker capacitance because when the MCU pin cycles naturally through a low part of the waveform, it will discharge the piezo capacitance.


Your calculation for R2 is fundamentally misplaced in theory.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...