Finding the peak of a sinusoidal voltage using only Simulink Blocks (No Matlab Function Block)

14 visualizaciones (últimos 30 días)
Hi there!
I have a simulink model where I am measuring the line voltages. I need to find the peak of the line voltages over the first 10 cycles for example. So I will have a varaible named "peak_voltage" which should have a value of 0 when the simulation time did not reach 10 cycles, and a value of the peak line voltage afterwards.
I have achieved this using piece of code within a "Matlab Function Block" where I use a persistent variable that gets updated each cycle with the value of the current line voltage when it is on the positive slop of the line signal. But I need to achieve this by only using Simulink Blocks! Any ideas would be appreciated. Thanks
  1 comentario
Madhusudan
Madhusudan el 3 de Jul. de 2024
Hello Hassan,
how did you created the model for finding peak max value of voltage ?
i am replacing the RMS block with MATLAB function block or simulink model, because RMS block is not valid block for generating HDL from simulink model.

Iniciar sesión para comentar.

Respuestas (1)

Sam Chak
Sam Chak el 24 de Feb. de 2024
Isn't the MATLAB Function block part of the Simulink block families that grants you the greater potential to achieve what you want in a more convenient way? It is also possible to create a Custom Simulink block to strictly execute the tasks that you specify. You can refer to the following tutorial for detailed instructions:
  3 comentarios
Sam Chak
Sam Chak el 26 de Feb. de 2024
No worries, @HASSAN ABDELGABIR. However, what specifically hinders you from enhancing your efficiency by utilizing the MATLAB Function and Custom Blocks? Have you experimented with the Max block?
HASSAN ABDELGABIR
HASSAN ABDELGABIR el 26 de Feb. de 2024
Yes I was able to achieve it using Max block and if block in Simulink. The key was to use the Data Store Memory block to replicate the behavior of persistent variables.
Thank you

Iniciar sesión para comentar.

Community Treasure Hunt

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

Start Hunting!

Translated by