The Quaternion Toolbox has been developed in LabVIEW 2017. There are 8 sub Vis in the Toolbox.
#
Transformation
Filename
Input(s)
Output(s)
1
Euler Angles -> Quaternions
HMI_KT_EulerAngles2q.vi
[R;P;Y]
[q0;q1;q2;q3]
2
Quaternions -> Euler Angles
HMI_KT_q2EulerAngles.vi
[q0;q1;q2;q3]
[R;P;Y]
3
Quaternions -> Angle & Axis
HMI_KT_q2vphi.vi
[q0;q1;q2;q3]
theta, [n1;n2;n3]
4
Quaternion Addition
HMI_KT_qadd.vi
[p0;p1;p2;p3] [q0;q1;q2;q3]
r=p+q
5
Quaternion Multiplication
HMI_KT_qmult.vi
[p0;p1;p2;p3] [q0;q1;q2;q3]
r=p*q
6
Quaternion Conjugate
HMI_KT_qconj.vi
[q0;q1;q2;q3]
qconj
7
Angle & Axis -> Quaternions
HMI_KT_vphi2q.vi
theta, [n1;n2;n3]
[q0;q1;q2;q3]
8
Skew Symm
HMI_KT_SkewSymm.vi
v
S(v)
Task 1: Convert each sub VI to MATLAB fuction.
#
Transformation
LabVIEW VI
MATLAB function
1
Euler Angles -> Quaternions
HMI_KT_EulerAngles2q.vi
EulerAngles2q.m
2
Quaternions -> Euler Angles
HMI_KT_q2EulerAngles.vi
q2EulerAngles.m
3
Quaternions -> Angle & Axis
HMI_KT_q2vphi.vi
q2vphi.m
4
Quaternion Addition
HMI_KT_qadd.vi
qadd.m
5
Quaternion Multiplication
HMI_KT_qmult.vi
qmult.m
6
Quaternion Conjugate
HMI_KT_qconj.vi
qconj.m
7
Angle & Axis -> Quaternions
HMI_KT_vphi2q.vi
vphi2q.m
8
Skew Symm
HMI_KT_SkewSymm.vi
SkewSymm.m
Example: Angle & Axis -> Quaternions
Task2:WriteMATLABscriptfilethatwillprovidethesamefunctionalityas¡°Vector Rotation using Pure Quaternions.vi¡±.
Euler Angles -> Quaternions
Quaternions -> Euler Angles
Quaternions -> Angle & Axis (Unit Vector)
Quaternion Addition
Quaternion Multiplication
Quaternion Conjugate
Angle & Axis (Unit Vector) -> Quaternions
Skew Symm
Vector Rotation using Pure Quaternions