Skip to content

MEMS 006 - Piezocomposite transducer

In this example case, a piezocomposite ultrasound transducer is simulated. Their main application is in medicine, where they are used for ultrasound imaging and medical therapeutics. Other applications include sonar and non-destructive testing.

The model captures a single element of a 1-3 piezocomposite linear array. The piezocomposite combines a soft PZT with an epoxy filler with a 40% volume fraction. The piezocomposite sits on a backing layer, and utilizes a 1/4 wavelength matching layer for better coupling into the water load. The centre element of the array is driven with a short voltage pulse to allow the wideband behaviour, or impulse response, of the device to be captured. Key outputs are:

  • Drive voltage and current
  • Pressure in the load
  • Electrical impedance

Demo project: Piezocomposite demo V1

Example image

Simulation setup guide

Here you’ll find a simplified, example case level guide for setting up a piezocomposite transducer simulation in Quanscient Allsolve.

Step 1 - Define shared expressions

Start out in the Properties section by defining shared expressions:

NameDescriptionExpression
frequencyFrequency [Hz]1.25e6
ncyclesNumber of cycles5
npillarsNumber of pillars5
thick_compComposite thickness [m]1e-3
kerfCut width [m]0.15e-3
pitchDistance between cuts [m]0.4e-3
pillarPillar width [m]pitch-kerf
widthElement width [m]npillars*pitch - kerf

Step 2 - Build the geometry

  1. Go the Model section.

  2. Start building the model geometry by adding Box elements:

    NameElement typeCenter point [m]Size [m]Rotation [deg]
    pztBoxX: 0X: widthX: 0
    Y: 0Y: widthY: 0
    Z: thick_comp/2Z: thick_compZ: 0
    NameElement typeCenter point [m]Size [m]Rotation [deg]
    cut xBoxX: 0X: widthX: 0
    Y: -width/2 + kerf/2 + pillarY: kerfY: 0
    Z: thick_comp/2Z: thick_compZ: 0
    NameElement typeCenter point [m]Size [m]Rotation [deg]
    cut yBoxX: -width/2 + kerf/2 + pillarX: kerfX: 0
    Y: 0Y: widthY: 0
    Z: thick_comp/2Z: thick_compZ: 0
  3. Use the Translate operation to copy the cuts in X and Y directions:

    NameElement typeTargetTranslation [m]CopyRepeat count
    copy xTranslationcut y volume (25)X: pitchYesnpillars - 2
    Y: 0
    Z: 0
    NameElement typeTargetTranslation [m]CopyRepeat count
    copy yTranslationcut x volume (13)X: 0Yesnpillars - 2
    Y: pitch
    Z: 0
  4. Use the Union operation to merge all the multiplied cuts to a single volume:

    NameElement typeTarget
    combine polymerUnioncut volumes (13, 25-31)
  5. Confirm model changes.

Finished geometry:

Example image

Step 3 - Define the materials

Go to the Properties section to define model materials.

Material 1 - PZT

Assign PZT to the piezoelectric pillars.

There are 25 of them in total. To save some clicks:

  1. Select all volumes
  2. Remove the epoxy filler volume (2) from your selection.

Example image

Material 2 - Epoxy

Create a new material for the epoxy filler:

MaterialTarget
EpoxyPolymer filler volume (2)

Define properties for Epoxy:

PropertyValueUnits
Density1134kg/m3\rm kg/m^3
Elasticity matrixPoisson’s ratio: 0.37-
Young’s modulus: 3.831e9Pa\rm Pa
Electric permittivity4*epsilon0F/m\rm F/m

Example image

Step 4 - Define the physics

Go to the Physics section.

The Elastic waves and Electrostatics physics are required for this example. Add both of them before moving on to define interactions.

Physics 1 - Elastic waves

  • Let elastic waves target default to the whole geometry.
  • Add the Elastic waves - Electrostatics coupling Piezoelectricity.
    • Select the PZT target shared region as target. Example image

Physics 2 - Electrostatics

  • Let Electrostatics target default to the whole geometry.

  • Add a Constraint interaction which acts as a ground on the bottom surface:

    InteractionTargetConstraint value
    ConstraintBottom surface of the element0

    Example image

  • Add a Lump V/Q interaction which drives a voltage on the top surface:

    InteractionTargetVoltage
    Lump V/QTop surface of the elementwavelet(frequency, 1.2)

    Example image

Step 5 - Generate the mesh

Go to the Simulations section and create a new mesh:

  1. Set Mesh quality to Expert settings.
  2. Set Used mesher to Basic.
  3. Set Max size to kerf.
  4. Apply settings and mesh.
  5. Check the preview:

Example image

Step 6 - Simulate

In the Simulations section, create a new simulation:

  • Set Analysis type to Transient.

  • Select timestepping options:

    Timestep algorithmStart time [s]End time [s]Timestep size [s]
    Generalized alpha0ncycles/frequency1/frequency/20
  • Select the mesh.

  • Add Outputs:

    Output typeNameOutput expressionSkin only
    FieldDisplacement field uuYes
    Custom valueVoltagelump.V
    Custom valueCurrentdt(lump.Q)

Your simulation is now ready to run.

Step 7 - Results

In the Simulations section, you can add plots to see value output results and visualizations to see field output results.

  • Voltage:

    Example image

  • Current:

    Example image

  • Displacement field:

    Example image