IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社小松製作所の特許一覧

<>
  • 特開-作業機械および作業機械の制御方法 図1
  • 特開-作業機械および作業機械の制御方法 図2
  • 特開-作業機械および作業機械の制御方法 図3
  • 特開-作業機械および作業機械の制御方法 図4
  • 特開-作業機械および作業機械の制御方法 図5
  • 特開-作業機械および作業機械の制御方法 図6
  • 特開-作業機械および作業機械の制御方法 図7
  • 特開-作業機械および作業機械の制御方法 図8
  • 特開-作業機械および作業機械の制御方法 図9
  • 特開-作業機械および作業機械の制御方法 図10
  • 特開-作業機械および作業機械の制御方法 図11
  • 特開-作業機械および作業機械の制御方法 図12
  • 特開-作業機械および作業機械の制御方法 図13
  • 特開-作業機械および作業機械の制御方法 図14
  • 特開-作業機械および作業機械の制御方法 図15
  • 特開-作業機械および作業機械の制御方法 図16
  • 特開-作業機械および作業機械の制御方法 図17
  • 特開-作業機械および作業機械の制御方法 図18
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023150704
(43)【公開日】2023-10-16
(54)【発明の名称】作業機械および作業機械の制御方法
(51)【国際特許分類】
   E02F 3/43 20060101AFI20231005BHJP
【FI】
E02F3/43 F
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022059934
(22)【出願日】2022-03-31
(71)【出願人】
【識別番号】000001236
【氏名又は名称】株式会社小松製作所
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】小山 幹
(72)【発明者】
【氏名】新田目 啓敬
【テーマコード(参考)】
2D003
【Fターム(参考)】
2D003AA01
2D003AC08
2D003BA03
2D003BB07
2D003BB10
2D003CA02
2D003DA04
2D003DB03
2D003DC07
(57)【要約】
【課題】指定された土量を自動で正確に掬うことを可能とする作業機械を提供する。
【解決手段】作業機械は、走行可能な車体と、バケットにて掘削作業を行う作業機と、コントローラとを備える。コントローラは、車体および作業機の動作に関する機械データを取得し、機械データに基づいて、掘削作業中の作業機の目標姿勢を算出する第1の算出手段と、目標掘削土量の掘削に必要なアクセル開度を算出する第2の算出手段とを有する。コントローラは、作業機の姿勢が目標姿勢となるように作業機の動作を制御するとともにアクセル開度に基づき車体の走行を制御する。
【選択図】図7
【特許請求の範囲】
【請求項1】
走行可能な車体と、バケットを含み、かつ前記バケットにて掘削作業を行う作業機と、コントローラとを備え、
前記コントローラは、
前記車体および前記作業機の動作に関する機械データを取得し、前記機械データに基づいて、掘削作業中の前記作業機の目標姿勢を算出する第1の算出手段と、
目標掘削土量の掘削に必要なアクセル開度を算出する第2の算出手段とを有し、
前記作業機の姿勢が前記目標姿勢となるように前記作業機の動作を制御するとともに前記アクセル開度に基づき前記車体の走行を制御する、作業機械。
【請求項2】
前記作業機は、ブームと、前記ブームを動作させるブームシリンダとを含み、
前記第2の算出手段は、
前記目標掘削土量に基づき、前記ブームシリンダに加える目標ブームシリンダ圧と、前記作業機械の目標牽引力とを算出し、
前記目標ブームシリンダ圧と、前記目標牽引力とに基づき、前記アクセル開度を算出する、請求項1に記載の作業機械。
【請求項3】
前記バケットは、前記ブームに接続され、
前記作業機械は、前記バケットに積み込んだ掘削対象物の重量を検出する検出手段をさらに備え、
前記コントローラは、前記目標掘削土量と、検出された前記重量との差に基づき、前記目標掘削土量を補正する補正手段をさらに有し、
前記第2の算出手段は、補正後の前記目標掘削土量に基づき前記アクセル開度を算出する、請求項2に記載の作業機械。
【請求項4】
前記車体は、エンジンをさらに含み、
前記機械データは、前記ブームシリンダの圧力と、前記作業機械の車速と、前記エンジンの回転数と、前記作業機械の牽引力とである、請求項2または3に記載の作業機械。
【請求項5】
前記作業機は、前記ブームを回動自在に支持するベルクランクをさらに有し、
前記コントローラは、アクセル操作が行われていない場合、または、前記ブームに対する前記ベルクランクの角度が最大となった場合、前記作業機の動作の制御と、前記アクセル開度に基づく前記車体の動作の制御とを終了する、請求項2から4のいずれか1項に記載の作業機械。
【請求項6】
積込対象に積み込む掘削対象物の総重量の入力を受け付ける入力装置をさらに備え、
前記コントローラは、前記総重量がバケット容量よりも多い場合、前記総重量を前記バケット容量以下の複数の重量に分割し、
前記第2の算出手段は、分割によって得られた前記重量を前記目標掘削土量として、前記アクセル開度を算出する、請求項1から5のいずれか1項に記載の作業機械。
【請求項7】
前記コントローラは、前記総重量を均等に分割する、請求項6に記載の作業機械。
【請求項8】
前記第1の算出手段は、前記機械データを入力として受け付け、かつ前記目標姿勢を出力する学習済みモデルを含み、
前記学習済みモデルは、前記目標姿勢として、前記バケットにてバケット容量分の掘削対象物を掬える姿勢を出力するように学習されている、請求項1から7のいずれか1項に記載の作業機械。
【請求項9】
走行可能な車体とバケットを有する作業機とを備えた作業機械の制御方法であって、
前記車体および前記作業機の動作に関する機械データを取得し、前記機械データに基づいて、掘削作業中の前記作業機の目標姿勢を算出するステップと、
目標掘削土量の掘削に必要なアクセル開度を算出するステップと、
前記作業機の姿勢が前記目標姿勢となるように前記作業機の動作を制御するとともに前記アクセル開度に基づき前記車体の走行を制御するステップとを備える、作業機械の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、作業機械および作業機械の制御方法に関する。
【背景技術】
【0002】
従来、作業機械のオペレータが所望とする土量を作業機で掘削するには、オペレータの経験および技能を要する。このため、近年、学習済みモデルを用いて作業機の姿勢を制御する作業機械が開発されている。
【0003】
たとえば、特開2021-143555号公報(特許文献1)には、このような作業機械として、作業機による作業量の目標値と、作業機による作業開始からの経過時間と、作業機が取り付けられた車体および作業機の動作に関する機械データとを取得し、学習済み姿勢推定モデルを用いて目標値、経過時間および機械データから目標姿勢を推定した推定目標姿勢を出力するコンピュータを搭載したホイールローダが開示されている。
【0004】
また、近年、電子制御を活用したHMT(Hydraulic Mechanical Transmission)方式のホイールローダ(非特許文献1)が開発されている。当該電子制御を活用したHMTホイールローダは、トルクコンバータと機械式トランスミッションとを備えた方式のホイールローダの作業効率の高さと、HST(Hydrostatic transmission)方式のホイールローダが有する操作性の高さとの両立を実現している。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2021-143555号公報
【非特許文献】
【0006】
【非特許文献1】村本 卓也 外2名 “電子制御を活用したHMT(Hydraulic Mechanical Transmission)ホイールローダの開発”、[online]、令和2年度 建設施工と建設機械シンポジウム 論文集・梗概集、[令和4年2月7日検索]、<URL:https://jcmanet.or.jp/bunken/symposium/2020/ronbun15.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0007】
指定された土量を作業機によって自動で従来よりもさらに正確に掬うことが求められている。本開示は、指定された土量を自動で正確に掬うことが可能な作業機械および作業機械の制御方法を提供することにある。
【課題を解決するための手段】
【0008】
本開示のある局面に従うと、作業機械は、走行可能な車体と、バケットを含み、かつバケットにて掘削作業を行う作業機と、コントローラとを備える。コントローラは、車体および作業機の動作に関する機械データを取得し、機械データに基づいて、掘削作業中の作業機の目標姿勢を算出する第1の算出手段と、目標掘削土量の掘削に必要なアクセル開度を算出する第2の算出手段とを有する。コントローラは、作業機の姿勢が目標姿勢となるように作業機の動作を制御するとともにアクセル開度に基づき車体の走行を制御する。
【0009】
本開示の他の局面に従うと、走行可能な車体とバケットを有する作業機とを備えた作業機械の制御方法は、車体および作業機の動作に関する機械データを取得し、機械データに基づいて、掘削作業中の作業機の目標姿勢を算出するステップと、目標掘削土量の掘削に必要なアクセル開度を算出するステップと、作業機の姿勢が目標姿勢となるように作業機の動作を制御するとともにアクセル開度に基づき車体の走行を制御するステップとを備える。
【発明の効果】
【0010】
本開示によれば、指定された土量を自動で正確に掬うことが可能となる。
【図面の簡単な説明】
【0011】
図1】実施形態に基づく作業機械の一例としてのホイールローダの側面図である。
図2】実施形態に基づくホイールローダの構成を示す概略ブロック図である。
図3】作業機と走行との独立制御の概念を説明するための図である。
図4】ホイールローダによる掘削作業を説明する図である。
図5】ホイールローダで実行される処理の流れの概要を説明するためのフロー図である。
図6】ホイールローダで実行される処理の流れの変形例を説明するためのフロー図である。
図7】コントローラで実行される演算を説明するための図である。
図8】算出部によって実行される処理を模式化した図である。
図9】算出されたアクセル開度が大きい場合における掘削作業を説明するための図である。
図10】算出されたアクセル開度が図9のアクセル開度よりも小さい場合における掘削作業を説明するための図である。
図11】作業機操作とアクセル操作との自動制御による掘削精度を説明するための図である。
図12】ダンプトラックへの積込土量の総量を18tonとした場合において、作業機操作とアクセル操作との自動制御によって掘削したときと、マニュアル操作で掘削したときとにおける、10回分のダンプトラックへの積込土量と積込精度とを示した図である。
図13図12に示したデータの平均値と、サイクルタイムと、燃料消費量とを示した図である。
図14】作業機操作とアクセル操作との自動制御による燃費をさらに説明するための図である。
図15】算出部の機能的構成を説明するための機能ブロック図である。
図16】補正式の生成の流れを説明するためのフロー図である。
図17】補正式を生成する際に用いる目標掘削土量とペイロードメータによる計測値との関係を説明するための図である。
図18】ダンプトラックに積み込む土砂の総量の入力から、補正部による補正までの一連の処理の流れを説明するためのフロー図である。
【発明を実施するための形態】
【0012】
以下、実施の形態について図に基づいて説明する。以下の説明では、同一部品には、同一の符号を付している。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0013】
<A.全体構成>
実施の形態においては、作業機械の一例として、自走式の作業機械の一種であるホイールローダ1について説明する。図1は、実施形態に基づく作業機械の一例としてのホイールローダ1の側面図である。
【0014】
図1に示されるように、ホイールローダ1は、車体フレーム2と、作業機3と、走行装置4と、キャブ5とを備えている。車体フレーム2、キャブ5などからホイールローダ1の車体20が構成されている。車体20には、作業機3および走行装置4が取り付けられている。
【0015】
走行装置4は、車体20を走行させるものであり、走行輪4a、4bを含んでいる。ホイールローダ1は、走行輪4a、4bが回転駆動されることにより自走可能であり、作業機3を用いて所望の作業を行うことができる。
【0016】
車体フレーム2は、前フレーム2aと後フレーム2bとを含んでいる。前フレーム2aと後フレーム2bとは、互いに左右方向に揺動可能に取り付けられている。前フレーム2aと後フレーム2bとに亘って、一対のステアリングシリンダ11が取り付けられている。ステアリングシリンダ11は、油圧シリンダである。ステアリングシリンダ11がステアリングポンプ(図示せず)からの作動油によって伸縮することによって、ホイールローダ1の進行方向が左右に変更される。
【0017】
本明細書中において、ホイールローダ1が直進走行する方向を、ホイールローダ1の前後方向という。ホイールローダ1の前後方向において、車体フレーム2に対して作業機3が配置されている側を前方向とし、前方向と反対側を後方向とする。ホイールローダ1の左右方向とは、平面視において前後方向と直交する方向である。前方向を見て左右方向の右側、左側が、それぞれ右方向、左方向である。ホイールローダ1の上下方向とは、前後方向および左右方向によって定められる平面に直交する方向である。上下方向において地面のある側が下側、空のある側が上側である。
【0018】
前フレーム2aには、作業機3および一対の走行輪(前輪)4aが取り付けられている。作業機3は、車体20の前方に配設されている。作業機3は、作業機ポンプ13(図2参照)からの作動油によって駆動される。作業機ポンプ13は、エンジン21により駆動され、吐出する作動油によって作業機3を作動させる油圧ポンプである。作業機3は、ブーム14と、作業具であるバケット6とを含んでいる。バケット6は、作業機3の先端に配置されている。バケット6は、ブーム14の先端に着脱可能に装着されたアタッチメントの一例である。作業の種類に応じて、アタッチメントが、グラップル、フォーク、またはプラウなどに付け替えられる。
【0019】
ブーム14の基端部は、ブームピン9によって前フレーム2aに回転自在に取付けられている。バケット6は、ブーム14の先端に位置するバケットピン17によって、回転自在にブーム14に取付けられている。
【0020】
前フレーム2aとブーム14とは、一対のブームシリンダ16により連結されている。ブームシリンダ16は、油圧シリンダである。ブームシリンダ16の基端は、前フレーム2aに取り付けられている。ブームシリンダ16の先端は、ブーム14に取り付けられている。ブームシリンダ16が作業機ポンプ13(図2参照)からの作動油によって伸縮することによって、ブーム14が昇降する。ブームシリンダ16は、ブームピン9を中心としてブーム14を上下に回転駆動する。
【0021】
作業機3は、ベルクランク18と、バケットシリンダ19と、リンク15とをさらに含んでいる。ベルクランク18は、ブーム14のほぼ中央に位置する支持ピン18aによって、ブーム14に回転自在に支持されている。バケットシリンダ19は、ベルクランク18と前フレーム2aとを連結している。リンク15は、ベルクランク18の先端部に設けられた連結ピン18cに連結されている。リンク15は、ベルクランク18とバケット6とを連結している。
【0022】
バケットシリンダ19は、油圧シリンダであり作業具シリンダである。バケットシリンダ19の基端は、前フレーム2aに取り付けられている。バケットシリンダ19の先端は、ベルクランク18の基端部に設けられた連結ピン18bに取り付けられている。バケットシリンダ19が作業機ポンプ13(図2参照)からの作動油によって伸縮することによって、バケット6が上下に回動する。バケットシリンダ19は、バケットピン17を中心としてバケット6を回転駆動する。
【0023】
後フレーム2bには、キャブ5および一対の走行輪(後輪)4bが取り付けられている。キャブ5は、ブーム14の後方に配置されている。キャブ5は、車体フレーム2上に載置されている。キャブ5内には、ホイールローダ1のオペレータが着座するシート、および後述する操作装置8などが配置されている。
【0024】
<B.システム構成>
図2は、実施形態に基づくホイールローダ1の構成を示す概略ブロック図である。図2に示されるように、ホイールローダ1は、駆動源としてのエンジン21、走行装置4、作業機ポンプ13、操作装置8、コントローラ10、ディスプレイ50などを備えている。
【0025】
エンジン21は、たとえばディーゼルエンジンである。シリンダ内に噴射する燃料量を調整することにより、エンジン21の出力が制御される。この調整は、電子ガバナ(図示せず)がコントローラ10によって制御されることで行われる。
【0026】
エンジン回転数は、エンジン回転数センサ91によって検出される。エンジン回転数センサ91の検出信号は、コントローラ10に入力される。
【0027】
走行装置4は、エンジン21からの駆動力によりホイールローダ1を走行させる装置である。走行装置4は、トランスミッション23、ならびに上述した前輪4aおよび後輪4bなどを有している。
【0028】
動力伝達装置であるトランスミッション23は、エンジン21からの駆動力を前輪4aおよび後輪4bに伝達する装置である。ホイールローダ1においては、前フレーム2aに取り付けられた前輪4aと、後フレーム2bに取り付けられた後輪4bとの両方が、駆動力を受けてホイールローダ1を走行させる駆動輪を構成している。トランスミッション23は、入力軸27の回転を変速して出力軸28に出力する。
【0029】
出力軸28には、出力回転数センサ92が設けられている。出力回転数センサ92は、出力軸28の回転数を検出する。出力回転数センサ92からの検出信号は、コントローラ10に入力される。コントローラ10は、出力回転数センサ92の検出信号に基づいて車速を算出する。
【0030】
トランスミッション23から出力された駆動力は、車軸32などを介して車輪4a,4bに伝達される。これにより、ホイールローダ1が走行する。エンジン21からの駆動力の一部が走行装置4に伝達されて、ホイールローダ1が走行する。
【0031】
エンジン21の駆動力の一部は、動力取出部33を介して、作業機ポンプ13に伝達される。
【0032】
作業機ポンプ13およびステアリングポンプは、エンジン21からの駆動力によって駆動される油圧ポンプである。作業機ポンプ13から吐出された作動油は、作業機バルブ34を介してブームシリンダ16およびバケットシリンダ19に供給される。作業機3は、エンジン21からの駆動力の一部によって駆動される。
【0033】
第1油圧検出器95は、ブームシリンダ16に取り付けられている。第1油圧検出器95は、ブームシリンダ16の油室内の作動油の圧力を検出する。第1油圧検出器95の検出信号は、コントローラ10に入力される。
【0034】
第2油圧検出器96は、バケットシリンダ19に取り付けられている。第2油圧検出器96は、バケットシリンダ19の油室内の作動油の圧力を検出する。第2油圧検出器96の検出信号は、コントローラ10に入力される。
【0035】
第1角度検出器29は、たとえば、ブームピン9に取り付けられたポテンショメータである。第1角度検出器29は、車体20に対するブーム14の持ち上がり角度を表すブーム角度を検出する。第1角度検出器29は、ブーム角度を示す検出信号をコントローラ10に出力する。
【0036】
具体的には、図1に示すように、ブーム基準線Pは、ブームピン9の中心とバケットピン17の中心とを通る直線である。水平線Hは、ホイールローダ1の前後方向に平行である。水平線Hは、ブームピン9の中心から前方に延びる。ブーム角度θ1は、ブームピン9の中心から前方に延びる水平線Hと、ブーム基準線Pとの成す角度である。ブーム基準線Pが水平である場合をブーム角度θ1=0°と定義する。ブーム基準線Pが水平線Hよりも上方にある場合にブーム角度θ1を正とする。ブーム基準線Pが水平線Hよりも下方にある場合にブーム角度θ1を負とする。
【0037】
なお第1角度検出器29は、ブームシリンダ16に配置されたストロークセンサであってもよい。
【0038】
第2角度検出器48は、たとえば、支持ピン18aに取り付けられたポテンショメータである。第2角度検出器48は、ブーム14に対するベルクランク18の角度を表すベルクランク角度を検出する。第2角度検出器48は、ベルクランク角度を示す検出信号をコントローラ10に出力する。
【0039】
具体的には、図1に示すように、ベルクランク基準線Qは、支持ピン18aの中心と連結ピン18bの中心とを通る直線である。ベルクランク角度θ2は、ブーム基準線Pとベルクランク基準線Qとの成す角度である。支持ピン18bの中心(以下、「Ua」とも称する)と、ブーム基準線Pとベルクランク基準線Qとの交点(以下、「Ub」とも称する)と、ブームピン9の中心(以下、「Uc」とも称する)とを頂点とする三角形UaUbUc(図示せず)において、ベルクランク角度θ2は、∠UaUbUcである。
【0040】
第2角度検出器48は、ブーム14に対するバケット6の角度(バケット角度θ3)を検出してもよい。バケット角度θ3は、バケットピン17の中心とバケット6の刃先6aとを通る直線Rと、ブーム基準線Pとの成す角度である。バケット6の刃先6aの位置(以下、「Ud」とも称する)と、ブーム基準線Pと直線Rとの交点(「Uf」)と、基準線P上に位置し、かつ上記交点に関してブームピン9の中心(Uc)の反対側に位置する点(以下、「Ue」とも称する)とを頂点とする三角形UdUfUe(図示せず)において、バケット角度θ3は、∠UdUfUeである。
【0041】
第2角度検出器48は、バケットピン17に取り付けられたポテンショメータまたは近接スイッチであってもよい。または第2角度検出器48は、バケットシリンダ19に配置されたストロークセンサであってもよい。
【0042】
操作装置8は、オペレータによって操作される。操作装置8は、オペレータがホイールローダ1を動作させるために操作する、複数種類の操作部材を備えている。具体的には操作装置8は、アクセル操作部材81aと、ブーム操作部材83aと、バケット操作部材84aとを備えている。
【0043】
アクセル操作部材81aは、たとえばアクセルペダルである。アクセル操作部材81aの操作量(アクセルペダルの場合、踏み込み量)を増大すると、車体20は加速する。アクセル操作部材81aの操作量を減少すると、車体20は減速する。アクセル操作検出部81bは、アクセル操作部材81aの操作量を検出する。アクセル操作部材81aの操作量は、「アクセル開度」または「アクセル操作量」とも称される。アクセル操作検出部81bは、アクセル開度(以下、「アクセル開度V1」とも称する)を検出する。アクセル操作検出部81bは、検出信号をコントローラ10へ出力する。コントローラ10は、アクセル操作検出部81bからの検出信号に基づいてエンジン21の出力と、トランスミッション23の減速比とを制御する。
【0044】
アクセル操作検出部81bは、たとえば、アクセル操作に基づく電圧値(操作信号)を読み取るセンサである。アクセル操作検出部81bは、ホイールローダ1に予め搭載されている機器であってもよい。あるいは、アクセル操作検出部81bは、車体20に後付けされる機器であってもよい。アクセル操作検出部81bは、「アクセル開度センサ」とも称される。
【0045】
ブーム操作部材83aは、ブーム14を動作させるために操作される。ブーム操作部材83aは、たとえば操作レバーである。ブーム操作検出部83bは、ブーム操作部材83aの位置を検出する。ブーム操作検出部83bは、検出信号をコントローラ10に出力する。コントローラ10は、ブーム操作検出部83bからの検出信号に基づいて、作業機バルブ34を制御する。ブームシリンダ16が伸縮して、ブーム14が動作する。
【0046】
ブーム操作検出部83bは、たとえば、レバー操作に基づく電圧値(操作信号)を読み取るセンサである。ブーム操作検出部83bは、ホイールローダ1に予め搭載されている機器であってもよい。あるいは、ブーム操作検出部83bは、車体20に後付けされる機器であってもよい。
【0047】
バケット操作部材84aは、バケット6を動作させるために操作される。バケット操作部材84aは、たとえば操作レバーである。バケット操作検出部84bは、バケット操作部材84aの位置を検出する。バケット操作検出部84bは、検出信号をコントローラ10に出力する。コントローラ10は、バケット操作検出部84bからの検出信号に基づいて、作業機バルブ34を制御する。バケットシリンダ19が伸縮して、バケット6が動作する。
【0048】
バケット操作検出部84bは、たとえば、レバー操作に基づく電圧値(操作信号)を読み取るセンサである。バケット操作検出部84bは、ホイールローダ1に予め搭載されている機器であってもよい。あるいは、バケット操作検出部84bは、車体20に後付けされる機器であってもよい。
【0049】
ディスプレイ50は、コントローラ10から指令信号の入力を受けて、各種情報を表示する。ディスプレイ50に表示される各種情報は、たとえば、ホイールローダ1により実行される作業に関する情報、燃料残量、冷却水温度および作動油温度などの車体情報、ホイールローダ1の周辺を撮像した周辺画像、ペイロードメータ99(図15)による計測値などであってもよい。
【0050】
操作キー51は、入力装置である。操作キー51は、オペレータが各種の情報をコントローラ10に入力するためのデバイスである。操作キーをソフトウェアキーとして構成してもよい。具体的には、ホイールローダ1は、入力装置として、ディスプレイ50にタッチパネルが重畳されたタッチスクリーンを備えていてもよい。この場合、オペレータがディスプレイ50の一部に触れることにより生成される信号が、タッチスクリーンからコントローラ10に出力される。操作キー51は、車内に搭載されていなくてもよい。操作キー51は、外部端末であってもよい。
【0051】
コントローラ10は、算出部150と、算出部280とを含む。算出部150は、車体20および作業機3の動作に関する機械データを取得し、機械データに基づいて、掘削作業中の作業機3の目標姿勢を算出する。機械データは、ブームシリンダ16の圧力と、ホイールローダ1の車速と、エンジン21の回転数と、ホイールローダ1の牽引力とである。算出部150は、取得部170と、学習済みモデル180とを有する。取得部170は、車体20および作業機3の動作に関する機械データを取得する。学習済みモデル180は、取得部170によって取得された機械データを入力として受け付ける。学習済みモデル180の機能と、算出部280の機能とについては、後述する。
【0052】
コントローラ10は、一般的にCPU(Central Processing Unit)により各種のプログラムを読み込むことにより実現される。コントローラ10は、メモリ10Mを有している。メモリ10Mは、ワークメモリとして機能するとともに、ホイールローダの機能を実現するための各種のプログラムを格納する。メモリ10Mには、少なくともホイールローダ1に装着されているバケット6のバケット容量と学習済みモデル180とが記憶されている。
【0053】
コントローラ10は、アクセル操作部材81a、ブーム操作部材83aおよびバケット操作部材84aなどのオペレータ操作と、作業機3の負荷および車速等の車両状態とを認識し、トランスミッション23内の油圧モータ232,233とエンジン21とを電子制御する。コントローラ10は、エンジン21への燃料供給量に基づいて、エンジン21の単位稼働時間あたりの燃料消費量、ホイールローダ1の単位走行距離あたりの燃料消費量、および、バケット6内の単位積載重量あたりの燃料消費量を、算出可能である。
【0054】
コントローラ10は、出力回転数センサ92の検出信号に基づいて、ホイールローダ1の車速を算出する。コントローラ10は、ホイールローダ1の車速と牽引力との関係を規定するマップをメモリ10Mから読み出し、当該マップに基づいて、牽引力を算出する。コントローラ10は、エンジン回転数センサ91から、エンジン回転数の検出信号の入力を受ける。コントローラ10は、エンジン回転数とエンジントルクとの関係を規定するマップをメモリから読み出し、当該マップに基づいて、エンジントルクを算出する。
【0055】
牽引力およびエンジントルクは、マップの参照とは異なる形態で算出されてもよい。たとえば、テーブルの参照または関数による演算などによって、牽引力およびエンジントルクを算出してもよい。コントローラ10は、ブーム14およびバケット6の動作を自動制御する。この自動制御の詳細については後述する。
【0056】
次に、トランスミッション23について、より詳しく説明する。トランスミッション23は、本例では、電子制御を活用したHMT(Hydraulic Mechanical Transmission)である。トランスミッション23は、遊星歯車231と、油圧モータ232,233とを有する。
【0057】
トランスミッション23は、遊星歯車231と2つの油圧モータ232,233との組み合わせにより無段変速を行う。遊星歯車231は、リングギアと、キャリアと、サンギアと、プラネタリギアとを含む。動力は、リングギアとキャリアとサンギアとから外部に伝達される。トランスミッション23は、キャリアにエンジン21、リングギアに油圧モータ233、サンギアに油圧モータ232と車軸32とが接続される。遊星歯車231と各部21,32,232,233との間は減速されて接続されている。
【0058】
トランスミッション23は、走行に必要な目標エンジン回転数およびオペレータ操作による車速要求を演算し、2つの油圧モータ232,233を電子制御することによりトランスミッションとしての減速比を作り上げる。
【0059】
トランスミッション23は、無段変速機能の特性を生かし、エンジン21の回転数制御とアクセル操作部材81aの操作とを切り離している。これにより、作業機3の速度は作業機レバー(ブーム操作部材83a、バケット操作部材84a)のみ、車速はアクセル操作部材81aのみで操作する制御(作業機と走行との独立制御)を実現している。
【0060】
図3は、作業機と走行との独立制御の概念を説明するための図である。図3に示されているように、コントローラ10は、作業機レバー(ブーム操作部材83a、バケット操作部材84a)と、アクセル操作部材81aの情報を取得する。作業機3と走行との独立制御では、これらの情報を、それぞれ、作業機速度要求、車速要求と認識する(処理(i),(ii))。
【0061】
オペレータが作業機3を素早く動かす目的で作業機レバーを操作した際、コントローラ10は、必要な作業機速度を出すためのポンプ流量を演算し、搭載する作業機ポンプ13のサイズに基づき目標とするエンジン回転数を算出する(処理(iii))。エンジン21は、当該目標回転数を元に、アクセルペダル操作とは関係なくコントローラ10によって制御される。すなわち、作業機レバー操作によってエンジン回転数が自動で制御される。
【0062】
一方で、コントローラ10はアクセル操作部材81aにより認識した車速要求を実現するため、トランスミッション23に必要とされる減速比を演算する。当該減速比は、作業機レバー操作により決まるエンジン回転数とアクセルペダル操作により決まる車速要求の比を演算することで得られる。トランスミッション23は、目標の減速比を実現するため2つの油圧モータ232,233を電子制御することで、オペレータの車速要求での走行を可能とする。
【0063】
このような、ホイールローダ1では、作業機と走行との独立制御によって、作業機速度と車速とを独立して操作可能となり、シンプルで直感的な操作性が実現できる。なお、電子制御を活用したHMTの構成については既に知られているため、ここでは、さらに詳細には説明しない。
【0064】
<C.掘削作業>
ホイールローダ1は、土砂などの掘削対象物を掬い取る掘削作業を実行する。図4は、実施形態に基づくホイールローダ1による掘削作業を説明する図である。
【0065】
図4に示されるように、ホイールローダ1は、バケット6の刃先6aを掘削対象物100に食い込ませた後に、図4中の曲線矢印のように、バケット軌跡Lに沿ってバケット6を上昇させる。これにより、バケット6に掘削対象物100を掬い取る掘削作業が実行される。
【0066】
ホイールローダ1は、掘削対象物100をバケット6に掬い取る掘削動作と、バケット6内の荷(掘削対象物100)をダンプトラックなどの積込対象(運搬機械)に積み込む積込動作とを実行する。
【0067】
より具体的には、ホイールローダ1は、次のような複数の作業工程を順次に行うことを繰り返して、掘削対象物100を掘削し、積込対象に掘削対象物100を積み込む。以下では、積込対象としてダンプトラックを例に挙げて説明する。
【0068】
第一の工程は、掘削対象物100に向かって前進する空荷前進工程である。第二の工程は、バケット6の刃先6aを掘削対象物100に食い込ませ、バケット6の中に所定量の掘削対象物100が入るまでホイールローダ1を前進させる掘削工程(突込み)である。第三の工程は、ブームシリンダ16を操作してバケット6を上昇させるとともにバケットシリンダ19を操作してバケット6をチルトバックさせる掘削工程(掬込み)である。第四の工程は、バケット6に掘削対象物100が掬い込まれた後にホイールローダ1を後進させる積荷後進工程である。
【0069】
第五の工程は、バケット6を上昇させた状態を維持しながら、またはバケット6を上昇させながら、ホイールローダ1を前進させてダンプトラックに接近させる、積荷前進工程である。第六の工程は、所定位置でバケット6をダンプして掘削対象物100をダンプトラック荷台上に積み込む排土工程である。第七の工程は、ホイールローダ1を後進させながらブーム14を下げ、バケット6を掘削姿勢に戻す、後進・ブーム下げ工程である。以上が、掘削積込作業の1サイクルをなす典型的な作業工程である。
【0070】
ホイールローダ1の現在の作業工程が掘削工程であり作業機3が掘削作業中であるか、現在の作業工程が掘削工程ではなく作業機が掘削作業中でないかは、たとえば、ホイールローダ1を前後進させるオペレータの操作に基づく操作信号、作業機3に対するオペレータの操作に基づく操作信号、および作業機3のシリンダの現在の油圧についての判定条件の組み合わせを用いることにより、判定することができる。
【0071】
<D.コントローラによる制御>
(d1:制御構造)
図5は、ホイールローダ1で実行される処理の流れの概要を説明するためのフロー図である。図5に示されているように、ステップS1において、オペレータの操作に基づき、コントローラ10はエンジン21を始動する。ステップS2において、コントローラ10は、作業機3のオペレータ操作と、アクセル操作部材81aのオペレータ操作との操作を受け付ける。コントローラ10は、作業機操作と走行とに関し、オペレータの操作に基づくマニュアル制御を実行する。
【0072】
ステップS3において、コントローラ10は、ダンプトラックに積み込む土砂の総量の入力を受け付けたか否かを判断する。当該入力は、入力装置である操作キー51を介して行われる。土砂の総量の入力を受け付けたと判断された場合(ステップS3においてYES)、コントローラ10は、ステップS4において、目標掘削土量を算出する。コントローラ10は、目標掘削土量として、1回の掘削当たりの土量を算出する。
【0073】
たとえば、入力された土砂の総量が30tonであり、かつバケット6のバケット容量(最大容量)が7tonである場合、コントローラ10は、一例として、目標掘削土量を6tonとする。この場合、ホイールローダ1は、5回の掘削作業を行ない、合計30ton(=6ton×5回)の土砂をダンプトラックに積み込む。
【0074】
なお、この例では、目標掘削土量を5回とも同じ値(均等)としているが、必ずしも、これに限定されない。たとえば、コントローラ10は、最初の4回の目標掘削土量をバケット容量である7tonとし、最後の5回目の目標掘削土量を残量の2tonとしてもよい。
【0075】
ダンプトラックに積み込む土砂の総量がバケット容量以下である場合、コントローラ10は、目標掘削土量を土砂の総量と同じにしてもよい。あるいは、コントローラ10は、目標掘削土量を土砂の総量を分割した量としてもよい。
【0076】
土砂の総量の入力を受け付けていないと判断された場合(ステップS3においてNO)、コントローラ10は、処理をステップS11に進める。コントローラ10は、ステップS11において、エンジン停止操作を受け付けたか否かを判断する。コントローラ10は、エンジン停止操作を受け付けたと判断した場合(ステップS11においてYES)、エンジン21を停止させ、一連の処理を終了する。コントローラ10は、エンジン停止操作を受け付けていないと判断した場合(ステップS11においてNO)、処理をステップS2に進める。
【0077】
ステップS4の後、コントローラ10は、ステップS5において、アクセル操作部材81aの操作が行われたか否かを判断する。当該判断は、コントローラ10は、アクセル操作検出部81bによって検出されたアクセル開度V1に基づき行う。
【0078】
アクセル操作部材81aの操作が行われたと判断された場合(ステップS5においてYES)、コントローラ10は、ステップS6において、掘削作業が開始されたか否かを判断する。コントローラ10は、ブーム角度と、バケット6の刃先角度と、ブームボトム圧と、車速と、ブーム14の操作レバーのストロークとに基づき、掘削作業が開始されたか否かを判断する。アクセル操作部材81aの操作が行われていないと判断された場合(ステップS5においてNO)、コントローラ10は、処理をステップS2に進める。
【0079】
掘削作業が開始されたと判断された場合(ステップS6においてYES)、ステップS7において、コントローラ10は、作業機操作と、アクセル操作とを自動制御する。当該自動制御においては、コントローラ10が、作業機3の姿勢を自動制御するとともに、アクセル操作部材81aの操作量(すなわち、検出されたアクセル開度V1)にかかわらず、ホイールローダ1の走行(車速)を自動で制御する。なお、ステップS7から後述するステップS10の自動制御の間は、オペレータによるアクセル操作部材81aの操作(アクセル操作)が行われている。アクセル操作が行われている間、コントローラ10は、作業機操作と、アクセル操作とを自動制御する。ステップS7の処理の詳細については、後述する。
【0080】
ステップS8において、コントローラ10は、アクセル操作部材81aの操作が行われているかを判断する。コントローラ10は、アクセル操作部材81aが踏み続けられているかを判断する。コントローラ10は、アクセル操作検出部81bによって検出されたアクセル開度V1から、アクセル操作が行われているか否かを判断する。アクセル操作部材81aの操作が行われていると判断された場合(ステップS8においてYES)、コントローラ10は、ステップS9において、ベルクランク角度θ2が最大となったか否かを判断する。ベルクランク角度θ2が最大となった状態は、バケット6に目標掘削土量分の土砂が掬い込まれ、掘削工程が終了したことを示す。
【0081】
オペレータによるアクセル操作部材81aの操作が行われていないと判断された場合(ステップS8においてNO)、コントローラ10は、ステップS10において、作業機操作と、アクセル操作との自動制御を終了する。オペレータがアクセル操作部材81aの操作を終了すると、コントローラ10は、自動制御を終了し、エンジン21を停止する操作を受け付けていないことを条件に、マニュアル制御(ステップS2)に移行する。
【0082】
ベルクランク角度θ2が最大となったと判断された場合(ステップS9においてYES)、コントローラ10は、処理をステップS10に進める。ベルクランク角度θ2が最大となっていないと判断された場合(ステップS9においてNO)、コントローラ10は、処理をステップS7に進める。
【0083】
このように、コントローラ10は、アクセル操作検出部81bによって検出されたアクセル開度V1からアクセル操作が行われていないと判断される場合、または、ブーム14に対するベルクランク18の角度が最大となった場合、学習済みモデル180を用いた作業機3の動作の制御と、算出されたアクセル開度に基づく車体20の動作の制御とを終了する。アクセル操作が行われていないと判断される場合とは、アクセル開度V1が所定値以下となった場合を意味する。
【0084】
ホイールローダ1で実行される処理の流れは、図5に示したものに限定されない。図6は、ホイールローダ1で実行される処理の流れの変形例を説明するためのフロー図である。図6に示されるように、コントローラ10は、ステップS7の後に、ステップS8Aとして、図5のステップS9と同じ処理を実行する。コントローラ10は、ステップS8Aの後に、ステップS9Aとして、図5のステップS8と同じ処理を実行する。
【0085】
具体的には、コントローラ10は、ステップS8Aにて肯定的な判断がなされた場合(ステップS8AでYESの場合)、処理をステップS10に進める。コントローラ10は、ステップS8Aにて否定的な判断がなされた場合(ステップS8AでNOの場合)、処理をステップS9Aに進める。コントローラ10は、ステップS9Aにて肯定的な判断がなされた場合(ステップS9AでYESの場合)、処理をステップS7に進める。コントローラ10は、ステップS9Aにて否定的な判断がなされた場合(ステップS9AでNOの場合)、処理をステップS10に進める。
【0086】
このように、本変形例では、コントローラ10は、図5のステップS8とステップS9との順番を逆に実行する。図6に示した処理によっても、図5に示した処理と同様の効果を得られる。
【0087】
(d2:自動制御)
以下では、上述した、コントローラ10による作業機操作とアクセル操作との自動制御(図5のステップS7)について、詳しく説明する。
【0088】
図7は、コントローラ10で実行される演算を説明するための図である。図7に示されているように、コントローラ10は、学習済みモデル180と、所定のプログラムを実行する算出部280とを有する。学習済みモデル180と、当該プログラムとは、メモリ10Mに予め格納されている。
【0089】
学習済みモデル180は、ニューラルネットワークを含んでいる。ニューラルネットワークは、入力層181と、中間層(隠れ層)182と、出力層183とを含んでいる。中間層182は多層化されている。
【0090】
学習済みモデル180は、掘削作業中の作業機3の目標姿勢を求めるための人工知能である。学習済みモデル180は、取得部170によって取得された、車体20および作業機3の動作に関する機械データから目標姿勢を算出する。学習済みモデル180は、目標姿勢として、バケット6にてバケット容量分(すなわち、バケット6の最大容量)の掘削対象物100を掬える姿勢を出力するように学習(構成)されている。
【0091】
具体的には、学習済みモデル180は、ブームシリンダ圧と、車速と、エンジン回転数と、牽引力とに基づき、ブーム角度θ1の単位時間当たりの変化量Δθ1と、ベルクランク角度θ2の単位時間当たりの変化量Δθ2とを算出する。詳しくは、所定の制御周期T毎に、ブームシリンダ圧と、車速と、エンジン回転数と、牽引力とが学習済みモデル180に入力され、かつ、推定結果として、ブーム角度θ1の単位時間当たりの変化量Δθ1と、ベルクランク角度θ2の単位時間当たりの変化量Δθ2とが学習済みモデル180から出力される。
【0092】
コントローラ10は、算出された変化量Δθ1,Δθ2に基づき、作業機3の姿勢を制御する。具体的には、コントローラ10は、変化量Δθ1に基づき、ブーム14の姿勢を制御する。コントローラ10は、変化量Δθ2に基づき、バケット6の姿勢を制御する。
【0093】
学習済みモデル180は、学習用データセットを利用して生成される。学習用データセットは、複数の学習用データを含む。各学習用データは、入力データとして、ブームシリンダ圧と、車速と、エンジン回転数と、牽引力とを含み、正解データ(教師データ)として、ブーム角度θ1の単位時間当たりの変化量Δθ1と、ベルクランク角度θ2の単位時間当たりの変化量Δθ2とを含む。
【0094】
入力データを学習用のモデルに入力したときに得られる出力と、正解データとの誤差に基づき、学習用のモデルのパラメータが逐次更新される。なお、当該パラメータの更新は、学習用プログラムを用いて行われる。このような更新作業(学習)を繰り返すことにより、学習済みモデル180が生成される。詳しくは、学習済みモデル180は、同車格および同質の土砂に対するデータから作成されている。なお、学習済みモデルの生成は、ホイールローダのコントローラによって行われてもよいし、あるいは、外部のコンピュータで行われてもよい。
【0095】
算出部280は、目標掘削土量に基づき、アクセル開度(以下、「アクセル開度V2」とも称する)を算出する。算出部280は、目標掘削土量が入力されると、アクセル開度V2を出力する。詳しくは、算出部280は、目標掘削土量が指定されると、目標掘削土量の掘削に必要なアクセル開度V2を算出する。
【0096】
算出部280は、アクセル操作検出部81bによって検出されたアクセル開度V1とは別に、所定のアルゴリズムに基づき、目標掘削土量の掘削に必要なアクセル開度V2を算出する。算出部280は、アクセル操作検出部81bからのアクセル開度V1を逐次受信するとともに、目標掘削土量の掘削に必要なアクセル開度V2を別途算出する。なお、「目標掘削土量の掘削に必要なアクセル開度V2」とは、目標掘削土量の掘削を行う際に、コントローラ10がアクセル操作検出部81bから本来受け取るべきアクセル開度(オペレータが本来操作すべきアクセル操作量)を意味する。
【0097】
1つの目標掘削土量に対して、1つのアクセル開度V2(一定値)が算出される。たとえば、目標掘削土量6tonに対して数値u1(0<u1≦1)がアクセル開度V2として算出され、目標掘削土量2tonに対して数値u2(0<u2<u1)がアクセル開度V2として算出される。
【0098】
図8は、算出部280によって実行される処理を模式化した図である。図8に示されるように、算出部280は、平均ブームボトム圧算出部281と、平均牽引力算出部282と、アクセル開度算出部283とを有する。算出部280は、学習済みモデル180と同様、同車格および同質の土砂に対するデータから作成されている。
【0099】
平均ブームボトム圧算出部281は、目標掘削土量(ton)が指定(入力)されると、平均ブームボトム圧(Mpa)を算出する。具体的には、平均ブームボトム圧算出部281は、目標掘削土量(x)と平均ブームボトム圧(y)との関係を示した関数(y=ax+bx+c … (f1))を用いて、目標掘削土量から平均ブームボトム圧(以下では、「目標ブームシリンダ圧」とも称する)を算出する。平均ブームボトム圧算出部281は、算出された平均ブームボトム圧を、平均牽引力算出部282と、アクセル開度算出部283とに送る。
【0100】
なお、上記の関数f1は、ホイールローダ1と同車格の車両によって、同質の土砂を対象として得られた数万個のデータ(掘削土量(詳しくは、ペイロードメータによる計測値)、および当該掘削土量の際のブームボトム圧の平均値)をもとに、最小二乗法を用いて生成された関数である。なお、グラフの黒丸は、各データを表している。
【0101】
平均牽引力算出部282は、平均ブームボトム圧(ton)が入力されると、平均牽引力(N)を算出する。具体的には、平均牽引力算出部282は、平均ブームボトム圧(x)と平均牽引力(y)との関係を示した関数(y=a’x+b’x+c’ … (f2))を用いて、平均ブームボトム圧から平均牽引力(以下では、「目標牽引力」とも称する)を算出する。平均牽引力算出部282は、算出された平均牽引力をアクセル開度算出部283に送る。
【0102】
なお、上記の関数f2は、ホイールローダ1と同車格の車両によって、同質の土砂を対象として得られた数万個のデータ(掘削作業時のブームボトム圧の平均値と、当該掘削作業時の平均牽引力)をもとに、最小二乗法を用いて生成された関数である。なお、グラフの黒丸は、各データを表している。
【0103】
アクセル開度算出部283は、平均ブームボトム圧と平均牽引力とが入力されると、アクセル開度V2を算出する。具体的には、アクセル開度算出部283は、平均ブームボトム圧(x)と平均牽引力(y)とアクセル開度(z)の関係を示した関数(Z=Ax+By … (f3))を用いて、平均ブームボトム圧と平均牽引力とからアクセル開度V2を算出する。なお、本例では、平均ブームボトム圧と平均牽引力とを正規化している。本例では、係数A,Bは、各々、0以上かつ1以下である。
【0104】
上記の関数f3における係数A,Bは、重回帰分析に基づき決定されている。このように、アクセル開度算出部283は、1つの目的変数であるアクセル開度を、複数の説明変数である平均ブームボトム圧と平均牽引力とによって予測する。関数f1、関数f2、関数f3はメモリ10Mに記憶されている。
【0105】
アクセル開度算出部283は、算出されたアクセル開度V2を出力する。この場合、コントローラ10は、算出されたアクセル開度V2に基づき、車体20の走行を制御する。これにより、コントローラ10は、算出されたアクセル開度V2に応じた速度で走行(前進)する。
【0106】
コントローラ10が、上記のように、目標掘削土量に基づきアクセル開度V2を算出する理由は以下のとおりである。上述したように、学習済みモデル180にて、掘削作業時の作業機3の姿勢が決定される。コントローラ10は、決定された姿勢となるように作業機3を動作させる。
【0107】
ところで、学習済みモデル180は、作業機3がバケット6にてバケット容量分の掘削対象物100を掬える姿勢となるように構成されている。それゆえ、コントローラ10は、算出されたアクセル開度V2に基づき車体20の走行(車速)を制御することにより、バケット6で掬う土量を調整する。
【0108】
具体的には、コントローラ10は、算出されたアクセル開度V2に基づく車速を実現するために、トランスミッション23で必要とされる減速比を演算する。当該減速比は、作業機3の自動制御により決まるエンジン回転数と、算出されたアクセル開度V2により決まる車速要求との比を演算することで得られる。トランスミッション23が当該減速比で動作することにより、バケット6で掬う土量が調整される。ホイールローダ1では、算出されたアクセル開度V2が小さいほど、掘削対象物100を掬う量が少なくなる。
【0109】
詳しくは、アクセル開度が小さい場合、地山への貫入量も小さい。それゆえ、掘削の土工量(掘削土量)は、低土工量となる(図10参照)。アクセル開度が大きい場合、地山への貫入量も大きい。それゆえ、掘削の土工量は、高土工量となる(図9参照)。このように、アクセル開度によって掘削土量が調整可能となる。そこで、ホイールローダ1では、アクセル開度の大小にかかわらず目標姿勢を共通としつつ、アクセル開度の制御によって自在に掘削土量を調整可能としている。
【0110】
なお、上記においては、学習済みモデル180によって決定される目標姿勢は「バケット容量分の掘削対象物100を掬える姿勢」とした。しかしながら、当該目標姿勢は、一例であって、これに限定されない。たとえば、学習済みモデル180によって決定される目標姿勢を、「バケット容量の90%の掘削対象物100を掬える姿勢」、「バケット容量の50%の掘削対象物100を掬える姿勢」としてもよい。
【0111】
なお、上記においては、算出部280は、重回帰分析で得られた関数f3を用いて、目標掘削土量からスロットル開度を算出した。しかしながら、これに限定されず、算出部280を、学習済みのプログラム(たとえば、ニューラルネット)で構成してもよい。
【0112】
(d3:掘削状態)
図9は、算出されたアクセル開度V2が大きい場合(たとえば、“1”)における掘削作業を説明するための図である。図9に示されるように、ホイールローダ1は、バケット6の刃先6aを掘削対象物100に食い込ませた後に、図9中の曲線矢印のように、バケット軌跡Laに沿ってバケット6を上昇させる。これにより、バケット6に掘削対象物100を掬い取る掘削作業が実行される。本例の場合には、ホイールローダ1は、バケット容量分の土砂を掬うことが可能となる。
【0113】
たとえば、バケット容量が7tonであり、指定(算出)された目標掘削土量が7tonである場合には、ホイールローダ1は、略7ton分の土砂を掬うことが可能となる。
【0114】
図10は、算出されたアクセル開度V2が図9のアクセル開度V2よりも小さい場合における掘削作業を説明するための図である。図10に示されるように、ホイールローダ1は、バケット6の刃先6aを掘削対象物100に食い込ませた後に、図10中の曲線矢印のように、バケット軌跡Lbに沿ってバケット6を上昇させる。これにより、バケット6に掘削対象物100を掬い取る掘削作業が実行される。本例の場合には、ホイールローダ1は、バケット容量以下の所定量(たとえば、2ton)の土砂を掬うことが可能となる。
【0115】
このように、ホイールローダ1は、学習済みモデル180を用いて作業機3の姿勢が目標姿勢となるように作業機3の動作を制御するととともに、目標掘削土量に基づいて算出されたアクセル開度V2に基づき車体20の走行を制御することにより、目標掘削土量分の土量を掘削可能となる。
【0116】
<E.実験結果>
以下、実験結果に基づき、ホイールローダ1の利点を具体的に説明する。
【0117】
図11は、作業機操作とアクセル操作との自動制御による掘削精度を説明するための図である。図11に示されるように、目標掘削土量が7tonに設定されたときに、ホイールローダ1によって掘削された土量の6回の平均値(ペイロードメータによって検出された土砂の重量の平均値)は、7.1トンであった。この場合の、誤差は、1.4%(=(7.1-7.0)/7.0×100)であった。なお、ペイロードメータは、ホイールローダ1に予め搭載されていてもよい。あるいは、ペイロードメータは、ホイールローダ1に後付けされてもよい。また、ペイロードメータの代わりに、トラックスケールを使用して、掘削対象物100の重量を測定してもよい。
【0118】
同様に、目標掘削土量が、6.3ton、5.6ton、4.9ton、4.2ton、3.5トンの場合の誤差は、それぞれ、0.0%、1.8%、0.0%、2.4%、8.6%となった。このように、いずれの場合においても、誤差が10.0%以下に収まることが確認できた。
【0119】
図12は、ダンプトラックに積み込む土砂の総量を18tonとした場合において、作業機操作とアクセル操作との自動制御によって掘削(自動掘削)したときと、マニュアル操作で掘削(マニュアル掘削)したときとにおける、10回分のダンプトラックへの積込土量と積込精度とを示した図である。図13は、図12に示したデータの平均値と、サイクルタイムと、燃料消費量とを示した図である。なお、サイクルタイムについては、ダンプトラックへの3回の積込動作の合計値である。
【0120】
図12および図13に示されるように、上述した自動掘削によれば、マニュアル掘削と同程度の積込土量(掘削土量に対応)および積込精度を確保できている。図13に示されるように、自動掘削によれば、積み直しおよびチップオフ作業を削減することで、サイクルタイムをマニュアル掘削のときよりも低減することができる。さらに、自動掘削によれば、マニュアル掘削のときに比べ、燃料消費量も削減できている。
【0121】
図14は、作業機操作とアクセル操作との自動制御による燃費をさらに説明するための図である。図14に示されるように、目標掘削土量が7tonに設定されたときのホイールローダ1の燃費は、66.5mlであった。同様に、目標掘削土量が、6.3ton、5.6ton、4.9ton、4.2ton、3.5トンの場合の燃費は、それぞれ、46.6ml、27.6ml、24,5ml、23.9ml、20.4mlとなった。
【0122】
この結果、たとえば、ダンプトラックに積み込む土砂の総量が11.2tonである場合、5.6tonずつ土砂を掘削してダンプトラックに積み込むときには、燃費の合計は、55.2ml(=27.6×2)となる。一方、7.0tonだけ土砂を掘削し、その後、4.2tonだけ土砂を掘削してダンプトラックに積み込むときには、燃費の合計は、90.4ml(=66.5+23.9)となる。
【0123】
このように、ダンプトラックに積み込む土砂の総量から目標掘削土量を算出するときには、燃費の観点から、各回の掘削土量を平均化することが好ましいことが分かった。
【0124】
<F.小括>
(1)ホイールローダ1は、走行可能な車体20と、バケット6を含み、かつバケット6にて掘削作業を行う作業機3と、コントローラ10とを備える。コントローラ10は、車体20および作業機3の動作に関する機械データを取得し、機械データに基づいて、掘削作業中の作業機3の目標姿勢を算出する算出部150と、目標掘削土量の掘削に必要なアクセル開度V2を算出する算出部280とを有する。本例では、算出部150は、機械データを取得する取得部170と、機械データに基づいて、掘削作業中の作業機の目標姿勢を算出する学習済みモデル180とを有する。コントローラ10は、作業機3の姿勢が目標姿勢となるように作業機3の動作を制御するとともにアクセル開度V2に基づき車体20の走行を制御する。
【0125】
このような構成によれば、目標掘削土量が指定されると、目標掘削土量の掘削に必要なアクセル開度V2が、算出部280によって算出される。したがって、ホイールローダ1は、学習済みモデル180によって得られた目標姿勢となるように作業機3の動作を制御し、かつ、算出部280によって算出されたアクセル開度V2に基づき走行することによって、指定された目標掘削土量を自動で正確に掬うことを可能となる。
【0126】
詳しくは、学習済みモデル180によって得られた目標姿勢は、アクセル開度V2の大小にかかわらず同じである。目標姿勢が同じでも、バケット6の地山への貫入量、つまりアクセル開度を制御することで、掘削土量を制御できる。典型的には、掘削土量は、地山への貫入量、つまりアクセル開度(車速)と、作業機速度とによって変わる。しかしながら、本実施の形態の構成では、学習済みモデル180によって制御される目標姿勢に、作業機速度の制御も含まれる。つまり、目標姿勢が同じであれば、作業機速度の変化も共通である。そのため、アクセル開度(車速)の制御のみで掘削土量を制御できる。厳密には、学習済みモデル180によって決定される作業機速度は、車速によっても変わる。具体的には、車速が小さいほど、作業機速度が大きくなるように決定されている。しかしながら、作業機速度は車速以外の変数(ブームシリンダ圧、エンジン回転数、牽引力)にも影響されるため、車速の変化に対する作業機速度の変化は小さい。つまり、車速の変化に対する作業機速度の変化よりも、車速の変化に対する地山への掘削量の変化の方が大きい。したがって、アクセル開度(車速)で掘削土量を制御できる。また車速の変化に対する作業機速度の変化を考慮した補正をすることにより、さらに精度を向上することができる。具体的には、後述する、土質が変わった場合の変形例と同様の方法で補正が可能である。以上より、作業機3の目標姿勢が同じでも、アクセル開度で掘削土量を自在に制御できる。このように、アクセル開度V2を制御することにより、掘削土量を調整できる。
【0127】
(2)作業機3は、ブーム14と、ブーム14を動作させるブームシリンダ16とを含む。図8に基づいて説明したように、算出部280は、目標掘削土量に基づき、ブームシリンダ16に加える目標ブームシリンダ圧と、ホイールローダ1の目標牽引力とを算出する。算出部280は、目標ブームシリンダ圧と、目標牽引力とに基づき、アクセル開度V2を算出する。このような構成によれば、コントローラ10は、目標掘削土量からアクセル開度V2を算出することができる。
【0128】
(3)車体20は、エンジン21をさらに含む。機械データは、ブームシリンダ16の圧力と、ホイールローダ1の車速と、エンジン21の回転数と、ホイールローダ1の牽引力とである。このような構成によれば、学習済みモデル180は、4つの入力パラメータのみで、作業機3の目標姿勢を出力できる。
【0129】
(4)作業機3は、ブーム14を回動自在に支持するベルクランク18をさらに有する。コントローラ10は、アクセル操作検出部81bによって検出されたアクセル開度V1から、アクセル操作が行われていないと判断される場合、または、ブーム14に対するベルクランク18の角度が最大となった場合、学習済みモデル180を用いた作業機3の動作の制御と、算出されたアクセル開度V2に基づく車体20の動作の制御とを終了する。
【0130】
このような構成によれば、1回の掘削作業の終了が判定できる。また、1回の掘削作業の終了判定に基づき、学習済みモデル180を用いた作業機3の動作の制御と、算出されたアクセル開度V2に基づく車体20の動作の制御とを終了させることができる。
【0131】
(5)コントローラ10は、操作キー51等の入力装置を介して、ダンプトラックに積み込む土砂(掘削対象物)の総重量の入力を受け付ける。コントローラ10は、総重量がバケット容量よりも多い場合、総重量をバケット容量以下の複数の重量に分割する。コントローラ10(詳しくは、算出部280)は、分割によって得られた重量を目標掘削土量として、アクセル開度V2を算出する。このような構成によれば、ダンプトラックに積み込む土砂の総重量を入力すると、目標掘削土量が算出される。それゆえ、オペレータは、総重量のみを入力すればすむ。
【0132】
(6)好ましくは、コントローラ10は、総重量を均等に分割する。このような構成によれば、総重量を均等に分割しない場合に比べて、ホイールローダ1の燃費を低減できる。
【0133】
<G.変形例>
(1)掘削する土砂の質が変化した場合には、算出部280の精度が低下することが想定される。たとえば、目標掘削土量を3tonに指定した場合に、4tonの土砂が掘削されることが起こりえる。そこで、土砂の質に応じたアクセル開度V2を出力可能な調整機能(チューニング機能)を有する算出部280の構成について説明する。以下では、このような調整機能を有する算出部280を、説明の便宜上、算出部280Aと称する。
【0134】
図15は、算出部280Aの機能的構成を説明するための機能ブロック図である。算出部280Aは、平均ブームボトム圧算出部281と、平均牽引力算出部282と、アクセル開度算出部283と、補正部284とを備える。算出部280Aは、補正部284を備える点において、算出部280(図8参照)とは異なる。
【0135】
先ず、補正部284による補正式の生成について説明する。その後、補正部284による、補正式を用いた目標掘削土量の補正について説明する。
【0136】
補正部284には、目標掘削土量と、ホイールローダ1に搭載されたペイロードメータ99によって検出された土砂の重量(計測値)とが入力される。補正部284は、目標掘削土量と、実際の掘削土量(計測値)とを用いて、補正式を生成する。具体的には、補正部284は、後述する3つのデータ(詳しくは、3つの座標値(x1,y1),(x2,y2),(x3,y3))を用いて、補正式を生成する。なお、ペイロードメータ99は、バケット6に積み込んだ掘削対象物100の重量を検出する検出部の例である。ペイロードメータ99は、ホイールローダ1に予め搭載されていてもよい。あるいは、ペイロードメータ99は、ホイールローダ1に後付けされてもよい。
【0137】
図16は、補正式の生成の流れを説明するためのフロー図である。図17は、補正式を生成する際に用いる目標掘削土量とペイロードメータ99による計測値との関係を説明するための図である。
【0138】
図17に示されるように、補正式を生成する前提として、コントローラ10は、目標掘削土量をX座標の値とし、ペイロードメータ99による計測値をY座標の値とした座標系を用いる。
【0139】
図16に示されるように、ステップS31において、コントローラ10は、目標掘削土量を第1の土量(x1)(図17参照)として、上述した自動制御による掘削作業を行う(「アクセル開度:小」)。ステップS32において、コントローラ10は、目標掘削土量を第1の土量(x1)としたときのペイロードメータ99による計測値(y1)(図17参照)を取得する。
【0140】
ステップS33において、コントローラ10は、目標掘削土量を第2の土量(x2)(>x1)として、上述した自動制御による掘削作業を行う。この場合、目標掘削土量を第1の土量(x1)としたときよりも、アクセル開度は大きくなる(「アクセル開度:中」)。ステップS34において、コントローラ10は、目標掘削土量を第2の土量(x2)としたときのペイロードメータ99による計測値(y2)を取得する。
【0141】
ステップS35において、コントローラ10は、目標掘削土量を第3の土量(x3)(>x2)として、上述した自動制御による掘削作業を行う。この場合、目標掘削土量を第2の土量(x2)としたときよりも、アクセル開度は大きくなる(「アクセル開度:大」)。ステップS36において、コントローラ10は、目標掘削土量を第3の土量(x3)としたときのペイロードメータ99による計測値(y3)を取得する。
【0142】
ステップS37において、コントローラ10は、3つの座標値(x1,y1),(x2,y2),(x3,y3)に基づき最小二乗法を用いて関数(x=αy+βy+γ … (f4))を生成する。
【0143】
第1の土量(x1)と、第2の土量(x2)と、第3の土量(x3)とは、コントローラ10が適宜決定してもよい。また、2つ以下の土量(たとえば、x1,x2)または4つ以上の土量(x1,x2,x3,x4,…)を用いて関数f4を生成してもよい。
【0144】
補正部284は、上述した関数f4を生成すると、関数f4を記憶する。この後、関数f4を用いた実運用がなされる。詳細については後述するが、補正部284は、関数f4を用いて、入力される目標掘削土量を補正する。補正部284は、補正後の目標掘削土量を平均ブームボトム圧算出部281に送る。なお、実運用時には、算出部280Aは、アクセル開度V2の算出にあたり、ペイロードメータ99による計測値を利用しない。
【0145】
平均ブームボトム圧算出部281は、補正後の目標掘削土量に基づき、上述した関数f1を用いて平均ブームボトム圧を算出する。平均ブームボトム圧算出部281は、平均ブームボトム圧を平均牽引力算出部282とアクセル開度算出部283とに送る。平均牽引力算出部282における処理と、アクセル開度算出部283における処理とは、既に説明したため、ここでは繰り返し説明しない。以上により、算出部280Aからアクセル開度V2の情報が出力される。
【0146】
補正部284の補正処理を具体的に説明すると、以下のとおりである。図18は、ダンプトラックに積み込む土砂の総量の入力から、補正部284による補正までの一連の処理の流れを説明するためのフロー図である。図18に示されているように、ステップS31において、コントローラ10は、オペレータの入力操作に基づき、ダンプトラックに積み込む土砂の総量の入力を受け付ける。ステップS32において、コントローラ10は、目標掘削土量(1回の掘削当たりの土量)を算出する。
【0147】
ステップS33において、コントローラ10(詳しくは、補正部284)は、関数f4(x=αy+βy+γ)のyに、ステップS32において算出された目標掘削土量の値を入力することにより、xの値を算出する。ステップS34において、コントローラ10(詳しくは、補正部284)は、xの値を目標掘削土量(補正後の目標掘削土量)に設定する。
【0148】
関数f4を生成するときには、xを目標掘削土量の値としたが、補正を行う場合には、上記のようにyを目標掘削土量の値とする。逆関数的に関数f4のyに目標掘削土量を入力する。これにより、xの値として、補正後の目標掘削土量が得られる。
【0149】
単純化した具体例を挙げて説明すると、以下のとおりである。たとえば、3つの座標値(x1,y1),(x2,y2),(x3,y3)が、それぞれ、(4,5),(6,7.5),(8,10)であったとする。このように、目標掘削土量に対して、1.25倍だけ多く土砂を掘削しているとする。換言すれば、目標掘削土量が、実際に掘削された土量の0.8倍であったとする。
【0150】
この場合には、関数f4として、x=0.8yが得られる。実運用で目標掘削土量が7.5tonの場合、yに7.5を代入し、補正後の目標掘削土量(x)として、6tonが得られる。このように、目標掘削土量を7.5tonから6tonに補正(調整)することにより、結果として、7.5tonの土砂を掬うことができる。算出部280Aに入力された目標掘削土量を調整することにより、算出部280Aに入力された目標掘削土量分の土砂を掘削することが可能となる。
【0151】
本補正は、土砂の質の変化による、算出部280の精度低下に限定されない。本補正は、車体20の制御方法が変わることによる、算出部280の精度低下にも適用できる。典型的には、掘削土量は、地山への貫入量と、作業機速度とによって決まる。たとえば、車速に応じて作業機速度が変化する制御が行われる場合、アクセル開度(車速)の制御のみでは掘削土量を精度良く制御できない場合が考えられる。このような場合でも、本補正によってアクセル開度と掘削土量との関係性を適正化し、掘削土量の精度を上げることができる。つまり、本補正によれば、車体20の制御方法が変わることによる、算出部280の精度低下を改善できる。
【0152】
以上のように、ホイールローダ1は、バケット6に積み込んだ掘削対象物100の重量を検出するペイロードメータ99を備える。コントローラ10は、目標掘削土量と、ペイロードメータ99によって検出された重量との差に基づき、目標掘削土量を補正する補正部284を有する。算出部280Aは、補正後の目標掘削土量に基づきアクセルの開度を算出する。これにより、掘削対象物100の土質に応じた制御が可能となる。
【0153】
(2)上記においては、ホイールローダ1として、電子制御を活用したHMT(Hydraulic Mechanical Transmission)方式のホイールローダを例に挙げて説明したが、これに限定されるものではない。トルクコンバータ方式のホイールローダであっても、掘削土量はアクセル開度(車速)で制御できるため、トルクコンバータ方式のホイールローダに対しても、上述した自動制御を適用可能である。この点について、詳しく説明すると、以下のとおりである。
【0154】
トルクコンバータ方式のホイールローダでは、目標掘削土量が小さい場合、地山への貫入量を下げるために、アクセル開度(車速)を下げる。少ない掘削土量を実現するには、作業機速度が大きい方が好ましいものの、トルクコンバータ方式のホイールローダでは、このような制御ができない。しかしながら、車速(アクセル開度)を下げることによる作業機速度が小さくなる効果より、地山への貫入量が小さくなる効果が大きいため、トルクコンバータ方式のホイールローダでも掘削土量を調整できる。
【0155】
さらには、車速(アクセル開度)が下がることによる作業機速度が小さくなる効果を考慮した補正をすることにより、掘削土量の精度をより向上させることができる。本補正は、車体20の制御方法が変わることによる、算出部280の精度低下の改善と同様の方法で可能である。
【0156】
このように、アクセル開度を制御することにより、掘削土量を制御できる。さらに、作業機3の動作が変わらなくても、アクセル開度を変えたときの地山への貫入量を調整できれば(アクセル開度と掘削可能な土量との関係を補正できれば)、掘削土量の精度をより向上させることができる。
【0157】
(3)上記においては、アクセル操作部材81aが操作されている間だけ作業機操作とアクセル操作とを自動制御する構成を説明した。具体的には、たとえば図5のステップS5~S7に示すように、アクセル操作部材81aが操作されている状態で掘削作業の開始が検知されたことに基づき、コントローラ10が作業機操作とアクセル操作との自動制御を開始する構成を説明した。また、たとえば図5のステップS8,S10に示すように、アクセル操作部材81aの操作(アクセル操作)が行われていないと判断されたことに基づき、コントローラ10が作業機操作とアクセル操作との自動制御を終了する構成を説明した。しかしながら、自動制御の開始および終了の各タイミングは、このような条件に限定されない。コントローラ10は、事前に決められたロジック(タイミング)または所定のレバー操作を条件として、自動制御を開始または終了してもよい。
【0158】
(4)積込対象は、ダンプトラックに限定されない。積込対象は、自走式の車両に限定さない。たとえば、積込対象は、牽引される車両であってもよい。排土工程は、所定の場所に掘削対象物100を排出させるだけでもよい。
【0159】
(5)上記においては、人工知能である学習済みモデル180を用いて目標姿勢を算出する構成を説明した。しかしながら、ある決まった作業機制御(位置制御、負荷制御等)に対して、アクセル制御により地山への貫入量を調整できれば、目標姿勢の算出に人工知能を用いる必要は必ずしもない。
【0160】
コントローラ10は、予め作成された算出ロジック(計算ロジック)を用いて、目標姿勢を算出してもよい。たとえば、コントローラ10は、作業機3が受ける負荷から目標姿勢を決めてもよい。コントローラ10は、地山からの反力で変化するブームシリンダ圧の変化に対して、事前に決められた目標姿勢にしたがって作業機3を制御してもよい。具体的には、ブームシリンダ圧に対する、ブーム角度θ1の単位時間当たりの変化量Δθ1と、ベルクランク角度θ2の単位時間当たりの変化量Δθ2ブーム操作量とがメモリ10Mに記憶されていて、コントローラ10は、当該変化量θ1,θ2に基づき、作業機3の制御を行ってもよい。
【0161】
なお、作業機3が受ける負荷を検知する方法は、ブームシリンダ圧の検知に限定されない。たとえば、作業機3に歪みセンサまたはトルクセンサを設置し、当該センサによって作業機3が地山から受ける負荷を検知し、かつ、コントローラ10が、検知結果に基づいて作業機3を制御してもよい。
【0162】
(6)上述したように学習済みモデル180を用いて目標姿勢を算出する場合には、コントローラ10は、掘削作業の開始前から目標姿勢の算出を開始しており、かつ掘削作業の開始を作業機3の目標姿勢への制御のトリガにしているに過ぎない。それゆえ、掘削作業の開始の検知と目標姿勢の算出開始との時間的な先後は問わない。すなわち、コントローラ10は、先に目標姿勢を算出し、その後掘削作業の開始を検知してから、目標姿勢となるように車体20を制御してもよい。逆に、コントローラ10は、掘削作業の開始を検知した後に目標姿勢を算出し、目標姿勢となるように車体20を制御してもよい。学習済みモデル180の代わりに上述した算出ロジックを用いる場合も、掘削作業の開始の検知と目標姿勢の算出開始との時間的な先後は問わない。
【0163】
(7)上記においては、全ての制御をコントローラ10が実行する構成となっているが、一部または全ての制御を外部コントローラが実行してもよい。たとえば、自動掘削中は、エッジ端末などの外部コントローラから操作電圧(操作信号)を送り、当該操作信号をコントローラ10で受け取ることにより、ホイールローダ1が操作されてもよい。自動掘削以外の作業時は、レバー操作の電圧値を読み取るセンサが検出した値を外部コントローラ(図示せず)で常時読み取り、当該値を示す信号をコントローラ10に流すことにより、ホイールローダ1が操作されてもよい。
【0164】
たとえば、車体20に内蔵されているコントローラ10に自動掘削のロジックを織込むことにより、外部コントローラから信号を与えなくてもホイールローダ1を制御してもよい。また、コントローラ10を介さず、バルブを直接開閉させる信号を外部コントローラから送ることでも本技術を適用してもよい。
【0165】
今回開示された実施の形態は例示であって、上記内容のみに制限されるものではない。本発明の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0166】
1 ホイールローダ、2 車体フレーム、2a 前フレーム、2b 後フレーム、2b フレーム、2ton,6ton 目標掘削土量、3 作業機、4 走行装置、4a 前輪、4a 車輪、5 キャブ、6 バケット、6a 刃先、6b 背面、8 操作装置、9 ブームピン、10 コントローラ、10M メモリ、11 ステアリングシリンダ、13 作業機ポンプ、14 ブーム、15 リンク、16 ブームシリンダ、17 バケットピン、18 ベルクランク、18a 支持ピン、18b,18c 連結ピン、19 バケットシリンダ、20 車体、21 エンジン、23 トランスミッション、27 入力軸、28 出力軸、29 第1角度検出器、32 車軸、33 動力取出部、34 作業機バルブ、48 第2角度検出器、50 ディスプレイ、51 操作キー、81a アクセル操作部材、81b アクセル操作検出部、83a ブーム操作部材、83b ブーム操作検出部、84a バケット操作部材、84b バケット操作検出部、85b 変速操作検出部、91 エンジン回転数センサ、92 出力回転数センサ、95 第1油圧検出器、96 第2油圧検出器、99 ペイロードメータ、100 掘削対象物、150,280,280A 算出部、170 取得部、180 学習済みモデル、181 入力層、182 中間層、183 出力層、231 遊星歯車、232,233 油圧モータ、281 平均ブームボトム圧算出部、282 平均牽引力算出部、283 アクセル開度算出部、284 補正部、H 水平線、L,La,Lb バケット軌跡、P ブーム基準線、Q ベルクランク基準線。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18