Why does the angle measured using Transform Sensor block measures only the absolute value of angle, when the actual angle is sinusoidal about zero in SimMechanics R2013b?
조회 수: 21 (최근 30일)
이전 댓글 표시
MathWorks Support Team
2014년 7월 9일
편집: MathWorks Support Team
2021년 6월 23일
I am using Transform Sensor block in SimMechanics to measure angle between two rigid bodies. The base and follower frames are in sinusoidal motion relative to each other about Z-axis. However, the measured angle is reporting only rectified output, i.e., negative half sine wave of the signal is multiplied by -1 and reported as positive half wave. The attached model ('SimplePendulum_AngleOnly.slx') shows this behavior with a simple pendulum model.
채택된 답변
MathWorks Support Team
2018년 4월 25일
편집: MathWorks Support Team
2021년 6월 23일
The output of the 'Transform Sensor' is based on axis–angle representation of rotation in Euclidean space. Please refer to the following documentation in Wikipedia about the axis-angle representation:
In essence, any arbitrary rotation in Euclidean space can be represented as two values: a unit vector and a scalar angle. The resultant rotation is obtained by taking the dot product of these two quantities.
Hence, in the 'Transform Sensor', the output 'q' represents only the angle, which is half the information. To get the complete rotation, you can enable the axis output and use the dot product of the two to obtain correct angular rotation between the base and follower. The attached model ('SimplePendulum_AxisAngle.slx') shows the correct output for the simple pendulum model.
댓글 수: 0
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Nonlinear Operators에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!