Work machine
The work machine stabilizes hydraulic excavator operations by using an attitude and position detection system with model predictive control to maintain constraint conditions, addressing instability from GNSS deviations and incorrect target settings.
Patent Information
- Application Number
- PCT/JP2025/013583
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-03
- Filing Date
- 2025-04-03
- Publication Date
- 2025-10-09
AI Technical Summary
Hydraulic excavators using model predictive control (MPC) face instability due to deviations from constraint conditions, such as incorrect GNSS positioning or manual target surface setting, leading to unexpected bucket movements and operation instability.
A work machine equipped with an articulated work device, incorporating an attitude detection device, position detection device, and a controller that calculates and maintains constraint conditions to prevent the work implement from entering an intrusion zone, using model predictive control to stabilize operations.
Prevents unstable operation by ensuring the work implement adheres to constraint conditions, maintaining stable operation even with deviations from GNSS positioning errors or incorrect target settings.
Smart Images

Figure JP2025013583_09102025_PF_FP_ABST
Abstract
Description
Work machinery
[0001] The present invention relates to a work machine equipped with an articulated work device.
[0002] In response to the trend toward information-based construction, hydraulic excavators (work machines) have been developed that have machine guidance functions that display the position and posture of articulated work equipment, including buckets (work implements), to the operator, and machine control (operation assistance control) functions that control the position of the work equipment so that it moves along the target excavation surface.
[0003] Patent Document 1 discloses a control system that utilizes model predictive control (MPC) to control a work implement so that the bucket of a hydraulic excavator moves along a target excavation surface. Model predictive control is a control method that calculates control inputs to minimize the value of an evaluation function up to a predetermined time ahead. Model predictive control is a control method suitable for controlling a work machine with multiple joints. Using model predictive control eliminates the need to individually design the cylinder drive amounts for the boom and arm, and allows appropriate cylinder drive amounts to be automatically calculated depending on the situation. Another widely known advantage of model predictive control is that it can explicitly handle constraint conditions, i.e., it allows for speedy calculations with minimal computational effort. Patent Document 1 also discloses a method for avoiding bucket operation that over-digs the target excavation surface by considering constraint conditions related to the target excavation surface (design surface) and the bucket position.
[0004] Japanese Patent Application Laid-Open No. 2020-125594
[0005] In machine control of a hydraulic excavator, the position of the hydraulic excavator (the vehicle's position) in three-dimensional space is calculated using a Global Navigation Satellite System (GNSS), and the coordinates of the bucket toe are calculated based on the relationship between the target excavation surface and the vehicle's position. However, when using a GNSS, the calculation results of the vehicle's position can fluctuate significantly due to changes in the number of satellites available for positioning or interruptions in correction information. For example, a situation may arise in which the calculated coordinates of the toe are located below the target excavation surface, even though the toe of the bucket is actually located on the target excavation surface. Furthermore, when an operator manually sets the target excavation surface, the target excavation surface can be set at a position higher than the current toe of the bucket. In this case, the calculated coordinates of the toe will be located below the target excavation surface.
[0006] When the calculated coordinates of the bucket toe are below the target excavation surface, it is believed that a deviation from the constraint conditions occurs in the model predictive control. When a deviation from the constraint conditions occurs, model predictive control is executed in an attempt to quickly recover from the deviation from the constraint conditions, which may result in sudden movement of the bucket. Furthermore, when optimization calculations are performed using a state in which the constraint conditions are not satisfied as the initial state, unexpected behavior may occur in the repeated optimization calculations. In other words, when a deviation from the constraint conditions occurs, there is a risk that the operation of the work machine may become unstable.
[0007] An object of the present invention is to prevent unstable operation of a work machine when a deviation from a constraint condition occurs.
[0008] A work machine according to one aspect of the present invention comprises a work implement having a plurality of driven members including a work implement and a plurality of hydraulic actuators that drive the plurality of driven members, a body to which the work implement is attached, an attitude detection device that detects the attitude of the work implement, a position detection device that detects the position of the body, and a controller that controls the operation of the work implement. The controller calculates current coordinates of the work implement based on the attitude of the work implement detected by the attitude detection device and the position of the body detected by the position detection device, sets constraint conditions in model predictive control to prevent the work implement from entering the intrusion prevention zone based on the coordinates of the work implement and a boundary surface between an operation limited zone in which operation of the work implement is permitted and an intrusion prevention zone in which intrusion of the work implement is prevented, and performs the model predictive control to calculate a target operating speed of the hydraulic actuator for a predetermined time from the current time so as to reduce the deviation between the coordinates of the work implement and the target coordinates of the work implement while satisfying the constraint conditions. The controller calculates the operating speed of the hydraulic actuator based on the attitude of the work implement detected by the attitude detection device, controls the hydraulic actuator so that the operating speed of the hydraulic actuator matches the target operating speed, determines whether the position of the control point of the work implement deviates from the constraint condition, and executes operation prohibition control to prohibit or stop the operation of the work implement if it is determined that the position of the control point of the work implement deviates from the constraint condition because the boundary surface is set so that the coordinates of the work implement are located in the intrusion prevention area or because the detection accuracy of the position detection device has deteriorated.
[0009] According to the present invention, when a deviation from a constraint condition occurs, it is possible to prevent unstable operation of the work machine.
[0010] 1 is an external view of a hydraulic excavator. FIG. 2 is a block diagram showing an overview of the hardware configuration and functions of a controller. FIG. 3 is a block diagram showing details of the functions of the controller according to the first embodiment. FIG. 4 is a diagram showing an example of a target surface, where the target surface is a horizontal surface. FIG. 5 is a diagram showing an example of a target surface, where the target surface is a slope. FIG. 6 is a diagram showing an example of a target surface, where a plurality of target surfaces are set. FIG. 7 is a flowchart showing an example of a processing procedure of the controller according to the first embodiment. FIG. 8 is a diagram showing a hydraulic excavator performing work within an operation limited area. FIG. 9 is a diagram showing a state in which a part of the working implement has entered an intrusion prevention area. FIG. 10 is a block diagram showing details of the functions of the controller according to the second embodiment. FIG. 11 is a diagram showing an example of a warning screen displayed on the display screen of the user interface (touch panel monitor). FIG. 12 is a diagram showing a situation in which the bucket deviates from the actual operation limited area. FIG. 13 is a diagram explaining alternative constraint conditions that are set to bring the bucket closer to the actual operation limited area. FIG. 14 is a flowchart showing an example of a processing procedure of the controller according to the second embodiment. FIG. 15 is a flowchart showing an example of the processing procedure of the controller according to a modified example of the second embodiment. FIG. 16 is a block diagram showing details of the functions of the controller according to the third embodiment.
[0011] <First Embodiment> An embodiment of the present invention will be described with reference to the drawings. Fig. 1 is an external view of a hydraulic excavator 1. As shown in Fig. 1, the hydraulic excavator 1 as a work machine includes a working device 41 for performing excavation work and the like, and a machine body 42 to which the working device 41 is rotatably attached. The machine body 42 includes a self-propelled running body 2 and a rotating body 3 rotatably mounted on the running body 2. The rotating body 3 is configured to rotate relative to the running body 2 by, for example, a swing hydraulic motor 4, which is a hydraulic actuator.
[0012] The working device 41 is an articulated working device. The working device 41 has multiple driven members and multiple hydraulic actuators that drive the multiple driven members. The multiple driven members are rotatably connected within a vertical plane. The multiple driven members include a boom 6, an arm 7, and a bucket 8 as a working implement. The base end of the boom 6 is rotatably attached to the front of the revolving unit 3 via a boom pin 6a. The base end of the arm 7 is rotatably attached to the tip of the boom 6 via an arm pin 7a. The bucket 8 is rotatably attached to the tip of the arm 7 via a bucket pin 8a. The multiple hydraulic actuators (hydraulic cylinders) that make up the working device 41 are a boom cylinder 10 that drives the boom 6, an arm cylinder 11 that drives the arm 7, and a bucket cylinder 12 that drives the bucket 8. The bucket cylinder 12 drives the bucket 8 via a link member 13 that rotates in conjunction with the bucket 8.
[0013] The traveling body 2 is provided with crawler-type traveling devices 14 on the left and right sides. The traveling devices 14 drive traveling hydraulic motors 14a, which are hydraulic actuators, to cause the traveling body 2 to travel.
[0014] The rotating body 3 includes a cab 16 in which an operator sits and a machine room 17 that houses various devices. Electric operating devices 18a, 18b, and 18c for operating the hydraulic actuators (4, 10, 11, 12, and 14a) are disposed in the cab 16. The operating devices 18a and 18b have, for example, operating levers that can be tilted forward, backward, left, and right. The operating devices 18a and 18b each have an operation sensor (not shown) that electrically detects the tilt direction and amount of tilt of the operating lever, i.e., the operation direction and amount. The operation sensor outputs an operation signal to the controller 100 according to the detected operation direction and amount.
[0015] The forward / backward operation and left / right operation of the operating devices 18a, 18b are respectively assigned as the operation of each hydraulic actuator (4, 10, 11, 12). In other words, each operation of the operating devices 18a, 18b is assigned as the work operation of the work device 41 (drive command for the hydraulic actuators (10, 11, 12)) and the rotation operation of the rotating body 3 (drive command for the hydraulic actuator (4)). The operating device 18c has a travel lever and a travel pedal that can be tilted forward / backward. The operating device 18c is assigned as the travel operation of the left and right traveling devices 14, i.e., the drive command for the hydraulic actuator (14a).
[0016] A user interface 19 is disposed in the cab 16. The user interface 19 includes a display device 19b (see FIG. 3) that displays various information and an input device 19a (see FIG. 3) that outputs an input signal to the controller 100 in response to an operation by the operator. The display device 19b is a monitor having a liquid crystal display or the like, and notifies the operator of information. The input device 19a is a touch sensor provided on the monitor screen, and is operated by the operator. In other words, the user interface 19 according to this embodiment is a touch panel monitor. The user interface 19 may be configured to be installed in the cab 16, or may be configured as a portable tablet terminal that can be attached to and detached from the cab 16.
[0017] The machinery room 17 accommodates a prime mover 21, such as an engine or an electric motor, and a hydraulic pump device 22 driven by the prime mover 21. Driven by the prime mover 21, the hydraulic pump device 22 sucks hydraulic oil from a tank and discharges the hydraulic oil to a discharge pipe. The pressurized oil discharged from the hydraulic pump device 22 is supplied to each of the hydraulic actuators (4, 10, 11, 12, 14a). This drives each hydraulic actuator (4, 10, 11, 12, 14a). The drive of each hydraulic actuator (4, 10, 11, 12, 14a) is controlled by a control valve unit 23, which is an assembly of control valves corresponding to each hydraulic actuator (4, 10, 11, 12, 14a). Each control valve constituting the control valve unit 23 controls the direction and flow rate of pressurized oil (hydraulic oil) supplied from the hydraulic pump device 22 to the corresponding hydraulic actuator (4, 10, 11, 12, 14a). The operation of each control valve is controlled by, for example, a pilot pressure (drive signal) output from a pilot pump (not shown) via an electromagnetic proportional valve (not shown). The controller 100 controls each electromagnetic proportional valve based on operation signals from the operation devices 18a, 18b, and 18c. As a result, the control valve unit 23 controls the operation of each hydraulic actuator (4, 10, 11, 12, and 14a).
[0018] As shown in FIGS. 1 and 2 , the rotating structure 3 is equipped with an inertial measurement unit (IMU) 25 for measuring information related to the attitude of the machine body 42 (the rotating structure 3). The boom 6, arm 7, and bucket 8, which are components of the work device 41, are also equipped with inertial measurement units 26, 27, and 28 for measuring information related to the attitude of each component (6, 7, 8). To distinguish between these four inertial measurement units 25, 26, 27, and 28, the inertial measurement unit 25 for the rotating structure 3 (machine body) may be referred to as the machine body IMU, the inertial measurement unit 26 for the boom 6 as the boom IMU, the inertial measurement unit 27 for the arm 7 as the arm IMU, and the inertial measurement unit 28 for the bucket 8 as the bucket IMU. The bucket IMU 28 is generally installed on a link member 13 that rotates in conjunction with the bucket 8, but may be installed on any component that drives in conjunction with the bucket 8.
[0019] Each of the inertial measurement units 25, 26, 27, and 28 includes an angular velocity sensor that measures the angular velocity of the part (object of measurement) on which it is installed and an acceleration sensor that measures the acceleration. Each of the inertial measurement units 25, 26, 27, and 28 also includes an angle calculation device that calculates the angle of the object of measurement using the angular velocity measured by the angular velocity sensor and the acceleration measured by the acceleration sensor.
[0020] For example, when the rotating unit 3 is stationary, the airframe IMU 25 can calculate the tilt (pitch angle) of the rotating unit 3 in the forward / backward direction and the tilt (roll angle) of the rotating unit 3 in the left / right direction (width direction of the rotating unit 3) with respect to a horizontal plane (reference plane) based on the direction of gravitational acceleration (vertical downward direction) measured in an IMU coordinate system set in the airframe IMU 25 and the mounting state of the airframe IMU 25 (the relative positional relationship between the airframe IMU 25 and the rotating unit 3). The airframe IMU 25 outputs the calculation results of the pitch angle and roll angle of the rotating unit 3 (attitude information of the rotating unit 3) to the controller 100. The airframe IMU 25 can calculate the rotation angle (yaw angle) of the rotating unit 3 by integrating the detected angular velocity.
[0021] The boom IMU 26, arm IMU 27, and bucket IMU 28 each measure the angular velocity and acceleration of the measurement object (boom 6, arm 7, bucket 8) and calculate the angle of the measurement object relative to a reference based on the measurement results (acceleration and angular velocity). Specifically, each inertial measurement unit 26 to 28 can calculate the rotation angle of the components (6, 7, 8) of the work device 41 by detecting the direction of gravity and integrating the detected angular velocity. The boom IMU 26, arm IMU 27, and bucket IMU 28 each output the measurement results of the angular velocity and acceleration of each component (6, 7, 8) and the calculation results of angle information of each component (6, 7, 8) (posture information of each component 6, 7, 8) to the controller 100.
[0022] The machine body IMU 25, boom IMU 26, arm IMU 27, and bucket IMU 28 constitute an attitude detection device 29 (see FIG. 3 ) that detects information related to the attitude of the machine body 42 and the work device 41. The angle calculation devices of the inertial measurement units 25, 26, 27, and 28 may be configured as a single calculation device. Furthermore, the functions of the angle calculation devices of the inertial measurement units 25, 26, 27, and 28 may be provided by the controller 100. In this case, the angle calculation devices of the inertial measurement units can be omitted.
[0023] In this embodiment, by using the measurement results of the machine body IMU 25, the boom IMU 26, the arm IMU 27, and the bucket IMU 28, it is possible to calculate the state quantities (angle, angular velocity, angular acceleration) of the swing hydraulic motor 4 and the state quantities (displacement, velocity, acceleration) of the boom cylinder 10, the arm cylinder 11, and the bucket cylinder 12. That is, each of the inertial measurement units 25, 26, 27, and 28 functions as a state quantity detection device that detects information related to the state quantities of the hydraulic actuators (4, 10, 11, and 12). Therefore, there is no need to separately provide a sensor that detects the state quantities of the hydraulic actuators (4, 10, 11, and 12). However, the hydraulic excavator 1 may further include an actuator sensor that detects the state quantities of the hydraulic actuators (4, 10, 11, and 12). An example of the actuator sensor is a cylinder stroke sensor that can detect the stroke of a hydraulic cylinder.
[0024] The rotating unit 3 is equipped with two GNSS antennas 36 and 37 as receiving devices capable of receiving positioning signals from multiple GNSS satellites. The positioning signals received by each GNSS antenna 36 and 37 are input to a GNSS receiver 38 (see FIG. 2 ). The GNSS receiver 38 performs positioning calculations, such as calculating coordinates representing the positions of the GNSS antennas 36 and 37 and calculating the azimuth angle of the rotating unit 3 (aircraft), based on the positioning signals received by the GNSS antennas 36 and 37. The GNSS receiver 38 can perform real-time kinematic (RTK) positioning by wirelessly connecting to a GNSS fixed station installed on-site. In cases where a GNSS fixed station is not available on-site, positioning can be performed using network-based RTK, which obtains information from electronic reference stations via the Internet. The following discussion assumes that the GNSS receiver 38 is capable of performing RTK positioning regardless of whether a fixed station is available on-site.
[0025] The GNSS receiver 38 can provide the controller 100 with the positioning status (standalone positioning, RTK-float, RTK-fix, etc.). The controller 100 can estimate the positioning accuracy (position detection accuracy) based on the positioning status provided by the GNSS receiver 38. Furthermore, the GNSS positioning calculation includes statistical calculations such as a Kalman filter. Therefore, the GNSS receiver 38 can provide the controller 100 with the accuracy of the positioning result as error variance. The controller 100 can more accurately grasp the positioning accuracy information based on the error variance information provided by the GNSS receiver 38.
[0026] The GNSS receiver 38 outputs the results of the positioning calculation, that is, the positions of the GNSS antennas 36, 37 (i.e., the position of the revolving unit 3) and speed, and the azimuth angle of the revolving unit 3 (machine), to the controller 100. The GNSS antennas 36, 37 and the GNSS receiver 38 constitute a position detection device 35 (see FIG. 3 ) that detects the position of the machine 42 (revolving unit 3) of the hydraulic excavator 1.
[0027] FIG. 2 is a block diagram showing an overview of the hardware configuration and functions of the controller 100. As shown in FIG. 2, the controller 100 is composed of a computer equipped with a processing device 61, a storage device 62, an input / output interface, and other peripheral circuits. These hardware components work together to run software and realize multiple functions. The controller may be composed of a single computer or multiple computers. The processing device 61 is composed of a central processing unit (CPU), a micro processing unit (MPU), a digital signal processor (DSP), etc. The storage device 62 is composed of non-volatile memory such as read-only memory (ROM), flash memory, and a hard disk drive, as well as volatile memory known as random access memory (RAM).
[0028] The nonvolatile memory stores programs capable of executing various calculations. In other words, the nonvolatile memory is a storage medium from which the programs that realize the functions of this embodiment can be read. The volatile memory is a storage medium that temporarily stores the results of calculations performed by the processing unit 61 and signals input from the input / output interface. The processing unit 61 is a device that loads the programs stored in the nonvolatile memory into the volatile memory and executes the calculations, and performs predetermined calculations on data taken in from the input / output interface, the nonvolatile memory, and the volatile memory in accordance with the programs.
[0029] The input section of the input / output interface converts signals input from various devices (inertial measurement units 25, 26, 27, 28, GNSS receiver 38, user interface 19, etc.) into data that can be calculated by the processing device 61. The output section of the input / output interface generates an output signal according to the calculation result in the processing device 61, and outputs the signal to various devices (hydraulic pump device 22, control valve unit 23, user interface 19, etc.).
[0030] The controller 100 controls the operation of the hydraulic excavator 1. The controller 100 executes a program stored in the storage device 62 to function as a positioning calculation unit 101, a target setting unit 102, an operation control unit 103, and a display control unit 104. Note that, hereinafter, a system combining the functions of the target setting unit 102 and the display control unit 104 may be referred to as a machine guidance system. Also, a system combining the functions of the target setting unit 102 and the operation control unit 103 may be referred to as a machine control system.
[0031] The positioning calculation unit 101 calculates the position (coordinates) and orientation of the hydraulic excavator 1 within the work site and the attitude of the work implement 41 based on the position information calculated by the GNSS receiver 38 and the measurement results of the inertial measurement units 25, 26, 27, and 28. The positioning calculation unit 101 outputs the calculation results to the target setting unit 102, the operation control unit 103, and the display control unit 104.
[0032] The target setting unit 102 calculates a target surface that defines the target shape of the construction target (excavation target) based on construction information, such as three-dimensional construction drawings, pre-stored in the storage device 62, and the position information and attitude information of the hydraulic excavator 1, which are the calculation results of the positioning calculation unit 101. The construction information pre-stored in the storage device 62 is input by a construction manager via, for example, the user interface 19 (input device 19a) or a construction management system (not shown) external to the hydraulic excavator 1. The target setting unit 102 also calculates the distance between the target surface and a control point of the work implement 41 (e.g., the toe of the bucket 8). The operator can also set the target surface on the spot by operating the user interface 19. For example, if the traveling vehicle 2 is on a horizontal surface and the operator inputs "-0.5 m" as the height using the user interface 19, the target setting unit 102 sets a plane with a depth of 50 cm as the target surface. This makes it easy to excavate a trench with a constant depth. The target setting unit 102 outputs the calculation results such as the target surface to the operation control unit 103 and the display control unit 104 .
[0033] The display control unit 104 controls, for example, the user interface 19 (display device 19b) in the operator's cab 16 to display a predetermined image on the display screen of the display device 19b. The display control unit 104 calculates operation assistance instructions for the operator based on the target surface which is the calculation result of the target setting unit 102 and the position information and attitude information of the hydraulic excavator 1 which are the calculation results of the positioning calculation unit 101, and displays the calculation results on the display device 19b. The display control unit 104 performs part of the function of a machine guidance system that supports the operator's operation by, for example, displaying on the display device 19b the attitude of the work implement 41, the tip position of the bucket 8 of the work implement 41, and the angle of the bucket 8 with respect to the target surface.
[0034] The operation control unit 103 controls the operation of the hydraulic excavator (machine 42 and work device 41) by controlling the hydraulic system 24, which includes the hydraulic pump unit 22, the plurality of hydraulic actuators (4, 10, 11, 12, 14a), and the control valve unit 23. The operation control unit 103 calculates operation targets for the machine body 42 and work device 41 that satisfy predetermined conditions, based on the target surface that is the calculation result of the target setting unit 102 and the position information and attitude information of the machine body 42 and work device 41 that are the calculation result of the positioning calculation unit 101. The operation control unit 103 controls the hydraulic system 24 so that the operation of the machine body 42 and work device 41 achieves the operation targets.
[0035] For example, the operation control unit 103 performs part of the function of a machine control system, such as controlling the bucket 8 to move along the target surface and restricting the operation so that the tip of the bucket 8 does not come closer than a certain distance to the target surface.
[0036] The positioning calculation unit 101 may have a function of verifying the accuracy of the attitude information of the calculation results. The positioning calculation unit 101 determines whether or not an abnormality has occurred in the positioning results of each of the inertial measurement units 25, 26, 27, and 28, and outputs the abnormality determination result to the display control unit 104 and the operation control unit 103. The positioning calculation unit 101 also determines whether or not the accuracy of the angle information of the calculation results of the attitude detection device 29 has decreased, and outputs the accuracy determination result to the display control unit 104 and the operation control unit 103.
[0037] If an abnormality occurs in the positioning results of each of the inertial measurement units 25, 26, 27, and 28, or if the accuracy of the angle information calculated by any of the four inertial measurement units 25, 26, 27, and 28 does not satisfy a preset required accuracy, the display control unit 104 stops the execution of the guidance and displays a warning to interrupt the guidance on the display device 19b. In other words, if an abnormality occurs in the positioning results or the accuracy of the angle information deteriorates, a screen is displayed on the display device 19b to alert the operator.
[0038] The operation control unit 103 stops the machine control function if an abnormality occurs in the positioning results of each inertial measurement unit 25, 26, 27, 28, or if the accuracy of the angle information calculated by any of the four inertial measurement units 25, 26, 27, 28 does not meet the predetermined required accuracy.
[0039] The functions of the controller 100 will be described in detail with reference to FIG. 3 . FIG. 3 is a block diagram showing the functions of the controller 100 in detail. As shown in FIG. 3 , the positioning calculation unit 101 described above includes a state calculation unit 111 that calculates the state of the hydraulic excavator 1, such as the position and velocity of the hydraulic excavator 1, using the detection signals from the attitude detection device 29, the detection signals from the position detection device 35, and geometric information about the hydraulic excavator 1. The target setting unit 102 described above includes a target data calculation unit 121 that calculates target coordinates of the toe of the bucket 8, and a constraint condition setting unit 122 that sets constraint conditions used in model predictive control. The operation control unit 103 described above includes a deviation determination unit 131 that determines whether a deviation from the constraint conditions has occurred based on the positional relationship between the bucket 8 and the target surface, a predictive control unit 132 that performs predictive control using a predictive control model, an actuator control unit 133 that controls the operation of the hydraulic actuator based on the calculation results of the predictive control unit 132, and a calculation condition change unit 134 that changes the calculation conditions when a deviation from the constraint conditions has occurred. The display control unit 104 described above includes an attention drawing unit 141 that displays an image on the display device 19b to draw the attention of the operator.
[0040] The state calculation unit 111 calculates three-dimensional coordinates of a predetermined position of the hydraulic excavator 1, including coordinates representing the current position of the bucket 8, based on the attitude of the work implement 41 detected by the attitude detection device 29, the position of the machine body 42 detected by the position detection device 35, and geometric information about the hydraulic excavator 1. The coordinates of the hydraulic excavator 1, which are the calculation results, are, for example, global coordinate system coordinates. Note that the global coordinate system coordinates can be converted into site coordinate system coordinates or excavator reference coordinate system coordinates. The geometric information about the hydraulic excavator 1 includes, for example, the boom length, which is the length from the boom pin 6 a to the arm pin 7 a, the arm length, which is the length from the arm pin 7 a to the bucket pin 8 a, and the bucket length, which is the length from the bucket pin 8 a to the tip of the bucket 8, and is stored in advance in the storage device 62. The state calculation unit 111 executes geometric calculations for the hydraulic excavator 1 and does not include any distinctive calculation method, so a description of the calculation method will be omitted.
[0041] The state calculation unit 111 can simultaneously calculate the coordinates of multiple positions on the hydraulic excavator 1. Any position on the hydraulic excavator 1 can be set as the predetermined position (predetermined portion) of the hydraulic excavator 1, such as the tip and back of the bucket 8, any position on the boom 6 and arm 7, or any position on the rotating bed 3.
[0042] The state calculation unit 111 calculates state quantities (e.g., hydraulic cylinder extension / contraction speed, extension / contraction acceleration, etc.) representing the operating state of the hydraulic actuators (10, 11, 12) based on the attitude information of the working device 41 detected by the attitude detection device 29. For example, the state calculation unit 111 calculates the length of the hydraulic cylinders (10, 11, 12) by performing geometric calculations using angle information of the driven members from the attitude detection device 29. The state calculation unit 111 calculates the operating speed (extension / contraction speed) of the hydraulic cylinders (10, 11, 12) by time-differentiating the length of the hydraulic cylinder (cylinder length). The cylinder length is expressed as a function including angle information of the driven members (6, 7, 8). Therefore, the time derivative of the cylinder length includes the angular velocity (link angular velocity) of the driven members (6, 7, 8). Since the angular velocity detected by the inertial measurement units 26, 27, 28 corresponds to the link angular velocity, this value can be used. The state calculation unit 111 can also calculate the expansion / contraction acceleration of the hydraulic cylinders (10, 11, 12). To calculate the cylinder expansion / contraction acceleration, the link angular acceleration is required. The link angular acceleration can be calculated as an approximation using the time change in angular velocity detected by the inertial measurement units 26, 27, 28.
[0043] The target data calculation unit 121 sets a target excavation surface Se, which is a target surface St to be excavated, based on the construction information stored in the storage device 62 and the position of the machine body 42 calculated by the state calculation unit 111. Furthermore, the target data calculation unit 121 calculates time-series data of target coordinates from the present time to a predetermined time in the future so that the toe of the bucket 8 moves along the target excavation surface Se.
[0044] 4A to 4C are diagrams showing examples of target surfaces St. FIG. 4A shows an example in which the target surface St is a horizontal plane, FIG. 4B shows an example in which the target surface St is a slope, and FIG. 4C shows an example in which multiple target surfaces St are set. Note that, as shown in FIG. 4C , when multiple target surfaces St1, St2 are set, the target data calculation unit 121 calculates the shortest distance from the toe of the bucket 8 to the target surfaces St1, St2 for all target surfaces St1, St2 within the working range, and selects the target surface St that is shortest from the toe of the bucket 8 based on the calculation results, i.e., the target surface St that is closest to the tip of the bucket 8, as the target excavation surface Se. Note that, when there is only one target surface St, the target data calculation unit 121 sets that target surface St as the target excavation surface Se.
[0045] 4A to 4C, the target excavation surface Se corresponds to the boundary surface between the operation limited area A1, in which operation of the hydraulic excavator 1 is permitted, and the intrusion prevention area A2, in which intrusion of the hydraulic excavator 1 is prevented. The controller 100 operates the working implement 41 so as to move the toe of the bucket 8, which is positioned away from the target excavation surface Se, closer to the target excavation surface Se. Furthermore, the controller 100 operates the working implement 41 so as to move the toe of the bucket 8 along the target excavation surface Se. In these operations, the working implement 41 operates within the operation limited area A1 and is prevented from intruding into the intrusion prevention area A2. In other words, excavation beyond the target excavation surface Se is prevented.
[0046] The target data calculation unit 121 calculates a toe target speed Vt, which is a target value for the speed of the toe of the bucket 8 that satisfies predetermined conditions, based on the set target excavation surface Se, coordinates representing the position of the toe of the bucket 8 (hereinafter also referred to as toe coordinates) that are the results of calculation by the state calculation unit 111, and the amount and direction of operation of the operation devices 18a, 18b. This calculation is intended to control driving assistance that satisfies predetermined conditions while respecting the operation of the operation devices 18a, 18b by the operator. For example, the target data calculation unit 121 calculates the toe target speed Vt of the bucket 8 according to the direction and amount of operation of the operation devices 18a, 18b, while satisfying the condition that the tip of the bucket 8 does not sink below the target excavation surface Se. The method of calculating the toe target speed Vt is well known, so a description thereof will be omitted.
[0047] The target data calculation unit 121 calculates time-series data of the toe target coordinate ξr, which is the target value of the coordinate of the toe of the bucket 8 in a time interval from time k to a predetermined time ahead, based on, for example, the toe coordinate ξ(k) of the bucket 8 at time k (the time at which calculation is made) and the toe target velocity Vt(k) at time k. For example, assuming that the toe of the bucket 8 moves at a constant velocity of the toe target velocity Vt(k), the toe target coordinate ξr(k+M) at prediction step M can be obtained by adding a value obtained by multiplying the control period (interval between calculation steps) Δt by the toe target velocity Vt(k) to the toe target coordinate ξr(k+M-1) at the previous step M-1.
[0048] When the calculated toe target coordinate ξr reaches the target excavation surface Se, the target data calculation unit 121 sets the toe target coordinate ξr from that time onwards on the target excavation surface Se. In this way, the toe target coordinate ξr from time k+1 to time k+N (N is a predetermined number of predicted steps) are calculated.
[0049] The constraint condition setting unit 122 shown in Fig. 3 sets constraint conditions based on the position of the target excavation surface Se set by the target data calculation unit 121. For example, as shown in Fig. 4A, when the target excavation surface Se is given as a horizontal surface, the constraint condition for preventing the toe (control point) of the bucket 8 from going beyond the target excavation surface Se is expressed by the following equation (1a). Similarly, the constraint condition for preventing a predetermined position (control point) of the back surface of the bucket 8 from going beyond the target excavation surface Se is expressed by the following equation (1b). Note that the toe coordinate ξ representing the position of the toe of the bucket 8 and the back surface coordinate η representing the position of the back surface of the bucket 8 are specified by Cartesian coordinate system coordinates with the horizontal axis as the x-axis and the vertical axis as the z-axis. The x-coordinate of the toe coordinate ξ of the bucket 8 is x 1 The z coordinate of the tip coordinate ξ of the bucket 8 is written as z 1 The x coordinate of the back surface coordinate η of the bucket 8 is written as x 2 The z coordinate of the back coordinate η of the bucket 8 is z 2 It is written as follows.
[0050]
[0051] Here, ε is the allowable excavation amount. In general construction, the allowable excavation amount ε is set to about 2 cm. The allowable excavation amount ε can be set to any value using the user interface 19. h is the height (z coordinate) of the target excavation surface Se.
[0052] 4B , when the target excavation surface Se is given as a slope, the constraint condition for preventing the toe of the bucket 8 from going beyond the target excavation surface Se is expressed by the following equation (2a): Similarly, the constraint condition for preventing the back surface of the bucket 8 from going beyond the target excavation surface Se is expressed by the following equation (2b):
[0053]
[0054] Here, a is the slope of the straight line in the Cartesian coordinate system representing the target excavation surface Se, and b is the intercept.
[0055] 4C , when the target surface St is given as a combination of a horizontal plane and an inclined plane, the target surface St closest to the bucket 8 is selected as the target excavation surface Se, as described above. Therefore, when the target excavation surface Se changes in accordance with the movement of the bucket 8, the constraint conditions also change. In this way, the constraint condition setting unit 122 sets the constraint conditions for preventing the working implement 41 from entering the intrusion prevention area A2 based on the position of the bucket 8 (toe coordinates and back coordinates) and the target surface St.
[0056] 3 executes model predictive control that can be easily applied to the operation control of the hydraulic excavator 1. The operation control unit 103 controls the operation of the working device 41 based on a control input that causes a predicted value of a state quantity (position or speed) of a predetermined part of the working device 41, obtained using the prediction model, to follow its target value.
[0057] The motion control unit 103 can be used to control the coordinates of any location on the working implement 41 of the hydraulic excavator 1. For ease of explanation, the following will specifically describe a case where the coordinate (toe coordinate) ξ of the position of the toe (tip) of the bucket 8 is set as the control target. The motion control unit 103 can simultaneously control the rotating unit 3, the traveling unit 2, the boom 6, the arm 7, and the bucket 8, but for ease of explanation, the following will specifically describe a case where it controls only the hydraulic actuators (boom cylinder 10, arm cylinder 11, and bucket cylinder 12) of the working implement 41. The motion control unit 103 performs position tracking control to cause the actual toe coordinates of the bucket 8 to track the target toe coordinates.
[0058] The deviation determination unit 131 determines whether the toe coordinate ξ and the back coordinate η of the bucket 8 calculated by the state calculation unit 111 deviate from the constraint conditions set by the constraint condition setting unit 122. In other words, the deviation determination unit 131 determines whether a deviation from the constraint conditions has occurred. The constraint conditions are expressed by inequalities such as equations (1a), (1b), (2a), and (2b). Therefore, the deviation determination unit 131 can easily determine whether the constraint conditions are satisfied or deviated from.
[0059] When model predictive control, which will be described later, is being executed, deviation from the constraint conditions rarely occurs during normal operation. However, as described above, if the target plane St set by the operator is inappropriate, for example, if the target plane St is set in a state in which the toe coordinates of the bucket 8 exceed the target plane St, or if there is an error in the calculation result of the vehicle position due mainly to a deterioration in the GNSS positioning status, for example, if the toe coordinates of the bucket 8 exceed the target plane St due to a deterioration in the GNSS positioning status and a state in which the toe coordinates of the bucket 8 exceed the target plane St is detected when the GNSS positioning status is restored, deviation from the constraint conditions may occur during the calculation process. In other words, a situation may arise in which the toe coordinate ξ or the back coordinate η of the bucket 8 is in a position that does not satisfy the constraint conditions. Note that if the calculation cycle of the model predictive control is slow or if the dynamics of the hydraulic excavator 1 assumed within the model predictive control differ from the actual dynamics of the hydraulic excavator 1, deviation from the constraint conditions may occur.
[0060] The prediction control unit 132 calculates a target operating speed (speed command value) vref for each hydraulic actuator (10, 11, 12) based on the toe position (toe coordinate) ξ(k) of the bucket 8 at the current time k (time at the time of calculation) calculated by the state calculation unit 111, time series data of the target toe positions (target toe coordinates) ξr of the bucket 8 from time k+1 to time k+N calculated by the target data calculation unit 121, and the constraint conditions set by the constraint condition setting unit 122. The calculation of the target operating speed is realized using model predictive control.
[0061] The prediction control unit 132 calculates a target operating speed vref (extension / contraction speed) for the boom cylinder 10, the arm cylinder 11, and the bucket cylinder 12 so that the toe coordinate ξ of the bucket 8 follows the time-series data of the toe target coordinate ξr of the bucket 8, which is the calculation result of the target data calculation unit 121. Specifically, the prediction control unit 132 calculates the target operating speed vref of each hydraulic actuator (10, 11, 12) based on the deviation between a predicted value of the toe coordinate of the bucket 8 in a predetermined time interval, which is obtained by using a prediction model that predicts the toe coordinate, which is a state quantity of the toe of the bucket 8, using the speed of each hydraulic actuator (10, 11, 12) as a control input, and the time-series data of the toe target coordinate ξr of the bucket 8, which is the calculation result of the target data calculation unit 121.
[0062] The target operating speed vref is calculated taking into consideration the following: When the controller 100 controls the hydraulic actuators (10, 11, 12), the actual speed response v of each hydraulic actuator (10, 11, 12) follows the target operating speed vref with some delay. This relationship can be expressed, for example, by a second-order delay transfer function such as equation (3).
[0063]
[0064] In equation (3), s represents the Laplace transform, ζ represents the damping coefficient, and ω represents the natural angular frequency. The subscript i is a number corresponding to the hydraulic actuator, with i=1 representing the boom cylinder 10, i=2 representing the arm cylinder 11, and i=3 representing the bucket cylinder 12.
[0065] The transfer function shown in equation (3) can be converted into the state space expression shown in equation (4). In equation (4), l and a included in the state vector x indicate the actual displacement and extension / retraction acceleration response of the hydraulic cylinder, respectively. u is the target operating speed vref as a control input. As in equation (3), the subscript i is a number corresponding to the hydraulic actuator (boom cylinder 10, arm cylinder 11, bucket cylinder 12).
[0066]
[0067] Regarding equation (4), by collecting the state vectors x i and the control inputs u i for all the hydraulic actuators (i=1, 2, 3), equation (5) can be obtained.
[0068]
[0069] By using the control period Δt, equation (5) can be discretized, for example, as in equation (6a) below. Note that, since equation (5) is a linear system, it can also be accurately discretized using equation (6b) below.
[0070]
[0071] If the target operating speed vref of each hydraulic cylinder (10, 11, 12) can be determined as the control input u, it is possible to predict the state vector x for a predetermined time period by using equation (6a) or equation (6b). The state vector x includes the extension / retraction length (displacement) l of each hydraulic cylinder (10, 11, 12). Therefore, the extension / retraction length l of each hydraulic cylinder (10, 11, 12) that drives the working device 41 can be calculated by i and the angle θ of each driven member (6, 7, 8) that constitutes the working device 41 i The function h that defines the geometric relationship between 1 By using the angle θ of each driven member (6, 7, 8), i That is, the angle θ i can be calculated from the following equation (7).
[0072]
[0073] Angle θ 1 is the inclination angle of the boom 6 with respect to the x-axis (boom angle), and the angle θ 2 is the inclination angle (arm angle) of the arm 7 relative to the boom 6, and angle θ 3 is the inclination angle of the bucket 8 relative to the arm 7 (bucket angle).
[0074] Furthermore, the angle θ of each component (6, 7, 8) of the working device 41 i and a function h that defines the geometric relationship between the tip position of the bucket 8 2It is possible to calculate the toe coordinate ξ of the bucket 8 by using the above formula. That is, the toe coordinate ξ can be calculated from the following formula (8).
[0075]
[0076] Note that equations (7) and (8) are simple geometric calculations without any special ingenuity, and therefore detailed descriptions of the equations will be omitted. By using the above-described series of equations (3) to (8), it is possible to determine the time-series data of the control input u in the time interval from the calculation time k to a predetermined time later, k+N, i.e., the time-series data of the target operating speed vref of each hydraulic cylinder (10, 11, 12). This makes it possible to predict the trajectory (time-series data of coordinates) of the toe coordinate ξ of the bucket 8 in that time interval.
[0077] The prediction control unit 132 calculates the predicted trajectory of the toe coordinate ξ of the bucket 8 by using the above-mentioned prediction model in which the speed of each hydraulic actuator (10, 11, 12) is used as the control input u. The prediction control unit 132 calculates time series data of the control input u such that the calculated predicted trajectory of the toe coordinate ξ approaches the time series data (trajectory) of the toe target coordinate ξr of the bucket 8. The approach of the predicted trajectory of the toe coordinate ξ to the trajectory of the toe target coordinate ξr corresponds to minimizing the deviation e(k) thereof within a predetermined time interval (e(k) = ξ(k) - ξr(k)).
[0078] Furthermore, the smaller the control input u(k) that reduces the deviation e(k), i.e., the smaller the target operating speed vref, the smaller the operation of each hydraulic cylinder (10, 11, 12). From this, it can be considered that the smaller the control input u(k), the more efficiently the hydraulic excavator 1 can be controlled.
[0079] These requirements correspond to minimizing the value of the evaluation function J given by equation (9). In equation (9), S, Q, and R are weighting matrices. It is desirable that the control input u be calculated so as to minimize the evaluation function J. However, by adjusting the parameters S, Q, and R, it is possible to select whether to prioritize eliminating the deviation e(k) or to prioritize reducing the control input u (target operating speed vref).
[0080]
[0081] The evaluation function J in equation (9) is an example, and the control input u(k) may be calculated using a different evaluation function as long as the above-mentioned concept is followed.
[0082] The hydraulic actuators that drive the working device 41 are hydraulic cylinders (10, 11, 12), and so there are limitations to the range in which they can be extended or retracted. Similarly, there are limitations to the extension / retraction speed and acceleration of the hydraulic cylinders (10, 11, 12). These conditions can be expressed by the following equation (10).
[0083]
[0084] In formula (10), the subscript min indicates a minimum value and the subscript max indicates a maximum value. Different or the same minimum and maximum values are set for the boom cylinder 10, the arm cylinder 11, and the bucket cylinder 12, respectively, depending on the specifications. The constraint condition in formula (10) is specific to the hydraulic excavator to be controlled and does not depend on the construction information. In other words, this constraint condition is not set by the constraint condition setting unit 122, and is not subject to management of deviation determination by the deviation determination unit 131. In the first place, the constraint condition in formula (10) is a physical constraint condition, and therefore a situation in which this constraint condition is deviated from cannot occur during operation of the hydraulic excavator 1.
[0085] The constraint conditions (equations (1a), (1b), (2a), and (2b)) determined by the constraint condition setting unit 122 can be expressed as the more general equation (11) by using a function c.
[0086]
[0087] With the above preparations, calculations are performed using model predictive control. Specifically, the calculations of model predictive control are performed by solving the optimization problem of equation (12) with constraints, and the optimal control input u * Time series data U *In the model predictive control, the control input U of the time series (times k, k+1, ..., k+N) is calculated. * Among them, the control input (first input) u at time k * Only (k) is used as the actual target motion speed.
[0088]
[0089] The optimization problem of equation (12) means calculating a control input u such that the toe coordinate ξ of the bucket 8 predicted using a prediction model follows the toe target coordinate ξr of the bucket 8 calculated in response to the operation of the operating devices 18a, 18b while satisfying the constraints. This means automatically calculating optimal target operating speeds for the hydraulic actuators (10, 11, 12) for a predetermined time from the current time so that the deviation between the predicted value of the toe coordinate ξ and the toe target coordinate ξr is small. Therefore, even if the number of hydraulic actuators to be controlled is increased, such as the hydraulic motor that rotates the rotating bed 3 and the rotary tilt bucket, it is possible to calculate target operating speeds that optimize the overall operation of the hydraulic excavator 1 without having to individually calculate the target operating speeds for each hydraulic actuator.
[0090] In this way, the predictive control unit 132 calculates the target operating speeds of the boom cylinder 10, the arm cylinder 11, and the bucket cylinder 12 in order to control the toe coordinate ξ of the bucket 8. The calculation results of the predictive control unit 132 are output to the actuator control unit 133.
[0091] The actuator control unit 133 predicts the operating speed (actual speed) of the hydraulic actuators (10, 11, 12) calculated by the state calculation unit 111 as the target operating speed vref(u *The actuator control unit 133 performs feedback control of the drive of the hydraulic actuators (10, 11, 12) so that the actual operating speed Vref coincides with the target operating speed Vref (corresponding to (k)). Specifically, the actuator control unit 133 calculates a command value for the control valve unit 23 that realizes the target operating speed Vref based on the deviation between the operating speed (actual speed) of the hydraulic actuators (10, 11, 12) and the target operating speed Vref of the hydraulic actuators. The actuator control unit 133 outputs a control signal (e.g., control current) corresponding to the command value to the control valve unit 23. Such a method of controlling a hydraulic actuator is well known, so a detailed description thereof will be omitted.
[0092] The predictive control unit 132 calculates the control input U by solving the optimization problem of equation (12). * However, if the state quantity x(k) at the current time (k) deviates from the constraint condition due to the operator setting the target plane St above the toe of the bucket 8 or the GNSS positioning condition deteriorating while the hydraulic excavator 1 is in operation, the prediction control unit 132 may experience a risk of the optimization calculation becoming unstable. As a result, the operation of the hydraulic excavator 1 may become unstable.
[0093] In a situation where the optimization calculation is performed unstably, the calculated control input U * If the operation of the hydraulic excavator 1 is continued in accordance with the above, there is no guarantee that the constraint condition of equation (11) will be satisfied. Furthermore, the value of the evaluation function J of equation (9) cannot be reduced, and the toe position of the bucket 8 may move away from the toe target coordinate ξr. Clearly, neither of these behaviors is desirable.
[0094] In order to reliably avoid such a situation, when the deviation determination unit 131 determines that the constraint condition (Equation (11)) has been deviated from, the calculation condition change unit 134 changes the calculation conditions to prohibit or stop the operation of the hydraulic excavator 1. For example, the calculation condition change unit 134 changes the calculation conditions to prohibit or stop the operation of the hydraulic excavator 1. * is overwritten to 0. The control input calculated by the predictive control unit 132 is the target operating speed of the hydraulic actuators (10, 11, 12). *By setting ≠0, the operation of the hydraulic actuators (10, 11, 12) can be prohibited or stopped. In other words, when the hydraulic excavator 1 is stopped and a deviation from the constraint conditions has occurred, the hydraulic excavator 1 cannot be operated even if the operator starts operation, and the stopped state is maintained. In other words, operation of the stopped work implement 41 is prohibited. Furthermore, when a deviation from the constraint conditions occurs while the hydraulic excavator 1 is operating, the operation of the hydraulic excavator 1 stops even if the operator continues operation. In this way, the calculation condition changing unit 134 and the prediction control unit 132 execute operation prohibition control to prohibit or stop the operation of the hydraulic excavator 1 when a deviation from the constraint conditions has occurred.
[0095] Depending on the program stored in the controller 100, the control input U * If the calculation condition changing unit 134 overwrites the constraint condition (equation (11)) with 0, there is a risk of a division by zero (error) occurring during the calculation process. For this reason, it is preferable to adopt the following method as a method of operation prohibition control. When the deviation determination unit 131 determines that there is a deviation from the constraint condition (equation (11)), the calculation condition changing unit 134 invalidates the constraint condition (equation (11)) related to the toe position. To invalidate the constraint condition, it is sufficient to set a self-evident constraint condition such as the following equation (13), which is always satisfied, instead of the constraint condition of equation (11). The calculation condition changing unit 134 invalidates the constraint condition and executes a calculation process in which the current toe coordinate ξ(k) is substituted for the toe target coordinate ξr(k).
[0096]
[0097] As a result, the deviation e(k) of equation (9) calculated by the predictive control unit 132 becomes 0, and the control input U * = 0 is calculated as a trivial solution. When this method is used, the operation of the hydraulic actuator is also prohibited, so undesirable behavior is avoided.
[0098] When the above-described operation prohibition control (stop control) is executed, the operation of the hydraulic excavator 1 stops regardless of whether the lever is operated or not. For this reason, it is expected that the operator will think that some kind of abnormality has occurred. Therefore, when the deviation determination unit 131 determines that the constraint condition (Equation (11)) has been violated, the attention calling unit 141 notifies the operator via the user interface 19 of the reason why the operation of the hydraulic excavator 1 has stopped. The attention calling unit 141 displays, for example, an illustration image or a message indicating that the toe of the bucket 8 is positioned below the target excavation surface Se on the display screen of the user interface 19 (display device 19b). In this way, when the deviation determination unit 131 determines that the constraint condition has been violated, the attention calling unit 141 executes output control (notification control) to output the determination result to the user interface (notification device) 19.
[0099] Note that, when a deviation from the constraint conditions occurs, the above-mentioned operation prohibition control may not be executed, and only the above-mentioned output control (notification control) by the attention calling unit 141 may be executed. In this case, the attention calling unit 141 displays an attention calling screen on the display screen of the display device 19b to notify the operator that an abnormality has occurred. The attention calling unit 141 may also control a speaker provided in the user interface 19 to call the operator's attention by outputting a sound from the speaker. This allows the operator to suspend lever operation until the state returns to a state in which the constraint conditions are satisfied (until the abnormality is resolved). As a result, unstable operation of the hydraulic excavator 1 can be prevented.
[0100] Next, an example of the processing procedure of the controller 100 according to the first embodiment will be described with reference to Fig. 5. Fig. 5 is a flowchart showing an example of the processing procedure of the controller 100. It should be noted that the processing procedure of the controller 100 according to this embodiment is not limited to the processing procedure of the flowchart shown in Fig. 5. The processing of the flowchart shown in Fig. 5 is started when the ignition switch of the hydraulic excavator 1 is turned on, and is repeatedly executed at a predetermined calculation cycle.
[0101] As shown in FIG. 5, in step S110, the controller 100 (positioning calculation unit 101) acquires sensor data representing the position detected by the position detection device 35 and sensor data representing the attitude (angle, etc.) detected by the attitude detection device 29.
[0102] In the next step S115, the controller 100 (state calculation unit 111) calculates the attitude state and operating state of the hydraulic excavator 1 based on the position information (coordinates of the antennas 36, 37, etc.) and attitude information (angle of the driven member, etc.) of the hydraulic excavator 1 acquired in step S110. In the calculation process for the attitude state of the hydraulic excavator 1, for example, three-dimensional coordinates of predetermined parts of the hydraulic excavator 1, such as the tip of the bucket 8 and parts of the boom 6 and arm 7, are calculated. In the calculation process for the operating state of the hydraulic excavator 1, for example, detection information from the attitude detection device 29 is used to calculate operating state quantities (operation information such as the actual speed at the time of calculation) of each hydraulic actuator (4, 10, 11, 12, 14a).
[0103] In the next step S120, the controller 100 (target data calculation unit 121) refers to the coordinates of a specific part of the hydraulic excavator 1 and the coordinates of the toe of the bucket 8, which are the results of the calculation in step S115, and selects a target excavation surface Se from the construction information acquired from a construction management system, etc.
[0104] In the next step S125, the controller 100 (target data calculation unit 121) calculates a target speed Vt of the toe of the bucket 8 in accordance with the operation of the operating devices 18a, 18b while satisfying predetermined conditions, based on the positions of each part of the hydraulic excavator 1 at the current time calculated in step S115 and the target excavation surface Se selected in step S120.
[0105] Furthermore, the controller 100 (target data calculation unit 121) calculates time series data of the target toe coordinate ξr of the toe of the bucket 8 in the time interval from the calculation point in time (time k) to N steps ahead (a predetermined time ahead) based on the target velocity Vt of the toe of the bucket 8 and the current toe coordinate ξ of the bucket 8 calculated in step S115.
[0106] In the next step S130, the controller 100 (constraint condition setting unit 122) sets the constraint condition (Equation (11)) based on the position of the target excavation surface Se set in step S120.
[0107] In the next step S135, the controller 100 (deviation determination unit 131) determines whether the constraint condition set in step S130 is satisfied based on the toe coordinate ξ of the bucket 8 calculated in step S115 and equation (11) of the constraint condition. If the constraint condition is satisfied, i.e., if a deviation from the constraint condition has not occurred, the process proceeds to step S140. If the constraint condition is not satisfied, i.e., if a deviation from the constraint condition has occurred, the process proceeds to step S150.
[0108] In step S140, controller 100 (prediction control unit 132) uses the toe coordinate ξ(k) of bucket 8 at the calculation time point (step k) calculated in step S115, the time-series data of the target toe coordinate ξr of bucket 8 calculated in step S125, and the constraint conditions determined in step S130 to calculate the target operating speed vref of each hydraulic actuator (10, 11, 12) as the control input u by calculation based on the prediction model (for example, calculation of the above-mentioned equation (12)).
[0109] In step S150, the controller 100 (calculation condition change unit 134) changes the constraint condition determined in step S130 from equation (11) to equation (13), and executes a calculation process to substitute the current toe coordinate ξ(k) into the toe target coordinate ξr(k).
[0110] In the next step S160, the controller 100 (attention calling unit 141) outputs a display control signal for a warning screen including an image notifying the operator that a deviation from the constraint conditions has occurred to the display device 19b. As a result, the warning screen is displayed on the display screen of the display device 19b, thereby calling the operator's attention. After the process of notifying the operator of the deviation (the process of step S160), the process proceeds to the above-mentioned step S140.
[0111] When the predictive control calculation process (step S140) is completed, the process proceeds to step S145. In step S145, the controller 100 (actuator control unit 133) outputs a control signal corresponding to the target operating speed vref of each hydraulic actuator (10, 11, 12) calculated in step S140 to the controlled object (control valve unit 23). As a result, each hydraulic actuator (10, 11, 12) is driven in accordance with the control signal.
[0112] The completion of the process of step S145 ends one control cycle, and the controller 100 moves on to the next control cycle. That is, in the next control cycle, the processes from step S110 onwards are executed again. Note that the above-described process flow is an example, and the order can be changed as appropriate. For example, the processes of step S150 and step S160 may be executed in reverse order, or may be executed in parallel. Also, in FIG. 5, an example was described in which, when a deviation from the constraint condition occurs, the formula of the constraint condition is changed and a calculation process is executed in which the current toe coordinate ξ(k) is substituted for the toe target coordinate ξr(k) to set the deviation e(k) to 0, and then a predictive control calculation process is executed. However, instead of these processes, it is also possible to execute the predictive control calculation process by changing the control input U * Alternatively, a single process may be performed to set the value of the predictive control calculation process to 0. In this case, the predictive control calculation process is omitted.
[0113] According to the above-described embodiment, the following advantageous effects are achieved.
[0114] (1) The hydraulic excavator (work machine) 1 includes a working device 41 and a machine body 42 to which the working device 41 is attached. The working device 41 has a plurality of driven members (bucket 8, arm 7, and boom 6) including a bucket (work implement) 8, and a plurality of hydraulic actuators (bucket cylinder 12, arm cylinder 11, and boom cylinder 10) that drive the plurality of driven members. The hydraulic excavator 1 includes an attitude detection device 29 that detects the attitude of the working device 41, a position detection device 35 that detects the position of the machine body 42, and a controller 100 that controls the operation of the working device 41.
[0115] The controller 100 calculates the current coordinates of the bucket 8 based on the attitude of the work implement 41 detected by the attitude detection device 29 and the position of the machine body 42 detected by the position detection device 35 (S110, S115 in FIG. 5 ). The controller 100 sets constraint conditions in model predictive control for preventing the work implement 41 from entering the intrusion prevention area A2 based on the coordinates of the bucket 8 and a target excavation surface Se, which is the boundary surface between the operation limited area A1 in which operation of the work implement 41 is permitted and the intrusion prevention area A2 in which intrusion of the work implement 41 is prevented (S130 in FIG. 5 ). The controller 100 performs model predictive control to calculate a target operating speed vref of the hydraulic actuators (10, 11, 12) for a predetermined time from the current time so as to reduce the deviation e between the coordinates of the bucket 8 (tip coordinate ε) and the target coordinates of the bucket 8 (tip target coordinate εr) while satisfying the constraint conditions (S140 in FIG. 5 ). The controller 100 calculates the operating speeds of the hydraulic actuators (10, 11, 12) (S115 in FIG. 5) based on the attitude of the working device 41 detected by the attitude detection device 29. The controller 100 controls the hydraulic actuators (10, 11, 12) so that the operating speeds of the hydraulic actuators (10, 11, 12) match the target operating speeds (S145 in FIG. 5).
[0116] The controller 100 determines whether the position of the control point of the working implement 41 (for example, the toe or back surface of the bucket 8) deviates from the constraint conditions (S135 in FIG. 5). If the controller 100 determines that the position of the control point of the working implement 41 deviates from the constraint conditions, for example, because the target excavation surface Se is set so that the coordinates of the bucket 8 are located in the intrusion prevention area A2, or because the GNSS positioning state (detection accuracy of the position detection device 35) has deteriorated, the controller 100 executes output control (S160 in FIG. 5) to output the determination result to the user interface (notification device) 19, and also executes operation prohibition control (S150, S140 in FIG. 5) to prohibit or stop the operation of the working implement 41. This configuration makes it possible to prevent unstable operation of the hydraulic excavator 1.
[0117] The controller 100 according to the present embodiment has been described as an example in which it executes both output control for alerting the operator and operation prohibition control for forcibly prohibiting or stopping the operation of the hydraulic excavator 1. However, the controller 100 may execute only one of output control and operation prohibition control. For example, when only output control is executed, the operator can know that a deviation from the constraint condition has occurred. Since the operator can interrupt the operation as necessary, unstable operation of the hydraulic excavator 1 can be prevented. Furthermore, when only operation prohibition control is executed, the working device 41 is automatically stopped, thereby preventing unstable operation of the hydraulic excavator 1.
[0118] (2) For example, in the operation prohibition control, the controller 100 sets the target operating speed vref of the hydraulic actuators (bucket cylinder 12, arm cylinder 11, and boom cylinder 10) to 0. The controller 100 controls the hydraulic actuators (10, 11, 12) so that the operating speeds of the hydraulic actuators (10, 11, 12) match the target operating speed vref, and therefore, by setting the target operating speed vref to 0, the operation of the hydraulic actuators (10, 11, 12) can be prohibited or stopped.
[0119] (3) For example, during operation prohibition control, the controller 100 sets the target coordinates of the bucket 8 (tip coordinate ξ) to the current coordinates of the bucket 8 (tip target coordinate ξr), and invalidates the constraint condition (equation (11)) during normal control. The controller 100 invalidates the constraint condition during normal control by changing the equation of the constraint condition from equation (11) during normal control to equation (13) during operation prohibition control. With this configuration, it is possible to prohibit or stop the operation of the hydraulic actuators (10, 11, 12) while reducing the risk of malfunctions in the calculation process of the controller 100 (errors due to division by zero).
[0120] Second Embodiment A hydraulic excavator 1 according to a second embodiment of the present invention will be described with reference to Figures 6A to 10A. Components that are the same as or equivalent to those described in the first embodiment are given the same reference symbols, and differences will be mainly described. In the first embodiment, an example was described in which the target excavation surface Se, which serves as the boundary surface between the movement limitation area A1 and the intrusion prevention area A2, is set inside the excavation target (for example, the ground). In contrast, in the second embodiment, the intrusion prevention surface Sp, which serves as the boundary surface between the movement limitation area A1 and the intrusion prevention area A2, is set in the air.
[0121] For example, as shown in Fig. 6A , when the hydraulic excavator 1 and the operator 50 are performing trench digging work at a small work site, the controller 200 (see Fig. 7 ) sets an intrusion prevention surface Sp in front of the hydraulic excavator 1. The intrusion prevention surface Sp is positioned between the hydraulic excavator 1 and the operator 50. As a result, the area on the operator 50 side of the intrusion prevention surface Sp is defined as an intrusion prevention area A2, and the area on the hydraulic excavator 1 side of the intrusion prevention surface Sp is defined as an operation limited area A1.
[0122] In the second embodiment, constraint conditions for model predictive control are set based on the position of the intrusion prevention surface Sp. This makes it possible to avoid a situation in which the working device 41 comes into contact with the worker 50. Unlike the target excavation surface Se described in the first embodiment, no immediate problems arise even if the working device 41 enters the intrusion prevention area A2. For example, as shown in FIG. 6B , there is no particular problem even if the working device 41 enters the intrusion prevention area A2 before the worker 50 arrives at the work site. Conversely, if the operation of the hydraulic excavator 1 is prohibited in such a situation, as in the first embodiment, there is a risk of a decrease in work efficiency. Therefore, in the second embodiment, constraint conditions are set based on the position of the intrusion prevention surface Sp, and control is executed that can prevent a decrease in work efficiency when a deviation from the constraint conditions occurs. The control according to the second embodiment will be described in detail below.
[0123] 7 is a block diagram showing detailed functions of the controller 200 according to the second embodiment. Like the controller 100 according to the first embodiment, the controller 200 has the function of setting a target excavation surface Se and controlling each hydraulic actuator so as to move the toe of the bucket 8 along the target excavation surface Se.
[0124] The target setting unit 102 sets not only the target excavation surface Se but also an intrusion prevention surface Sp and determines constraint conditions according to the intrusion prevention surface Sp. The intrusion prevention surface Sp is set so as not to include obstacles that the hydraulic excavator 1 must not come into contact with. Examples of obstacles include the worker 50, a fence, an overhead wire, and a work vehicle (dump truck, wheel loader). The operation limit area A1 corresponds to an area that the entire components of the hydraulic excavator 1 must not deviate from, rather than a specific location on the hydraulic excavator 1. In other words, the operation of the hydraulic excavator 1 must be controlled so that not only the tip position P0 and back position P1 of the bucket 8 of the working device 41 shown in FIGS. 6A and 6B , but also the position P2 of the connecting pin at the tip of the bucket cylinder 12 and the position P3 of the connecting pin at the tip of the arm cylinder 11, do not deviate from the operation limit area A1.
[0125] The target data calculation unit 221 sets the intrusion prevention surface Sp based on construction information from a construction management system (not shown) or input information from the user interface 19 (input device 19 a) (construction information set by the operator). If the construction information includes information about an obstacle, the target data calculation unit 221 automatically sets the intrusion prevention surface Sp between the hydraulic excavator 1 and the obstacle. If the construction information does not include information about an obstacle or if a moving obstacle such as a work vehicle is present around the hydraulic excavator 1, the target data calculation unit 221 has the operator set the intrusion prevention surface Sp via the user interface 19.
[0126] The constraint condition setting unit 222 determines the constraint condition based on the position of the intrusion prevention surface Sp set by the target data calculation unit 221. For example, as shown in FIG. 6A , a case will be described in which the intrusion prevention surface Sp is defined as a vertical plane (a plane parallel to the direction of gravity) perpendicular to the fore-and-aft direction of the revolving unit 3. In the illustrated example, the position of the intrusion prevention surface Sp is x = xd. Therefore, the constraint condition can be expressed by the equation (x(k)≦xd), which indicates that the x-coordinate x(k) of the control point P of the bucket 8 (e.g., the tip position P0 of the bucket 8) is smaller than the x-coordinate xd of the intrusion prevention surface Sp. Note that the determination of contact with an obstacle or the like is not limited to the tip of the bucket 8, but can be made at any location on the hydraulic excavator 1. The constraint condition corresponding to the intrusion prevention surface Sp can be expressed as the general equation (14) by using the function d.
[0127]
[0128] The deviation determination unit 231 determines whether or not a deviation from the constraint conditions based on the target excavation surface Se has occurred, using the coordinates of the control points P0, P1 of the bucket 8 and the constraint condition equation (11). Furthermore, the deviation determination unit 231 determines whether or not a deviation from the constraint conditions based on the intrusion prevention surface Sp has occurred, using the coordinates of the control points P0, P1, P2, P3 of the bucket 8 and the constraint condition equation (14).
[0129] Calculation condition changing unit 234 changes the calculation conditions of the model predictive control when deviation determination unit 231 confirms that a deviation from the constraint conditions has occurred and the deviation is in line with the operator's intention. This is a function that supports the operation of working device 41 so that working device 41 falls within operation limited area A1 when the operator starts trench digging work while part of working device 41 has entered intrusion prevention area A2, as shown in FIG. 6B , for example.
[0130] Based on input information from the input device 19a, the calculation condition change unit 234 determines whether the deviation of the constraint conditions of the intrusion prevention surface Sp is in line with the operator's intention, i.e., whether the operator intends to operate the working device 41. A specific example will be described below. When the deviation determination unit 231 determines that the working device 41 has deviated from the operation limited area A1 (i.e., entered the intrusion prevention area A2), the attention notification unit 241 outputs a display control signal for a warning screen to the display device 19b to alert the operator.
[0131] Fig. 8 is a diagram showing an example of an attention screen displayed on the display screen of the user interface (touch panel monitor) 19. As shown in Fig. 8, when the display device 19b receives a display control signal, it displays an attention screen corresponding to the display control signal on the display screen.
[0132] The attention-calling screen includes a deviation notification image POP1, an intention confirmation image POP2, and a selection image POP3. The deviation notification image POP1 is an image indicating that a part of the hydraulic excavator 1 has deviated from the operation limited area A1, i.e., that a deviation from the constraint conditions has occurred, and is, for example, an image of a message such as "A deviation has been confirmed, so the vehicle has been stopped." The intention confirmation image POP2 is an image for confirming with the operator whether the occurrence of the deviation from the constraint conditions is in line with the operator's intention, and is, for example, an image of a message such as "Do you want to enable assistance control to resolve the deviation?" In this way, the user interface 19 notifies the operator of information indicating that the position of the control point P of the working device 41 has deviated from the constraint conditions (deviation notification image POP1) and information for confirming whether the operator intends to operate the working device 41 (intention confirmation image POP2).
[0133] The selection image POP3 is an image for selecting whether the deviation from the constraint conditions is in line with the operator's intention, and includes, for example, a positive operation image "yes" and a negative operation image "no." The user interface 19 according to this embodiment is a touch panel monitor. Therefore, the operator can indicate whether the deviation from the constraint conditions is in line with the operator's intention by touching either the positive operation image or the negative operation image. When the positive operation image is touched, the user interface 19 outputs a positive operation signal to the controller 200. When the negative operation image is touched, the user interface 19 outputs a negative operation signal to the controller 200. Note that, if the user interface 19 is configured to include a monitor and a physical input switch (a button or a keyboard), the display of the selection image POP3 may be omitted. The positive operation signal corresponds to an operation signal indicating that the operator intends to operate the working device 41, and the negative operation signal corresponds to an operation signal indicating that the operator does not intend to operate the working device 41. The affirmative operation signal is an operation signal for returning the working device 41 to a state where it can be operated normally, and therefore can also be called a return operation signal.
[0134] When the deviation determination unit 231 determines that a deviation from the constraint condition (Equation (14)) has occurred, the calculation condition change unit 234 executes a first calculation condition change process. In the first calculation condition change process, the calculation condition change unit 234 changes the constraint condition from Equation (14) to the following self-evident constraint condition Equation (15), and executes a calculation process of substituting the current toe coordinate ξ(k) for the toe target coordinate ξr(k). This process corresponds to a process of setting a condition that prohibits the operation of the hydraulic excavator 1. As a result, the operation of the hydraulic excavator 1 is prohibited. In other words, the stopped state of the hydraulic excavator 1 is maintained until the deviation from the constraint condition (Equation (14)) is resolved or until the affirmative operation signal is input to the controller 200.
[0135]
[0136] When the calculation condition changing unit 234 receives a negative operation signal from the user interface 19, it determines that the deviation from the constraint conditions is not in line with the operator's intention. In this case, the prohibited state of operation of the hydraulic excavator 1 is maintained.
[0137] When the calculation condition change unit 234 receives a positive operation signal from the user interface 19, it determines that the deviation from the constraint conditions is in line with the operator's intention. When the deviation determination unit 231 determines that a deviation from the constraint conditions has occurred and determines that the occurrence of the deviation is in line with the operator's intention, the calculation condition change unit 234 executes a second calculation condition change process. In the second calculation condition change process, the calculation condition change unit 234 changes the calculation conditions of the model predictive control so that each of the control points P0, P1, P2, and P3, including the toe position (tip position) of the bucket 8, falls within the operational limit area A1. The second calculation condition change process will be described in detail below with reference to FIGS. 9A and 9B . The constraint conditions that define the actual operational limit area A1 are also referred to as reference constraint conditions.
[0138] FIG. 9A is a diagram showing a situation in which the bucket deviates from the actual operation limit area A1, and FIG. 9B is a diagram illustrating an alternative constraint condition that is set to move the bucket closer to the actual operation limit area A1. The alternative constraint condition is a different constraint condition from the above constraint condition equation (14). In the example shown in FIG. 9A , the intrusion prevention surface Sp that defines the actual operation limit area A1 is set to x = xd. The equation for the basic constraint condition is expressed, for example, as x≦xd. In the example shown in FIG. 9A , the x coordinate of the control point P1 of the bucket 8 is xp1 (>xd). In the second calculation condition change process, the calculation condition change unit 234 sets an alternative constraint condition in place of the obvious constraint condition set in the first calculation condition change process. The equation for the alternative constraint condition is expressed, for example, as x≦xd′. The initial value of xd′ is set to xp1. In other words, the calculation condition modification unit 234 sets the alternative constraint conditions so that an intrusion prevention surface Sp' is set at the position of the control point P1 at that time (x≦xd'). This intrusion prevention surface Sp' is a surface that defines a temporary operation limitation area A1' in which operation is temporarily permitted, and therefore will hereinafter also be referred to as the temporary intrusion prevention surface Sp'. The calculation condition modification unit 234 modifies the alternative constraint conditions so that the temporary intrusion prevention surface Sp' gradually approaches the intrusion prevention surface Sp (hereinafter also referred to as the reference intrusion prevention surface Sp) that defines the actual operation limitation area A1.
[0139] Specifically, the calculation condition change unit 234 sets the alternative constraint condition so that the alternative constraint condition approaches the actual operation limited area A1 as time passes, as shown in the following equation (16).
[0140]
[0141] Here, α is a parameter that adjusts the speed at which the current position of the bucket 8 approaches the operation limited area A1, and if the operation speed of control point P1 of the bucket 8 is vdes, then α can be defined as "α = vdes × Δt" using the control period Δt. In other words, the temporary intrusion prevention surface Sp' shifts to the left in the illustration by the distance α for every control period (unit time) Δt. The temporary intrusion prevention surface Sp' gradually approaches the reference intrusion prevention surface Sp over time, and eventually coincides with the reference intrusion prevention surface Sp.
[0142] In this way, the controller 200 according to the second embodiment controls the hydraulic actuators (10, 11, 12) by model predictive control using the alternative constraint conditions. As a result, as shown in FIG. 9B , the position of the bucket 8 approaches the actual operation limit area A1 (x = xd) so as to satisfy the alternative constraint conditions at each time, and ultimately the working implement 41 assumes a posture that fits within the operation limit area A1.
[0143] 9A illustrates an example in which the rear surface position of the bucket 8 is used as control point P1, but the control point may be another coordinate of the work implement 41. Also, while FIG. 9A illustrates an example in which there is one control point, the above-described control may be performed based on multiple control points.
[0144] When the deviation determination unit 231 determines that no deviation from the constraint conditions has occurred, the prediction control unit 232 calculates the control input U using equation (17), which is obtained by adding the constraint condition (equation (14)) of the operational limited region A1 to equations (12) and (9) of the model predictive control according to the first embodiment. * Calculate.
[0145]
[0146] When the deviation determination unit 231 determines that a deviation from the constraint condition (equation (14)) has occurred and that the occurrence of the deviation is in line with the operator's intention, the prediction control unit 232 uses equation (18) that uses the alternative constraint condition set by the calculation condition change unit 234 to calculate the control input U * It should be noted that d' in (18a) of the formula (18) corresponds to the alternative constraint condition.
[0147]
[0148] The above method has been described as an example in which the position of the working device 41 is adjusted by changing the constraint condition (by making the alternative constraint condition effective). However, the control method for keeping the working device 41 within the actual movement limitation area A1 is not limited to this. For example, the movement of the working device 41 may be controlled so that the working device 41 fits within the actual movement limitation area A1 by changing the target coordinate ξr of the tip of the bucket 8.
[0149] For example, as shown in FIG. 9A, the calculation condition change unit 234 0 Then, the actual toe coordinate of the bucket 8 ξ(k 0 ) to the target coordinates ξr(k 0 ) The toe target coordinates set here are second target coordinates (alternative toe target coordinates) that are set separately from the first target coordinates (toe target coordinates) that are set based on the target excavation surface Se. As shown in FIG. 9B , the calculation condition change unit 234 gradually brings the alternative toe target coordinate εr closer to the actual motion limitation area A1 over time. This allows the working device 41 to operate so as to fit within the actual motion limitation area A1.
[0150] It is preferable to change the constraint conditions and the toe target coordinates together. In other words, when the deviation determination unit 231 determines that a deviation from the constraint conditions (equation (14)) has occurred and that the occurrence of the deviation is in line with the operator's intention, the prediction control unit 232 calculates the control input U by using the following equation (19) that uses the alternative constraint conditions and alternative toe target coordinates set by the calculation condition change unit 234. * In the equation (19), d' in (19a) corresponds to the alternative constraint condition, and ξr' in (19b) corresponds to the alternative target toe coordinate.
[0151]
[0152] Fig. 10A is a flowchart similar to Fig. 5, showing an example of a processing procedure of the controller 200 according to the second embodiment. The flowchart in Fig. 10A shows the processing of steps S230, S235, S250, S260, S265, and S275 instead of the processing of steps S130, S135, S150, and S160 in the flowchart in Fig. 5.
[0153] In step S230, the controller 200 (constraint condition setting unit 222) sets the constraint condition (equation (11)) by processing similar to that in step S130, and also sets the constraint condition (equation (14)) based on the position of the intrusion prevention surface Sp set by the target data calculation unit 221.
[0154] In the next step S235, controller 200 (deviation determination unit 231) determines whether or not a deviation from the constraint conditions has occurred, based on the toe position of bucket 8 calculated in step S115 and the constraint condition equations (11) and (14) set in step S230. If it is determined that a deviation from the constraint conditions has not occurred, the process proceeds to step S140.
[0155] Although not shown, if it is determined in step S235 that a deviation from the constraint condition (equation (11)) has occurred, the processes of steps S150 and S160 in Fig. 5 are executed, as in the first embodiment. If it is determined in step S235 that a deviation from the constraint condition (equation (14)) has occurred, the process proceeds to step S250.
[0156] In step S250, the controller 200 (calculation condition change unit 234) changes the constraint condition determined in step S230 from equation (14) to equation (15), and executes a calculation process to substitute the current toe coordinate ξ(k) for the target toe coordinate ξr(k). Furthermore, in step S250, the controller 200 (prediction control unit 232, actuator control unit 133) executes the same processes as steps S140 and S145. In other words, step S250 corresponds to operation prohibition control.
[0157] In the next step S260, the controller 200 (attention calling unit 241) outputs a display control signal for an attention calling screen including an image notifying that a deviation from the constraint condition has occurred to the user interface 19. As a result, the attention calling screen shown in Fig. 8 is displayed on the display screen of the display device 19b.
[0158] In the next step S265, the controller 200 (calculation condition change unit 234) determines whether the deviation from the constraint conditions is in line with the operator's intention, i.e., whether the operator intends to operate the working device 41, based on the operation signal corresponding to the selected image POP3. If a positive operation signal (return operation signal) is input from the input device 19a, the controller 200 (calculation condition change unit 234) determines that the deviation from the constraint conditions is in line with the operator's intention, and proceeds to step S275. If a negative operation signal is input from the input device 19a, the controller 200 (calculation condition change unit 234) determines that the deviation from the constraint conditions is not in line with the operator's intention, and returns to step S235. Note that, although not shown, if a negative operation signal is input, the deviation determination process (step S235) may be repeatedly executed until it is determined that no deviation from the constraint conditions has occurred.
[0159] In step S275, the controller 200 (calculation condition change unit 234) changes the constraint condition determined in step S250 from equation (15) to equation (19a). This process corresponds to the process of setting the condition for guiding the working device 41 into the actual operation limited area A1.
[0160] In the next step S140, the predictive control unit 232 performs calculations for predictive control based on either the constraint conditions set in step S230 or the constraint conditions set in step S275.
[0161] According to the second embodiment, in addition to the same effects as those of the first embodiment, the following operational effects are achieved.
[0162] (4) The hydraulic excavator 1 includes a user interface 19. The user interface 19 includes an input device (e.g., a touch sensor) 19a that is operated by the operator, and a notification device that notifies the operator of information. The notification device includes a display device (monitor) 19b and a sound output device (speaker). When it is determined that the position of a control point P (P0 to P3) of the working device 41 deviates from the constraint condition, the controller 200 executes output control (S260 in FIG. 10A ) and operation prohibition control (S250 in FIG. 10A ).
[0163] In output control, the controller 200 notifies the operator via the user interface (notification device) 19 of information indicating that the position of the control point P (P0 to P3) of the work device 41 deviates from the constraint conditions (deviation notification image POP1 in Figure 8) and information confirming the intention to operate the work device 41 (intention confirmation image POP2 and selection image POP3 in Figure 8) (S260 in Figure 10A).
[0164] When it is determined that the position of control point P (P0 to P3) of working device 41 deviates from the constraint conditions and an operation signal (positive operation signal) indicating that the operator intends to operate working device 41 is input, controller 200 releases the operation prohibition control, invalidates the constraint conditions, and sets the target coordinates of the toe of bucket 8 so that control point P (P0 to P3) of working device 41 approaches operation limited area A1 (S265, S275, S140 in FIGS. 9A, 9B, and 10A). The positive operation signal is output from user interface 19 to controller 200 when the positive operation image in selection image POP3 in FIG. 8 is touched.
[0165] According to this configuration, the operation of the working implement 41 is prohibited at the time a deviation from the constraint conditions occurs, thereby effectively preventing unstable operation of the hydraulic excavator 1. Furthermore, according to this configuration, when necessary, such as when there are no obstacles around the hydraulic excavator 1, the operator can operate the hydraulic actuator to keep the working implement 41 within the operation limited area A1.
[0166] <Modification of Second Embodiment> The order of processing by the controller 200 may be changed as follows. Fig. 10B is a flowchart similar to Fig. 10A and showing an example of a processing procedure by the controller 200 according to a modification of the second embodiment. In the flowchart of Fig. 10B, the processing of step S250 in the flowchart of Fig. 10A is omitted, and the processing of step S270 is executed when a negative determination is made in step S265.
[0167] The controller 200 according to the second embodiment described above executes output control (notification control) and operation prohibition control when it is determined that the position of the control point P of the working device 41 deviates from the constraint conditions. In contrast, the controller 200 according to this modification executes only output control (notification control) when it is determined that the position of the control point P of the working device 41 deviates from the constraint conditions, and executes operation prohibition control (S265, S270, S140, S145 in FIG. 10B ) when a negative operation signal indicating that the operator does not intend to operate the working device 41 is input. The negative operation signal is output from the user interface 19 to the controller 200 when the negative operation image of the selection image POP3 in FIG. 8 is touched.
[0168] (5) When it is determined that the position of control point P of the working device 41 deviates from the constraint conditions, the controller 200 executes output control (S260 in FIG. 10B ). In the output control, the controller 200 notifies the operator via the user interface (notification device) 19 of information indicating that the position of control point P of the working device 41 deviates from the constraint conditions and information confirming the operator's intention to operate the working device 41. When it is determined that the position of control point P of the working device 41 deviates from the constraint conditions and an affirmative operation signal indicating that the operator intends to operate the working device 41 is input, the controller 200 invalidates the constraint conditions and sets the target coordinates of the toe of the bucket 8 so that the control point P of the working device 41 approaches the operation limited area A1 (S235, S265, S275 in FIG. 10B ).
[0169] When it is determined that the position of control point P of the working implement 41 deviates from the constraint condition and a negative operation signal indicating that the operator does not intend to operate the working implement 41 is input, the controller 200 executes operation prohibition control (S265, S270, S140, S145 in FIG. 10B ). According to this configuration, when an obstacle is present around the hydraulic excavator 1, the operation of the hydraulic excavator 1 can be prohibited as needed by the operator. Furthermore, when no obstacle is present around the hydraulic excavator 1, the operator can operate the hydraulic actuator to keep the working implement 41 within the operation limited area A1 as needed.
[0170] <Third Embodiment> A hydraulic excavator 1 according to a third embodiment of the present invention will be described with reference to Figure 11. Note that components that are the same as or equivalent to those described in the first embodiment are given the same reference symbols, and differences will be mainly described. In the first embodiment, an example was described in which the hydraulic excavator 1 is operated by operating the operating devices 18a, 18b, 18c in the operator's cab 16. In contrast, in the third embodiment, an example will be described in which the hydraulic excavator 1 is automatically operated without being operated by an operator.
[0171] Fig. 11 is a block diagram showing the details of the functions of the controller 300 according to the third embodiment. As shown in Fig. 11, in the case of automatic driving, since no operator operation is required, the operation devices 18a and 18b (see Fig. 3) are not required. Furthermore, since no operator is present, there is no need to notify the operator of deviation from the constraint conditions. Therefore, there is no need to alert the operator using the display device 19b.
[0172] The target data calculation unit 321 automatically determines the excavation start position based on the attitude of the hydraulic excavator 1 calculated by the state calculation unit 111 and construction information acquired from the external construction management system 51, and outputs the excavation start position as the toe target coordinates. For example, as shown in Figures 4A and 4B, the toe target coordinates are desirably set to the point (nearest point) within the target excavation surface Se that is the shortest distance from the toe of the bucket 8. The target data calculation unit 321 draws a perpendicular line to the target excavation surface Se, and sets the intersection (nearest point) of the perpendicular line and the target excavation surface Se as the toe target coordinates.
[0173] When the hydraulic excavator 1 is operated automatically, the operator does not set the target excavation surface Se on-site. Therefore, a situation in which a deviation from the constraint conditions occurs is mainly a situation in which a calculation error occurs in the state calculation unit 111 due to a GNSS positioning error. Therefore, when a deviation from the constraint conditions occurs, it is desirable to stop the operation of the hydraulic excavator 1 and wait for the GNSS positioning state to recover.
[0174] The calculation condition change unit 334 determines whether the detection accuracy of the position detection device 35 (i.e., the GNSS positioning state) is good or not based on the detection signal from the position detection device 35, and changes the calculation conditions according to the determination result. For example, the calculation condition change unit 334 receives the positioning state (communication strength, etc.) from the position detection device 35, and, as in the first embodiment, continues to use the control input U * When the positioning state is restored, that is, when the communication strength becomes equal to or greater than a predetermined value, the calculation condition change unit 334 changes the control input U * The change in the constraint condition for setting Equation (13) to 0 is released. In other words, the operation prohibition control is released, and the constraint condition returns from Equation (13) to Equation (11). As a result, the working implement 41 is controlled again so that the toe of the bucket 8 moves along the target excavation surface Se.
[0175] The method for determining whether the detection accuracy of the position detection device 35 is good is not limited to the case where it is determined based on communication strength, i.e., the value of the reception strength for each positioning satellite included in the GNSS data. The calculation condition change unit 334 may determine whether the detection accuracy of the position detection device 35 is good based on a value of DOP (Dilution of Precision) that indicates the satellite arrangement status, or the like.
[0176] According to the third embodiment, the same effects as those of the first embodiment are achieved, and the following effects are also achieved.
[0177] (6) The position detection device 35 receives signals from GNSS satellites to detect the position of the machine body 42. The controller 300 executes operation prohibition control when it is determined that the position of the control point P of the work device 41 deviates from the constraint conditions. The controller 300 determines whether the detection accuracy of the position detection device 35 is good or not based on the signal from the position detection device 35. When it is determined that the detection accuracy of the position detection device 35 is not good, the controller 300 continues the operation prohibition control. When it is determined that the detection accuracy of the position detection device 35 is good, the controller 300 releases the operation prohibition control. With this configuration, when a deviation from the constraint conditions occurs due to a deterioration in the detection accuracy of the position detection device 35, operation of the hydraulic excavator 1 can be prohibited until the detection accuracy improves. Therefore, unstable operation during automatic operation can be effectively prevented.
[0178] In this third embodiment, an example has been described in which the hydraulic excavator 1 according to the first embodiment is provided with an automatic driving function, but the same applies when the hydraulic excavator 1 according to the second embodiment is provided with an automatic driving function.
[0179] Fourth Embodiment A hydraulic excavator 1 according to a fourth embodiment of the present invention will be described with reference to FIG. 12 . Note that components that are the same as or equivalent to those described in the second embodiment are assigned the same reference symbols, and differences will be mainly described. In the third embodiment, an example was described in which, if a deviation from a constraint condition occurs due to a deterioration in the GNSS positioning state during automatic operation, the operation of the hydraulic excavator 1 is stopped, and automatic operation is resumed when the GNSS positioning state is restored. In contrast, in the fourth embodiment, if the GNSS positioning state deteriorates and a situation arises in which a deviation from a constraint condition may occur, as in the second embodiment, the operator is notified of the deterioration in the GNSS positioning state, and the operation of the hydraulic excavator 1 is stopped.
[0180] 12 is a block diagram showing detailed functions of the controller 400 according to the fourth embodiment. The controller 400 has the same functions as the controller 200 described in the second embodiment. Similarly to the third embodiment, the controller 400 also monitors the GNSS positioning status. The calculation condition change unit 434 determines whether the GNSS positioning status is good based on a detection signal from the position detection device 35. For example, the calculation condition change unit 434 determines whether the GNSS positioning status is good based on the reception strength value for each positioning satellite included in the GNSS data, or the DOP value indicating the satellite positioning status.
[0181] When the calculation condition changing unit 434 determines that the GNSS positioning state is good, the prediction control unit 432 performs predictive control based on equation (12). When the calculation condition changing unit 434 determines that the GNSS positioning state is not good, the calculation condition changing unit 434 changes the constraint condition from equation (11) to equation (13), which is a self-evident constraint condition, and sets the current toe coordinates as the toe target coordinates. Therefore, by predictive control by the prediction control unit 432, the control input U * becomes 0.
[0182] When the calculation condition change unit 434 determines that the GNSS positioning state is not in a good state, the attention calling unit 441 displays an attention calling screen indicating the determination result on the display screen of the display device 19b. The attention calling screen indicating a deterioration in the GNSS positioning state includes an image of a message such as "The vehicle has been stopped due to deterioration of the GNSS positioning state" (positioning state notification image), an image of a message such as "Do you want to continue working?" (intention confirmation image), and a selection image for confirming the operator's intention to continue working (intention to operate the working device 41). The selection image includes, for example, an affirmative operation image "Yes" and a negative operation image "No."
[0183] When the operator performs a touch operation on the affirmative operation image, the input device 19a outputs a affirmative operation signal to the controller 400. When the operator performs a touch operation on the negative operation image, the input device 19a outputs a negative operation signal to the controller 400.
[0184] When a positive operation signal is received from the user interface 19, the calculation condition change unit 434 determines that the operator intends to perform the work, and executes processing to change the second calculation conditions. When a negative operation signal is received from the user interface 19, the calculation condition change unit 434 determines that the operator does not intend to perform the work, and does not execute processing to change the second calculation conditions. If processing to change the second calculation conditions is not performed, the stopped state of the hydraulic excavator 1 is maintained until the GNSS positioning state is restored. The processing to change the second calculation conditions is the same as in the second embodiment, and therefore description thereof will be omitted.
[0185] According to the fourth embodiment, the same effects as those of the second embodiment are achieved, and the following effects are also achieved.
[0186] (7) The controller 400 determines whether the detection accuracy (GNSS positioning state) of the position detection device 35 is good based on the detection signal from the position detection device 35. If the controller 400 determines that the detection accuracy of the position detection device 35 is not good, the controller 400 executes operation prohibition control and notification control regardless of whether the position of the control point of the working device 41 deviates from the constraint conditions. In the notification control, the controller 400 notifies the operator via the user interface (notification device) 19 of information indicating that the detection accuracy of the position detection device 35 is not good and information confirming the operator's intention to operate the working device 41. If the controller 400 determines that the detection accuracy of the position detection device 35 is not good and receives an operation signal (affirmative operation signal) indicating that the operator intends to operate the working device 41, the controller 400 releases the operation prohibition control and invalidates the constraint conditions. This configuration makes it possible to prohibit or stop the operation of the hydraulic excavator 1 when a situation arises in which a deviation from the constraint conditions may occur, thereby more effectively preventing unstable operation of the hydraulic excavator 1. Furthermore, if there are no obstacles around the hydraulic excavator 1, the work implement 41 can be operated to continue the work.
[0187] The following modified examples are also within the scope of the present invention, and it is possible to combine the configuration shown in the modified example with the configuration described in the above embodiment, to combine the configurations described in the different embodiments above, or to combine the configurations described in the different modified examples below.
[0188] <Modification 1> In the above-described embodiment, an example has been shown in which the bucket 8 that can rotate only in the vertical direction around a horizontal axis as the central axis of rotation is used as the working implement of the working device 41. However, the working implement may be a bucket that has at least one of a tilt function and a rotary function (such as a rotary tilt bucket).
[0189] <Modification 2> In the above-described embodiment, a hydraulic motor (swing hydraulic motor 4) is used as the drive source for driving the swing body 3 to swing. However, the drive source for swing driving may be an electric motor. Furthermore, the drive source for swing driving may be a combination of a hydraulic motor and an electric motor.
[0190] <Modification 3> In the above-described embodiment, the operating devices 18a, 18b, and 18c that operate the hydraulic actuators are electric operating devices. However, the operating devices may be hydraulic pilot-type operating devices. The hydraulic pilot-type operating device outputs an operating pilot pressure according to the operating direction and operating amount. The operating pilot pressure acts as a drive signal on the pressure-receiving portion of each control valve of the control valve unit 23. As a result, each hydraulic actuator 4, 10, 11, 12, and 14a is driven according to the operating direction and operating amount of the operating device.
[0191] Although the embodiments of the present invention have been described above, the above embodiments merely illustrate some of the application examples of the present invention, and it is not intended that the technical scope of the present invention be limited to the specific configurations of the above embodiments.
[0192] 1...hydraulic excavator (work machine), 2...traveling body, 3...swivel body, 6...boom (driven member), 7...arm (driven member), 8...bucket (work tool, driven member), 10...boom cylinder (hydraulic cylinder, hydraulic actuator), 11...arm cylinder (hydraulic cylinder, hydraulic actuator), 12...bucket cylinder (hydraulic cylinder, hydraulic actuator), 18a, 18b, 18c... operation device, 19... user interface (notification device, display device, input device, touch panel monitor), 19a... input device, 19b... display device, 21... prime mover, 22... hydraulic pump device, 23... control valve unit, 25-28... inertial measurement unit, 29... attitude detection device, 35... position detection device, 36, 37... GNSS antenna, 38... GNSS receiver, 41... work device, 42... aircraft, 51... construction management system, 61... processing device, 62... storage device, 100, 200, 300, 400... controller, 101... positioning calculation unit, 102... target setting unit, 103... operation control unit, 10 4...Display control unit, 111...State calculation unit, 121, 221, 321...Target data calculation unit, 122, 222...Constraint condition setting unit, 131, 231...Departure determination unit, 132, 232, 432...Prediction control unit, 133...Actuator control unit, 134, 234, 334, 434...Calculation condition change unit, 141, 241, 441...Warning unit, A1...Operation limited area, A1'...Temporary operation limited area, A2...Intrusion prevention area, POP1...Departure notification image, POP2...Intention confirmation image, POP3...Selection image, Se...Target excavation surface (boundary surface between operation limited area and intrusion prevention area), Sp...Intrusion prevention surface (boundary surface between operation limited area and intrusion prevention area)
Claims
1. A work machine comprising: a work implement having a plurality of driven members including a work implement and a plurality of hydraulic actuators that drive the plurality of driven members; a machine body to which the work implement is attached; an attitude detection device that detects the attitude of the work implement; a position detection device that detects the position of the machine body; and a controller that controls the operation of the work implement, wherein the controller: calculates the current coordinates of the work implement based on the attitude of the work implement detected by the attitude detection device and the position of the machine body detected by the position detection device; sets constraint conditions in model predictive control to prevent the work implement from entering the intrusion prevention area based on the coordinates of the work implement and the boundary surface between an operation limited area in which operation of the work implement is permitted and an intrusion prevention area in which intrusion of the work implement is prevented; and calculates a target operating speed of the hydraulic actuator for a predetermined time from the current time so as to reduce the deviation between the coordinates of the work implement and the target coordinates of the work implement while satisfying the constraint conditions, a hydraulic actuator is controlled so that the operating speed of the hydraulic actuator matches the target operating speed; a determination is made as to whether the position of a control point of the working device deviates from the constraint condition; and when it is determined that the position of the control point of the working device deviates from the constraint condition due to the boundary surface being set so that the coordinates of the working tool are located in the intrusion prevention area or due to a deterioration in the detection accuracy of the position detection device, an operation prohibition control is executed to prohibit or stop the operation of the working device.
2. A work machine as described in claim 1, wherein the controller executes the operation prohibition control when it is determined that the position of the control point of the work implement deviates from the constraint condition, and in the operation prohibition control, sets the target operation speed of the hydraulic actuator to 0.
3. A work machine as described in claim 1, wherein the controller executes the motion prohibition control when it is determined that the position of the control point of the work implement deviates from the constraint conditions, and in the motion prohibition control, sets the current coordinates of the work implement as the target coordinates of the work implement and invalidates the constraint conditions.
4. A work machine as defined in claim 1, comprising: an input device operated by an operator; and a notification device that notifies the operator of information, wherein the controller, when it is determined that the position of a control point of the work device deviates from the constraint conditions, executes output control to output the determination result to the notification device; in the output control, the controller notifies the operator by the notification device of information indicating that the position of the control point of the work device deviates from the constraint conditions and information confirming the operator's intention to operate the work device; when it is determined that the position of the control point of the work device deviates from the constraint conditions and an operation signal indicating that the operator intends to operate the work device is input, the controller invalidates the constraint conditions and sets target coordinates of the work tool so that the control point of the work device approaches the operation limited area; and when it is determined that the position of the control point of the work device deviates from the constraint conditions and an operation signal indicating that the operator does not intend to operate the work device is input, the controller executes the operation prohibition control.
5. A work machine as defined in claim 1, comprising: an input device operated by an operator; and a notification device that notifies the operator of information; wherein the controller, when it is determined that the position of a control point of the work device deviates from the constraint conditions, executes output control that outputs the determination result to the notification device and the operation prohibition control; in the output control, the notification device notifies the operator of information indicating that the position of the control point of the work device deviates from the constraint conditions and information confirming the operator's intention to operate the work device; and when it is determined that the position of the control point of the work device deviates from the constraint conditions and an operation signal indicating that the operator intends to operate the work device is input, the controller releases the operation prohibition control, invalidates the constraint conditions, and sets target coordinates of the work tool so that the control point of the work device approaches the operation limited area.
6. A work machine as described in claim 1, wherein the position detection device receives signals from GNSS satellites to detect the position of the machine body, and the controller executes the operation prohibition control when it is determined that the position of the control point of the work device deviates from the constraint condition, determines whether the detection accuracy of the position detection device is good based on the signal from the position detection device, continues the operation prohibition control when it is determined that the detection accuracy of the position detection device is not good, and releases the operation prohibition control when it is determined that the detection accuracy of the position detection device is good.
7. A work machine as defined in claim 1, comprising: an input device operated by an operator; and a notification device that notifies the operator of information; wherein the position detection device receives signals from GNSS satellites to detect the position of the machine; the controller determines whether the detection accuracy of the position detection device is good based on the signals from the position detection device; and if it is determined that the detection accuracy of the position detection device is not good, executes the operation prohibition control and notification control regardless of whether the position of the control point of the work device deviates from the constraint condition; in the notification control, the notification device notifies the operator of information indicating that the detection accuracy of the position detection device is not good and information confirming the operator's intention to operate the work device; and if it is determined that the detection accuracy of the position detection device is not good and an operation signal indicating that the operator intends to operate the work device is input, the operation prohibition control is released and the constraint condition is invalidated.
Citation Information
Patent Citations
Control system of construction machine, construction machine, and control method of construction machine
JP2020125594A
Work machine
JP2021001439A
Loading work support system
JP2022078605A
Control system of construction machine, construction machine, and control method of construction machine
JP2023083576A
Excavator and method for controlling excavator
WO2020196838A1