The present disclosure relates to a system, a method, and a program for controlling a work machine.
Priority is claimed on Japanese Patent Application No. 2021-161174, filed on Sep. 30, 2021, the content of which is incorporated herein by reference.
Patent Literature 1 discloses a control system for a construction machine (work machine) including a tilt-rotatable tilt bucket. As described above, a work machine is known, which is equipped with a plurality of rotation mechanisms rotatable around different axes from each other and can rotate a work tool such as a bucket as desired.
Japanese Unexamined Patent Application, First Publication No. 2020-125599
Incidentally, a tilt rotator is known which rotatably supports an attachment of a work machine around three mutually orthogonal axes. By attaching the tilt rotator to the work machine, the attachment can be directed in any direction. On the other hand, in work machines such as hydraulic excavators, when loading soil or the like onto the bed of a dump truck, there is a desire to avoid spilling soil as much as possible during the process of moving the bucket onto the bed. However, as described above, in the hydraulic excavator equipped with the plurality of rotation mechanisms, when the bucket is attempted to be moved in a state where a width direction (a direction along the teeth) of the bucket is not horizontal, soil loaded into the bucket tends to spill out while being transported to the bed of the dump truck. Therefore, it is preferable to adjust the width direction of the bucket horizontally when moving the bucket.
On the other hand, in the hydraulic excavator equipped with the tilt rotator, it is assumed that the opening direction of the bucket is aligned with an excavation surface by using the rotation mechanism of the hydraulic excavator. Therefore, in consideration of efficiency of excavation work, there is a demand that an opening direction of the bucket is not desired to be changed before and after the loading operation of the dump truck.
An object of the present disclosure is to provide a system, a method, and a program that can simplify an operation of aligning a second reference direction (for example, the tooth direction of a bucket) with a predetermined plane (for example, a vehicle body reference plane), without changing a first reference direction (for example, an opening direction of the bucket) of a work tool, in a work machine including the work tool supported by the work equipment via a tilt rotator.
According to an aspect of the present disclosure, there is provided a system for controlling a work machine including work equipment operably supported by a vehicle body, a tilt rotator attached to a distal end of the work equipment, and a work tool supported to be rotatable around three axes intersecting with each other in different planes with respect to the work equipment via the tilt rotator, the system including a processor. The processor acquires measured values from a plurality of sensors. The processor calculates a current posture of the work tool based on the measured values. The processor determines a virtual rotation axis, based on the calculated current posture of the work tool, when a predetermined control start condition is satisfied. The processor generates a control signal of a tilt rotator for rotating the work tool from the current posture to a target posture by a predetermined amount around the virtual rotation axis. The processor outputs the generated control signal.
According to the above aspect, in the work machine including the work tool supported by the work equipment via the tilt rotator, an operation of aligning a second reference direction with a predetermined plane without changing a first reference direction of the work tool can be simplified.
Hereinafter, an embodiment will be described in detail with reference to the drawings.
The undercarriage 120 travellably supports the work machine 100. The undercarriage 120 is, for example, a pair of left and right endless tracks.
The swing body 140 is supported by the undercarriage 120 to be swingable around a swing center.
The work equipment 160 is operably supported by the swing body 140. The work equipment 160 is driven by hydraulic pressure. The work equipment 160 includes a boom 161, an arm 162, a tilt rotator 163, and a bucket 164 that is a work tool. The base end portion of the boom 161 is rotatably attached to the swing body 140. The base end portion of the arm 162 is rotatably attached to the distal end portion of the boom 161. The tilt rotator 163 is rotatably attached to the distal end portion of the arm 162. The bucket 164 is attached to the tilt rotator 163. The bucket 164 is rotatably supported around three axes intersecting with each other on different planes with respect to the work equipment 160 via the tilt rotator 163. Here, a portion of the swing body 140 to which the work equipment 160 is attached is called a front portion. In addition, with respect to the swing body 140, on the basis of the front portion, the opposite portion is referred to as a rear portion, a portion on the left side is referred to as a left portion, and a portion on the right side is referred to as a right portion.
The cab 180 is provided at the front portion of the swing body 140. An operation device 271 for an operator to operate the work machine 100, and a monitor device 272 which is a man-machine interface of the control device 200 are provided in the cab 180. The operation device 271 receives an input of the operation amount of a traveling motor 304 from an operator, the operation amount of a swing motor 305, the operation amount of a boom cylinder 306, the operation amount of an arm cylinder 307, the operation amount of a bucket cylinder 308, the operation amount of a tilt cylinder 309, and the operation amount of a rotary motor 310. The monitor device 272 receives an input for setting and releasing the bucket posture holding mode from an operator. The bucket posture holding mode is a mode in which the control device 200 controls the bucket cylinder 308, the tilt cylinder 309, and the rotary motor 310 to automatically hold the posture of the bucket 164 in the global coordinate system. The monitor device 272 is implemented by, for example, a computer including a touch panel.
The control device 200 controls the undercarriage 120, the swing body 140, and the work equipment 160, based on the operation of the operation device 271 by the operator. The control device 200 is provided, for example, inside the cab 180.
The work machine 100 includes a plurality of actuators for driving the work machine 100. Specifically, the work machine 100 includes an engine 301, a hydraulic pump 302, a control valve 303, a pair of traveling motors 304, the swing motor 305, the boom cylinder 306, the arm cylinder 307, the bucket cylinder 308, the tilt cylinder 309, and the rotary motor 310.
The engine 301 is a prime mover that drives the hydraulic pump 302.
The hydraulic pump 302 is driven by the engine 301 and supplies hydraulic oil to the traveling motor 304, the swing motor 305, the boom cylinder 306, the arm cylinder 307, and the bucket cylinder 308 via the control valve 303.
The control valve 303 controls the flow rate of the hydraulic oil to be supplied from the hydraulic pump 302 to the traveling motor 304, the swing motor 305, the boom cylinder 306, the arm cylinder 307, and the bucket cylinder 308.
The traveling motor 304 is driven by the hydraulic oil supplied from the hydraulic pump 302 to drive the undercarriage 120.
The swing motor 305 is driven by the hydraulic oil supplied from the hydraulic pump 302 and causes the swing body 140 to swing with respect to the undercarriage 120.
The boom cylinder 306 is a hydraulic cylinder that drives the boom 161. The base end portion of the boom cylinder 306 is attached to the swing body 140. The distal end portion of the boom cylinder 306 is attached to the boom 161.
The arm cylinder 307 is a hydraulic cylinder for driving the arm 162. The base end portion of the arm cylinder 307 is attached to the boom 161. The distal end portion of the arm cylinder 307 is attached to the arm 162.
The bucket cylinder 308 is a hydraulic cylinder for driving the tilt rotator 163 and the bucket 164. The base end portion of the bucket cylinder 308 is attached to the arm 162. The distal end portion of the bucket cylinder 308 is attached to the tilt rotator 163 via a link member.
The tilt cylinder 309 is a hydraulic cylinder for driving the tilt portion 1632. The base end portion of the tilt cylinder 309 is attached to the attachment portion 1631. The distal end portion of the rod of the tilt cylinder 309 is attached to the tilt portion 1632.
The rotary motor 310 is a hydraulic motor for driving the rotation portion 1633. The bracket and stator of the rotary motor 310 are fixed to the tilt portion 1632. The rotation axis and rotor of the rotary motor 310 are provided to extend in the up-down direction in the drawing and are fixed to the rotation portion 1633.
The work machine 100 includes a plurality of sensors for measuring the posture, azimuth direction, and position of the work machine 100. Specifically, the work machine 100 includes an inclination measurer 401, a position/azimuth direction measurer 402, a boom angle sensor 403, an arm angle sensor 404, a bucket angle sensor 405, a tilt angle sensor 406, and a rotation angle sensor 407.
The inclination measurer 401 measures the posture of the swing body 140. The inclination measurer 401 measures inclination (for example, roll angle, pitch angle, and yaw angle) of the swing body 140 with respect to a horizontal plane. Examples of the inclination measurer 401 include an inertial measurement unit (IMU). In this case, the inclination measurer 401 measures the acceleration and angular velocity of the swing body 140 and calculates the inclination of the swing body 140 with respect to the horizontal plane on the basis of the measurement result. The inclination measurer 401 is provided, for example, below the cab 180. The inclination measurer 401 outputs the posture data of the swing body 140, which is a measured value, to the control device 200.
The position/azimuth direction measurer 402 measures a position of a representative point of the swing body 140 and an azimuth direction in which the swing body 140 faces by a global navigation satellite system (GNSS). The position/azimuth direction measurer 402 includes, for example, two GNSS antennas (not shown) attached to the swing body 140, and measures an azimuth direction orthogonal to a straight line connecting positions of the two antennas as an azimuth direction in which the work machine 100 faces. The position/azimuth direction measurer 402 outputs position data and azimuth direction data of the swing body 140, which are measured values, to the control device 200.
The boom angle sensor 403 measures a boom angle, which is the angle of the boom 161 with respect to the swing body 140. The boom angle sensor 403 may be an IMU attached to the boom 161. In this case, the boom angle sensor 403 measures the boom angle, based on the inclination of the boom 161 with respect to the horizontal plane and the inclination of the swing body measured by the inclination measurer 401. The measured value of the boom angle sensor 403 indicates zero, for example, when the direction of a straight line passing through the base end and the distal end of the boom 161 coincides with the front-rear direction of the swing body 140. The boom angle sensor 403 according to another embodiment may be a stroke sensor attached to the boom cylinder 306. In addition, the boom angle sensor 403 according to another embodiment may be a rotation sensor provided at a joint shaft that rotatably connects the swing body 140 and the boom 161. The boom angle sensor 403 outputs boom angle data, which is the measured value, to the control device 200.
The arm angle sensor 404 measures an arm angle, which is the angle of the arm 162 with respect to the boom 161. The arm angle sensor 404 may be an IMU attached to the arm 162. In this case, the arm angle sensor 404 measures the arm angle, based on the inclination of the arm 162 with respect to the horizontal plane and the boom angle measured by the boom angle sensor 403. The measured value of the arm angle sensor 404 indicates zero, for example, when the direction of the straight line passing through the base end and the distal end of the arm 162 coincides with the direction of the straight line passing through the base end and the distal end of the boom 161. The arm angle sensor 404 according to another embodiment may calculate an angle by attaching a stroke sensor to the arm cylinder 307. In addition, the arm angle sensor 404 according to another embodiment may be a rotation sensor provided at a joint shaft that rotatably connects the boom 161 and the arm 162. The arm angle sensor 404 outputs arm angle data, which is the measured value, to the control device 200.
The bucket angle sensor 405 measures a bucket angle, which is the angle of the tilt rotator 163 with respect to the arm 162. The bucket angle sensor 405 may be a stroke sensor provided in the bucket cylinder 308. In this case, the bucket angle sensor 405 measures the bucket angle, based on the stroke amount of the bucket cylinder 308. The measured value of the bucket angle sensor 405 indicates zero, for example, when the direction of the straight line passing through the base end and the teeth of the bucket 164 coincides with the direction of the straight line passing through the base end and the distal end of the arm 162. Incidentally, the bucket angle sensor 405 according to another embodiment may be a rotation sensor provided on a joint shaft that rotatably connects the arm 162 and the attachment portion 1631 of the tilt rotator 163. In addition, the bucket angle sensor 405 according to another embodiment may be an IMU attached to the bucket 164. The bucket angle sensor 405 outputs bucket angle data, which is the measured value, to the control device 200.
The tilt angle sensor 406 measures a tilt angle, which is the angle of the tilt portion 1632 with respect to the attachment portion 1631 of the tilt rotator 163. The tilt angle sensor 406 may be a rotation sensor provided in a joint shaft that rotatably connects the attachment portion 1631 and the tilt portion 1632. The measured value of the tilt angle sensor 406 indicates zero, for example, when the rotation axis of the arm 162 and the rotation axis of the rotation portion 1633 are orthogonal to each other. The tilt angle sensor 406 according to another embodiment may calculate the angle by attaching the stroke sensor to the tilt cylinder 309. The tilt angle sensor 406 outputs tilt angle data, which is the measured value, to the control device 200.
The rotation angle sensor 407 measures a rotation angle, which is the angle of the rotation portion 1633 with respect to the tilt portion 1632 of the tilt rotator 163. The rotation angle sensor 407 may be a rotation sensor provided in the rotary motor 310. The measured value of the tilt angle sensor 406 indicates zero, for example, when the tooth direction of the bucket 164 and the operation plane of the work equipment 160 are orthogonal to each other. The rotation angle sensor 407 outputs rotation angle data, which is the measured value, to the control device 200.
The control device 200 is a computer that includes a processor 210, a main memory 230, a storage 250, and an interface 270. The control device 200 is an example of a control system. The control device 200 receives measured values from the inclination measurer 401, the position/azimuth direction measurer 402, the boom angle sensor 403, the arm angle sensor 404, the bucket angle sensor 405, the tilt angle sensor 406, and the rotation angle sensor 407.
The storage 250 is a non-transitory, tangible storage medium. As the storage 250, magnetic disks, optical disks, magneto-optical disks, semiconductor memories, and the like are exemplary examples. The storage 250 may be internal media directly connected to a bus of the control device 200, or may be external media connected to the control device 200 via the interface 270 or a communication line. The operation device 271 and the monitor device 272 are connected to the processor 210 via the interface 270.
The storage 250 stores control programs for controlling the work machine 100. The control programs may be for implementing part of the functions that the control device 200 is caused to exhibit. For example, the control program may function in combination with another program already stored in the storage 250 or in combination with another program implemented in another device. In addition, in other embodiments, the control device 200 may include a customized large scale integrated circuit (LSI) such as a programmable logic device (PLD) in addition to or instead of the above configuration. Examples of PLD include Programmable Array Logic (PAL), Generic Array Logic (GAL), Complex Programmable Logic Device (CPLD), and Field Programmable Gate Array (FPGA). In this case, part or all of the functions realized by the processor may be realized by the integrated circuit.
In the storage 250, geometric data representing dimensions and positions of the centers of gravity of the swing body 140, the boom 161, the arm 162, and the bucket 164 is recorded. The geometric data is data representing the position of an object in a predetermined coordinate system. In addition, design surface data, which is three-dimensional data representing the shape of the design surface at the construction site in the global coordinate system, is recorded in the storage 250. The global coordinate system is a coordinate system composed of an Xg axis extending in the latitude direction, a Yg axis extending in the longitudinal direction, and a Zg axis extending in the vertical direction. The design surface data is represented by, for example, Triangular Irregular Networks (TIN) data.
By executing the control program, the processor 210 includes an operation signal acquisition unit 211, an input unit 212, a display control unit 213, a measured value acquisition unit 214, a position and posture calculation unit 215, an intervention determination unit 216, a control signal output unit 218, a target posture determination unit 219, and a rotation amount calculation unit 220.
The operation signal acquisition unit 211 acquires an operation signal indicating an operation amount of each actuator from the operation device 271.
The input unit 212 receives an operation input by the operator from the monitor device 272.
The display control unit 213 outputs screen data to be displayed on the monitor device 272 to the monitor device 272.
The measured value acquisition unit 214 acquires measured values from the inclination measurer 401, the position/azimuth direction measurer 402, the boom angle sensor 403, the arm angle sensor 404, the bucket angle sensor 405, the tilt angle sensor 406, and the rotation angle sensor 407.
The position and posture calculation unit 215 calculates the position of the work machine 100 in the global coordinate system and the vehicle body coordinate system, based on various measured values acquired by the measured value acquisition unit 214 and the geometric data recorded in the storage 250. For example, the position and posture calculation unit 215 calculates positions of the teeth of the bucket 164 in the global coordinate system and the vehicle body coordinate system. The vehicle body coordinate system is a Cartesian coordinate system of which origin is a representative point of the swing body 140 (for example, a point passing through the swing center). The calculation by the position and posture calculation unit 215 will be described later.
The intervention determination unit 216 determines whether or not to limit the speed of the work equipment 160, based on the positional relationship between the positions of the teeth of the bucket 164 calculated by the position and posture calculation unit 215 and the design surface indicated by the design surface data. Hereinafter, limiting the speed of the work equipment 160 by the control device 200 is also referred to as intervention control. Specifically, the intervention determination unit 216 calculates the shortest distance between the design surface and the bucket 164, and determines to perform the intervention control on the work equipment 160 in a case where the shortest distance is equal to or less than a predetermined distance. Specifically, the intervention determination unit 216 rotates and translates the design surface data recorded in the storage 250, based on the measured values of the inclination measurer 401 and the position/azimuth direction measurer 402, and converts the position of the design surface represented in the global coordinate system into a position in the vehicle body coordinate system. The intervention determination unit 216 specifies, as the control point, the contour point having the shortest distance to the design surface among the plurality of contour points of the bucket 164. The intervention determination unit 216 specifies a surface (polygon) located vertically below the control point in the design surface data. The intervention determination unit 216 calculates a first design line, which is a line of intersection between a plane parallel to the Xbk-Zbk plane of the bucket coordinate system passing through the control point and the specified plane. The intervention determination unit 216 determines whether or not the distance between the control point and the first design line is equal to or less than an intervention threshold value.
The control signal output unit 218 outputs the operation amount acquired by the operation signal acquisition unit 211 or the control signal of each actuator (the bucket cylinder 308, the tilt cylinder 309, and the rotary motor 310) according to the target values calculated by the rotation amount calculation unit 220, to the control valve 303.
The functions of the target posture determination unit 219 and the rotation amount calculation unit 220 will be described in detail when describing an angle alignment function described below.
Here, a method for calculating the position of the point on the outer shell of the work machine 100 by the position and posture calculation unit 215 will be described. The position and posture calculation unit 215 calculates the position of the point on the outer shell, based on various measured values acquired by the measured value acquisition unit 214 and the geometric data recorded in the storage 250. In the storage 250, geometric data representing dimensions of the swing body 140, the boom 161, the arm 162, the tilt rotator 163 (attachment portion 1631, tilt portion 1632, and rotation portion 1633), and the bucket 164 is recorded.
The geometric data of the swing body 140 indicates the center position (xbm, ybm, zbm) of the joint shaft where the swing body 140 supports the boom 161, in the vehicle body coordinate system that is the local coordinate system. The vehicle body coordinate system is a coordinate system composed of an Xsb axis extending in the front-rear direction, a Ysb axis extending in the left-right direction, and a Zsb axis extending in the up-down direction with the swing center of the swing body 140 as a reference. The up-down direction of the swing body 140 does not necessarily coincide with the vertical direction.
The geometric data of the boom 161 indicates the position (xam, yam, zam) of the joint shaft where the boom 161 supports the arm 162, in the boom coordinate system that is the local coordinate system. The boom coordinate system is a coordinate system composed of an Xbm axis extending in a longitudinal direction, a Ybm axis extending in a direction where the joint shaft extends, and a Zbm axis orthogonal to the Xbm axis and the Ybm axis, with a center position of the joint shaft connecting the swing body 140 and the boom 161 as a reference.
The geometric data of the arm 162 indicates the position (xt1, yt1, zt1) of the joint shaft where the arm 162 supports the attachment portion 1631 of the tilt rotator 163, in the arm coordinate system that is the local coordinate system. The arm coordinate system is a coordinate system composed of an Xam axis extending in a longitudinal direction, a Yam axis extending in a direction where the joint shaft extends, and a Zam axis orthogonal to the Xam axis and the Yam axis, with a center position of the joint shaft connecting the boom 161 and the arm 162 as a reference.
The geometric data of the attachment portion 1631 of the tilt rotator 163 indicates the position (xt2, yt2, zt2) of the joint shaft where the attachment portion 1631 supports the tilt portion 1632 and the inclination (φt) of the joint shaft, in the first tilt-rotate coordinate system that is the local coordinate system. The inclination φt of the joint shaft is an angle related to a design error of the tilt rotator 163, and is obtained by calibration of the tilt rotator 163 or the like. The first tilt-rotate coordinate system is a coordinate system composed of a Yt1 axis extending in a direction where the joint shaft connecting the arm 162 and the attachment portion 1631 extends, a Zt1 axis extending in a direction where the joint shaft connecting the attachment portion 1631 and the tilt portion 1632 extends, and a Xt1 axis orthogonal to the Yt1 axis and the Zt1 axis, with the center position of the joint shaft connecting the arm 162 and the attachment portion 1631 as a reference.
The geometric data of the tilt portion 1632 of the tilt rotator 163 indicates the distal end position (xt3, yt3, zt3) of the rotation axis of the rotary motor 310 and an inclination (φr) of the rotation axis, in the second tilt-rotate coordinate system that is the local coordinate system. The inclination or of the rotation axis is an angle related to a design error of the tilt rotator 163, and is obtained by calibration of the tilt rotator 163 or the like. The second tilt-rotate coordinate system is a coordinate system composed of a Xt2 axis extending in a direction where the joint shaft connecting the attachment portion 1631 and the tilt portion 1632 extends, a Zt2 axis extending in a direction where the rotation axis of the rotary motor 310 extends, and a Yt2 axis orthogonal to the Xt2 axis and the Zt2 axis, with the center position of the joint shaft connecting the attachment portion 1631 and the tilt portion 1632 as a reference.
The geometric data of the rotation portion 1633 of the tilt rotator 163 indicates the center position (xt4, yt4, zt4) of the attachment surface of the bucket 164 in the third tilt-rotate coordinate system that is the local coordinate system. The third tilt-rotate coordinate system is a coordinate system composed of a Zt3 axis extending in a direction where the rotation axis of the rotary motor 310 extends, and a Xt3 axis and a Yt3 axis orthogonal to the rotation axis, with the center position of the attachment surface of the bucket 164 as a reference. The bucket 164 is attached to the rotation portion 1633 such that the teeth are parallel to the Yt3 axis.
The geometric data of the bucket 164 indicates the positions (xbk, ybk, zbk) of the plurality of contour points of the bucket 164 in the third tilt-rotate coordinate system. Examples of the contour points include positions of both ends and the center of the teeth of the bucket 164, positions of both ends and the center of the bottom portion of the bucket 164, and positions of both ends and the center of the heel of the bucket 164.
The position and posture calculation unit 215 generates a boom-vehicle body conversion matrix Tbmsb for conversion from the boom coordinate system to the vehicle body coordinate system by using the following Equation (1), based on the measured value of the boom angle θbm acquired by the measured value acquisition unit 214 and the geometric data of the swing body 140. The boom-vehicle body conversion matrix Tbmsb is a matrix for rotating around the Ybm axis by the boom angle θbm and translating by the deviation (xbm, ybm, zbm) between the origin of the vehicle body coordinate system and the origin of the boom coordinate system.
The position and posture calculation unit 215 generates an arm-boom conversion matrix Tambm for conversion from the arm coordinate system to the boom coordinate system by using the following Equation (2), based on the measured value of the arm angle θam acquired by the measured value acquisition unit 214 and the geometric data of the boom 161. The arm-boom conversion matrix Tambm is a matrix for rotating around the Yam axis by the arm angle θam and translating by the deviation (xam, yam, zam) between the origin of the boom coordinate system and the origin of the arm coordinate system. In addition, the position and posture calculation unit 215 calculates a product of the boom-vehicle body conversion matrix Tbmsb and the arm-boom conversion matrix Tambm to generate the arm-vehicle body conversion matrix Tamsb for converting from the arm coordinate system to the vehicle body coordinate system.
The position and posture calculation unit 215 generates a first tilt-arm conversion matrix Tt1am for conversion from the first tilt-rotate coordinate system to the arm coordinate system by using the following Equation (3), based on the measured value of the bucket angle θbk acquired by the measured value acquisition unit 214 and the geometric data of the arm 162. The first tilt-arm conversion matrix Tt1am is a matrix that rotates around the Yt1 axis by the bucket angle θbk, translates by the deviation (xt1, yt1, zt1) between the origin of the arm coordinate system and the origin of the first tilt-rotate coordinate system, and further tilts by the inclination φt of the joint shaft of the tilt portion 1632. In addition, the position and posture calculation unit 215 calculates a product of the arm-vehicle body conversion matrix Tamsb and the first tilt-arm conversion matrix Tt am to generate the first tilt-vehicle body conversion matrix Tt1sb for converting from the first tilt-rotate coordinate system to the vehicle body coordinate system.
The position and posture calculation unit 215 generates a second tilt-first tilt conversion matrix Tt2t1 for conversion from the first tilt-rotate coordinate system to the second tilt-rotate coordinate system by using the following Equation (4), based on the measured value of the tilt angle θt acquired by the measured value acquisition unit 214 and the geometric data of the tilt rotator 163. The second tilt-first tilt conversion matrix Tt2t1 is a matrix that rotates around the Xt2 axis by the tilt angle θt, translates by the deviation (xt2, yt2, zt2) between the origin of the first tilt-rotate coordinate system and the origin of the second tilt-rotate coordinate system, and further tilts by the inclination or of the rotation axis of the rotation portion 1633. In addition, the position and posture calculation unit 215 calculates a product of the first tilt-vehicle body conversion matrix Tt1sb and the second tilt-first tilt conversion matrix Tt2t1 to generate the second tilt-vehicle body conversion matrix Tt2sb for converting from the second tilt-rotate coordinate system to the vehicle body coordinate system.
The position and posture calculation unit 215 generates a third tilt-second tilt conversion matrix Tt3t2 for conversion from the second tilt-rotate coordinate system to the third tilt-rotate coordinate system by using the following Equation (5), based on the measured value of the rotation angle θr acquired by the measured value acquisition unit 214 and the geometric data of the tilt rotator 163. The third tilt-second tilt conversion matrix Tt3t2 is a matrix that rotates around the Zt3 axis by the rotation angle θr, and translates by the deviation (xt3, yt3, zt3) between the origin of the second tilt-rotate coordinate system and the origin of the third tilt-rotate coordinate system. In addition, the position and posture calculation unit 215 calculates a product of the second tilt-vehicle body conversion matrix Tt2sb and the third tilt-second tilt conversion matrix Tt3t2 to generate the third tilt-vehicle body conversion matrix Tt3sb for converting from the third tilt-rotate coordinate system to the vehicle body coordinate system.
The position and posture calculation unit 215 can calculate the positions of the plurality of contour points of the bucket 164 in the vehicle body coordinate system, by calculating the sum of the center positions (xt4, yt4, zt4) of the attachment surface of the bucket 164 and the positions (xbk, ybk, zbk) of the plurality of contour points in the third tilt-rotate coordinate system indicated by the geometric data of the bucket 164 and the product of the center positions (xt4, yt4, zt4) and the third tilt-vehicle body conversion matrix Tbksb.
Incidentally, the angle of the teeth of the bucket 164 with respect to the ground plane of the work machine 100, that is, the angle formed by the Xsb-Ysb plane of the vehicle body coordinate system and the Yt3 axis of the third tilt-rotate coordinate system is determined by the boom angle θbm, the arm angle θam, the bucket angle θbk, the tilt angle θt, and the rotation angle θr. Accordingly, as shown in
The position and posture calculation unit 215 generates a bucket-third tilt conversion matrix Tbkt3 for converting the third tilt-rotate coordinate system into the bucket coordinate system according to the following Equation (6) based on the geometric data of the tilt rotator 163. The bucket-third tilt conversion matrix Tbkt3 is a matrix that rotates around the Yt3 axis by the inclination or of the rotation axis.
Hereinafter, an angle alignment function according to the present embodiment will be described in detail with reference to the drawings. Here, “angle alignment” means an operation of rotating the bucket 164 around the bucket tilt axis (Xbk axis) to cause the tooth direction (bucket pitch axis (Ybk axis)) of the bucket 164 to be aligned with a vehicle body reference plane by a predetermined angle. The vehicle body reference plane is an Xsb axis-Ysb axis plane (refer to
First, the operation signal acquisition unit 211, the control signal output unit 218, the target posture determination unit 219, and the rotation amount calculation unit 220 in
In addition to the above-described functions, the operation signal acquisition unit 211 acquires an operation signal to an operation reception portion (hereinafter, also referred to as an angle alignment operation reception portion) dedicated for using the angle alignment function in the operation device 271.
When receiving an operation signal for performing angle alignment from the operation reception portion, the target posture determination unit 219 determines a target posture which is a posture obtained by rotating the bucket 164 around the virtual rotation axis from the current posture by a predetermined amount. The virtual rotation axis is a virtual rotation axis facing the opening direction of the bucket 164. In the present embodiment, the bucket tilt axis (Xbk axis, refer to
The rotation amount calculation unit 220 calculates a rotation amount for each of the plurality of rotation mechanisms required to align the current posture of the bucket 164 with the target posture. Here, the plurality of rotation mechanisms in the present embodiment are the bucket cylinder 308, the tilt cylinder 309, and the rotary motor 310. As shown in
Next, a flow of processing of the angle alignment function by the control device 200 of the present embodiment will be described with reference to
First, the measured value acquisition unit 214 acquires measured values from the inclination measurer 401, the position/azimuth direction measurer 402, the boom angle sensor 403, the arm angle sensor 404, the bucket angle sensor 405, the tilt angle sensor 406, and the rotation angle sensor 407 (step S101).
The position and posture calculation unit 215 calculates the posture of the bucket in the vehicle body coordinate system based on the measured value acquired in step S101 (step S102). The posture of the bucket in the vehicle body coordinate system is represented by a posture matrix Rcur indicating a direction of each axis (Xbk, Ybk, Zbk) of the bucket coordinate system in the vehicle body coordinate system. All translation components of the posture matrix Rcur representing the posture of the bucket 164 are set to zero.
The operation signal acquisition unit 211 acquires an operation signal from the angle alignment operation reception portion by the operator (step S103).
In the present embodiment, the operation device 271 is provided with, for example, two levers 2710 and 2711 as shown in
Furthermore, the operation device 271 according to the present embodiment includes an angle alignment operation reception portion 2710b in the lever 2710. The angle alignment operation reception portion 2710b is, for example, a press-type mechanical switch. The operator can execute angle alignment control at a desired timing by pressing the switch. In a case where a signal is acquired from the angle alignment operation reception portion 2710b, the processor determines that the predetermined control start condition is satisfied, and proceeds to the process of step S104.
Returning to
Next, the rotation amount calculation unit 220 calculates the target value of the rotation amount of each of the plurality of rotation mechanisms required to align the current posture of the bucket 164 with the target posture, based on the target value θbk_t_tgt specified by the target posture determination unit 219 (step S105).
Specifically, the rotation amount calculation unit 220 creates a rotation matrix Rbk_tbk representing rotation around the bucket tilt axis Xbk in the bucket coordinate system by substituting the target value θbk_t_tgt of the angular velocity into the following Equation (7).
The rotation amount calculation unit 220 calculates the target posture Rtgt of the bucket 164 after a unit time by multiplying the matrix Rcur representing the current posture of the bucket 164 by the rotation matrix Rbk_pbk in Equation (7). The rotation amount calculation unit 220 calculates the target values (θbk_tgt, θt_tgt, θr_tgt) of a bucket angle θbk, a tilt angle θt, and a rotation angle θr by using the following Equations (8), (9), and (10), based on the current posture Rcur of the bucket 164 and the target posture Rtgt of the bucket 164 after the unit time.
As described above, by the matrix conversion, the target value (θbk_t_tgt) of the angular velocity around one virtual rotation axis (bucket tilt axis) is converted into the target value (θbk_tgt, θt_tgt, θr_tgt) of the angular velocity around the three machine axes.
Next, the control signal output unit 218 generates the control signal of each actuator (the bucket cylinder 308, the tilt cylinder 309, and the rotary motor 310) according to the target values (θbk_tgt, θt_tgt, θr_tgt) of the bucket angle θbk, the tilt angle θt, and the rotation angle θr, and outputs the control signal of each actuator to the control valve 303 (step S106).
The posture of the bucket 164 actually changes by the control signal output unit 218 outputting the control signal of each actuator to the control valve 303. At this time, the target posture determination unit 219 acquires the changed current posture Rcur and determines whether or not the bucket pitch axis is parallel to the vehicle body reference plane (step S107).
When the bucket pitch axis (γbk axis) is not parallel to the vehicle body reference plane (step S107; NO), the process returns to step S104, and the target value (θbk_t_tgt) of the angular velocity around the bucket tilt axis (Xbk axis) is specified again. Accordingly, the process of step S105 by the rotation amount calculation unit 220 and the process of step S106 by the control signal output unit 218 are executed again.
On the other hand, when the bucket pitch axis (Ybk axis) is parallel to the vehicle body reference plane (step S107; YES), the target posture determination unit 219, the rotation amount calculation unit 220, and the control signal output unit 218 end the process. Accordingly, the automatic angle alignment control by the control device 200 is completed.
Next, an action and effect of the angle alignment function will be described with reference to
Here,
The operator operates the boom 161 and the arm 162 to lift the bucket 164 upward in order to load the scooped soil onto a dump truck. However, when the tooth direction of the bucket 164 remains inclined, a part of the scooped soil spills down from the bucket 164. Therefore, the operator presses the operation reception portion 2710b (see
As described above, according to the control device 200 of the first embodiment, it is possible to simplify the operation for making the tooth direction of the bucket 164 parallel to the vehicle body reference plane, in the work machine 100 including the work equipment 160 to which the plurality of rotation mechanisms (the bucket cylinder 308, the tilt cylinder 309, and the rotary motor 310) and the bucket 164 are connected.
In the first embodiment described above, it has been described that the angle alignment control can be started at a desired timing by the operator pressing the operation reception portion 2710b. That is, in the first embodiment, the control start condition of the angle alignment function is the operation (pressing of the button) by the operator. However, another embodiment is not limited to this aspect. For example, a control device 200 according to the modification example of the first embodiment may have the following functions.
The target posture determination unit 219 according to a modification example of the first embodiment starts a process of determining the target posture, when the bucket 164 is separated from the ground by a predetermined distance as a control start condition of the angle alignment function.
For determining whether or not the bucket 164 is away from the ground by a predetermined distance, for example, the above-described function of the intervention determination unit 216 can be used. That is, the target posture determination unit 219 obtains the shortest distance between the position of the teeth of the bucket 164 and the design surface moment by moment via the intervention determination unit 216. Then, the target posture determination unit 219 determines that a predetermined control start condition is satisfied at a time point when the shortest distance calculated from moment to moment becomes equal to or larger than a predetermined determination threshold value while the bucket 164 that has scooped rises, and starts the process of step S104.
In this manner, an operation to be performed by the operator can be eliminated in a case where the angle alignment control is executed, and thus the loading work on the loading platform can be further simplified.
The embodiments have been described above in detail with reference to the drawings; however, the specific configurations are not limited to the above-described configurations, and various design changes or the like can be made. That is, in another embodiment, the order of the above-described processing may be appropriately changed. In addition, some of the processing may be executed in parallel.
The control device 200 according to the above-described embodiment may be configured by a single computer, or the configuration of the control device 200 may be arranged to be divided into a plurality of computers, and the plurality of computers may function as the control device 200 by cooperating with each other. In this case, a part of the computers configuring the control device 200 may be mounted inside the work machine, and another computer may be provided outside the work machine. For example, in another embodiment, the operation device 271 and the monitor device 272 are provided remotely from the work machine 100, and the configuration other than the measured value acquisition unit 214 and the control signal output unit 218 in the control device 200 may be provided in the remote server.
Further, the work machine 100 according to the above-described embodiment is a hydraulic excavator, but is not limited to this. For example, the work machine 100 according to another embodiment may be a work machine that is fixed on the ground and does not self-travel. Further, the work machine 100 according to another embodiment may be a work machine that does not have a swing body.
The work machine 100 according to the above-described embodiment includes the bucket 164 as the attachment of the work equipment 160, but is not limited thereto. For example, the work machine 100 according to another embodiment may include a breaker, a fork, a grapple, and the like as an attachment. Even in this case, similarly to the bucket coordinate system, the control device 200 controls the tilt rotator 163 by the local coordinate system composed of the Xbk axis extending in the direction where the teeth of the attachment face, the Ybk axis extending in the direction along the teeth, and the Zbk axis that is orthogonal to the Xbk axis and the Ybk axis.
In addition, in another embodiment, the axes of the tilt rotator 163 may not be orthogonal to each other as long as the axes intersect each other on different planes. Specifically, regarding an axis AX1 related to a joint shaft connecting the arm 162 and the attachment portion 1631, an axis AX2 related to a joint shaft connecting the attachment portion 1631 and the tilt portion 1632, and a rotation axis AX3 of the rotary motor 310, when the tilt angle and the rotation angle of the tilt rotator 163 are zero, a surface parallel to the axis AX1 and the axis AX2, a surface parallel to the axis AX2 and the axis AX3, and a surface parallel to the axis AX3 and the axis AX1 may be different from each other.
Further, the control device 200 according to another embodiment may not have a design surface setting function. Also in this case, the control device 200 can automatically control the tilt rotator 163 by performing the bucket posture holding control. For example, the operator can perform simple ground leveling work without setting the design surface.
According to the above aspect, in the work machine including the work tool supported by the work equipment via the tilt rotator, an operation of aligning a second reference direction with a predetermined plane without changing a first reference direction of the work tool can be simplified.
Number | Date | Country | Kind |
---|---|---|---|
2021-161174 | Sep 2021 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP22/36525 | 9/29/2022 | WO |