Skip to main content
Hailing SKY
Associate III
January 30, 2018
Question

STM32L4 DAC for Actuation - 16 Channels

  • January 30, 2018
  • 9 replies
  • 1725 views
Posted on January 30, 2018 at 17:51

Dear All,

I am using STM32L476 to generate actuating signals (50k Sine wave, ±6 V) for 16 piezoelectric actuators. I realize there are just two DAC channels for this MCU. I would like to know what kind of external circuit I need to control the output actuating signal.

In my case, I would like to actuate one channel at a time, say just Actuator 1 for the first actuation. The rest are now excitated, but in a full cycle, every actuator needs to be actuated one after another.

0690X00000604KTQAY.jpg

I have got an idea to amplify the unipolar 0-3V sine wave from DAC output to bipolar ±6V signal, but I am still trying to find a solution to control the actuation sequence using two DAC channel for 16 actuators. If you have any idea, it would be my great honor to listen.

Best,

Hai

#stm32l4 #dac #stm32-f4 #stm32

Note: this post was migrated and contained many threaded conversations, some content may be missing.
This topic has been closed for replies.

9 replies

T J
Senior III
January 31, 2018
Posted on January 31, 2018 at 01:48

You could switch to any node through a FET ,  ie you would use 16 FETs and 1 amplifier

any FET can be on or off

Only one DAC used;  

   the signal for the DAC is constantly on, ( you can substitute with 50Khz Oscillator to save CPU overhead.)

just switch the FETs from IO pin...  need 16 pins to enable FETs

You can choose,

none ON.

1 ON,

3 ON,

amplify before the FETs, you only need 1 amplifier, but you need beefy FETs,

amplifier size depends on Loading.

Hailing SKY
Associate III
January 31, 2018
Posted on January 31, 2018 at 14:43

Thanks, T J. I found online there are demultiplexers, such as CD4051B from TI, for sequence control. Using this chip, I think I can use 4 GPIO pins to control 8 channels. Do you think this is an opition? 

For the actuation signal, it will be sine waves with a Hanning window. So I guess I should use DMA+ADC for generation.  I never used demultiplexers before. Please let me know if you have any suggestions.

Thanks,

Hai

T J
Senior III
January 31, 2018
Posted on January 31, 2018 at 23:20

it really depends on the accuracy you need at the output.

I was thinking that you amplify the output, then route it to the FETs,

if you use the 4051 (not great analog switch), then you need many power amplifiers.

how much power do you need to drive the piezo ?  

The 4051 has an on resistance of 125 ohms.

if you have the spare pins on the processor, I would use those to save having any extra parts on your board.

but if you want to multiplex, do it on the digital side to save the analog accuracy, if its important.

On many solutions, we used the 74LS138 3:8 decoder,

https://www.digikey.com/product-detail/en/texas-instruments/SN74LVC138APWR/296-1223-1-ND/276491

 
henry.dick
Associate II
January 31, 2018
Posted on February 01, 2018 at 00:29

You probably want to figure out first the piezoelectric elements signal / excitation requirements. Like do they need sine wave? Do they require sustained excitation? .... 

Without that understanding you are simply shooting in the dark.