An unmanned aerial vehicle flight control parameter adaptive optimization method
Patent Information
- Application Number
- CN202611296925.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-25
- Publication Date
- 2026-10-13
AI Technical Summary
[0004]然而,在无人机贴近桥墩、建筑边缘或者杆塔飞行时,局部阵风、近壁气流、航迹转弯、减速悬停及载荷摆动均可能在短时间内产生姿态偏差或者执行器输出变化;电机效率下降、桨叶状态变化及机体动力特性漂移也可能产生相近的响应表现
1、通过将飞行响应记录划入对应飞行状态槽位,在同一槽位内利用方向相反且幅值对应的互反控制动作形成控制效能见证量及扰动偏置见证量,并在扰动偏置见证量消退后确认控制效能偏离是否跨槽位保持,从而达到区分短时环境扰动与持续飞控参数失配、避免将阵风及飞行状态变化形成的瞬态偏差错误写入飞控参数的目的。
Smart Images

Figure CN122902718A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of unmanned aerial vehicle (UAV) flight control technology, specifically to an adaptive optimization method for UAV flight control parameters. Background Technology
[0002] When unmanned aerial vehicles (UAVs) perform inspections, surveying, or fixed-point operations on bridges, building facades, towers, and mountainous environments, they need to control the outputs of various actuators based on attitude angles, attitude angular velocities, position, flight speed, and flight acceleration to maintain stable flight along a predetermined trajectory. Existing UAV flight control systems typically consist of an inertial measurement unit (IMU), a position measurement device (PMU), a flight control computer, actuator drive units, and a dynamic state measurement device. The flight control computer acquires the flight status according to the control cycle, generates control commands based on the current flight control parameters, and then distributes the control commands to the respective motors or control surfaces for execution. During flight, actuator outputs, dynamic state, and currently used flight control parameters can also be recorded for monitoring the control status.
[0003] To adapt to changes in load, dynamic performance, and external airflow disturbances, existing technologies typically adjust flight control parameters based on attitude tracking errors, angular velocity errors, position deviations, or model estimation results. Some methods also utilize recent flight data to identify the UAV's dynamic characteristics online and then update the control gain or compensation. These approaches can improve control response under relatively stable flight conditions and with relatively singular error sources.
[0004] However, when a drone flies close to bridge piers, building edges, or towers, local gusts, near-wall airflow, flight path turns, deceleration hovering, and load swings can all cause attitude deviations or actuator output changes in a short period of time. Decreased motor efficiency, changes in propeller state, and drift in airframe dynamic characteristics can also produce similar response behaviors. Current processing methods, which primarily rely on the magnitude of errors over a continuous time period or recent model residuals for parameter adjustments, easily lead to direct comparisons of responses under different flight modes, load states, and power margins. This makes it difficult to determine whether the current deviation is a transient change that occurs as the local disturbance disappears, or a persistent mismatch in flight control parameters after the disturbance has subsided.
[0005] When transient disturbances are used as the basis for long-term parameter adjustments, the updated flight control parameters may result in overcompensation, attitude swaying, and frequent changes in actuator output after the UAV leaves the disturbance area or switches flight states. Conversely, when continuous changes in dynamic characteristics are treated as short-term disturbances, the original flight control parameters may become unsuitable for the current airframe state for an extended period. Furthermore, if candidate flight control parameters are taken into effect without confirmation from actual responses under identical flight conditions, the calculated parameter results may not match the actual actuator margins. Therefore, it is necessary to address how to distinguish between short-term environmental disturbances and continuous flight control parameter mismatches from actual flight responses under continuously changing flight conditions, and to reliably confirm the flight control parameters to be adjusted before implementing parameter transfer. Summary of the Invention
[0006] To address the shortcomings of existing technologies, this invention provides an adaptive optimization method for UAV flight control parameters, thereby solving the problems mentioned in the background section.
[0007] To achieve the above objectives, the present invention provides the following technical solution: an adaptive optimization method for UAV flight control parameters, comprising: 1. Collect flight status, control commands, actuator outputs, power margin, and effective parameter versions, and generate flight response records according to status boundaries and version boundaries; 2. Based on the flight mode, load status, power margin, and control channels, the flight response record is assigned to the flight status slot; 3. Obtain reciprocal control actions and actual responses with opposite directions and corresponding amplitudes within the same flight state slot to form control performance witness quantity and disturbance bias witness quantity. 4. When the control performance witnessed value deviates from the healthy reference witnessed value and remains across slots, and the deviation persists even after the disturbance bias witnessed value has subsided, determine the set of slots supporting parameter mismatch and the affected control channels. 5. Apply computational perturbations to the flight control parameters of the affected control channels, and generate candidate parameter versions based on changes in control output, control performance metrics, and actuator margins; 6. The effective parameter version and the candidate parameter version shall respectively accept the positive reciprocal control action and the negative reciprocal control action in the same slot, and then accept them after exchanging the direction of action; when the control performance witness of the candidate parameter version enters the healthy reference range and the actuator output does not exceed the margin boundary, the candidate parameter version shall be activated at the slot boundary.
[0008] Furthermore, the flight status, control commands, actuator outputs, power margin, and effective parameter versions are timestamped using the flight control computer. Using the control command timestamp as the alignment reference, the flight status, actuator output, and power margin closest to that timestamp and not exceeding the allowable time deviation are associated with the same control cycle; The state boundary is formed by changes in flight mode, load state, control channel effective state, actuator saturation state, and sensor effective state, while the version boundary is formed by changes in the version identifier of the effective parameter.
[0009] Furthermore, the power margin is taken as the minimum value of the power margin for each control cycle within the flight response record coverage area; The flight status slot is uniquely keyed by flight mode value, load status value, power margin range and control channel identifier; Flight response records are only entered into the corresponding flight status slot when all items in the slot key match simultaneously.
[0010] Furthermore, the amplitude of the positive control action. and reverse control action amplitude Take the time average of the absolute value of the control increment within the corresponding action interval, and the action duration is respectively... and ; The amplitude corresponds to the satisfaction The duration corresponds to the satisfaction ; When the difference between the attitude angle, attitude angular velocity, flight speed and power margin before the start of the action does not exceed the corresponding allowable difference, a reciprocal control action is formed.
[0011] Furthermore, the actual response of the positive control action is denoted as... The actual response of the reverse control action is denoted as ; Control effectiveness witness quantity Perturbation bias witness quantity .
[0012] Furthermore, the health reference witness quantity is taken as the median value of each component of the control effectiveness witness quantity formed under the health state in the same flight state slot, and the allowable deviation boundary is formed by the sum of the calculation uncertainty and the upper bound of the normal fluctuation of the health reference. When the normalized deviation continuously reaches the number of slots determined by the minimum mismatch duration and has the same sign, and continues to meet this condition after the disturbance bias witness continuously enters the healthy disturbance range, the corresponding slot is determined as the parameter mismatch support slot.
[0013] Furthermore, the response sensitivity is formed by multiplying the control output change rate by the control performance witness quantity. A matrix S is constructed using the response sensitivity of the parameter mismatch support slot. A vector z is constructed using the difference between the health reference witness quantity and the control performance witness quantity. A weight matrix W is constructed using the reciprocal of the square of the allowable deviation boundary. A flight control parameter adjustment vector is formed, where λ is the regularization coefficient and I is the identity matrix.
[0014] Furthermore, the scaling factors are read in descending order according to the locking sequence, with the first one ensuring that all candidate parameters are within the allowable parameter range and that all predictor executor outputs satisfy the condition. The scaling factor forms the candidate parameter version, where, This represents the predicted output of the k-th actuator in the nth control cycle. To reserve a margin; Write the candidate parameter versions into the frozen parameter area.
[0015] Furthermore, four transition intervals are set sequentially: positive version of valid parameter, negative version of candidate parameter, positive version of candidate parameter, and negative version of valid parameter. When the control performance witness of the candidate parameter version enters the healthy reference range and the actuator output does not exceed the margin boundary, the termination time of the original valid parameter version, the effective time of the candidate parameter version, the current valid parameter version pointer and version relationship are written in the same commit at the slot boundary. If any write fails, the original valid parameter version is retained.
[0016] Compared with the prior art, the present invention has the following beneficial effects: 1. By assigning flight response records to corresponding flight state slots, and using reciprocal control actions with opposite directions and corresponding amplitudes within the same slot to form control performance witness quantities and disturbance bias witness quantities, and confirming whether the control performance deviation is maintained across slots after the disturbance bias witness quantity dissipates, the purpose of distinguishing between short-term environmental disturbances and continuous flight control parameter mismatches is achieved, and the purpose of avoiding the erroneous writing of transient deviations caused by gusts and changes in flight state into the flight control parameters is avoided.
[0017] 2. By forming candidate parameter versions based on the set of support slots for parameter mismatch, changes in control output, and actuator margin, the effective parameter version and the candidate parameter version can respectively undertake positive and negative reciprocal control actions. After the candidate parameter version meets the control performance and actuator margin conditions, it is activated at the slot boundary, thereby achieving the purpose of limiting the parameter adjustment range, verifying the actual control response of the candidate parameters, and preventing unconfirmed parameters from directly taking over the flight control of the UAV. Attached Figure Description
[0018] Figure 1 A schematic diagram of the overall process for adaptive optimization of UAV flight control parameters; Figure 2 A schematic diagram illustrating the scenario of a drone for bridge side inspection and the acquisition of airborne data. Figure 3 A schematic diagram illustrating the time alignment of flight data and the formation of flight response records; Figure 4 A schematic diagram showing the unique flight status slot for each flight response record; Figure 5A schematic diagram illustrating the pairing of reciprocal control actions and the formation of witness quantities; Figure 6 This is a schematic diagram illustrating the determination of support slots for parameter mismatch after disturbance subsidence. Figure 7 This is a schematic diagram illustrating the formation and freezing of candidate parameter versions; Figure 8 This diagram illustrates the activation and failure retention of slot boundary parameter versions. Detailed Implementation
[0019] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0020] Example: Combined with Appendix Figures 1-8 This embodiment provides an adaptive optimization method for UAV flight control parameters, including: I. Collect flight status, control commands, actuator outputs, power margin, and effective parameter versions, and generate flight response records according to status boundaries and version boundaries. The specific implementation is as follows: This step is performed by the flight record processing unit located in the UAV's onboard flight control computer. It is applicable to UAVs equipped with an inertial measurement unit, position measurement device, actuator drive device, dynamic state measurement device, and a version capable of reading flight control parameters. The UAV can be a multi-rotor UAV. The flight control computer can read the flight status according to the control cycle, generate control commands, distribute the control commands to each actuator, and save the currently effective parameter version actually involved in the control calculation.
[0021] Flight status is obtained from the state estimation results of the inertial measurement unit (IMU), position measurement device (PMT), and flight control computer, and includes at least attitude angles, attitude angular velocity, position, flight speed, flight acceleration, flight mode, and payload status. Attitude angles are expressed in radians or degrees, attitude angular velocity in radians per second or degrees per second, position in meters, flight speed in meters per second, and flight acceleration in meters per second squared. The flight mode records the current control state of the UAV: hovering, constant speed flight, flight path turning, or stationary position holding. The payload status records the current payload identifier, payload mass caliber, and center of gravity configuration identifier. Flight status only uses state estimation results that have been confirmed as valid by the flight control computer. If the IMU loses lock, the PMT fails, or the state estimation result exceeds the device's range, the corresponding time period will not be entered into the flight response record.
[0022] Control commands are obtained from the control quantities generated by the flight control computer in each control cycle. Roll control commands, pitch control commands, yaw control commands, and climb control commands are recorded separately according to the control channel. Each control command also records the command formation time, control channel identifier, command direction, command amplitude, and command duration range. The control commands use the control quantities actually allocated by the actuators within the flight control computer, and do not use remote controller stick values or trajectory planning values as substitutes, to ensure that the recorded control commands can directly correspond to the actuator outputs.
[0023] The actuator output is obtained from the electronic speed controller feedback interface or the actuator allocation results from the flight control computer. For multi-rotor UAVs, the actuator output includes at least the normalized drive quantity for each motor; when the electronic speed controller can return the speed and current, the motor speed and current are also recorded. The normalized drive quantity ranges from the minimum to the maximum drive quantity allowed by the device. Motor speed is expressed in revolutions per minute, and motor current is expressed in amperes. When actuator feedback is missing, the actual actuator output is not calculated from the control commands; when the actuator output enters saturation, the electronic speed controller reports a fault, or the actuator feedback timestamp is misaligned for more than one control cycle, the corresponding record is marked as unusable for subsequent reciprocal response calculations.
[0024] The power margin is formed based on the remaining amount between the current output of each actuator and the corresponding allowable output boundary. For the k-th actuator, its normalized power margin is denoted as...
[0025] in, The output of the kth actuator at time t. This is the maximum allowable output of the actuator under the current battery and temperature conditions. The minimum output allowed by this actuator. It is a dimensionless quantity. The power margin of the UAV at time t is taken as the minimum value among the power margins of each actuator, i.e.
[0026] Where K is the set of actuator indices participating in the current control. When the battery management unit limits the maximum available current, Synchronous contraction is performed according to this constraint. The calculation rules for the power margin and the actuator allow the output boundary to be locked at the beginning of this step, and the calculation results are not overwritten by the subsequently updated boundary before the flight response record is formed.
[0027] The valid parameter version is read from the control parameter area of the flight control computer, including version identifier, parameter name, parameter value, applicable control channel, effective time, and previous version identifier. The valid parameter version is based on the parameter version actually used in the calculation of this control command. If there are parameters in the control parameter area that are being edited but have not yet taken effect, these parameters are not recorded as valid parameter versions. When a parameter version switch occurs within a control cycle, the switch time is used as the version boundary, and flight data before and after the switch must not be written to the same flight response record.
[0028] Flight status, control commands, actuator outputs, power margin, and effective parameter versions are all timestamped using the flight control computer's monotonically increasing clock. Inertial measurement data is recorded according to its original sampling rhythm, control commands are recorded according to the flight control cycle, actuator feedback is recorded according to the electronic governor feedback rhythm, and battery status is recorded according to the power management unit's measurement rhythm. When generating flight response records, the control command timestamp is used as the alignment reference, and the flight status, actuator output, and power margin closest to that timestamp and not exceeding the corresponding device's allowable time deviation are associated with the same control cycle.
[0029] For continuous quantities, when two adjacent valid measurements exist and the time to be aligned is between the two measurement times, linear alignment can be performed according to the time ratio. Control commands, valid parameter versions, flight modes, load states, actuator saturation states, and sensor valid states must not be automatically aligned. If any field that cannot be aligned is missing, the generation of flight response records covering that time period will be stopped, and the original records and the positions of the missing fields will be retained. Once the corresponding data is entered or re-acquired, execution will resume from the starting point of the missing time period.
[0030] After time alignment, the data is first sorted in ascending order by timestamp, then aligned with the control channel identifier to match the control commands and response objects. Subsequently, angles, angular velocities, positions, velocities, and drive quantities are unified to the dimensions locked in this measurement. Noise denoising of continuous measurements utilizes existing sensor filtering results from the flight control computer, without adding offline smoothing that alters the phase relationship to control commands and actuator outputs. When data with the same object identifier, timestamp, and parameter version is repeatedly obtained, only the one with complete verification and the earliest formation time is retained. When records from different sources conflict, they are not averaged; instead, the corresponding record is selected according to the data source identifier actually used by the flight control computer, and the remaining records are retained as original corroborating evidence.
[0031] The state boundary is formed by at least the changes in flight mode, load state, control channel effective state, actuator saturation state, and sensor effective state. When any state field changes in an adjacent control cycle, the start time of the next control cycle is used as the new state boundary. The version boundary is formed by the change of the effective parameter version identifier. In chronological order, the start and end intervals of the record are jointly defined by adjacent state boundaries and version boundaries, so that each flight response record corresponds to only one flight mode, one load state, one set of control channel effective states, and one effective parameter version within its coverage area.
[0032] Each flight response record must at least retain the record identifier, UAV identifier, start and end times, flight state sequence, control command sequence, actuator output sequence, power margin sequence, valid parameter version identifier, reason for state boundary formation, reason for version boundary formation, and original record index. This step is considered complete when all necessary fields are time-aligned and the record start and end intervals are uniquely determined by state and version boundaries. Step two directly reads the flight mode, payload status, power margin, control channels, start and end times, and valid parameter versions from the flight response record, without re-collecting or re-generating the above information.
[0033] II. Based on the flight mode, load status, power margin, and control channels, the flight response record is assigned to the flight status slot. The specific implementation is as follows: This step is executed by the flight control computer or an onboard mission computer connected to the flight control computer, and the object processed is the flight response record generated in step one. Before executing this step, the slot allocation version used in this step must be locked. The slot allocation version saves the flight mode value table, load status value table, power margin interval boundaries, control channel identifiers, and interval endpoint assignment rules, and must not be overwritten by subsequent modified versions during the execution of this step.
[0034] The flight mode is precisely matched according to the fixed flight mode identifier in the flight response record. Only flight response records with the same flight mode identifier can be assigned to the same flight state slot. When the flight response record spans flight mode changes, the state boundary has already been formed at the time of the change in step one, so this step does not further segment the cross-mode record.
[0035] Payload status is matched according to the loadout identifier, loadout mass caliber, and center of gravity configuration identifier. Flight response records with the same loadout identifier but different center of gravity configuration identifiers must not be placed in the same flight status slot. Loadout mass is derived from mission loading records or airborne weighing results; when the loadout mass measurement error does not exceed the allowable error of the corresponding measuring device, it is assigned according to the loadout mass range in the slot division version. If the loadout identifier is missing, the mass record conflicts with the mission loading record, or the center of gravity configuration is not confirmed, the corresponding flight response record will not be placed in the subsequent slot.
[0036] Power margin is assigned based on the lower bound of the power margin sequence within the flight response record coverage interval. The lower bound is the minimum power margin for each control cycle in that record, to avoid using average values to mask insufficient local actuator margins. Power margin intervals are divided by including the left endpoint and excluding the right endpoint, with the last interval including the right endpoint. Any power margin value can only fall into one interval. When the power margin falls at an interval endpoint, a unique slot is determined according to the aforementioned endpoint assignment rules, without using distance comparison to generate multiple candidate results.
[0037] Control channels are assigned according to the channel identifier of the actual action of the control commands in the flight response record. When a flight response record contains control actions from multiple channels, each control channel is assigned an independent slot, but each slot still references the same flight response record identifier and the control command range of the corresponding channel, without copying the original flight data. Roll control actions are only entered into the flight status slot corresponding to the roll control channel, pitch control actions are only entered into the flight status slot corresponding to the pitch control channel, and yaw control actions and climb control actions are processed using the same criteria.
[0038] The flight status slot is uniquely keyed by the flight mode value, load status value, power margin range, and control channel identifier. Let the flight mode of the i-th flight response record be... The load condition is The lower limit of the power margin is The control channel is The flight mode corresponding to the s-th flight status slot is The load condition is The power margin range is The control channel is The condition for assigning the flight response record to this slot is:
[0039] All of the above conditions must be met simultaneously. If any condition is not met, the flight response record must not be entered into that slot.
[0040] Slot lookup is performed in the order of flight mode, load status, control channel, and power margin range. The first three items use exact key-value indexes, while power margin uses a range index. Since power margin ranges do not overlap and endpoint assignment rules are locked, each assignment item can only correspond to one flight status slot. If multiple slots are detected with the same slot key, it is considered that there is a conflict in the slot division version, and the assignment is stopped. Slots are not selected based on creation time or number of records. If no corresponding slot is found, the assignment item is marked as pending verification, and the matching conditions for flight mode, load status, power margin, and control channel are not automatically relaxed.
[0041] Before assigning a parameter to a slot, further verify whether the valid parameter version of the flight response record remains unchanged within its start and end range. Although the valid parameter version does not participate in the construction of the slot key in this step, its version identifier is retained as a necessary field for each record within the slot, so as to limit the same parameter version when pairing subsequent reciprocal control actions. If the version identifier is missing or two valid parameter versions appear in the same record, stop assigning and return to the version boundary position in step one to reorganize.
[0042] Each flight status slot stores record references in ascending order of the start time of the flight response record. The record content includes at least the slot identifier, slot division version, flight mode, load status, power margin range, control channel, flight response record identifier, record start and end time, and valid parameter version identifier. Duplicate assignment requests with the same flight response record identifier, the same control channel, and the same slot identifier are only written once. If the existing assignment content is inconsistent with the slot identifier of the new request, the original assignment remains unchanged, and the conflicting request is transferred to pending verification.
[0043] This step is considered complete when all pending flight response records have been assigned to a unique slot and there are no unresolved slot key conflicts. Step 3 reads the flight response record reference, control channel, valid parameter version, and corresponding control command range in the same flight status slot according to the slot identifier, and obtains the inverse control actions and actual responses.
[0044] 3. Within the same flight state slot, acquire reciprocal control actions and actual responses with opposite directions and corresponding amplitudes to form control performance witness quantities and disturbance bias witness quantities. The specific implementation is as follows: This step is executed separately within each flight status slot formed in step two. First, the flight response records are sorted according to their start time, and then grouped according to the effective parameter version. Reciprocal control actions can only be obtained from flight response records corresponding to the same flight status slot, the same control channel, and the same effective parameter version, avoiding pairing responses from different flight modes, different load states, different power margin ranges, or different parameter versions.
[0045] For the target control channel, the control commands for that channel are read from each flight response record. The moment the control command enters the action recognition threshold is taken as the start of the action, and the moment the control command returns to the allowable range of the action baseline is taken as the end of the action. The action recognition threshold is jointly formed by the control command quantization resolution, the upper limit of the control baseline fluctuation, and the action recognition parameters locked in the slot partitioning version. The threshold must not be less than the control command quantization resolution. The action baseline is taken as the median value of the control commands in the continuous control cycles preceding the action start point; if a state boundary, version boundary, or actuator saturation occurs within the preceding interval, the action is not formed.
[0046] Let the increment of the control command for a positive control action relative to the baseline be... The control command for the reverse control action is incremented relative to the baseline by 1 / 3. The time average of the absolute value of the control increment within the positive control action range is denoted as... The time average of the absolute value of the control increment within the reverse control action range is denoted as... ,Right now
[0047] in, These are the start and end points of the positive control action, respectively. These are the start and end points of the reverse control action, respectively. The unit is seconds. The normalized dimensions of the control commands are adopted.
[0048] The directions of forward and reverse control actions are determined by the sign of the control increment. The time integral of the control increment must be greater than zero within the forward action range, and less than zero within the reverse action range. The amplitude correspondence condition is as follows:
[0049] The corresponding condition for the duration of the action is
[0050] in, This is the allowable deviation for amplitude correspondence. The duration corresponds to the allowable deviation, and both are derived from the version of the reciprocal action judgment locked in this instance. No calculation is performed when the denominator is zero; if the amplitude of any action does not exceed the action recognition threshold, the action will not participate in the reciprocal pairing.
[0051] After satisfying the requirements of opposite direction, corresponding amplitude, and corresponding duration, pairing is performed based on the similarity of the flight states before the start of the action. The pairing comparison sequentially uses the attitude angle, attitude angular velocity, flight speed, and power margin before the start of the action. The allowable differences for each item are formed by the measurement errors of the corresponding sensors and the upper bound of natural fluctuations in the health records of the same slot. Only positive and negative actions where all differences do not exceed the corresponding allowable differences are considered reciprocal control actions. A control action is only allowed to enter one set of reciprocal control actions; when multiple candidate actions exist, the candidate action with the smallest normalized sum of the initial state differences is selected first; if the normalized sums are the same, the candidate action with the shortest time interval is selected. If no candidate action meets the conditions, a single action record is retained, and no witness quantity is formed.
[0052] The actual response is obtained from the flight state sequence corresponding to the reciprocal control maneuvers. For the roll control channel, the actual response uses the change in roll angular velocity; for the pitch control channel, the actual response uses the change in pitch angular velocity; for the yaw control channel, the actual response uses the change in yaw angular velocity; and for the climb control channel, the actual response uses the change in vertical velocity. The response baseline before the maneuver is the time average of the corresponding response quantity before the start of the maneuver, and the response value after the maneuver is the time average of the corresponding response quantity at the end of the maneuver's effective range. The actual response for a positive maneuver is denoted as... The actual response of the reverse control action is denoted as When each control channel uses only one response value, It is a scalar; when recording both the target channel response and the cross channel response, they are column vectors of the same dimension.
[0053] Taking the starting point of a positive action as an example, the actual response formation relationship is as follows:
[0054] Where y(t) is the actual response of the target control channel. The baseline range for the pre-action response. This is the response interval at the end of the action. These represent the corresponding interval lengths. The actual response to the reverse action is formed using the same time caliber. The baseline interval and the response interval at the end of the action must be within the same flight response record and cannot cross state boundaries, version boundaries, or actuator saturation times.
[0055] The control effectiveness measurement is formed based on the amplitude of the positive action, the amplitude of the negative action, and the corresponding actual response.
[0056] Where E is the control performance measure, representing the actual response change corresponding to a unit control command amplitude; when the actual response is expressed as angular velocity, its unit is per second; when the actual response is expressed as vertical velocity, its unit is meters per second per normalized control quantity. Denominator It must be greater than the minimum computable amplitude locked in the reciprocal action judgment version; otherwise, no control performance witness value will be formed.
[0057] The perturbation bias witness quantity is formed based on the same reciprocal control action.
[0058] Where D is the disturbance bias witnessed quantity, and its dimension is the same as the actual response quantity. This calculation utilizes the opposite relationship between the forward and reverse actions and the control input direction, so that the response component that reverses with the control direction enters the control performance witnessed quantity, and the response component that remains in the same direction during the two actions enters the disturbance bias witnessed quantity. When the time interval between the forward and reverse actions exceeds the allowable duration of the reciprocal action judgment version, they are not considered to be subjected to the same field disturbance condition, and no disturbance bias witnessed quantity is formed.
[0059] Each set of control performance witness values and disturbance bias witness values is bound to the reciprocal action identifier, flight status slot identifier, control channel, valid parameter version, forward action record identifier, reverse action record identifier, action amplitude, action duration, actual response, calculation version, and formation time. If any required fields for calculation are missing, actuator saturation occurs during the action, the actual response exceeds the sensor range, or the forward or reverse action does not meet the corresponding conditions, the calculated value is not used as a substitute. The paired action and the reason for failure are retained, and the action is re-executed from the position extracted from the actual response after the reciprocal control action is obtained again.
[0060] Duplicate calculation requests for the same reciprocal action identifier are deduplicated based on the calculation version and the original record check value. If the calculation version is consistent and the original record remains unchanged, existing control performance witness values and disturbance bias witness values are directly referenced; if the calculation version changes, a new calculation record is generated, without overwriting the original calculation results. This step is considered complete when all pairable reciprocal control actions have been calculated and witness value records have been written to the corresponding flight status slots. Step four reads the control performance witness values, disturbance bias witness values, formation time, control channel, and valid parameter versions from each slot.
[0061] IV. When the witnessed value of control performance deviates from the healthy reference witnessed value and remains across slots, and the deviation persists even after the witnessed value of disturbance bias subsides, determine the set of slots supporting parameter mismatch and the affected control channels. The specific implementation is as follows: This step is performed separately for each control channel and valid parameter version. The health reference witness quantity is determined by the historical control performance witness quantity generated during periods when the UAV's flight control parameters are confirmed to be valid, actuator operating status is confirmed to be normal, and sensor status is confirmed to be normal. The health reference witness quantity is stored separately for each flight status slot, without using a uniform constant from a single control channel to replace the reference for each slot. Before performing this step, the health reference version, deviation judgment version, and disturbance fading judgment version are locked.
[0062] Let the set of control performance witnesses formed in the healthy state in the s-th flight state slot be .
[0063] in, This represents the number of health witnesses for this slot, with the superscript 'h' indicating health reference records. Health Reference Witness Quantity Take set The median value of each component in the middle dimension. The health reference witness value of the qth dimension is denoted as... .
[0064] The allowable deviation from the boundary in the q-th dimension is denoted as... The formation relationship is as follows
[0065] in, This refers to the computational uncertainty arising from the propagation of control command resolution, attitude measurement error, angular velocity measurement error, and time alignment error. This represents the upper bound of the normal fluctuation of the q-th dimension witness quantity relative to the median value in the health reference set. All are non-negative quantities, and their units are the same as the q-th dimension of the control effectiveness witness quantity. When the number of healthy reference sets is insufficient to form a median value or an upper bound for normal fluctuations, the corresponding slots must not be used for parameter mismatch judgment.
[0066] The current control performance witness value of the s-th slot is denoted as: When the qth dimension satisfies
[0067] At that time, it was determined that the witnessed measure of control effectiveness in this dimension deviated from the witnessed measure of health reference. To determine the direction of deviation, a normalized deviation measure was generated.
[0068] If the value is zero, no division calculation is performed, and the corresponding health reference version is moved to the pending verification stage. Only Only when this happens is the slot recorded as a deviation from the slot in that dimension. The health reference witness values and allowable deviation boundaries for different slots are taken from their respective slots, and unnormalized witness value values cannot be directly compared.
[0069] Cross-slot retention checks are performed in ascending order of the formation time of witnesses within the slot. Slots participating in continuous checks must belong to the same control channel, the same valid parameter version, and the same load state, and there must be no parameter version boundary between adjacent witnesses. The number of consecutive slots required for cross-slot retention is calculated by dividing the minimum mismatch duration by the current average coverage duration of the slot and rounding up, denoted as .
[0070] in, The minimum duration of mismatch locked in the deviation judgment version, in seconds. The average effective coverage time of the inspected slots, in seconds. It is a positive integer. If the average effective coverage duration cannot be obtained, cross-slot retention judgment is not performed.
[0071] continuous The same response dimension of each slot satisfies And all When the signs are the same, the control performance witnessed value is considered to have deviated from the healthy reference witnessed value and remains so across slots. When the deviation in any slot returns to the closed allowable range, the deviation direction changes, the effective parameter version changes, or the control channel changes, the current continuous counting terminates, and subsequent slots start counting from the new deviation starting point.
[0072] The health baseline for the perturbation bias witness quantity is formed based on the health records of the same slot, denoted as Its permissible deviation is denoted as The current perturbation bias witness quantity is... When all dimensions satisfy
[0073] When the number of witnesses continuously entering the healthy disturbance range reaches the number locked in the disturbance decay judgment version, the disturbance bias witness quantity for that slot is considered to have entered the healthy disturbance range. When the first consecutive qualified witness quantity is located in a slot, the starting point for the disappearance of the disturbance bias witness quantity is taken. When the disturbance bias witness quantity exceeds the allowable deviation again in a subsequent slot, the disappearance state terminates, and a new disappearance starting point is found.
[0074] Starting from the slot after the perturbation bias witnessed quantity has faded, continue to check the normalized deviation of the control performance witnessed quantity. Only when the perturbation bias witnessed quantity has continuously faded will the control performance witnessed quantity remain continuously... Only slots that meet the deviation conditions and maintain the same deviation direction are identified as parameter mismatch support slots. Control performance deviations formed during the period before the disturbance bias has subsided are not included in the parameter mismatch support slot set, in order to prevent the same-direction bias formed by short-term gusts, near-wall airflow and load swings from directly triggering parameter optimization.
[0075] The set of slots supporting parameter mismatch is denoted as
[0076] Where m is the number of slots that satisfy the aforementioned conditions. to Sort by witness quantity formation time. Each set element stores slot identifier, control performance witness quantity, health reference witness quantity, allowable deviation boundary, normalized deviation quantity, disturbance bias witness quantity, disturbance decay status, effective parameter version, and supported time range.
[0077] The affected control channels are determined based on the control channels corresponding to the formation of the parameter mismatch support slot set. A control channel is only identified as an affected control channel if its control performance meets the complete conditions of deviation, cross-slot holding, and retention after disturbance subsidence. If a cross-channel response deviates but its own control channel has not formed a complete parameter mismatch support slot set, the cross-channel is not directly listed as an affected control channel.
[0078] If any parameter mismatch supports a slot with a missing health reference version, witness version conflict, slot time sequence misalignment, or disturbance bias fading conditions cannot be confirmed, the determination of the parameter mismatch support slot set will stop. Slot records that previously met the conditions will be retained, but will not be used as the basis for calculation in step five until the missing content is verified and the process is re-executed from the problematic slot.
[0079] The parameter mismatch support slot set and affected control channels are written to the flight control parameter optimization record area, and the health reference version, deviation judgment version, disturbance fading judgment version, original witnessed quantity range, and formation time are bound. This step is considered complete when each slot in the set has a unique slot identifier and corresponds to the same affected control channel. Step five directly reads the parameter mismatch support slot set, affected control channels, control performance witnessed quantity, health reference witnessed quantity, actuator output, and power margin.
[0080] V. Apply computational perturbations to the flight control parameters of the affected control channels, and generate candidate parameter versions based on changes in control output, control performance metrics, and actuator margins. The specific implementation is as follows: This step is performed by the isolated computing area in the flight control computer or the onboard mission computer. The calculated disturbance only affects the calculated copy of the flight control parameters, is not written to the currently valid parameter area, and does not send control outputs based on the calculated disturbance to the actuators. Before performing this step, the currently valid parameter version, control law program version, parameter allowable range, calculated disturbance version, and parameter mismatch support slot set formed in step four are locked.
[0081] First, extract the flight control parameters corresponding to the affected control channels from the current valid parameter version to form a parameter vector.
[0082] Where J represents the number of flight control parameters that can be adjusted in the affected control channel. This represents the current value of the j-th flight control parameter. The parameter vector only includes parameters in the control law that can change the control output of the affected control channel, excluding flight mode switching parameters, sensor calibration parameters, and spare parameters not involved in the current control law.
[0083] For the j-th flight control parameter, read the disturbance amount from the calculated disturbance version. The disturbance amount is greater than the storage resolution of this parameter, while not causing... or Exceeding the allowable parameter range. Forming separate vectors for calculating the positive perturbation parameters. and negative calculation of disturbance parameter vector Only the j-th dimension increases relative to the current parameter vector. Or reduce The remaining parameters remain unchanged.
[0084] Following the time sequence in the parameter mismatch support slot set, read the flight state sequence and control command sequence corresponding to each slot, substitute the same sequence into the locked control law program, and use... , Calculate the control output. During the calculation process, the flight state, control commands, sampling time, and control law program are kept completely identical, so that the difference in control output is only caused by the calculation disturbance of the j-th flight control parameter.
[0085] The rate of change of the control output corresponding to the j-th parameter in the m-th parameter mismatch support slot is denoted as .
[0086] in, Let m be the number of control cycles involved in the calculation for the m-th slot. The control output for the nth control cycle is obtained by using the positive calculation of the disturbance parameter vector. This is the corresponding control output obtained by using the negative calculation of the disturbance parameter vector. This represents the average change in control output caused by a unit change in the parameter. The two sets of control outputs used in the calculation must have the same number of values. The value cannot be zero. If any control cycle lacks flight status or control commands, that control cycle will not be summed; if the number of effective control cycles is insufficient, the corresponding slot will stop generating the control output change rate.
[0087] Let the control performance test value of the affected control channel in the m-th slot be denoted as . The corresponding number of health reference testimonials is recorded as This results in a witness quantity difference that needs to be compensated.
[0088] The control output change rate and the control performance measured quantity together form the response sensitivity quantity corresponding to the m-th slot and the j-th parameter.
[0089] When the control effectiveness witness quantity is a vector, step four is selected to determine the response dimension that causes persistent deviation. , All slots use the same response dimension.
[0090] Arrange the response sensitivities of all parameter mismatch support slots into a matrix.
[0091] Where M represents the number of parameter mismatch support slots, and J represents the number of flight control parameters. The witness values for each slot are arranged as follows:
[0092] A weight matrix is formed based on the allowable deviation from the boundary for each slot.
[0093] in, This represents the allowable deviation boundary corresponding to the m-th slot. It must be greater than zero. The smaller the allowable deviation from the boundary, the smaller the health reference fluctuation of that slot, and the higher its corresponding weight.
[0094] The flight control parameter adjustment vector is formed according to the following formula:
[0095] in, This is the flight control parameter adjustment vector, where λ is the regularization coefficient locked in the calculated disturbance version (λ>0), and I is the J-order identity matrix. λI is added to avoid the inability to form a unique adjustment vector when the response-sensitive matrix columns are correlated. Candidate parameter versions are not formed if the matrix dimensions are inconsistent, the weight matrix has non-finite values, or matrix decomposition fails.
[0096] The parameter vector to be checked is formed based on the flight control parameter adjustment vector.
[0097] Specifically, α is read sequentially from the finite scaling sequence locked in the perturbation version, in descending order of value. After each α is read, it is first checked whether each parameter is within the corresponding allowable range, and then the actuator output corresponding to the candidate parameter is predicted using the parameter control output sensitivity of each control cycle.
[0098] The predicted output of the k-th actuator in the n-th control cycle is denoted as...
[0099] in, This is the actual output of the kth executor recorded in step one. Let be the calculated sensitivity of the j-th flight control parameter change to the output of the k-th actuator. Adjust the j-th dimension of the parameter vector. Candidate parameters must satisfy...
[0100] in, This is the reserve margin formed based on the power margin and actuator safety boundary in step one. The scaling factor passes the check when all parameter mismatch support slots, all control cycles, and all actuators involved in the control satisfy this relationship. The first scaling factor to pass the check is used to form a candidate parameter value; if all scaling factors fail, no candidate parameter version is formed.
[0101] Each candidate parameter version must at least store the following: candidate version identifier, currently valid parameter version identifier, affected control channels, candidate parameter name, candidate parameter value, parameter adjustment vector, scaling factor used, set of slots supporting parameter mismatch, control output rate of change, control performance witness quantity, actuator margin check result, control law program version, calculated disturbance version, and formation time. Once a candidate parameter version is formed, it enters a frozen state. No parameter value may be modified before step six is completed, nor may the original candidate parameter version be overwritten by recalculating with subsequently added slots.
[0102] When calculating repeated executions, an idempotency identifier is formed by combining the current valid parameter version, the parameter mismatch support slot set verification value, the control law program version, and the calculated disturbance version. If the idempotency identifiers are the same, an existing candidate parameter version is referenced; if any component changes, a new candidate parameter version is formed, without overwriting the old version. This step is considered complete when the candidate parameter values are complete, the actuator margin check passes, and the candidate parameter version is successfully written to the frozen parameter area. Step six reads the candidate parameter version, the current valid parameter version, the affected control channels, the corresponding flight state slots, and the actuator margin boundaries.
[0103] VI. The effective parameter version and the candidate parameter version shall respectively accept forward and reverse inverse control actions within the same slot, and then accept them after exchanging the action directions; when the control performance witness value of the candidate parameter version enters the healthy reference range and the actuator output does not exceed the margin boundary, the candidate parameter version shall be activated at the slot boundary. Specifically, this is implemented as follows: This step is executed after the UAV enters the flight status slot corresponding to the candidate parameter version in step five. Before execution, it is verified that the flight mode, payload status, power margin, and control channels all meet the slot boundaries, the sensor status is valid, the actuators are not in saturation, and the currently valid parameter version is still the valid parameter version referenced by the candidate parameter version. If any condition is not met, parameter version acceptance will not begin, and the candidate parameter version will remain frozen.
[0104] Within the same flight status slot, four reciprocal control action acceptance intervals are set in chronological order. The first acceptance interval uses the valid parameter version to accept forward reciprocal control actions; the second acceptance interval uses the candidate parameter version to accept reverse reciprocal control actions; the third acceptance interval continues to use the candidate parameter version to accept forward reciprocal control actions; and the fourth acceptance interval reverts to using the valid parameter version to accept reverse reciprocal control actions. This ensures that both the valid parameter version and the candidate parameter version accept one forward reciprocal control action and one reverse reciprocal control action, respectively.
[0105] Before each switch to a new parameter version, the flight control computer verifies that the current flight response record is still in the same flight state slot. Parameter version switching only changes the candidate parameters of the affected control channels; other control channel parameters retain their values from the current valid parameter version. During the candidate parameter version transition, control commands are still generated by the same flight mission and the same control channel, and actuator outputs remain constrained by the equipment's permissible output boundaries. If any slot boundary change, sensor failure, actuator saturation, or control action incomplete occurs during any transition period, the valid parameter version is immediately restored. Already acquired transition records are retained, but control performance metrics for the new candidate parameter version are no longer generated.
[0106] The positive and negative reciprocal control actions in the four receiving intervals are checked according to the corresponding conditions of action amplitude, duration, and allowable difference of initial flight state in step three. The positive action amplitude received by the candidate parameter version is denoted as... The amplitude of the reverse action is denoted as The corresponding actual response is denoted as The control performance witness quantity of the candidate parameter version is
[0107] The control performance testimonials for the valid parameter versions are generated using the same formula and saved separately. The positive and negative actions of the candidate parameter versions and valid parameter versions cannot be mixed to form the same control performance testimonial.
[0108] The candidate parameter version control performance witness is compared dimension by dimension with the health reference witness of the current flight status slot. The condition for the q-th dimension to enter the health reference range is...
[0109] in, For candidate parameter version control performance witness quantity q-th dimension, This is the qth dimension of the health reference witness quantity for this slot. This allows for deviations from the boundary for that slot. If all persistent deviation response dimensions determined in step four satisfy this condition, the control performance witness quantity of the candidate parameter version is considered to have entered the healthy reference range.
[0110] The condition that the actuator output does not exceed the margin boundary is: during the period when the candidate parameter version undertakes both the forward and reverse reciprocal control actions, the output of each actuator involved in the control satisfies the following conditions.
[0111] The actuator output is based on the actual feedback from the electronic speed controller; if feedback is temporarily missing, the flight control allocation command is not used to replace the actual feedback to complete the margin judgment. If any actuator crosses the margin boundary in any control cycle, the candidate parameter version does not meet the activation conditions, and the valid parameter version is immediately restored.
[0112] When the control performance of a candidate parameter version enters the healthy reference range, and all actuator outputs during the candidate parameter version's acceptance period do not exceed the margin boundary, the system waits for the current flight state slot to end. The slot end time is determined by a change in any slot key within the flight mode, load state, power margin range, or control channel. A candidate parameter version must not be directly replaced by a valid parameter version in any control cycle within a slot to prevent the same slot record from simultaneously containing two officially valid parameter versions.
[0113] At the slot boundary, the flight control computer's parameter version management area activates the candidate parameter version. The activation submission writes the effective time of the candidate parameter version, sets the applicable end time of the original valid parameter version to the same slot boundary time, points the current valid parameter version to the candidate parameter version, and saves the version relationship between the candidate parameter version and the original valid parameter version. All of the above is completed in the same submission. When all fields are successfully written and the current valid parameter version's pointer verification passes, the candidate parameter version becomes the valid parameter version.
[0114] If any field write fails, version pointer verification fails, or slot boundary moment is missing, the state changes already formed by this commit are undone. The original valid parameter version remains valid, and the candidate parameter version remains frozen. There must be no partial activation state where a candidate parameter value has already taken effect while the original valid parameter version has not yet terminated. Upon re-execution, it starts from the slot boundary confirmation and version commit position, without repeating the four completed transition intervals, provided that the transition record and candidate parameter version have not changed.
[0115] After this step is completed, the parameter version management area will at least save the original valid parameter version identifier, candidate parameter version identifier, four transition interval records, candidate parameter version control performance witness quantity, health reference witness quantity, actuator margin judgment result, slot boundary time, activation submission result, and the current valid parameter version pointer. When a candidate parameter version successfully becomes a valid parameter version at the slot boundary, one flight control parameter adaptive optimization process of this method is completed.
[0116] In one preferred embodiment, this method is applied to a quadcopter UAV performing bridge side inspection tasks. The UAV is equipped with an inertial measurement unit (IMU), a satellite positioning device, an electronic speed controller (ESC) feedback interface, and a battery management unit. The roll control channel uses angular velocity response as the actual response. The IMU sampling frequency is 200 Hz, the flight control cycle is 5 milliseconds, the ESC feedback frequency is 100 Hz, and the battery status sampling frequency is 20 Hz. All data are timestamped using the flight control computer clock, with a time alignment tolerance of 5 milliseconds. The current valid parameter version is identified as version 12.
[0117] In step one, roll rate, roll control command, normalized output of the four motors, and power margin are obtained within a certain flight range. The allowable output range for motors 1 through 4 is 0 to 1. Currently, the outputs of each motor are 0.64, 0.66, 0.68, and 0.65 respectively. Therefore, according to... R(t)=min{1−0.64,1−0.66,1−0.68,1−0.65}=0.32 This establishes the power margin for the control cycle. A flight response record is generated for periods where the flight mode, load status, and version 12 remain unchanged.
[0118] In step two, flight response records with the flight mode set to position hold, load identifier set to load number 1, power margin in the range [0.30, 0.40), and control channel set to roll channel are assigned to the corresponding flight status slots. Inspection speeds fall into three adjacent speed conditions, but the three flight response records still form three time-sortable flight status slots based on their respective locked flight mode, load status, power margin range, and roll control channel.
[0119] In step three, a positive roll control action with an amplitude of 0.06 and a negative roll control action with an amplitude of 0.06 are obtained in one of the flight status slots, both actions lasting 0.20 seconds. The change in roll angular velocity corresponding to the positive action is 0.078 radians per second, and the change in roll angular velocity corresponding to the negative action is -0.048 radians per second. The control performance measured is...
[0120] Perturbation bias witness quantity is
[0121] In step four, the health reference witness value for this slot is 1.30 radians per second, the allowable deviation boundary is 0.08 radians per second, the health disturbance bias is 0 radians per second, and the allowable deviation of the disturbance bias is 0.02 radians per second. Previously, in the slot located in the wind shadow area of the bridge pier, the disturbance bias witness value was 0.080 radians per second, which did not meet the disturbance fading condition and was not included in the parameter mismatch support slot set. After the UAV left the wind shadow area, the disturbance bias witness values for three consecutive slots did not exceed 0.02 radians per second, corresponding to control performance witness values of 1.05 radians per second, 1.06 radians per second, and 1.04 radians per second, respectively, all below the lower limit of their respective health reference ranges, and the deviation direction remained the same. Therefore, these three slots were identified as the parameter mismatch support slot set, and the roll control channel was identified as the affected control channel.
[0122] In step five, two flight control parameters from the roll control channel are extracted from version 12 to form a parameter vector.
[0123] After applying positive and negative computational perturbations to the two parameters respectively, a response sensitivity matrix is formed using the flight state and control commands of the support slot based on the mismatch of the three parameters.
[0124] The vector difference between the health reference witness quantity and the current control effectiveness witness quantity is:
[0125] Taking a unit weight matrix and setting the regularization coefficient to 0.2, then...
[0126] The candidate parameter vector is formed using a scaling factor of 1.
[0127] After substituting the candidate parameters into the control cycle corresponding to the parameter mismatch support slot, the predicted maximum actuator output is 0.74, which does not exceed the output boundary formed by the reserved margin. Therefore, candidate parameter version 13 is formed.
[0128] In step six, within the same flight state slot, version 12 sequentially receives a positive roll control action with an amplitude of 0.06, followed by version 13 receiving a negative roll control action with an amplitude of 0.06, then version 12 receiving another positive roll control action with an amplitude of 0.06. The positive roll rate change corresponding to version 13 is 0.079 radians per second, and the negative roll rate change is -0.077 radians per second. Its control performance is [not specified in the original text].
[0129] The control performance witness value is within the range defined by the health reference witness value of 1.30 per second and the allowable deviation boundary of 0.08 per second. During the 13th version transition, the maximum actual actuator output was 0.74, which did not exceed the margin boundary. When the flight status slot ends, the parameter version management area writes the 12th version termination time, the 13th version effective time, and the currently valid parameter version to the same commit, and the 13th version changes from a candidate parameter version to a valid parameter version.
[0130] In another equivalent implementation, this method is applied to the yaw control channel of a 6-rotor UAV. Step 1: Collect yaw rate, yaw control command, outputs of 6 motors, power margin, and effective parameter versions. Step 2: Form flight status slots according to flight mode, load status, power margin, and yaw control channel. Step 3: Obtain forward yaw control actions, reverse yaw control actions, and yaw rate responses from the same slot, and form control performance witness and disturbance bias witness quantities according to the same calculation relationships. Step 4: Determine the parameter mismatch support slot set and yaw control channel according to the healthy reference witness quantity, cross-slot maintenance relationship, and disturbance bias fading relationship. Step 5: Apply calculated disturbances to the flight control parameters corresponding to the yaw control channel and form candidate parameter versions based on control output changes, control performance witness quantities, and actuator margins of the 6 motors. Step 6: Have the effective parameter version and candidate parameter version take on forward and reverse yaw control actions respectively, exchange action directions, and take on them again. When the control performance witness quantity of the candidate parameter version enters the healthy reference range and none of the 6 motor outputs cross the margin boundary, activate the candidate parameter version at the flight status slot boundary. This implementation method does not change the execution order, technical features, computational relationships, or result caliber of each step.
[0131] In the operational scenario shown in this embodiment: This method is applied to a quadcopter drone performing a bridge side inspection task. The drone is equipped with bridge surface imaging equipment. The flight control computer is connected to an inertial measurement unit (IMU), a satellite positioning device, four electronic speed controllers (ESCs), and a battery management unit. The IMU's sampling frequency is 200 Hz, the flight control cycle is 5 milliseconds, the ESC feedback frequency is 100 Hz, and the battery status sampling frequency is 20 Hz. All records are timestamped using the monotonically increasing clock of the flight control computer, with a time alignment allowable deviation of 5 milliseconds. When the drone begins its inspection, it uses version 12 flight control parameters, entering the position-maintaining flight zone along the side of the bridge pier. The computer continuously collects roll angular velocity, roll control commands, normalized output of each motor, power margin, and version 12 identifier. In a certain control cycle, the outputs of the four motors are 0.64, 0.66, 0.68, and 0.65, respectively. The allowable output range of each motor is 0 to 1. Therefore, the power margin for this control cycle is the minimum remaining amount of each motor output distance from the corresponding output boundary, which is 0.32. The flight mode, load status, effective status of the roll control channel, and continuous periods of unchanged version 12 are formed into flight response records and assigned to the corresponding flight status slots according to the position-maintaining flight mode, first load, power margin range of 0.30 to 0.40, and roll control channel.
[0132] When the UAV approaches the windward side of the bridge pier, local airflow causes the aircraft to drift laterally. The flight control computer obtains two roll control actions from the same flight state slot and the corresponding control record of version 12, both with an amplitude of 0.06 and a duration of 0.20 seconds. The change in roll angular velocity corresponding to the forward action is 0.078 radians per second, and the change in roll angular velocity corresponding to the reverse action is -0.048 radians per second. Based on this, the control performance witnessed quantity is 105 radians per second, and the disturbance offset witnessed quantity is 0.015 radians per second. Another set of disturbance offset witnessed quantities formed in the wind shadow area of the bridge pier reaches 0.080 radians per second, which exceeds the allowable deviation of 0.02 radians per second for the disturbance offset in this slot. Therefore, the system does not directly use the control performance deviation that occurs in this period as the basis for flight control parameter optimization.
[0133] After the drone left the wind shadow area of the bridge pier and continued to fly along the side of the bridge deck, the disturbance bias witness values in the three consecutive flight status slots all returned to within 0.02 radians per second. However, the corresponding control performance witness values were 1.05 radians per second, 1.06 radians per second, and 1.04 radians per second, respectively. All of these were lower than the lower bound defined by the healthy reference witness value of 1.30 radians per second minus the allowable deviation boundary of 0.08 radians per second. Furthermore, the deviation direction in the three slots was consistent. Therefore, these three slots were identified as the parameter mismatch support slot set, and the roll control channel was identified as the affected control channel.
[0134] The flight control computer then reads the two flight control parameters applied to the roll control channel in version 12 from the isolated calculation area, forming a parameter vector [0.18, 0.05]. Positive and negative calculation disturbances are applied to the two parameters respectively. The original flight state sequence and control command sequence in the three parameter mismatch support slots are substituted into the same control law program to form the response sensitivity matrix and the difference vector between the health reference witness and the current control effectiveness witness. When the regularization coefficient is 0.2, the parameter adjustment vector [0.0565, 0.0242] is calculated, and after applying a scaling factor of 1, a candidate parameter vector [0.2365, 0.0742] is formed.
[0135] The flight control computer maps the control output changes corresponding to the candidate parameters to the four motors. The predicted maximum actuator output is 0.74, which does not exceed the actuator margin boundary set according to the current power margin. Therefore, the candidate parameters are frozen to version 13. However, at this time, version 13 is not used as a formal and valid parameter in subsequent regular flight control.
[0136] After the UAV re-enters the flight state slot that satisfies the conditions of position holding, first payload, same power margin range, and roll control channel, version 12 sequentially takes over the positive roll control action with an amplitude of 0.06, version 13 takes over the reverse roll control action with an amplitude of 0.06, version 13 takes over the positive roll control action with an amplitude of 0.06, and then version 12 takes over the reverse roll control action with an amplitude of 0.06, so that versions 12 and 13 both obtain positive action response and... Reverse motion response: When receiving a forward motion, the roll rate change obtained by version 13 is 0.079 radians per second, and when receiving a reverse motion, the roll rate change obtained is -0.077 radians per second. Based on this, the control performance witness value of version 13 is 1.30 radians per second, which is within the healthy reference range defined by the healthy reference witness value of 1.30 radians per second and the allowable deviation boundary of 0.08 radians per second. At the same time, the maximum actual output of the four motors during the period of version 13 is 0.74, which does not exceed the actuator margin boundary.
[0137] The flight control computer continues to maintain version 12 as the current valid parameter until the flight state slot ends due to the UAV switching from position hold to constant speed flight. At the slot boundary, the parameter version management area writes the end time of version 12, the effective time of version 13, and the version relationship between version 13 and version 12 in the same submission, and points the current valid parameter version to version 13. After all writes are successful and the version reference verification passes, version 13 changes from a candidate parameter version to a valid parameter version, thus completing an adaptive optimization of flight control parameters for the roll control channel.
[0138] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. An adaptive optimization method for UAV flight control parameters, characterized in that, include:
1. Collect flight status, control commands, actuator outputs, power margin, and effective parameter versions, and generate flight response records according to status boundaries and version boundaries; 2. Based on the flight mode, load status, power margin, and control channels, the flight response record is assigned to the flight status slot; 3. Obtain reciprocal control actions and actual responses with opposite directions and corresponding amplitudes within the same flight state slot to form control performance witness quantity and disturbance bias witness quantity.
4. When the control performance witnessed value deviates from the healthy reference witnessed value and remains across slots, and the deviation persists even after the disturbance bias witnessed value has subsided, determine the set of slots supporting parameter mismatch and the affected control channels.
5. Apply computational perturbations to the flight control parameters of the affected control channels, and generate candidate parameter versions based on changes in control output, control performance metrics, and actuator margins; 6. Ensure that the effective parameter version and the candidate parameter version receive positive and negative reciprocal control actions respectively in the same slot, and then switch the action directions before receiving them. When the control performance of the candidate parameter version enters the healthy reference range and the actuator output does not exceed the margin boundary, the candidate parameter version is activated at the slot boundary.
2. The adaptive optimization method for UAV flight control parameters according to claim 1, characterized in that, Flight status, control commands, actuator outputs, power margin, and effective parameter versions are timestamped using the flight control computer. Using the control command timestamp as the alignment reference, the flight status, actuator output, and power margin closest to that timestamp and not exceeding the allowable time deviation are associated with the same control cycle; The state boundary is formed by changes in flight mode, load state, control channel effective state, actuator saturation state, and sensor effective state, while the version boundary is formed by changes in the version identifier of the effective parameter.
3. The adaptive optimization method for UAV flight control parameters according to claim 1, characterized in that, The power margin is the minimum value of the power margin for each control cycle within the coverage area of the flight response record. The flight status slot is uniquely keyed by flight mode value, load status value, power margin range and control channel identifier; Flight response records are only entered into the corresponding flight status slot when all items in the slot key match simultaneously.
4. The adaptive optimization method for UAV flight control parameters according to claim 1, characterized in that, Positive control action amplitude and reverse control action amplitude Take the time average of the absolute value of the control increment within the corresponding action interval, and the action duration is respectively... and ; The amplitude corresponds to the satisfaction The duration corresponds to the satisfaction ; When the difference between the attitude angle, attitude angular velocity, flight speed and power margin before the start of the action does not exceed the corresponding allowable difference, a reciprocal control action is formed.
5. The adaptive optimization method for UAV flight control parameters according to claim 4, characterized in that, The actual response of a positive control action is denoted as The actual response of the reverse control action is denoted as ; Control effectiveness witness quantity Perturbation bias witness quantity .
6. The adaptive optimization method for UAV flight control parameters according to claim 1, characterized in that, The health reference witness quantity is taken as the median value of each component of the control effectiveness witness quantity formed under the health state in the same flight state slot. The allowable deviation boundary is formed by the sum of the calculated uncertainty and the upper bound of the normal fluctuation of the health reference. When the normalized deviation continuously reaches the number of slots determined by the minimum mismatch duration and has the same sign, and continues to meet this condition after the disturbance bias witness continuously enters the healthy disturbance range, the corresponding slot is determined as the parameter mismatch support slot.
7. The adaptive optimization method for UAV flight control parameters according to claim 1, characterized in that, The response sensitivity is formed by multiplying the control output change rate by the control performance witness quantity. A matrix S is constructed using the response sensitivity of the parameter mismatch support slot. A vector z is constructed using the difference between the health reference witness quantity and the control performance witness quantity. A weight matrix W is constructed using the reciprocal of the square of the allowable deviation boundary. A flight control parameter adjustment vector is formed, where λ is the regularization coefficient and I is the identity matrix.
8. The adaptive optimization method for UAV flight control parameters according to claim 7, characterized in that, The scaling factors are read in descending order according to the locking sequence, with the first one ensuring that all candidate parameters are within the allowed range and that all predictor executor outputs satisfy the condition. The scaling factor forms the candidate parameter version, where, This represents the predicted output of the k-th actuator in the nth control cycle. To reserve a margin; Write the candidate parameter versions into the frozen parameter area.
9. The adaptive optimization method for UAV flight control parameters according to claim 1, characterized in that, Set four contiguous intervals in sequence: positive version of valid parameter, negative version of candidate parameter, positive version of candidate parameter, and negative version of valid parameter. When the control performance witness of the candidate parameter version enters the healthy reference range and the actuator output does not exceed the margin boundary, the termination time of the original valid parameter version, the effective time of the candidate parameter version, the current valid parameter version pointer and version relationship are written in the same commit at the slot boundary. If any write fails, the original valid parameter version is retained.