MATLAB Answers


Joint Actuator in SimMechanics - Right signal for motion control?

Asked by Christopher
on 9 Nov 2011

Hello Folks,

I try to build a SimMechanics Model of a double pendulum in zero gravity to show the effect of inertia. Part 1 is getting actuated, at the origin of the coordinate system, by a Joint Actuator with a sinus function (e.g. with an amplitude of around +-5°). Part 1 and 2 are just connected by a normal revolt joint without anything else. I choose at the Joint Actuator menu the option "Actuate with: Motion". The sinus function represents the angle. Angular velocity and acceleration are differentiated manually by my self. Then i muxed the three signals and so on. The point is, when i start the simulation by an angle of 0°, Part 2 of the pendulum shows at the beginning a movement in the same direction like Part 1, e.g. clockwise. But this is impossible because of the inertia of Part 2. When the simulation starts from the point of max. amplitude, where the velocity is zero, everything is find and the movement of Part 2 is opposite to Part 1. How is this possible? Another example: I set angular position and velocity to zero and the acceleration to a constant value. The actuated joint showed no movement, but the other (between Part 1 and 2) started rotating faster and faster. Is there maybe a bug in the Joint Actuator Block? Or has it something to do with the fact, that it is physically impossible to start with a velocity greater than zero and so the block can't handle the input signal?

I would by very thankful, if someone could help me with this problem! Thanks in advance!

Sincerely, Christopher



No products are associated with this question.

0 Answers

Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!