WO2020158557A1 - 作業機械を含むシステム、コンピュータによって実行される方法、学習済みの位置推定モデルの製造方法、および学習用データ - Google Patents

作業機械を含むシステム、コンピュータによって実行される方法、学習済みの位置推定モデルの製造方法、および学習用データ Download PDF

Info

Publication number
WO2020158557A1
WO2020158557A1 PCT/JP2020/002251 JP2020002251W WO2020158557A1 WO 2020158557 A1 WO2020158557 A1 WO 2020158557A1 JP 2020002251 W JP2020002251 W JP 2020002251W WO 2020158557 A1 WO2020158557 A1 WO 2020158557A1
Authority
WO
WIPO (PCT)
Prior art keywords
position estimation
work machine
estimation model
estimated
computer
Prior art date
Application number
PCT/JP2020/002251
Other languages
English (en)
French (fr)
Inventor
山中 伸好
熊谷 年晃
賢佑 藤井
Original Assignee
株式会社小松製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社小松製作所 filed Critical 株式会社小松製作所
Priority to CN202080006250.XA priority Critical patent/CN113167054B/zh
Priority to DE112020000142.3T priority patent/DE112020000142T5/de
Priority to KR1020217014429A priority patent/KR102590855B1/ko
Priority to US17/296,314 priority patent/US20220049477A1/en
Publication of WO2020158557A1 publication Critical patent/WO2020158557A1/ja

Links

Images

Classifications

    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02FDREDGING; SOIL-SHIFTING
    • E02F9/00Component parts of dredgers or soil-shifting machines, not restricted to one of the kinds covered by groups E02F3/00 - E02F7/00
    • E02F9/20Drives; Control devices
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02FDREDGING; SOIL-SHIFTING
    • E02F9/00Component parts of dredgers or soil-shifting machines, not restricted to one of the kinds covered by groups E02F3/00 - E02F7/00
    • E02F9/26Indicating devices
    • E02F9/264Sensors and their calibration for indicating the position of the work tool
    • E02F9/265Sensors and their calibration for indicating the position of the work tool with follow-up actions (e.g. control signals sent to actuate the work tool)
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02FDREDGING; SOIL-SHIFTING
    • E02F3/00Dredgers; Soil-shifting machines
    • E02F3/04Dredgers; Soil-shifting machines mechanically-driven
    • E02F3/28Dredgers; Soil-shifting machines mechanically-driven with digging tools mounted on a dipper- or bucket-arm, i.e. there is either one arm or a pair of arms, e.g. dippers, buckets
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02FDREDGING; SOIL-SHIFTING
    • E02F9/00Component parts of dredgers or soil-shifting machines, not restricted to one of the kinds covered by groups E02F3/00 - E02F7/00
    • E02F9/20Drives; Control devices
    • E02F9/22Hydraulic or pneumatic drives
    • E02F9/2221Control of flow rate; Load sensing arrangements
    • E02F9/2225Control of flow rate; Load sensing arrangements using pressure-compensating valves
    • E02F9/2228Control of flow rate; Load sensing arrangements using pressure-compensating valves including an electronic controller
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02FDREDGING; SOIL-SHIFTING
    • E02F9/00Component parts of dredgers or soil-shifting machines, not restricted to one of the kinds covered by groups E02F3/00 - E02F7/00
    • E02F9/20Drives; Control devices
    • E02F9/22Hydraulic or pneumatic drives
    • E02F9/2221Control of flow rate; Load sensing arrangements
    • E02F9/2232Control of flow rate; Load sensing arrangements using one or more variable displacement pumps
    • E02F9/2235Control of flow rate; Load sensing arrangements using one or more variable displacement pumps including an electronic controller
    • EFIXED CONSTRUCTIONS
    • E02HYDRAULIC ENGINEERING; FOUNDATIONS; SOIL SHIFTING
    • E02FDREDGING; SOIL-SHIFTING
    • E02F9/00Component parts of dredgers or soil-shifting machines, not restricted to one of the kinds covered by groups E02F3/00 - E02F7/00
    • E02F9/26Indicating devices
    • E02F9/264Sensors and their calibration for indicating the position of the work tool
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Definitions

  • the present disclosure relates to a system including a work machine, a method executed by a computer, a method of manufacturing a learned position estimation model, and learning data.
  • a boom angle sensor is attached to a boom pin
  • an arm angle sensor is attached to an arm pin
  • a bucket angle sensor is attached to a bucket link
  • a position of a toe of a bucket is based on a value detected by these angle sensors.
  • the present disclosure provides a system including a work machine, a method executed by a computer, a method for manufacturing a learned position estimation model, and learning data for determining the position of the work machine.
  • a system including a work machine including a work machine body, a work machine attached to the work machine body, an operation member for operating the work machine, and a computer.
  • the computer has a learned position estimation model for obtaining the position of the position estimation target part, which is a part of the work machine whose position is to be estimated.
  • the computer acquires an operation command value for operating the work machine by operating the operation member, estimates the displacement amount of the position estimation target portion from the reference position using the learned position estimation model, and calculates the reference position and The first estimated position obtained by estimating the position of the position estimation target portion from the displacement amount is output.
  • a computer implemented method includes the following processes.
  • the first process is to acquire an operation command value for operating the work machine provided in the work machine body.
  • the second process is to obtain an estimated position in which the position of the work implement is estimated from the operation command value, using a learned position estimation model for obtaining the position of the work implement.
  • a method for manufacturing a learned position estimation model includes the following processes.
  • the first process is to acquire learning data.
  • the learning data includes an operation command value for operating the work machine attached to the work machine body, and a displacement amount from the reference position of the work machine when the operation command value is detected.
  • the second process is to learn the position estimation model from the learning data.
  • learning data for learning a position estimation model for determining the position of a work machine includes an operation command value for operating the work machine attached to the work machine body, and a displacement amount from the reference position of the work machine when the operation command value is detected.
  • a method for manufacturing a learned position estimation model includes the following processes.
  • the first process is to acquire an operation command value for operating the work machine attached to the work machine body.
  • the second process is to use the learned position estimation model to obtain an estimated position in which the position of the working machine is estimated from the operation command value.
  • the third process is to learn another position estimation model from the learning data including the operation command value and the estimated position.
  • FIG. 2 is a schematic plan view of the hydraulic excavator shown in FIG. 1.
  • It is a block diagram showing a schematic structure of a system including a hydraulic excavator.
  • It is a schematic diagram which shows the structure of a computer.
  • It is a functional block diagram which shows the outline of an internal structure of the computer before shipment.
  • It is a flowchart which shows the manufacturing method of the learned 1st position estimation model.
  • It is the schematic which shows the process for learning a 1st position estimation model.
  • It is a flowchart which shows the manufacturing method of the learned 2nd position estimation model.
  • FIG. 1 is an external view of a hydraulic excavator 100 according to the embodiment.
  • the hydraulic excavator 100 has a main body 1 and a working machine 2 that is hydraulically operated.
  • the main body 1 has a revolving structure 3 and a traveling device 5.
  • the traveling device 5 has a pair of crawler belts 5Cr.
  • the hydraulic excavator 100 can run by rotating the crawler belt 5Cr.
  • the traveling device 5 may have wheels (tires).
  • the revolving structure 3 is arranged on the traveling device 5 and is supported by the traveling device 5.
  • the revolving structure 3 can revolve with respect to the traveling device 5 about the revolving axis RX.
  • the revolving structure 3 has a cab 4.
  • An occupant (operator) of the hydraulic excavator 100 rides on the cab 4 and operates the hydraulic excavator 100.
  • the cab 4 is provided with a driver's seat 4S on which an operator sits.
  • the operator can operate the hydraulic excavator 100 inside the cab 4.
  • the operator can operate the work machine 2 in the cab 4, can rotate the revolving structure 3 with respect to the traveling device 5, and can also operate the hydraulic excavator 100 with the traveling device 5.
  • the revolving structure 3 has an engine room 9 in which an engine is housed and a counterweight provided at the rear of the revolving structure 3.
  • an engine, a hydraulic pump, etc., which are not shown, are arranged.
  • a handrail 29 is provided in front of the engine room 9.
  • the handrail 29 is provided with an antenna 21.
  • the antenna 21 is, for example, an antenna for GNSS (Global Navigation Satellite Systems).
  • the antenna 21 has a first antenna 21A and a second antenna 21B provided on the revolving structure 3 so as to be separated from each other in the vehicle width direction.
  • the work machine 2 is supported by the revolving structure 3.
  • the work machine 2 includes a boom 6, an arm 7, and a bucket 8.
  • the boom 6 is rotatably connected to the revolving structure 3.
  • the arm 7 is rotatably connected to the boom 6.
  • the bucket 8 is rotatably connected to the arm 7.
  • the bucket 8 has a plurality of blades.
  • the tip portion of the bucket 8 is referred to as the cutting edge 8a.
  • the base end of the boom 6 is connected to the revolving structure 3 via the boom pin 13.
  • the base end portion of the arm 7 is connected to the tip end portion of the boom 6 via the arm pin 14.
  • the bucket 8 is connected to the tip of the arm 7 via a bucket pin 15.
  • the bucket 8 is an example of an attachment detachably attached to the tip of the work machine 2. Depending on the type of work, the attachment can be replaced with a breaker, a grapple, or a lifting magnet.
  • the boom 6 of the work machine 2 rotates with respect to the revolving structure 3 around a boom pin 13 provided at the base end of the boom 6.
  • a locus along which a specific part of the boom 6 that rotates with respect to the revolving structure 3, for example, the tip of the boom 6 moves is arcuate.
  • the plane including the arc is specified as the motion plane P shown in FIG.
  • the operation plane P is represented as a straight line.
  • the direction in which this straight line extends is the front-rear direction of the main body 1 of the hydraulic excavator 100 or the front-rear direction of the revolving structure 3, and is also simply referred to as the front-rear direction below.
  • the left-right direction of the main body 1 of the hydraulic excavator 100 (the vehicle width direction) or the left-right direction of the revolving structure 3 is a direction orthogonal to the front-rear direction in a plan view, and will be simply referred to as the left-right direction below.
  • the side where the work implement 2 projects from the main body 1 of the hydraulic excavator 100 is the front direction, and the direction opposite to the front direction is the rear direction.
  • the right side and the left side in the left-right direction as viewed from the front are the right direction and the left direction, respectively.
  • ⁇ Front-back direction is the front-back direction of the operator sitting in the driver's seat in the cab 4.
  • the direction facing the operator seated in the driver's seat is the front direction
  • the back direction of the operator seated in the driver's seat is the rear direction.
  • the left-right direction is the left-right direction of the operator sitting in the driver's seat.
  • the right side and left side when the operator seated in the driver's seat faces the front are the right direction and the left direction, respectively.
  • the boom 6 is rotatable around the boom pin 13.
  • the arm 7 is rotatable around the arm pin 14.
  • the bucket 8 is rotatable around a bucket pin 15.
  • Each of the arm 7 and the bucket 8 is a movable member that is movable on the tip side of the boom 6.
  • the boom pin 13, the arm pin 14, and the bucket pin 15 extend in a direction orthogonal to the operation plane P, that is, in the left-right direction.
  • the operation plane P is orthogonal to at least one (in the case of the embodiment, all three) of the axes serving as rotation centers of the boom 6, the arm 7, and the bucket 8.
  • the boom 6 rotates with respect to the revolving structure 3 on the operation plane P.
  • the arm 7 rotates on the operating plane P with respect to the boom 6, and the bucket 8 rotates on the operating plane P with respect to the arm 7.
  • the work machine 2 of the embodiment operates on the operation plane P as a whole.
  • the blade edge 8a of the bucket 8 moves on the operation plane P.
  • the operation plane P is a vertical plane including the movable range of the work machine 2.
  • the motion plane P intersects each of the boom 6, the arm 7, and the bucket 8.
  • the motion plane P can be set at the center of the boom 6, the arm 7, and the bucket 8 in the left-right direction.
  • the X axis is set in the horizontal direction on the motion plane P
  • the Y axis is set in the vertical upward direction on the motion plane P.
  • the X axis and the Y axis are orthogonal to each other.
  • the work machine 2 has a boom cylinder 10, an arm cylinder 11, and a bucket cylinder 12.
  • the boom cylinder 10 drives the boom 6.
  • the arm cylinder 11 drives the arm 7.
  • the bucket cylinder 12 drives the bucket 8.
  • Each of the boom cylinder 10, the arm cylinder 11, and the bucket cylinder 12 is a hydraulic cylinder driven by hydraulic oil.
  • the work machine 2 has a bucket link.
  • the bucket link has a first link member 16 and a second link member 17.
  • the tip end of the first link member 16 and the tip end of the second link member 17 are rotatably connected to each other via a bucket cylinder top pin 19.
  • the bucket cylinder top pin 19 is connected to the tip of the bucket cylinder 12. Therefore, the first link member 16 and the second link member 17 are pin-connected to the bucket cylinder 12.
  • the base end of the first link member 16 is rotatably connected to the arm 7 via the first link pin 18 near the bucket pin 15 at the tip of the arm 7.
  • the first link member 16 is pin-connected to the arm 7.
  • the base end of the second link member 17 is rotatably connected to the bracket at the base of the bucket 8 via the second link pin 20.
  • the second link member 17 is pin-connected to the bucket 8.
  • the hydraulic excavator 100 has an imaging device 50.
  • the imaging device 50 of the embodiment is a monocular camera.
  • the image pickup device 50 is attached to the revolving structure 3.
  • the imaging device 50 is attached to the cab 4.
  • the imaging device 50 is attached inside the cab 4.
  • the imaging device 50 is attached near the upper end of the left front pillar of the cab 4.
  • the imaging device 50 is arranged in the inner space of the cab 4 near the left front pillar, which is a position further away from the work machine 2 in the left-right direction.
  • the imaging device 50 is arranged apart from the operation plane P of the work machine 2 in the left-right direction.
  • the imaging device 50 is arranged on the left side of the operation plane P.
  • FIG. 2 is a side view of the work machine 2 for explaining the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k.
  • the angle formed by a straight line passing through the boom pin 13 and the arm pin 14 and a straight line extending in the vertical direction in a side view is referred to as a boom angle ⁇ b.
  • the boom angle ⁇ b represents the angle of the boom 6 with respect to the revolving structure 3.
  • an angle formed by a straight line passing through the boom pin 13 and the arm pin 14 and a straight line passing through the arm pin 14 and the bucket pin 15 is defined as an arm angle ⁇ a.
  • the arm angle ⁇ a represents the angle of the arm 7 with respect to the boom 6.
  • the angle formed by a straight line passing through the arm pin 14 and the bucket pin 15 and a straight line passing through the bucket pin 15 and the cutting edge 8a is referred to as a bucket angle ⁇ k.
  • the bucket angle ⁇ k represents the angle of the bucket 8 with respect to the arm 7.
  • the posture of the work implement 2 on the operation plane P is determined by the combination of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k.
  • the position of the tip of the arm 7 on the operation plane P of the first link pin 18, that is, the XY coordinate is determined by the combination of the boom angle ⁇ b and the arm angle ⁇ a.
  • the position of the bucket cylinder top pin 19 displaced along with the operation of the bucket 8 on the operation plane P, that is, the XY coordinate is determined by the combination of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k.
  • FIG. 3 is a schematic plan view of the hydraulic excavator 100 shown in FIG. FIG. 3 schematically illustrates the work implement 2, the swing body 3, the cab 4, and the imaging device 50 described with reference to FIG. 1.
  • the operation plane P is a straight line extending in the vertical direction in the drawing in FIG. 3, and is indicated by a chain double-dashed line.
  • An optical axis AX illustrated by a chain line in FIG. 3 is an optical axis of the image pickup device 50.
  • the extending direction of the optical axis AX and the extending direction of the operation plane P are not parallel.
  • the extending direction of the optical axis AX is inclined with respect to the extending direction of the operation plane P.
  • the optical axis AX intersects the operation plane P.
  • the image pickup device 50 is mounted at a position where the operation plane of the work machine 2 is viewed obliquely.
  • the imaging device 50 images the work machine 2 at an angle larger than 0° with respect to the operation plane P. Since both the work implement 2 and the imaging device 50 are attached to the revolving structure 3, the positional relationship of the imaging device 50 with respect to the operation plane P does not change even when the hydraulic excavator 100 runs or turns.
  • the mounting position of the imaging device 50 with respect to the operation plane P is determined in advance for each model of the hydraulic excavator 100.
  • the imaging device 50 images the work machine 2.
  • the imaging device 50 images the operation plane P of the work machine 2.
  • the imaging device 50 images the work machine 2 moving on the motion plane P.
  • the image captured by the imaging device 50 includes at least a part of the work machine 2.
  • FIG. 4 is a block diagram showing a schematic configuration of a system including the hydraulic excavator 100.
  • the system according to the embodiment is a system for obtaining the relative position of the work machine 2 with respect to the work machine main body (main body 1).
  • the system according to the embodiment includes a hydraulic excavator 100 as an example of the work machine described with reference to FIGS. 1 to 3 and a control device 200 shown in FIG. 4.
  • the control device 200 may be mounted on the hydraulic excavator 100.
  • the control device 200 includes an antenna 21, a global coordinate calculation unit 23, an IMU (Inertial Measurement Unit) 24, an operating device 25, a directional control valve 34, a pressure sensor 36, and a computer 102A.
  • IMU Inertial Measurement Unit
  • the antenna 21 outputs a signal according to the received radio wave (GNSS radio wave) to the global coordinate calculation unit 23.
  • the global coordinate calculation unit 23 detects the installation position of the antenna 21 in the global coordinate system.
  • the global coordinate system is a three-dimensional coordinate system based on a reference position installed in the work area.
  • the reference position may be the position of the tip of the reference pile set in the work area.
  • the IMU 24 is provided on the revolving structure 3.
  • the IMU 24 is arranged below the cab 4.
  • a highly rigid frame is arranged below the cab 4.
  • the IMU 24 is arranged on the frame.
  • the IMU 24 may be arranged on the side (right side or left side) of the turning axis RX of the turning body 3.
  • the IMU 24 measures the acceleration of the swing body 3 in the front-rear direction, the left-right direction, and the up-down direction, and the angular velocity of the swing body 3 around the front-rear direction, the left-right direction, and the up-down direction.
  • the operating device 25 is arranged in the cab 4.
  • the operator operates the operation device 25.
  • the operation device 25 receives an operator operation for driving the work machine 2. Further, the operating device 25 receives an operator's operation of turning the turning body 3.
  • the operating device 25 outputs an operation signal according to an operator operation.
  • the operating device 25 is a pilot hydraulic operating device.
  • the hydraulic pump 33 is driven by the engine 31, and the hydraulic oil discharged from the hydraulic pump 33 corresponds to the operation of the operating device 25 by the operator, and various hydraulic actuators 40 are operated via the directional control valve 34. Is configured to be supplied to.
  • the hydraulic actuator 40 includes a boom cylinder 10, an arm cylinder 11, a bucket cylinder 12 and a swing motor (not shown) shown in FIG. 1.
  • the engine 31 is a diesel engine.
  • the output of the engine 31 is controlled by controlling the injection amount of fuel to the engine 31 by the computer 102A.
  • the hydraulic pump 33 is connected to the engine 31.
  • the hydraulic pump 33 is driven by transmitting the rotational driving force of the engine 31 to the hydraulic pump 33.
  • the hydraulic pump 33 is a variable displacement hydraulic pump that has a swash plate and changes the discharge capacity by changing the tilt angle of the swash plate.
  • the hydraulic fluid discharged from the hydraulic pump 33 is reduced to a constant pressure by the pressure reducing valve and supplied to the directional control valve 34.
  • the directional control valve 34 is a spool type valve that moves the rod-shaped spool to switch the direction in which the hydraulic oil flows.
  • the amount of hydraulic oil supplied to the hydraulic actuator 40 is adjusted by moving the spool in the axial direction.
  • the direction control valve 34 is provided with a spool stroke sensor that detects a moving distance (spool stroke) of the spool.
  • the oil supplied to the hydraulic actuator 40 to operate the hydraulic actuator 40 is called hydraulic oil.
  • the oil supplied to the directional control valve 34 for operating the directional control valve 34 is referred to as pilot oil.
  • the pressure of the pilot oil is called the pilot oil pressure.
  • the hydraulic pump 33 may deliver both hydraulic oil and pilot oil. For example, a part of the hydraulic oil delivered from the hydraulic pump 33 may be decompressed by the pressure reducing valve, and the depressurized hydraulic oil may be used as the pilot oil. Further, the hydraulic pump 33 may separately include a hydraulic pump (main hydraulic pump) that delivers hydraulic oil and a hydraulic pump (pilot hydraulic pump) that delivers pilot oil.
  • main hydraulic pump main hydraulic pump
  • pilot hydraulic pump pilot hydraulic pump
  • the operating device 25 has a first operating lever 25R and a second operating lever 25L.
  • the first operation lever 25R is arranged, for example, on the right side of the driver seat 4S.
  • the second operating lever 25L is arranged, for example, on the left side of the driver seat 4S.
  • the front, rear, left, and right operations correspond to biaxial operations.
  • the boom 6 and the bucket 8 are operated by the first operation lever 25R.
  • the operation in the front-rear direction of the first operation lever 25R corresponds to the operation of the boom 6, and the operation of raising and lowering the boom 6 is executed according to the operation in the front-rear direction.
  • the horizontal operation of the first operating lever 25R corresponds to the operation of the bucket 8, and the vertical operation of the bucket 8 is executed according to the horizontal operation.
  • the arm 7 and the swing body 3 are operated by the second operation lever 25L.
  • the operation of the second operation lever 25L in the front-rear direction corresponds to the operation of the arm 7, and the operation of the arm 7 in the up-down direction is executed according to the operation in the front-rear direction.
  • the operation of the second operation lever 25L in the left-right direction corresponds to the turning of the swing body 3, and the right swing operation and the left swing operation of the swing body 3 are executed according to the left-right operation.
  • the operation of raising the boom 6 is also called the raising operation and the operation of lowering it is also called the lowering operation.
  • the vertical movement of the arm 7 is also referred to as a dumping movement and an excavation movement, respectively.
  • the operation of the bucket 8 in the vertical direction is also referred to as a dump operation and an excavation operation, respectively.
  • the operation of the first operation lever 25R in the left-right direction may correspond to the operation of the boom 6, and the operation in the front-rear direction may correspond to the operation of the bucket 8.
  • the front-back direction of the second operation lever 25L may correspond to the operation of the revolving unit 3, and the left-right direction operation may correspond to the operation of the arm 7.
  • the first operating lever 25R and the second operating lever 25L correspond to the operating members of the embodiment.
  • Pilot oil sent from the hydraulic pump 33 and reduced in pressure by the pressure reducing valve is supplied to the operating device 25.
  • the operating device 25 and the directional control valve 34 are connected via a pilot oil passage 450.
  • the pilot hydraulic pressure is adjusted based on the operation content of the operating device 25.
  • the pilot hydraulic pressure corresponding to the operation content of the operating device 25 is supplied to the direction control valve 34 via the pilot oil passage 450.
  • the directional control valve 34 is adjusted to adjust the flow direction and flow rate of the hydraulic oil supplied to the boom cylinder 10, the arm cylinder 11, and the bucket cylinder 12, and the boom 6, the arm 7, and the bucket 8 are moved in the vertical direction. Is performed.
  • the pressure sensor 36 is arranged in the pilot oil passage 450.
  • the pressure sensor 36 detects the pilot oil pressure.
  • the detection result of the pressure sensor 36 is output to the computer 102A.
  • the pilot hydraulic pressure (PPC pressure) adjusted by the operation of the operating device 25 and detected by the pressure sensor 36 corresponds to the operation command value in the embodiment.
  • a plurality of pilot oil passages 450 corresponding to the operations of the first operation lever 25R and the second operation lever 25L in the front, rear, left, and right directions are provided with the operation device 25 and the direction control valve. It is provided so as to connect with 34.
  • the pressure sensor 36 is arranged in each of the plurality of pilot oil passages 450. For example, when the bucket 8 is operated, the pressure sensor 36 that detects an increase in pilot oil pressure when the bucket 8 performs a dump operation and the pressure sensor 36 that detects an increase in pilot oil pressure when the bucket 8 performs an excavation operation are different. The amount of increase in pilot oil pressure varies depending on the angle at which the operating lever is tilted from the neutral position. In this way, the operation content of the operation device 25 can be determined based on the detection result of the pilot oil pressure by each pressure sensor 36.
  • FIG. 5 is a schematic diagram showing the configuration of the computer 102A.
  • the computer 102A may be specially designed for the system according to the embodiment, or may be a general-purpose PC (Personal Computer).
  • the computer 102A has a processor 103, a storage device 104, a communication interface 105, and an I/O interface 106.
  • the processor 103 is, for example, a CPU (Central Processing Unit).
  • the storage device 104 includes a medium that stores information such as stored programs and data so that the processor 103 can read the information.
  • the storage device 104 includes a system memory such as a RAM (Random Access Memory) or a ROM (Read Only Memory), and an auxiliary storage device.
  • the auxiliary storage device may be, for example, a magnetic recording medium such as a hard disk, an optical recording medium such as a CD (Compact Disc) and a DVD (Digital Versatile Disc), or a semiconductor memory such as a flash memory.
  • the storage device 104 may be built in the computer 102A.
  • the storage device 104 may include an external recording medium 109 that is detachably connected to the computer 102A.
  • the external recording medium 109 may be a CD-ROM.
  • the communication interface 105 is, for example, a wired LAN (Local Area Network) module or a wireless LAN module, and is an interface for performing communication via a communication network.
  • the I/O interface 106 is, for example, a USB (Universal Serial Bus) port, and is an interface for connecting to an external device.
  • USB Universal Serial Bus
  • the computer 102A is connected to the input device 107 and the output device 108 via the I/O interface 106.
  • the input device 107 is a device for a user to input to the computer 102A.
  • the input device 107 includes a pointing device such as a mouse or a trackball, for example.
  • the input device 107 may include a device such as a keyboard for inputting characters.
  • the output device 108 includes, for example, a display.
  • FIG. 6 is a functional block diagram showing the outline of the internal configuration of the computer 102A before shipment.
  • the processor 103 and the storage device 104 shown in FIG. 6 form a part of the configuration of the computer 102A shown in FIG.
  • the processor 103 has an image processing unit 61 and a work implement position estimation unit 65.
  • the image processing unit 61 receives an input of a captured image captured by the imaging device 50 from the imaging device (camera) 50.
  • the image processing unit 61 performs image processing on the input captured image.
  • the storage device 104 stores a learned position estimation model 80A (first position estimation model) and a learned position estimation model 80B (second position estimation model).
  • the position estimation models 80A and 80B are artificial intelligence models for obtaining the relative position of the work machine 2 with respect to the main body 1.
  • the computer 102A estimates the relative position of the work machine 2 by using the position estimation model of artificial intelligence.
  • the position estimation models 80A and 80B include neural networks.
  • the position estimation models 80A and 80B include, for example, a deep neural network such as a convolutional neural network (CNN).
  • CNN convolutional neural network
  • the model in the embodiment may be implemented in hardware, software executable on the hardware, firmware, or a combination thereof.
  • the model may include programs executed by the processor 103, algorithms, and data.
  • the functionality of the model may be performed by a single module or distributed across multiple modules.
  • the model may be distributed among a plurality of computers.
  • the position estimation model 80A is configured to obtain the relative position of the work machine 2 from the captured image.
  • the work implement position estimation unit 65 uses the position estimation model 80A to obtain an estimated position where the relative position of the work implement 2 is estimated from the captured image. More specifically, the work implement position estimation unit 65 reads out the position estimation model 80A from the storage device 104 and inputs the captured image to the position estimation model 80A to determine the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k. Obtain the output of the estimation result.
  • the estimated position of the work implement 2 obtained from the captured image corresponds to the second estimated position in the embodiment.
  • the work implement position estimation unit 65 also outputs the accuracy of the estimation result that the present boom angle ⁇ b, arm angle ⁇ a, and bucket angle ⁇ k can be estimated with a probability of what percentage based on the captured image. If the captured image is clear and the boom 6, the arm 7, and the bucket 8 are clearly shown in the captured image, the accuracy of the estimation result is high. There is a disturbance such as a part of the work implement 2 being hidden in the soil, being imaged with backlight, or the window of the cab 4 being dirty, and the boom 6, arm 7 and bucket 8 in the captured image. If either of them is not clearly shown, the accuracy of the estimated position of the unclear part is lowered.
  • the processor 103 further includes a work implement displacement amount estimation unit 71 and a work implement position estimation unit 75.
  • the working machine displacement amount estimation unit 71 receives an input of the pilot hydraulic pressure detected by the pressure sensor 36 from the pressure sensor 36.
  • the position estimation model 80B is configured to calculate the displacement amount of the work implement 2 from the pilot hydraulic pressure.
  • the work implement displacement amount estimation unit 71 uses the position estimation model 80B to obtain the operation content of the operation device 25 from the input pilot hydraulic pressure.
  • the work implement displacement amount estimation unit 71 reads the position estimation model 80B from the storage device 104 and inputs the pilot hydraulic pressure to the position estimation model 80B to obtain the operation content of the operation device 25.
  • the work implement displacement amount estimation unit 71 is based on the elapsed time from the previous execution of the process for obtaining the operation content of the operation device 25 and the operation content of the operation device 25 obtained in the previous process and the current process. , An output of an estimated displacement amount that estimates the displacement amount of the working machine 2 indicating how much the corresponding working machine 2 has moved from the time of the previous processing to the present time is obtained.
  • the work implement position estimation unit 75 estimates the current position of the work implement 2. Specifically, the work implement position estimation unit 75 reads, from the storage device 104, the reference position of the work implement 2 and the time at which the work implement 2 is estimated to be at the reference position. The work implement position estimation unit 75 adds the estimation result of the displacement amount of the work implement 2 output by the work implement displacement amount estimation unit 71 from the time when it is estimated that the work implement 2 is at the reference position, The amount of displacement of the machine 2 from the reference position is estimated. Then, the work implement position estimation unit 75 obtains the output of the estimated position where the current position of the work implement 2 is estimated from the reference position of the work implement 2 and the displacement amount of the work implement 2 from the reference position. The estimated position of the work implement 2 obtained from the reference position of the work implement 2 and the displacement amount of the work implement 2 from the reference position corresponds to the first estimated position in the embodiment.
  • the reference position of the work implement 2 is, for example, the position of the work implement 2 according to the position estimation model 80A immediately before the accuracy of the estimation for obtaining the estimated position of the work implement 2 using the position estimation model 80A from the captured image falls below a predetermined value. It can be an estimated position.
  • the part of the boom 6, the arm 7, and the bucket 8 that make up the work machine 2 whose position is to be estimated using the position estimation model 80B is referred to as a position estimation target part.
  • the computer 102A sets the bucket 8 as the position estimation target portion. ..
  • the work implement displacement amount estimation unit 71 moves from the neutral position of the first operating lever 25R for the dumping operation or the excavating operation of the bucket 8 to the right or left from the pilot hydraulic pressure. Find the tilt angle.
  • the work implement displacement amount estimation unit 71 uses the elapsed time from when the process for obtaining the tilt angle of the first operation lever 25R was executed last time, and the tilt angle of the first operation lever 25R obtained in the previous process and this process. Based on and, the output of the estimation result of the variation amount of the bucket angle ⁇ k from the time of the previous processing to the present time is obtained.
  • the work implement position estimation unit 75 estimates the bucket angle ⁇ k indicating the current position of the bucket 8 by adding the amount of change in the bucket angle ⁇ k from the bucket angle ⁇ k at the reference position to the bucket angle ⁇ k at the reference position. Output the estimated position.
  • the boom angle ⁇ b and the arm angle ⁇ a indicating the positions of the parts of the work machine 2 other than the position estimation target part are captured images.
  • the boom angle ⁇ b and the arm ⁇ a estimated by the position estimation model 80A, and the bucket angle ⁇ k estimated by the position estimation model 80B can be used to estimate the work implement 2
  • the estimated position can be obtained.
  • the boom angle ⁇ b and the arm angle ⁇ a indicating the positions of the parts of the work machine 2 other than the position estimation target portion are further set. You may estimate using the estimation model 80B.
  • the hydraulic excavator 100 before shipment further includes an encoder 51.
  • the encoder 51 is a general term for a boom angle sensor attached to the boom pin 13, an arm angle sensor attached to an arm pin, and a bucket angle sensor attached to a bucket link.
  • a potentiometer may be attached to the working machine 2 to measure the angle.
  • a stroke sensor that detects the stroke of the hydraulic cylinder may be attached to convert the movement amount of the hydraulic cylinder into an angle.
  • the processor 103 has an angle conversion unit 62.
  • the angle converter 62 receives an electric signal from the encoder 51 and converts the electric signal into a boom angle ⁇ b, an arm angle ⁇ a, and a bucket angle ⁇ k.
  • the encoder 51 acquires an electrical signal at the time when the imaging device 50 captures a captured image and outputs the electrical signal to the angle conversion unit 62.
  • the angle conversion unit 62 acquires the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k measured at the time when the imaging device 50 captured the captured image in association with the captured image.
  • the processor 103 has an error detection unit 66.
  • the error detection unit 66 estimates the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k estimated by the work implement position estimation unit 65, and the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle acquired by the angle conversion unit 62.
  • the measurement result of ⁇ k is compared.
  • the error detector 66 calculates the error of the estimation result with respect to the true values of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k.
  • the processor 103 has a position estimation model updating unit 67.
  • the position estimation model updating unit 67 updates the position estimation model 80A based on the errors of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k calculated by the error detection unit 66. In this way, the position estimation model 80A is learned.
  • the position estimation model 80A is learned from the captured image of the work machine 2 captured by the imaging device 50 and the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k at the time of capturing the captured image, which are calculated by the angle conversion unit 62.
  • the learning data for making it consist.
  • the position estimation model 80A is learned at the factory before the hydraulic excavator 100 is shipped.
  • the processor 103 has an angle change amount calculation unit 72.
  • the angle change amount calculation unit 72 calculates the boom angle ⁇ b, the arm angle based on the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k acquired by the angle conversion unit 62, and the time when the angle is acquired by the angle conversion unit 62. The amount of change in ⁇ a and the bucket angle ⁇ k is acquired.
  • the angle change amount calculation unit 72 calculates the current value of the work implement 2 from the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k at the reference position of the work implement 2 and the change amounts of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k. Get the position.
  • the processor 103 has an error detection unit 76.
  • the error detection unit 76 compares the position estimation result of the work implement 2 estimated by the work implement position estimation unit 75 with the current position of the work implement 2 acquired by the angle change amount calculation unit 72.
  • the error detector 76 calculates the error of the estimation result with respect to the true values of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k.
  • the processor 103 has a position estimation model updating unit 77.
  • the position estimation model update unit 77 updates the position estimation model 80B based on the errors of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k calculated by the error detection unit 66. In this way, the position estimation model 80B is learned.
  • the operation command value represented by the pilot oil pressure detected by the pressure sensor 36 which operates the work implement based on the operation of the operation device 25, and the operation command value calculated by the angle change amount calculation unit 72 are detected.
  • the amount of displacement of the work machine 2 from the reference position constitutes learning data for learning the position estimation model 80B.
  • the position estimation model 80B is learned at the factory before the hydraulic excavator 100 is shipped.
  • FIG. 7 is a flowchart showing a method of manufacturing the learned first position estimation model.
  • FIG. 8 is a schematic diagram showing a process for learning the first position estimation model.
  • a position estimation model 80A first position estimation model for estimating the relative position of the work implement 2 with respect to the main body 1 is learned with reference to FIGS. 7 and 8. The processing for causing this will be described below.
  • a captured image is acquired.
  • the computer 102A more specifically, the image processing unit 61 acquires, from the image capturing device 50, a captured image captured by the image capturing device (camera) 50.
  • a time stamp is added to the captured image so that the captured time can be determined.
  • the image processing unit 61 may acquire the captured image captured by the imaging device 50 in real time.
  • the image processing unit 61 may acquire the captured image from the imaging device 50 at a predetermined time or at a predetermined time.
  • the image processing unit 61 performs image processing on the captured image and stores it in the storage device 104.
  • step S102 angle measurement data is acquired.
  • the computer 102A more specifically, the angle conversion unit 62 acquires, from the encoder 51, the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k detected by the encoder 51.
  • the angle data thus obtained is assigned to the captured image.
  • the measurement data detected at that time is associated (labeled) with the captured image taken at a certain time.
  • learning data 61A, 61B, 61C,... Containing a captured image and the angle of the work implement 2 at the time of capturing the captured image is created.
  • the learning data 61A, 61B, 61C,... Make up a learning data set for learning the position estimation model 80A.
  • the learning data includes a plurality of captured images in which the posture of the work machine 2 is different as shown in FIG.
  • the learning data may include a plurality of captured images obtained by capturing images of the work machine 2 having the same posture under different environments such as daytime, backlighting, and nighttime.
  • step S103 the relative position of the work implement 2 is output.
  • the computer 102A more specifically, the work implement position estimation unit 65 reads the position estimation model 80A from the storage device 104.
  • the position estimation model 80A includes the neural network shown in FIG.
  • the neural network includes an input layer 81A, an intermediate layer (hidden layer) 82A, and an output layer 83A.
  • Each layer 81A, 82A, 83A has one or more neurons. The number of neurons in each layer 81A, 82A, 83A can be set appropriately.
  • the neurons in adjacent layers are connected to each other, and weights (connection weights) are set for each connection.
  • the number of connected neurons may be set appropriately.
  • a threshold value is set for each neuron, and the output value of each neuron is determined by whether or not the sum of products of the input value to each neuron and the weight exceeds the threshold value.
  • the position estimation model 80A is learned so as to obtain the relative position of the work implement 2 from the captured image.
  • the parameters of the position estimation model 80A obtained by learning are stored in the storage device 104.
  • the parameters of the position estimation model 80A include, for example, the number of layers of the neural network, the number of neurons in each layer, the connection relationship between neurons, the connection weight between neurons, and the threshold value of each neuron.
  • the work implement position estimation unit 65 inputs the captured image captured by the imaging device 50 into the input layer 81A.
  • Output values indicating the relative position of the work implement 2 to the main body 1, specifically, the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k are output from the output layer 83A.
  • the computer 102A uses the captured image as an input of the input layer 81A to perform a forward propagation calculation process of the neural network of the position estimation model 80A. As a result, the computer 102A obtains the estimated position obtained by estimating the relative position of the work machine 2 as the output value output from the output layer 83A of the neural network.
  • step S103 does not have to be performed after the processing of step S102.
  • the process of step S102 and the process of step S103 may be performed at the same time, or the process of step S102 may be performed after the process of step S103.
  • step S104 the difference between the estimated position of the work implement 2 output in step S103 and the angle measurement data of the work implement 2 acquired in step S102 is calculated.
  • the computer 102A more specifically, the error detection unit 66, the position obtained by estimating the relative position of the work implement 2 from the captured image output from the output layer 83A of the position estimation model 80A, and the work obtained by the angle conversion unit 62.
  • the error of the estimated value with respect to the true value of the relative position of the working machine 2 is calculated by comparing the measured position of the relative position of the machine 2.
  • the computer 102A learns the position estimation model 80A using the picked-up image as input data and the measured position, which is the relative position of the work machine 2 measured at the time of picking up the picked-up image, as teacher data.
  • the computer 102A calculates the error of the connection weight between the neurons and the error of the threshold value of each neuron by back propagation from the calculated error of the output value.
  • step S105 the position estimation model 80A is updated.
  • the computer 102A more specifically, the position estimation model updating unit 67, based on the error of the estimated value with respect to the true value of the relative position of the work implement 2 calculated by the error detection unit 66, the weight of the coupling between the neurons, and The parameters of the position estimation model 80A such as the threshold value of the neuron are updated. Then, if the same captured image is input to the input layer 81A, an output value closer to the true value can be output.
  • the updated parameters of the position estimation model 80A are stored in the storage device 104.
  • the captured image is input to the updated position estimation model 80A and the output of the estimation result of the relative position of the work implement 2 is obtained.
  • the computer 102A repeats the processing from step S101 to step S105 until the estimation result of the relative position of the work implement 2 output by the position estimation model 80A matches the measurement position where the relative position of the work implement 2 is measured. .. In this way, the parameters of the position estimation model 80A are optimized, and the position estimation model 80A is learned.
  • the computer 102A finishes the learning of the position estimation model 80A when the position estimation model 80A has sufficiently learned and outputs a sufficiently accurate estimation result. In this way, the learned position estimation model 80A is created. Then, the process ends (end).
  • FIG. 9 is a flowchart showing a method of manufacturing the learned second position estimation model.
  • FIG. 10 is a schematic diagram showing a process for learning the second position estimation model. Although there is some overlap with the contents described with reference to FIG. 6, a position estimation model 80B (second position estimation model) for estimating the relative position of the work implement 2 with respect to the main body 1 is learned with reference to FIGS. 9 and 10. The processing for causing this will be described below.
  • step S111 the reference position of the working machine 2 is set.
  • the computer 102A obtains the output values indicating the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k from the captured image using the position estimation model 80A, based on the captured image, the current boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle.
  • the accuracy of the estimation result that the angle ⁇ k can be estimated with a certain probability is also obtained.
  • the reference position of the work implement 2 is, for example, the position of the work implement 2 according to the position estimation model 80A immediately before the accuracy of the estimation for obtaining the estimated position of the work implement 2 using the position estimation model 80A from the captured image falls below a predetermined value. It can be an estimated position.
  • the threshold value of the accuracy of estimation by the position estimation model 80A when setting the reference position of the work machine 2 may be set to 70% or more, for example, 75% or more, 80% or more, 85% or more, or 90% or more. it can.
  • pilot hydraulic pressure data is acquired.
  • the computer 102 ⁇ /b>A acquires the detection value of the pilot hydraulic pressure detected by the pressure sensor 36 from the pressure sensor 36.
  • the computer 102A may acquire the pilot hydraulic pressure detected by the pressure sensor 36 in real time.
  • the computer 102A may acquire the pilot hydraulic pressure from the pressure sensor 36 at a predetermined time or every predetermined time.
  • the computer 102A stores the acquired pilot hydraulic pressure in the storage device 104.
  • step S113 angle measurement data is acquired.
  • the computer 102A more specifically, the angle conversion unit 62 acquires, from the encoder 51, the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k detected by the encoder 51.
  • the angle data thus obtained is assigned to the pilot hydraulic pressure.
  • the angle measurement data acquired at that time is associated (labeled) with the pilot oil pressure obtained at a certain time.
  • the direction of the operation of the work implement 2 detected by the pressure sensor 36 (for example, the dumping operation or the excavation operation of the bucket 8) and the pilot hydraulic pressure, and the position of the work implement 2 at the time when the pilot hydraulic pressure is detected.
  • the learning data 71A, 71B, 71C,... make up a learning data set for learning the position estimation model 80B.
  • step S114 the amount of change in the angle of the work machine 2 is calculated.
  • the computer 102A more specifically, the angle change amount calculation unit 72 uses the two learning data 71A, 71B, 71C,... Created at different times to calculate the amount of displacement of the work machine 2 (for example, the amount of change in the bucket angle ⁇ k). To calculate.
  • the computer 102A also determines the fluctuation of the pilot hydraulic pressure at that time.
  • step S115 the displacement amount of the work implement 2 is estimated.
  • the computer 102A more specifically, the work implement displacement amount estimation unit 71 reads the position estimation model 80B from the storage device 104.
  • the position estimation model 80B includes the neural network shown in FIG.
  • the neural network includes an input layer 81B, an intermediate layer (hidden layer) 82B, and an output layer 83B.
  • Each layer 81B, 82B, 83B has one or more neurons. The number of neurons in each layer 81B, 82B, 83B can be set appropriately.
  • the neurons in adjacent layers are connected to each other, and weights (connection weights) are set for each connection.
  • the number of connected neurons may be set appropriately.
  • a threshold value is set for each neuron, and the output value of each neuron is determined by whether or not the sum of products of the input value to each neuron and the weight exceeds the threshold value.
  • the position estimation model 80B is learned so as to obtain the displacement amount of the work implement 2 from the pilot hydraulic pressure.
  • the parameters of the position estimation model 80B obtained by learning are stored in the storage device 104.
  • the parameters of the position estimation model 80B include, for example, the number of layers of the neural network, the number of neurons in each layer, the connection relationship between neurons, the connection weight between neurons, and the threshold value of each neuron.
  • the work implement displacement amount estimation unit 71 inputs the pilot hydraulic pressure detected by the pressure sensor 36 to the input layer 81B. From the output layer 83B, an output value indicating the amount of displacement of the work machine 2, specifically, the amount of change in the bucket angle ⁇ k is output.
  • the computer 102A uses the pilot hydraulic pressure as an input of the input layer 81B to perform a forward propagation calculation process of the neural network of the position estimation model 80B. As a result, the computer 102A obtains the estimated displacement amount, which is the estimated displacement amount of the working machine 2, as the output value output from the output layer 83B of the neural network.
  • the pilot hydraulic pressure for detecting the dumping operation or the excavating operation of the bucket 8 is input layer 81B. You may enter to.
  • the output value output from the output layer 83B may include the amount of change in the boom angle ⁇ b and the amount of change in the arm angle ⁇ a in addition to the amount of change in the bucket angle ⁇ k.
  • the data input to the input layer 81B may include the rotational speed of the engine 31, the capacity of the hydraulic pump 33, and the like in addition to the pilot hydraulic pressure, and the accuracy of estimation of the displacement amount of the work machine 2 can be improved by these additional input data. Can be improved.
  • step S116 the position of the work implement 2 is estimated.
  • the computer 102A more specifically, the work implement position estimation unit 75 adds the estimation result of the displacement amount of the work implement 2 from the time when the reference position is set to the current time to the reference position of the work implement 2 set in step S111. By doing so, the output of the estimated position obtained by estimating the current position of the work machine 2 is obtained.
  • steps S113 and S114 and the processing of steps S115 and S116 may not be performed after the processing of steps S113 and S114.
  • the processing of steps S113 and S114 and the processing of steps S115 and S116 may be performed at the same time, or the processing of steps S113 and S114 may be performed after the processing of S115 and S116.
  • step S117 the difference between the displacement amount of the working machine 2 calculated in step S114 and the estimated displacement amount of the working machine 2 output in step S115 is calculated.
  • the computer 102A more specifically, the error detection unit 76, uses the estimated displacement amount, which is output from the output layer 83B of the position estimation model 80B and estimates the displacement amount of the work implement 2 from the pilot hydraulic pressure, and the angle change amount calculation unit 72.
  • the error of the estimated value with respect to the true value of the displacement amount of the working machine 2 is calculated by comparing the obtained change amount of the angle of the working machine 2.
  • the computer 102A uses the pilot hydraulic pressure and the like as input data, and learns the position estimation model 80B by using the displacement amount, which is the change in the position of the work implement 2 from the time when the reference position is set to the time when the pilot hydraulic pressure is detected, as teacher data. ..
  • the computer 102A calculates the error of the connection weight between the neurons and the error of the threshold value of each neuron by back propagation from the calculated error of the output value.
  • step S118 the position estimation model 80B is updated.
  • the computer 102A more specifically, the position estimation model updating unit 77, based on the error of the estimated value with respect to the true value of the displacement amount of the work implement 2 calculated by the error detection unit 76, the weight of the coupling between the neurons, and The parameters of the position estimation model 80B such as the threshold value of the neuron are updated. Then, if the same captured image is input to the input layer 81B, an output value closer to the true value can be output.
  • the updated parameters of the position estimation model 80B are stored in the storage device 104.
  • the pilot hydraulic pressure is input to the updated position estimation model 80B and the output of the estimation result of the displacement amount of the working machine 2 is obtained.
  • the computer 102A repeats the processing from step S111 to step S118 until the estimation result of the displacement amount of the work machine 2 output by the position estimation model 80B matches the measurement result of the displacement amount of the work machine 2. In this way, the parameters of the position estimation model 80B are optimized, and the position estimation model 80B is learned.
  • the computer 102A finishes the learning of the position estimation model 80B when the position estimation model 80B has sufficiently learned and outputs a sufficiently accurate estimation result. In this way, the learned position estimation model 80B is created. Then, the process ends (end).
  • the initial values of various parameters of the position estimation models 80A and 80B may be given by templates. Alternatively, the initial values of the parameters may be manually given by human input.
  • the computer 102A uses the initial values of the parameters based on the values stored in the storage device 104 as the parameters of the position estimation models 80A and 80B to be re-learned. May be prepared.
  • FIG. 11 is a block diagram showing the outline of the internal configuration of the computer 102B shipped from the factory.
  • the encoder 51 is temporarily attached to the work machine 2 for the purpose of learning the position estimation models 80A and 80B before shipment, and is removed from the work machine 2 when the learning of the position estimation models 80A and 80B is completed.
  • the hydraulic excavator 100 shipped from the factory does not include the encoder 51.
  • the hydraulic excavator 100 shipped from the factory includes only the image pickup device 50, the pressure sensor 36, and the computer 102B (processor 103 and storage device 104) in the system configuration shown in FIG.
  • FIG. 12 is a flowchart showing a process executed by the computer 102B to estimate the relative position of the work machine 2 after factory shipment.
  • FIG. 13 is a schematic diagram showing a process of estimating the relative position of the work implement 2 from the captured image using the position estimation model 80A that has been learned so as to obtain the relative position of the work implement 2 from the captured image.
  • FIG. 14 shows the relative position of the work implement 2 from the captured image and the operation command value, which uses the learned position estimation model 80A and the learned position estimation model 80B to obtain the relative position of the work implement 2 from the pilot hydraulic pressure. It is a schematic diagram which shows the process which estimates. With reference to FIGS. 11 to 14, a process of estimating the relative position of the work implement 2 from the captured image and the pilot hydraulic pressure acquired at the work site after factory shipment will be described below.
  • step S201 a captured image is acquired.
  • the computer 102B more specifically, the image processing unit 61 acquires, from the image capturing apparatus 50, a captured image 63 (FIG. 13) captured by the image capturing apparatus (camera) 50.
  • step S202 the relative position of the work implement 2 is output.
  • the computer 102B more specifically, the work implement position estimation unit 65 acquires the learned position estimation model 80A by reading the position estimation model 80A and the optimum values of the learned parameters from the storage device 104.
  • the work implement position estimation unit 65 uses the captured image 63 captured by the imaging device 50 as input data to the learned position estimation model 80A.
  • the work implement position estimation unit 65 inputs the captured image 63 to each neuron included in the input layer 81A of the learned position estimation model 80A.
  • step S203 it is determined whether or not the accuracy of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k output in step S202 is greater than or equal to a threshold value. If the accuracy of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k are all equal to or greater than the threshold value, and it is determined that all of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k have been estimated with high accuracy, step S202.
  • the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k output in 1 above are determined to determine the relative position of the work machine 2 with respect to the main body 1 at the present time.
  • the position estimation model 80A is used to determine the accuracy.
  • An output with a high angle output value 78 can be obtained.
  • the determination in step S203 is YES
  • the process proceeds to step S204, and the reference position is updated.
  • the computer 102B updates the angle output value 78 output in step S202 as a reference position used in subsequent processing, and stores the updated reference position and the time when the angle output value 78 is output in step S202 in the storage device 104.
  • the bucket 8 when the work implement 2 is used for excavation work, the bucket 8 may be hidden in the soil and may not be clearly seen in the captured image 63.
  • the angle output temporary value 78T it is determined that the boom angle ⁇ b and the arm angle ⁇ a have been estimated with high accuracy, but the bucket angle ⁇ k has low accuracy and may be less than the threshold value. In such a case, it is not always appropriate to directly use the bucket angle ⁇ k estimated using the position estimation model 80A.
  • step S203 when the accuracy of one or more of the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k output from the position estimation model 80A is less than the threshold value, the determination in step S203 is NO. To be judged. In this case, the process proceeds to step S205, and pilot hydraulic pressure data is acquired.
  • the computer 102B acquires the pilot oil pressure data 73 (FIG. 14) detected by the pressure sensor 36 from the pressure sensor 36. As shown in FIG. 14, the pilot oil pressure data 73 includes the operation direction of the position estimation target part (in this example, the bucket 8) and the pilot oil pressure detected by the pressure sensor 36 corresponding to the operation direction. There is.
  • step S206 the displacement amount of the work implement 2 is estimated.
  • the computer 102B more specifically, the work implement displacement amount estimation unit 71 acquires the learned position estimation model 80B by reading the position estimation model 80B and the optimum values of the learned parameters from the storage device 104.
  • the work implement displacement amount estimation unit 71 inputs the pilot hydraulic pressure data 73 to each neuron included in the input layer 81B of the learned position estimation model 80B.
  • step S207 the position of the work implement 2 is estimated.
  • the computer 102B more specifically, the work implement position estimation unit 75 reads the reference position of the work implement 2 from the storage device 104.
  • the work implement position estimation unit 75 estimates the current position of the work implement 2 by adding the displacement amount of the work implement 2 from the time when the reference position is updated in step S204 to the reference position of the work implement 2.
  • the position (bucket angle ⁇ k) of the position estimation target portion (bucket 8 in this example) is estimated.
  • an angle output value 78 including the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k is output.
  • step S208 the computer 102B generates management data including the relative position of the work machine 2 with respect to the main body 1.
  • the computer 102B records the management data in the storage device 104. Then, the process ends (end).
  • the computer 102B has the learned position estimation model 80B for obtaining the position of the position estimation target portion.
  • the computer 102B acquires the pilot hydraulic pressure data 73 as an operation command value for operating the work implement 2 based on the operation of the first operation lever 25R and the second operation lever 25L.
  • the computer 102B estimates the displacement amount of the work implement 2 from the pilot hydraulic pressure data 73 using the learned position estimation model 80B.
  • the computer 102B further outputs an estimated position obtained by estimating the position of the position estimation target portion from the reference position of the work machine 2 and the displacement amount from the reference position.
  • the posture of the work implement 2 can be estimated by using the position estimation model 80B of artificial intelligence suitable for estimating the relative position of the work implement 2 with respect to the main body 1.
  • the posture of the work machine 2 can be easily and accurately determined by the computer 102B using artificial intelligence.
  • the sensors for detecting the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k can be eliminated.
  • the durability of the angle sensor does not affect the work of the hydraulic excavator 100. Therefore, the current posture of the working machine 2 can be acquired similarly to the conventional hydraulic excavator 100 with a simple, inexpensive and highly reliable configuration. be able to.
  • FIG. 15 is a schematic diagram showing a modification example regarding learning of the position estimation models 80A and 80B.
  • the example in which the position estimation models 80A and 80B are learned before factory shipment of the hydraulic excavator 100 has been described.
  • Learning data for learning the position estimation models 80A and 80B may be collected from a plurality of hydraulic excavators 100.
  • the 1st hydraulic shovel 100 (hydraulic shovel 100A), the 2nd hydraulic shovel 100 (hydraulic shovel 100B), the 3rd hydraulic shovel 100 (hydraulic shovel 100C), and the 4th hydraulic shovel shown in FIG. 100 (hydraulic excavator 100D) is the same model.
  • the hydraulic excavators 100A, 100B, 100C include an imaging device 50 and an encoder 51.
  • the hydraulic excavators 100A, 100B, 100C have been shipped from the factory and are at the work site.
  • the computer 102A acquires a captured image captured by the imaging device 50 from each hydraulic excavator 100A, 100B, 100C.
  • the computer 102A also acquires the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k measured at the time of capturing the captured image from each of the hydraulic excavators 100A, 100B, and 100C in association with the captured image.
  • the computer 102A learns the position estimation model 80A so that the computer 102A can use the captured image acquired at the same time and the angle of the work implement 2 to obtain an estimated position in which the relative position of the work implement 2 is estimated from the captured image.
  • the computer 102A acquires the pilot hydraulic pressure detected by the pressure sensor 36 from each hydraulic excavator 100A, 100B, 100C.
  • the computer 102A also acquires from each of the hydraulic excavators 100A, 100B, 100C the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k measured at the time when the pilot hydraulic pressure is detected, in association with the pilot hydraulic pressure.
  • the computer 102A learns the position estimation model 80B so that the estimated position obtained by estimating the relative position of the working machine 2 from the pilot hydraulic pressure can be obtained using the pilot hydraulic pressure and the angle of the working machine 2 acquired at the same time.
  • the computer 102A may acquire the captured image and the measurement data of the angle of the work machine 2 from each hydraulic excavator 100A, 100B, 100C via the communication interface 105 (FIG. 5). Alternatively, the computer 102A may acquire the captured image and the measurement data of the angle of the working machine 2 from each of the hydraulic excavators 100A, 100B, 100C via the external recording medium 109.
  • the computer 102A may be located at the same work site as the hydraulic excavators 100A, 100B, 100C. Alternatively, the computer 102A may be located at a remote place, for example, a management center, away from the work site.
  • the hydraulic excavators 100A, 100B, 100C may be at the same work site or at different work sites.
  • the learned position estimation models 80A, 80B are provided to the hydraulic excavators 100A, 100B, 100C via the communication interface 105, the external recording medium 109, or the like. In this way, each hydraulic excavator 100A, 100B, 100C is equipped with the learned position estimation models 80A, 80B.
  • the stored position estimation models 80A, 80B are rewritten.
  • the position estimation models 80A and 80B may be periodically rewritten by periodically collecting the learning data and learning the position estimation models 80A and 80B described above.
  • the latest updated values of the parameters of the position estimation models 80A and 80B are stored in the storage device 104 each time.
  • the learned position estimation models 80A and 80B are also provided to the hydraulic excavator 100D.
  • the position estimation models 80A and 80B are provided to both the hydraulic excavators 100A, 100B and 100C that provide learning data and the hydraulic excavator 100D that does not provide learning data.
  • the hydraulic excavator 100D may be on the same work site as any of the hydraulic excavators 100A, 100B, 100C, or may be on a different work site than the hydraulic excavators 100A, 100B, 100C.
  • the hydraulic excavator 100D may be before factory shipment.
  • the position estimation models 80A and 80B described above are not limited to models learned by machine learning using the learning data 61A, 61B, 61C,... And the learning data 71A, 71B, 71C,. It may be a model generated by using.
  • the position estimation models 80A and 80B may be other learned models (distillation models) that are trained based on the results obtained by repeating input and output of data to and from the learned model.
  • FIG. 16 is a flowchart showing a process for generating a distillation model.
  • step S301 a captured image and pilot hydraulic pressure data are acquired.
  • the computer 102A more specifically, the image processing unit 61 acquires, from the image capturing device 50, a captured image 63 (FIG. 13) captured by the image capturing device (camera) 50.
  • the computer 102A acquires the pilot oil pressure data 73 (FIG. 14) detected by the pressure sensor 36 from the pressure sensor 36.
  • step S302 the computer 102A obtains an estimated position by estimating the relative position of the work implement 2 with respect to the main body 1, using the learned position estimation models 80A and 80B.
  • step S303 the computer 102A outputs the estimated relative position of the work implement 2.
  • the computer 102A more specifically, the work implement position estimation unit 65 reads the learned position estimation model 80A from the storage device 104.
  • the work implement position estimation unit 65 inputs the captured image 63 captured by the imaging device 50 to the input layer 81A of the learned position estimation model 80A.
  • estimation of the relative position of the work implement 2 with respect to the main body 1 specifically, the angle output value 78 (FIG. 11) indicating the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k.
  • the result is output.
  • the computer 102A more specifically, the work implement displacement amount estimation unit 71 reads out the learned position estimation model 80B from the storage device 104.
  • the work implement displacement amount estimation unit 71 inputs the pilot hydraulic pressure detected by the pressure sensor 36 into the input layer 81B of the learned position estimation model 80B.
  • the estimation result of the displacement amount of the work machine 2 specifically, the displacement amount of the position estimation target portion (for example, the bucket 8) (for example, the variation amount of the bucket angle ⁇ k) is output. To be done.
  • step S304 the computer 102A stores the captured image and the pilot oil pressure acquired in step S301, and the estimation result of the relative position of the work implement 2 output in step S303 in the storage device 104 as learning data.
  • step S305 the computer 102A learns another position estimation model using the learning model.
  • the computer 102A inputs the captured image and the pilot hydraulic pressure to the input layer of this another position estimation model.
  • the computer 102A outputs, from the output layer of this other position estimation model, an output value indicating the estimation result of the relative position of the work implement 2 with respect to the main body 1, specifically, the boom angle ⁇ b, the arm angle ⁇ a, and the bucket angle ⁇ k. ..
  • the difference between the relative position of the work implement 2 output from this other position estimation model and the relative position of the work implement 2 output from the learned position estimation models 80A and 80B output in step S303 is calculated. Based on this difference, computer 102A updates the parameters of this other position estimation model. In this way, learning of this other position estimation model is performed.
  • step S306 the parameters of the updated another position estimation model are stored in the storage device 104 as learned parameters. Then, the process ends (end).
  • the computer 102A can estimate the relative position of the work implement 2 with respect to the main body 1 by using another position estimation model that is simpler than the learned position estimation model. As a result, the load on the computer 102A for estimating the relative position of the work machine 2 can be reduced.
  • the computer 102A may learn another position estimation model using learning data generated by another computer.
  • the position estimation models 80A and 80B include neural networks.
  • the position estimation models 80A and 80B are not limited to this, and may be models such as support vector machines that can accurately estimate the relative position of the work machine 2 with respect to the main body 1 from the captured image of the work machine 2 using machine learning. Good.
  • the positions of the boom 6 and the arm 7 are estimated from the captured image using the learned position estimation model 80A, and the position of the bucket 8 is estimated from the pilot hydraulic pressure using the learned position estimation model 80B.
  • the learned position estimation model 80B can be similarly applied.
  • the bucket 8 is clearly reflected in the captured image, and the position of the bucket 8 can be accurately estimated from the captured image, but the boom 6 or the arm 7 other than the bucket 8, which is a part of the work machine 2, is not clear in the captured image.
  • the position of the boom 6 or arm 7 may be estimated from the pilot hydraulic pressure.
  • the displacement amount of the working machine 2 from the reference position may be calibrated at the stroke end of the hydraulic cylinder.
  • the position estimation target part is the bucket 8
  • the bucket angle ⁇ k when the stroke length of the bucket cylinder 12 is maximum and when the stroke length is minimum can be stored in the storage device 104 in advance.
  • the estimated bucket angle ⁇ k is calibrated by comparing the estimated bucket angle ⁇ k with the bucket angle ⁇ k stored in the storage device 104 when the bucket cylinder 12 moves to reach the stroke end. The accuracy of estimating the displacement amount of the work machine 2 can be improved.
  • the operating device 25 may be an electrical type operating device.
  • the operating device 25 may include an operating member such as an electric lever and an operation amount sensor such as a potentiometer inclinometer that electrically detects the tilt amount of the operating member.
  • the detection data of the operation amount sensor is output to the computer 102A.
  • a pilot oil passage 450 that connects the hydraulic pump 33 and the direction control valve 34 without passing through the operating device 25 is provided, and a control valve for controlling the pilot oil pressure is arranged in the pilot oil passage 450.
  • the computer 102A outputs a control signal for driving the control valve based on the detection data of the operation amount sensor.
  • the directional control valve 34 is controlled based on the pilot hydraulic pressure adjusted by the control valve, so that the amount of hydraulic oil supplied to the hydraulic actuator 40 is adjusted.
  • the detection data of the operation amount sensor corresponds to the operation command value for operating the work implement 2 based on the operation of the operation member.
  • the work machine to which the idea of the present disclosure can be applied is not limited to a hydraulic excavator, and may be a work machine having a work machine such as a bulldozer, a motor grader, or a wheel loader.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Civil Engineering (AREA)
  • Structural Engineering (AREA)
  • Mining & Mineral Resources (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Fluid Mechanics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mechanical Engineering (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Operation Control Of Excavators (AREA)

Abstract

作業機械本体と、作業機械本体に取り付けられた作業機と、作業機を操作するための操作部材と、コンピュータ(102A)とを備える、作業機械を含むシステムが提供される。コンピュータ(102A)は、作業機のうち位置推定対象部の位置を求めるための、学習済みの位置推定モデル(80B)を有している。コンピュータ(102A)は、操作部材の操作によって作業機を動作させる操作指令値を取得し、学習済みの位置推定モデル(80B)を用いて操作指令値から位置推定対象部の基準位置からの変位量を推定し、基準位置および変位量から位置推定対象部の位置を推定した推定位置を出力する。

Description

作業機械を含むシステム、コンピュータによって実行される方法、学習済みの位置推定モデルの製造方法、および学習用データ
 本開示は、作業機械を含むシステム、コンピュータによって実行される方法、学習済みの位置推定モデルの製造方法、および学習用データに関する。
 油圧ショベルに関し、特許文献1には、ブームピンにブーム角度センサを取り付け、アームピンにアーム角度センサを取り付け、バケットリンクにバケット角度センサを取り付け、これら角度センサで検出した値に基づいてバケットの爪先の位置を算出する技術が開示されている。
特開2017-71982号公報
 上記文献に記載の構成では、作業機の姿勢を取得するためにブーム、アームおよびバケットの各々の軸に角度センサを取り付ける必要があり、部品点数が増加する。
 本開示では、作業機の位置を求めるための、作業機械を含むシステム、コンピュータによって実行される方法、学習済みの位置推定モデルの製造方法、および学習用データが提供される。
 本開示のある局面に従うと、作業機械本体と、作業機械本体に取り付けられた作業機と、作業機を操作するための操作部材と、コンピュータとを備える、作業機械を含むシステムが提供される。コンピュータは、作業機のうち、位置を推定する対象の部位である位置推定対象部の位置を求めるための、学習済み位置推定モデルを有している。コンピュータは、操作部材の操作によって作業機を動作させる操作指令値を取得し、学習済み位置推定モデルを用いて操作指令値から位置推定対象部の基準位置からの変位量を推定し、基準位置および変位量から位置推定対象部の位置を推定した第1推定位置を出力する。
 本開示のある局面に従うと、コンピュータによって実行される方法が提供される。当該方法は、以下の処理を含んでいる。第1の処理は、作業機械本体に設けられた作業機を動作させる操作指令値を取得することである。第2の処理は、作業機の位置を求めるための学習済み位置推定モデルを用いて、操作指令値から作業機の位置を推定した推定位置を求めることである。
 本開示のある局面に従うと、学習済みの位置推定モデルの製造方法が提供される。製造方法は、以下の処理を含んでいる。第1の処理は、学習用データを取得することである。学習用データは、作業機械本体に取り付けられた作業機を動作させる操作指令値と、操作指令値を検出したときの作業機の基準位置からの変位量とを含んでいる。第2の処理は、学習用データにより位置推定モデルを学習させることである。
 本開示のある局面に従うと、作業機の位置を求める位置推定モデルを学習させるための学習用データが提供される。学習用データは、作業機械本体に取り付けられた作業機を動作させる操作指令値と、操作指令値を検出したときの作業機の基準位置からの変位量とを備えている。
 本開示のある局面に従うと、学習済みの位置推定モデルの製造方法が提供される。製造方法は、以下の処理を備えている。第1の処理は、作業機械本体に取り付けられた作業機を動作させる操作指令値を取得することである。第2の処理は、学習済みの位置推定モデルを用いて、操作指令値から作業機の位置を推定した推定位置を求めることである。第3の処理は、操作指令値と推定位置とを含む学習用データにより、別の位置推定モデルを学習させることである。
 本開示に従えば、作業機の位置を精度良く取得することができる。
実施形態に基づく油圧ショベルの外観図である。 ブーム角度、アーム角度およびバケット角度について説明する、作業機の側面図である。 図1に示す油圧ショベルの模式的平面図である。 油圧ショベルを含むシステムの概略構成を示すブロック図である。 コンピュータの構成を示す模式図である。 出荷前のコンピュータの内部構成の概略を示す機能ブロック図である。 学習済みの第1の位置推定モデルの製造方法を示すフローチャートである。 第1の位置推定モデルを学習させるための処理を示す概略図である。 学習済みの第2の位置推定モデルの製造方法を示すフローチャートである。 第2の位置推定モデルを学習させるための処理を示す概略図である。 工場出荷されるコンピュータの内部構成の概略を示す機能ブロック図である。 工場出荷後に作業機の相対位置を推定するためにコンピュータによって実行される処理を示すフローチャートである。 学習済みの位置推定モデルを用いた、撮像画像から作業機の相対位置を推定する処理を示す模式図である。 学習済みの位置推定モデルを用いた、撮像画像および操作指令値から作業機の相対位置を推定する処理を示す模式図である。 位置推定モデルの学習に関する変形例を示す概略図である。 蒸留モデルを生成するための処理を示すフローチャートである。
 以下、実施形態について図に基づいて説明する。以下の説明では、同一部品には、同一の符号を付している。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
 実施形態においては、まず、本開示の思想を適用可能な作業機械の一例である油圧ショベルの構成について説明する。図1は、実施形態に基づく油圧ショベル100の外観図である。
 図1に示されるように、油圧ショベル100は、本体1と、油圧により作動する作業機2とを有している。本体1は、旋回体3と、走行装置5とを有している。走行装置5は、一対の履帯5Crを有している。油圧ショベル100は、履帯5Crの回転により走行可能である。なお、走行装置5が車輪(タイヤ)を有していてもよい。
 旋回体3は、走行装置5の上に配置され、かつ走行装置5により支持されている。旋回体3は、旋回軸RXを中心として走行装置5に対して旋回可能である。旋回体3は、キャブ4を有している。油圧ショベル100の乗員(オペレータ)は、このキャブ4に搭乗して、油圧ショベル100を操縦する。キャブ4には、オペレータが着座する運転席4Sが設けられている。オペレータは、キャブ4内において油圧ショベル100を操作可能である。オペレータは、キャブ4内において、作業機2の操作が可能であり、走行装置5に対する旋回体3の旋回操作が可能であり、また走行装置5による油圧ショベル100の走行操作が可能である。
 旋回体3は、エンジンが収容されるエンジンルーム9と、旋回体3の後部に設けられるカウンタウェイトとを有している。エンジンルーム9には、図示しないエンジンおよび油圧ポンプなどが配置されている。
 旋回体3において、エンジンルーム9の前方に手すり29が設けられている。手すり29には、アンテナ21が設けられている。アンテナ21は、たとえばGNSS(Global Navigation Satellite Systems:全地球航法衛星システム)用のアンテナである。アンテナ21は、車幅方向に互いに離れるように旋回体3に設けられた第1アンテナ21Aおよび第2アンテナ21Bを有している。
 作業機2は、旋回体3に支持されている。作業機2は、ブーム6と、アーム7と、バケット8とを有している。ブーム6は、旋回体3に回動可能に連結されている。アーム7はブーム6に回動可能に連結されている。バケット8は、アーム7に回動可能に連結されている。バケット8は、複数の刃を有している。バケット8の先端部を、刃先8aと称する。
 ブーム6の基端部は、ブームピン13を介して旋回体3に連結されている。アーム7の基端部は、アームピン14を介してブーム6の先端部に連結されている。バケット8は、バケットピン15を介してアーム7の先端部に連結されている。バケット8は、作業機2の先端に着脱可能に装着されたアタッチメントの一例である。作業の種類に応じて、アタッチメントが、ブレーカ、グラップル、またはリフティングマグネットなどに付け替えられる。
 なお本実施形態においては、作業機2を基準として、油圧ショベル100の各部の位置関係について説明する。
 作業機2のブーム6は、旋回体3に対して、ブーム6の基端部に設けられたブームピン13を中心に回動する。旋回体3に対して回動するブーム6の特定の部分、たとえばブーム6の先端部が移動する軌跡は円弧状である。その円弧を含む平面が、図1に示す動作平面Pとして特定される。油圧ショベル100を平面視した場合に、動作平面Pは直線として表される。この直線の延びる方向が、油圧ショベル100の本体1の前後方向、または旋回体3の前後方向であり、以下では単に前後方向ともいう。油圧ショベル100の本体1の左右方向(車幅方向)、または旋回体3の左右方向とは、平面視において前後方向と直交する方向であり、以下では単に左右方向ともいう。
 前後方向において、油圧ショベル100の本体1から作業機2が突き出している側が前方向であり、前方向と反対方向が後方向である。前方向を視て左右方向の右側、左側がそれぞれ右方向、左方向である。
 前後方向とは、キャブ4内の運転席に着座したオペレータの前後方向である。運転席に着座したオペレータに正対する方向が前方向であり、運転席に着座したオペレータの背後方向が後方向である。左右方向とは、運転席に着座したオペレータの左右方向である。運転席に着座したオペレータが正面に正対したときの右側、左側がそれぞれ右方向、左方向である。
 ブーム6は、ブームピン13を中心に回動可能である。アーム7は、アームピン14を中心に回動可能である。バケット8は、バケットピン15を中心に回動可能である。アーム7およびバケット8のそれぞれは、ブーム6の先端側で移動可能な可動部材である。ブームピン13、アームピン14およびバケットピン15は、動作平面Pと直交する方向、すなわち左右方向に延びている。動作平面Pは、ブーム6、アーム7およびバケット8の各々の回動中心となる軸線の、少なくとも一つ(実施形態の場合、三つ全て)と直交している。
 上述した通り、ブーム6は動作平面P上で旋回体3に対して回動動作する。同様に、アーム7は動作平面P上でブーム6に対して回動動作し、バケット8は動作平面P上でアーム7に対して回動動作する。実施形態の作業機2は、その全体が動作平面P上で動作する。バケット8の刃先8aは、動作平面P上を移動する。動作平面Pは、作業機2の可動範囲を含む垂直な平面である。動作平面Pは、ブーム6、アーム7およびバケット8の各々と交差している。動作平面Pは、ブーム6、アーム7およびバケット8の左右方向の中心に設定することができる。
 図1に示すように、本明細書において、動作平面P上における水平な方向にX軸を設定し、動作平面P上における垂直上向き方向にY軸を設定する。X軸とY軸とは、互いに直交している。
 作業機2は、ブームシリンダ10と、アームシリンダ11と、バケットシリンダ12とを有している。ブームシリンダ10は、ブーム6を駆動する。アームシリンダ11は、アーム7を駆動する。バケットシリンダ12は、バケット8を駆動する。ブームシリンダ10、アームシリンダ11、およびバケットシリンダ12のそれぞれは、作動油によって駆動される油圧シリンダである。
 作業機2は、バケットリンクを有している。バケットリンクは、第1リンク部材16と、第2リンク部材17とを有している。第1リンク部材16の先端と第2リンク部材17の先端とは、バケットシリンダトップピン19を介して、相対回転可能に連結されている。バケットシリンダトップピン19は、バケットシリンダ12の先端に連結されている。したがって第1リンク部材16および第2リンク部材17は、バケットシリンダ12にピン連結されている。
 第1リンク部材16の基端は、アーム7の先端部のバケットピン15の近傍において、第1リンクピン18を介してアーム7に回転可能に連結されている。第1リンク部材16は、アーム7にピン連結されている。第2リンク部材17の基端は、第2リンクピン20を介して、バケット8の根元部分のブラケットに回転可能に連結されている。第2リンク部材17は、バケット8にピン連結されている。
 油圧ショベル100は、撮像装置50を有している。実施形態の撮像装置50は、単眼カメラである。
 撮像装置50は、旋回体3に取り付けられている。撮像装置50は、キャブ4に取り付けられている。撮像装置50は、キャブ4の内部に取り付けられている。撮像装置50は、キャブ4の左フロントピラーの上端付近に取り付けられている。撮像装置50は、キャブ4の内部空間における、左右方向において作業機2からより離れる位置である左フロントピラーの近傍に配置されている。撮像装置50は、左右方向において、作業機2の動作平面Pから離れて配置されている。撮像装置50は、動作平面Pよりも左方に配置されている。
 図2は、ブーム角度θb、アーム角度θa、およびバケット角度θkについて説明する、作業機2の側面図である。
 図2に示すように、側方視において、ブームピン13とアームピン14とを通る直線と、上下方向に延びる直線との成す角度を、ブーム角度θbとする。ブーム角度θbは、旋回体3に対するブーム6の角度を表す。
 側方視において、ブームピン13とアームピン14とを通る直線と、アームピン14とバケットピン15とを通る直線との成す角度を、アーム角度θaとする。アーム角度θaは、ブーム6に対するアーム7の角度を表す。
 側方視において、アームピン14とバケットピン15とを通る直線と、バケットピン15と刃先8aとを通る直線との成す角度を、バケット角度θkとする。バケット角度θkは、アーム7に対するバケット8の角度を表す。
 動作平面P上における作業機2の姿勢は、ブーム角度θb、アーム角度θaおよびバケット角度θkの組み合わせで決まる。たとえば、アーム7の先端部の第1リンクピン18の動作平面P上の位置、すなわちXY座標は、ブーム角度θbおよびアーム角度θaの組み合わせで決まる。バケット8の動作に追随して変位するバケットシリンダトップピン19の動作平面P上の位置、すなわちXY座標は、ブーム角度θb、アーム角度θaおよびバケット角度θkの組み合わせで決まる。
 図3は、図1に示す油圧ショベル100の模式的平面図である。図3には、図1を参照して説明した作業機2、旋回体3、キャブ4、および撮像装置50が、模式的に図示されている。動作平面Pは、図3においては、図中の上下方向に延びる直線であり、二点鎖線で図示されている。図3に一点鎖線で図示されている光軸AXは、撮像装置50の光軸である。光軸AXの延びる方向と、動作平面Pの延びる方向とは、非平行である。光軸AXの延びる方向は、動作平面Pの延びる方向に対して傾斜している。光軸AXは、動作平面Pに交差している。
 撮像装置50は、作業機2の動作平面を斜め方向から見る位置に装着されている。撮像装置50は、動作平面Pに対して0°より大きい角度で、作業機2を撮像する。作業機2と撮像装置50との両方が旋回体3に取り付けられているために、油圧ショベル100が走行または旋回しても、動作平面Pに対する撮像装置50の位置関係は変化しない。動作平面Pに対する撮像装置50の取付位置は、油圧ショベル100の機種毎に予め決定されている。
 撮像装置50は、作業機2を撮像する。撮像装置50は、作業機2の動作平面Pを撮像する。撮像装置50は、動作平面P上を移動する作業機2を撮像する。撮像装置50による撮像画像は、作業機2の少なくとも一部を含んでいる。
 図4は、油圧ショベル100を含むシステムの概略構成を示すブロック図である。実施形態に係るシステムは、作業機械本体(本体1)に対する作業機2の相対位置を求めるためのシステムである。実施形態に係るシステムは、図1~3を参照して説明した作業機械の一例としての油圧ショベル100と、図4に示される制御装置200とを含んでいる。制御装置200は、油圧ショベル100に搭載されていてもよい。
 制御装置200は、アンテナ21と、グローバル座標演算部23と、IMU(Inertial Measurement Unit)24と、操作装置25と、方向制御弁34と、圧力センサ36と、コンピュータ102Aとを有している。
 アンテナ21は、受信した電波(GNSS電波)に応じた信号をグローバル座標演算部23に出力する。グローバル座標演算部23は、グローバル座標系におけるアンテナ21の設置位置を検出する。グローバル座標系は、作業エリアに設置した基準位置を元にした3次元座標系である。基準位置は、作業エリアに設定された基準杭の先端の位置であってもよい。
 IMU24は、旋回体3に設けられている。本例においては、IMU24は、キャブ4の下部に配置されている。旋回体3において、キャブ4の下部に高剛性のフレームが配置されている。IMU24は、そのフレーム上に配置されている。なお、IMU24は、旋回体3の旋回軸RXの側方(右側又は左側)に配置されてもよい。IMU24は、前後方向、左右方向および上下方向における旋回体3の加速度と、前後方向、左右方向および上下方向まわりの旋回体3の角速度とを計測する。
 操作装置25は、キャブ4内に配置されている。オペレータにより操作装置25が操作される。操作装置25は、作業機2を駆動するオペレータ操作を受け付ける。また操作装置25は、旋回体3を旋回させるオペレータ操作を受け付ける。操作装置25は、オペレータ操作に応じた操作信号を出力する。本例においては、操作装置25は、パイロット油圧方式の操作装置である。
 制御装置200は、油圧ポンプ33がエンジン31によって駆動され、油圧ポンプ33から吐出された作動油が、オペレータによる操作装置25の操作に対応して、方向制御弁34を介して各種の油圧アクチュエータ40に供給されるように、構成されている。油圧アクチュエータ40への油圧の供給および排出が制御されることにより、作業機2の動作、旋回体3の旋回、および走行装置5の走行動作が制御される。油圧アクチュエータ40は、図1に示されるブームシリンダ10、アームシリンダ11、バケットシリンダ12および図示しない旋回モータとを含んでいる。
 エンジン31は、ディーゼルエンジンである。エンジン31への燃料の噴射量がコンピュータ102Aによって制御されることにより、エンジン31の出力が制御される。
 油圧ポンプ33は、エンジン31に連結されている。エンジン31の回転駆動力が油圧ポンプ33に伝達されることにより、油圧ポンプ33が駆動される。油圧ポンプ33は、斜板を有し、斜板の傾転角が変更されることにより吐出容量を変化させる可変容量型の油圧ポンプである。油圧ポンプ33から吐出された作動油は、減圧弁によって一定の圧力に減圧されて、方向制御弁34に供給される。
 方向制御弁34は、ロッド状のスプールを動かして作動油が流れる方向を切り換えるスプール方式の弁である。スプールが軸方向に移動することにより、油圧アクチュエータ40に対する作動油の供給量が調整される。方向制御弁34には、スプールの移動距離(スプールストローク)を検出するスプールストロークセンサが設けられる。
 なお、本例においては、油圧アクチュエータ40を作動するために、その油圧アクチュエータ40に供給される油は作動油と称される。また、方向制御弁34を作動するためにその方向制御弁34に供給される油はパイロット油と称される。また、パイロット油の圧力はパイロット油圧と称される。
 油圧ポンプ33は、作動油とパイロット油との両方を送出してもよい。例えば、油圧ポンプ33から送出された作動油の一部が減圧弁で減圧され、その減圧された作動油がパイロット油として使用されてもよい。また、油圧ポンプ33は、作動油を送出する油圧ポンプ(メイン油圧ポンプ)と、パイロット油を送出する油圧ポンプ(パイロット油圧ポンプ)を別々に有してもよい。
 操作装置25は、第1操作レバー25Rと、第2操作レバー25Lとを有している。第1操作レバー25Rは、たとえば運転席4Sの右側に配置されている。第2操作レバー25Lは、たとえば運転席4Sの左側に配置されている。第1操作レバー25R及び第2操作レバー25Lでは、前後左右の動作が2軸の動作に対応する。
 第1操作レバー25Rにより、ブーム6及びバケット8が操作される。第1操作レバー25Rの前後方向の操作は、ブーム6の操作に対応し、前後方向の操作に応じてブーム6が上昇する動作及び下降する動作が実行される。第1操作レバー25Rの左右方向の操作は、バケット8の操作に対応し、左右方向の操作に応じてバケット8の上下方向への動作が実行される。
 第2操作レバー25Lにより、アーム7及び旋回体3が操作される。第2操作レバー25Lの前後方向の操作は、アーム7の操作に対応し、前後方向の操作に応じてアーム7の上下方向への動作が実行される。第2操作レバー25Lの左右方向の操作は、旋回体3の旋回に対応し、左右方向の操作に応じて旋回体3の右旋回動作及び左旋回動作が実行される。
 本例においては、ブーム6が上昇する動作は上げ動作、下降する動作は下げ動作とも称する。また、アーム7の上下方向への動作は、それぞれダンプ動作、掘削動作とも称する。バケット8の上下方向への動作は、それぞれダンプ動作、掘削動作とも称する。
 なお、第1操作レバー25Rの左右方向の操作がブーム6の操作に対応し、前後方向の操作がバケット8の操作に対応してもよい。なお、第2操作レバー25Lの前後方向が旋回体3の操作に対応し、左右方向の操作がアーム7の操作に対応してもよい。
 第1操作レバー25Rおよび第2操作レバー25Lは、実施形態の操作部材に相当する。
 油圧ポンプ33から送出され、減圧弁によって減圧されたパイロット油が、操作装置25に供給される。
 操作装置25と方向制御弁34とは、パイロット油路450を介して接続されている。操作装置25の操作内容に基づいて、パイロット油圧が調整される。操作装置25が操作されると、操作装置25の操作内容に対応したパイロット油圧が、パイロット油路450を介して方向制御弁34に供給される。これにより、方向制御弁34が調整されて、ブームシリンダ10、アームシリンダ11、およびバケットシリンダ12に供給される作動油の流れ方向および流量が調整され、ブーム6、アーム7、バケット8の上下方向への動作が実行される。
 パイロット油路450には、圧力センサ36が配置されている。圧力センサ36は、パイロット油圧を検出する。圧力センサ36の検出結果は、コンピュータ102Aに出力される。操作装置25の操作によって調整され、圧力センサ36によって検出されるパイロット油圧(PPC圧)は、実施形態における操作指令値に相当する。
 図4では簡略化されて図示されているが、第1操作レバー25Rおよび第2操作レバー25Lの前後左右各方向への操作に対応する複数のパイロット油路450が、操作装置25と方向制御弁34とを接続するように設けられている。複数のパイロット油路450の各々に、圧力センサ36が配置されている。たとえばバケット8を動作する場合、バケット8をダンプ動作するときにパイロット油圧の増加を検出する圧力センサ36と、バケット8を掘削動作するときにパイロット油圧の増加を検出する圧力センサ36とは異なる。パイロット油圧の増加量は、操作レバーを中立位置から傾倒させる角度によって異なる。このようにして、各圧力センサ36によるパイロット油圧の検出結果によって、操作装置25の操作内容を判断することができる。
 図5は、コンピュータ102Aの構成を示す模式図である。コンピュータ102Aは、実施形態に係るシステム用に専用に設計されたものであってもよく、または汎用のPC(Personal Computer)であってもよい。コンピュータ102Aは、プロセッサ103と、記憶装置104と、通信インタフェース105と、I/Oインタフェース106とを有している。プロセッサ103は、たとえばCPU(Central Processing Unit)である。
 記憶装置104は、記憶されたプログラムおよびデータなどの情報をプロセッサ103が読み取り可能なように記憶する媒体を含んでいる。記憶装置104は、RAM(Random Access Memory)、またはROM(Read Only Memory)などのシステムメモリと、補助記憶装置とを含んでいる。補助記憶装置は、たとえばハードディスクなどの磁気的記録媒体、CD(Compact Disc)、DVD(Digital Versatile Disc)などの光学的記録媒体、またはフラッシュメモリなどの半導体メモリであってもよい。記憶装置104は、コンピュータ102Aに内蔵されてもよい。記憶装置104は、コンピュータ102Aに着脱可能に接続される外部記録媒体109を含んでもよい。外部記録媒体109は、CD-ROMであってもよい。
 通信インタフェース105は、たとえば有線LAN(Local Area Network)モジュール、または無線LANモジュールなどであり、通信ネットワークを介した通信を行うためのインタフェースである。I/Oインタフェース106は、たとえばUSB(Universal Serial Bus)ポートなどであり、外部装置と接続するためのインタフェースである。
 コンピュータ102Aは、I/Oインタフェース106を介して、入力装置107、および出力装置108と接続される。入力装置107は、ユーザがコンピュータ102Aへの入力を行うための装置である。入力装置107は、たとえば、マウス、またはトラックボールなどのポインティングデバイスを含んでいる。入力装置107は、キーボードなどの文字入力のための装置を含んでもよい。出力装置108は、たとえば、ディスプレイを含んでいる。
 図6は、出荷前のコンピュータ102Aの内部構成の概略を示す機能ブロック図である。図6に示されるプロセッサ103および記憶装置104は、図5に示されるコンピュータ102Aの一部構成をなすものである。
 プロセッサ103は、画像処理部61と、作業機位置推定部65とを有している。
 画像処理部61は、撮像装置(カメラ)50から、撮像装置50により撮像された撮像画像の入力を受ける。画像処理部61は、入力された撮像画像を画像処理する。
 記憶装置104には、学習済みの位置推定モデル80A(第1の位置推定モデル)と、学習済みの位置推定モデル80B(第2の位置推定モデル)とが保存されている。位置推定モデル80A,80Bは、本体1に対する作業機2の相対位置を求めるための人工知能モデルである。コンピュータ102Aは、人工知能の位置推定モデルを用いることで、作業機2の相対位置を推定する。位置推定モデル80A,80Bは、ニューラルネットワークを含んでいる。位置推定モデル80A,80Bはたとえば、畳み込みニューラルネットワーク(CNN)などのディープニューラルネットワークを含んでいる。
 実施形態におけるモデルは、ハードウェア、ハードウェア上で実行可能なソフトウェア、ファームウェア、またそれらの組合せに実装されていてもよい。モデルは、プロセッサ103によって実行されるプログラム、アルゴリズム、およびデータを含んでもよい。モデルの機能は、単一のモジュールによって実行されてもよく、または複数のモジュールに分散して実行されてもよい。モデルは、複数のコンピュータに分散して配置されてもよい。
 位置推定モデル80Aは、撮像画像から作業機2の相対位置を求めるように構成されている。作業機位置推定部65は、位置推定モデル80Aを用いて、撮像画像から作業機2の相対位置を推定した推定位置を求める。より具体的には、作業機位置推定部65は、記憶装置104から位置推定モデル80Aを読み出し、位置推定モデル80Aに撮像画像を入力することで、ブーム角度θb、アーム角度θaおよびバケット角度θkの推定結果の出力を得る。撮像画像から得られる作業機2の推定位置は、実施形態における第2推定位置に相当する。
 作業機位置推定部65はまた、撮像画像に基づけば現在のブーム角度θb、アーム角度θaおよびバケット角度θkを何%の確率で推定できる、とする推定結果の精度を出力する。撮像画像が鮮明であり、撮像画像内にブーム6、アーム7およびバケット8が明瞭に写っていれば、推定結果の精度は高くなる。作業機2の一部が土に隠れている、逆光で撮像された、または、キャブ4の窓が汚れている、などの外乱が存在し、撮像画像内にブーム6、アーム7およびバケット8のいずれかが明瞭に写っていない場合には、その不明瞭な部位の推定位置の精度が低下することになる。
 プロセッサ103は、作業機変位量推定部71と、作業機位置推定部75とをさらに有している。
 作業機変位量推定部71は、圧力センサ36から、圧力センサ36によって検出されたパイロット油圧の入力を受ける。位置推定モデル80Bは、パイロット油圧から作業機2の変位量を求めるように構成されている。作業機変位量推定部71は、位置推定モデル80Bを用いて、入力されたパイロット油圧から、操作装置25の操作内容を求める。
 より具体的には、作業機変位量推定部71は、記憶装置104から位置推定モデル80Bを読み出し、位置推定モデル80Bにパイロット油圧を入力することで、操作装置25の操作内容を求める。作業機変位量推定部71は、操作装置25の操作内容を求める処理を前回実行したときからの経過時間と、前回の処理および今回の処理で求められた操作装置25の操作内容とに基づいて、前回の処理の時点から現時点までに該当の作業機2がどれだけ移動したのかを示す作業機2の変位量を推定した推定変位量の出力を得る。
 作業機位置推定部75は、作業機2の現在位置を推定する。具体的には、作業機位置推定部75は、作業機2の基準位置と、作業機2が基準位置にあることを推定した時刻とを、記憶装置104から読み出す。作業機位置推定部75は、作業機変位量推定部71で出力された作業機2の変位量の推定結果を、作業機2が基準位置にあることを推定した時刻から加算することで、作業機2の基準位置からの変位量を推定する。そして作業機位置推定部75は、作業機2の基準位置および作業機2の基準位置からの変位量から、作業機2の現在位置を推定した推定位置の出力を得る。作業機2の基準位置および作業機2の基準位置からの変位量から得られる作業機2の推定位置は、実施形態における第1推定位置に相当する。
 作業機2の基準位置は、たとえば、撮像画像から位置推定モデル80Aを用いて作業機2の推定位置を求める推定の精度が所定値よりも低下する直前の、位置推定モデル80Aによる作業機2の推定位置とすることができる。
 作業機2を構成するブーム6、アーム7およびバケット8のうち、位置推定モデル80Bを用いて位置を推定する対象とされる部位は、位置推定対象部と称される。たとえば作業機2が土砂を掘削する作業を実行しており、バケット8の刃先8aが土砂に隠されて撮像画像に含まれなくなったとき、コンピュータ102Aは、バケット8を位置推定対象部と設定する。
 位置推定対象部がバケット8の場合、作業機変位量推定部71は、パイロット油圧から、バケット8をダンプ動作または掘削動作させるための第1操作レバー25Rの中立位置から右方向または左方向への傾倒角度を求める。作業機変位量推定部71は、第1操作レバー25Rの傾倒角度を求める処理を前回実行したときからの経過時間と、前回の処理および今回の処理で求められた第1操作レバー25Rの傾倒角度とに基づいて、前回の処理の時点から現時点までのバケット角度θkの変化量の推定結果の出力を得る。作業機位置推定部75は、基準位置におけるバケット角度θkからのバケット角度θkの変化量を、基準位置におけるバケット角度θkに加算することにより、現在のバケット8の位置を示すバケット角度θkを推定した推定位置を出力する。
 位置推定対象部がバケット8の場合に、作業機2のうち位置推定対象部以外の部位の位置(この場合、ブーム6およびアーム7の位置)を示すブーム角度θbおよびアーム角度θaを、撮像画像から位置推定モデル80Aを用いて精度高く推定できるのであれば、位置推定モデル80Aにより推定されたブーム角度θbおよびアームθaと、位置推定モデル80Bにより推定されたバケット角度θkとにより、作業機2の推定位置を求めることができる。
 位置推定対象部がバケット8の場合に、作業機2のうち位置推定対象部以外の部位の位置(この場合、ブーム6およびアーム7の位置)を示すブーム角度θbおよびアーム角度θaをさらに、位置推定モデル80Bを用いて推定してもよい。
 出荷前の油圧ショベル100は、エンコーダ51をさらに備えている。エンコーダ51は、ブームピン13に取り付けられるブーム角度センサ、アームピンに取り付けられるアーム角度センサ、およびバケットリンクに取り付けられるバケット角度センサの総称である。エンコーダ51に替えて、作業機2にポテンショメータを装着して角度を計測してもよい。また、油圧シリンダのストロークを検出するストロークセンサを装着して、油圧シリンダの移動量を角度に変換してもよい。
 プロセッサ103は、角度変換部62を有している。角度変換部62は、エンコーダ51から電気信号の入力を受け、この電気信号を、ブーム角度θb、アーム角度θaおよびバケット角度θkに変換する。エンコーダ51は、撮像装置50が撮像画像を撮像した時刻に電気信号を取得して、角度変換部62に出力する。角度変換部62は、撮像装置50が撮像画像を撮像した時刻に計測されたブーム角度θb、アーム角度θaおよびバケット角度θkを、撮像画像に対応付けて取得する。
 プロセッサ103は、誤差検出部66を有している。誤差検出部66は、作業機位置推定部65によって推定されたブーム角度θb、アーム角度θaおよびバケット角度θkの推定結果と、角度変換部62で取得されたブーム角度θb、アーム角度θaおよびバケット角度θkの計測結果とを比較する。誤差検出部66は、ブーム角度θb、アーム角度θaおよびバケット角度θkの真値に対する推定結果の誤差を算出する。
 プロセッサ103は、位置推定モデル更新部67を有している。位置推定モデル更新部67は、誤差検出部66が算出したブーム角度θb、アーム角度θaおよびバケット角度θkの誤差に基づいて、位置推定モデル80Aを更新する。このようにして、位置推定モデル80Aが学習される。撮像装置50が撮像した作業機2の撮像画像と、角度変換部62で算出される、撮像画像を撮像した時点のブーム角度θb、アーム角度θaおよびバケット角度θkとは、位置推定モデル80Aを学習させるための学習用データを構成している。位置推定モデル80Aの学習は、油圧ショベル100の出荷前に、工場で行なわれる。
 プロセッサ103は、角度変化量算出部72を有している。角度変化量算出部72は、角度変換部62で取得されたブーム角度θb、アーム角度θaおよびバケット角度θkと、角度変換部62で角度を取得した時刻とに基づいて、ブーム角度θb、アーム角度θaおよびバケット角度θkの変化量を取得する。角度変化量算出部72は、作業機2の基準位置におけるブーム角度θb、アーム角度θaおよびバケット角度θkと、ブーム角度θb、アーム角度θaおよびバケット角度θkの変化量とから、作業機2の現在位置を取得する。
 プロセッサ103は、誤差検出部76を有している。誤差検出部76は、作業機位置推定部75によって推定された作業機2の位置の推定結果と、角度変化量算出部72で取得された作業機2の現在位置とを比較する。誤差検出部76は、ブーム角度θb、アーム角度θaおよびバケット角度θkの真値に対する推定結果の誤差を算出する。
 プロセッサ103は、位置推定モデル更新部77を有している。位置推定モデル更新部77は、誤差検出部66が算出したブーム角度θb、アーム角度θaおよびバケット角度θkの誤差に基づいて、位置推定モデル80Bを更新する。このようにして、位置推定モデル80Bが学習される。圧力センサ36によって検出されるパイロット油圧に代表される、操作装置25の操作に基づき作業機を動作させる操作指令値と、角度変化量算出部72で算出される、操作指令値を検出したときの作業機2の基準位置からの変位量とは、位置推定モデル80Bを学習させるための学習用データを構成している。位置推定モデル80Bの学習は、油圧ショベル100の出荷前に、工場で行なわれる。
 図7は、学習済みの第1の位置推定モデルの製造方法を示すフローチャートである。図8は、第1の位置推定モデルを学習させるための処理を示す概略図である。図6について説明した内容と一部重複もあるが、図7および図8を参照して、本体1に対する作業機2の相対位置を推定する位置推定モデル80A(第1の位置推定モデル)を学習させるための処理について、以下に説明する。
 図7に示されるように、まずステップS101において、撮像画像を取得する。コンピュータ102A、より詳しくは画像処理部61は、撮像装置(カメラ)50により撮像された撮像画像を、撮像装置50から取得する。撮像画像にはタイムスタンプが付与されており、撮像した時刻を判別できるように設定されている。画像処理部61は、撮像装置50が撮像した撮像画像をリアルタイムに取得してもよい。画像処理部61は、撮像装置50から撮像画像を所定時刻に、または所定時間毎に取得してもよい。画像処理部61は、撮像画像を画像処理して、記憶装置104に保存する。
 次にステップS102において、角度計測データを取得する。コンピュータ102A、より詳しくは角度変換部62は、エンコーダ51によって検出されたブーム角度θb、アーム角度θaおよびバケット角度θkを、エンコーダ51から取得する。このようにして取得された角度のデータは、撮像画像に割り当てられたものとされる。ある時刻に撮像された撮像画像に対して、その時刻に検出された計測データが対応付け(ラベル付け)される。図8に示すように、撮像画像と、その撮像画像を撮像した時点における作業機2の角度とを含む学習用データ61A,61B,61C,…,が作成される。学習用データ61A,61B,61C,…,は、位置推定モデル80Aの学習のための学習用データセットを構成している。
 学習用データは、図8に示されるような、作業機2の姿勢が異なる複数の撮像画像を含んでいる。学習用データは、同じ姿勢の作業機2を、たとえば日中、逆光時、夜間などの異なる環境下で撮像した複数の撮像画像を含んでいてもよい。
 次にステップS103において、作業機2の相対位置を出力する。コンピュータ102A、より詳しくは作業機位置推定部65は、記憶装置104から位置推定モデル80Aを読み出す。位置推定モデル80Aは、図8に示すニューラルネットワークを含んでいる。ニューラルネットワークは、入力層81Aと、中間層(隠れ層)82Aと、出力層83Aとを含んでいる。各層81A,82A,83Aは、1または複数のニューロンを有している。各層81A,82A,83Aのニューロンの数は、適宜設定することができる。
 互いに隣接する層のニューロン同士は結合されており、各結合には重み(結合荷重)が設定されている。ニューロンの結合数は、適宜設定されてよい。各ニューロンには閾値が設定されており、各ニューロンへの入力値と重みとの積の和が閾値を超えているか否かによって、各ニューロンの出力値が決定される。
 位置推定モデル80Aは、撮像画像から作業機2の相対位置を求めるように学習される。学習によって得られた位置推定モデル80Aのパラメータは、記憶装置104に記憶されている。位置推定モデル80Aのパラメータは、たとえば、ニューラルネットワークの層数、各層におけるニューロンの個数、ニューロン同士の結合関係、各ニューロン間の結合の重み、および各ニューロンの閾値を含んでいる。
 作業機位置推定部65は、撮像装置50が撮像した撮像画像を、入力層81Aに入力する。出力層83Aから、本体1に対する作業機2の相対位置、具体的にはブーム角度θb、アーム角度θaおよびバケット角度θkを示す出力値が出力される。たとえば、コンピュータ102Aは、撮像画像を入力層81Aの入力として用いて、位置推定モデル80Aのニューラルネットワークの順方向伝播の演算処理を行う。これにより、コンピュータ102Aは、ニューラルネットワークの出力層83Aから出力される出力値として、作業機2の相対位置を推定した推定位置を得る。
 ステップS102の処理とステップS103の処理とは、ステップS102の処理の後にステップS103の処理が行なわれなくてもよい。ステップS102の処理とステップS103の処理とが同時に行なわれてもよく、ステップS103の処理の後にステップS102の処理が行なわれてもよい。
 次にステップS104において、ステップS103で出力された作業機2の推定位置と、ステップS102で取得された作業機2の角度の計測データとの差を算出する。コンピュータ102A、より詳しくは誤差検出部66は、位置推定モデル80Aの出力層83Aから出力された、撮像画像から作業機2の相対位置を推定した推定位置と、角度変換部62で得られた作業機2の相対位置の計測位置とを比較して、作業機2の相対位置の真値に対する推定値の誤差を算出する。
 コンピュータ102Aは、撮像画像を入力データとし、撮像画像を撮像した時点に作業機2の相対位置を計測した計測位置を教師データとして、位置推定モデル80Aの学習を行う。コンピュータ102Aは、算出した出力値の誤差から、バックプロパゲーションにより、各ニューロン間の結合の重み、および、各ニューロンの閾値のそれぞれの誤差を算出する。
 次にステップS105において、位置推定モデル80Aを更新する。コンピュータ102A、より詳しくは位置推定モデル更新部67は、誤差検出部66で算出された作業機2の相対位置の真値に対する推定値の誤差に基づいて、各ニューロン間の結合の重み、および各ニューロンの閾値などの、位置推定モデル80Aのパラメータを更新する。そして、同じ撮像画像が入力層81Aに入力されたならば真値により近い出力値を出力できるようにする。更新された位置推定モデル80Aのパラメータは、記憶装置104に記憶される。
 次回に作業機2の相対位置を推定するときには、更新された位置推定モデル80Aに撮像画像を入力して、作業機2の相対位置の推定結果の出力を得る。コンピュータ102Aは、位置推定モデル80Aが出力する作業機2の相対位置の推定結果が作業機2の相対位置を計測した計測位置と一致するようになるまで、ステップS101からステップS105までの処理を繰り返す。このようにして、位置推定モデル80Aのパラメータが最適化され、位置推定モデル80Aの学習が行なわれる。
 位置推定モデル80Aが十分に学習を積み重ねた結果、十分に精度の高い推定結果の出力が得られるようになると、コンピュータ102Aは位置推定モデル80Aの学習を終える。このようにして、学習済みの位置推定モデル80Aが作成される。そして、処理を終了する(エンド)。
 図9は、学習済みの第2の位置推定モデルの製造方法を示すフローチャートである。図10は、第2の位置推定モデルを学習させるための処理を示す概略図である。図6について説明した内容と一部重複もあるが、図9および図10を参照して、本体1に対する作業機2の相対位置を推定する位置推定モデル80B(第2の位置推定モデル)を学習させるための処理について、以下に説明する。
 図9に示されるように、まずステップS111において、作業機2の基準位置を設定する。コンピュータ102Aは、位置推定モデル80Aを用いて撮像画像からブーム角度θb、アーム角度θaおよびバケット角度θkを示す出力値を得るときに、撮像画像に基づけば現在のブーム角度θb、アーム角度θaおよびバケット角度θkを何%の確率で推定できる、とする推定結果の精度をも得る。作業機2の基準位置は、たとえば、撮像画像から位置推定モデル80Aを用いて作業機2の推定位置を求める推定の精度が所定値よりも低下する直前の、位置推定モデル80Aによる作業機2の推定位置とすることができる。
 作業機2の基準位置を設定する際の、位置推定モデル80Aによる推定の精度の閾値は、70%以上、たとえば75%以上、80%以上、85%以上、または90%以上と設定することができる。
 次にステップS112において、パイロット油圧データを取得する。コンピュータ102Aは、圧力センサ36により検出されたパイロット油圧の検出値を、圧力センサ36から取得する。コンピュータ102Aは、圧力センサ36が検出したパイロット油圧をリアルタイムに取得してもよい。コンピュータ102Aは、圧力センサ36からパイロット油圧を所定時刻に、または所定時間毎に取得してもよい。コンピュータ102Aは、取得されたパイロット油圧を記憶装置104に保存する。
 次にステップS113において、角度計測データを取得する。コンピュータ102A、より詳しくは角度変換部62は、エンコーダ51によって検出されたブーム角度θb、アーム角度θaおよびバケット角度θkを、エンコーダ51から取得する。このようにして取得された角度のデータは、パイロット油圧に割り当てられたものとされる。ある時刻に所得されたパイロット油圧に対して、その時刻に取得された角度計測データが対応付け(ラベル付け)される。
 図10に示すように、圧力センサ36によって検出された作業機2の動作の方向(たとえば、バケット8のダンプ動作または掘削動作)およびパイロット油圧と、パイロット油圧を検出した時点における作業機2の位置(たとえば、バケット角度θk)と、を含む学習用データ71A,71B,71C,…,が作成される。学習用データ71A,71B,71C,…,は、位置推定モデル80Bの学習のための学習用データセットを構成している。
 次にステップS114において、作業機2の角度の変化量が算出される。コンピュータ102A、より詳しくは角度変化量算出部72は、異なる時刻に作成された2つの学習用データ71A,71B,71C,…から、作業機2の変位量(たとえば、バケット角度θkの変化量)を算出する。コンピュータ102Aはまた、そのときのパイロット油圧の変動を求める。
 次にステップS115において、作業機2の変位量を推定する。コンピュータ102A、より詳しくは作業機変位量推定部71は、記憶装置104から位置推定モデル80Bを読み出す。位置推定モデル80Bは、図10に示すニューラルネットワークを含んでいる。ニューラルネットワークは、入力層81Bと、中間層(隠れ層)82Bと、出力層83Bとを含んでいる。各層81B,82B,83Bは、1または複数のニューロンを有している。各層81B,82B,83Bのニューロンの数は、適宜設定することができる。
 互いに隣接する層のニューロン同士は結合されており、各結合には重み(結合荷重)が設定されている。ニューロンの結合数は、適宜設定されてよい。各ニューロンには閾値が設定されており、各ニューロンへの入力値と重みとの積の和が閾値を超えているか否かによって、各ニューロンの出力値が決定される。
 位置推定モデル80Bは、パイロット油圧から作業機2の変位量を求めるように学習される。学習によって得られた位置推定モデル80Bのパラメータは、記憶装置104に記憶されている。位置推定モデル80Bのパラメータは、たとえば、ニューラルネットワークの層数、各層におけるニューロンの個数、ニューロン同士の結合関係、各ニューロン間の結合の重み、および各ニューロンの閾値を含んでいる。
 作業機変位量推定部71は、圧力センサ36が検出したパイロット油圧を、入力層81Bに入力する。出力層83Bから、作業機2の変位量、具体的にはバケット角度θkの変化量を示す出力値が出力される。たとえば、コンピュータ102Aは、パイロット油圧を入力層81Bの入力として用いて、位置推定モデル80Bのニューラルネットワークの順方向伝播の演算処理を行う。これにより、コンピュータ102Aは、ニューラルネットワークの出力層83Bから出力される出力値として、作業機2の変位量を推定した推定変位量を得る。
 バケット8のダンプ動作または掘削動作を検出するパイロット油圧に加えて、ブーム6の上げ動作または下げ動作を検出するパイロット油圧、およびアーム7のダンプ動作または掘削動作を検出するパイロット油圧を、入力層81Bへ入力してもよい。出力層83Bから出力させる出力値は、バケット角度θkの変化量に加えて、ブーム角度θbおよびアーム角度θaの変化量を含んでもよい。入力層81Bへ入力されるデータは、パイロット油圧に加えて、エンジン31の回転数、油圧ポンプ33の容量などを含んでもよく、これら追加の入力データによって作業機2の変位量の推定の精度を向上できる。
 次にステップS116において、作業機2の位置を推定する。コンピュータ102A、より詳しくは作業機位置推定部75は、ステップS111で設定された作業機2の基準位置に、基準位置を設定した時刻から現在時刻までの作業機2の変位量の推定結果を加算することで、作業機2の現在位置を推定した推定位置の出力を得る。
 ステップS113,S114の処理とステップS115,S116の処理とは、ステップS113,S114の処理の後にステップS115,S116の処理が行なわれなくてもよい。ステップS113,S114の処理とステップS115,S116の処理とが同時に行なわれてもよく、S115,S116の処理の後にステップS113,S114の処理が行なわれてもよい。
 次にステップS117において、ステップS114で算出された作業機2の変位量と、ステップS115で出力された作業機2の推定変位量との差を算出する。コンピュータ102A、より詳しくは誤差検出部76は、位置推定モデル80Bの出力層83Bから出力された、パイロット油圧などから作業機2の変位量を推定した推定変位量と、角度変化量算出部72で得られた作業機2の角度の変化量とを比較して、作業機2の変位量の真値に対する推定値の誤差を算出する。
 コンピュータ102Aは、パイロット油圧などを入力データとし、基準位置を設定した時刻からパイロット油圧を検出した時刻までに作業機2の位置が変化した変位量を教師データとして、位置推定モデル80Bの学習を行う。コンピュータ102Aは、算出した出力値の誤差から、バックプロパゲーションにより、各ニューロン間の結合の重み、および、各ニューロンの閾値のそれぞれの誤差を算出する。
 次にステップS118において、位置推定モデル80Bを更新する。コンピュータ102A、より詳しくは位置推定モデル更新部77は、誤差検出部76で算出された作業機2の変位量の真値に対する推定値の誤差に基づいて、各ニューロン間の結合の重み、および各ニューロンの閾値などの、位置推定モデル80Bのパラメータを更新する。そして、同じ撮像画像が入力層81Bに入力されたならば真値により近い出力値を出力できるようにする。更新された位置推定モデル80Bのパラメータは、記憶装置104に記憶される。
 次回に作業機2の変位量を推定するときには、更新された位置推定モデル80Bにパイロット油圧を入力して、作業機2の変位量の推定結果の出力を得る。コンピュータ102Aは、位置推定モデル80Bが出力する作業機2の変位量の推定結果が作業機2の変位量の計測結果と一致するようになるまで、ステップS111からステップS118までの処理を繰り返す。このようにして、位置推定モデル80Bのパラメータが最適化され、位置推定モデル80Bの学習が行なわれる。
 位置推定モデル80Bが十分に学習を積み重ねた結果、十分に精度の高い推定結果の出力が得られるようになると、コンピュータ102Aは位置推定モデル80Bの学習を終える。このようにして、学習済みの位置推定モデル80Bが作成される。そして、処理を終了する(エンド)。
 なお、位置推定モデル80A,80Bの各種のパラメータの初期値は、テンプレートにより与えられてもよい。またはパラメータの初期値は、人間の入力により手動で与えられてもよい。位置推定モデル80A,80Bの再学習を行うときには、コンピュータ102Aは、再学習を行う対象となる位置推定モデル80A,80Bのパラメータとして記憶装置104に記憶されている値に基づいて、パラメータの初期値を用意してもよい。
 図11は、工場出荷されるコンピュータ102Bの内部構成の概略を示すブロック図である。エンコーダ51は、出荷前に位置推定モデル80A,80Bを学習させる目的で作業機2に仮取り付けされ、位置推定モデル80A,80Bの学習が完了すると作業機2から取り外される。工場出荷される油圧ショベル100は、エンコーダ51を備えていない。工場出荷される油圧ショベル100は、図6に示すシステム構成のうち、撮像装置50、圧力センサ36およびコンピュータ102B(プロセッサ103、および記憶装置104)のみを備えている。
 図12は、工場出荷後に作業機2の相対位置を推定するためにコンピュータ102Bによって実行される処理を示すフローチャートである。図13は、撮像画像から作業機2の相対位置を求めるように学習済みの位置推定モデル80Aを用いた、撮像画像から作業機2の相対位置を推定する処理を示す模式図である。図14は、学習済みの位置推定モデル80A、およびパイロット油圧から作業機2の相対位置を求めるように学習済みの位置推定モデル80Bを用いた、撮像画像および操作指令値から作業機2の相対位置を推定する処理を示す模式図である。図11~14を参照して、工場出荷後に作業現場で取得した撮像画像およびパイロット油圧から作業機2の相対位置を推定する処理について、以下に説明する。
 まずステップS201において、撮像画像を取得する。コンピュータ102B、より詳しくは画像処理部61は、撮像装置(カメラ)50により撮像された撮像画像63(図13)を、撮像装置50から取得する。
 次にステップS202において、作業機2の相対位置を出力する。コンピュータ102B、より詳しくは作業機位置推定部65は、位置推定モデル80Aおよび学習済みのパラメータの最適値を記憶装置104から読み出すことで、学習済みの位置推定モデル80Aを取得する。作業機位置推定部65は、撮像装置50が撮像した撮像画像63を、学習済みの位置推定モデル80Aへの入力データとして用いる。作業機位置推定部65は、撮像画像63を、学習済みの位置推定モデル80Aの入力層81Aに含まれる各ニューロンに入力する。学習済みの位置推定モデル80Aの出力層83Aから、本体1に対する作業機2の相対位置を推定した推定位置、具体的にはブーム角度θb、アーム角度θaおよびバケット角度θkを示す角度出力値78(図13)が出力される。
 次に、ステップS203において、ステップS202で出力されたブーム角度θb、アーム角度θaおよびバケット角度θkの精度が、閾値以上であるか否かが判断される。ブーム角度θb、アーム角度θaおよびバケット角度θkの精度がいずれも閾値以上であり、ブーム角度θb、アーム角度θaおよびバケット角度θkの全部が高精度に推定されたと判断された場合には、ステップS202で出力されたブーム角度θb、アーム角度θaおよびバケット角度θkが、現時点における本体1に対する作業機2の相対位置を定めるものとして決定される。
 図13の撮像画像63に示されるように、作業機2のうち、ブーム6、アーム7およびバケット8の全部が撮像画像63に明瞭に写っている場合、位置推定モデル80Aを用いて、精度の高い角度出力値78の出力を得ることができる。この場合、ステップS203の判断においてYESと判断され、ステップS204に進み、基準位置の更新が行なわれる。コンピュータ102Bは、ステップS202で出力された角度出力値78を後の処理に用いられる基準位置として更新し、更新した基準位置と、ステップS202で角度出力値78を出力した時刻とを、記憶装置104に記憶する。
 一方、図14に示されるように、作業機2を用いて掘削作業を行なっている場合など、バケット8が土中に隠れて撮像画像63に明瞭に写らない場合がある。角度出力仮値78Tのように、ブーム角度θbおよびアーム角度θaは精度高く推定されたと判断される一方、バケット角度θkについては、精度が低く閾値未満である場合がある。このような場合、位置推定モデル80Aを用いて推定したバケット角度θkをそのまま用いるのは必ずしも適切でない。
 図12の処理フローにおいて、位置推定モデル80Aから出力されたブーム角度θb、アーム角度θaおよびバケット角度θkのいずれか1つ以上の精度が閾値未満である場合には、ステップS203の判断においてNOと判断される。この場合には、ステップS205に進み、パイロット油圧データが取得される。コンピュータ102Bは、圧力センサ36により検出されたパイロット油圧データ73(図14)を、圧力センサ36から取得する。パイロット油圧データ73は、図14に示されるように、位置推定対象部(本例の場合、バケット8)の動作方向と、動作方向に対応する圧力センサ36によって検出されたパイロット油圧とを含んでいる。
 次にステップS206において、作業機2の変位量を推定する。コンピュータ102B、より詳しくは作業機変位量推定部71は、位置推定モデル80Bおよび学習済みのパラメータの最適値を記憶装置104から読み出すことで、学習済みの位置推定モデル80Bを取得する。作業機変位量推定部71は、パイロット油圧データ73を、学習済みの位置推定モデル80Bの入力層81Bに含まれる各ニューロンに入力する。学習済みの位置推定モデル80Bの出力層83Bから、作業機2の変位量を推定した推定変位量、具体的には位置推定対象部であるバケット8の角度の変化量(バケット角度θkの変化量)が出力される。
 次にステップS207において、作業機2の位置を推定する。コンピュータ102B、より詳しくは作業機位置推定部75は、作業機2の基準位置を記憶装置104から読み出す。作業機位置推定部75は、作業機2の基準位置に、ステップS204で基準位置を更新した時刻からの作業機2の変位量を加算することにより、作業機2の現在位置を推定する。このようにして位置推定対象部(本例の場合、バケット8)の位置(バケット角度θk)が推定される。そして、図14に示されるように、ブーム角度θb、アーム角度θaおよびバケット角度θkを含む角度出力値78が出力される。
 最後に、ステップS208において、コンピュータ102Bは、本体1に対する作業機2の相対位置を含む管理データを生成する。コンピュータ102Bは、管理データを記憶装置104に記録する。そして、処理を終了する(エンド)。
 以上説明したように、実施形態に係るシステムでは、コンピュータ102Bは、位置推定対象部の位置を求めるための学習済みの位置推定モデル80Bを有している。図12,14に示されるように、コンピュータ102Bは、第1操作レバー25Rおよび第2操作レバー25Lの操作に基づき作業機2を動作させる操作指令値として、パイロット油圧データ73を取得する。コンピュータ102Bは、学習済みの位置推定モデル80Bを用いて、パイロット油圧データ73から作業機2の変位量を推定する。コンピュータ102Bはさらに、作業機2の基準位置と、基準位置からの変位量とから、位置推定対象部の位置を推定した推定位置を出力する。
 したがって、本体1に対する作業機2の相対位置の推定に適した人工知能の位置推定モデル80Bを利用して、作業機2の姿勢を推定することができる。これにより、人工知能を用いて、作業機2の姿勢をコンピュータ102Bによって容易かつ精度よく判定することができる。
 パイロット油圧データ73から作業機2の姿勢を推定できるので、ブーム角度θb、アーム角度θaおよびバケット角度θkを検出するためのセンサを不要にできる。角度センサの耐久性が油圧ショベル100の作業に影響を及ぼすこともない、したがって、簡易で安価かつ信頼性の高い構成で、従前の油圧ショベル100と同様に作業機2の現在の姿勢を取得することができる。
 図15は、位置推定モデル80A,80Bの学習に関する変形例を示す概略図である。図6~10の説明においては、油圧ショベル100の工場出荷前に位置推定モデル80A,80Bを学習させる例について説明した。位置推定モデル80A,80Bを学習させるための学習用データは、複数の油圧ショベル100から収集されてもよい。
 図15に示される、第1の油圧ショベル100(油圧ショベル100A)と、第2の油圧ショベル100(油圧ショベル100B)と、第3の油圧ショベル100(油圧ショベル100C)と、第4の油圧ショベル100(油圧ショベル100D)とは、同じ機種である。油圧ショベル100A,100B,100Cは、撮像装置50とエンコーダ51とを備えている。油圧ショベル100A,100B,100Cは、工場出荷後であり、作業現場にある。
 コンピュータ102Aは、各油圧ショベル100A,100B,100Cから、撮像装置50が撮像した撮像画像を取得する。コンピュータ102Aはまた、各油圧ショベル100A,100B,100Cから、撮像画像を撮像した時点に計測したブーム角度θb、アーム角度θaおよびバケット角度θkを、撮像画像に対応付けて取得する。コンピュータ102Aは、同時刻に取得した撮像画像と作業機2の角度とを用いて、撮像画像から作業機2の相対位置を推定した推定位置を求めることができるように、位置推定モデル80Aを学習させる。
 コンピュータ102Aは、各油圧ショベル100A,100B,100Cから、圧力センサ36が検出したパイロット油圧を取得する。コンピュータ102Aはまた、各油圧ショベル100A,100B,100Cから、パイロット油圧を検出した時点に計測したブーム角度θb、アーム角度θaおよびバケット角度θkを、パイロット油圧に対応付けて取得する。コンピュータ102Aは、同時刻に取得したパイロット油圧と作業機2の角度とを用いて、パイロット油圧から作業機2の相対位置を推定した推定位置を求めることができるように、位置推定モデル80Bを学習させる。
 コンピュータ102Aは、通信インタフェース105(図5)を介して、各油圧ショベル100A,100B,100Cから撮像画像と作業機2の角度の計測データとを取得してもよい。またはコンピュータ102Aは、外部記録媒体109を介して、各油圧ショベル100A,100B,100Cから撮像画像と作業機2の角度の計測データとを取得してもよい。
 コンピュータ102Aは、油圧ショベル100A,100B,100Cと同じ作業現場に配置されていてもよい。またはコンピュータ102Aは、作業現場から離れた遠隔地、たとえば管理センターに配置されていてもよい。油圧ショベル100A,100B,100Cは、同じ作業現場にあってもよく、別々の作業現場にあってもよい。
 学習済みの位置推定モデル80A,80Bは、通信インタフェース105または外部記録媒体109などを介して、各油圧ショベル100A,100B,100Cへ提供される。このようにして、各油圧ショベル100A,100B,100Cは、学習済みの位置推定モデル80A,80Bを備えるものとされる。
 各油圧ショベル100A,100B,100Cに既に位置推定モデル80A,80Bが保存されている場合には、保存されている位置推定モデル80A,80Bが書き換えられる。上述した学習用データの収集と位置推定モデル80A,80Bの学習とを定期的に実行することで、位置推定モデル80A,80Bの書き換えが定期的に行なわれるようにしてもよい。位置推定モデル80A,80Bのパラメータの最新の更新値は、記憶装置104にその都度記憶されている。
 学習済みの位置推定モデル80A,80Bは、油圧ショベル100Dにも提供される。学習用データを提供する油圧ショベル100A,100B,100Cと、学習用データを提供しない油圧ショベル100Dとの両方に、位置推定モデル80A,80Bが提供される。油圧ショベル100Dは、油圧ショベル100A,100B,100Cのいずれかと同じ作業現場にあってもよく、油圧ショベル100A,100B,100Cとは異なる作業現場にあってもよい。油圧ショベル100Dは、工場出荷前であってもよい。
 上述した位置推定モデル80A,80Bは、学習用データ61A,61B,61C,…,および学習用データ71A,71B,71C,…,を用いて機械学習により学習したモデルに限られず、当該学習したモデルを利用して生成されたモデルであってもよい。たとえば位置推定モデル80A,80Bは、学習済みモデルにデータの入出力を繰り返すことで得られる結果を基に学習させた別の学習済みモデル(蒸留モデル)であってもよい。図16は、蒸留モデルを生成するための処理を示すフローチャートである。
 図16に示されるように、まずステップS301において、撮像画像およびパイロット油圧データを取得する。コンピュータ102A、より詳しくは画像処理部61は、撮像装置(カメラ)50により撮像された撮像画像63(図13)を、撮像装置50から取得する。コンピュータ102Aは、圧力センサ36により検出されたパイロット油圧データ73(図14)を、圧力センサ36から取得する。
 次にステップS302において、コンピュータ102Aは、学習済みの位置推定モデル80A,80Bを用いて、本体1に対する作業機2の相対位置を推定した推定位置を求める。ステップS303において、コンピュータ102Aは、推定された作業機2の相対位置を出力する。
 コンピュータ102A、より詳しくは作業機位置推定部65は、記憶装置104から学習済みの位置推定モデル80Aを読み出す。作業機位置推定部65は、撮像装置50が撮像した撮像画像63を、学習済みの位置推定モデル80Aの入力層81Aに入力する。学習済みの位置推定モデル80Aの出力層83Aから、本体1に対する作業機2の相対位置、具体的にはブーム角度θb、アーム角度θaおよびバケット角度θkを示す角度出力値78(図11)の推定結果が出力される。
 コンピュータ102A、より詳しくは作業機変位量推定部71は、記憶装置104から学習済みの位置推定モデル80Bを読み出す。作業機変位量推定部71は、圧力センサ36が検出したパイロット油圧を、学習済みの位置推定モデル80Bの入力層81Bに入力する。学習済みの位置推定モデル80Bの出力層83Bから、作業機2の変位量、具体的には位置推定対象部(たとえばバケット8)の変位量(たとえばバケット角度θkの変化量)の推定結果が出力される。
 次にステップS304において、コンピュータ102Aは、ステップS301で取得した撮像画像およびパイロット油圧と、ステップS303で出力した作業機2の相対位置の推定結果とを、学習データとして記憶装置104に保存する。
 次にステップS305において、コンピュータ102Aは、学習モデルによって別の位置推定モデルの学習を行う。コンピュータ102Aは、撮像画像およびパイロット油圧をこの別の位置推定モデルの入力層に入力する。コンピュータ102Aは、この別の位置推定モデルの出力層から、本体1に対する作業機2の相対位置、具体的にはブーム角度θb、アーム角度θaおよびバケット角度θkの推定結果を示す出力値を出力する。この別の位置推定モデルから出力された作業機2の相対位置と、ステップS303で出力した、学習済みの位置推定モデル80A,80Bから出力された作業機2の相対位置との差を算出する。この差に基づいて、コンピュータ102Aは、この別の位置推定モデルのパラメータを更新する。このようにして、この別の位置推定モデルの学習が行なわれる。
 最後にステップS306において、更新された別の位置推定モデルのパラメータを学習済みパラメータとして記憶装置104に保存する。そして、処理を終了する(エンド)。
 以上のように、作業機2の撮像画像およびパイロット油圧と学習済みの位置推定モデルを用いて作業機2の相対位置を推定した推定位置とを学習用データとして、別の位置推定モデル(蒸留モデル)を学習させることで、コンピュータ102Aは、学習済みの位置推定モデルよりもシンプルな別の位置推定モデルを用いて、本体1に対する作業機2の相対位置を推定することができる。これにより、作業機2の相対位置を推定するためのコンピュータ102Aの負荷を軽減することができる。なおコンピュータ102Aは、他のコンピュータによって生成された学習データによって、別の位置推定モデルの学習を行なってもよい。
 上記実施形態では、位置推定モデル80A,80Bはニューラルネットワークを含んでいる。これに限られず、位置推定モデル80A,80Bは、たとえばサポートベクターマシンなど、機械学習を用いて作業機2の撮像画像から本体1に対する作業機2の相対位置を精度よく推定できるモデルであってもよい。
 上記実施形態では、ブーム6およびアーム7の位置を撮像画像から学習済みの位置推定モデル80Aを用いて推定し、バケット8の位置を学習済みの位置推定モデル80Bを用いてパイロット油圧から推定する例を説明した。バケット8以外のアタッチメントの位置を推定する場合に、学習済みの位置推定モデル80Bを同様に適用することも可能である。バケット8が撮像画像中に明瞭に写り、バケット8の位置を撮像画像から精度よく推定可能であるが、バケット8以外の作業機2の部位であるブーム6またはアーム7が撮像画像中で不鮮明である場合に、ブーム6またはアーム7の位置をパイロット油圧から推定してもよい。
 作業機2の基準位置からの変位量は、油圧シリンダのストロークエンドで較正されてもよい。たとえば位置推定対象部がバケット8の場合に、バケットシリンダ12のストローク長が最大の時および最小のときのバケット角度θkを予め記憶装置104に記憶させておくことができる。バケットシリンダ12がストロークエンドに達するまで移動したときに、推定されるバケット角度θkと、記憶装置104に記憶されているバケット角度θkとを比較することで、推定されるバケット角度θkを較正して、作業機2の変位量の推定の精度を向上することができる。
 上記実施形態では、操作装置25はパイロット油圧方式の操作装置である例を説明したが、操作装置25は、電気方式の操作装置でもよい。たとえば、操作装置25が、電気レバーのような操作部材と、操作部材の傾倒量を電気的に検出するポテンショメータ傾斜計のような作動量センサとを有してもよい。作動量センサの検出データが、コンピュータ102Aに出力される。操作装置25を経由することなく油圧ポンプ33と方向制御弁34とを接続するパイロット油路450が設けられ、パイロット油路450にパイロット油圧を制御するための制御弁が配置される。コンピュータ102Aは、作動量センサの検出データに基づいて、この制御弁を駆動するための制御信号を出力する。制御弁によって調整されたパイロット油圧に基づいて方向制御弁34が制御され、これにより油圧アクチュエータ40に対する作動油の供給量が調整される。この場合、作動量センサの検出データが、操作部材の操作に基づき作業機2を動作させる操作指令値に相当する。
 本開示の思想を適用可能な作業機械は、油圧ショベルに限られず、ブルドーザ、モータグレーダ、またはホイールローダなどの作業機を有する作業機械であってもよい。
 今回開示された実施形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 1 本体、2 作業機、3 旋回体、4 キャブ、4S 運転席、5 走行装置、6 ブーム、7 アーム、8 バケット、8a 刃先、10 ブームシリンダ、11 アームシリンダ、12 バケットシリンダ、13 ブームピン、14 アームピン、15 バケットピン、16 第1リンク部材、17 第2リンク部材、18 第1リンクピン、19 バケットシリンダトップピン、20 第2リンクピン、21 アンテナ、23 グローバル座標演算部、25 操作装置、25L 第2操作レバー、25R 第1操作レバー、31 エンジン、33 油圧ポンプ、34 方向制御弁、36 圧力センサ、40 油圧アクチュエータ、50 撮像装置、51 エンコーダ、61 画像処理部、61A,61B,61C,71A,71B,71C 学習用データ、62 角度変換部、63 撮像画像、65,75 作業機位置推定部、66,76 誤差検出部、67,77 位置推定モデル更新部、71 作業機変位量推定部、72 角度変化量算出部、73 パイロット油圧データ、78 角度出力値、78T 角度出力仮値、80A,80B 位置推定モデル、81A,81B 入力層、82A,82B 中間層、83A,83B 出力層、100,100A,100B,100C,100D 油圧ショベル、102A,102B コンピュータ、103 プロセッサ、104 記憶装置、105 通信インタフェース、106 I/Oインタフェース、107 入力装置、108 出力装置、109 外部記録媒体、200 制御装置、450 パイロット油路。

Claims (18)

  1.  作業機械本体と、
     前記作業機械本体に取り付けられた作業機と、
     前記作業機を操作するための操作部材と、
     コンピュータとを備え、
     前記コンピュータは、前記作業機のうち、位置を推定する対象の部位である位置推定対象部の位置を求めるための、学習済み位置推定モデルを有し、
     前記コンピュータは、前記操作部材の操作によって前記作業機を動作させる操作指令値を取得し、前記学習済み位置推定モデルを用いて前記操作指令値から前記位置推定対象部の基準位置からの変位量を推定し、前記基準位置および前記変位量から前記位置推定対象部の位置を推定した第1推定位置を出力する、作業機械を含むシステム。
  2.  前記学習済み位置推定モデルは、前記操作指令値が入力されると、前記位置推定対象部の前記基準位置からの前記変位量を推定して、前記基準位置および前記変位量から前記位置推定対象部の位置を推定した前記第1推定位置を出力するように、学習用データセットを用いた学習処理がなされている、請求項1に記載のシステム。
  3.  前記学習済み位置推定モデルは、学習用データセットを用いた学習処理により生成され、前記学習用データセットは、前記操作指令値に対して、前記位置推定対象部の前記基準位置からの前記変位量をラベル付けした学習用データを複数含む、請求項1に記載のシステム。
  4.  前記コンピュータは、前記学習済み位置推定モデルを用いて、前記作業機のうち前記位置推定対象部以外の部位の位置をさらに推定する、請求項1~3のいずれか1項に記載のシステム。
  5.  前記コンピュータは、前記操作指令値から、前記位置推定対象部以外の部位の位置をさらに推定する、請求項4に記載のシステム。
  6.  前記作業機は、前記作業機械本体に連結されたブームと、前記ブームに連結されたアームと、前記アームに連結されたバケットとを有し、
     前記位置推定対象部は、前記バケットであり、
     前記位置推定対象部以外の部位は、前記アームまたは前記ブームである、請求項4に記載のシステム。
  7.  前記システムは、前記作業機を撮像する撮像装置をさらに備え、
     前記コンピュータは、前記位置推定対象部の位置を求めるための他の学習済み位置推定モデルをさらに有し、前記撮像装置によって撮像される前記作業機の撮像画像を取得し、前記他の学習済み位置推定モデルを用いて前記撮像画像から前記位置推定対象部の位置を推定した第2推定位置を出力するものであり、
     前記コンピュータは、前記他の学習済み位置推定モデルを用いて前記撮像画像から前記第2推定位置を求める推定の精度を検出し、その精度が所定値よりも低いとき、前記学習済み位置推定モデルを用いて前記操作指令値から前記第1推定位置を推定する、請求項1~3のいずれか1項に記載のシステム。
  8.  前記基準位置は、前記撮像画像から前記第2推定位置を求める推定の精度が所定値よりも低下する直前の前記位置推定対象部の前記第2推定位置である、請求項7に記載のシステム。
  9.  前記コンピュータは、前記他の学習済み位置推定モデルを用いて、前記撮像画像から、前記作業機のうち前記位置推定対象部以外の部位の位置をさらに推定する、請求項7に記載のシステム。
  10.  前記作業機を動作させる油圧シリンダをさらに備え、
     前記コンピュータは、前記油圧シリンダのストロークエンドで前記変位量を較正する、請求項1~3のいずれか1項に記載のシステム。
  11.  前記作業機の位置は、前記作業機械本体に対する前記作業機の相対位置である、請求項1~3のいずれか1項に記載のシステム。
  12.  コンピュータによって実行される方法であって、
     作業機械本体に設けられた作業機を動作させる操作指令値を取得する工程と、
     前記作業機の位置を求めるための学習済み位置推定モデルを用いて前記操作指令値から前記作業機の位置を推定した推定位置を求める工程と、
    を備える方法。
  13.  学習済みの位置推定モデルの製造方法であって、
     作業機械本体に取り付けられた作業機を動作させる操作指令値と、前記操作指令値を検出したときの前記作業機の基準位置からの変位量とを含む学習用データを取得することと、
     前記学習用データにより前記位置推定モデルを学習させることと、を備える、製造方法。
  14.  前記学習させることは、
     前記位置推定モデルを用いて、前記操作指令値から、前記作業機が前記基準位置から変位した量を推定した推定変位量を求めることと、
     前記変位量に対する前記推定変位量の誤差を算出することと、
     前記誤差に基づいて前記位置推定モデルを更新することとを含む、請求項13に記載の製造方法。
  15.  作業機の位置を求める位置推定モデルを学習させるための学習用データであって、
     作業機械本体に取り付けられた作業機を動作させる操作指令値と、
     前記操作指令値を検出したときの前記作業機の基準位置からの変位量とを備える、学習用データ。
  16.  前記変位量は、前記作業機のうち位置を推定する対象の部位である位置推定対象部の前記基準位置からの変位量を含む、請求項15に記載の学習用データ。
  17.  前記変位量は、前記作業機のうち前記位置推定対象部以外の部位の前記基準位置からの変位量をさらに含む、請求項16に記載の学習用データ。
  18.  学習済みの位置推定モデルの製造方法であって、
     作業機械本体に取り付けられた作業機を動作させる操作指令値を取得することと、
     学習済みの位置推定モデルを用いて前記操作指令値から前記作業機の位置を推定した推定位置を求めることと、
     前記操作指令値と前記推定位置とを含む学習用データにより、前記位置推定モデルとは別の位置推定モデルを学習させることと、を備える、製造方法。
PCT/JP2020/002251 2019-01-29 2020-01-23 作業機械を含むシステム、コンピュータによって実行される方法、学習済みの位置推定モデルの製造方法、および学習用データ WO2020158557A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202080006250.XA CN113167054B (zh) 2019-01-29 2020-01-23 包括作业机械的系统、由计算机执行的方法及学习用数据
DE112020000142.3T DE112020000142T5 (de) 2019-01-29 2020-01-23 System mit einer Arbeitsmaschine, computerimplementiertes Verfahren, Verfahren zur Erzeugung eines gelernten Positionsschätzmodells, und Lerndaten
KR1020217014429A KR102590855B1 (ko) 2019-01-29 2020-01-23 작업 기계를 포함하는 시스템, 작업 기계를 포함하는 시스템이 컴퓨터에 의해 실행되는 방법, 작업 기계를 포함하는 시스템에 사용되는 학습된 위치 추정 모델의 생성 방법
US17/296,314 US20220049477A1 (en) 2019-01-29 2020-01-23 System including work machine, computer implemented method, method for producing trained position estimation model, and training data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019013405A JP7316052B2 (ja) 2019-01-29 2019-01-29 作業機械を含むシステム、およびコンピュータによって実行される方法
JP2019-013405 2019-01-29

Publications (1)

Publication Number Publication Date
WO2020158557A1 true WO2020158557A1 (ja) 2020-08-06

Family

ID=71842035

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/002251 WO2020158557A1 (ja) 2019-01-29 2020-01-23 作業機械を含むシステム、コンピュータによって実行される方法、学習済みの位置推定モデルの製造方法、および学習用データ

Country Status (6)

Country Link
US (1) US20220049477A1 (ja)
JP (1) JP7316052B2 (ja)
KR (1) KR102590855B1 (ja)
CN (1) CN113167054B (ja)
DE (1) DE112020000142T5 (ja)
WO (1) WO2020158557A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020091002A1 (ja) * 2018-10-31 2020-05-07 住友建機株式会社 ショベル、ショベル支援システム
JP7079896B2 (ja) * 2019-05-24 2022-06-02 川崎重工業株式会社 学習機能付き建設機械
US20210087777A1 (en) * 2019-09-25 2021-03-25 Deere & Company Work implement linkage system having automated features for a work vehicle
JP7127715B2 (ja) * 2020-09-28 2022-08-30 日本精機株式会社 作業支援システムの制御方法、作業支援システムの制御プログラム
US11352769B1 (en) * 2021-06-25 2022-06-07 Built Robotics Inc. Online machine learning for calibration of autonomous earth moving vehicles
DE102022203962A1 (de) 2022-04-25 2023-10-26 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zur Lageschätzung einer Arbeitskinematik einer Arbeitsmaschine und Arbeitsmaschine

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09328785A (ja) * 1996-04-10 1997-12-22 Komatsu Ltd 建設機械の作業機制御装置
JP2001142506A (ja) * 1999-11-16 2001-05-25 Hitachi Ltd 操作支援機能付き車両
WO2014167732A1 (ja) * 2013-04-12 2014-10-16 株式会社小松製作所 油圧シリンダのストローク動作校正制御装置及び油圧シリンダのストローク動作校正制御方法
JP2015063864A (ja) * 2013-09-26 2015-04-09 住友建機株式会社 ショベル、及びショベル用管理装置
JP2016156193A (ja) * 2015-02-25 2016-09-01 株式会社日立製作所 操作支援システムおよび操作支援システムを備えた作業機械
WO2017010212A1 (ja) * 2015-07-15 2017-01-19 株式会社日立製作所 作業機械の操作システムおよび作業機械の操作システムを備えた作業機械
JP2018190241A (ja) * 2017-05-09 2018-11-29 オムロン株式会社 タスク実行システム、タスク実行方法、並びにその学習装置及び学習方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06336747A (ja) * 1993-05-26 1994-12-06 Shin Caterpillar Mitsubishi Ltd シヨベル系建設機械の作業部制御装置
JP2005194825A (ja) * 2004-01-09 2005-07-21 Shin Caterpillar Mitsubishi Ltd 建設機械における作業機制御装置
KR101715940B1 (ko) * 2010-06-23 2017-03-13 두산인프라코어 주식회사 티칭 및 플레이백을 이용한 건설기계의 작업궤적 제어 장치 및 그 방법
US10032117B2 (en) * 2014-09-17 2018-07-24 Caterpillar Inc. Method for developing machine operation classifier using machine learning
US10471610B2 (en) * 2015-06-16 2019-11-12 Samsung Electronics Co., Ltd. Robot arm having weight compensation mechanism
JP6532797B2 (ja) 2015-10-08 2019-06-19 日立建機株式会社 建設機械
JP7001350B2 (ja) * 2017-02-20 2022-01-19 株式会社小松製作所 作業車両および作業車両の制御方法
JP7253949B2 (ja) * 2019-03-25 2023-04-07 株式会社小松製作所 作業機械、システムおよび作業機械の制御方法
WO2022176515A1 (ja) * 2021-02-22 2022-08-25 株式会社小松製作所 作業機モーメントを推定する方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09328785A (ja) * 1996-04-10 1997-12-22 Komatsu Ltd 建設機械の作業機制御装置
JP2001142506A (ja) * 1999-11-16 2001-05-25 Hitachi Ltd 操作支援機能付き車両
WO2014167732A1 (ja) * 2013-04-12 2014-10-16 株式会社小松製作所 油圧シリンダのストローク動作校正制御装置及び油圧シリンダのストローク動作校正制御方法
JP2015063864A (ja) * 2013-09-26 2015-04-09 住友建機株式会社 ショベル、及びショベル用管理装置
JP2016156193A (ja) * 2015-02-25 2016-09-01 株式会社日立製作所 操作支援システムおよび操作支援システムを備えた作業機械
WO2017010212A1 (ja) * 2015-07-15 2017-01-19 株式会社日立製作所 作業機械の操作システムおよび作業機械の操作システムを備えた作業機械
JP2018190241A (ja) * 2017-05-09 2018-11-29 オムロン株式会社 タスク実行システム、タスク実行方法、並びにその学習装置及び学習方法

Also Published As

Publication number Publication date
JP2020122283A (ja) 2020-08-13
CN113167054A (zh) 2021-07-23
JP7316052B2 (ja) 2023-07-27
KR20210075157A (ko) 2021-06-22
CN113167054B (zh) 2022-10-04
DE112020000142T5 (de) 2021-07-29
US20220049477A1 (en) 2022-02-17
KR102590855B1 (ko) 2023-10-17

Similar Documents

Publication Publication Date Title
WO2020158557A1 (ja) 作業機械を含むシステム、コンピュータによって実行される方法、学習済みの位置推定モデルの製造方法、および学習用データ
US11530920B2 (en) Controlling movement of a machine using sensor fusion
CN112424430B (zh) 控制装置、装载机械及控制方法
WO2019239668A1 (ja) 作業機械を含むシステム、コンピュータによって実行される方法、学習済みの位置推定モデルの製造方法、および学習用データ
JP7376264B2 (ja) 作業機械を含むシステム、および作業機械
CN105517645A (zh) 作业机械的姿势运算装置、液压挖掘机的姿势运算装置及作业机械
CN111032962B (zh) 工程机械
WO2021002249A1 (ja) 学習済みの作業分類推定モデルの製造方法、学習用データ、コンピュータによって実行される方法、および作業機械を含むシステム
JP7310408B2 (ja) 建設機械の作業情報生成システム
WO2021241258A1 (ja) 掘削計画作成装置、作業機械および掘削計画作成方法
CN114729520B (zh) 用于作业机械的校准的方法以及系统
JP6912687B2 (ja) 油圧ショベル
CN114787455B (zh) 作业机械的控制系统、作业机械以及作业机械的控制方法
JP7349956B2 (ja) 施工方法及び施工システム
JP7165239B1 (ja) 電子制御装置
WO2024057846A1 (ja) 作業機械における車体座標系を設定するためのシステムおよび方法

Legal Events

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

Ref document number: 20748423

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20217014429

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 20748423

Country of ref document: EP

Kind code of ref document: A1