Logartihmic Amplifier in Simulink

Hello,
I need a block that function as a Logartihmic Amplifier for a sound level meter desing in simulink.
I tried ussing the Amplifier block, but i dont know how to adapt it to my needs.

 Accepted Answer

Daniel
Daniel on 27 Mar 2023
If you just want to implement this generically, it shouldn't be hard to build up from the mathematical definition.
  1. Divide Vin by Vref with a Divide block or a Gain block. The block output is Vin/Vref.
  2. Take the log of the output with a Log block. The block output is ln(Vin/Vref).
  3. Multiply by K with a Gain block. The block output is K*ln(Vin/Vref).
If you want that to look pretty, you can package it in a subsystem, and perhaps create a mask to define K and Vref.

3 Comments

Thanks for your answer.
I attached the .slx code so you can see why the divide block wouldnt work for me, i dont have 2 impunt.
I look forward to your suggestions
You can use a Gain block in that case, which has one input and one parameter.
You can also use Constant blocks to create non-varying signals.
Thanks ! Ill try that and will get back to you.

Sign in to comment.

More Answers (0)

Categories

Find more on Simulink in Help Center and File Exchange

Tags

Asked:

on 27 Mar 2023

Commented:

on 28 Mar 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!