Aerial robots have been widely used in various applications ranging from the simplest civilian to some advanced and sophisticated military applications. Cooperative robots, usually known as multi-agent robots, interact with each other or with other objects to accomplish certain mission objectives. One of the greatest challenges encountered in the design of aerial robotics is the direct interaction with their surrounding which requires them to be active agents. In general, fixing a manipulator on a quadrotor, attaching it to a slung load, or simply sharing the load with other agents directly affects the maneuverability of the quadrotor because of the unpredicted changes in its center of gravity (CoG) position, mass, and inertia. Thus, adaptive or robust control techniques are needed to ensure that the quadrotor dynamics are stabilized. Moreover, it is useful to identify these changes in real time to allow for better control actions and to enhance maneuverability as well robustness against any external disturbances.
Inertial sensors can play a significant role towards that direction; since they sense the inertial motion and in the same way they can be made suitable to measure the changes of particular kinematical quantities if they are used in plurality. Gyroscopes are one important example of this kind of sensor. However, their size is large when compared to accelerometers which are another example of inertial sensors. Additionally, gyroscopes tend to consume more power than accelerometers which makes the latter preferable to be used as an array to facilitate on-line estimation of the needed parameters. Even though linear accelerometers are usually used to measure the linear acceleration of the vehicle they are attached to, they can be utilized—as a group- to estimate both the angular velocity and orientation of the vehicle.
Equations for estimating center of gravity, mass, inertia, change in force, and change in torque are derived for an aerial vehicle during flight while interacting with unknown loads. These estimates are measured using a plurality of linear accelerometers' measurements in multiple configurations. Having the linear accelerometers arranged in particular configurations enables the direct measurement of several angular motion quantities that play a significant role in estimating the needed parameters. This in turn has significant impact on improving aerial vehicle stability.
An apparatus for tracking the center of gravity of an air vehicle was described in U.S. Pat. No. 8,260,477B2 entitled “METHOD AND APPARATUS FOR TRACKING CENTER OF GRAVITY OF AIR VEHICLE”, the entire disclosure of which is incorporated herein by reference. The apparatus estimates the angular velocity of the air vehicle from accelerometers measurements. The estimated vehicle angular velocity is then used to calculate both a center of gravity position and an inertial acceleration with respect to the vehicle's body frame using a suitable identification technique for a linear-in-parameters system. The estimation of the angular velocity may suffer from instability due to unstable nonlinear equations used. The accelerometers were arranged on rings. The rings are fitted into fore and aft positions of the air vehicles which impose some constraints on the airframe design.
Kinematical equations of an aircraft vehicle are derived under the assumption of varying center of gravity (CoG) position and under the influence of varying unknown gravitational force in U.S. Pat. No. 9,568,320 entitled “METHOD AND APPARATUS FOR ESTIMATION OF CENTER OF GRAVITY USING ACCELEROMETERS”, the entire disclosure of which is incorporated herein by reference. The apparatus uses high precision accelerometers arranged in a plurality of configurations. The vehicle receives measurements from accelerometers, calculates angular acceleration, filters the angular acceleration to obtain an angular velocity, and calculates navigation parameters using an identification technique. However, mass and inertia were not considered in the calculations.
A compensated controller system was designed to accommodate the changes in CoG position for a quadrotor where no estimation of the mass and inertia were presented in European patent 1,901,153, entitled “CONTROL SYSTEM FOR UNMANNED 4-ROTOR-HELIOPTER”, the entire disclosure of which is incorporated herein by reference.
A method for estimating multiple navigation parameters using a multiple concurrent recursive least squares identification (MCRLS ID) approach is presented in U.S. Pat. No. 7,110,915 entitled “MULTIPLE CONCURRENT RECURSEIVE LEAST SQUARES IDENTIFICATION WITH APPLICATION TO ON-LINE SPACECRAFT MASS-PROPERTY IDENTIFICATION”, the entire disclosure of which is incorporated herein by reference. The method relies on the use of gyroscopes, as opposed to accelerometers, and a single nonlinear problem is segmented into a plurality of separate linear problems that enables the application of linear regression algorithms such as recursive least squares instead of nonlinear optimization techniques. Moreover, the estimated quantities are still coupled in a way that prevents the estimation of inertia or its inverse without estimating the center of gravity position.
Hovering conditions were utilized to estimate the mass as well as the x and y coordinates of the center of gravity position of a quadrotor based on the force balance relations in D. W. Mellinger, “Trajectory generation and control for quadrotors” Publicly Accessible Penn Dissertations (2012), incorporated herein by reference in its entirety. However, the z-coordinate was not estimated and the inertia was assumed to have only the principle elements, according to Euler's equations, rather than the full inertia matrix. Moreover, the angular acceleration used was approximated using numerical differentiation.
A quadrotor's mass and inertia were assumed constant and Euler's equations were used to describe the dynamics of a quadrotor under center of gravity offset in I. Palunko and R. Fierro, “Adaptive control of a quadrotor with dynamic changes in the center of gravity” Proceedings 18th IFAC World Congress (2011), incorporated herein by reference in its entirety.
A quadrotor's mass and inertia were estimated using an adaptive technique under the assumption of fixed center of gravity position in R. Lopez, et al. “Real-time parameters identification for a quad-rotor mini-aircraft using adaptive control” Unmanned Aircraft Systems (ICUAS), 2014 International Conference on IEEE (2014), incorporated herein by reference in its entirety.
Therefore, there is a need for a method and system for estimating the mass and inertia of an aerial vehicle equipped with accelerometers while interacting with unknown loads via an optional manipulator arm and under the influence of varying disturbances.
The foregoing “background” description is for the purpose of generally presenting the context of the disclosure. Work of the inventor, to the extent it is described in this background section, as well as aspects of the description which may not otherwise qualify as prior art at the time of filing, are neither expressly or impliedly admitted as prior art against the present invention. The foregoing paragraphs have been provided by way of general introduction, and are not intended to limit the scope of the following claims. The described embodiments, together with further advantages, will be best understood by reference to the following detailed description taken in conjunction with the accompanying drawings.
The present disclosure relates to method and system for real-time estimation of center of gravity, mass, inertia, change in force, and change in torque using several accelerometers.
In one embodiment of the invention, a method for determining navigation parameters of a vehicle under varying center of gravity position is presented, the method comprising: detecting a plurality of acceleration values via a plurality of accelerometers, calculating a plurality of differential values based on the acceleration values, calculating an initial inertia value of the vehicle based on the differential values, calculating an initial mass value of the vehicle based on the differential values, estimating force and torque disturbances, calculating a refined inertia value based on the initial inertia and the estimated torque disturbance values, calculating a refined mass value based on the initial mass value and the estimated force disturbance values, and determining navigation parameters based on the refined inertia value and the refined mass value, and controlling the vehicle based on the navigation parameters.
In another embodiment, a system for determining navigation parameters of a vehicle is presented, the system comprises processing circuitry configured: to detect a plurality of angular acceleration values via a plurality of accelerometers mounted on the vehicle wherein said vehicle is in motion, calculate a plurality of differential values based on the acceleration values, calculate an initial inertia value of the vehicle based on the differential values, calculate an initial mass value of the vehicle based on the differential values, obtain a plurality of disturbance parameters, calculate a refined inertia value based on the initial inertia value and a first one of the disturbance parameters, calculate a refined mass value based on the initial mass value and a second one of the disturbance parameters, determine navigation parameters based on the refined inertia value and the refined mass value, and control the vehicle based on the navigation parameters.
A more complete appreciation of the disclosure and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:
Referring now to the drawings, wherein like reference numerals designate identical or corresponding parts throughout several views, the following description relates to a system, apparatus, and associated methodology for enhanced navigation.
The system of the present disclosure may be used in various military applications and other exploration missions. The system can include a vehicle, for example a quadrotor with an air frame, a drone, a helicopter, or a hovercraft, configured to aerially navigate an environment via a plurality of propellers 102. In other embodiments, the vehicle can include turbines instead of propellers 102. The propellers 102 can apply force to the vehicle to cause motion, wherein the vehicle can move in a vertically upwards direction away from a ground surface as well as horizontally left, right, forwards, backwards, or a combination thereof. A combination of forces can also be applied to cause the vehicle to take an angled turn, wherein the vehicle adjusts its roll, or rotation about an axis running front to back, pitch, or rotation about an axis running from left to right (wing to wing), and yaw, or rotation about an axis running vertically up and down. Motion can include the propellers 102 reducing the applied force on the vehicle to allow descent towards the ground surface. Moreover, motion can include the propellers 102 applying force to the vehicle wherein the vehicle remains at a constant height above the ground surface, e.g. hovering. Other motions include displacement in 2 dimensions and 3 dimensions. The system and apparatus as shown in
The preferred positions to install the linear accelerometers 101 are at the quadrants of a sphere with radius μ centered at the geometric center of the vehicle body frame. In an exemplary embodiment, the vehicle can be a quadrotor and include six tri-axial linear accelerometers 101, which can ensure determining the value of the angular acceleration directly and algebraically using the available accelerometers' 101 measurements. The linear accelerometers can be arranged in a tetrahedral configuration, for example a “diamond” configuration, wherein pairs of the linear accelerometers are positioned along the three major axes and equidistant from the geometric center of the quadrotor body frame. For example, each of four accelerometers can be installed along a propeller arm of the quadrotor as well as one centered above and one centered below the geometric center of the quadrotor. In another embodiment, the preferred number of tri-axial linear accelerometers 101 to be used is five, also known as a “cone” configuration, wherein a manipulator arm can take the place of one of the accelerometers 101, for example the accelerometer disposed below the geometric center of the quadrotor and closest to the ground surface, and be configured to carry a payload.
Adopting a flat non-rotating Earth model, the measurements of an accelerometer 101 located at point P may be expressed as:
=I+×+v+2×+×(×v)− (1)
where is the inertial acceleration of an arbitrary point P measured in body coordinate frame (ObXbYbZb) where the accelerometer 101 is assumed to be aligned with the body frame, is the linear acceleration of the origin of the body coordinate frame, i.e., CoG, with respect to inertial space (OnXnYnZn) as measured in the body frame, is the vector from the origin of the body coordinate frame (Ob) to point P written in the body frame, is its time derivative, is the angular velocity of the body frame, is the angular acceleration of the body frame, x denotes the cross product between two vectors, and is the gravitational acceleration written in the body frame.
Considering the CoG to be stationary, i.e., ==, then the accelerometer 101 measurements at a point P may be expressed as:
=+×+×(×)− (2)
Using equation (1), the accelerometers' 101 measurements in the quadrotor body frame as illustrated in
and denotes the transpose. Unlike (2), in (3) and are assumed non-zero in general.
By using the skew-symmetric matrix notation instead of the cross product, the accelerometer 101 measurements of A1 may be expressed as:
B. Estimating the Angular Motion Using all-Accelerometer
For the configuration in
The same steps can be taken to obtain a set of equations describing the configuration of
where L denotes the distance by which A5 is away from the geometric center of the IMU which coincides with the quadrotor's geometric center.
Solving the previous system, the angular motion quantities needed to estimate the CoG position and inertia may be expressed as:
C. Estimating the Inertial Acceleration and CoG Position
By using all-accelerometer technique, estimates of the inertial acceleration as measured in the quadrotor body frame, i.e. , and the CoG position, i.e. , measured with respect to the quadrotor geometric center can be obtained. By adding the accelerometers' 101 measurements while assuming a stationary CoG along with known gravitational acceleration, the following can be obtained:
can also be estimated when treated as a constant or slowly varying. In one embodiment, it is also assumed that the quadrotor is equipped with its own navigation system that can provide the orientation of the quadrotor with respect to the used navigation frame. This last assumption ensures that is accessible at any time.
Using a suitable identification technique, it is possible to estimate the CoG position and the quadrotor inertial acceleration simultaneously.
The total forces and total torques () acting on a quadrotor can be classified into two parts. For example, known quantities that can be calculated, and unknown quantities that need to be identified. These quantities can be modelled using Newton's second law and may be expressed as:
where q is the number of propellers 102 used, is the force generated by the ith motor-propeller setup, is the position of the ith propeller hub with respect to the CoG, mTotal is the total mass of the quadrotor and the added objects, ITotal is the total inertia of the quadrotor and the added objects evaluated at CoG, dist stands for all unknown forces resulting from drag forces, propeller 102 flapping and the like, and stands for all unknown torques resulting from drag forces, propeller 102 flapping and the like.
As a matter of fact, many of the aerodynamics forces and torques can be calculated based on a known CoG position and other parameters as well. For example, this allows the quadrotor linear velocity, i.e. to be calculated, and then the linear velocity () that the motor-propeller setup experiences can be estimated with respect to the quadrotor body frame, which may be expressed as:
=+× (18)
where is obtained using an appropriate filtration technique.
Knowing the forces and torques resulting from the ith propeller 102 flapping can be calculated as given in Xiaodong Zhang, Xiaoli Li, Kang Wang, and Yanjun Lu, “A Survey of Modelling and Identification of Quadrotor Robot”, Abstract and Applied Analysis (2014) incorporated herein by reference in its entirety. In such case, these forces and torques can be added to the left sides of equations (16) and (17) and the problem can be undertaken.
Since the CoG can migrate because of dynamic loading of the quadrotor or the movement of the attached manipulators, the total inertia matrix, i.e. ITotal is no longer constant and can be considered as unknown. Equation (17) can be used to estimate the resulting inertia matrix which may be expressed as given in Jerry H. Ginsberg, “Advanced Engineering Dynamics”, Cambridge University Press (1998) incorporated herein by reference in its entirety:
Being symmetric, the inertia matrix has only six unknowns to be identified. The identification problem may be expressed as follows when {right arrow over (T)}dist is negligible and ITotal is slowly varying:
where the angular motion quantities can be used directly from equations (6)-(14).
D. Estimating the Mass and Inertia
Using the Parallel Axis Theorem (PAT) the inertia moments and products of the ith motor-propeller setup with respect to the CoG may be expressed as:
where {i=1, 2, . . . , q} indicates the motor-propeller setup index, and the values of both Imi0 and mmi, i.e. the inertia and mass of the ith motor-propeller setup respectively, are usually considered known.
The ideal values of the motors positions, when measured at their centers of masses with respect to the geometric center of the quadrotor and arranged in a plus configuration, may be expressed as:
where the motors are located in the quadrants of a circle with radius l meters.
If the quadrotor airframe is approximated as two identical, thin and right-angle crossed cylinders, then their inertia moments and products with respect to the CoG may be expressed as follows:
where k={1,2} is the cylinder index. Notice that Ic20 is rotated ninety degrees about the quadrotor z-axis when compared to Ic10.
Practically speaking, the values of Ick0 and mc can be estimated off-line as given in Jorge Migue Brito Domingues, “Quadrotor Prototype”, Uneversidade Tecnica de Lisboa, Dissertacio (2009) incorporated herein by reference in its entirety. However, the payload mass (mp) and inertia (Ip) values are still to be identified. The overall inertia at the CoG position may be expressed as:
Equation (20) has common terms with opposite signs in the coefficient matrix of the principle inertia elements which may deteriorate the identification of ITotal elements if identified concurrently. Thus, equation (20) can be re-written as follows:
After estimating ITotal using equation (20) or equation (20′), and estimating the CoG position using equation (15), Imi′ and Ick′ can be calculated, and then the payload inertia can be calculated using equation (24). If the quadrotor is equipped with manipulators with DOF greater than 1, then the moments of inertia variations due to the manipulator joint angles, i.e., pose, can be calculated at the CoG and added to (24).
Similarly, the payload mass, i.e., mp, when disturbances are negligible, can be estimated and expressed as:
Neglecting the disturbances, if any, may result in inaccurate estimates for both the total mass and inertia; hence
where ITotal is assumed to be invertible.
The new total inertia identification problem is nonlinear and can be solved using a nonlinear least squares estimation method which can be implemented using the “lsqnonlin” MATLAB function. Since the identification problem is under-determined, the Levenberg-Marquardt algorithm, as given in Jorge J. More “Levenberg-Marquardt Algorithm: Implementation and Theory”, Numerical Analysis, ed. G. A. Watson, Lecture Notes in Mathematics, Springer Verlag (1977) incorporated herein by reference in its entirety, can be used to facilitate the functionality of lsqnonlin function. It should be noted that the solution of the optimization problem might only be local and that is why equation (20) or equations (20′) and (27) are first used to decide the neighborhood of the solution search-space. The optimization problem may be expressed as:
where: r represents the decision variables to be determined, namely {Ixx,Iyy,Izz,Ixy,Ixz,Iyz,Tdx,Tdy,Tdz}, such that {right arrow over (T)}dist=[Tdx,Tdy,Tdz]T.
The system and associated methodology of the present disclosure enables improving the stability and flight of the vehicle under the simultaneous action of varying force and torque disturbances. The method calculates navigation parameters such as inertial position, velocity and acceleration, angular velocity and acceleration, estimating the position of center of gravity and its rate of change, and estimating the mass and inertia using only linear accelerometers.
In one embodiment, measurements from the inertial measurement units (IMUs) may be sent via a network 528 to a computer. In other embodiments, the IMUs may include processing circuitry to compute the navigation parameters. The IMU may include a data processing system, as shown in
Next, a hardware description of the computer according to exemplary embodiments is described with reference to
Further, the claimed advancements may be provided as a utility application, background daemon, or component of an operating system, or combination thereof, executing in conjunction with CPU 500 and an operating system such as Microsoft Windows 7, UNIX, Solaris, LINUX, Apple MAC-OS and other systems known to those skilled in the art.
The hardware elements in order to achieve the computer may be realized by various circuitry elements, known to those skilled in the art. For example, CPU 500 may be a Xenon or Core processor from Intel of America or an Opteron processor from AMD of America, or may be other processor types that would be recognized by one of ordinary skill in the art. Alternatively, the CPU 500 may be implemented on an FPGA, ASIC, PLD or using discrete logic circuits, as one of ordinary skill in the art would recognize. Further, CPU 500 may be implemented as multiple processors cooperatively working in parallel to perform the instructions of the inventive processes described above.
The computer in
The computer further includes a display controller 508, such as a NVIDIA GeForce GTX or Quadro graphics adaptor from NVIDIA Corporation of America for interfacing with display 510, such as a Hewlett Packard HPL2445w LCD monitor. A general purpose I/O interface 512 interfaces with a keyboard and/or mouse 514 as well as a touch screen panel 516 on or separate from display 510. General purpose I/O interface also connects to a variety of peripherals 518 including printers and scanners, such as an OfficeJet or DeskJet from Hewlett Packard.
A sound controller 520 is also provided in the computer, such as Sound Blaster X-Fi Titanium from Creative, to interface with speakers/microphone 522 thereby providing sounds and/or music.
The general purpose storage controller 524 connects the storage medium disk 504 with communication bus 526, which may be an ISA, EISA, VESA, PCI, or similar, for interconnecting all of the components of the computer. A description of the general features and functionality of the display 510, keyboard and/or mouse 514, as well as the display controller 508, storage controller 524, network controller 506, sound controller 520, and general purpose I/O interface 512 is omitted herein for brevity as these features are known.
The exemplary circuit elements described in the context of the present disclosure may be replaced with other elements and structured differently than the examples provided herein. Moreover, circuitry configured to perform features described herein may be implemented in multiple circuit units (e.g., chips), or the features may be combined in circuitry on a single chipset, as shown on
The present disclosure is not limited to the specific circuit elements described herein, nor is the present disclosure limited to the specific sizing and classification of these elements. For example, the skilled artisan will appreciate that the circuitry described herein may be adapted based on changes on battery sizing and chemistry, or based on the requirements of the intended back-up load to be powered.
The hardware description above, exemplified by any one of the structure examples shown in
Obviously, numerous modifications and variations are possible in light of the above teachings. It is therefore to be understood that within the scope of the appended claims, the invention may be practiced otherwise than as specifically described herein.
Thus, the foregoing discussion discloses and describes merely exemplary embodiments of the present invention. As will be understood by those skilled in the art, the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. Accordingly, the disclosure of the present invention is intended to be illustrative, but not limiting of the scope of the invention, as well as other claims. The disclosure, including any readily discernible variants of the teachings herein, define, in part, the scope of the foregoing claim terminology such that no inventive subject matter is dedicated to the public.