How do I have a time based function be the input for revolute joint position in Simulink

8 visualizzazioni (ultimi 30 giorni)
I am trying to model a motion in which I take data from the real world, regress it into a function and then use this function to drive a simulink model revolute joint for position. I then intend to use the model to do an inverse dynamics calculation of the joint torques that would be needed to create the specified motion.
What block do I use to just specify an input function to the joint as a function of time? I would like to be able to enter a polynomial equation with the regression coefficients.

Risposta accettata

Fangjun Jiang
Fangjun Jiang il 1 Dic 2022
The Clock block provides the time line that the simulation runs on. You can use that for your function.
  3 Commenti
Fangjun Jiang
Fangjun Jiang il 1 Dic 2022
The error comes from a "C Caller" block, not a "MATLAB Function" block. For your need, I would think a "MATLAB Function" block is sufficient. Why use a "C Caller" block?
Dieter
Dieter il 1 Dic 2022
Thanks. I did not know there was a difference. The blocks look identical when I search for Matlab function. Must have had the wrong one. Now its on to a different error about input derivatives, but at least I am past that sticking point.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Simulink Environment Customization in Help Center e File Exchange

Prodotti


Release

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by