Angular positons are wrong how to correct them ?

조회 수: 15 (최근 30일)
Caren dudy
Caren dudy 2022년 1월 1일
편집: Caren dudy 2022년 1월 4일
This is the 3d animation secreenshot of my triple pendulum.
I have oriented them as such, so that when i put 0 degree to 'Specify position target' on revolute joint blocks seen below, they would make 0 degree with respect to +x direction.(CCW-positive and CW-negative). I have made new frames (F1-F2) on tips of each rods and connect them with point masses, instead of translating the frames.
But when i am trying to obtain theta values only theta_1 comes up with correct values. Theta_2 and Tehta_3 are false.( I am compering the results with an already derived graph in an academic study).
Also trying to get the coordinates (x2 y2 ,x3 y3) of 2nd and 3rd point mass is again gives wrong results. Only theta_1 and x1 y1 values are correct. I think its about the orientation of frames, first revolute joint is connetted to the ground so values are gained according to ground but the other frames are giving theta and positions with respect to the frame that they connected i think, or something like that i am not sure. How can i get theta1-2-3 as degrees with respect to +x direction (CCW-positive CW-negative).
Here is my theta 1-2-3 graph (Yellowline-theta1,Blue-theta2,Orange-theta3)
And how it should be.

채택된 답변

Les Beckham
Les Beckham 2022년 1월 1일
편집: Les Beckham 2022년 1월 1일
I believe that the angles are the angular displacements of the individual joints. If you wish to plot the total angular displacement you will need to add them together before your graph block. Add Sum blocks to the theta2 and theta3 lines before the Mux block. The inputs to the first one will be theta1 and theta2 (thus giving you theta1+theta2). The inputs to the second one will be the output of the first Sum (theta1+theta2) and theta3 (thus giving you theta1+theta2+theta3).
Theta1 will need to connect both to the first port on the Mux block and one of the inputs of the first Sum block. Similarly, the output of the first Sum block will need to connect both to the second port on the Mux block and to one of the inputs on the second Sum block. The output of the second Sum block will connect to the third port on the Mux block.
This should give you the total angular displacement at each of the three joints.
I don't have Simulink right now or I would show this.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Assembly에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by