当前位置:网站首页>【Paper】2006_ Time-Optimal Control of a Hovering Quad-Rotor Helicopter
【Paper】2006_ Time-Optimal Control of a Hovering Quad-Rotor Helicopter
2022-06-30 04:34:00 【Zhao-Jichao】
List of articles
1. Introduction
2. Dynamical Equations of a Quad-Rotor Helicopter


To illustrate the motion of the helicopter , Pictured 1 A schematic diagram is shown in . In the working space of the helicopter , Define the world coordinate system and the body coordinate system . The world coordinate system represents a coordinate system that all discussions can refer to , The body coordinate system is a coordinate system attached to the helicopter . In order to keep the four rotor helicopter hovering , The four driving forces F i , i = 1 , 2 , 3 , 4 F_i, i = 1,2,3,4 Fi,i=1,2,3,4 The size of the helicopter is adjusted to a quarter of the original helicopter weight . By changing the speed of four rotors at the same time , Can realize the body along z z z The vertical movement of the axis . By reversing 1 Number and 3 Speed of rotor No , keep 2 Number and 4 Speed of rotor No , Can realize the body along x x x Forward movement in axis direction . Reverse change 2 Number and 4 Speed of rotor No , keep 1 Number and 3 Speed of rotor No , The utility model can realize the following functions of the machine body y y y The lateral movement of the shaft . The yaw motion is related to the difference between the moments produced by the rotor . For clockwise rotation , rotor 2 and 4 Speed should be increased , To overcome the rotor 1 and 3 The speed of . On the other hand , To rotate counterclockwise , rotor 3 and 1 The speed should be increased , To overcome the rotor 2 and 4 Speed of . surface 1 The symbol names used in this paper are summarized .
According to the Euler angle, the rotation transformation matrix between the world coordinate system and the body coordinate system can be obtained .
R E B = [ cos θ cos ψ sin θ cos ψ sin ϕ − sin ψ cos ϕ sin θ cos ψ cos ϕ + sin ψ sin ϕ cos θ sin ψ sin θ sin ψ sin ϕ − cos ψ cos ϕ sin θ sin ψ cos ϕ − cos ψ sin ϕ − sin θ cos θ sin ϕ cos θ cos ϕ ] (1) R_{EB} = \left[\begin{matrix} \cos\theta \cos\psi & \sin\theta \cos\psi \sin\phi - \sin\psi \cos\phi & \sin\theta \cos\psi \cos\phi + \sin\psi \sin\phi \\ \cos\theta \sin\psi & \sin\theta \sin\psi \sin\phi \red{-} \cos\psi \cos\phi & \sin\theta \sin\psi \cos\phi - \cos\psi \sin\phi \\ -\sin\theta & \cos\theta \sin\phi & \cos\theta \cos\phi \\ \end{matrix}\right] \tag{1} REB=⎣⎡cosθcosψcosθsinψ−sinθsinθcosψsinϕ−sinψcosϕsinθsinψsinϕ−cosψcosϕcosθsinϕsinθcosψcosϕ+sinψsinϕsinθsinψcosϕ−cosψsinϕcosθcosϕ⎦⎤(1)
The original text is the above formula , There should be a sign error ( Red ), The correct should be as follows
R E B = [ cos θ cos ψ sin θ cos ψ sin ϕ − sin ψ cos ϕ sin θ cos ψ cos ϕ + sin ψ sin ϕ cos θ sin ψ sin θ sin ψ sin ϕ + cos ψ cos ϕ sin θ sin ψ cos ϕ − cos ψ sin ϕ − sin θ cos θ sin ϕ cos θ cos ϕ ] (1) R_{EB} = \left[\begin{matrix} \cos\theta \cos\psi & \sin\theta \cos\psi \sin\phi - \sin\psi \cos\phi & \sin\theta \cos\psi \cos\phi + \sin\psi \sin\phi \\ \cos\theta \sin\psi & \sin\theta \sin\psi \sin\phi + \cos\psi \cos\phi & \sin\theta \sin\psi \cos\phi - \cos\psi \sin\phi \\ -\sin\theta & \cos\theta \sin\phi & \cos\theta \cos\phi \\ \end{matrix}\right] \tag{1} REB=⎣⎡cosθcosψcosθsinψ−sinθsinθcosψsinϕ−sinψcosϕsinθsinψsinϕ+cosψcosϕcosθsinϕsinθcosψcosϕ+sinψsinϕsinθsinψcosϕ−cosψsinϕcosθcosϕ⎦⎤(1)
Then the velocity transformation between the body coordinate system and the world coordinate system is obtained
[ u v w ] = R E B [ u B v B w B ] (2) \left[\begin{matrix} u \\ v \\ w \\ \end{matrix}\right] =R_{EB} \left[\begin{matrix} u_B \\ v_B \\ w_B \\ \end{matrix}\right] \tag{2} ⎣⎡uvw⎦⎤=REB⎣⎡uBvBwB⎦⎤(2)
Similarly , The acceleration 、 Rotation speed 、 Location 、 Both forces and moments can be based on R E B R_{EB} REB Convert between coordinate systems .
In the body coordinate system , Force is defined as
F B = [ F x B F y B F z B ] = [ 0 0 ∑ k = 1 4 F k ] (3) F_{B}= \left[\begin{matrix} F_{xB} \\ F_{yB} \\ F_{zB} \\ \end{matrix}\right]= \left[\begin{matrix} 0 \\ 0 \\ \sum_{k=1}^{4} F_k \\ \end{matrix}\right] \tag{3} FB=⎣⎡FxBFyBFzB⎦⎤=⎣⎡00∑k=14Fk⎦⎤(3)
In the world coordinate system , Force can be described as
[ F x F y F z ] = R E B ⋅ F B = ( ∑ k = 1 4 F k ) [ sin θ cos ψ cos ϕ + sin ψ sin ϕ sin θ sin ψ cos ϕ − cos ψ sin ϕ cos θ cos ϕ ] (4) \begin{aligned} \left[\begin{matrix} F_{x} \\ F_{y} \\ F_{z} \\ \end{matrix}\right]= R_{EB} \cdot F_B = (\sum_{k=1}^{4} F_k) \left[\begin{matrix} \sin\theta \cos\psi \cos\phi + \sin\psi \sin\phi \\ \sin\theta \sin\psi \cos\phi - \cos\psi \sin\phi \\ \cos\theta \cos\phi \\ \end{matrix}\right] \end{aligned} \tag{4} ⎣⎡FxFyFz⎦⎤=REB⋅FB=(k=1∑4Fk)⎣⎡sinθcosψcosϕ+sinψsinϕsinθsinψcosϕ−cosψsinϕcosθcosϕ⎦⎤(4)
therefore ,UAV The movement equation in the world coordinate system is
m [ x ¨ y ¨ z ¨ ] = [ F x − K 1 ⋅ x ˙ F y − K 2 ⋅ y ˙ F z − m g − K 3 ⋅ z ˙ ] (5) m \left[\begin{matrix} \ddot{x} \\ \ddot{y} \\ \ddot{z} \\ \end{matrix}\right]= \left[\begin{matrix} F_{x} - K_1 \cdot \dot{x} \\ F_{y} - K_2 \cdot \dot{y} \\ F_{z} - mg - K_3 \cdot \dot{z} \\ \end{matrix}\right] \tag{5} m⎣⎡x¨y¨z¨⎦⎤=⎣⎡Fx−K1⋅x˙Fy−K2⋅y˙Fz−mg−K3⋅z˙⎦⎤(5)
here K i , i = 1 , 2 , 3 K_i, i= 1,2,3 Ki,i=1,2,3 It's the drag coefficient . Be careful , These coefficients are negligible at low speeds .
therefore , The equation of motion can be derived from the balance of force and moment .
ϕ ¨ = l ( F 3 − F 1 − K 4 ϕ ˙ ) I x (6) \ddot{\phi} = \frac{l (F_3 - F_1 - K_4 \dot{\phi})}{I_x} \tag{6} ϕ¨=Ixl(F3−F1−K4ϕ˙)(6)
θ ¨ = l ( F 4 − F 2 − K 5 θ ˙ ) I y (7) \ddot{\theta} = \frac{l (F_4 - F_2 - K_5 \dot{\theta})}{I_y} \tag{7} θ¨=Iyl(F4−F2−K5θ˙)(7)
ψ ¨ = ( M 1 − M 2 + M 3 − M 4 − K 6 ψ ˙ ) I z (8) \ddot{\psi} = \frac{(M_1 - M_2 + M_3 - M_4 - K_6\dot{\psi})}{I_z} \tag{8} ψ¨=Iz(M1−M2+M3−M4−K6ψ˙)(8)
here l l l The length from the center of gravity of the UAV to each rotor , M i , i = 1 , 2 , 3 , 4 M_i, i=1,2,3,4 Mi,i=1,2,3,4 Is the moment of the rotor , I x , I y , I z I_x, I_y, I_z Ix,Iy,Iz Express x , y , z x,y,z x,y,z Moment of inertia in direction . use F 1 , F 2 , F 3 , F 4 F_1, F_2, F_3, F_4 F1,F2,F3,F4 To express ,(8) It can be rewritten as
ψ ¨ = ( F 1 − F 2 + F 3 − F 4 − K 6 ′ ψ ˙ ) I z ′ (9) \ddot{\psi} = \frac{(F_1 - F_2 + F_3 - F_4 - K_6^{'} \dot{\psi})}{I_z^{'}} \tag{9} ψ¨=Iz′(F1−F2+F3−F4−K6′ψ˙)(9)
here I z ′ = I z / C , K 6 ′ = K 6 / C I_z^{'} = I_z /C, K_6^{'}=K_6/C Iz′=Iz/C,K6′=K6/C, C C C Is a scaling factor .
For ease of calculation TOMP problem , Define the input as
u 1 = F 1 + F 2 + F 3 + F 4 u 2 = − F 2 + F 4 u 3 = − F 1 + F 3 u 4 = F 1 − F 2 + F 3 − F 4 (10) \begin{aligned} u_1 =& F_1 + F_2 + F_3 + F_4 \\ u_2 =& - F_2 + F_4 \\ u_3 =& - F_1 + F_3 \\ u_4 =& F_1 - F_2 + F_3 - F_4 \\ \end{aligned} \tag{10} u1=u2=u3=u4=F1+F2+F3+F4−F2+F4−F1+F3F1−F2+F3−F4(10)
The input can be expressed as a matrix
[ u 1 u 2 u 3 u 4 ] = [ 1 1 1 1 0 − 1 0 1 − 1 0 1 0 1 − 1 1 − 1 ] [ F 1 F 2 F 3 F 4 ] (11) \left[\begin{matrix} u_1 \\ u_2 \\ u_3 \\ u_4 \\ \end{matrix}\right]= \left[\begin{matrix} 1 & 1 & 1 & 1 \\ 0 & -1 & 0 & 1 \\ -1 & 0 & 1 & 0 \\ 1 & -1 & 1 & -1 \\ \end{matrix}\right] \left[\begin{matrix} F_1 \\ F_2 \\ F_3 \\ F_4 \\ \end{matrix}\right] \tag{11} ⎣⎢⎢⎡u1u2u3u4⎦⎥⎥⎤=⎣⎢⎢⎡10−111−10−11011110−1⎦⎥⎥⎤⎣⎢⎢⎡F1F2F3F4⎦⎥⎥⎤(11)
So the single force will be
[ F 1 F 2 F 3 F 4 ] = 1 4 [ 1 0 − 2 1 1 − 2 0 − 1 1 0 2 1 1 2 0 − 1 ] [ u 1 u 2 u 3 u 4 ] (12) \left[\begin{matrix} F_1 \\ F_2 \\ F_3 \\ F_4 \\ \end{matrix}\right]= \frac{1}{4} \left[\begin{matrix} 1 & 0 & -2 & 1 \\ 1 & -2 & 0 & -1 \\ 1 & 0 & 2 & 1 \\ 1 & 2 & 0 & -1 \\ \end{matrix}\right] \left[\begin{matrix} u_1 \\ u_2 \\ u_3 \\ u_4 \\ \end{matrix}\right] \tag{12} ⎣⎢⎢⎡F1F2F3F4⎦⎥⎥⎤=41⎣⎢⎢⎡11110−202−20201−11−1⎦⎥⎥⎤⎣⎢⎢⎡u1u2u3u4⎦⎥⎥⎤(12)
therefore , The dynamic equations of the four rotor helicopter are obtained
x ¨ = ( sin ψ sin ϕ + cos ψ sin θ cos ϕ ) u 1 − K 1 x ˙ m (13) \ddot{x}= \frac{(\sin \psi \sin \phi + \cos \psi \sin \theta \cos \phi) u_1 - K_1 \dot{x}}{m} \tag{13} x¨=m(sinψsinϕ+cosψsinθcosϕ)u1−K1x˙(13)
y ¨ = ( sin ψ sin θ cos ϕ − cos ψ sin ϕ ) u 1 − K 2 y ˙ m (14) \ddot{y}= \frac{(\sin \psi \sin \theta \cos \phi - \cos \psi \sin \phi) u_1 - K_2 \dot{y}}{m} \tag{14} y¨=m(sinψsinθcosϕ−cosψsinϕ)u1−K2y˙(14)
z ¨ = ( cos ϕ cos θ ) u 1 − K 3 z ˙ m − g (15) \ddot{z}= \frac{(\cos \phi \cos \theta) u_1 - K_3 \dot{z}}{m} -g \tag{15} z¨=m(cosϕcosθ)u1−K3z˙−g(15)
ϕ ¨ = ( u 3 − K 4 ϕ ˙ ) l I x (16) \ddot{\phi} = \frac{(u_3 - K_4 \dot{\phi})~ l}{I_x} \tag{16} ϕ¨=Ix(u3−K4ϕ˙) l(16)
θ ¨ = ( u 2 − K 5 θ ˙ ) l I y (17) \ddot{\theta} = \frac{(u_2 - K_5 \dot{\theta}) ~l}{I_y} \tag{17} θ¨=Iy(u2−K5θ˙) l(17)
ψ ¨ = ( u 4 − K 6 ′ ψ ˙ ) I z ′ (18) \ddot{\psi} = \frac{(u_4 - K_6^{'} \dot{\psi})}{I_z^{'}} \tag{18} ψ¨=Iz′(u4−K6′ψ˙)(18)
For hovering flight , Speed and roll angle 、 The pitch and yaw angles must be zero , And the four driving forces are F 1 ( 0 ) = F 2 ( 0 ) = F 3 ( 0 ) = F 4 ( 0 ) = m g 4 F_1(0)=F_2(0)=F_3(0)=F_4(0)=\frac{mg}{4} F1(0)=F2(0)=F3(0)=F4(0)=4mg. Substitute these conditions into the formula (13) To formula (18), It can be found that there will be zero acceleration .
The above sentence further verifies that the formula derivation is correct .
边栏推荐
- Refers to the difference between IP and *ip at output
- Geotrustov wildcard
- Method of applying for code signing certificate by enterprise
- Qt6 QML Book/Qt Quick 3D/Qt Quick 3D
- FortiGate firewall configuration log uploading regularly
- iMile 利用 Zadig 多云环境周部署千次,跨云跨地域持续交付全球业务
- Es2016 key summary
- IO stream, character read / write, copy
- Salary management system based on servlet+jsp+mysql [source code + database]
- Interview topic of MySQL
猜你喜欢

Network high concurrency

Threejs实现模拟河流,水面水流,水管水流,海面

Redis sentry, persistence, master-slave, hand tear LRU

Machine learning notes
![Blue Bridge Cup: magic cube rotation [Vocational group]](/img/ba/aeae2744f3aaa1052b5af452f990e2.jpg)
Blue Bridge Cup: magic cube rotation [Vocational group]

Anonymous pipeline for interprocess communication
![Tea mall system based on SSM framework [project source code + database script + report]](/img/d9/0a46c0da9839a7186bd3a9ae55f0a5.png)
Tea mall system based on SSM framework [project source code + database script + report]

进程间通信之匿名管道

Issue SSL certificate with IP address

Redis implements SMS login function (I) traditional session login
随机推荐
Daily summary of code knowledge
Requirements for transfer transaction cases: 1 Employee 1 transfers money to employee 2. Therefore, two update sals should be executed. Purpose: either both updates are successful or both implementati
Troubleshooting of abnormal communication between FortiGate and fortiguard cloud
FortiGate creates multiple corresponding DDNS dynamic domain names for multiple ADSL interfaces
Salary management system based on servlet+jsp+mysql [source code + database]
How to repair expired SSL certificates?
IO stream, character read / write, copy
OneNote software
Detailed explanation of cookies and sessions
How to use div boxes to simulate line triangles
Es2019 key summary
Myrpc version 4
Myrpc version 6
How to write a conditional statement to obtain the value of the maximum time in a table using a MySQL statement
QT 6.3.1conan software package release
JS inheritance
Es2018 key summary
The new paradigm of AI landing is "hidden" in the next major upgrade of software infrastructure
Detailed explanation of data link layer
Es2017 key summary