[go: up one dir, main page]

WO2020050084A1 - Storage medium having guidance control program stored thereon - Google Patents

Storage medium having guidance control program stored thereon Download PDF

Info

Publication number
WO2020050084A1
WO2020050084A1 PCT/JP2019/033282 JP2019033282W WO2020050084A1 WO 2020050084 A1 WO2020050084 A1 WO 2020050084A1 JP 2019033282 W JP2019033282 W JP 2019033282W WO 2020050084 A1 WO2020050084 A1 WO 2020050084A1
Authority
WO
WIPO (PCT)
Prior art keywords
state quantity
kalman filter
moving object
covariance matrix
derived
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2019/033282
Other languages
French (fr)
Japanese (ja)
Inventor
真一郎 坂井
久旺 新井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Aerospace Exploration Agency JAXA
Original Assignee
Japan Aerospace Exploration Agency JAXA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Japan Aerospace Exploration Agency JAXA filed Critical Japan Aerospace Exploration Agency JAXA
Publication of WO2020050084A1 publication Critical patent/WO2020050084A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64GCOSMONAUTICS; VEHICLES OR EQUIPMENT THEREFOR
    • B64G1/00Cosmonautic vehicles
    • B64G1/22Parts of, or equipment specially adapted for fitting in or to, cosmonautic vehicles
    • B64G1/24Guiding or controlling apparatus, e.g. for attitude control
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/24Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for cosmonautical navigation

Definitions

  • the present invention relates to a storage medium storing a guidance control program.
  • Priority is claimed on Japanese Patent Application No. 2018-168193, filed on September 7, 2018, the content of which is incorporated herein by reference.
  • One embodiment of the present invention provides a storage medium storing a guidance control program capable of optimizing a guidance trajectory so as to reduce a navigation error.
  • One embodiment of the present invention provides a computer mounted on a moving object including a plurality of sensors, based on the detection values of the first sensor and the second sensor included in the plurality of sensors, using a Kalman filter in the future.
  • a Kalman filter in the future.
  • an index value indicating the degree of the error of the state quantity of the moving body is derived based on the parameters of the Kalman filter, and the evaluation function including the index value as an element is optimal.
  • a non-transitory computer-readable storage medium storing a guidance control program for deriving a state quantity of the moving object by solving an optimization problem.
  • the guidance trajectory can be optimized so that the navigation error is reduced.
  • FIG. 4 is a diagram illustrating an example of a relationship between a covariance matrix and a processing cycle. It is a conceptual diagram which shows typically the process which solves the convex optimization problem using the gradient information of an evaluation function.
  • the guidance control program according to the present embodiment is executed by, for example, a computer mounted on a moving object.
  • the computer that executes the guidance control program performs various processes.
  • FIG. 1 is a diagram illustrating an example of the moving object M according to the embodiment.
  • the moving object M may be, for example, a spacecraft (space explorer) that lands on a gravitational celestial body (hereinafter, simply referred to as a celestial body PL) such as a moon or a planet, and searches for the celestial body PL.
  • a navigation device (computer) 100 that executes a guidance control program is mounted on a moving object M that is a spacecraft.
  • the moving object M which is a spacecraft, is equipped with a camera 10, an inertial measurement unit (IMU) 20, and a propulsion output device 30 in addition to the navigation device 100.
  • IMU inertial measurement unit
  • the camera 10 is provided, for example, below the moving body M and captures an image of the surface of the celestial body PL when the moving body M lands on the celestial body PL.
  • the “lower side” is, for example, the side of the housing provided with legs that contact the surface of the celestial body PL.
  • the camera 10 is provided on the direction in which the gravity of the celestial body PL acts on the moving body M (vertically downward).
  • the camera 10 outputs the captured image to the navigation device 100.
  • the camera 10 is an example of a “first sensor”.
  • the camera 10 is an example of a “terrain detection sensor”.
  • the inertia measurement device 20 includes, for example, a three-axis acceleration sensor formed of MEMS (Micro Electro Mechanical Systems) or an optical fiber, and a three-axis gyro sensor.
  • the inertial measurement device 20 outputs detection values detected by these sensors to the navigation device 100.
  • the values detected by the inertial measurement device 20 include, for example, the accelerations and / or angular velocities in the horizontal, vertical, and depth directions, and the velocities (rates) of the pitch, roll, and yaw axes.
  • the inertial measurement device 20 is an example of a “second sensor”.
  • the propulsion output device 30 includes, for example, a gimbal actuator and an ion engine.
  • the thrust output device 30 changes the output direction of the thrust generated by the ion engine to an arbitrary direction by driving the gimbal actuator.
  • the navigation device 100 By executing the guidance control program, the navigation device 100 causes the moving object M, which is a spacecraft, to navigate, for example, using the image captured by the camera 10 and the detection result of the inertial measurement device 20.
  • image navigation the navigation using the image captured by the camera 10
  • detection result of the inertial measurement device 20 will be referred to as “inertial navigation”.
  • the mobile object M is not limited to a spacecraft, but an UAV (Unmanned Aerial Vehicle) that flies in an environment where GNSS (Global Navigation Satellite System) cannot be used, and an AUV (Autonomous Vehicle) that propells underwater to search for resources on the sea floor. Other moving objects such as Underwater Vehicles may be used.
  • UAV Unmanned Aerial Vehicle
  • GNSS Global Navigation Satellite System
  • AUV Automatic Vehicle
  • the moving object M is a spacecraft.
  • FIG. 2 is a diagram illustrating an example of the configuration of the navigation device 100 according to the embodiment.
  • the navigation device 100 includes, for example, a communication unit 102, a control unit 110, and a storage unit 130.
  • the communication unit 102 wirelessly communicates with a monitoring device on the earth using radio waves in a frequency band used for a telemeter line, for example.
  • the monitoring device on the earth for example, remote-controls (remotely guides) the navigation device 100 via the communication unit 102, so as to go straight to a straight line connecting the celestial body PL to be landed and the earth (straight direction of radio wave).
  • the position of the moving object M in the direction in which the moving object M moves is controlled. That is, the monitoring device on the earth controls the position of the moving body M in the horizontal direction perpendicular to the vertical direction based on the gravity of the celestial body PL.
  • the control unit 110 includes, for example, an acquisition unit 112, an image navigation calculation processing unit 114, an inertial navigation calculation processing unit 116, a parameter determination unit 118, a prediction unit 120, and an airframe control unit 122.
  • the components of the control unit 110 are realized, for example, by a processor such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit) executing a guidance control program stored in the storage unit 130. Some or all of the components of the control unit 110 may be realized by hardware such as LSI (Large Scale Integration), ASIC (Application Specific Integrated Circuit), or FPGA (Field-Programmable Gate Array), or software. And hardware may cooperate.
  • the guidance control program referred to by the processor may be stored in the storage unit 130 in advance, or may be stored in a removable storage medium such as a DVD or a CD-ROM. It may be installed in the storage unit 130 from a storage medium by being mounted on the device.
  • the storage unit 130 is realized by a storage device such as a hard disk drive (HDD), a flash memory, an electrically erasable programmable read only memory (EEPROM), a read only memory (ROM), and a random access memory (RAM).
  • the storage unit 130 stores terrain data 132, reference trajectory information 134, filter parameter information 136, and the like, in addition to various programs such as firmware and application programs (including a guidance control program).
  • the terrain data 132 is, for example, data in which a three-dimensional shape of the ground surface of a celestial body PL to be landed on the moving object M is modeled.
  • the model showing the three-dimensional shape of the ground surface of the celestial body PL includes visually prominent features (feature points) such as craters and rocks that form irregularities on the ground surface of the celestial body PL.
  • the reference trajectory information 134 is information defining a reference trajectory (nominal trajectory).
  • the reference trajectory refers to a state quantity such as a position, a speed, an acceleration, and a posture to be taken by the moving object M when the moving object M is remotely guided to the celestial body PL from the ground monitoring device, at a certain time interval or at a distance interval. This is the information specified for each.
  • the state quantity indicated by the reference trajectory information 134 is an example of “reference state quantity”.
  • the filter parameter information 136 is information in which each parameter of a Kalman filter equation described later is defined.
  • the acquisition unit 112 acquires an image from the camera 10 and acquires detection values such as acceleration and speed from the inertial measurement device 20.
  • the acquisition unit 112 periodically acquires the reference trajectory information 134 from the monitoring device on the ground via the communication unit 102, and stores the reference trajectory information 134 in the storage unit 130, so that the reference trajectory information 134 stored in the storage unit 130 is obtained. To update.
  • the image navigation calculation processing unit 114 collates (compares) the image acquired from the camera 10 by the acquisition unit 112 with the terrain data 132 stored in the storage unit 130 to derive the state quantity of the moving object M. For example, the image navigation calculation processing unit 114 performs image processing on the image of the camera 10 to extract feature points such as rocks and craters, and includes the extracted feature points and the three-dimensional model indicated by the terrain data 132. The position of the moving body M in the horizontal direction perpendicular to the vertical direction based on the gravity of the celestial body PL is derived as a state quantity by pattern matching with the feature points to be obtained.
  • the inertial navigation calculation processing unit 116 detects the inertial measurement device 20 A state quantity that quantitatively indicates the state of the moving object M is derived by inertial navigation using the result.
  • the “state quantity” includes, for example, a position, a speed, a quaternion from the body coordinate system to the inertial coordinate system, and the like.
  • the machine body coordinate system is a coordinate system in which the center of gravity of the moving body M is the origin of the coordinates, and the machine axis direction of the moving body M is one axis.
  • the inertial coordinate system is a coordinate system in which the vertical direction based on the gravity of the celestial body PL is a certain axis.
  • the “state quantity” may include a sensor bias value for the acceleration or the angular velocity detected by the inertial measurement device 20.
  • the order of the distance between the earth and the celestial body PL may be 100 million kilometers, and it is more than tens of minutes in terms of the round-trip propagation time of radio waves. May hang. For this reason, when lowering the height of the moving body M with respect to the ground surface of the celestial body PL and landing the moving body M on the celestial body PL, remote control based on a command from the ground may not be sufficient. Therefore, the inertial navigation calculation processing unit 116 derives the state quantity of the moving object M by the inertial navigation using the detection value of the inertial measurement device 20 to perform the autonomous navigation.
  • the ⁇ parameter determining unit 118 refers to the reference trajectory information 134 and determines values of parameters included in various equations of the Kalman filter.
  • the parameters include, for example, a state transition matrix of a Kalman filter described later, a covariance matrix of process noise of the Kalman filter, a covariance matrix of observation noise of the Kalman filter, and the like.
  • the parameter determination unit 118 stores the parameter value in the storage unit 130 as the filter parameter information 136.
  • the prediction unit 120 When the state quantity of the moving object M is derived by the inertial navigation operation processing unit 116, the prediction unit 120 performs the first processing (prediction processing) using the Kalman filter in which the parameters are defined by the filter parameter information 136 (the prediction processing). Of the state quantity error (navigation error) of the moving object M is reduced in the second processing (update processing) using the Kalman filter.
  • the first processing includes, in the current cycle k, processing for predicting the state quantity of the moving object M in the next processing cycle k + 1, and in the current cycle k, the next processing. And a process of estimating an error of the state quantity of the moving object M in the processing cycle k + 1.
  • the state quantity (state quantity vector described later) of the moving object M estimated to be obtained in the current cycle k the control input (control vector described later) in the current cycle k, and For estimating the state quantity (estimated value) of the moving object M estimated to be obtained in the next cycle k + 1 based on the above, and the degree of error included in the estimated value of the current cycle k, or the accuracy of the estimated value Of the error included in the estimated value of the next cycle k + 1 derived in the current cycle k, based on the covariance (pre-estimated covariance) indicating the current cycle k and the covariance indicating the degree of the process noise of the Kalman filter in the current cycle k.
  • the second processing derives a Kalman gain based on the covariance of the state quantity of the moving object M estimated as the posterior estimation covariance in the first processing, and based on the derived Kalman gain and a certain observation value, Based on the process of updating the state quantity of the moving object M estimated in the first process, the derived Kalman gain, and the covariance of the state amount of the moving object M estimated as the posterior estimated covariance in the first process. And updating the covariance of the state quantity of the moving object M.
  • the observation value may be, for example, a difference between the state quantity of the moving body M derived by the inertial navigation calculation processing unit 116 and the state quantity of the moving body M derived by the image navigation calculation processing unit 114.
  • the observation value may be a difference between the position of the moving object M obtained by the inertial navigation and the position of the moving object M obtained by the image navigation.
  • the position difference as an observation value, in addition to the position, the velocity, acceleration, or the like, which is a differential value of the position, is estimated as a state quantity.
  • the prediction unit 120 solves an optimization problem (optimal control problem) exemplified as Expressions (1) to (6), so that the future An optimal solution of the state quantity of the moving object M is derived.
  • a letter with ( ⁇ ) represents a vector or a matrix.
  • x ( ⁇ ) represents a state quantity vector indicating the state quantity of the moving body M
  • u ( ⁇ ) represents a control vector of the moving body M
  • f represents a nonlinear dynamics function
  • g represents a state constraint equation.
  • H represents a control constraint equation
  • F ( ⁇ ) represents a state transition matrix of a Kalman filter
  • H ( ⁇ ) represents an observation matrix of a Kalman filter
  • K ( ⁇ ) represents the second processing described above.
  • P ( ⁇ ) represents the covariance matrix of the Kalman filter
  • Q ( ⁇ ) represents the covariance matrix of the process noise of the Kalman filter
  • R ( ⁇ ) Represents the covariance matrix of the observation noise of the Kalman filter
  • k represents each processing cycle (step) of the Kalman filter.
  • Formula (1) represents a formula that formulates a minimization problem of a certain evaluation function J, and formulas (2) to (6) represent formulas to be satisfied in solving formula (1).
  • Evaluation function J shown in Equation (1) represents a certain processing cycle k f of the observation matrix G ( ⁇ ), the trace value of a composite mapping and covariance matrix P ( ⁇ ) kf processing cycle k f.
  • the processing cycle k f which is the final processing time of the Kalman filter, which is calculated based on the derived track instructed from the ground of the monitoring device (final processing cycle).
  • processing cycle k f is the final processing period when the moving object M is landing on celestial PL.
  • Observation matrix G ( ⁇ ) is a matrix-diagonal elements are zero, the final treatment time covariance matrix P in k f ( ⁇ ) trace value with a weighted specific diagonal elements of kf (vs. This is a matrix for calculating the sum of angular components. Therefore, the evaluation function J is a trace value in which a specific diagonal component of the covariance matrix P ( ⁇ ) kf is weighted.
  • Equation (2) is a state equation represented by a nonlinear dynamics function having a state quantity vector x ( ⁇ ) and a control vector u ( ⁇ ) as variables, and equation (3) is a constraint equation of the equation.
  • Expression (4) represents an inequality constraint condition expression.
  • Equation (5) represents the process of deriving the posterior estimated covariance among the two processes included in the above-described first process. That is, Equation (5) is obtained by calculating the covariance matrix (prior estimated covariance) P ( ⁇ ) k ⁇ 1
  • k-1 means estimating the covariance matrix of the current cycle k which is one time ahead in the previous cycle k-1.
  • Equation (6) represents a process of updating the covariance of the state quantity of the moving object M among the two processes included in the above-described second process. That is, as shown in Expression (5), Expression (6) expresses the current period k based on the covariance matrix P ( ⁇ ) k
  • the above-mentioned Kalman gain is obtained by calculating the right-hand side term P ( ⁇ ) k
  • the process of updating the covariance is performed at a predetermined processing cycle K ( ⁇ ). a k> K f.
  • the prediction unit 120 solves the optimization problem by finding the time history of the control vector u ( ⁇ ) that minimizes the evaluation function J shown in Expression (1).
  • the prediction unit 120 control vector from a set of obtained in repeating the processing of the Kalman filter from k 1 to k f k f-number of the control vector u ( ⁇ ), the evaluation function J is minimized Solve the optimization problem by searching for u ( ⁇ ).
  • the prediction unit 120 applies the approximation formula shown in Expression (7) to the first processing and the second processing, and calculates the discrete covariance matrix P ( ⁇ ) k which is one element of the evaluation function J. Perform linearization.
  • P ( ⁇ ) in Expression (7) represents a covariance matrix derived by a Kalman filter based on the amount of movement to be taken by the moving object M determined as the reference trajectory.
  • the variance matrix P (-) representing the navigation accuracy when the moving object M moves on the reference trajectory is derived by virtually operating the Kalman filter used when the moving object M actually moves on the reference trajectory. You. “Virtually operate” means that the calculation result of the Kalman filter is not used for control of the mobile unit M. (-) Indicates an overline (bar).
  • the reference trajectory (x ( ⁇ ), u ( ⁇ )) in the vicinity of, the covariance matrix P ( ⁇ ) k of each processing cycle, P ( ⁇ ) k to tr (P ( ⁇ ) k ) represents an assumption that the result is the same as or very close to the result of differentiation, and is satisfied only when the conditional expression shown in Expression (8) is satisfied.
  • the approximation formula shown in Expression (7) is obtained by calculating the covariance matrix P ( ⁇ ) k with respect to the trace value (tr (P ( ⁇ ) k ( ⁇ )))) of the covariance matrix P ( ⁇ ) k ( ⁇ ).
  • the covariance matrix P ( ⁇ ) k shown in equation (7) is an example of “first covariance matrix”, and the covariance matrix P ( ⁇ ) k ( ⁇ ) shown in equation (7) is It is an example of “covariance matrix”.
  • Equation (9) represents the linear form of the covariance matrix P ( ⁇ ) k .
  • the prediction unit 120 derives the time history of the control vector u ( ⁇ ) that minimizes the evaluation function J according to Expression (9) and Expressions (2) to (4) that have been linearized discretely.
  • [K ⁇ , K + ] in Expression (9) indicates that the period is the processing period of Expression (6), that is, the processing period of the second processing (the processing of updating the covariance matrix), and each tr ( P ( ⁇ )) is expressed in a linear form that is established in the vicinity of the reference trajectory (x ( ⁇ ), u ( ⁇ )) used as a reference for linearization.
  • the prediction unit 120 when the prediction unit 120 derives the control vector u ( ⁇ ) that minimizes the evaluation function J according to Expression (9), the prediction unit 120 substitutes the derived control vector u ( ⁇ ) into Expression (2). , And repeats discretization and linearization using Expression (7) again based on the derived state quantity vector x ( ⁇ ) and control vector u ( ⁇ ). Do.
  • the optimization problem of searching for the time history of the control vector u ( ⁇ ) in which the evaluation function J is minimized is discretized and linearized around the reference trajectory (x ( ⁇ ), u ( ⁇ )).
  • the linearized optimization problem can be solved as a convex optimization problem.
  • the convex optimization problem is a minimization problem of a convex function on a convex set, and can be optimized more easily than a general optimization problem, and the local minimum matches the global minimum Has properties.
  • the body control unit 122 controls the propulsion output device 30 based on the optimal solution (x ( ⁇ ), u ( ⁇ )) derived by the prediction unit 120 using the Kalman filter, and thereby the position and speed of the moving body M. , Acceleration, posture, etc., are controlled to be the desired states indicated by the optimal solutions (x ( ⁇ ), u ( ⁇ )).
  • FIG. 3 is a flowchart illustrating an example of a series of processes performed by the control unit 110 according to the embodiment.
  • the processing of this flowchart is performed, for example, in a descent phase in which the distance (altitude) between the ground surface of the celestial body PL and the moving body M is equal to or less than a predetermined distance (for example, about 40 [m]).
  • the parameter determination unit 118 refers to the reference trajectory information 134 and obtains (x ( ⁇ ), u ( ⁇ )) of the reference trajectory that is an initial value (step S100). Next, the parameter determination unit 118 determines the parameters of the Kalman filter (F ( ⁇ ), Q ( ⁇ ), R ( ⁇ )) based on (x ( ⁇ ), u ( ⁇ )) of the reference trajectory as the initial value. Is determined (step S102).
  • the prediction unit 120 calculates the Kalman filter including the parameters determined by the parameter determination unit 118 until the processing cycle k of the Kalman filter becomes the processing cycle K ( ⁇ ) for starting the update processing of the predetermined covariance matrix. Is used to repeatedly derive the covariance matrix P ( ⁇ ) k (step S104).
  • FIG. 4 is a diagram illustrating an example of the relationship between the covariance matrix P ( ⁇ ) k and the processing cycle k. As shown, the covariance matrix P ( ⁇ ) k converges to a constant value as the process is repeated, given the initial value P ( ⁇ ) 0 . At this time, the covariance matrix P ( ⁇ ) k serving as a convergence value is uniquely determined by the parameters of the Kalman filter.
  • the prediction unit 120 acquires (derives) gradient information around the reference trajectory (x ( ⁇ ), u ( ⁇ )) given as the reference trajectory (step S106).
  • the gradient information is information on the gradient of the evaluation function J.
  • the gradient of the evaluation function J is represented by, for example, x ( ⁇ ) or u ( ⁇ ) of the trace value of the covariance matrix P ( ⁇ ) k , which is one element of the evaluation function J, which is represented by the left-hand side equation of Expression (7). Is the partial differential amount at.
  • the prediction unit 120 partially differentiates the covariance matrix P ( ⁇ ) k with x ( ⁇ ) or u ( ⁇ ) in order to obtain gradient information.
  • the prediction unit 120 can discretize and linearize (ie, convexize) the trace value (tr (P ( ⁇ ) k)) of the covariance matrix P ( ⁇ ) k using the partial differentiation result.
  • Discretization and linearization means that when the evaluation function J is written in a linear form of x ( ⁇ ) or u ( ⁇ ) at each time k approximately discretized, x ( ⁇ ) or u ( ⁇ ) This partial differential value is used as such a coefficient.
  • the prediction unit 120 solves a convex optimization problem, which is one of the optimization problems, so that the trace value (tr (P ( ⁇ ) k )) takes the minimum value to obtain the optimal solution (x ( ⁇ ), u ( ⁇ )) is derived (step S108).
  • FIG. 5 is a conceptual diagram schematically showing a process for solving a convex optimization problem using gradient information of the evaluation function J.
  • the illustrated example shows that the optimization problem is transformed into a convex optimization problem using the gradient information of the evaluation function J.
  • the prediction unit 120 calculates the trace value of the covariance matrix P ( ⁇ ) k (Tr (P ( ⁇ ) k )) is made convex.
  • the optimal solution having the minimum trace value (tr (P ( ⁇ ) k )) is not derived as a local solution, and the original solution is obtained by convex optimization.
  • One of the local solutions to the problem can be solved quickly.
  • the prediction unit 120 derives (x ( ⁇ ), u ( ⁇ )) (x ( ⁇ ) in the figure) given as the reference trajectory and derives the optimal solution (x ( ⁇ ), u ( ⁇ )). ) (X in the figure), it is determined whether or not the norm (Euclidean norm) of the difference is equal to or smaller than a threshold value ⁇ (step S110).
  • the airframe control unit 122 proceeds based on the optimal solution (x ( ⁇ ), u ( ⁇ )) derived by the prediction unit 120 using the Kalman filter.
  • the power output device 30 is controlled (step S112).
  • the prediction unit 120 When determining that the norm exceeds the threshold value ⁇ , the prediction unit 120 derives the reference trajectory (x ( ⁇ ), u ( ⁇ )) given as the initial value as the optimal trajectory (x ( ⁇ ( ⁇ ), u ( ⁇ )) (step S114), and the process returns to S102. In the process of S114, the prediction unit 120 determines a state quantity that can be taken as an optimal solution such that the state quantity x ( ⁇ ) obtained as the optimal solution does not greatly deviate from the state quantity x ( ⁇ ) ( ⁇ ) indicated by the reference trajectory. The upper and lower limits of x ( ⁇ ) may be changed.
  • the parameter determination unit 118 determines the Kalman filter parameters (F ( ⁇ ), Q ( ⁇ ), R ( ⁇ )) based on the updated trajectory (x ( ⁇ ), u ( ⁇ )). Determine the value again.
  • the Kalman filter parameters F ( ⁇ ), Q ( ⁇ ), R ( ⁇ )
  • the parameter determination unit 118 determines the Kalman filter parameters (F ( ⁇ ), Q ( ⁇ ), R ( ⁇ )) based on the updated trajectory (x ( ⁇ ), u ( ⁇ )). Determine the value again.
  • the navigation device 100 which is a computer mounted on a moving body M including a plurality of sensors such as the camera 10 and the inertial measurement device 20, supplies the detection values of the camera 10 and the inertial measurement device 20 with each other.
  • the Kalman filter parameters F ( ⁇ ), Q ( ⁇ ), R ( ⁇ )
  • a covariance matrix P ( ⁇ ) k which is an index value indicating the degree of error of the state quantity is derived, and the trace value (tr (P ( ⁇ ) k )) of the covariance matrix P ( ⁇ ) k is included as an element.
  • the state quantity x ( ⁇ ) of the moving object at which the evaluation function J is optimal is derived by solving an optimization problem (for example, a convex optimization problem). This makes it possible to optimize the guidance trajectory when landing the moving body M on the celestial body PL so that the navigation error is reduced.
  • an optimization problem for example, a convex optimization problem
  • the moving body M is a spacecraft, and the sensors mounted on the moving body M are the camera 10 and the inertial measurement device 20.
  • the present invention is not limited to this.
  • the sensors mounted on the moving object M include radar and LIDAR (Laser (Light) Imaging Detection and Ranging) instead of or in addition to the camera 10. May be.
  • the sensor mounted on the moving body M may include a sonar instead of or in addition to the camera 10. Radar, LIDAR, and sonar are other examples of "terrain detection sensors.”
  • the navigation device 100 is described as deriving the state quantity x ( ⁇ ) of the moving object at which the evaluation function J is optimal by solving a convex optimization problem which is one of the optimization problems.
  • the prediction unit 120 of the navigation apparatus 100 calculates the Newton's method based on the partial differential amount of x ( ⁇ ) or u ( ⁇ ) of the trace value of the covariance matrix P ( ⁇ ) k which is the gradient information of the evaluation function J.
  • the state quantity x ( ⁇ ) of the moving object at which the evaluation function J is optimal may be derived.
  • the prediction unit 120 the covariance matrix P ( ⁇ ) k (-) Trace value (tr (P ( ⁇ ) k (-))) covariance matrix for P ( ⁇ ) trace value of k (tr ( P ( ⁇ ) k )) is multiplied by the covariance matrix P ( ⁇ ) k ( ⁇ ), under the assumption that the covariance matrix P ( ⁇ ) k approximates
  • the state quantity x ( ⁇ ) of the moving object at which the evaluation function J is optimal may be derived.
  • DESCRIPTION OF SYMBOLS 10 ... Camera, 20 ... Inertial measurement device, 100 ... Navigation device, 102 ... Communication part, 110 ... Control part, 112 ... Acquisition part, 114 ... Image navigation calculation processing part, 116 ... Inertial navigation calculation processing part, 118 ... Parameter determination Unit, 120: prediction unit, 122: airframe control unit, 130: storage unit, M: mobile unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Astronomy & Astrophysics (AREA)
  • Automation & Control Theory (AREA)
  • General Physics & Mathematics (AREA)
  • Navigation (AREA)

Abstract

A non-transitory storage medium stores a guidance control program. When the guidance control program causes a computer mounted on a mobile body provided with a plurality of sensors to employ a Kalman filter to predict a future state quantity of the mobile body on the basis of detected values from each of a first sensor and a second sensor included in the plurality of sensors, the guidance control program causes the computer to derive, on the basis of a parameter of the Kalman filter, an index value indicating a degree of error in the state quantity of the mobile body, and causes the computer to solve an optimization problem in order to derive the state quantity of the mobile body which optimizes an evaluation function including the index value as an element.

Description

誘導制御プログラムを格納した記憶媒体Storage medium storing guidance control program

 本発明は、誘導制御プログラムを格納した記憶媒体に関する。
 本願は、2018年9月7日に出願された日本国特許出願2018-168193号に基づき優先権を主張し、その内容をここに援用する。
The present invention relates to a storage medium storing a guidance control program.
Priority is claimed on Japanese Patent Application No. 2018-168193, filed on September 7, 2018, the content of which is incorporated herein by reference.

 従来、月や惑星などの重力天体に対して、画像航法により自律精密着陸(Autonomous Precision Landing:APL)を行う宇宙機が知られている。重力天体に宇宙機を着陸させる際の動力降下着陸フェーズ(Powerd Descent Landing:PDL)では、重力天体の地表面を撮像した画像と、事前に取得された重力天体の地形データとの照合によって画像航法を行うとともに、現在地に基づいて誘導軌道をリアルタイムに生成することが要求される。一方で、慣性センサと測位衛星による測位センサとを搭載する飛行体が、各センサの検出値をカルマンフィルタの観測値として利用することで、各センサの検出結果を複合的に利用した複合航法を行う技術が知られている(特許文献1参照)。 2. Description of the Related Art Conventionally, spacecraft that perform autonomous precision landing (APL) on gravity objects such as the moon and planets by image navigation are known. In the Powered Descent Landing (PDL) phase of landing a spacecraft on a gravitational celestial body, image navigation is performed by collating an image of the ground surface of the gravitational celestial body with terrain data obtained in advance. As well as generating a guided trajectory in real time based on the current location. On the other hand, a flying vehicle equipped with an inertial sensor and a positioning sensor based on a positioning satellite uses the detection value of each sensor as an observation value of a Kalman filter to perform complex navigation using the detection results of each sensor in a complex manner. Techniques are known (see Patent Document 1).

日本国特開2018-109530号公報Japanese Patent Application Publication No. 2018-109530

 しかしながら、従来の技術では、航法誤差が小さくなるように誘導軌道を十分に最適化することができていなかった。 誘導 However, the conventional technology has not been able to sufficiently optimize the guidance trajectory so as to reduce the navigation error.

 本発明の一つの態様は、航法誤差が小さくなるように誘導軌道を最適化することができる誘導制御プログラムを格納した記憶媒体を提供する。 One embodiment of the present invention provides a storage medium storing a guidance control program capable of optimizing a guidance trajectory so as to reduce a navigation error.

 本発明の一態様は、複数のセンサを備える移動体に搭載されるコンピュータに、前記複数のセンサに含まれる第1センサと第2センサとのそれぞれの検出値に基づき、カルマンフィルタを用いて将来の前記移動体の状態量を予測させる際に、前記カルマンフィルタのパラメータに基づいて、前記移動体の状態量の誤差の程度を示す指標値を導出させ、前記指標値が要素として含まれる評価関数が最適となる前記移動体の状態量を、最適化問題を解くことで導出させるための誘導制御プログラムを格納したコンピュータ読み取り可能な非一過性の記憶媒体である。 One embodiment of the present invention provides a computer mounted on a moving object including a plurality of sensors, based on the detection values of the first sensor and the second sensor included in the plurality of sensors, using a Kalman filter in the future. When predicting the state quantity of the moving body, an index value indicating the degree of the error of the state quantity of the moving body is derived based on the parameters of the Kalman filter, and the evaluation function including the index value as an element is optimal. A non-transitory computer-readable storage medium storing a guidance control program for deriving a state quantity of the moving object by solving an optimization problem.

 本発明の一態様によれば、航法誤差が小さくなるように誘導軌道を最適化することができる。 According to one aspect of the present invention, the guidance trajectory can be optimized so that the navigation error is reduced.

実施形態の移動体の一例を示す図である。It is a figure showing an example of a mobile of an embodiment. 実施形態の航法装置の構成の一例を示す図である。It is a figure showing an example of composition of a navigation system of an embodiment. 実施形態の制御部による一連の処理の一例を示すフローチャートである。6 is a flowchart illustrating an example of a series of processes performed by a control unit according to the embodiment. 共分散行列と処理周期との関係の一例を示す図である。FIG. 4 is a diagram illustrating an example of a relationship between a covariance matrix and a processing cycle. 評価関数の勾配情報を用いた凸最適化問題を解く処理を模式的に示す概念図である。It is a conceptual diagram which shows typically the process which solves the convex optimization problem using the gradient information of an evaluation function.

 以下、図面を参照し、本発明の誘導制御プログラムの実施形態について説明する。本実施形態における誘導制御プログラムは、例えば、移動体に搭載されたコンピュータによって実行される。誘導制御プログラムを実行するコンピュータは、種々の処理を行う。 Hereinafter, an embodiment of the guidance control program of the present invention will be described with reference to the drawings. The guidance control program according to the present embodiment is executed by, for example, a computer mounted on a moving object. The computer that executes the guidance control program performs various processes.

 図1は、実施形態の移動体Mの一例を示す図である。移動体Mは、例えば、月や惑星などの重力天体(以下、単に天体PLと称する)に着陸し、その天体PLの探査を行うような宇宙機(宇宙探査機)であってよい。宇宙機である移動体Mには、誘導制御プログラムを実行する航法装置(コンピュータ)100が搭載される。宇宙機である移動体Mには、航法装置100に加えて、カメラ10と、慣性計測装置(Inertial Measurement Unit;IMU)20と、推進力出力装置30とが搭載される。 FIG. 1 is a diagram illustrating an example of the moving object M according to the embodiment. The moving object M may be, for example, a spacecraft (space explorer) that lands on a gravitational celestial body (hereinafter, simply referred to as a celestial body PL) such as a moon or a planet, and searches for the celestial body PL. A navigation device (computer) 100 that executes a guidance control program is mounted on a moving object M that is a spacecraft. The moving object M, which is a spacecraft, is equipped with a camera 10, an inertial measurement unit (IMU) 20, and a propulsion output device 30 in addition to the navigation device 100.

 カメラ10は、例えば、移動体Mの下側に設けられ、天体PLに移動体Mが着陸する際に、天体PLの地表を撮像する。「下側」とは、例えば、天体PLの地表と接する脚が設けられた筐体側である。言い換えれば、カメラ10は、天体PLの重力が移動体Mに作用する方向(鉛直方向下向き)側に設けられる。カメラ10は、撮像した画像を航法装置100に出力する。カメラ10は、「第1センサ」の一例である。カメラ10は、「地形検出センサ」の一例である。 The camera 10 is provided, for example, below the moving body M and captures an image of the surface of the celestial body PL when the moving body M lands on the celestial body PL. The “lower side” is, for example, the side of the housing provided with legs that contact the surface of the celestial body PL. In other words, the camera 10 is provided on the direction in which the gravity of the celestial body PL acts on the moving body M (vertically downward). The camera 10 outputs the captured image to the navigation device 100. The camera 10 is an example of a “first sensor”. The camera 10 is an example of a “terrain detection sensor”.

 慣性計測装置20は、例えば、MEMS(Micro Electro Mechanical Systems)や光ファイバによって構成される三軸式加速度センサと、三軸式ジャイロセンサとを含む。慣性計測装置20は、これらのセンサによって検出された検出値を航法装置100に出力する。慣性計測装置20による検出値には、例えば、水平方向、垂直方向、奥行き方向の各加速度及び/又は角速度や、ピッチ、ロール、ヨーの各軸の速度(レート)などが含まれる。慣性計測装置20は、「第2センサ」の一例である。 The inertia measurement device 20 includes, for example, a three-axis acceleration sensor formed of MEMS (Micro Electro Mechanical Systems) or an optical fiber, and a three-axis gyro sensor. The inertial measurement device 20 outputs detection values detected by these sensors to the navigation device 100. The values detected by the inertial measurement device 20 include, for example, the accelerations and / or angular velocities in the horizontal, vertical, and depth directions, and the velocities (rates) of the pitch, roll, and yaw axes. The inertial measurement device 20 is an example of a “second sensor”.

 推進力出力装置30は、例えば、ジンバルアクチュエータやイオンエンジンなどを含む。例えば、推進力出力装置30は、ジンバルアクチュエータを駆動させることによって、イオンエンジンが発生させた推進力の出力方向を、任意の方向に変更する。 The propulsion output device 30 includes, for example, a gimbal actuator and an ion engine. For example, the thrust output device 30 changes the output direction of the thrust generated by the ion engine to an arbitrary direction by driving the gimbal actuator.

 航法装置100は、誘導制御プログラムを実行することで、例えば、宇宙機である移動体Mを、カメラ10によって撮像された画像と、慣性計測装置20の検出結果とを利用して航行させる。以下、カメラ10によって撮像された画像を利用した航法を「画像航法」と称し、慣性計測装置20の検出結果を利用した航法を「慣性航法」と称して説明する。移動体Mは、宇宙機に限られず、GNSS(Global Navigation Satellite System)を利用できない環境下において飛行するUAV(Unmanned Aerial Vehicle)や、海底の資源探査などを行うために水中を推進するAUV(Autonomous Underwater Vehicle)といった他の移動体であってもよい。以下、一例として、移動体Mが宇宙機であるものとして説明する。 By executing the guidance control program, the navigation device 100 causes the moving object M, which is a spacecraft, to navigate, for example, using the image captured by the camera 10 and the detection result of the inertial measurement device 20. Hereinafter, the navigation using the image captured by the camera 10 will be referred to as “image navigation”, and the navigation using the detection result of the inertial measurement device 20 will be referred to as “inertial navigation”. The mobile object M is not limited to a spacecraft, but an UAV (Unmanned Aerial Vehicle) that flies in an environment where GNSS (Global Navigation Satellite System) cannot be used, and an AUV (Autonomous Vehicle) that propells underwater to search for resources on the sea floor. Other moving objects such as Underwater Vehicles may be used. Hereinafter, as an example, a description will be given assuming that the moving object M is a spacecraft.

 図2は、実施形態の航法装置100の構成の一例を示す図である。航法装置100は、例えば、通信部102と、制御部110と、記憶部130とを備える。 FIG. 2 is a diagram illustrating an example of the configuration of the navigation device 100 according to the embodiment. The navigation device 100 includes, for example, a communication unit 102, a control unit 110, and a storage unit 130.

 通信部102は、例えば、テレメータ回線などで利用されるような周波数帯の電波を用いて地球上の監視装置と無線通信する。地球上の監視装置は、例えば、通信部102を介して航法装置100を遠隔制御(遠隔誘導)することで、着陸すべき天体PLと地球とを結ぶ直線(電波の直進方向)に対して直行する方向の移動体Mの位置を制御する。すなわち、地球上の監視装置は、天体PLの重力を基準とした鉛直方向に対して直行する水平方向に関する移動体Mの位置を制御する。 The communication unit 102 wirelessly communicates with a monitoring device on the earth using radio waves in a frequency band used for a telemeter line, for example. The monitoring device on the earth, for example, remote-controls (remotely guides) the navigation device 100 via the communication unit 102, so as to go straight to a straight line connecting the celestial body PL to be landed and the earth (straight direction of radio wave). The position of the moving object M in the direction in which the moving object M moves is controlled. That is, the monitoring device on the earth controls the position of the moving body M in the horizontal direction perpendicular to the vertical direction based on the gravity of the celestial body PL.

 制御部110は、例えば、取得部112と、画像航法演算処理部114と、慣性航法演算処理部116と、パラメータ決定部118、予測部120と、機体制御部122とを備える。 The control unit 110 includes, for example, an acquisition unit 112, an image navigation calculation processing unit 114, an inertial navigation calculation processing unit 116, a parameter determination unit 118, a prediction unit 120, and an airframe control unit 122.

 制御部110の構成要素は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサが記憶部130に格納された誘導制御プログラムを実行することにより実現される。制御部110の構成要素の一部または全部は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、またはFPGA(Field-Programmable Gate Array)などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プロセッサにより参照される誘導制御プログラムは、予め記憶部130に格納されていてもよいし、DVDやCD-ROMなどの着脱可能な記憶媒体に格納されており、その記憶媒体が航法装置100のドライブ装置に装着されることで記憶媒体から記憶部130にインストールされてもよい。 The components of the control unit 110 are realized, for example, by a processor such as a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit) executing a guidance control program stored in the storage unit 130. Some or all of the components of the control unit 110 may be realized by hardware such as LSI (Large Scale Integration), ASIC (Application Specific Integrated Circuit), or FPGA (Field-Programmable Gate Array), or software. And hardware may cooperate. The guidance control program referred to by the processor may be stored in the storage unit 130 in advance, or may be stored in a removable storage medium such as a DVD or a CD-ROM. It may be installed in the storage unit 130 from a storage medium by being mounted on the device.

 記憶部130は、例えば、HDD(Hard Disc Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)などの記憶装置により実現される。記憶部130には、ファームウェアやアプリケーションプログラム(誘導制御プログラムを含む)などの各種プログラムのほかに、地形データ132や参照軌道情報134、フィルタパラメータ情報136などが格納される。 The storage unit 130 is realized by a storage device such as a hard disk drive (HDD), a flash memory, an electrically erasable programmable read only memory (EEPROM), a read only memory (ROM), and a random access memory (RAM). The storage unit 130 stores terrain data 132, reference trajectory information 134, filter parameter information 136, and the like, in addition to various programs such as firmware and application programs (including a guidance control program).

 地形データ132は、例えば、移動体Mに着陸させる天体PLの地表面の三次元形状がモデル化されたデータである。天体PLの地表面の三次元形状を示すモデルには、天体PLの地表面に凹凸を形成するクレータや岩などの視覚的に目立つ特徴(特徴点)が含まれる。 The terrain data 132 is, for example, data in which a three-dimensional shape of the ground surface of a celestial body PL to be landed on the moving object M is modeled. The model showing the three-dimensional shape of the ground surface of the celestial body PL includes visually prominent features (feature points) such as craters and rocks that form irregularities on the ground surface of the celestial body PL.

 参照軌道情報134は、参照軌道(ノミナル軌道)を定義した情報である。参照軌道とは、地上の監視装置から移動体Mを天体PLに遠隔誘導する際に、移動体Mがとるべき位置や速度、加速度、姿勢などの状態量を、ある時間間隔ごと、または距離間隔ごとに指定した情報である。参照軌道情報134が示す状態量は、「参照状態量」の一例である。 The reference trajectory information 134 is information defining a reference trajectory (nominal trajectory). The reference trajectory refers to a state quantity such as a position, a speed, an acceleration, and a posture to be taken by the moving object M when the moving object M is remotely guided to the celestial body PL from the ground monitoring device, at a certain time interval or at a distance interval. This is the information specified for each. The state quantity indicated by the reference trajectory information 134 is an example of “reference state quantity”.

 フィルタパラメータ情報136は、後述するカルマンフィルタの方程式の各パラメータが定義された情報である。 The filter parameter information 136 is information in which each parameter of a Kalman filter equation described later is defined.

 取得部112は、カメラ10から画像を取得するとともに、慣性計測装置20から加速度や速度といった検出値を取得する。取得部112は、通信部102を介して、地上の監視装置から参照軌道情報134を定期的に取得し、これを記憶部130に記憶させることで、記憶部130に格納された参照軌道情報134を更新する。 The acquisition unit 112 acquires an image from the camera 10 and acquires detection values such as acceleration and speed from the inertial measurement device 20. The acquisition unit 112 periodically acquires the reference trajectory information 134 from the monitoring device on the ground via the communication unit 102, and stores the reference trajectory information 134 in the storage unit 130, so that the reference trajectory information 134 stored in the storage unit 130 is obtained. To update.

 画像航法演算処理部114は、取得部112によってカメラ10から取得された画像と、記憶部130に格納された地形データ132とを照合(比較)して、移動体Mの状態量を導出する。例えば、画像航法演算処理部114は、カメラ10の画像に対して画像処理を行って、岩やクレータなどの特徴点を抽出し、抽出した特徴点と、地形データ132が示す三次元モデルに含まれる特徴点とのパターンマッチングによって、天体PLの重力を基準とした鉛直方向に対して直行する水平方向に関する移動体Mの位置を、状態量として導出する。 The image navigation calculation processing unit 114 collates (compares) the image acquired from the camera 10 by the acquisition unit 112 with the terrain data 132 stored in the storage unit 130 to derive the state quantity of the moving object M. For example, the image navigation calculation processing unit 114 performs image processing on the image of the camera 10 to extract feature points such as rocks and craters, and includes the extracted feature points and the three-dimensional model indicated by the terrain data 132. The position of the moving body M in the horizontal direction perpendicular to the vertical direction based on the gravity of the celestial body PL is derived as a state quantity by pattern matching with the feature points to be obtained.

 慣性航法演算処理部116は、例えば、天体PLの地表面を基準とした(例えば地表面の高度をゼロとした)移動体Mの高度が所定高度以下となった場合、慣性計測装置20の検出結果を利用した慣性航法によって、移動体Mの状態を定量的に示す状態量を導出する。「状態量」には、例えば、位置、速度、機体座標系から慣性座標系へのクォータニオンなどが含まれる。機体座標系は、移動体Mの重心を座標の原点とし、移動体Mの機軸方向をある一軸とした座標系である。慣性座標系は、天体PLの重力を基準とした鉛直方向をある一軸とした座標系である。「状態量」には、慣性計測装置20によって検出された加速度や角速度に対するセンサバイアス値が含まれていてもよい。 For example, when the altitude of the moving object M with respect to the ground surface of the celestial body PL (for example, the altitude of the ground surface is set to zero) falls below a predetermined altitude, the inertial navigation calculation processing unit 116 detects the inertial measurement device 20 A state quantity that quantitatively indicates the state of the moving object M is derived by inertial navigation using the result. The “state quantity” includes, for example, a position, a speed, a quaternion from the body coordinate system to the inertial coordinate system, and the like. The machine body coordinate system is a coordinate system in which the center of gravity of the moving body M is the origin of the coordinates, and the machine axis direction of the moving body M is one axis. The inertial coordinate system is a coordinate system in which the vertical direction based on the gravity of the celestial body PL is a certain axis. The “state quantity” may include a sensor bias value for the acceleration or the angular velocity detected by the inertial measurement device 20.

 一般的に、地球上の監視装置との無線通信によって遠隔制御する場合、地球と天体PLとの距離のオーダーが億キロメートルである場合があり、電波の往復伝搬時間に換算して数十分以上掛かる場合がある。そのため、天体PLの地表面に対する移動体Mの高度を低下させ、移動体Mを天体PLに着陸させていく際、地上からの指令に基づく遠隔制御では対応しきれないことがある。従って、慣性航法演算処理部116は、自律航法を行うために、慣性計測装置20の検出値を利用した慣性航法によって移動体Mの状態量を導出する。 Generally, in the case of remote control by wireless communication with a monitoring device on the earth, the order of the distance between the earth and the celestial body PL may be 100 million kilometers, and it is more than tens of minutes in terms of the round-trip propagation time of radio waves. May hang. For this reason, when lowering the height of the moving body M with respect to the ground surface of the celestial body PL and landing the moving body M on the celestial body PL, remote control based on a command from the ground may not be sufficient. Therefore, the inertial navigation calculation processing unit 116 derives the state quantity of the moving object M by the inertial navigation using the detection value of the inertial measurement device 20 to perform the autonomous navigation.

 パラメータ決定部118は、参照軌道情報134を参照し、カルマンフィルタの各種方程式に含まれるパラメータの値を決定する。パラメータには、例えば、後述するカルマンフィルタの状態遷移行列や、カルマンフィルタのプロセスノイズの共分散行列、カルマンフィルタの観測ノイズの共分散行列などが含まれる。パラメータ決定部118は、パラメータの値を決定すると、そのパラメータ値をフィルタパラメータ情報136として記憶部130に記憶させる。 The 決定 parameter determining unit 118 refers to the reference trajectory information 134 and determines values of parameters included in various equations of the Kalman filter. The parameters include, for example, a state transition matrix of a Kalman filter described later, a covariance matrix of process noise of the Kalman filter, a covariance matrix of observation noise of the Kalman filter, and the like. After determining the value of the parameter, the parameter determination unit 118 stores the parameter value in the storage unit 130 as the filter parameter information 136.

 予測部120は、慣性航法演算処理部116によって移動体Mの状態量が導出されると、フィルタパラメータ情報136によってパラメータが定義されたカルマンフィルタを利用した第1処理(予測処理)において、移動体Mの状態量の誤差(航法誤差)の変動を予測し、カルマンフィルタを利用した第2処理(更新処理)において、移動体Mの状態量の誤差(航法誤差)を低減させる。 When the state quantity of the moving object M is derived by the inertial navigation operation processing unit 116, the prediction unit 120 performs the first processing (prediction processing) using the Kalman filter in which the parameters are defined by the filter parameter information 136 (the prediction processing). Of the state quantity error (navigation error) of the moving object M is reduced in the second processing (update processing) using the Kalman filter.

 例えば、カルマンフィルタにおける今回の処理周期をkとした場合、第1処理には、現周期kにおいて、次回の処理周期k+1の移動体Mの状態量を予測する処理と、現周期kにおいて、次回の処理周期k+1の移動体Mの状態量の誤差を予測する処理とが含まれる。より具体的には、第1処理には、現周期kにおいて得られると推定された移動体Mの状態量(後述する状態量ベクトル)と、現周期kにおける制御入力(後述する制御ベクトル)とに基づいて、次の周期k+1において得られることが推定される移動体Mの状態量(推定値)を予測する処理と、現周期kの推定値に含まれる誤差の程度、あるいは推定値の精度を示す共分散(事前推定共分散)と、現周期kにおけるカルマンフィルタのプロセスノイズの程度を示す共分散とに基づいて、現周期kにおいて導出される次の周期k+1の推定値に含まれる誤差の程度、あるいは推定値の精度を示す共分散(事後推定共分散)を導出する処理と、が含まれる。 For example, when the current processing cycle in the Kalman filter is k, the first processing includes, in the current cycle k, processing for predicting the state quantity of the moving object M in the next processing cycle k + 1, and in the current cycle k, the next processing. And a process of estimating an error of the state quantity of the moving object M in the processing cycle k + 1. More specifically, in the first processing, the state quantity (state quantity vector described later) of the moving object M estimated to be obtained in the current cycle k, the control input (control vector described later) in the current cycle k, and For estimating the state quantity (estimated value) of the moving object M estimated to be obtained in the next cycle k + 1 based on the above, and the degree of error included in the estimated value of the current cycle k, or the accuracy of the estimated value Of the error included in the estimated value of the next cycle k + 1 derived in the current cycle k, based on the covariance (pre-estimated covariance) indicating the current cycle k and the covariance indicating the degree of the process noise of the Kalman filter in the current cycle k. A process of deriving a covariance (a posteriori estimated covariance) indicating the degree or accuracy of the estimated value.

 第2処理は、第1処理において事後推定共分散として推定された移動体Mの状態量の共分散に基づいて、カルマンゲインを導出し、導出したカルマンゲインと、ある観測値とに基づいて、第1処理において推定された移動体Mの状態量を更新する処理と、導出したカルマンゲインと、第1処理において事後推定共分散として推定された移動体Mの状態量の共分散とに基づいて、移動体Mの状態量の共分散を更新する処理と、が含まれる。観測値は、例えば、慣性航法演算処理部116によって導出された移動体Mの状態量と、画像航法演算処理部114によって導出された移動体Mの状態量との差分であってよい。すなわち、観測値は、慣性航法によって求めた移動体Mの位置と、画像航法によって求めた移動体Mの位置との差分であってよい。第2処理では、位置の差分を観測値として利用することで、位置に加えて、位置の微分値である速度や加速度なども併せて状態量として推定される。 The second processing derives a Kalman gain based on the covariance of the state quantity of the moving object M estimated as the posterior estimation covariance in the first processing, and based on the derived Kalman gain and a certain observation value, Based on the process of updating the state quantity of the moving object M estimated in the first process, the derived Kalman gain, and the covariance of the state amount of the moving object M estimated as the posterior estimated covariance in the first process. And updating the covariance of the state quantity of the moving object M. The observation value may be, for example, a difference between the state quantity of the moving body M derived by the inertial navigation calculation processing unit 116 and the state quantity of the moving body M derived by the image navigation calculation processing unit 114. That is, the observation value may be a difference between the position of the moving object M obtained by the inertial navigation and the position of the moving object M obtained by the image navigation. In the second process, by using the position difference as an observation value, in addition to the position, the velocity, acceleration, or the like, which is a differential value of the position, is estimated as a state quantity.

 ここで、予測部120は、カルマンフィルタを用いて第1処理および第2処理を行う際に、数式(1)から(6)として例示する最適化問題(最適制御問題)を解くことで、将来の移動体Mの状態量の最適解を導出する。以下、アルファベットに(→)を付けたものは、ベクトルあるいは行列を表すものとする。 Here, when performing the first processing and the second processing by using the Kalman filter, the prediction unit 120 solves an optimization problem (optimal control problem) exemplified as Expressions (1) to (6), so that the future An optimal solution of the state quantity of the moving object M is derived. Hereinafter, a letter with (→) represents a vector or a matrix.

Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000001

Figure JPOXMLDOC01-appb-M000002
Figure JPOXMLDOC01-appb-M000002

Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000003

Figure JPOXMLDOC01-appb-M000004
Figure JPOXMLDOC01-appb-M000004

Figure JPOXMLDOC01-appb-M000005
Figure JPOXMLDOC01-appb-M000005

Figure JPOXMLDOC01-appb-M000006
Figure JPOXMLDOC01-appb-M000006

 x(→)は、移動体Mの状態量を示す状態量ベクトルを表し、u(→)は、移動体Mの制御ベクトルを表し、fは、非線形ダイナミクス関数を表し、gは、状態制約式を表し、hは、制御制約式を表し、F(→)は、カルマンフィルタの状態遷移行列を表し、H(→)は、カルマンフィルタの観測行列を表し、K(→)は、上述した第2処理(更新処理)を行う処理周期(ステップ)の数を表し、P(→)は、カルマンフィルタの共分散行列を表し、Q(→)は、カルマンフィルタのプロセスノイズの共分散行列を表し、R(→)は、カルマンフィルタの観測ノイズの共分散行列を表し、kは、カルマンフィルタの各処理周期(ステップ)を表している。 x (→) represents a state quantity vector indicating the state quantity of the moving body M, u (→) represents a control vector of the moving body M, f represents a nonlinear dynamics function, and g represents a state constraint equation. , H represents a control constraint equation, F (→) represents a state transition matrix of a Kalman filter, H (→) represents an observation matrix of a Kalman filter, and K (→) represents the second processing described above. P (→) represents the covariance matrix of the Kalman filter, Q (→) represents the covariance matrix of the process noise of the Kalman filter, and R (→ ) Represents the covariance matrix of the observation noise of the Kalman filter, and k represents each processing cycle (step) of the Kalman filter.

 数式(1)は、ある評価関数Jの最小化問題を定式化した数式を表し、数式(2)から(6)は、数式(1)を解く上で満たすべき数式を表している。数式(1)に示す評価関数Jは、ある処理周期kの観測行列G(→)と、処理周期kの共分散行列P(→)kfとの合成写像のトレース値を表している。処理周期kとは、地上の監視装置から指示された誘導軌道に基づいて計算されたカルマンフィルタの最終処理時刻(最終処理周期)である。言い換えれば、処理周期kは、移動体Mが天体PLに着陸するときの最終処理周期である。観測行列G(→)は、非対角要素がゼロである行列であり、最終処理時刻kでの共分散行列P(→)kfの特定の対角成分に重みをつけてトレース値(対角成分の和)を計算するための行列である。そのため、評価関数Jは、共分散行列P(→)kfの特定の対角成分に重みづけをしたトレース値である。 Formula (1) represents a formula that formulates a minimization problem of a certain evaluation function J, and formulas (2) to (6) represent formulas to be satisfied in solving formula (1). Evaluation function J shown in Equation (1) represents a certain processing cycle k f of the observation matrix G (→), the trace value of a composite mapping and covariance matrix P (→) kf processing cycle k f. The processing cycle k f, which is the final processing time of the Kalman filter, which is calculated based on the derived track instructed from the ground of the monitoring device (final processing cycle). In other words, processing cycle k f is the final processing period when the moving object M is landing on celestial PL. Observation matrix G (→) is a matrix-diagonal elements are zero, the final treatment time covariance matrix P in k f (→) trace value with a weighted specific diagonal elements of kf (vs. This is a matrix for calculating the sum of angular components. Therefore, the evaluation function J is a trace value in which a specific diagonal component of the covariance matrix P (→) kf is weighted.

 数式(2)は、状態量ベクトルx(→)と制御ベクトルu(→)とを変数とする非線形ダイナミクス関数によって表される状態方程式であり、数式(3)は、等式の制約条件式を表し、数式(4)は、不等式の制約条件式を表している。 Equation (2) is a state equation represented by a nonlinear dynamics function having a state quantity vector x (→) and a control vector u (→) as variables, and equation (3) is a constraint equation of the equation. Expression (4) represents an inequality constraint condition expression.

 数式(5)は、上述した第1処理に含まれる2つの処理のうち、事後推定共分散を導出する処理を表している。すなわち、数式(5)は、前周期k-1の推定値に含まれる誤差の共分散行列(事前推定共分散)P(→)k-1|k-1と、現周期kにおけるカルマンフィルタのプロセスノイズの共分散行列Q(→)とに基づいて、現周期kの推定値に含まれる誤差の共分散行列(事後推定共分散)P(→)k|k-1を導出することを表している。k|k-1は、一つ前の周期k-1において、一つ先の将来にあたる現周期kの共分散行列を推定することを意味する。 Equation (5) represents the process of deriving the posterior estimated covariance among the two processes included in the above-described first process. That is, Equation (5) is obtained by calculating the covariance matrix (prior estimated covariance) P (→) k−1 | k−1 of the error included in the estimated value of the previous cycle k−1 and the process of the Kalman filter in the current cycle k. Deriving a covariance matrix of the error (post posteriori covariance) P (→) k | k−1 based on the noise covariance matrix Q (→) k and the error included in the estimated value of the current period k. ing. k | k-1 means estimating the covariance matrix of the current cycle k which is one time ahead in the previous cycle k-1.

 数式(6)は、上述した第2処理に含まれる2つの処理のうち、移動体Mの状態量の共分散を更新する処理を表している。すなわち、数式(6)は、数式(5)に示すように、前の周期k-1で推定した現周期kの共分散行列P(→)k|k-1に基づいて、現周期kの共分散行列P(→)k|kを再度導出することで、前の周期k-1で推定した共分散行列P(→)k|k-1を、より確からしい共分散行列P(→)k|kに更新することを表している。上述したカルマンゲインは、数式(6)の右辺項P(→)k|k-1H(→)(H(→)P(→)k|k-1H(→)+R(→)-1に相当する。共分散を更新する処理は、予め決められた処理周期K(→)で行われる。k>Kである。 Equation (6) represents a process of updating the covariance of the state quantity of the moving object M among the two processes included in the above-described second process. That is, as shown in Expression (5), Expression (6) expresses the current period k based on the covariance matrix P (→) k | k-1 of the current period k estimated in the previous period k-1. By deriving the covariance matrix P (→) k | k again, the covariance matrix P (→) k | k−1 estimated at the previous cycle k−1 is converted to a more reliable covariance matrix P (→) k | k is updated. The above-mentioned Kalman gain is obtained by calculating the right-hand side term P (→) k | k−1 H (→) T (H (→) P (→) k | k−1 H (→) T + R (→) in Expression (6). k ) -1 . The process of updating the covariance is performed at a predetermined processing cycle K (→). a k> K f.

 予測部120は、数式(1)に示す評価関数Jが最小となる制御ベクトルu(→)の時間履歴を求めることで、最適化問題を解く。言い換えれば、予測部120は、カルマンフィルタの各処理をkからkまで繰り返す中で得られたk個の制御ベクトルu(→)の集合の中から、評価関数Jが最小となる制御ベクトルu(→)を探索することで、最適化問題を解く。 The prediction unit 120 solves the optimization problem by finding the time history of the control vector u (→) that minimizes the evaluation function J shown in Expression (1). In other words, the prediction unit 120, control vector from a set of obtained in repeating the processing of the Kalman filter from k 1 to k f k f-number of the control vector u (→), the evaluation function J is minimized Solve the optimization problem by searching for u (→).

 最適化問題を解くためには評価関数Jを、ある条件下で、制御ベクトルu(→)に対して離散線形化する計算手法が必要である。従って、本実施形態では、予測部120は、数式(7)に示す近似式を第1処理および第2処理に適用し、評価関数Jの一要素である共分散行列P(→)の離散線形化を行う。数式(7)中のP(-)は、参照軌道として決定された移動体Mがとるべき移動量を基にしてカルマンフィルタによって導出した共分散行列を表している。移動体Mが参照軌道を移動した際の航法精度を表す分散行列P(-)は、実際に移動体Mが参照軌道を移動するときに利用されるカルマンフィルタを仮想的に動作させることで導出される。「仮想的に動作させる」とは、カルマンフィルタの計算結果を移動体Mの機体制御に利用しないことである。(-)は、オーバーライン(バー)を表している。 In order to solve the optimization problem, a calculation method is required in which the evaluation function J is discretely linearized with respect to the control vector u (→) under a certain condition. Therefore, in the present embodiment, the prediction unit 120 applies the approximation formula shown in Expression (7) to the first processing and the second processing, and calculates the discrete covariance matrix P (→) k which is one element of the evaluation function J. Perform linearization. P (−) in Expression (7) represents a covariance matrix derived by a Kalman filter based on the amount of movement to be taken by the moving object M determined as the reference trajectory. The variance matrix P (-) representing the navigation accuracy when the moving object M moves on the reference trajectory is derived by virtually operating the Kalman filter used when the moving object M actually moves on the reference trajectory. You. “Virtually operate” means that the calculation result of the Kalman filter is not used for control of the mobile unit M. (-) Indicates an overline (bar).

Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000007

Figure JPOXMLDOC01-appb-M000008
Figure JPOXMLDOC01-appb-M000008

 数式(7)に示す近似式は、参照軌道(x(→),u(→))の近傍で、各処理周期の共分散行列P(→)が、P(→)をtr(P(→))で微分した結果と一致するか、または極めて近くなるという仮定を表しており、数式(8)に示す条件式を満たす場合のみ成立する。言い換えれば、数式(7)に示す近似式は、共分散行列P(→)(-)のトレース値(tr(P(→)(-)))に対する共分散行列P(→)のトレース値(tr(P(→)))の除算値を、共分散行列P(→)(-)に乗算した値に、共分散行列P(→)が近似することを仮定している。数式(7)に示す共分散行列P(→)は、「第1共分散行列」の一例であり、数式(7)に示す共分散行列P(→)(-)は、「第2共分散行列」の一例である。 Approximate expression shown in Equation (7), the reference trajectory (x (→), u (→)) in the vicinity of, the covariance matrix P (→) k of each processing cycle, P (→) k to tr (P (→) k ) represents an assumption that the result is the same as or very close to the result of differentiation, and is satisfied only when the conditional expression shown in Expression (8) is satisfied. In other words, the approximation formula shown in Expression (7) is obtained by calculating the covariance matrix P (→) k with respect to the trace value (tr (P (→) k (−))) of the covariance matrix P (→) k (−). Assuming that the covariance matrix P (→) k approximates the value obtained by multiplying the covariance matrix P (→) k (−) by the division value of the trace value (tr (P (→) k )). I have. The covariance matrix P (→) k shown in equation (7) is an example of “first covariance matrix”, and the covariance matrix P (→) k (−) shown in equation (7) is It is an example of “covariance matrix”.

 数式(9)は、共分散行列P(→)の線形式を表す。予測部120は、数式(9)と離散線形化された数式(2)から(4)とに従って、評価関数Jを最小にする制御ベクトルu(→)の時間履歴を導出する。数式(9)の[K,K]は、式(6)の処理周期、すなわち第2処理(共分散行列の更新処理)の処理周期の間であることを表しており、各tr(P(→))は、線形化の際に基準とした参照軌道(x(→),u(→))の近傍において成り立つ線形式で表されている。 Equation (9) represents the linear form of the covariance matrix P (→) k . The prediction unit 120 derives the time history of the control vector u (→) that minimizes the evaluation function J according to Expression (9) and Expressions (2) to (4) that have been linearized discretely. [K , K + ] in Expression (9) indicates that the period is the processing period of Expression (6), that is, the processing period of the second processing (the processing of updating the covariance matrix), and each tr ( P (→)) is expressed in a linear form that is established in the vicinity of the reference trajectory (x (→), u (→)) used as a reference for linearization.

Figure JPOXMLDOC01-appb-M000009
Figure JPOXMLDOC01-appb-M000009

 具体的には、予測部120は、数式(9)に従って評価関数Jを最小にする制御ベクトルu(→)を導出すると、その導出した制御ベクトルu(→)を数式(2)に代入することで状態量ベクトルx(→)を導出し、導出した状態量ベクトルx(→)および制御ベクトルu(→)を基に、再び数式(7)を用いた離散化および線形化を行うことを繰り返し行う。 Specifically, when the prediction unit 120 derives the control vector u (→) that minimizes the evaluation function J according to Expression (9), the prediction unit 120 substitutes the derived control vector u (→) into Expression (2). , And repeats discretization and linearization using Expression (7) again based on the derived state quantity vector x (→) and control vector u (→). Do.

 このように、評価関数Jが最小となる制御ベクトルu(→)の時間履歴を探索するという最適化問題を、参照軌道(x(→),u(→))周りで離散化および線形化することで、線形化した最適化問題を、凸最適化問題として解くことができる。凸最適化問題は、凸集合上の凸関数の最小化問題であり、一般的な最適化問題よりも簡単に最適化が可能であり、局所的な最小値が大域的な最小値と一致する性質をもつ。このように最適化問題を線形化して凸最適化問題として扱うことで、共分散行列のトレース値(スカラー値)を基にした比較的簡易な計算を行った場合であっても、あるいは物理的に成り立たない初期解が与えられた場合であっても、その計算の解を収束させ、最適解(x(→),u(→))を求めることができる。 Thus, the optimization problem of searching for the time history of the control vector u (→) in which the evaluation function J is minimized is discretized and linearized around the reference trajectory (x (→), u (→)). Thus, the linearized optimization problem can be solved as a convex optimization problem. The convex optimization problem is a minimization problem of a convex function on a convex set, and can be optimized more easily than a general optimization problem, and the local minimum matches the global minimum Has properties. By linearizing the optimization problem and treating it as a convex optimization problem in this way, even when a relatively simple calculation based on the trace value (scalar value) of the covariance matrix is performed, Even if an initial solution that does not hold is given, the solution of the calculation can be made to converge and the optimal solution (x (→), u (→)) can be obtained.

 機体制御部122は、予測部120がカルマンフィルタを用いて導出した最適解(x(→),u(→))に基づいて推進力出力装置30を制御することで、移動体Mの位置、速度、加速度、姿勢などの状態が、最適解(x(→),u(→))が示す所望の状態となるように制御する。 The body control unit 122 controls the propulsion output device 30 based on the optimal solution (x (→), u (→)) derived by the prediction unit 120 using the Kalman filter, and thereby the position and speed of the moving body M. , Acceleration, posture, etc., are controlled to be the desired states indicated by the optimal solutions (x (→), u (→)).

 図3は、実施形態の制御部110による一連の処理の一例を示すフローチャートである。本フローチャートの処理は、例えば、天体PLの地表面と移動体Mとの距離(高度)が所定距離(例えば40[m]程度)以下となる降下フェーズにおいて行われる。 FIG. 3 is a flowchart illustrating an example of a series of processes performed by the control unit 110 according to the embodiment. The processing of this flowchart is performed, for example, in a descent phase in which the distance (altitude) between the ground surface of the celestial body PL and the moving body M is equal to or less than a predetermined distance (for example, about 40 [m]).

 まず、パラメータ決定部118は、参照軌道情報134を参照し、初期値となる参照軌道の(x(→),u(→))を取得する(ステップS100)。次に、パラメータ決定部118は、初期値とする参照軌道の(x(→),u(→))を基に、カルマンフィルタのパラメータ(F(→)、Q(→)、R(→))の値を決定する(ステップS102)。 First, the parameter determination unit 118 refers to the reference trajectory information 134 and obtains (x (→), u (→)) of the reference trajectory that is an initial value (step S100). Next, the parameter determination unit 118 determines the parameters of the Kalman filter (F (→), Q (→), R (→)) based on (x (→), u (→)) of the reference trajectory as the initial value. Is determined (step S102).

 次に、予測部120は、カルマンフィルタの処理周期kが、予め決められた共分散行列の更新処理を開始する処理周期K(→)となるまで、パラメータ決定部118によって決定されたパラメータを含むカルマンフィルタを用いて、共分散行列P(→)を導出することを繰り返す(ステップS104)。 Next, the prediction unit 120 calculates the Kalman filter including the parameters determined by the parameter determination unit 118 until the processing cycle k of the Kalman filter becomes the processing cycle K (→) for starting the update processing of the predetermined covariance matrix. Is used to repeatedly derive the covariance matrix P (→) k (step S104).

 図4は、共分散行列P(→)と処理周期kとの関係の一例を示す図である。図示のように、共分散行列P(→)は、初期値となるP(→)が与えられると、処理を繰り返すほど一定の値に収束していく。このとき、収束値となる共分散行列P(→)は、カルマンフィルタのパラメータによって一意に決定される。 FIG. 4 is a diagram illustrating an example of the relationship between the covariance matrix P (→) k and the processing cycle k. As shown, the covariance matrix P (→) k converges to a constant value as the process is repeated, given the initial value P (→) 0 . At this time, the covariance matrix P (→) k serving as a convergence value is uniquely determined by the parameters of the Kalman filter.

 図3の説明に戻り、次に、予測部120は、参照軌道として与えられた参照軌道(x(→),u(→))周りで、勾配情報を取得(導出)する(ステップS106)。勾配情報とは、評価関数Jの勾配に関する情報である。評価関数Jの勾配は、例えば、数式(7)の左辺式によって表される、評価関数Jの一要素である共分散行列P(→)のトレース値のx(→)やu(→)での偏微分量である。例えば、予測部120は、勾配情報を得るために、共分散行列P(→)kをx(→)またはu(→)で偏微分する。予測部120は、この偏微分結果を用いて、共分散行列P(→)のトレース値(tr(P(→)k))を離散化および線形化(すなわち凸化)させることができる。離散化および線形化とは、評価関数Jを近似的に離散化された各時刻kのx(→)やu(→)の線形式で書き表す際に、x(→)やu(→)にかかる係数としてこの偏微分値を利用することである。 Returning to the description of FIG. 3, next, the prediction unit 120 acquires (derives) gradient information around the reference trajectory (x (→), u (→)) given as the reference trajectory (step S106). The gradient information is information on the gradient of the evaluation function J. The gradient of the evaluation function J is represented by, for example, x (→) or u (→) of the trace value of the covariance matrix P (→) k , which is one element of the evaluation function J, which is represented by the left-hand side equation of Expression (7). Is the partial differential amount at. For example, the prediction unit 120 partially differentiates the covariance matrix P (→) k with x (→) or u (→) in order to obtain gradient information. The prediction unit 120 can discretize and linearize (ie, convexize) the trace value (tr (P (→) k)) of the covariance matrix P (→) k using the partial differentiation result. Discretization and linearization means that when the evaluation function J is written in a linear form of x (→) or u (→) at each time k approximately discretized, x (→) or u (→) This partial differential value is used as such a coefficient.

 次に、予測部120は、最適化問題の一つである凸最適化問題を解くことで、トレース値(tr(P(→)))が最小値をとる最適解(x(→),u(→))を導出する(ステップS108)。 Next, the prediction unit 120 solves a convex optimization problem, which is one of the optimization problems, so that the trace value (tr (P (→) k )) takes the minimum value to obtain the optimal solution (x (→), u (→)) is derived (step S108).

 図5は、評価関数Jの勾配情報を用いた凸最適化問題を解く処理を模式的に示すの概念図である。図示の例は、最適化問題を、評価関数Jの勾配情報を用いた凸最適化問題に変形することを表している。図示の例のように、最適化問題の一つである凸最適化問題を、評価関数Jの勾配情報を利用して解く場合、予測部120は、共分散行列P(→)のトレース値(tr(P(→)))を凸化させる。これによって、局所的に最適解を探索した場合であっても、トレース値(tr(P(→)))が最小値をとる最適解が局所解として導出されず、凸最適化によって、元の問題の局所解の一つが高速に求解出来る。 FIG. 5 is a conceptual diagram schematically showing a process for solving a convex optimization problem using gradient information of the evaluation function J. The illustrated example shows that the optimization problem is transformed into a convex optimization problem using the gradient information of the evaluation function J. When the convex optimization problem, which is one of the optimization problems, is solved by using the gradient information of the evaluation function J as in the example shown, the prediction unit 120 calculates the trace value of the covariance matrix P (→) k (Tr (P (→) k )) is made convex. As a result, even when the optimal solution is locally searched, the optimal solution having the minimum trace value (tr (P (→) k )) is not derived as a local solution, and the original solution is obtained by convex optimization. One of the local solutions to the problem can be solved quickly.

 次に、予測部120は、参照軌道として与えられた(x(→),u(→))(図中x(-))と、最適解として導出した(x(→),u(→))(図中x)との差分のノルム(ユークリッドノルム)が、閾値Δ以下であるか否かを判定する(ステップS110)。 Next, the prediction unit 120 derives (x (→), u (→)) (x (−) in the figure) given as the reference trajectory and derives the optimal solution (x (→), u (→)). ) (X in the figure), it is determined whether or not the norm (Euclidean norm) of the difference is equal to or smaller than a threshold value Δ (step S110).

 予測部120によってノルムが閾値Δ以下であると判定された場合、機体制御部122は、予測部120がカルマンフィルタを用いて導出した最適解(x(→),u(→))に基づいて推進力出力装置30を制御する(ステップS112)。これによって本フローチャートの処理が終了する。 When the prediction unit 120 determines that the norm is equal to or smaller than the threshold Δ, the airframe control unit 122 proceeds based on the optimal solution (x (→), u (→)) derived by the prediction unit 120 using the Kalman filter. The power output device 30 is controlled (step S112). Thus, the processing of this flowchart ends.

 予測部120は、ノルムが閾値Δを超えると判定した場合、初期値として与えられた参照軌道(x(→),u(→))を、S108の処理で最適解として導出した軌道(x(→),u(→))に更新し(ステップS114)、S102の処理に戻る。予測部120は、S114の処理において、最適解として得られる状態量x(→)が、参照軌道が示す状態量x(→)(-)から大きく乖離しないように、最適解として取り得る状態量x(→)の上下限を変更してもよい。 When determining that the norm exceeds the threshold value Δ, the prediction unit 120 derives the reference trajectory (x (→), u (→)) given as the initial value as the optimal trajectory (x (→ ( →), u (→)) (step S114), and the process returns to S102. In the process of S114, the prediction unit 120 determines a state quantity that can be taken as an optimal solution such that the state quantity x (→) obtained as the optimal solution does not greatly deviate from the state quantity x (→) (−) indicated by the reference trajectory. The upper and lower limits of x (→) may be changed.

 これを受けて、パラメータ決定部118は、更新された軌道(x(→),u(→))を基に、カルマンフィルタのパラメータ(F(→)、Q(→)、R(→))の値を再度決定する。このように、参照軌道、あるいは前回の処理で最適解として求めた軌道との乖離が閾値Δ以下となるまで凸最適化問題を解くこと繰り返すことで、移動体Mを天体PLに着陸させる際に行わせる自律航法の航法誤差が小さくなる移動体Mの将来の状態量を逐次的に導出することができる。この結果、時系列に連続する移動体Mの将来の状態量によって表される誘導軌道を航法誤差が小さくなるように最適化することができる。 In response to this, the parameter determination unit 118 determines the Kalman filter parameters (F (→), Q (→), R (→)) based on the updated trajectory (x (→), u (→)). Determine the value again. As described above, when the moving object M lands on the celestial body PL by repeatedly solving the convex optimization problem until the deviation from the reference trajectory or the trajectory obtained as the optimal solution in the previous process is equal to or smaller than the threshold value Δ. It is possible to sequentially derive the future state quantity of the moving object M in which the navigation error of the autonomous navigation to be performed becomes small. As a result, it is possible to optimize the guidance trajectory represented by the future state quantity of the moving object M that is continuous in time series so that the navigation error is reduced.

 以上説明した実施形態によれば、カメラ10や慣性計測装置20といった複数のセンサを備える移動体Mに搭載されたコンピュータである航法装置100に、カメラ10と慣性計測装置20とのそれぞれの検出値に基づき、カルマンフィルタを用いて移動体Mの将来の状態量を予測させる際に、カルマンフィルタのパラメータ(F(→)、Q(→)、R(→))に基づいて、移動体Mの将来の状態量の誤差の程度を示す指標値である共分散行列P(→)を導出させ、共分散行列P(→)のトレース値(tr(P(→)))が要素として含まれる評価関数Jが最適となる移動体の状態量x(→)を、最適化問題(例えば凸最適化問題)を解くことで導出させる。これによって、航法誤差が小さくなるように、天体PLに移動体Mを着陸させる際の誘導軌道を最適化することができる。 According to the above-described embodiment, the navigation device 100, which is a computer mounted on a moving body M including a plurality of sensors such as the camera 10 and the inertial measurement device 20, supplies the detection values of the camera 10 and the inertial measurement device 20 with each other. When predicting the future state quantity of the moving object M using the Kalman filter based on the Kalman filter, based on the Kalman filter parameters (F (→), Q (→), R (→)), A covariance matrix P (→) k which is an index value indicating the degree of error of the state quantity is derived, and the trace value (tr (P (→) k )) of the covariance matrix P (→) k is included as an element. The state quantity x (→) of the moving object at which the evaluation function J is optimal is derived by solving an optimization problem (for example, a convex optimization problem). This makes it possible to optimize the guidance trajectory when landing the moving body M on the celestial body PL so that the navigation error is reduced.

 [変形例]
 以下、上述した実施形態の変形例について説明する。上述した実施形態では、移動体Mが宇宙機であり、その移動体Mに搭載されるセンサが、カメラ10および慣性計測装置20であるものとして説明したがこれに限られない。例えば、移動体Mが上述したUAVである場合、その移動体Mに搭載されるセンサには、カメラ10に代えて、あるいは加えて、レーダやLIDAR(Laser(Light) Imaging Detection and Ranging)が含まれてよい。移動体Mが上述したAUVである場合、その移動体Mに搭載されるセンサには、カメラ10に代えて、あるいは加えて、ソナーが含まれてよい。レーダ、LIDAR、およびソナーは、「地形検出センサ」の他の例である。
[Modification]
Hereinafter, a modified example of the above-described embodiment will be described. In the above-described embodiment, the moving body M is a spacecraft, and the sensors mounted on the moving body M are the camera 10 and the inertial measurement device 20. However, the present invention is not limited to this. For example, when the moving object M is the above-described UAV, the sensors mounted on the moving object M include radar and LIDAR (Laser (Light) Imaging Detection and Ranging) instead of or in addition to the camera 10. May be. When the moving body M is the above-described AUV, the sensor mounted on the moving body M may include a sonar instead of or in addition to the camera 10. Radar, LIDAR, and sonar are other examples of "terrain detection sensors."

 上述した実施形態では、航法装置100が、最適化問題の一つである凸最適化問題を解くことで、評価関数Jが最適となる移動体の状態量x(→)を導出するものとして説明したがこれに限られない。例えば、航法装置100の予測部120は、評価関数Jの勾配情報である共分散行列P(→)のトレース値のx(→)やu(→)による偏微分量に基づいて、ニュートン法や最急降下法といった他の最適化問題を解くことで、評価関数Jが最適となる移動体の状態量x(→)を導出してもよい。言い換えれば、予測部120は、共分散行列P(→)(-)のトレース値(tr(P(→)(-)))に対する共分散行列P(→)のトレース値(tr(P(→)))の除算値を、共分散行列P(→)(-)に乗算した値に、共分散行列P(→)が近似するという仮定の下で、ニュートン法や最急降下法といった他の最適化問題を解くことで、評価関数Jが最適となる移動体の状態量x(→)を導出してよい。 In the above-described embodiment, the navigation device 100 is described as deriving the state quantity x (→) of the moving object at which the evaluation function J is optimal by solving a convex optimization problem which is one of the optimization problems. However, it is not limited to this. For example, the prediction unit 120 of the navigation apparatus 100 calculates the Newton's method based on the partial differential amount of x (→) or u (→) of the trace value of the covariance matrix P (→) k which is the gradient information of the evaluation function J. By solving another optimization problem such as the steepest descent method or the steepest descent method, the state quantity x (→) of the moving object at which the evaluation function J is optimal may be derived. In other words, the prediction unit 120, the covariance matrix P (→) k (-) Trace value (tr (P (→) k (-))) covariance matrix for P (→) trace value of k (tr ( P (→) k )) is multiplied by the covariance matrix P (→) k (−), under the assumption that the covariance matrix P (→) k approximates By solving another optimization problem such as the steep descent method, the state quantity x (→) of the moving object at which the evaluation function J is optimal may be derived.

 以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。 As described above, the embodiments for carrying out the present invention have been described using the embodiments. However, the present invention is not limited to these embodiments at all, and various modifications and substitutions may be made without departing from the gist of the present invention. Can be added.

10…カメラ、20…慣性計測装置、100…航法装置、102…通信部、110…制御部、112…取得部、114…画像航法演算処理部、116…慣性航法演算処理部、118…パラメータ決定部、120…予測部、122…機体制御部、130…記憶部、M…移動体 DESCRIPTION OF SYMBOLS 10 ... Camera, 20 ... Inertial measurement device, 100 ... Navigation device, 102 ... Communication part, 110 ... Control part, 112 ... Acquisition part, 114 ... Image navigation calculation processing part, 116 ... Inertial navigation calculation processing part, 118 ... Parameter determination Unit, 120: prediction unit, 122: airframe control unit, 130: storage unit, M: mobile unit

Claims (5)

 複数のセンサを備える移動体に搭載されるコンピュータに、
 前記複数のセンサに含まれる第1センサと第2センサとのそれぞれの検出値に基づき、カルマンフィルタを用いて将来の前記移動体の状態量を予測させる際に、前記カルマンフィルタのパラメータに基づいて、前記移動体の状態量の誤差の程度を示す指標値を導出させ、
 前記指標値が要素として含まれる評価関数が最適となる前記移動体の状態量を、最適化問題を解くことで導出させる、
 誘導制御プログラムを格納したコンピュータ読み取り可能な非一過性の記憶媒体。
A computer mounted on a moving object equipped with a plurality of sensors,
Based on the respective detection values of the first sensor and the second sensor included in the plurality of sensors, when predicting the future state amount of the moving object using a Kalman filter, based on the parameters of the Kalman filter, Deriving an index value indicating the degree of error in the state quantity of the moving object,
The index value, the state quantity of the moving body in which the evaluation function included as an element is optimal is derived by solving an optimization problem,
A non-transitory computer-readable storage medium storing a guidance control program.
 前記コンピュータに、
 前記最適化問題を解くことで導出させた前記移動体の状態量と、予め設定された参照状態量との差分のノルムが閾値を超える場合、前記移動体の状態量を基に前記パラメータを変更させ、
 前記変更させたパラメータを含む前記カルマンフィルタに基づいて、前記指標値を導出させる、
 請求項1に記載の誘導制御プログラムを格納した記憶媒体。
On the computer,
If the norm of the difference between the state quantity of the moving body derived by solving the optimization problem and a preset reference state quantity exceeds a threshold, the parameter is changed based on the state quantity of the moving body. Let
Based on the Kalman filter including the changed parameter, to derive the index value,
A storage medium storing the guidance control program according to claim 1.
 前記コンピュータに、
 前記ノルムが閾値以下となるまで、前記移動体の状態量を基に前記パラメータを変更させ、前記変更させたパラメータを含む前記カルマンフィルタに基づいて、前記指標値を導出させることを繰り返させる、
 請求項2に記載の誘導制御プログラムを格納した記憶媒体。
On the computer,
Until the norm becomes equal to or less than a threshold, the parameter is changed based on the state quantity of the moving object, and the index value is derived based on the Kalman filter including the changed parameter.
A storage medium storing the guidance control program according to claim 2.
 前記コンピュータに、
 前記導出させた前記移動体の状態量を基に前記パラメータを決定させ、前記決定させたパラメータを含む前記カルマンフィルタに基づいて、第1共分散行列を前記指標値として導出させ、
 予め設定された参照状態量を基に前記カルマンフィルタのパラメータを決定させ、前記決定させたパラメータを含む前記カルマンフィルタに基づいて、第2共分散行列を前記指標値として導出させ、
 前記第2共分散行列のトレース値に対する前記第1共分散行列のトレース値の除算値を前記第2共分散行列に乗算した値に、前記第1共分散行列が近似すると仮定して、前記最適化問題を解かせる、
 請求項1に記載の誘導制御プログラムを格納した記憶媒体。
On the computer,
The parameter is determined based on the state quantity of the derived moving body, and based on the Kalman filter including the determined parameter, a first covariance matrix is derived as the index value,
A parameter of the Kalman filter is determined based on a previously set reference state quantity, and based on the Kalman filter including the determined parameter, a second covariance matrix is derived as the index value,
Assuming that the first covariance matrix approximates a value obtained by multiplying the second covariance matrix by a value obtained by dividing the trace value of the first covariance matrix by the trace value of the second covariance matrix, Solve the problem
A storage medium storing the guidance control program according to claim 1.
 前記第1センサは、地形を検出する地形検出センサであり、前記第2センサは、慣性計測装置であり、
 前記コンピュータに、
 前記地形検出センサによる検出結果に基づいて、前記移動体の状態量を導出させ、
 前記慣性計測装置により計測された前記移動体の状態量と、前記画像に基づき導出させた前記移動体の状態量との差分を前記カルマンフィルタの観測値とすることで、前記移動体の将来の状態量を予測させる、
 請求項1に記載の誘導制御プログラムを格納した記憶媒体。
The first sensor is a terrain detection sensor that detects terrain, the second sensor is an inertial measurement device,
On the computer,
Based on the detection result by the terrain detection sensor, to derive the state quantity of the moving body,
The state quantity of the moving object measured by the inertial measurement device, and the difference between the state quantity of the moving object derived based on the image as the observed value of the Kalman filter, the future state of the moving object To predict the amount,
A storage medium storing the guidance control program according to claim 1.
PCT/JP2019/033282 2018-09-07 2019-08-26 Storage medium having guidance control program stored thereon Ceased WO2020050084A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-168193 2018-09-07
JP2018168193A JP2020041858A (en) 2018-09-07 2018-09-07 Guidance control program

Publications (1)

Publication Number Publication Date
WO2020050084A1 true WO2020050084A1 (en) 2020-03-12

Family

ID=69722582

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/033282 Ceased WO2020050084A1 (en) 2018-09-07 2019-08-26 Storage medium having guidance control program stored thereon

Country Status (2)

Country Link
JP (1) JP2020041858A (en)
WO (1) WO2020050084A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114880874A (en) * 2022-06-07 2022-08-09 东南大学 Adaptive robust estimation method and system for parameters of unmanned surface vehicle

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7389984B2 (en) * 2019-07-10 2023-12-01 国立研究開発法人宇宙航空研究開発機構 Guidance program, guidance method, and guidance device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0631657A (en) * 1992-07-16 1994-02-08 Fujitsu Ltd Mobile robot control system
JP2004239643A (en) * 2003-02-03 2004-08-26 Furuno Electric Co Ltd Hybrid navigator
JP2005017032A (en) * 2003-06-24 2005-01-20 Hitachi Ltd Target motion analysis method and apparatus
JP2006038650A (en) * 2004-07-27 2006-02-09 Sumitomo Precision Prod Co Ltd Attitude measurement method, attitude control device, direction meter, and computer program
JP2010261842A (en) * 2009-05-08 2010-11-18 Ihi Corp Inertial navigation device, flying object, and navigation data calculation method
JP2013185898A (en) * 2012-03-07 2013-09-19 Yamaha Corp State estimation device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0631657A (en) * 1992-07-16 1994-02-08 Fujitsu Ltd Mobile robot control system
JP2004239643A (en) * 2003-02-03 2004-08-26 Furuno Electric Co Ltd Hybrid navigator
JP2005017032A (en) * 2003-06-24 2005-01-20 Hitachi Ltd Target motion analysis method and apparatus
JP2006038650A (en) * 2004-07-27 2006-02-09 Sumitomo Precision Prod Co Ltd Attitude measurement method, attitude control device, direction meter, and computer program
JP2010261842A (en) * 2009-05-08 2010-11-18 Ihi Corp Inertial navigation device, flying object, and navigation data calculation method
JP2013185898A (en) * 2012-03-07 2013-09-19 Yamaha Corp State estimation device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114880874A (en) * 2022-06-07 2022-08-09 东南大学 Adaptive robust estimation method and system for parameters of unmanned surface vehicle
WO2023236247A1 (en) * 2022-06-07 2023-12-14 东南大学 Adaptive robust estimation method and system for unmanned surface vessel parameters
CN114880874B (en) * 2022-06-07 2024-03-12 东南大学 Self-adaptive robust estimation method and system for parameters of unmanned ship on water surface

Also Published As

Publication number Publication date
JP2020041858A (en) 2020-03-19

Similar Documents

Publication Publication Date Title
US10151588B1 (en) Determining position and orientation for aerial vehicle in GNSS-denied situations
Bao et al. Integrated navigation for autonomous underwater vehicles in aquaculture: A review
Caballero et al. Vision-based odometry and SLAM for medium and high altitude flying UAVs
EP2856273B1 (en) Pose estimation
EP1901153A1 (en) Control system for unmanned 4-rotor-helicopter
Santamaria-Navarro et al. Autonomous navigation of micro aerial vehicles using high-rate and low-cost sensors
KR20170074539A (en) Unmanned aerial vehicle flight control system and method using deep learning
CN107656545A (en) A kind of automatic obstacle avoiding searched and rescued towards unmanned plane field and air navigation aid
da Silva et al. Fuzzy adaptive extended Kalman filter for UAV INS/GPS data fusion
CN118963388A (en) Autonomous flight control system for drones without external navigation
CN118244763A (en) A global path planning and local obstacle avoidance method for unmanned boats based on multi-sensor
Mansouri et al. Subterranean MAV navigation based on nonlinear MPC with collision avoidance constraints
Chowdhary et al. Self-contained autonomous indoor flight with ranging sensor navigation
WO2022091305A1 (en) Behavior estimation device, behavior estimation method, route generation device, route generation method, and computer-readable recording medium
WO2020050084A1 (en) Storage medium having guidance control program stored thereon
KR20220086479A (en) Aircraft sensor system synchronization
JP7389984B2 (en) Guidance program, guidance method, and guidance device
Wilson et al. UAV rendezvous: From concept to flight test
Ramirez et al. Stability analysis of a vision-based UAV controller: An application to autonomous road following missions
Demim et al. Simultaneous localization and mapping algorithm based on 3D laser for unmanned aerial vehicle
Cordero et al. Survey on attitude and heading reference systems for remotely piloted aircraft systems
CN117408084B (en) Enhanced Kalman filtering method and system for unmanned aerial vehicle track prediction
Chowdhary et al. Integrated guidance navigation and control for a fully autonomous indoor uas
CN119984238B (en) MEMS-based integrated navigation method and device
Bonin-Font et al. Multisensor aided inertial navigation in 6DOF AUVs using a multiplicative error state Kalman filter

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19858251

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19858251

Country of ref document: EP

Kind code of ref document: A1