errors when generating certain motions of Revolute Joint in simMechanics

The model:
The simMechanics system is as follow:
simin is input from workspace and is the motion of Revolute Joint as the time goes on.
But it shows some kind of error: In the dynamically coupled component containing Revolute Joint Revolute_Joint, there are fewer joint primitive degrees of freedom with automatically computed force or torque (0) than with motion from inputs (1). The prescribed motion trajectories in this component may not be achievable. Solve this problem by reducing the number of joint primitives with motion from inputs or increasing the number of joint primitives with automatically computed force or torque. Resolve this issue in order to simulate the model.
Does anybody knows what's wrong and what should I do to solve the problem.

3 Commenti

If you specify one input, there must be one coupling automatic computed force to counter this effect. It means if the solid moves, there must be corresponding force applied on it. Solution: Simply change the actuation force to automated computed.
Hello @Shuangjun, I am also facing same problem and I changed actuation force to automated computed but the problem is same. Image showing error attached. Can you please help me to resolve this.
I believe another reason for your error is that you need to go to (Simulink PS-Converter) and turn the second order differentiation. First test your simulink by giving a sin input, then try to import your variables

Accedi per commentare.

Risposte (1)

Steve Miller
Steve Miller il 5 Ago 2017
Modificato: Steve Miller il 5 Ago 2017
I suspect all you need to do in the model pictured above is set the Torque setting to "Automatically Computed" in your Revolute joint.
To configure motion actuation at a Revolute Joint, you make two changes as shown in the image below. This lets you perform inverse dynamics simulation with Simscape Multibody, where the simulation tells you the forces and torques required to achieve a desired motion trajectory.
You can solve very challenging inverse dynamics problems with Simscape Multibody, including prescribing the motion along one degree of freedom and determining the required force/torque at other degrees of freedom. For more details, see the documentation page Specifying Joint Actuation Inputs.
Attached to this answer is a modified version of shipping example sm_four_bar where one input is driven with motion actuation. Please note the settings within the Simulink-PS block, including units and input filtering. When possible, let Simscape calculate a consistent set of derivatives for you (see documentation page Specifying Motion Input Derivatives).
Thanks,
--Steve

4 Commenti

I had the same problem when i set the torque actuation to automatically computed. Revolute joints only have one rotational degree of freedom. The components that i am connecting with the joint is coincident with the z-axis.But the error says that "there are more joint primitive degrees of freedom with automatically computed force or torque (1) than with motion from inputs". I dont know where are these other joint primitive degrees if freedom came from when the revolute joint specifically makes it so that the connection will have only one rotational degree of freedom. I may be just lacking knowledge, but I dont get this error.
The illustration above must be included in the help as a note in such cases!
It is much more impressive than the simscape error message.
This error message is so poor in information that you can't do anything with it!
@Joben Kennard Arroyo when you controlling the position only, if your signal is coming from a continous source or workspace, perhaps you need to go to Simulink Ps-Converter block, turn on the filtering and decond second order. This way it will calculate the speed and acceleration as well

Accedi per commentare.

Richiesto:

il 18 Mar 2015

Commentato:

il 29 Mag 2025

Community Treasure Hunt

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

Start Hunting!

Translated by