Hi dude i m a sophomore electrical engineer, who wants to focus on control engineering, i had a conversation with a former gnc engineer. And he told me to study some group theory to understand quarternions. I didn't know what either of these things were. While being overwhelmed by heavy math. I found you bro. Thanks
Nice. I used quaternions for both the sensor fusion and the control system in a drone for my thesis. The setpoint, measurement and error signals were all quaternions. The integrator in a classical scalar filter was replaced by a rotation (which in continuous time is infinitesimal). If the quaternion is re-normalized at each step, then the norm is always close to 1 and the renormalization can be performed by an approximate algorithm without using expensive divisions.
Even more, since quaternions are part of GA's framework in the form q = 1+ix+iy+iz, where the imaginary unit appended to a vector morph it into a rotational plane segment (bivector/pseudovector) orthogonal to said vector.
This video is amazing! I've always loved maths, and I've always loved space, and for a while now, I've been wanting to learn more about how rockets work and the maths that goes on behind the scenes, so this video has honestly been perfect :)
First time stumbling across your channel! As someone planning on doing an ASE degree (currently on Physics) these videos are so interesting although i don't understand everything all the time. Hopefully you keep making content because till now youve been going great! Definitely deserves more views (currently 9,1k)
Hi @Garret_R. Nice video! However, I'd say there's a little mistake that got magically corrected. Let me explain: In the case where Q_err would give you the error over the long path, that is rotating the other short way around, what you have to do is take -Q_err, the negative, not Q_err.conj(). Q_err.conj() would rotate in the long direction path also, but in the opposite direction. -Q_err would make the same orientation correction you want, but following the short path. Then, you take the imaginary parts, and voila, you end up fixing the mistake, because the imaginary part of Q_err.conj() is the same as the imaginary part of -Q_err !! In fact, the only thing you need to check is that the real part of Q_err is positive. If it is negative, then flip the whole Q_err with Q_err = -Q_err, and continue. Nice video anyway, and keep it up with your projects!!
Isn't the conjugate of q_err what you want (assuming unit quaternions)? Because when the real part is less than 0, it's not an optimal rotation so you take the conjugate to represent the same orientation but in the opposite direction. It has the same result as taking the negative because you only use the imaginary for the controller, but in terms of orientation representation that's correct method, right? This is what is done in the paper (see page 4): www.diva-portal.org/smash/get/diva2:1010947/FULLTEXT01.pdf and thank you!
Very interesting! I never realized quaternions uses imaginary numbers! I however only learned about euler angles and quaternions as 2 different ways of controlling object rotation/orientations in game engines like Unity, Unreal and Godot but have not detail studied these concepts further other then I know about the gimbal lock issue with euler angles making as I understand quaternions the superior method to use.
@@TheGarrettR Geometric Algebra reveals the true nature of quaternions: XY plane = i YZ plane = j XZ plane = k Scalar = The quaternion's real component The reason why quaternions are counterintuitive is because they try to represent planes of rotation in 3D with vectors instead (plus the point-like 0-dimensional scalar, making it a 4D vector hyperspace). With the Geometric Product it can proven that: (XY)²=(YZ)²=(XZ)²=(XY)(YZ)(XZ)= -1 _(Note: the basis vectors are actually named e_1, e_2, e_3, instead of X,Y,Z.)_ Suggested: _“A Swift Introduction to Geometric Algebra”_ by sudgylacmoe on RUclips.
Much of this topic relies on some knowledge of quaternions or PID control. If you watch some videos on PID control and check out 3Blue1Brown's series on quaternions, you'll probably be able to understand it better than you think.
@@TheGarrettRHi can I talk to you about these things I really wanna learn and I am actually an engineering student just started so can you plz help and talk to me
@@themagicartroll8961 I'm gonna be honest I'm not the right person to teach you these things, much of it is still something I'm learning myself. I would highly recommend checking out some of the information I linked in the description (there are already amazing tutorials out there), and seeking additional advice from people on discord or reddit when you get stuck on something.
The gimbal I'm currently using is based on the K-9 TVC Gimbal Gen 2 by Canine Defense Technologies. There is much I want to improve on, however it should hopefully do for flight 1.
Nice. I'm no field expert, but do u use the rodriguez formula or Just quats? I thought quaterbions are widely used in robotic software, but its the same, instead of the angle, you use half the angle for quats.
I just use quaternions, not the rodriguez formula. The angle is half the angle for quaternions, which is why you construct a "halfway" quaternion, because it represents double the rotation. They talk about this a little here: stackoverflow.com/questions/1171849/finding-quaternion-representing-the-rotation-from-one-vector-to-another
This video was the last thing I needed to finish my GNC algorithm. Thanks for sharing in such an easy-to-understand format!
I guess I'll follow this channel for the upcommin years now
Hi dude i m a sophomore electrical engineer, who wants to focus on control engineering, i had a conversation with a former gnc engineer. And he told me to study some group theory to understand quarternions. I didn't know what either of these things were. While being overwhelmed by heavy math. I found you bro. Thanks
The missile knows where it is...
It knows this because it knows where it isn't.
Nice. I used quaternions for both the sensor fusion and the control system in a drone for my thesis. The setpoint, measurement and error signals were all quaternions. The integrator in a classical scalar filter was replaced by a rotation (which in continuous time is infinitesimal). If the quaternion is re-normalized at each step, then the norm is always close to 1 and the renormalization can be performed by an approximate algorithm without using expensive divisions.
That's awesome man! Good luck on your project! I hope to see your "much much bigger' project soon
I may not understand anything, but that baby boy!
Nicely done! Looking forward to the launch.
Quaternions, control theory, thrust vector control...you earned a new subscriber!
Great work, thanks for sharing resources as well!
THIS IS SICK
This is excellent. I've come to prefer geometric algebra more for generalized transformations, but quaternions are still cool.
Even more, since quaternions are part of GA's framework in the form q = 1+ix+iy+iz, where the imaginary unit appended to a vector morph it into a rotational plane segment (bivector/pseudovector) orthogonal to said vector.
@linuxp00 Yes, this is part of an even subalgebra.
This video is amazing! I've always loved maths, and I've always loved space, and for a while now, I've been wanting to learn more about how rockets work and the maths that goes on behind the scenes, so this video has honestly been perfect :)
Amazing flow to the video and well explained, keep it up!
First time stumbling across your channel! As someone planning on doing an ASE degree (currently on Physics) these videos are so interesting although i don't understand everything all the time. Hopefully you keep making content because till now youve been going great! Definitely deserves more views (currently 9,1k)
Awesome video dude, learned a lot from this. Hope the launch goes swimmingly :)
Keep going mate
I liked this video so im subbed
Hi @Garret_R. Nice video!
However, I'd say there's a little mistake that got magically corrected. Let me explain:
In the case where Q_err would give you the error over the long path, that is rotating the other short way around, what you have to do is take -Q_err, the negative, not Q_err.conj(). Q_err.conj() would rotate in the long direction path also, but in the opposite direction. -Q_err would make the same orientation correction you want, but following the short path.
Then, you take the imaginary parts, and voila, you end up fixing the mistake, because the imaginary part of Q_err.conj() is the same as the imaginary part of -Q_err !!
In fact, the only thing you need to check is that the real part of Q_err is positive. If it is negative, then flip the whole Q_err with Q_err = -Q_err, and continue.
Nice video anyway, and keep it up with your projects!!
Isn't the conjugate of q_err what you want (assuming unit quaternions)? Because when the real part is less than 0, it's not an optimal rotation so you take the conjugate to represent the same orientation but in the opposite direction. It has the same result as taking the negative because you only use the imaginary for the controller, but in terms of orientation representation that's correct method, right? This is what is done in the paper (see page 4): www.diva-portal.org/smash/get/diva2:1010947/FULLTEXT01.pdf
and thank you!
Very interesting! I never realized quaternions uses imaginary numbers! I however only learned about euler angles and quaternions as 2 different ways of controlling object rotation/orientations in game engines like Unity, Unreal and Godot but have not detail studied these concepts further other then I know about the gimbal lock issue with euler angles making as I understand quaternions the superior method to use.
Nice video. well done
Good effort 👍🏼
Gotta love quarternions in control systems
Just working on my own gimbal and custom flight controller, you got this! get that bag lmao
very well done. Euler is pronounced oiler.
banger title
I don't understand a bit but feel amazing 😂
Nice project.
clicked for cool concept, stayed for cute guy
Nice work
This is so cool
Really cool. Have you looked into Geometric Algebra?
I have not
@@TheGarrettR Geometric Algebra reveals the true nature of quaternions:
XY plane = i
YZ plane = j
XZ plane = k
Scalar = The quaternion's real component
The reason why quaternions are counterintuitive is because they try to represent planes of rotation in 3D with vectors instead (plus the point-like 0-dimensional scalar, making it a 4D vector hyperspace).
With the Geometric Product it can proven that:
(XY)²=(YZ)²=(XZ)²=(XY)(YZ)(XZ)= -1
_(Note: the basis vectors are actually named e_1, e_2, e_3, instead of X,Y,Z.)_
Suggested: _“A Swift Introduction to Geometric Algebra”_ by sudgylacmoe on RUclips.
I believe in you boy!
Could this maths be used in guidance systems such as for missiles or interceptions of said missiles?
Mmm I want to know too
I think that's why he's not able to get into certain specifics of the maths.
1:27 an extended WHAT filter?
Maybe if I come back to rewatch this in two years, I'll understand it more. 😵💫
Much of this topic relies on some knowledge of quaternions or PID control. If you watch some videos on PID control and check out 3Blue1Brown's series on quaternions, you'll probably be able to understand it better than you think.
@@TheGarrettRHi can I talk to you about these things I really wanna learn and I am actually an engineering student just started so can you plz help and talk to me
@@themagicartroll8961 I'm gonna be honest I'm not the right person to teach you these things, much of it is still something I'm learning myself. I would highly recommend checking out some of the information I linked in the description (there are already amazing tutorials out there), and seeking additional advice from people on discord or reddit when you get stuck on something.
❤Nice video, how did you design the gimbal?
The gimbal I'm currently using is based on the K-9 TVC Gimbal Gen 2 by Canine Defense Technologies. There is much I want to improve on, however it should hopefully do for flight 1.
Off-topic : then why in QM., Why there's only be Imaginery X-axis (i). And No imaginery Y & Z-axis (j & k)
j and k are also imaginary numbers in this case
Nice. I'm no field expert, but do u use the rodriguez formula or Just quats? I thought quaterbions are widely used in robotic software, but its the same, instead of the angle, you use half the angle for quats.
I just use quaternions, not the rodriguez formula. The angle is half the angle for quaternions, which is why you construct a "halfway" quaternion, because it represents double the rotation. They talk about this a little here: stackoverflow.com/questions/1171849/finding-quaternion-representing-the-rotation-from-one-vector-to-another
This is honestly really cool and I wish you luck. But it's so stupid you can't talk about math or Uncle Sam will get angry.
3:53 multiplying a quaternion the conjugate of it gets the real part i think, did you mean multiplicative inverse?
If the quaternion is a unit quaternion, I believe the conjugate and the inverse of a quaternion should be the same
Do you have a discord server?
👀
Bravo Zulu!
Hi can I talk to you?
gosh you'e cute
👀