Perforating process control method for unmanned aerial vehicle based on behavior tree

By adopting behavior tree technology in the robot control system, the state space of unmanned autonomous aircraft is modularly processed, which solves the problems of logical chaos and modular processing difficulties caused by state machine structure design in the existing technology, and achieves a clearer flight process and a higher underlying control node multiplexing rate.

CN120122677APending Publication Date: 2025-06-10ZHEJIANG UNIV +1

Patent Information

Application Number
CN202510000088.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-01
Publication Date
2025-06-10

AI Technical Summary

Technical Problem

In the prior art, robot control systems mostly adopt state machine structure design, resulting in the logic of mutual calls between states becoming chaotic, making it difficult to achieve modular processing and fault diagnosis, and the task execution logic does not start from the expected results, and lacks good hierarchical organization.

Method used

The unmanned autonomous aircraft perforation process control method based on behavior tree is adopted to discrete and modularize the state space of the aircraft through behavior tree. The hierarchical decision-making platform provides a stable and visual modular code reuse platform for autonomous aircraft systems.

Benefits of technology

The behavior tree makes the flight process clearer, increasing the reuse rate of the underlying flight control nodes, helping developers to intuitively understand the control logic during the autonomous aircraft's mission execution, and the process is modular and easy to combine different processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120122677A_ABST
    Figure CN120122677A_ABST
Patent Text Reader

Abstract

The invention discloses an unmanned aerial vehicle perforation process control method based on a behavior tree. The method comprises the following steps: discretizing and modularizing a state space of an aerial vehicle by using the behavior tree; describing and controlling a plurality of sub-processes of the aircraft through a modular structure of the behavior tree; the sub-processes comprise a takeoff process, a forward moving process, a circle aligning process, an accelerated circle penetrating process and a landing process, the sub-processes are combined into a complete behavior tree through control flow nodes, and the execution state of each sub-tree is controlled by selecting the control flow nodes; defining flag bits of a plurality of conditional judgment nodes for monitoring the execution state of each sub-process; the control flow node controls execution of tasks through selection, sequence and parallel nodes.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of robot behavior decision making, and in particular relates to a robot decision control method based on a behavior tree and modular combination for a punching task. Background Art

[0002] Behavior Tree (BT) originated in the game industry and was first used as a tool to add non-player character (NPC) control modules. As a decision tree, it has the following advantages over other decision-making methods: modularity, hierarchical organization, reusable code, readability, etc.

[0003] Modularity refers to the degree to which the components of a system can be split into multiple submodules and reassembled. Modularity: A modular system can design, apply, test, and reuse submodules. The advantages of modularity increase with the complexity of the system; hierarchical organization: if a complex system needs to contain multiple levels of decision-making relationships, it can be defined as a hierarchical organization system. Therefore, it is very important for both humans and computers to design and analyze the system at different levels, because this form can achieve rapid iteration, refinement and expansion of plans; reusable code: each module must connect other module architectures in a clear and unambiguous data interface definition, and build a code framework with a unified definition protocol for upstream and downstream systems, which is conducive to the development of multi-person collaborative robot projects; responsiveness: robots usually need to interact with the surrounding environment through sensors in the environment. For unstructured environments, the perception results of robots are usually uncertain. Similarly, the results of robots' effects on the environment are also full of uncertainty. External factors are constantly triggering and changing the new state of the robot; expressiveness: the control architecture must have sufficient expressiveness to encode various behaviors. In other words, the robot control architecture must have sufficient inclusiveness so that the robot can be fully described and expressed in the face of various behaviors in different environments.

[0004] "A method and system for fixed-point landing of unmanned aerial vehicles based on multifunctional identification and positioning" (CN113946157A) uses state machine conversion to complete a series of hovering actions from the air to the ground target. This method can realize process control of unmanned aerial vehicles, but it still has some shortcomings: (1) There is coupling in the conversion process between different states in its flowchart, which makes it difficult to modularly modify and debug the system; (2) Its task execution logic does not start from the expected results, so its tasks are not well layered; (3) The system state changes frequently, making it difficult to perform good fault diagnosis and provide good readability for developers or operators.

[0005] Current robot control systems mostly use a state machine structure design. For the state machine structure, as the complexity of the system increases, the logic of mutual calls between its states will become very chaotic. Therefore, during the operation of the robot, failures such as downtime or priority disorder may occur. Therefore, it is difficult to design robots for more complex systems using only state machines. Once the sub-modules in the finite state machine are modified, it will directly affect the operation of other modules, so it is difficult to modularize them. Summary of the invention

[0006] In response to the problems in the prior art, the present invention proposes a method for controlling the perforation process of an unmanned autonomous aircraft based on a behavior tree. Since the behavior tree has a top-down control logic, it can generate control over the underlying behavior nodes. This form greatly reduces the management of the code by the experimenter and greatly increases the reuse rate of the underlying control code. The present invention focuses on autonomous rotorcraft, and provides a stable and visual modular code reuse platform for the autonomous aircraft system through a top-down hierarchical decision-making platform of a behavior tree. The present invention adopts modular programming thinking to refine complex robot behaviors into a combination of simple behavior nodes, and ultimately achieves the purpose of reusing the top-level nodes to the underlying leaf nodes, which helps developers to quickly modularly develop aircraft controller platforms.

[0007] The technical solution of the present invention is as follows: A behavior tree-based perforation process control method for an unmanned autonomous aerial vehicle is proposed, which uses the behavior tree to discretize and modularize the state space of the aerial vehicle. Multiple sub-processes of the aircraft are described and controlled through the modular structure of the behavior tree; The sub-processes include a take-off process, a forward movement process, a circle alignment process, an acceleration through the circle process and a landing process; Each sub-process is combined into a complete behavior tree through a control flow node, and the execution status of each sub-tree is controlled by selecting a control flow node; the flag bits of multiple conditional judgment nodes are defined to monitor the execution status of each sub-process; the control flow node controls the execution of tasks by selecting, sequencing and parallel nodes.

[0008] The method described herein changes the "Object_detection" node of the control flow node according to corridors or hole-shaped obstacles of different shapes to adapt to different application scenarios.

[0009] In the method described, the take-off process is the Take_off process: it includes a perception subtree and a take-off process feature subtree, and controls task execution through sequence nodes and parallel nodes.

[0010] In the method described, the forward moving process is the Move_Forward process: the subtree controls the aircraft to move forward through the sequence node, and sets the x-direction speed and the command distance.

[0011] The method described above, the circle alignment process is the Aim_to_Circle process: the subtree uses a visual servoing strategy to align with the target circle, reads the coordinates of the circle center and performs position mapping.

[0012] The method described, the process of accelerating through the circle is the Move_to_Circle process: considering the sensor perspective, when the aircraft approaches the circle, it accelerates to fly forward.

[0013] In the method described above, the landing process is the Land process: triggering the "Land" node in the control flow node, recording the position and gradually reducing the Z-axis speed.

[0014] The aircraft is an autonomous rotorcraft.

[0015] The beneficial effects of the present invention are: (1) The behavior tree makes the flight process more clearly structured; (2) The reuse rate of the underlying flight control nodes is increased; (3) Developers can more intuitively understand the control logic of the autonomous aircraft during its mission execution. (4) The process is modularized, making it easy to combine different processes. BRIEF DESCRIPTION OF THE DRAWINGS

[0016] Figure 1 This is the behavior tree diagram of the Take_off process; Among them, ST1 is the perception function subtree, ST2 is the takeoff process feature subtree, and ST3 is the execution function subtree.

[0017] Figure 2 This is the behavior tree diagram of the Move_forward process; Among them, ST1 is the perception function subtree, ST4 is the takeoff process feature subtree, and ST3 is the execution function subtree.

[0018] Figure 3 This is the behavior tree diagram for the Aim_to_Circle process; Among them, ST1 is the perception function subtree, ST5 is the takeoff process feature subtree, and ST3 is the execution function subtree.

[0019] Figure 4 This is the behavior tree diagram for the Move_to_Circle process; Among them, ST1 is the perception function subtree, ST6 is the takeoff process feature subtree, and ST3 is the execution function subtree.

[0020] Figure 5This is a diagram of the Land process behavior tree; Among them, ST1 is the perception function subtree, ST7 is the takeoff process feature subtree, and ST3 is the execution function subtree.

[0021] Figure 6 This is a diagram of the behavior tree for the entire process; Among them, ST1 is the perception function subtree, ST8 is the takeoff process feature subtree, and ST3 is the execution function subtree.

[0022] Figure 7 An introduction to Behavior Tree nodes.

[0023] Figure 8-1 and Figure 8-2 It is the action node of the behavior tree of the unmanned aerial vehicle.

[0024] Fig. 9 Flags for the behavior tree of unmanned aerial vehicles. DETAILED DESCRIPTION

[0025] The present invention is further described below in conjunction with the accompanying drawings and embodiments.

[0026] The present invention is a behavior tree-based unmanned autonomous aerial vehicle task behavior planning method for passing through a tunnel (a circular cross-section tunnel is used herein).

[0027] Behavior tree composition and working principle: The robot's state space is discretized and modularized in the form of behavior trees, which is helpful for the separate debugging and combination of multiple processes. The present invention adopts this form, firstly describing different sub-processes separately using behavior trees, and then combining them through appropriate control flow nodes.

[0028] Figure 1 is the Take_off process, where ST1 is the perception subtree, and the control flow nodes in this subtree are parallel nodes, where m=1, n=3, and when ≥m nodes stop running, ST1 returns " failure ” , Otherwise return " success ", n is the number of child nodes of the parallel node. After the parallel node is started, the three nodes "Real_Camera", "Object_detection" and "Location_node" are started from left to right respectively. These three nodes will continue to run until the task is completed. ST2 is the feature subtree of the takeoff process. The root control node of the subtree is the sequence node. When the takeoff command is received, the flag0 state will be set to " success ”, and then execute the “Take_off” node. When the take-off altitude is reached, flag0 will be set to “ failure ", ST2 returns " failure". During the operation of the "Take_off" node, the node will assign values ​​to the variables in ST3. When ST2 returns " success " state, ST3 will be executed, and ST3 will pass the set variables to the flight controller to control the aircraft to move according to the given parameters.

[0029]

[0030] In formula (1) and Indicates the horizontal and vertical coordinate positions of the robot when it takes off, and sets the take-off height to 1.5m. At this time, the aircraft flies to a height of 1.5m while keeping the horizontal and vertical coordinate positions unchanged.

[0031] Figure 2 The functions of ST1 and ST3 nodes in Figure 1 The ST4 subtree is the characteristic subtree of the "Move_forward" process. The root node of this subtree is a sequence node. When the "flag1" state is set to " success ", and then execute the "Move_forward" node. During the execution of this node, the speed in the x direction is given, and the command distance in the x direction is accumulated, that is:

[0032] In formula (2), vx is the robot's moving speed in the x-direction, and dt is the time interval. When the robot receives this command, it will move forward along the x-axis while keeping the position in the y and z directions unchanged. The purpose is to make the recognition target circle enter the field of view.

[0033] During the execution of ST4, the variables in the ST3 action subtree are set, and then the flight controller executes the action. When the circle is detected to be within the range, the state of ST4 is set to " failure ”.

[0034] Figure 3 The functions of ST1 and ST3 nodes in Figure 1 The ST5 subtree is the characteristic subtree of the "Aim_to_Circle" process. The root node of this subtree is a sequence node. When the "flag2" state is set to " success ", and then execute the "Aim_to_Circle" node, which uses the visual servoing strategy to obtain the coordinates of the center of the circle on the pixel point by reading the center coordinate data in the "Object_detection" node. , given an image center coordinate (320, 240), multiplying it by the coefficient will obtain the mapping of the pixel image to the actual environment scale.

[0035] Given the speed in the x direction, the command distance in the x direction is accumulated, that is:

[0036] Formula (3) indicates that after the robot recognizes the circle, it executes the visual servo process. In the present invention, the y and z channels are controlled independently, and a pid controller is used, where and Respectively represent the PID control gains on the two channels of the robot. and Represents the pixel coordinates of the center of the circle in the visual image.

[0037] During the execution of ST4, the variables in the action subtree of ST3 are set, and then the action is executed by the flight controller. When the circle is aligned, the state of "flag2" in ST5 is set to " failure ”.

[0038] Figure 4 The functions of ST1 and ST3 nodes in Figure 1 Considering the reality, when the aircraft is close enough to the circle, the target circle will no longer appear in the image due to the sensor's viewing angle, so it is necessary to accelerate forward until the land node is launched, and set "flag3" in ST6 to " failure ”.

[0039]

[0040] In formula (4), at this time, the robot locks the center of the circle, moves to the position aligned with the center of the circle, and moves forward along the x-axis direction.

[0041] Figure 5 The functions of ST1 and ST3 nodes in Figure 1 The "flag4" node status is set to " success ", at this time the "Land" node is triggered. During the landing process of the aircraft, the current position coordinates are first recorded as , Z is converted to speed Slowly decrease, its expression form:

[0042] In formula (5), v z Indicates the speed of the robot moving along the z-axis. Xland and y land Indicates the world coordinates of the location where the robot landed.

[0043] Figure 6 The above multiple processes are combined into a behavior tree, and this behavior tree is used to control the aircraft strategically. The top-level control flow node in ST8 in the figure is the selection node. tick In the process, when a subtree returns " success " status, it returns " success "state.

[0044] Application Example: Unmanned Aerial Vehicle Design Method Based on Behavior Tree Application Scenario Judgment This method is mainly designed for unmanned aerial vehicles to autonomously cross circles or circular narrow corridors. When faced with application scenarios with corridors or hole-shaped obstacles of different shapes, the "Object_detection" node can be changed according to needs, and the aircraft planning method involved in the present invention can be used to cross special-shaped circles or other obstacle types.

[0045] The workflow of the behavior tree is as follows: it starts from the root node and passes to the control flow node. The control flow node ticks the child nodes (decorators, conditional nodes, leaf nodes) from left to right. At this time, the child node returns a status to the control flow node of the previous level according to the execution status of the current action ( Success, Failure, Processing ), the fallback node and the sequence node are based on the status they return tick The node to be executed next. The behavior tree will be executed at a fixed frequency during execution. Figure 7 shown.

[0046] Here, the relevant sensors and flight scenes of the autonomous unmanned aerial vehicle in the present invention are introduced. The sensors carried by the autonomous aerial vehicle in the present invention include binocular vision sensors, and the completed flight scene is able to pass through a static circle indoors.

[0047] Starting from the top level of the task, the top level task is first decomposed in time order, from the starting position to passing through the circle, and then to landing, which is divided into five action nodes, namely: camera drive node, ring detection node, indoor autonomous positioning node, obstacle detection node, and path planning node. The present invention splits and describes the above nodes according to the modular thinking of behavior tree.

[0048] First, the lowest-level action nodes involved in the behavior tree are uniformly defined, that is, the movement of the aircraft is directly controlled by the following nodes, which is essentially to discretize the original continuous state space: the action nodes that control the movement of the drone are "move along the x-axis direction" and "move along the x-axis direction". Vx * dt m""Move along the y-axis V y * dt m""Move along the z-axis V z * dt m", "Moving speed along the x-axis V x *m / s", "Moving speed along the y-axis V y *m / s", "Moving speed along the z-axis V z *m / s","rotate along the x-axis roll ","Rotate along the y-axis pitch ","Rotate along the z-axis yaw The other custom action nodes are "camera driver node", "circle detection node", "indoor autonomous positioning node", and "path planning node". The action nodes of the behavior tree of unmanned aerial vehicles are as follows Figure 8-1 and Figure 8-2 shown.

[0049] The circle-piercing process of the autonomous aircraft is decomposed into the following sub-processes: the take-off process (hereinafter referred to as the "Take_off process"), Figure 1 ), the forward moving process (hereinafter referred to as the "Move_Forward" process, such as Figure 2 ), the Aim_to_Circle process (hereinafter referred to as the "Aim_to_Circle" process, such as Figure 3 ), accelerate through the circle (hereinafter referred to as the "Move_to_Circle" process, such as Figure 4 ) and the landing process (hereinafter referred to as the "Land" process, such as Figure 5 ), write the above processes into subtrees as shown in the following Figure 1-5 As shown, the conditional judgment node is defined for the above behavior subtree: several flag bits are defined as flag 0 , flag 1 , flag 2 , flag 3 , flag 4 The above subtrees are combined into a tree through control flow nodes such as Figure 6 The flags of the behavior tree of the unmanned aerial vehicle are as follows. Fig. 9 shown.

[0050] The behavior tree invented by this method mainly runs on the airborne control end. The aircraft autonomously performs the piercing action through the above behavior tree through a series of positioning, identification and other nodes, and completes the take-off and landing process. It mainly provides a highly modular and hierarchical problem solution based on behavior trees for autonomous flight and behavior planning of drones.

[0051] The above-mentioned embodiments only express several implementation methods of the present invention, and the description thereof is relatively specific and detailed, but it cannot be understood as limiting the scope of the invention. It should be pointed out that for ordinary technicians in this field, several modifications and improvements can be made without departing from the concept of the present invention, all of which belong to the protection scope of the present invention. The protection scope of the present invention is given by the attached claims and any equivalent technical solutions thereof.

Claims

1. A method for controlling the perforation process of an unmanned autonomous aerial vehicle based on a behavior tree, characterized in that: Use behavior trees to discretize and modularize the state space of the aircraft; Multiple sub-processes of the aircraft are described and controlled through the modular structure of the behavior tree; The sub-processes include a take-off process, a forward movement process, a circle alignment process, an acceleration through the circle process and a landing process; Each sub-process is combined into a complete behavior tree through control flow nodes, and the execution status of each sub-tree is controlled by selecting control flow nodes; Define the flags of multiple conditional judgment nodes to monitor the execution status of each sub-process; The control flow nodes control the execution of tasks through selection, sequence and parallel nodes.

2. The method according to claim 1, characterized in that Change the "Object_detection" node of the control flow node according to the different shapes of corridors or hole-like obstacles to adapt to different application scenarios.

3. The method according to claim 1, characterized in that: The take-off process is the Take_off process: it includes the perception subtree and the take-off process feature subtree, and controls the task execution through sequence nodes and parallel nodes.

4. The method according to claim 1, characterized in that: The forward moving process is the Move_Forward process: the subtree controls the aircraft to move forward through the sequence node, setting the x-direction speed and command distance.

5. The method according to claim 1, characterized in that The process of aiming at the circle is the Aim_to_Circle process: the subtree uses the visual servoing strategy to aim at the target circle, reads the coordinates of the center of the circle and performs position mapping.

6. The method according to claim 1, characterized in that The process of accelerating through the circle is the Move_to_Circle process: Considering the sensor perspective, when the aircraft approaches the circle, it accelerates to fly forward.

7. The method according to claim 1, characterized in that The landing process is the Land process: trigger the "Land" node in the control flow node, record the position and gradually reduce the Z-axis speed.

8. The method according to claim 1, characterized in that: The aircraft is an autonomous rotorcraft.

Citation Information

Patent Citations

  • Fixed-point unmanned aerial vehicle landing method and system based on multifunctional identification and positioning

    CN113946157A

Cited By

  • Automatic cable arrangement control method and device based on behavior tree

    CN120463013A