Borrar filtros
Borrar filtros

How to implement Hermite spline in Simulink

5 visualizaciones (últimos 30 días)
MARCO LORENZI
MARCO LORENZI el 22 de Sept. de 2021
Editada: MARCO LORENZI el 24 de Sept. de 2021
Good morning everyone.
Can i ask if it there is a way to implement the Hermite spline (pchip) or Bezier curves in simulink?
In particular, i am using a look-up table to interpolate a curve between some point, but the cubic and akima splines don't do a good job. I was thinking about using a linear interpolating method and then smoothen up the curves, but i can't find any blockset.
Thank you very much in advance.

Respuesta aceptada

Bjorn Gustavsson
Bjorn Gustavsson el 22 de Sept. de 2021
There is a way to make blocks that wrap a matlab-function (matlab-functions-simulink_5), shouldn't that solve this task?
HTH
  5 comentarios
MARCO LORENZI
MARCO LORENZI el 24 de Sept. de 2021
i don't think it is hard but i do not know how to do it. Basically, based on the input, that goes from 0 to 90, the first block does this:
The second one this:
And the output is y.
Bjorn Gustavsson
Bjorn Gustavsson el 24 de Sept. de 2021
To me it seems as you swapped the x and xq in the function. It ought to be:
function output = low_angles_Hermite_approximation(phase)
xq = phase;
y = [0 0 0 0 0 0 0 1 1];
x = [0 2.5 5 7.5 10 13 15 30 90];
output = pchip(x,y,xq);
When you program and run into errors like these read the help and documentation carefully - and calmly, far to often it is easy to rush that part. Also be prepared to use the debug-facilities of matlab, I typically turn on debug-stop after an error:
>> dbstop if error
Then you get a command-line prompt at the line where the error occurred with command-line access to all variables in the function and it is possible to step up in the function call-stack.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Simulink Functions en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by