The present disclosure generally relates to unmanned aerial vehicles, and in particular, to a system and associated method for a transformable unmanned aerial vehicle with both coplanar and omnidirectional Features.
Industrial and agricultural unmanned aerial vehicles (UAVs) have been widely used for long-distance flight applications such as aerial photography, mapping, package transportation, inspection, and pesticide spraying during the last several decades. Typically, coplanar multirotor UAVs, such as quadcopters and hexacopters, are applied to perform these tasks because of their carrying capacity and mechanical simplicity. These UAVs primarily work at near-hovering equilibriums with the thrust vectors limited to a single direction. The coupled translational and rotational kinematics indicate dependent position and orientation control. However, independent control of all six degrees of freedom (DOFs) for new challenges in difficult tasks, such as complex aerial movement and manipulation, may require full actuation with more actuators onboard.
Various tilted arms were added to common multirotors to achieve full even over actuation. Over-actuation could potentially enhance the overall system energy efficiency by optimizing control allocation on different actuators, which was demonstrated on ground vehicles. In some previous works, servo motors were added to rotate UAV arms independently around their main axes either radially or tangentially, and thus thrust vectors could be adjusted within certain limited angles in one plane to make the platform over-actuated. However, those platforms have low energy-efficiency issues for most movements due to internal force/torque cancellation. On the other hand, each arm of a quadcopter is typically designed to rotate in 2 with two servo motors, which caused a problem of short flight time by using eight additional motors to tilt four arms. Furthermore, in one example, a coupled tiltable mechanism controlled by two servos was added to adjust directions of thrust vectors. Unlike the four-servo and the eight-servo solutions, these platforms could reduce or avoid energy dissipation issues. Due to the limitation of mechanical design and actuator constraints, although the platforms with tiltable arms increased force or energy efficiency with over-actuation, they cannot achieve omnidirectional motions.
It is with these observations in mind, among others, that various aspects of the present disclosure were conceived and developed.
Corresponding reference characters indicate corresponding elements among the view of the drawings. The headings used in the figures do not limit the scope of the claims.
Omnidirectional UAVs demonstrate advantages of aerial interaction, uninhibited observation, and better capability for complex aerial manipulation missions, compared with common coplanar UAVs. Towards omnidirectional flight capability, platforms with fixed-motor configuration (and no tilt-arm servos) were developed based on optimization of static thrust and torque analysis in previous works. The force envelops must be larger than gravity in all directions with additional increments to maintain a hovering status. Hence, omnidirectional UAVs require at least six rotors allocated on at least three different planes are required. These platforms can exploit decoupled translational and rotational kinematics but suffer significant energy dissipation. By combining tiltrotor and omnidirectional fixed motor configurations, previous UAVs could hover in a given orientation while maintaining efficient flight configurations. However, these platforms are still heavy and suffer from short flight time without a power tether due to being equipped with six tilt-arm servos and twelve rotors (two on each arm with opposite direction to generate bi-directional thrusts). As such, these omnidirectional UAVs generally advance full-state flight capability but exhibit inherent limitations, such as overweight or significant energy dissipation. To achieve desired design weight and optimal energy efficiency with omnidirectional mobility, the number of the UAV actuators should be minimized.
Because coplanar UAVs typically have high energy efficiency, but with under-actuated configurations, a new trend of UAV design is to combine features of coplanar UAVs with full actuation. Although previous platforms could transit between an under-actuated coplanar mode and a fully actuated non-coplanar mode with one servo motor, which reduced energy consumption and design weight, these UAVs lacked the capability of omnidirectional motions and extended manipulation capability based on omnidirectional motions.
Motivated by the combined advantages of coplanar and omnidirectional UAVs, which can enable a broader range of applications, the present disclosure outlines a transformable UAV (hereinafter, “vehicle 100” shown in
This disclosure is structured as follows. The design and mathematical models for the vehicle 100 are introduced in Section II with reference to
Section II.A outlines mechanical design of the vehicle 100 with reference to
A. UAV Design
With additional reference to
In the coplanar mode of
During the transitional mode of
In the omnidirectional mode of
As shown in
As shown in
As shown in
The three canonical rotation matrices in SO(3) are denoted with Rx, Ry and Rz, and the operating mode of the transformable UAV with μ∈[0, 1]. μ=0 is defined for the coplanar mode of
where pi,0 (i=1, . . . , 6) is the rotor position relative to the UAV geometric center in the coplanar mode. Each rotor has the same distance l from the geometric center. In the coplanar mode of
The transformation mechanism 120 of the vehicle 100 is shown in
The transformation mechanism 120 further includes a helical gear set 124, including a first helical gear component 126 that couples and rotates with the second arm 106 at the fulcrum 161 and a second helical gear component 128 that couples with the receptacle 181 of the third arm 108. The transformation mechanism 120 includes a linkage assembly 130 that allows rotation of the third arm 108 about an axis of elongation of the third arm 108 concurrently with rotation of the second arm 106 about the fulcrum 161. The linkage assembly 130 can include a first joint component 132A that extends from the second arm 106 at the first helical gear component 126 as shown, and a second joint component 132B that connects with the pivot point 183 of the third arm 108. The first joint component 132A connects with the second joint component 132B by linkages 134 as shown in
The first helical gear component 126 can be a beveled helical gear that engages with the second helical gear component 128, which in turn rotates perpendicular to and concurrently with the first helical gear component 126 as shown. The second helical gear component 128 is positioned within the receptacle 181 of the third arm 108 and engages the pivot point 183 to connect the second arm 106 with the third arm 108. The second helical gear component 128 includes a gear portion that engages the first helical gear component 126, and rotates the third arm 108 about a vertical axis that is normal to the “shared” plane of the first arm 104, the second arm 106 and the third arm 108 associated with the coplanar mode. This rotation causes the third arm 108 to transition between the first position and the second position (e.g., rotating the third arm 108 by 45 degrees in a first direction to become mutually perpendicular with the first arm 104 when transitioning the third arm 108 from the first position to the second position, or rotating the third arm 108 by 45 degrees in a second direction to transition the third arm 108 from the second position to the first position). Simultaneously, the linkage assembly 130 allows concurrent rotation of the third arm 108 by 90 degrees about the axis of elongation of the third arm 108 between the first position and the second position of the third arm 108 as the second arm 106 rotates about the fulcrum 161 between the first position and the second position of the second arm 106.
During the transition, the angle between the heading axis xb and the first arm 104 varies from 0 to 45 degree. A swift transition will be limited to avoid introducing unnecessary disturbances, and further discussions are given in subsections B and C. The transition time is designed within two seconds. The vehicle 100 will operate in either the coplanar or the omnidirectional mode.
B. Actuator Model & Efficiency Analysis
Most UAVs use unreversible motors plus ESCs, in which one single rotor thrust is constrained to:
0<frotor,min≤frotor≤frotor,max. (3)
To generate a bi-directional thrust, two motors are placed in an opposite direction in some omnidirectional design, which causes large weight and energy loss. To overcome this issue, each rotor assembly (e.g., discussed above with reference to
−frotor,max=frotor,min≤frotor≤frotor,max. (4)
The dead zone effect can be ignored since min(|frotor|)<0.01N. With reversible motors, symmetric propellers, and suitable total weight, the omnidirectional flight of the vehicle 100 is achievable with two motors supplying most of the thrust to overcome the gravity. The thrust rotor and inverse torque rotor of each rotor are introduced and simplified as:
f
rotor,i=sgn(ωi)kfωi2
τrotor,i=kτ-ffrotor,ii=1,2 . . . 6. (5)
where ω is the rotor speed, and kf and kτ-f are aerodynamic factors of the rotors and the surrounding air, respectively. To simplify the actuator dynamics, the transfer function between the desired thrust frotor,des and actual thrust frotor can be modeled as a first-order low-pass filter.
The total thrust F3×1 and torque T3×1 is given by:
Here thrust frotor=[frotor,1, frotor,2, . . . frotor,6]T, inverse torque τrotor=[τrotor,1, τrotor,2, . . . τrotor,6]T and the i-th column of P×N is pi×ni based on (1). Nτ=[−n1, n2, n3, −n4, n5, −n6] which denotes the motor direction allocation for yaw motion in coplanar mode. Substituting (5) into (7), force and torque expressions in (7) can be rewritten as:
For different μ that correspond to different modes or transition:
μ=0⇒rank(A(μ))=4,F=(00Fz)T
μ∈(0,1]⇒rank(A(μ))=6,F=[FxFyFz]T. (9)
After the actuators are modeled, the rotor electrical power consumption is evaluated. An experiment using a reversible motor with a 5045 symmetric propeller was conducted. The rotor thrust vs. electrical power curve fitting is shown in
P
rotor
=k
p1
f
rotor
3
+k
p2
f
rotor
2
+k
p3
f
rotor
+k
p4
k
p1=−3.736·10−4,kp2=3.004.
k
p3=17.56,kp4=2.026 (10)
It is worth noting that {dot over (P)}rotor>0 for any reasonable frotor≥0. Thus, more energy will be cost if fewer actuators are selected to generate the same total thrust, which indicates the omni-mode costs more power than the coplanar mode at hovering.
In the coplanar mode, disk norms of six rotors are all collinear. The vehicle 100 works as an underactuated hexacopter with internal forces equal to zero during hovering. Yaw movement relies on the drag moment of each rotor. The vehicle 100 is fully actuated with internal forces determined by the current hovering orientation and transition state in the transition and omnidirectional mode. The force efficiency index is:
Clearly, γ(μ=0, frotor)=1 corresponds to the maximum force or energy efficiency.
The thrust vector coincides zb without any remnant in xb and yb directions. Hence, the vehicle 100 has four controllable degrees of freedom (3D position plus yaw angle). The force index maps corresponding to different μ∈(0,1] are shown in
C. Rigid Body Model
The rigid body kinematic model of the vehicle 100 is derived by considering the aerodynamic effects (interference) between rotors as disturbances. The inertial frame and the body frame are defined in subsection A. The translational dynamics of the vehicle 100 are described by the position p=[px py pz]T and the velocity v=[vx vy vz]T. g=[0 0 g]T is the gravity vector, and F, T are defined in (8). Based on, R is the rotation matrix maps from the body frame to the inertial frame, and ω=[ωx ωy ωz]T denotes the vehicle body angular velocity with the A operator converting ω into ω∧. Then the translational (force) and rotational (torque) aerodynamic drag equations are denoted as:
Cv, Cω are drag coefficients. τs represents the inverse torque generated from the mechanical structure in transition. The center of gravity is not essentially changed since the transformation mechanism 120 is located in the center of the body 102, and all modules are placed symmetrically. Summing all torque and thrust contributions and using the Newton-Euler approach, the equation of motion of the vehicle 100 is expressed as:
where m is the mass of the vehicle 100 and J is the 3×3 inertia tensor matrix. Then Jarm 3-4, Jarm 5-6, Jrest and rest are the inertia tensor matrices of the green arm, blue arm, and the rest of the body parts, respectively. Jarm 3-4,0, Jarm 5-6,0, Jrest,0 are inertia tensor matrices of all these body parts when μ=0. Thus:
Based on (8) and (13), the equation of acceleration and rotation can be compactly rewritten as:
where B has the same rank as A. Unlike prior works, the vehicle 100 performs tasks either as a coplanar underactuated hexacopter or as an omnidirectional multirotor with rotors located at the vertices of a regular octahedron.
In this section, a switching control structure on SO(3) is introduced for the vehicle 100 in Section II.
As shown in
To avoid low force efficiency along x,y axis as μ≤0.5, the controller switching is performed at μ=μ0>0.5. In the coplanar mode, translational and rotational dynamics are coupled. Heading direction (yaw angle) and position tracking are achieved in a coupled loop. First, the position controller of the controller 200 calculates desired rotation matrix and a total thrust at zb. The attitude controller of the controller 200 subsequently outputs desired torques. Finally, the rotor thrust is chosen. In the transition state and omnidirectional mode, translational and rotational dynamics are decoupled, and hence the orientation and position are tracked in two separate loops. in one example implementation, the position controller and attitude controller of the controller 200 are designed with cascade PI/PD architecture.
A. Attitude Control
Assume the measurements are well filtered, and the attitude controller has a high sampling frequency. The attitude controller has a high sampling frequency. The attitude controller is designed with a cascade geometric structure on SO(3) which gives a smooth movement trajectory to track. The inner loop uses ω as feedback to compute the reference torque based on feedback linearization as:
T
des
=−J(kp,ωeω+kd,ωėω)+ω×Jω), (16)
which denotes a Proportional-Derivative (PD) controller to deal with dynamics of angular velocity acting like a first-order system brought by motor dynamics in the actuator model. kp,ω, kd,ω are positive gain matrices and eω is the angular rate error which is defined as
The reference angular velocity is chosen as
ωdes=−kp,ReR−ki,R∫eR, (18)
which is a proportional-integral (PI) controller. kp,R, ki,R are positive gain matrices, and eR is the orientation tracking error on SO(3) defined as
e
R=½(RdesTR−RTRdes)∨. (19)
∨ is the inverse operator of ∧ in Eqn. (13). This attitude controller has the same structure in both working modes (coplanar/omnidirectional). The geometric control law gives exponential stability when the attitude tracking error should be less than 180°. A low pass prefilter is added to the global attractiveness command signal.
Importantly, based on an output of the attitude controller of the controller 200 (e.g., implemented by the computing device 300), the computing device 300 generates and applies actuation signals for application to one or more of the first rotor assembly 144A, the second rotor assembly 144B, the third rotor assembly 164A, the fourth rotor assembly 164B, the fifth rotor assembly 184A, and the sixth rotor assembly 184B for propulsion and steering of the vehicle.
B. Position Control
Similar to attitude controllers, the position controller of the controller 200 can be designed with a cascade structure. In coplanar mode, the position controller takes the yaw angle ψdes and pdes as the reference trajectory. In the omnidirectional mode, the position controller takes Rdes and pdes (full pose) as the reference trajectory. In both modes, the outer loop is defined as:
e
p
=p−p
des, (20)
and proportional control is used to get the desired velocity:
v
des
=−k
p,p
e
p
−k
i,p
∫e
p. (21)
The velocity tracking error is defined as
The desired force vector in the inertial frame is defined as
F
des,w
=mg−(kp,vev+kd,vėv), (23)
which needs to be converted to the body frame. kp,p, ki,p, kp,v and kd,v are all positive definite diagonal matrices. The body heading axis needs to be calculated in the coplanar mode given the desired yaw angle. Hence, the normalized thrust vector of the inertial frame should first be calculated:
{circumflex over (n)}=F
des,w
/∥F
des,w
∥=[n
1
,n
2
,n
3]T, (24)
based on the expression of the rotation matrix defined in modeling. Here cos(sin−1(n1)) is denoted as n4 which yields:
if n4=0 marking the singularity, then denote Rx,h=I3×3. Otherwise:
Let u=Rx,hRy,hRz(ψref)·[0,0,1]T and û=u/∥u∥. Then denote û=n×u/∥n×u∥. Finally, the reference rotation matrix in coplanar mode is denoted as:
R
des,c
=[û{circumflex over (k)}{circumflex over (n)}]. (27)
In the omnidirectional mode, Rdes,o is the reference input. Hence, the reference force in the body frame is given by:
F
des
=R
T
F
des,w, (28)
in both modes. Notice Fdes,o=[0 0 Fz,c]T in the coplanar mode, and Fdes,o=[Fx,o Fy,o Fz,o]T in the omnidirectional mode. The position control in both modes is asymptotically stable. Similarly, based on an output of the position controller of the controller 200 (e.g., implemented by the computing device 300), the computing device 300 generates and applies actuation signals for application to one or more of the first rotor assembly 144A, the second rotor assembly 144B, the third rotor assembly 164A, the fourth rotor assembly 164B, the fifth rotor assembly 184A, and the sixth rotor assembly 184B for propulsion and steering of the vehicle.
C. Control Allocation
To obtain the unique relation for minimization of control effort, the reference force and torque are converted to rotor thrust with a pseudo-inverse of the allocation matrix, which is:
M=A
T(AAT)−1. (29)
Then, the reference rotor thrust can be computed by:
This section presents simulation scenarios in MATLAB and results to illustrate the enhanced performance of the vehicle 100. A list of chosen modeling parameters in simulation is shown in Table 1, and a list of controller parameters is shown in Table 2.
A. Simulation Scenario
The most challenging and significant mission for the transformable UAV is the combined flight containing under-actuated long-range flight and omnidirectional motions in the air. The commanded trajectory consists of three phases, and the 2-second transitions happen between two phases.
ω0≅6 rad/s.
B. Trajectory Tracking Results
Ramping references are selected to represent a high-speed and long-distance motion in the coplanar mode. At the same time, the maximum position error reaches up to 0.49 m, and the maximum velocity error reaches up to 0.74 m/s. Sinusoidal references are designed for the position tracking reference of omni mode (18≤t<30 s). It is worth to note that a fast attitude tracking with steer reference position (30≤t<42 s) would cause relatively large tracking error. During each transition, the tracking errors are controlled in small ranges (ep<0.001 m, ev<0.02 m/s).
Moreover, the orientation tracking R→Rdes, the orientation tracking error Ψ(R, Rdes)=½tr[I−RdesTR], the angular velocity tracking ω→ωdes, and the angular velocity error eω are shown in
C. Rotor Thrust, Force Efficiency, and Disturbance
In
D. Comparison with Coplanar-Only and Omni-Only UAVs
Compared with coplanar-only UAVs, it is straightforward that the vehicle 100 has omnidirectional flight capability. The vehicle 100 does not require other robot arms for many aerial manipulation tasks or only needs less complicated modules to fulfill the same mission. To, the electrical power consumption of the vehicle 100 is calculated in Eq. (31) in comparison with omni-only UAVs. Ignoring the power cost of non-rotor modules (flight controller, servo, etc.), power consumption is denoted by:
P≅E
i=1
6
P
rotor,i. (31)
An omni-only UAV with a fixed frame is modeled to do the same task as the simulation scenario above. The omni-only UAV flies with γ=100% (roll and pitch angles are zero) at phases 1 and 3.
In
The vehicle 100 combines both coplanar and omnidirectional flight features. In particular, the vehicle 100 is capable of both under-actuated coplanar flight and fully actuated omnidirectional motions. The vehicle 100 includes the controller with a cascade structure on 3×SO(3) to achieve flight capability via different modes with respect to disturbances.
Computing device 300 comprises one or more network interfaces 310 (e.g., wired, wireless, PLC, etc.), at least one processor 320, and a memory 340 interconnected by a system bus 350, as well as a power supply 360 (e.g., battery, plug-in, etc.).
Network interface(s) 310 include the mechanical, electrical, and signaling circuitry for communicating data over the communication links coupled to a communication network. Network interfaces 310 are configured to transmit and/or receive data using a variety of different communication protocols. As illustrated, the box representing network interfaces 310 is shown for simplicity, and it is appreciated that such interfaces may represent different types of network connections such as wireless and wired (physical) connections. Network interfaces 310 are shown separately from power supply 360, however it is appreciated that the interfaces that support PLC protocols may communicate through power supply 360 and/or may be an integral component coupled to power supply 360.
Memory 340 includes a plurality of storage locations that are addressable by processor 320 and network interfaces 310 for storing software programs and data structures associated with the embodiments described herein. In some embodiments, device 300 may have limited memory or no memory (e.g., no memory for storage other than for programs/processes operating on the device and associated caches).
Processor 320 comprises hardware elements or logic adapted to execute the software programs (e.g., instructions) and manipulate data structures 345. An operating system 342, portions of which are typically resident in memory 340 and executed by the processor, functionally organizes computing device 300 by, inter alia, invoking operations in support of software processes and/or services executing on the device. These software processes and/or services may include transformable UAV processes/services 390 which can include a set of instructions within the memory 340 that implement aspects of controller 200 when executed by the processor 320. Note that while transformable UAV processes/services 390 is illustrated in centralized memory 340, alternative embodiments provide for the process to be operated within the network interfaces 310, such as a component of a MAC layer, and/or as part of a distributed computing network environment.
It will be apparent to those skilled in the art that other processor and memory types, including various computer-readable media, may be used to store and execute program instructions pertaining to the techniques described herein. Also, while the description illustrates various processes, it is expressly contemplated that various processes may be embodied as modules or engines configured to operate in accordance with the techniques herein (e.g., according to the functionality of a similar process). In this context, the term module and engine may be interchangeable. In general, the term module or engine refers to model or an organization of interrelated software components/functions. Further, while the transformable UAV processes/services 390 is shown as a standalone process, those skilled in the art will appreciate that this process may be executed as a routine or module within other processes.
As shown, step 402 of method 400 includes providing a vehicle including: a first arm in association with a body; a second arm in association with the body, the second arm being rotatable by a servo motor between a first position associated with a coplanar mode of the vehicle and a second position associated with an omnidirectional mode; and a third arm in association with the body, the third arm being rotatable between a first position associated with the coplanar mode of the vehicle and a second position associated with the omnidirectional mode, wherein rotation of the second arm between the first position and the second position of the second arm causes concurrent rotation of the third arm between the first position and the second position of the third arm. The second arm is oriented coplanar with the first arm when in the first position of the second arm, and the second arm is oriented mutually perpendicular with the first arm when in the second position of the second arm. The third arm is oriented coplanar with the first arm and the second arm and is oriented at a 45 degree angle relative to the first arm and the second arm when in the first position of the third arm. When in the second position of the third arm, the third arm is oriented mutually perpendicular with the first arm and the second arm. Step 404 of method 400 includes: applying, by a processor in communication with a memory and the servo motor, an actuation signal to the servo motor. Step 406 of method 400 includes rotating, by the servo motor, the second arm between the first position and the second position of the second arm. Step 408 of method 400 can occur concurrently with step 406 as a result of the rotation by the servo motor, and can include rotating the third arm about an axis that is normal to a shared plane of the first arm and the third arm and simultaneously rotating the third arm by 90 degrees about an axis of elongation of the third arm.
The first arm can include a first rotor assembly and a second rotor assembly, the second arm can include a third rotor assembly and a fourth rotor assembly and the third arm can include a fifth rotor assembly and a sixth rotor assembly. Step 410 of method 400 includes generating an actuation signal for application to one or more of the first rotor assembly, the second rotor assembly, the third rotor assembly, the fourth rotor assembly, the fifth rotor assembly, and the sixth rotor assembly for propulsion of the vehicle based on an output of a controller implemented at the processor. Step 412 can include applying, by the processor in communication with the memory, the actuation signal to one or more of the first rotor assembly, the second rotor assembly, the third rotor assembly, the fourth rotor assembly, the fifth rotor assembly, and the sixth rotor assembly for propulsion of the vehicle.
Importantly, the third rotor assembly and the fourth rotor assembly of the second arm are oriented coplanar with the first rotor assembly and the second rotor assembly of the first arm when the second arm is in the first position. The third rotor assembly and the fourth rotor assembly of the second arm are oriented 90 degrees relative to the first rotor assembly and the second rotor assembly of the first arm when the second arm is in the second position. The fifth rotor assembly and the sixth rotor assembly of the third arm are oriented 180 degrees relative to the first rotor assembly and the second rotor assembly of the first arm and the third rotor assembly and the fourth rotor assembly of the second arm when the third arm is in the first position. The fifth rotor assembly and the sixth rotor assembly of the third arm are oriented mutually perpendicular with the first rotor assembly and the second rotor assembly of the first arm and the third rotor assembly and the fourth rotor assembly of the second arm when the third arm is in the second position.
It should be understood from the foregoing that, while particular embodiments have been illustrated and described, various modifications can be made thereto without departing from the spirit and scope of the invention as will be apparent to those skilled in the art. Such changes and modifications are within the scope and teachings of this invention as defined in the claims appended hereto.
This is a U.S. Non-Provisional Patent Application that claims benefit to U.S. Provisional Patent Application Ser. No. 63/352,551 filed 15 Jun. 2022, which is herein incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
63352551 | Jun 2022 | US |