A method for controlling a trajectory of an end of an excavator and related apparatus
By real-time monitoring and correction of the actual rotation angle error of the excavator arm joint, the accuracy problem of end-point trajectory control in remote control was solved, and high-precision movement of the excavator arm end was achieved.
Patent Information
- Application Number
- CN202210993528.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-18
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2042-08-18
AI Technical Summary
In existing remote-controlled excavator end-effector trajectory control methods, errors in the joint speed controller cause a large discrepancy between the actual movement trajectory of the arm end and the planned trajectory, resulting in low remote control accuracy and affecting the completion of excavation tasks.
The actual rotation angle of the excavator arm joint is monitored in real time. The preset angular velocity is corrected by the angle error, and the control error is compensated in real time so that the movement trajectory of the arm end is consistent with the planned trajectory.
This improves the remote control accuracy of the excavator arm end, ensuring the efficient completion of excavation tasks.
Smart Images

Figure CN116084484B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of autonomous driving, and in particular to a method and related equipment for end-point trajectory control of an excavator. Background Technology
[0002] Remote control of excavators can solve the problem of harsh and dangerous construction environments, and the most common method currently is to use automated control technology to complete remote control operations. Specifically, the remote control equipment generates control signals based on automatic control algorithms, and then uses the control signals to control the movement of the boom, arm, and bucket. The combined movement of these three components drives the excavator arm end effector to move in both horizontal and vertical planes to complete the excavation task.
[0003] Existing remote control equipment typically controls the movement of the boom, arm, and bucket via joint speed controllers. First, the movement trajectory of the excavator's arm end effector needs to be planned based on the excavation task. Then, based on the planned trajectory and the movement time, the linear velocity of the arm end effector at each moment is determined. Next, the linear velocity of the arm end effector at each moment is converted into preset angular velocities for each joint. Finally, when the excavator is performing the excavation task, the preset angular velocities are used to control the movement angles of each joint, ensuring that the arm end effector moves according to the planned trajectory.
[0004] In the above scheme, to ensure that the actual movement trajectory of the arm's end effector closely matches the planned trajectory, a highly precise joint speed controller is required for angle control. Understandably, control errors in the speed controller will inevitably lead to a significant discrepancy between the actual movement trajectory of the arm's end effector and the planned trajectory. Simply using the angular velocity corresponding to the planned route to control the excavator's joints will result in very low accuracy of the end effector remote control, severely impacting the completion of the excavation task. Summary of the Invention
[0005] In view of this, this application provides a method for end-effector trajectory control of an excavator. When the excavator arm end-effector begins to move, it is necessary not only to control the movement angle of each joint according to a preset angular velocity, but also to monitor the actual rotation angle of the arm joints in real time. The preset angular velocity is corrected by the angular error between the actual rotation angle of the arm joint and the planned preset rotation angle, thereby compensating for control errors in real time during actual movement. This ensures that the actual movement trajectory of the arm end-effector continuously conforms to the planned movement trajectory, improving the remote control accuracy of the excavator arm end-effector.
[0006] The first aspect of this application provides a method for controlling the end trajectory of an excavator, the method comprising:
[0007] When the excavator arm begins to move, the movement process of at least one arm joint of the excavator is monitored in real time according to the control cycle.
[0008] At the i-th control moment, the actual rotation angle of the arm joint relative to the initial state is obtained. Here, the i-th control moment is the end time of the i-th control cycle, and the i-th control moment is the start time of the (i+1)-th control cycle. i is a positive integer greater than or equal to 1.
[0009] Obtain the target motion trajectory corresponding to the end effector of the excavator arm. The target motion trajectory includes at least one target position, and the target position corresponds one-to-one with the control time.
[0010] The preset rotation angle of the arm joint corresponding to the i-th target position and the preset angular velocity corresponding to the i-th target position are determined based on the target motion trajectory.
[0011] The target angular velocity is determined based on the actual rotation angle of the arm joint at the i-th control moment, the preset rotation angle of the arm joint at the i-th target position, and the preset angular velocity at the i-th target position.
[0012] During the (i+1)th control cycle, the arm joints are controlled to move according to the target angular velocity.
[0013] In one optional implementation, a preset angular velocity is used to control the rotation of the arm joints. The arm joints drive the excavator arm end effector to move through rotational motion.
[0014] In an optional implementation, obtaining the preset angular velocity corresponding to the i-th target position based on the target motion trajectory includes:
[0015] Determine the path between the i-th target position and the (i+1)-th target position based on the target's trajectory.
[0016] Based on the path between the i-th target position and the (i+1)-th target position and the control cycle, determine the preset linear velocity corresponding to the i-th target position.
[0017] The preset angular velocity is determined based on the preset linear velocity.
[0018] In an optional implementation, the target angular velocity is determined based on the actual rotation angle of the arm joint at the i-th control moment, the preset rotation angle of the arm joint at the i-th target position, and the preset angular velocity at the i-th target position, including:
[0019] The actual rotation angle of the arm joint is measured using an angle measurement sensor.
[0020] The preset rotation angle of the arm joint corresponding to the i-th target position is determined based on the position information of the i-th target position.
[0021] The change in angular velocity is determined based on the actual rotation angle, the preset rotation angle, and the control cycle.
[0022] The target angular velocity is determined based on the change in angular velocity and the preset angular velocity corresponding to the i-th target position.
[0023] In an optional implementation, the target angular velocity is determined based on the actual rotation angle of the arm joint at the i-th control moment, the preset rotation angle of the arm joint at the i-th target position, and the preset angular velocity at the i-th target position, including:
[0024] The rotation angle error is determined based on the actual rotation angle and the preset rotation angle.
[0025] Based on the preset angular velocity and control cycle, determine the target rotation angle corresponding to the (i+1)th control cycle.
[0026] The target angular velocity is determined based on the rotation angle error, the target rotation angle, and the control cycle.
[0027] In one optional implementation, the target angular velocity is determined based on the rotation angle error, the target rotation angle, and the control cycle, including:
[0028] The preset rotation angle is determined based on the rotation angle error and the target rotation angle.
[0029] The target angular velocity is determined based on the preset rotation angle and control cycle.
[0030] In an optional implementation, the method further includes:
[0031] The location information of the (i+1)th target is obtained based on the target's motion trajectory.
[0032] Obtain the real-time position of the excavator arm end at the i-th control moment.
[0033] Determine the relative positional relationship between the real-time position of the excavator arm end at the i-th control moment and the (i+1)-th target position.
[0034] Determine the target angular velocity based on the relative position relationship.
[0035] In an optional implementation, the method further includes:
[0036] Obtain the position angle between the real-time position of the excavator arm end and the i-th target position at the i-th control moment.
[0037] When the position angle is greater than the preset threshold, the i-th target position is moved to the real-time position of the excavator arm end corresponding to the i-th control moment.
[0038] In an optional implementation, the method further includes:
[0039] Obtain the path between the i-th target position and the (i+1)-th target position after the movement.
[0040] The target linear velocity is determined based on the path between the i-th target position and the (i+1)-th target position after the movement, and the control period.
[0041] Update the preset angular velocity corresponding to the i-th target position based on the target linear velocity.
[0042] In an optional implementation, the method further includes:
[0043] During the (i+1)th control cycle, the excavator arm end effector is controlled to move according to the updated target angular velocity.
[0044] A second aspect of this application provides a control device for an excavator, the control device comprising:
[0045] The monitoring unit is used to monitor the movement of at least one joint of the excavator's arm in real time according to the control cycle when the end of the excavator arm begins to move.
[0046] The acquisition unit is used to acquire the actual rotation angle of the arm joint relative to the initial state at the i-th control moment. Here, the i-th control moment is the end moment of the i-th control cycle, and the i-th control moment is the start moment of the (i+1)-th control cycle. i is a positive integer greater than or equal to 1.
[0047] The acquisition unit is also used to acquire the target motion trajectory corresponding to the end effector of the excavator arm. The target motion trajectory includes at least one target position, and each target position corresponds one-to-one with a control time.
[0048] The acquisition unit is also used to determine the preset rotation angle of the arm joint corresponding to the i-th target position and the preset angular velocity corresponding to the i-th target position based on the target motion trajectory.
[0049] The determining unit is used to determine the target angular velocity based on the actual rotation angle of the arm joint at the i-th control moment, the preset rotation angle of the arm joint at the i-th target position, and the preset angular velocity at the i-th target position.
[0050] The control unit is used to control the movement of the arm joints according to the target angular velocity during the (i+1)th control cycle.
[0051] In one optional implementation, a preset angular velocity is used to control the rotation of the arm joints. The arm joints drive the excavator arm end effector to move through rotational motion.
[0052] In an optional implementation, the acquisition unit is specifically configured to determine the path between the i-th target position and the (i+1)-th target position based on the target motion trajectory. Based on the path between the i-th target position and the (i+1)-th target position and the control cycle, a preset linear velocity corresponding to the i-th target position is determined. A preset angular velocity is then determined based on the preset linear velocity.
[0053] In an optional implementation, the acquisition unit is further configured to measure the actual rotation angle corresponding to the arm joint based on the angle measurement sensor.
[0054] The determining unit is specifically used to determine the preset rotation angle of the arm joint corresponding to the i-th target position based on the position information of the i-th target position. Based on the actual rotation angle, the preset rotation angle, and the control cycle, the angular velocity change is determined. Based on the angular velocity change and the preset angular velocity corresponding to the i-th target position, the target angular velocity is determined.
[0055] In one optional implementation, the determining unit is specifically used to determine the rotation angle error based on the actual rotation angle and the preset rotation angle. Based on the preset angular velocity and the control cycle, it determines the target rotation angle corresponding to the (i+1)th control cycle. Based on the rotation angle error, the target rotation angle, and the control cycle, it determines the target angular velocity.
[0056] In one optional implementation, the determining unit is specifically configured to determine a preset rotation angle based on the rotation angle error and the target rotation angle. The target angular velocity is then determined based on the preset rotation angle and the control cycle.
[0057] In an optional implementation, the acquisition unit is further configured to acquire the position information of the (i+1)th target position based on the target motion trajectory. It also acquires the real-time position of the excavator arm end effector corresponding to the i-th control moment.
[0058] The determining unit is also used to determine the relative positional relationship between the real-time position of the excavator arm end at the i-th control moment and the (i+1)-th target position. The target angular velocity is then determined based on this relative positional relationship.
[0059] In an optional implementation, the acquisition unit is further configured to acquire the position angle between the real-time position of the excavator arm end point corresponding to the i-th control moment and the i-th target position.
[0060] The control unit is also used to move the i-th target position to the real-time position of the excavator arm end corresponding to the i-th control moment when the position angle is greater than a preset threshold.
[0061] In an optional implementation, the acquisition unit is further configured to acquire the path between the i-th target position and the (i+1)-th target position after the movement.
[0062] The determining unit is also used to determine the target linear velocity based on the path between the i-th target position and the (i+1)-th target position after movement and the control period. The preset angular velocity corresponding to the i-th target position is then updated based on the target linear velocity.
[0063] In an optional implementation, the control unit is further configured to control the excavator arm end effector to move according to the updated target angular velocity during the (i+1)th control cycle.
[0064] A third aspect of this application also provides a control device, including: a memory and a processor, wherein the memory and the processor are coupled.
[0065] The memory is used to store one or more computer instructions.
[0066] The processor is used to execute one or more computer instructions to implement the end-point trajectory control method for the excavator described in the first aspect above.
[0067] A fifth aspect of this application also provides a computer-readable storage medium storing one or more computer instructions, characterized in that the instructions are executed by a processor to implement the end-point trajectory control method for an excavator as described in any of the above technical solutions.
[0068] In the technical solution provided in this application embodiment, the movement trajectory of the excavator arm end effector is first planned according to the excavation task. Then, the linear velocity of the excavator arm end effector is determined based on the movement trajectory, and the preset angular velocity corresponding to each arm joint is obtained based on the linear velocity. When the excavator arm end effector starts to move, a control signal is sent to the arm joint at the control moment. This control signal is used to instruct each joint to change angle according to the preset angular velocity. At the same time, the actual rotation angle of the excavator arm joint at the current moment is monitored and measured in real time. The preset angular velocity for the next moment is corrected based on the angle error between the actual rotation angle of the arm joint and the preset rotation angle that should be rotated. The movement of the arm joint at the next moment is then controlled based on the corrected preset angular velocity. In this way, position errors can be compensated in real time during the actual movement of the excavator, so that the actual movement trajectory of the arm end effector continuously conforms to the planned movement trajectory, thereby improving the remote control accuracy of the excavator arm end effector and improving the completion rate of the excavation task. Attached Figure Description
[0069] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments of this application will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0070] Figure 1 This is a flowchart illustrating an end-point trajectory control method for an excavator provided in an embodiment of this application;
[0071] Figure 2 This is a schematic diagram of the structure of a target motion trajectory provided in an embodiment of this application;
[0072] Figure 3 A flowchart illustrating another method for end-point trajectory control of an excavator provided in this application embodiment;
[0073] Figure 4 A schematic diagram of the structure of a control device for an excavator provided in this application embodiment;
[0074] Figure 5 This is a schematic diagram of another control device provided in an embodiment of this application. Detailed Implementation
[0075] This application provides a method for controlling the end effector trajectory of an excavator. When the excavator arm begins to move, it is necessary not only to control the movement angle of each joint according to a preset angular velocity, but also to monitor the actual rotation angle of the arm joints in real time. The preset angular velocity is corrected by the angular error between the actual rotation angle of the arm joints and the planned preset rotation angle, thereby compensating for control errors in real time during actual movement. This ensures that the actual movement trajectory of the arm end effector continuously conforms to the planned movement trajectory, improving the remote control accuracy of the excavator arm end effector.
[0076] To enable those skilled in the art to better understand the technical solutions of this application, the application will be clearly and completely described below with reference to the accompanying drawings of the embodiments. However, this application can be implemented in many other ways different from those described above. Therefore, based on the embodiments provided in this application, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of this application.
[0077] It should be noted that the terms "first," "second," "third," etc., in the claims, specification, and drawings of this application are used to distinguish similar objects and are not used to describe a specific order or sequence. Such data are interchangeable where appropriate so that the embodiments of this application described herein can be implemented in a sequence other than that shown or described herein. Furthermore, the terms "comprising," "having," and their variations are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products, or apparatuses.
[0078] Remote control of excavators can solve the problem of harsh and dangerous construction environments. The remotely controlled excavator can control the opening size of multiple solenoid valves via control commands sent through a wireless network, thereby driving the operation of the hydraulic cylinders of each joint to complete the digging task. This remote operation method is the same as the traditional excavator cab operation method, both relying on human judgment to directly control the multiple solenoid valves. Therefore, to perform complex digging actions with an excavator, such as leveling and slope repair, the operator needs extensive and skilled excavator operation experience. Furthermore, during remote control operation, the operator's vision, hearing, and touch are all limited, further increasing the difficulty of completing complex compound actions, and human operation will seriously affect the efficiency of the excavator in completing the work.
[0079] Therefore, current work has begun to explore the use of automated control technology to remotely control excavators, driving them to complete complex digging operations by sending real-time control signals. Specifically, the remote control device generates control signals based on an automated control algorithm, and then uses these signals to control the movement of the boom, arm, and bucket. The combined movement of these three components drives the excavator arm's end effector to move in both horizontal and vertical planes. One proposed approach is to directly control the linear velocity of the excavator arm's end effector, a method that is intuitive, simple, and efficient. Specifically, the control network first plans the trajectory of the excavator arm's end effector based on the digging task, and then obtains the target linear velocity of the end effector based on the trajectory and a preset movement time. Next, the control signal is determined based on the target linear velocity, and then used to control the linear velocity of the excavator arm's end effector. Ideally, during actual movement, the linear velocity of the excavator arm's end effector is the same as the target linear velocity, and the actual movement trajectory matches the planned trajectory, allowing the excavator to complete the digging task under remote control.
[0080] Specifically, excavators can be remotely controlled based on joint position controllers. Understandably, to control the movement of the excavator arm's end effector based on a target linear velocity, the actual linear velocity of the excavator arm's end effector at the target position needs to be the same as the target linear velocity. Therefore, the joint position controller-based control method first uses multiple discrete end effector positions to approximate the planned motion trajectory. Then, when the excavator arm's end effector reaches each end effector position, a control signal is sent to control the linear velocity of the excavator arm's end effector to match the linear velocity at that end effector position in the planned path. Clearly, the density of the selected discrete points determines the accuracy of the approximate trajectory. Furthermore, the joint position controller can only change the velocity at the end effector position; after passing through intermediate discrete position points, the speed of the position controller will change abruptly. At the same time, the speed deviations of the position controllers corresponding to each joint are also different, often resulting in jerky and uneven excavator arm movement, and uncoordinated movement of the boom and arm.
[0081] To address the issues in linear velocity control, the linear velocity of the arm's end effector is typically converted into the angular velocity of each joint. This angular velocity is then used to control the rotation angle of each joint. Existing methods rely on joint velocity controllers to drive the hydraulic cylinders of each joint. This involves determining the linear velocity of the arm's end effector based on a preset motion trajectory, converting it into the corresponding angular velocity of each joint, and then using the angular velocity of each joint to determine the control signal and drive the hydraulic cylinders during actual excavator operation. While this remote control method avoids lag, it requires a highly accurate joint velocity controller. Errors in the velocity controller inevitably lead to discrepancies between the actual rotation angle of each joint and the preset rotation angle, affecting the approximation between the actual and planned motion trajectories. Relying solely on the preset angular velocities within the planned path to control the excavator's joints results in very low remote control accuracy, severely impacting the completion of excavation tasks.
[0082] To address the aforementioned problems, this application provides a method and related equipment for end-effector trajectory control of an excavator. When the excavator arm end-effector begins to move, it is necessary not only to control the movement angle of each joint according to the planned angular velocity, but also to monitor the actual rotation angle of each arm joint in real time. By analyzing the positional error between the actual rotation angle of each arm joint and the preset rotation angle at the corresponding planned position, the planned angular velocity is corrected. This allows for real-time compensation of control errors during actual movement, ensuring that the actual movement trajectory of the arm end-effector continuously conforms to the planned trajectory, thereby improving the remote control accuracy of the excavator arm end-effector. The method, device, terminal, and computer-readable storage medium described in this application will be further described in detail below with reference to specific embodiments and accompanying drawings.
[0083] Figure 1This is a flowchart illustrating a method for end-effector trajectory control of an excavator, provided as an embodiment of this application. It should be noted that the steps shown in this flowchart can be executed in a computer system, such as a set of computer-executable instructions, and in some cases, the steps shown may be executed in a different logical order than that shown in the flowchart.
[0084] like Figure 1 As shown, the end-point trajectory control method includes the following steps:
[0085] 101. Based on the excavation task, plan the movement trajectory of the excavator arm end and obtain the target movement trajectory.
[0086] When remote control of an excavator is required to complete a digging task, the movements that the excavator arm needs to perform can be designed in advance based on the specific content of the task. Then, based on the designed arm movements, the motion trajectory of the excavator arm's end effector can be planned and determined to obtain the target motion trajectory. Typically, the various joints of an excavator control the movement of the boom, arm, and bucket, and the combined movement of the boom, arm, and bucket determines the motion trajectory of the excavator arm's end effector. Therefore, by planning the target motion trajectory of the excavator arm's end effector in advance according to the digging task, it is possible to determine how each joint should move, thus enabling the development of corresponding control schemes for each joint.
[0087] 102. Determine at least one target position on the target motion trajectory according to the control cycle, and determine the preset angular velocity corresponding to each target position.
[0088] Once the target trajectory is determined, the target position needs to be determined on that trajectory according to the control cycle. The control cycle refers to the period at which control signals are sent to the excavator when it begins to move. That is, the control network sends a control signal to the excavator every control cycle, and each control signal controls the movement of one arm joint within that control cycle. For example, when the control network sends the first control signal to the excavator at the initial moment, a certain arm joint rotates according to the first control signal within the first control cycle. When the first control moment arrives after one control cycle, a second control signal is sent to the excavator, and the arm joint then rotates according to the second control signal within the second control cycle.
[0089] As described above, after each control cycle, the control network needs to send new control signals to control the movement of each arm joint. Therefore, during the planning phase, a target position should be provided in the target motion trajectory after each control cycle. This target position indicates the position the excavator arm end effector should reach after a control cycle ends. For example, Figure 2This is a structural schematic diagram of a target motion trajectory provided in an embodiment of this application. Figure 2 As shown, the target movement trajectory A to B of the excavator arm's end effector can be planned in advance based on the excavation task. If the control network's control cycle is 10 seconds and the task completion time is 1 minute, then 6 target positions can be determined, namely target positions 1 to 6 as shown in the diagram. That is, after the first 10 seconds, the excavator arm's end effector should reach target position 1; after the second 10 seconds, it should reach target position 2, and so on.
[0090] Once the target positions are determined, the linear velocity corresponding to each target position can be determined based on the path within a control cycle. This is the linear velocity that the excavator arm's end effector should have when reaching each target position. Specifically, to calculate the linear velocity corresponding to target position 1, the path from the initial position to target position 1 needs to be determined first. Then, based on the path and the control cycle, a preset linear velocity 1 for target position 1 is determined. This preset linear velocity 1 indicates that when the excavator arm's end effector officially begins to move, the linear velocity upon reaching target position 1 should be the preset linear velocity 1. This ensures that the actual movement trajectory of the excavator arm's end effector is highly consistent with the planned target movement trajectory, enabling the excavation task to be completed automatically.
[0091] Once the preset linear velocities corresponding to each target position are determined, the Jacobian matrix of the arm can be used to convert the preset linear velocities into preset angular velocities corresponding to each joint. The preset angular velocities are used to control the angle changes of each joint, and the control network needs to determine the control signals based on the preset angular velocities.
[0092] 103. When the excavator arm begins to move, the movement process of the arm joint is monitored in real time according to the control cycle.
[0093] Understandably, steps 101 and 102 are both part of the route planning stage. This involves pre-planning the movement trajectory of the excavator arm's end effector based on the excavation task, and then determining the excavator's control signals based on that trajectory. Then, when the excavator officially begins performing the task, it is necessary to monitor the movement of each joint of the excavator arm in real time. Simultaneously, multiple control signals must be sent according to the control cycle to control the rotation of each joint, ensuring that the excavator arm's end effector moves as close as possible to the planned trajectory.
[0094] 104. At the i-th control moment, obtain the actual rotation angle of the arm joint.
[0095] The control network sends control signals to the excavator at each control moment. These control signals are the preset angular velocities of each joint at each control moment, determined during the path planning phase. The i-th control moment is the end of the i-th control cycle, and the (i+1)-th control cycle is the start of the i-th control cycle. That is, the first control moment corresponds to target position 1, the second control moment to target position 2, and so on. When any control moment is reached, it indicates that the excavator arm's end effector has completed one control cycle and needs to enter the next control cycle. At this point, a new control signal, namely the new angular velocities of each joint, needs to be sent to the excavator. The movement of the excavator arm's end effector in the next cycle is controlled based on this new angular velocity information.
[0096] Understandably, if the movement of each joint of the excavator is controlled in real time, the actual movement trajectory of the excavator should be consistent with the planned movement trajectory. However, the control signals are sent intermittently, the linear velocity changes abruptly before and after the control moment, and the angular velocity of each joint also has control errors. This easily leads to a discrepancy between the actual and planned movement trajectories. Moreover, as the control cycle increases, the control errors accumulate, and the deviation between the actual and planned movement trajectories grows, eventually causing the excavator arm's end effector to become uncontrollable and unable to complete the digging task. Therefore, it is necessary to continuously compensate for angular velocity errors during the actual movement of the excavator. Feedback is generated based on the positional error between the real-time rotation angle of each joint and the target rotation angle (preset rotation angle) to adjust the preset angular velocity. Finally, the movement of each joint of the excavator in the next cycle is controlled based on the adjusted preset angular velocity, ultimately ensuring that the actual movement trajectory of the excavator arm's end effector continuously conforms to the planned target movement trajectory.
[0097] 105. Determine the target angular velocity based on the actual rotation angle of the arm joint at the i-th control moment, the preset rotation angle of the arm joint at the i-th target position, and the preset angular velocity at the i-th target position.
[0098] The following is a detailed explanation of the process for adjusting the preset angular velocity:
[0099] Understandably, when a control moment arrives, it's necessary to obtain the real-time position of the excavator arm's end effector, and then the target position corresponding to that control moment in the target motion trajectory. Next, the real-time position and the target position need to be compared. Based on the comparison result, the control error is determined, and then this control error is compensated for in the next control cycle, ensuring that the actual motion trajectory of the excavator arm's end effector closely matches the target motion trajectory. For example, the adjustment methods may include the following:
[0100] Method 1:
[0101] First, the actual rotation angle of each joint can be determined; this angle represents the change in angle of each joint relative to its initial state. Next, the preset rotation angle of each joint at the target position in the target motion trajectory needs to be determined. Then, the actual rotation angle and the preset rotation angle are compared. If they match, the control signal for the next control cycle is determined according to the originally planned preset angular velocity. If the preset rotation angle is not reached, the preset angular velocity at that control moment needs to be increased to make the joint change faster in the next control cycle. If the preset rotation angle is exceeded, the preset angular velocity at that control moment needs to be decreased to make the joint change slower in the next control cycle.
[0102] For example, in the first control moment, the desired angle reached by a certain joint is set to θ. Then, in the second control moment, the actual angle reached by the joint is measured to be α. The preset angular velocity of each joint in the second control moment is set to ω. Therefore, the angular velocity of each joint in the second control moment needs to be set to (θ-α) / t+ω, where t is the control period. That is, (θ-α) / t+ω is used as the control signal to control the joint movement in the next control period.
[0103] Method 2:
[0104] First, the actual rotation angle of each joint can be determined, which is the change in angle of each joint relative to the initial state. Next, based on the preset angular velocity corresponding to the current control moment in the planned route, the target rotation angle that each joint of the excavator should reach after the next control cycle is determined. Then, in order to compensate for the angular error generated by each joint in the current cycle within the next control cycle, the target angular velocity needs to be determined based on the current actual rotation angle and the target rotation angle.
[0105] For example, at the second control moment, the desired angle reached by each joint is set to θ. Then, at the second control moment, the actual angle reached by each joint is measured to be α. The preset angular velocity of each joint at the second control moment is set to ω. Therefore, the target rotation angle that each joint of the excavator should reach at the next moment is first determined, which is ω*t. To compensate for the angle error in the current cycle, the angle that the joint should rotate at the next moment can be determined to be (θ-α)+ω*t. At this time, the target angular velocity is (θ-α) / t+ω, where t is the control cycle. In other words, (θ-α) / t+ω is used as a control signal to control the joint movement in the next control cycle.
[0106] Understandably, we can also determine the relative positions of the target position at the current control moment, the target position at the next control moment, and the current actual position, and then determine the feedback compensation amount based on the relative position relationship. That is, if the current actual position is before the target position at the current control moment, then the preset angular velocity needs to be increased to ensure that the joint moves faster in the next control cycle. Conversely, if the current actual position is between the target position at the current control moment and the target position at the next control moment, then the preset angular velocity needs to be decreased to ensure that the joint moves slower in the next control cycle.
[0107] 106. During the (i+1)th control cycle, control the excavator arm end to move according to the target angular velocity.
[0108] After adjusting the preset angular velocity corresponding to the control moment, the control signal needs to be determined according to the adjusted target angular velocity in the next control cycle. The arm joint movement is controlled according to the new angular velocity, thereby ensuring that the excavator arm end is as close as possible to the planned target motion trajectory.
[0109] In the technical solution provided in this application embodiment, the movement trajectory of the excavator arm end effector is first planned according to the excavation task. Then, the linear velocity of the excavator arm end effector is determined based on the movement trajectory, and the preset angular velocity corresponding to the arm joint is obtained based on the linear velocity. When the excavator arm end effector begins to move, a control signal is sent to the arm joint at a control moment. This control signal is used to instruct each joint to change angle according to the preset angular velocity. At the same time, the actual rotation angle of the excavator arm joint at the current moment is monitored in real time. The preset angular velocity for the next moment is corrected based on the positional error between the actual rotation angle of the arm joint and the preset rotation angle that should be rotated. The movement of the arm joint at the next moment is then controlled based on the corrected preset angular velocity. In this way, positional errors can be compensated in real time during the actual movement of the excavator, so that the actual movement trajectory of the arm end effector continuously conforms to the planned movement trajectory, thereby improving the remote control accuracy of the excavator arm end effector and improving the completion rate of the excavation task.
[0110] In conjunction with the above embodiments, Figure 3 This is a flowchart illustrating another method for end-effector trajectory control of an excavator, provided as an embodiment of this application. Figure 3 As shown, the control method includes the following steps:
[0111] 301. When the excavator arm begins to move, the movement process of the arm joint is monitored in real time according to the control cycle.
[0112] Understandably, when an excavator needs to perform a digging task, the target movement trajectory of the excavator arm's end effector needs to be planned in advance. For the specific planning process, please refer to [link / reference needed]. Figure 1 The relevant steps in the illustrated embodiment will not be elaborated here. When the excavator arm end effector begins operation, it is necessary to monitor the movement of the excavator arm joints. Then, every control cycle, a control signal is sent to the excavator to control the movement of the excavator arm joints in the next control cycle.
[0113] 302. At the i-th control moment, obtain the real-time position of the excavator arm end.
[0114] After a control cycle ends, the real-time position of the excavator arm's end effector needs to be acquired. Then, based on the real-time position, it's determined whether the end effector has reached the planned target position. If it has, it means the end effector is moving according to the planned trajectory. However, if it hasn't reached the target position, the positional difference between the real-time and target positions needs to be determined. Based on this difference, the control signal for the next control cycle is adjusted to compensate for the positional error generated in the previous control cycle.
[0115] 303. Determine the position of the i-th target in the target's trajectory.
[0116] Specifically, the target position at the current moment needs to be determined in the target trajectory. This target position is used to indicate the position that the excavator arm end should reach.
[0117] 304. Determine the position angle between the real-time position of the excavator arm end and the i-th target position.
[0118] Next, it is necessary to determine the position angle between the real-time position of the excavator arm's end and the target position. This position angle reflects the position error. Understandably, the position error is the result of the cumulative effect of each previous control cycle, which could potentially lead to a very large position error.
[0119] 305. When the position angle is greater than the preset threshold, move the i-th target position to the real-time position of the excavator arm end corresponding to the i-th control moment.
[0120] If the position angle is greater than a preset threshold, it indicates that the positional error between the real-time position and the target position is very large, making it difficult to compensate for. In this case, the error can be discarded, the planned target trajectory can be changed, the target position corresponding to the current moment in the target trajectory can be changed to the real-time position corresponding to the current moment, and then the trajectory can be replanned from the real-time position.
[0121] 306. Obtain the route between the i-th target position and the (i+1)-th target position after the move.
[0122] For example, the next target position that should be reached after the next control cycle in the original planned route can be obtained, and then the route between the current real-time position and the next target position can be planned. The angular velocity is re-determined based on the planned route, and then the control signal is determined based on the new angular velocity to control the movement of the excavator in the next control cycle.
[0123] 307. Determine the target linear velocity based on the route between the i-th target position and the (i+1)-th target position after the movement and the control cycle.
[0124] Specifically, the target linear velocity can be determined first, based on the newly planned route between the current real-time position and the next target position, as well as the control cycle. Then, the preset angular velocity corresponding to each joint can be determined based on the target linear velocity.
[0125] 308. Update the preset angular velocity corresponding to the i-th target position based on the target linear velocity.
[0126] Similarly, the preset angular velocities for each joint can be generated using the Jacobian matrix of the arm.
[0127] 309. During the (i+1)th control cycle, control the excavator arm end effector to move according to the updated target angular velocity.
[0128] Once the preset angular velocity is determined, each joint is controlled to rotate according to the preset angular velocity at the next moment, so that the deviated motion trajectory returns to the original planned route.
[0129] In the above embodiments, when the actual movement trajectory of the excavator arm deviates significantly from the originally planned route during the actual operation of the excavator, the planned route can be readjusted midway through the operation. Specifically, a new route is planned between the current actual position and the next target position. Then, based on the new route and the control cycle, the target linear velocity corresponding to the excavator arm end is determined, and the preset angular velocity corresponding to each joint is determined based on the target linear velocity. Next, the joints are controlled within the next control cycle according to the preset angular velocity. This allows the deviated movement trajectory to return to the original route, thereby achieving the purpose of completing the excavation task.
[0130] Figure 4 This is a schematic diagram of a control device for an excavator provided as an embodiment of this application. Figure 4 As shown, the control device includes:
[0131] The monitoring unit 401 is used to monitor the movement process of at least one joint of the excavator arm in real time according to the control cycle when the end of the excavator arm begins to move.
[0132] The acquisition unit 402 is used to acquire the actual rotation angle of the arm joint relative to the initial state at the i-th control moment. Here, the i-th control moment is the end moment of the i-th control cycle and the start moment of the (i+1)-th control cycle. i is a positive integer greater than or equal to 1.
[0133] The acquisition unit 402 is also used to acquire the target motion trajectory corresponding to the end of the excavator arm. The target motion trajectory includes at least one target position, and the target position corresponds one-to-one with the control time.
[0134] The acquisition unit 402 is also used to determine the preset rotation angle of the arm joint corresponding to the i-th target position and the preset angular velocity corresponding to the i-th target position based on the target motion trajectory.
[0135] The determining unit 403 is used to determine the target angular velocity based on the actual rotation angle of the arm joint corresponding to the i-th control moment, the preset rotation angle of the arm joint corresponding to the i-th target position, and the preset angular velocity corresponding to the i-th target position.
[0136] The control unit 404 is used to control the arm joint to move according to the target angular velocity during the (i+1)th control cycle.
[0137] In one optional implementation, a preset angular velocity is used to control the rotation of the arm joints. The arm joints drive the excavator arm end effector to move through rotational motion.
[0138] In an optional implementation, the acquisition unit 402 is specifically used to determine the path between the i-th target position and the (i+1)-th target position based on the target motion trajectory. Based on the path between the i-th target position and the (i+1)-th target position and the control period, a preset linear velocity corresponding to the i-th target position is determined. A preset angular velocity is then determined based on the preset linear velocity.
[0139] In an optional implementation, the acquisition unit 402 is further configured to measure the actual rotation angle corresponding to the arm joint based on the angle measurement sensor.
[0140] The determining unit 403 is specifically used to determine the preset rotation angle of the arm joint corresponding to the i-th target position based on the position information of the i-th target position. Based on the actual rotation angle, the preset rotation angle, and the control cycle, the angular velocity change is determined. Based on the angular velocity change and the preset angular velocity corresponding to the i-th target position, the target angular velocity is determined.
[0141] In an optional implementation, the determining unit 403 is specifically used to determine the rotation angle error based on the actual rotation angle and the preset rotation angle. It also determines the target rotation angle corresponding to the (i+1)th control cycle based on the preset angular velocity and the control cycle. Finally, it determines the target angular velocity based on the rotation angle error, the target rotation angle, and the control cycle.
[0142] In an optional implementation, the determining unit 403 is specifically used to determine a preset rotation angle based on the rotation angle error and the target rotation angle. The target angular velocity is then determined based on the preset rotation angle and the control cycle.
[0143] In an optional implementation, the acquisition unit 402 is further configured to acquire the position information of the (i+1)th target position based on the target motion trajectory. This includes acquiring the real-time position of the excavator arm end effector corresponding to the i-th control moment.
[0144] The determining unit 403 is also used to determine the relative positional relationship between the real-time position of the excavator arm end at the i-th control moment and the (i+1)-th target position. The target angular velocity is then determined based on the relative positional relationship.
[0145] In an optional implementation, the acquisition unit 402 is further configured to acquire the position angle between the real-time position of the excavator arm end point corresponding to the i-th control moment and the i-th target position.
[0146] The control unit 404 is also used to move the i-th target position to the real-time position of the excavator arm end corresponding to the i-th control moment when the position angle is greater than a preset threshold.
[0147] In an optional implementation, the acquisition unit 402 is further configured to acquire the path between the i-th target position and the (i+1)-th target position after the movement.
[0148] The determining unit 403 is further configured to determine the target linear velocity based on the path between the moved i-th target position and the (i+1)-th target position and the control period. The preset angular velocity corresponding to the i-th target position is then updated based on the target linear velocity.
[0149] In an optional implementation, the control unit 404 is also configured to control the excavator arm end effector to move according to the updated target angular velocity during the (i+1)th control cycle.
[0150] In the technical solution provided in this application embodiment, the movement trajectory of the excavator arm end is first planned according to the excavation task. Then, the linear velocity of the excavator arm end is determined based on the movement trajectory, and the preset angular velocity corresponding to the arm joint is obtained based on the linear velocity. When the excavator arm end begins to move, the control device sends a control signal to the arm joint at the control moment. This control signal is used to instruct each joint to change angle according to the preset angular velocity. At the same time, the monitoring unit monitors the actual rotation angle of the excavator arm joint in real time. The determination unit corrects the preset angular velocity for the next moment based on the error between the actual rotation angle of the arm joint and the preset rotation angle to be reached. The control unit then controls the movement of the arm joint at the next moment based on the corrected preset angular velocity. In this way, position errors can be compensated in real time during the actual movement of the excavator, so that the actual movement trajectory of the arm end continuously conforms to the planned movement trajectory, thereby improving the remote control accuracy of the excavator arm end and improving the completion rate of the excavation task.
[0151] It should be noted that the information interaction and execution process between the modules / units in the processing device are different from those in this application. Figures 1 to 3 The various method embodiments are based on the same concept, and the details can be found in the descriptions of the method embodiments shown above in this application, which will not be repeated here.
[0152] The following describes a control device provided in an embodiment of this application. Please refer to [link / reference]. Figure 5 , Figure 5 This is a schematic diagram of another control device provided in an embodiment of this application. The control device 800 may be equipped with... Figure 4 The control device for the excavator described in the corresponding embodiment is used to implement... Figures 1 to 3 The functions correspond to those in the embodiments. Specifically, the control device 800 includes: a receiver 801, a transmitter 802, a processor 803, and a memory 804 (wherein the number of processors 803 in the execution device 800 can be one or more). Figure 5 (Taking a processor as an example), the processor 803 may include an application processor 8031 and a communication processor 8032. In some embodiments of this application, the receiver 801, transmitter 802, processor 803, and memory 804 may be connected via a bus or other means.
[0153] Memory 804 may include read-only memory and random access memory, and provides instructions and data to processor 803. A portion of memory 804 may also include non-volatile random access memory (NVRAM). Memory 804 stores processor and operation instructions, executable modules, or data structures, or subsets thereof, or extended sets thereof, wherein the operation instructions may include various operation instructions for implementing various operations.
[0154] The processor 803 controls the operation of the execution device. In specific applications, the various components of the execution device are coupled together through a bus system, which may include not only the data bus but also power buses, control buses, and status signal buses. However, for clarity, all buses in the diagram are referred to as the bus system.
[0155] The methods disclosed in the embodiments of this application can be applied to or implemented by processor 803. Processor 803 can be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above methods can be completed by integrated logic circuits in the hardware of processor 803 or by instructions in software form. Processor 803 can be a general-purpose processor, a digital signal processor (DSP), a microprocessor, or a microcontroller, and may further include application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. Processor 803 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. A general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or can be executed by a combination of hardware and software modules in the decoding processor. The software module can reside in a mature storage medium in the field, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in memory 804, and processor 803 reads the information from memory 804 and, in conjunction with its hardware, completes the steps of the above method.
[0156] Receiver 801 can be used to receive input digital or character information, and to generate signal inputs related to the settings and function control of the execution device. Transmitter 802 can be used to output digital or character information through the first interface; transmitter 802 can also be used to send instructions to the disk group through the first interface to modify the data in the disk group; transmitter 802 may also include a display device such as a display screen.
[0157] In this embodiment of the application application, the application processor 8031 in the processor 803 is used to execute... Figures 1 to 3 The corresponding embodiment describes the end-effector trajectory control method for an excavator. It should be noted that the specific manner in which the application processor 8031 executes each step differs from that in this application. Figures 1 to 3 The various method embodiments are based on the same concept, and the technical effects they bring are the same as those in this application. Figures 1 to 3 The corresponding method embodiments are the same, and for details, please refer to the description in the method embodiments shown above in this application, which will not be repeated here.
[0158] This application provides a computer-readable storage medium, which includes computer instructions. When executed by a processor, the computer instructions are used to implement any of the technical solutions of the excavator end-point trajectory control method in this application.
[0159] This application also provides a computer program product that, when run on a computer, causes the computer to perform the aforementioned actions. Figures 1 to 3 The steps in the end-point trajectory control method for an excavator described in the illustrated embodiment.
[0160] The execution device and training device provided in this application embodiment can specifically be a chip. The chip includes a processing unit and a communication unit. The processing unit can be, for example, a processor, and the communication unit can be, for example, an input / output interface, pins, or circuits. The processing unit can execute computer execution instructions stored in the storage unit to cause the chip to perform the above-mentioned operations. Figures 1 to 3 The method described in the illustrated embodiment. Optionally, the storage unit is an on-chip storage unit, such as a register, cache, etc. The storage unit can also be an off-chip storage unit in the wireless access device, such as read-only memory (ROM) or other types of static storage devices that can store static information and instructions, random access memory (RAM), etc.
[0161] Although this application discloses preferred embodiments as described above, it is not intended to limit this application. Any person skilled in the art can make possible changes and modifications without departing from the spirit and scope of this application. Therefore, the scope of protection of this application should be determined by the scope defined in the claims of this application.
Claims
1. A method for end-effector trajectory control of an excavator, characterized in that, The control method includes: When the excavator arm end begins to move, the movement process of at least one arm joint of the excavator is monitored in real time according to the control cycle; At the i-th control moment, the actual rotation angle of the arm joint relative to the initial state is obtained; wherein, the i-th control moment is the end moment of the i-th control cycle, and the i-th control moment is the start moment of the (i+1)-th control cycle; and i is a positive integer greater than or equal to 1. Obtain the target motion trajectory corresponding to the end of the excavator arm; wherein, the target motion trajectory includes at least one target position, and the target position corresponds one-to-one with the control time; Based on the target motion trajectory, determine the preset rotation angle of the arm joint corresponding to the i-th target position and the preset angular velocity corresponding to the i-th target position; The target angular velocity is determined based on the actual rotation angle of the arm joint corresponding to the i-th control moment, the preset rotation angle of the arm joint corresponding to the i-th target position, and the preset angular velocity corresponding to the i-th target position. During the (i+1)th control cycle, the arm joint is controlled to move according to the target angular velocity; The method further includes: Obtain the position angle between the real-time position of the excavator arm end point and the i-th target position at the i-th control moment; When the included angle of the positions is greater than a preset threshold, the i-th target position is moved to the real-time position of the excavator arm end corresponding to the i-th control moment; The method further includes: Obtain the path between the i-th target position and the (i+1)-th target position after the movement; The target linear velocity is determined based on the path between the i-th target position and the (i+1)-th target position after the movement and the control period; The preset angular velocity corresponding to the i-th target position is updated based on the target linear velocity.
2. The method according to claim 1, characterized in that, The preset angular velocity is used to control the rotation of the arm joint; the arm joint drives the excavator arm end to move through rotational motion.
3. The control method according to claim 2, characterized in that, The step of obtaining the preset angular velocity corresponding to the i-th target position based on the target motion trajectory includes: Determine the path between the i-th target position and the (i+1)-th target position based on the target's motion trajectory; Based on the path between the i-th target position and the (i+1)-th target position and the control period, determine the preset linear velocity corresponding to the i-th target position; The preset angular velocity is determined based on the preset linear velocity.
4. The method according to any one of claims 1 to 3, characterized in that, The step of determining the target angular velocity based on the actual rotation angle of the arm joint corresponding to the i-th control moment, the preset rotation angle of the arm joint corresponding to the i-th target position, and the preset angular velocity corresponding to the i-th target position includes: The actual rotation angle corresponding to the arm joint is measured using an angle measurement sensor; The preset rotation angle of the arm joint corresponding to the i-th target position is determined based on the position information of the i-th target position; The change in angular velocity is determined based on the actual rotation angle, the preset rotation angle, and the control cycle. The target angular velocity is determined based on the change in angular velocity and the preset angular velocity corresponding to the i-th target position.
5. The method according to any one of claims 1 to 3, characterized in that, The step of determining the target angular velocity based on the actual rotation angle of the arm joint corresponding to the i-th control moment, the preset rotation angle of the arm joint corresponding to the i-th target position, and the preset angular velocity corresponding to the i-th target position includes: The rotation angle error is determined based on the actual rotation angle and the preset rotation angle. Based on the preset angular velocity and the control cycle, the target rotation angle corresponding to the (i+1)th control cycle is determined; The target angular velocity is determined based on the rotation angle error, the target rotation angle, and the control cycle.
6. The method according to claim 5, characterized in that, Determining the target angular velocity based on the rotation angle error, the target rotation angle, and the control cycle includes: Based on the rotation angle error and the target rotation angle, a preset rotation angle is determined; The target angular velocity is determined based on the preset rotation angle and the control cycle.
7. The method according to claim 6, characterized in that, The method further includes: The position information of the (i+1)th target location is obtained based on the target's motion trajectory; Obtain the real-time position of the excavator arm end corresponding to the i-th control moment; Determine the relative positional relationship between the real-time position of the excavator arm end corresponding to the i-th control moment and the (i+1)-th target position; The target angular velocity is determined based on the relative positional relationship.
8. The method according to claim 1, characterized in that, The method further includes: During the (i+1)th control cycle, the excavator arm end effector is controlled to move according to the updated target angular velocity.
9. A control device for an excavator, characterized in that, The control device includes: The monitoring unit is used to monitor the movement process of at least one arm joint of the excavator in real time according to the control cycle when the end of the excavator arm begins to move. The acquisition unit is used to acquire the actual rotation angle of the arm joint relative to the initial state at the i-th control moment; wherein the i-th control moment is the end moment of the i-th control cycle and the i+1-th control cycle; and i is a positive integer greater than or equal to 1. The acquisition unit is further configured to acquire the target motion trajectory corresponding to the end of the excavator arm; wherein the target motion trajectory includes at least one target position, and the target position corresponds one-to-one with the control time; The acquisition unit is further configured to determine, based on the target motion trajectory, the preset rotation angle of the arm joint corresponding to the i-th target position and the preset angular velocity corresponding to the i-th target position; The determining unit is used to determine the target angular velocity based on the actual rotation angle of the arm joint corresponding to the i-th control moment, the preset rotation angle of the arm joint corresponding to the i-th target position, and the preset angular velocity corresponding to the i-th target position; The control unit is used to control the arm joint to move according to the target angular velocity during the (i+1)th control cycle; The control device is also used for: Obtain the position angle between the real-time position of the excavator arm end point and the i-th target position at the i-th control moment; When the included angle of the positions is greater than a preset threshold, the i-th target position is moved to the real-time position of the excavator arm end corresponding to the i-th control moment; The control device is also used for: Obtain the path between the i-th target position and the (i+1)-th target position after the movement; The target linear velocity is determined based on the path between the i-th target position and the (i+1)-th target position after the movement and the control period; The preset angular velocity corresponding to the i-th target position is updated based on the target linear velocity.
10. A server, characterized in that, include: The memory and the processor are coupled; The memory is used to store one or more computer instructions; The processor is used to execute one or more computer instructions to implement the end trajectory control method for an excavator as described in any one of claims 1-8.
11. A computer-readable storage medium storing one or more computer instructions thereon, characterized in that, The instruction is executed by the processor to implement the end-point trajectory control method for an excavator as described in any one of claims 1-8.
Citation Information
Patent Citations
Excavating control method and device and excavator controller
CN109972688A
Robot self-adaptive impedance control method based on biological heuristic neural network
CN111531543A