以下、図面を参照して実施形態について説明する。
[ショベル管理システムの概要]
まず、図1を参照して、本実施形態に係るショベル管理システムSYSの概要について説明をする。
図1は、本実施形態に係るショベル管理システムSYSの一例を示す概略図である。
図1に示すように、ショベル管理システムSYSは、ショベル100と、管理装置200と、支援装置300とを含む。
ショベル管理システムSYSは、例えば、管理装置200において、ショベル100から情報を収集し、ショベル100の各種状態(例えば、ショベル100に搭載される各種機器の異常の有無等)を監視する。また、ショベル管理システムSYSは、例えば、管理装置200から支援装置300にショベル100に関する各種情報(例えば、ショベル100から収集される情報等)を配信し、支援装置300を通じてユーザに情報提供を行う。
ショベル管理システムSYSに含まれるショベル100は、一台であってもよいし、複数台であってもよい。同様に、ショベル管理システムSYSに含まれる管理装置200は、複数であってもよい。即ち、複数の管理装置200は、ショベル管理システムSYSに関する処理を分散して実施してよい。例えば、複数の管理装置200は、それぞれ、複数のショベル100のうちの担当する一部のショベル100との間で相互に通信を行い、その一部のショベル100を対象とする処理を実行してよい。同様に、ショベル管理システムSYSに含まれる支援装置300は、一つであってもよいし、複数であってもよい。
<ショベルの概要>
図1に示すように、本実施形態に係るショベル100は、下部走行体1と、旋回機構2を介して旋回自在に下部走行体1に搭載される上部旋回体3と、アタッチメントを構成するブーム4、アーム5、及びバケット6と、オペレータが搭乗するキャビン10とを備える。以下、ショベル100の前方は、ショベル100を上部旋回体3の旋回軸に沿って真上から平面視(以下、単に「平面視」と称する)で見たときに、上部旋回体3に対するアタッチメントが延び出す方向に対応する。また、ショベル100の左方及び右方は、それぞれ、キャビン10内のオペレータから見た左方及び右方に対応する。
下部走行体1は、例えば、左右一対のクローラを含み、それぞれのクローラが左側の走行油圧モータ1ML及び右側の走行油圧モータ1MR(図2参照)で油圧駆動されることにより、ショベル100を走行させる。
上部旋回体3は、旋回機構2が旋回油圧モータ2Aで油圧駆動されることにより、下部走行体1に対して旋回する。
ブーム4は、上部旋回体3の前部中央に俯仰可能に枢着され、ブーム4の先端には、アーム5が上下回動可能に枢着され、アーム5の先端には、バケット6が上下回動可能に枢着される。
バケット6は、エンドアタッチメントの一例である。バケット6は、例えば、掘削作業等に用いられる。また、アーム5の先端には、作業内容等に応じて、バケット6の代わりに、他のエンドアタッチメントが取り付けられてもよい。他のエンドアタッチメントは、例えば、法面用バケット、浚渫用バケット等の他の種類のバケットであってよい。また、他のエンドアタッチメントは、攪拌機、ブレーカ等のバケット以外の種類のエンドアタッチメントであってもよい。
また、バケット6には、クレーン作業用のフック80が取り付けられる。フック80は、基端が、アーム5とバケット6との間を連結するバケットピンに回動可能に連結される。これにより、フック80は、掘削作業等のクレーン作業(吊り作業)以外の作業が行われる場合、2本のバケットリンクの間に形成される空間に収納される。
ブーム4、アーム5、及びバケット6は、それぞれ、油圧アクチュエータとしてのブームシリンダ7、アームシリンダ8、及びバケットシリンダ9により油圧駆動される。
キャビン10は、オペレータが搭乗する操縦室であり、上部旋回体3の前部左側に搭載される。
ショベル100は、通信装置60を搭載し、所定の通信回線NW(Network)を通じて、管理装置200と相互に通信を行うことができる。これにより、ショベル100は、各種情報を管理装置200に送信(アップロード)したり、管理装置200から各種の信号(例えば、情報信号や制御信号)等を受信したりすることができる。通信回線NWには、例えば、基地局を末端とする移動体通信網が含まれてよい。また、通信回線NWには、例えば、ショベル100の上空の通信衛星を利用する衛星通信網が含まれてもよい。また、通信回線NWには、例えば、インターネット網が含まれてもよい。また、通信回線NWには、例えば、LAN(Local Area Network)が含まれてもよい。また、通信回線NWには、例えば、WiFiやブルートゥース(登録商標)等の所定の近距離通信方式に基づく近距離通信網が含まれてもよい。
ショベル100は、キャビン10に搭乗するオペレータの操作に応じて、アクチュエータ(例えば、油圧アクチュエータ)を動作させ、下部走行体1、上部旋回体3、ブーム4、アーム5、及びバケット6等の動作要素(被駆動要素)を駆動する。
また、ショベル100は、キャビン10のオペレータにより操作可能に構成されるのに代えて、或いは、加えて、ショベル100の外部から遠隔操作(リモート操作)が可能に構成されてもよい。ショベル100が遠隔操作される場合、キャビン10の内部は、無人状態であってもよい。以下、オペレータの操作には、キャビン10のオペレータの操作装置26に対する操作、及び外部装置のオペレータの遠隔操作の少なくとも一方が含まれる前提で説明を進める。
遠隔操作には、例えば、所定の外部装置(例えば、管理装置200や支援装置300)で行われるショベル100のアクチュエータに関する操作入力によって、ショベル100が操作される態様が含まれる。この場合、ショベル100は、例えば、後述の周囲情報取得装置40に含まれる撮像装置が出力する画像情報(撮像画像)を外部装置に送信し、画像情報は、外部装置に設けられる表示装置(以下、「遠隔操作用表示装置」)に表示されてよい。また、ショベル100のキャビン10内の表示装置50に表示される各種の情報画像(情報画面)は、同様に、外部装置の遠隔操作用表示装置にも表示されてよい。これにより、外部装置のオペレータは、例えば、遠隔操作用表示装置に表示されるショベル100の周囲の様子を表す撮像画像や情報画面等の表示内容を確認しながら、ショベル100を遠隔操作することができる。そして、ショベル100は、外部装置から受信される、遠隔操作の内容を表す遠隔操作信号に応じて、アクチュエータを動作させ、下部走行体1、上部旋回体3、ブーム4、アーム5、及びバケット6等の被駆動要素を駆動してよい。
また、遠隔操作には、例えば、ショベル100の周囲の人(例えば、作業者)のショベル100に対する外部からの音声入力やジェスチャ入力等によって、ショベル100が操作される態様が含まれてよい。具体的には、ショベル100は、ショベル100に搭載される撮像装置や音声入力装置(例えば、マイクロフォン)等を通じて、周囲の作業者等により発話される音声や作業者等により行われるジェスチャ等を認識する。そして、ショベル100は、認識した音声やジェスチャ等の内容に応じて、アクチュエータを動作させ、下部走行体1、上部旋回体3、ブーム4、アーム5、及びバケット6等の被駆動要素を駆動してよい。
また、ショベル100は、オペレータの操作の内容に依らず、自動でアクチュエータを動作させてもよい。これにより、ショベル100は、下部走行体1、上部旋回体3、ブーム4、アーム5、及びバケット6等の被駆動要素の少なくとも一部を自動で動作させる機能(いわゆる「自動運転機能」或いは「マシンコントロール機能」)を実現する。
自動運転機能には、オペレータの操作装置26に対する操作や遠隔操作に応じて、操作対象の被駆動要素(油圧アクチュエータ)以外の被駆動要素(油圧アクチュエータ)を自動で動作させる機能(いわゆる「半自動運機能」)が含まれてよい。また、自動運転機能には、オペレータの操作装置26に対する操作や遠隔操作がない前提で、複数の被駆動要素(油圧アクチュエータ)の少なくとも一部を自動で動作させる機能(いわゆる「完全自動運転機能」)が含まれてよい。ショベル100において、完全自動運転機能が有効な場合、キャビン10の内部は無人状態であってよい。また、半自動運転機能や完全自動運転機能等には、自動運転の対象の被駆動要素(油圧アクチュエータ)の動作内容が予め規定されるルールに従って自動的に決定される態様が含まれてよい。また、半自動運転機能や完全自動運転機能等には、ショベル100が自律的に各種の判断を行い、その判断結果に沿って、自律的に自動運転の対象の被駆動要素(油圧アクチュエータ)の動作内容が決定される態様(いわゆる「自律運転機能」)が含まれてもよい。
<管理装置の概要>
管理装置200(情報処理装置の一例)は、例えば、ショベル100及び支援装置300(即ち、そのユーザ)と地理的に離れた位置に配置される。管理装置200は、例えば、ショベル100が作業を行う作業現場外の管理センタ等に設置されるクラウドサーバであってよい。また、管理装置200は、例えば、ショベル100が作業行う作業現場内、或いは、作業現場から相対的に近い場所(例えば、通信事業者の局舎や基地局等)に配置されるエッジサーバであってもよい。また、管理装置200は、ショベル100の作業現場内の管理事務所等に配置される定置型或いは携帯型のコンピュータ端末であってもよい。
管理装置200は、通信装置220(図2、図3参照)を有し、上述の如く、通信回線NWを通じて、ショベル100及び支援装置300のそれぞれと相互に通信を行う。これにより、管理装置200は、ショベル100からアップロードされる各種情報を受信したり、各種信号をショベル100に送信したりすることができる。また、管理装置200は、支援装置300からの要求信号を受信したり、支援装置300からの要求信号に応じて、支援装置300に各種情報を送信したりすることができる。
また、管理装置200は、ショベル100の遠隔操作を支援可能に構成されてもよい。例えば、管理装置200は、オペレータが遠隔操作を行うための操作装置(以下、便宜的に「遠隔操作装置」)、及びショベル100の周囲の画像情報等を表示する遠隔操作用表示装置を有してよい。遠隔操作装置から入力される信号は、遠隔操作信号として、ショベル100に送信される。これにより、管理装置200の作業者等(オペレータ)は、遠隔操作用表示装置でショベル100の周囲の様子を確認しながら、遠隔操作装置を用いて、ショベル100の遠隔操作を行うことができる。
<支援装置の概要>
支援装置300(情報処理装置の一例)は、ユーザ端末である。支援装置300のユーザは、例えば、作業現場の監督者、管理者、ショベル100のオペレータ、ショベル100の管理者、ショベル100のサービスマン、ショベル100の開発者等である。支援装置300は、例えば、ユーザが所持するラップトップ型のコンピュータ端末、タブレット端末、スマートフォン等の携帯端末である。また、支援装置300は、例えば、デスクトップ型のコンピュータ等の定置型のコンピュータ端末であってもよい。
支援装置300は、通信装置320(図2、図3参照)を有し、通信回線NWを通じて、管理装置200と相互に通信を行うことができる。これにより、支援装置300は、管理装置200から送信される各種情報を受信し、後述の表示装置340を通じて、受信される各種情報をユーザに提供することができる。また、支援装置300は、通信回線NWを通じて、ショベル100と相互に通信可能に構成されてもよい。この場合、支援装置300は、直接、ショベル100と通信可能に構成されてもよいし、管理装置200を介して、ショベル100と通信可能に構成されてもよい。
また、支援装置300は、ショベル100の遠隔操作を支援可能に構成されてもよい。例えば、支援装置300は、遠隔操作装置を有してよい。また、例えば、支援装置300は、更に、遠隔操作用表示装置を有してもよい。遠隔操作装置から入力される信号は、遠隔操作信号として、ショベル100に送信される。これにより、支援装置300のユーザ(オペレータ)は、ショベル100を視認可能な範囲でショベル100の周囲の様子を確認しながら、遠隔操作装置を用いて、ショベル100の遠隔操作を行うことができる。また、支援装置300のユーザ(オペレータ)は、遠隔操作用表示装置でショベル100の周囲の様子を確認しながら、遠隔操作装置を用いて、ショベル100の遠隔操作を行ってもよい。
[ショベル管理システムの構成]
次に、図1に加えて、図2、図3を参照して、ショベル管理システムSYSの具体的な構成について説明する。
図2、図3は、本実施形態に係るショベル管理システムSYSの構成の一例及び他の例を示すブロック図である。図2、図3は、相互に、ショベル100、管理装置200、及び支援装置300のうち、ショベル100の構成のみが相互に異なる。
尚、図中において、機械的動力ラインは二重線、高圧油圧ラインは実線、パイロットラインは破線、電気的信号ラインは点線でそれぞれ示される。
<ショベルの構成>
図2、図3に示すように、本実施形態に係るショベル100の油圧駆動系は、上述の如く、下部走行体1(左右のクローラ)、上部旋回体3、ブーム4、アーム5、及びバケット6等のそれぞれを油圧駆動する油圧アクチュエータを含む。油圧アクチュエータには、走行油圧モータ1ML,1MR、旋回油圧モータ2A、ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9等が含まれる。また、本実施形態に係るショベル100の油圧駆動系は、エンジン11と、レギュレータ13と、メインポンプ14と、コントロールバルブ17とを含む。
エンジン11は、油圧駆動系におけるメイン動力源である。エンジン11は、例えば、軽油を燃料とするディーゼルエンジンである。エンジン11は、例えば、上部旋回体3の後部に搭載される。エンジン11は、後述するコントローラ30による直接或いは間接的な制御下で、予め設定される目標回転数で一定回転し、メインポンプ14及びパイロットポンプ15を駆動する。
レギュレータ13は、コントローラ30の制御下で、メインポンプ14の吐出量を制御(調節)する。例えば、レギュレータ13は、コントローラ30からの制御指令に応じて、メインポンプ14の斜板の角度(以下、「傾転角」)を調節する。
メインポンプ14は、高圧油圧ラインを通じてコントロールバルブ17に作動油を供給する。メインポンプ14は、例えば、エンジン11と同様、上部旋回体3の後部に搭載される。メインポンプ14は、上述の如く、エンジン11により駆動される。メインポンプ14は、例えば、可変容量式油圧ポンプであり、上述の如く、コントローラ30の制御下で、レギュレータ13により斜板の傾転角が調節されることによりピストンのストローク長が調整され、吐出流量(吐出圧)が制御される。
コントロールバルブ17は、オペレータの操作装置26に対する操作や遠隔操作の内容、或いは、コントローラ30から出力される自動運転機能に関する操作指令に応じて、油圧アクチュエータの制御を行う油圧制御装置である。コントロールバルブ17は、例えば、上部旋回体3の中央部に搭載される。コントロールバルブ17は、上述の如く、高圧油圧ラインを介してメインポンプ14と接続され、メインポンプ14から供給される作動油を、操作装置26の操作状態、或いは、コントローラ30から出力される操作指令に応じて、油圧アクチュエータ(走行油圧モータ1ML,1MR、旋回油圧モータ2A、ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9等)に選択的に供給する。具体的には、コントロールバルブ17は、メインポンプ14から油圧アクチュエータのそれぞれに供給される作動油の流量と流れる方向を制御する複数の制御弁(方向切換弁とも称する)を含む。
図2、図3に示すように、本実施形態に係るショベル100の操作系は、パイロットポンプ15と、操作装置26と、油圧制御弁31とを含む。また、図2に示すように、本実施形態に係るショベル100の操作系は、操作装置26が油圧パイロット式である場合、シャトル弁32と、油圧制御弁33とを含む。
パイロットポンプ15は、パイロットライン25を介して各種油圧機器にパイロット圧を供給する。パイロットポンプ15は、例えば、エンジン11と同様、上部旋回体3の後部に搭載される。パイロットポンプ15は、例えば、固定容量式油圧ポンプであり、上述の如く、エンジン11により駆動される。
操作装置26は、キャビン10の操縦席付近に設けられ、オペレータが各種被駆動要素(下部走行体1、上部旋回体3、ブーム4、アーム5、バケット6等)の操作を行うために用いられる。換言すれば、操作装置26は、オペレータがそれぞれの被駆動要素を駆動する油圧アクチュエータ(即ち、走行油圧モータ1ML,1MR、旋回油圧モータ2A、ブームシリンダ7、アームシリンダ8、及びバケットシリンダ9等)の操作を行うために用いられる。操作装置26は、例えば、ブーム4(ブームシリンダ7)、アーム5(アームシリンダ8)、バケット6(バケットシリンダ9)、及び上部旋回体3(旋回油圧モータ2A)のそれぞれを操作するレバー装置を含む。また、操作装置26は、例えば、下部走行体1の左右のクローラ(走行油圧モータ1ML,1MR)のそれぞれを操作するペダル装置或いはレバー装置を含む。
例えば、図2に示すように、操作装置26は、油圧パイロット式である。具体的には、操作装置26は、パイロットライン25及びそこから分岐されるパイロットライン25Aを通じてパイロットポンプ15から供給される作動油を利用して、操作内容に応じたパイロット圧を二次側のパイロットライン27Aに出力する。パイロットライン27Aは、シャトル弁32の入口ポートに接続され、シャトル弁32の出口ポートに接続されるパイロットライン27を介して、コントロールバルブ17に接続される。これにより、コントロールバルブ17には、シャトル弁32を介して、操作装置26における各種被駆動要素(油圧アクチュエータ)に関する操作内容に応じたパイロット圧が入力されうる。そのため、コントロールバルブ17は、オペレータ等の操作装置26に対する操作内容に応じて、それぞれの油圧アクチュエータを駆動することができる。
また、例えば、図3に示すように、操作装置26は、電気式である。具体的には、操作装置26は、操作内容に応じた電気信号(以下、「操作信号」)を出力し、操作信号は、コントローラ30に取り込まれる。そして、コントローラ30は、操作信号の内容に応じた制御指令、つまり、操作装置26に対する操作内容に応じた制御信号を油圧制御弁31に出力する。これにより、油圧制御弁31からコントロールバルブ17に操作装置26の操作内容に応じたパイロット圧が入力され、コントロールバルブ17は、操作装置26の操作内容に応じて、それぞれの油圧アクチュエータを駆動することができる。
また、コントロールバルブ17に内蔵される、それぞれの油圧アクチュエータを駆動する制御弁(方向切換弁)は、電磁ソレノイド式であってもよい。この場合、操作装置26から出力される操作信号がコントロールバルブ17に、即ち、電磁ソレノイド式の制御弁に直接入力されてもよい。
油圧制御弁31は、操作装置26の操作対象の被駆動要素(油圧アクチュエータ)ごとに設けられる。即ち、油圧制御弁31は、例えば、左側のクローラ(走行油圧モータ1ML)、右側のクローラ(走行油圧モータ1MR)、上部旋回体3(旋回油圧モータ2A)、ブーム4(ブームシリンダ7)、アーム5(アームシリンダ8)、及びバケット6(バケットシリンダ9)ごとに設けられる。油圧制御弁31は、例えば、パイロットポンプ15とコントロールバルブ17との間のパイロットライン25Bに設けられ、その流路面積(即ち、作動油が通流可能な断面積)を変更可能に構成されてよい。これにより、油圧制御弁31は、パイロットライン25Bを通じて供給されるパイロットポンプ15の作動油を利用して、所定のパイロット圧を二次側のパイロットライン27Bに出力することができる。そのため、図2に示すように、油圧制御弁31は、パイロットライン27Bとパイロットライン27の間のシャトル弁32を通じて、間接的に、コントローラ30からの制御信号に応じた所定のパイロット圧をコントロールバルブ17に作用させることができる。また、図3に示すように、油圧制御弁31は、パイロットライン27B及びパイロットライン27を通じて、直接的に、コントローラ30からの制御信号に応じた所定のパイロット圧をコントロールバルブ17に作用させることができる。そのため、コントローラ30は、油圧制御弁31から電気式の操作装置26の操作内容に応じたパイロット圧をコントロールバルブ17に供給させ、オペレータの操作に基づくショベル100の動作を実現することができる。
また、コントローラ30は、例えば、油圧制御弁31を制御し、自動運転機能を実現してもよい。具体的には、コントローラ30は、操作装置26の操作の有無に依らず、自動運転機能に関する操作指令に対応する制御信号を油圧制御弁31に出力する。これにより、コントローラ30は、油圧制御弁31から自動運転機能に関する操作指令に対応するパイロット圧をコントロールバルブ17に供給させ、自動運転機能に基づくショベル100の動作を実現することができる。
また、コントローラ30は、例えば、油圧制御弁31を制御し、ショベル100の遠隔操作を実現してもよい。具体的には、コントローラ30は、後述の通信装置60によって、管理装置200や支援装置300から受信される遠隔操作信号で指定される遠隔操作の内容に対応する制御信号を油圧制御弁31に出力する。これにより、コントローラ30は、油圧制御弁31から遠隔操作の内容に対応するパイロット圧をコントロールバルブ17に供給させ、オペレータの遠隔操作に基づくショベル100の動作を実現することができる。
図2に示すように、シャトル弁32は、2つの入口ポートと1つの出口ポートを有し、2つの入口ポートに入力されたパイロット圧のうちの高い方のパイロット圧を有する作動油を出口ポートに出力させる。シャトル弁32は、操作装置26の操作対象の被駆動要素(油圧アクチュエータ)ごとに設けられる。即ち、シャトル弁32は、例えば、左側のクローラ(走行油圧モータ1ML)、右側のクローラ(走行油圧モータ1MR)、上部旋回体3(旋回油圧モータ2A)、ブーム4(ブームシリンダ7)、アーム5(アームシリンダ8)、及びバケット6(バケットシリンダ9)ごとに設けられる。シャトル弁32の2つの入口ポートのうちの一方が操作装置26(具体的には、操作装置26に含まれる上述のレバー装置或いはペダル装置)の二次側のパイロットライン27Aに接続され、他方が油圧制御弁31の二次側のパイロットライン27Bに接続される。シャトル弁32の出口ポートは、パイロットライン27を通じて、コントロールバルブ17の対応する制御弁のパイロットポートに接続される。対応する制御弁とは、シャトル弁32の一方の入口ポートに接続される上述のレバー装置或いはペダル装置の操作対象である油圧アクチュエータを駆動する制御弁である。そのため、これらのシャトル弁32は、それぞれ、操作装置26の二次側のパイロットライン27Aのパイロット圧と油圧制御弁31の二次側のパイロットライン27Bのパイロット圧のうちの高い方を、対応する制御弁のパイロットポートに作用させることができる。つまり、コントローラ30は、操作装置26の二次側のパイロット圧よりも高いパイロット圧を油圧制御弁31から出力させることで、オペレータの操作装置26に対する操作に依らず、対応する制御弁を制御することができる。よって、コントローラ30は、オペレータの操作装置26に対する操作状態に依らず、被駆動要素(下部走行体1、上部旋回体3、アタッチメント)の動作を制御し、自動運転機能を実現することができる。
図2に示すように、油圧制御弁33は、操作装置26とシャトル弁32とを接続するパイロットライン27Aに設けられる。油圧制御弁33は、例えば、その流路面積を変更できるように構成される。油圧制御弁33は、コントローラ30から入力される制御信号に応じて動作する。これにより、コントローラ30は、オペレータにより操作装置26が操作されている場合に、操作装置26から出力されるパイロット圧を強制的に減圧させることができる。そのため、コントローラ30は、操作装置26が操作されている場合であっても、操作装置26の操作に対応する油圧アクチュエータの動作を強制的に抑制させたり停止させたりすることができる。また、コントローラ30は、例えば、操作装置26が操作されている場合であっても、操作装置26から出力されるパイロット圧を減圧させ、油圧制御弁31から出力されるパイロット圧よりも低くすることができる。そのため、コントローラ30は、油圧制御弁31及び油圧制御弁33を制御することで、例えば、操作装置26の操作内容とは無関係に、所望のパイロット圧をコントロールバルブ17内の制御弁のパイロットポートに確実に作用させることができる。よって、コントローラ30は、例えば、油圧制御弁31に加えて、油圧制御弁33を制御することで、ショベル100の自動運転機能や遠隔操作機能をより適切に実現することができる。
図2、図3に示すように、本実施形態に係るショベル100の制御系は、コントローラ30と、演算装置30Eと、周囲情報取得装置40と、記憶装置45,47と、表示装置50と、入力装置52と、通信装置60と、ブーム角度センサS1と、アーム角度センサS2と、バケット角度センサS3と、機体傾斜センサS4と、旋回状態センサS5とを含む。また、図2に示すように、本実施形態に係るショベル100の制御系は、操作装置26が油圧パイロット式である場合、操作圧センサ29を含む。
コントローラ30は、ショベル100に関する各種制御を行う。コントローラ30の機能は、任意のハードウェア、或いは、任意のハードウェア及びソフトウェアの組み合わせ等により実現されてよい。例えば、コントローラ30は、CPU(Central Processing Unit)と、RAM(Random Access Memory)等のメモリ装置と、ROM(Read Only Memory)等の不揮発性の補助記憶装置と、各種入出力用のインタフェース装置等を含むコンピュータを中心に構成される。コントローラ30は、例えば、補助記憶装置にインストールされるプログラムをCPU上で実行することにより各種機能を実現する。
例えば、コントローラ30は、上述の如く、油圧制御弁31を制御対象として、ショベル100の遠隔操作機能に関する制御を行ってよい。
また、例えば、コントローラ30は、上述の如く、油圧制御弁31を制御対象として、ショベル100の自動運転機能に関する制御を行ってよい。具体的には、コントローラ30は、演算装置30Eの演算結果、即ち、演算装置30Eにより生成される自動運転機能に関する操作指令に基づき、上述の如く、油圧制御弁31を制御し、ショベル100の被駆動要素(油圧アクチュエータ)の少なくとも一つを自動で駆動させてよい。
尚、コントローラ30の機能の一部は、他のコントローラ(制御装置)により実現されてもよい。即ち、コントローラ30の機能は、複数のコントローラにより分散して実現される態様であってもよい。
演算装置30Eは、コントローラ30の制御下で、コントローラ30の各種機能に関する演算処理を行う。演算装置30Eの機能は、任意のハードウェア、或いは、任意のハードウェア及びソフトウェアの組み合わせにより実現されてよい。例えば、演算装置30Eは、GPU(Graphical Processing Unit),ASIC(Application Specific Integrated Circuit),FPGA(field-programmable gate array)等のハードウェアを含み、高速演算処理を実現する。
演算装置30Eは、周囲認識部301と、目標軌道演算部302と、操作指令生成部303とを含む。
尚、演算装置30Eの機能は、コントローラ30に組み込まれてもよい。
周囲情報取得装置40は、ショベル100の周囲の状況に関する情報(以下、「周囲情報」)を取得する。周囲情報取得装置40は、取得した周囲情報を演算装置30Eに出力し、周囲情報は、演算装置30Eに取り込まれる。
周囲情報取得装置40は、例えば、単眼カメラ、ステレオカメラ、デプスカメラ等の撮像装置を含む。撮像装置は、周囲情報として、ショベル100の周囲の様子を表す画像情報(撮像画像)を取得する。また、撮像装置は、撮像画像に基づき、周囲情報として、所定の撮像範囲(画角)内におけるショベル100の周囲の物体の位置及び外形を表す三次元データ(例えば、点群データやサーフェスデータ)を取得してもよい。
また、周囲情報取得装置40は、例えば、LIDAR(Light Detecting and Ranging)、ミリ波レーダ、超音波センサ、赤外線センサ、距離画像センサ等の距離センサを含んでもよい。距離センサは、周囲情報として、所定の検知範囲内におけるショベル100の周囲の物体の位置及び形状を表す三次元データを取得してよい。
周囲情報取得装置40は、例えば、図1に示すように、キャビン10の上面前端に取り付けられ、エンドアタッチメント(バケット6)の作業範囲を含む上部旋回体3の前方の周囲情報を取得する。これにより、演算装置30Eは、周囲情報に基づき、ショベル100の前方の状況を認識することができる。また、演算装置30Eは、周囲情報から認識されるショベル100の周囲の物体の位置や見え方の変化等に基づき、ショベル100の位置や上部旋回体3の旋回状態等を認識することができる。また、周囲情報取得装置40の周囲情報の取得範囲(例えば、撮像装置の撮像範囲や距離センサの検知範囲等)には、ブーム4、アーム5、及びエンドアタッチメント(バケット6)、即ち、アタッチメントが含まれる。これにより、演算装置30Eは、周囲情報に基づき、アタッチメントの姿勢状態(例えば、ブーム4、アーム5、及びバケット6の少なくとも一つの姿勢角)を認識することができる。
また、周囲情報取得装置40は、更に、上部旋回体3の左方、右方、及び後方のうちの少なくとも一つに関する周囲情報を取得可能に構成されてもよい。
記憶装置45,47には、演算装置30Eで用いられる各種データが記憶される。
記憶装置45には、演算装置30Eで用いられる各種の静的データ或いは準静的データが予め登録される。静的データは、基本的に変化しないデータである。また、準静的データは、ショベル100の稼働中に変化しないデータであって、事後的に登録変更は可能なデータである。記憶装置45には、例えば、アタッチメント(ブーム4、アーム5、及びエンドアタッチメント)の外形形状に関するデータ(以下、「外形形状データ」)が記憶されてよい。アタッチメントの外形形状データには、バケット6の外形形状データだけでなく、他の種類のエンドアタッチメントの外形形状データが含まれてよい。また、記憶装置45には、ショベル100の識別情報が記憶されてもよい。ショベル100の識別情報は、例えば、ショベル100ごとに固有の機体番号やID(Identifier)である。また、記憶装置45には、ショベル100を操縦するオペレータの識別情報が登録されてもよい。ショベル100を操縦するオペレータは、複数であってよく、それぞれの識別情報が登録されてもよい。オペレータの識別情報は、オペレータごとに固有のID(Identifier)等である。
記憶装置47には、演算装置30Eで用いられる各種の動的データが時系列的に蓄積される。記憶装置47には、例えば、周囲情報取得装置40により取得される周囲情報が時系列的に蓄積される。周囲情報は、周囲情報取得装置40によって記憶装置47に記憶させる(書き込む)処理が行われてもよいし、他の装置(例えば、演算装置30E)によって当該処理が行われてもよい。
尚、記憶装置45,47の少なくとも一方は、演算装置30Eの内部に搭載されてもよい。また、記憶装置45,47は、一の記憶装置に統合されてもよい。
表示装置50は、キャビン10内の着座したオペレータから視認し易い場所に設けられ、各種情報画像を表示する。表示装置50は、例えば、液晶ディスプレイや有機EL(Electroluminescence)ディスプレイである。
入力装置52は、キャビン10内の着座したオペレータに近接する範囲に設けられ、オペレータによる各種入力を受け付け、受け付けられる入力に対応する信号は、コントローラ30に取り込まれる。
例えば、入力装置52は、操作入力を受け付ける操作入力装置である。入力装置52(操作入力装置)は、表示装置50に実装されるタッチパネル、表示装置50の周囲に設置されるタッチパッド、ボタンスイッチ、レバー、トグル、操作装置26に設けられるノブスイッチ等のハードウェアによる操作入力手段を含んでよい。また、入力装置52(操作入力装置)は、表示装置50に表示される各種操作画面に表示される仮想的な操作対象(例えば、操作アイコン)等のハードウェアの操作入力手段によって操作可能なソフトウェアの操作入力手段を含んでもよい。
また、例えば、入力装置52は、オペレータの音声入力を受け付ける音声入力装置であってもよい。音声入力装置は、例えば、マイクロフォンを含む。
また、例えば、入力装置52は、オペレータのジェスチャ入力を受け付けるジェスチャ入力装置であってもよい。ジェスチャ入力装置は、例えば、キャビン10内に設置される撮像装置を含む。
入力装置52は、玉掛け支援スイッチ52aを含む。
玉掛け支援スイッチ52aは、フック80の吊荷に対する位置合わせを自動で行う機能(以下、「玉掛け支援機能」)をオペレータがショベル100に実行させるために用いられる。コントローラ30は、玉掛け支援スイッチ52aがON操作されると、演算装置30Eの演算結果(即ち、油圧アクチュエータの操作指令)に基づき、油圧制御弁31を制御し、ショベル100に玉掛け支援機能を実現する。詳細は、後述する(図4〜図9参照)。
尚、玉掛け支援スイッチ52aに代えて、或いは、加えて、音声入力やジェスチャ入力等によって玉掛け支援機能を作動させる手段が設けられてもよい。
図3に示すように、操作圧センサ29は、油圧パイロット式の操作装置26の二次側(パイロットライン27A)のパイロット圧、即ち、操作装置26におけるそれぞれの被駆動要素(油圧アクチュエータ)の操作状態に対応するパイロット圧を検出する。操作圧センサ29による操作装置26における下部走行体1、上部旋回体3、ブーム4、アーム5、及びバケット6等に関する操作状態に対応するパイロット圧の検出信号は、コントローラ30に取り込まれる。
通信装置60は、通信回線NWに接続し、ショベル100の外部の装置(例えば、管理装置200や支援装置300)と通信を行う。通信装置60は、例えば、4G(4th Generation)や5G(5th Generation)等の規格に準拠する移動体通信モジュールであってよい。また、通信装置60は、例えば、衛星通信モジュールであってもよい。また、通信装置60は、例えば、WiFi通信モジュールやブルートゥース通信モジュール等であってもよい。
ブーム角度センサS1は、所定基準(例えば、水平面やブーム4の可動角度範囲の両端の何れかの状態等)に対するブーム4の姿勢角度(以下、「ブーム角度」)に関する検出情報を取得する。ブーム角度センサS1は、例えば、ロータリエンコーダ、加速度センサ、角速度センサ、六軸センサ、IMU(Inertial Measurement Unit)等を含んでよい。また、ブーム角度センサS1は、ブームシリンダ7の伸縮位置を検出可能なシリンダセンサを含んでもよい。
アーム角度センサS2は、所定基準(例えば、ブーム4の両端の連結点間を結ぶ直線やアーム5の可動角度範囲の両端の何れかの状態等)に対するアーム5の姿勢角度(以下、「アーム角度」)に関する検出情報を取得する。アーム角度センサS2は、例えば、ロータリエンコーダ、加速度センサ、角速度センサ、六軸センサ、IMU等を含んでよい。また、アーム角度センサS2は、アームシリンダ8の伸縮位置を検出可能なシリンダセンサを含んでもよい。
バケット角度センサS3は、所定基準(例えば、アーム5の両端の連結点間を結ぶ直線やバケット6の可動角度範囲の両端の何れかの状態等)に対するバケット6の姿勢角度(以下、「バケット角度」)に関する検出情報を取得する。バケット角度センサS3は、例えば、ロータリエンコーダ、加速度センサ、角速度センサ、六軸センサ、IMU等を含んでよい。また、バケット角度センサS3は、バケットシリンダ9の伸縮位置を検出可能なシリンダセンサを含んでもよい。
機体傾斜センサS4は、下部走行体1及び上部旋回体3を含む機体の傾斜状態に関する検出情報を取得する。機体傾斜センサS4は、例えば、上部旋回体3に搭載され、上部旋回体3の前後方向及び左右方向の傾斜角度(以下、「前後傾斜角度」及び「左右傾斜角度」)に関する検出情報を取得する。機体傾斜センサS4は、例えば、加速度センサ(傾斜センサ)、角速度センサ、六軸センサ、IMU等を含んでよい。
旋回状態センサS5は、上部旋回体3の旋回状態に関する検出情報を取得する。旋回状態センサS5は、例えば、所定基準(例えば、下部走行体1の前進方向と上部旋回体3の前方とが一致する状態)に対する上部旋回体3の旋回角度に関する検出情報を取得する。旋回状態センサS5は、例えば、ポテンショメータ、ロータリエンコーダ、レゾルバ等を含む。
また、機体傾斜センサS4の構成要素(例えば、六軸センサやIMU等)によって、上部旋回体3の傾斜角度だけでなく、旋回角度も含む上部旋回体3の姿勢状態に関する検出情報を取得可能な場合、旋回状態センサS5は、省略されてもよい。
また、例えば、ショベル100には、更に、自機の絶対位置を測位可能な測位装置が搭載されていてもよい。測位装置は、例えば、GNSS(Global Navigation Satellite System)センサである。これにより、ショベル100の姿勢状態の推定精度を向上させることができる。
また、センサS1〜S5は、省略されてもよい。周囲情報取得装置40により取得される周囲情報には、機体(上部旋回体3)から見た周囲の物体やアタッチメントの位置や形状等に関する情報が含まれ、要求される精度によっては、その周囲情報からショベル100の姿勢状態を推定することも可能だからである。
周囲認識部301(認識部の一例)は、ショベル100の周囲の状況を認識する。ショベル100の周囲の状況には、ショベル100の周囲の物体の位置及び形状が含まれる。ショベル100の周囲の物体には、例えば、地面、土砂、吊荷、電柱、柵、ロードコーン、仮設事務所等の建物、建設機械、作業車両等が含まれてよい。具体的には、周囲認識部301は、所定の制御周期(以下、単に「制御周期」)ごとに、周囲情報取得装置40の出力に基づき、ショベル100の周囲の状況を認識してよい。
目標軌道演算部302(目標軌道生成部の一例)は、自動運転機能によって実現される、ショベル100のアタッチメントの所定の作業部位の軌道の目標(以下、「目標軌道」)を演算(生成)する。作業部位は、例えば、バケット6の爪先、バケット6の背面、フック80(の先端部)等である。具体的には、目標軌道演算部302は、制御周期ごとに、アタッチメントの作業部位の目標軌道を生成し、出力する。
操作指令生成部303(動作制御部の一例)は、自動運転機能に関する操作指令を生成する。具体的には、操作指令生成部303は、センサS1〜S5(フック位置情報取得部の一例)や周囲情報取得装置40(フック位置情報取得部の一例)の出力に基づき、アタッチメントの作業部位(例えば、フック80)の位置を把握しながら、アタッチメントの作業部位を目標軌道に沿って移動させるための操作指令を生成し、コントローラ30に出力する。これにより、操作指令生成部303は、コントローラ30を介して、アタッチメントの作業部位が目標軌道に沿って移動するように、アタッチメント、下部走行体1、及び上部旋回体3の少なくとも一つの動作を自動で制御することができる。
<管理装置の構成>
図2、図3に示すように、管理装置200は、制御装置210と、通信装置220と、入力装置230と、表示装置240とを含む。
制御装置210は、管理装置200に関する各種制御を行う。制御装置210の機能は、任意のハードウェア、或いは、任意のハードウェア及びソフトウェアの組み合わせ等により実現される。制御装置210は、例えば、CPU、RAM等のメモリ装置、ROM等の不揮発性の補助記憶装置、及び各種入出力用のインタフェース装置等を含むコンピュータを中心に構成される。制御装置210は、例えば、補助記憶装置にインストールされるプログラムをCPU上で実行することにより各種機能を実現する。
例えば、制御装置210は、通信装置220によりショベル100から受信される情報を取得し、データベースを構築したり、所定の加工を施して加工情報を生成したりする処理を行ってよい。
また、例えば、制御装置210は、通信装置220により支援装置300から受信される要求信号(以下、「情報提供要求信号」)に応じて、各種情報を通信装置220から支援装置300に配信してよい。配信対象の情報には、ショベル100から管理装置200にアップロードされる情報や上記の加工情報等が含まれてよい。
また、例えば、制御装置210は、ショベル100の遠隔操作に関する制御を行う。制御装置210は、遠隔操作装置で受け付けられるショベル100の遠隔操作に関する操作入力の信号を取り込み、通信装置320を用いて、操作入力の内容、即ち、ショベル100の遠隔操作の内容を表す遠隔操作信号をショベル100に送信してよい。また、制御装置210は、入力装置230で受け付けられるショベル100の玉掛け支援機能の実行を要求する入力(以下、「玉掛け支援要求入力」)の信号を取り込み、通信装置220を用いて、玉掛け支援機能の実行を要求する信号(以下、「玉掛け支援要求信号」)をショベル100に送信してもよい。これにより、ショベル100のコントローラ30は、通信装置60により受信される管理装置200からの玉掛け支援要求信号に応じて、玉掛け支援機能を実行する。
また、例えば、制御装置210は、補助記憶装置にインストールされるプログラムをCPU上で実行することにより実現される機能部として、学習部2101を含む。また、制御装置210は、学習モデル記憶部2102等を利用する。学習モデル記憶部2102は、例えば、制御装置210の内部の補助記憶装置や制御装置210と通信可能に接続される外部記憶装置等により実現されてよい。
学習部2101は、ショベル100のアタッチメントの作業部位の軌道に関する機械学習を行い、学習済みのモデル(以下、「学習モデル」)を生成する。学習部2101は、例えば、クレーン作業におけるフック80の軌道に関する機械学習を行い、吊荷の位置や形状等を入力としてフック80の目標軌道を出力する学習モデルを生成してよい。また、学習部2101は、最新の学習モデルに基づき、追加学習を行うことにより、学習モデルを更新してもよい。
具体的には、学習部2101は、熟練のオペレータの操作によるアタッチメントの作業部位の軌道に関するデータを教師データとして、教師あり学習を行い、アタッチメントの作業部位の目標軌道を出力する学習モデルを生成してよい。また、学習部2101は、コンピュータシミュレーションによるアタッチメントの作業部位の軌道に関するデータに基づき、強化学習を行い、アタッチメントの目標軌道を出力する学習モデルを生成してもよい。
学習部2101により生成される学習モデル記憶部2102に記憶される。
学習モデル記憶部2102には、学習モデルが記憶される。また、学習モデル記憶部2102には、対象となる作業ごとに、複数の種類の学習モデルが記憶されてもよい。また、学習モデル記憶部2102の学習モデルは、学習部2101により適宜更新されてもよい。
学習モデル記憶部2102に記憶される最新の学習モデルは、通信装置220を通じて、ショベル100に配信される。これにより、ショベル100(目標軌道演算部302)は、学習モデルを用いて、目標軌道を演算(生成)することができる。
通信装置220は、通信回線NWに接続し、管理装置200の外部(例えば、ショベル100や支援装置300)と通信を行う。
入力装置230は、管理装置200の管理者や作業者等からの入力を受け付け、入力(例えば、操作入力や音声入力等)の内容を表す信号を出力する。入力の内容を表す信号は、制御装置210に取り込まれる。
入力装置230には、例えば、遠隔操作装置が含まれてよい。これにより、管理装置200の作業者(オペレータ)は、遠隔操作装置を用いて、ショベル100の遠隔操作を行うことができる。また、入力装置230には、例えば、管理装置200の作業者(オペレータ)が玉掛け支援要求入力を行うための入力手段が含まれてもよい。これにより、管理装置200の作業者(オペレータ)は、ショベル100の外部から玉掛け支援機能を実行させることができる。
表示装置240は、管理装置200に関する各種情報画像を表示する。表示装置240は、例えば、遠隔操作用表示装置を含んでよく、遠隔操作用表示装置には、制御装置210の制御下で、ショベル100からアップロードされるショベル100の周囲の画像情報が表示されてよい。これにより、管理装置200の作業者(オペレータ)は、遠隔操作用表示装置に表示されるショベル100の周囲の画像情報を確認しながら、ショベル100の遠隔操作を行うことができる。
<支援装置の構成>
図2、図3に示すように、支援装置300は、制御装置310と、通信装置320と、入力装置330と、表示装置340とを含む。
制御装置310は、支援装置300に関する各種制御を行う。制御装置310の機能は、任意のハードウェア、或いは、任意のハードウェア及びソフトウェアの組み合わせ等により実現される。制御装置310は、例えば、CPU、RAM等のメモリ装置、ROM等の不揮発性の補助記憶装置、及び各種入出力用のインタフェース装置等を含むコンピュータを中心に構成される。制御装置310は、例えば、補助記憶装置にインストールされるプログラムをCPU上で実行することにより各種機能を実現する。
例えば、制御装置310は、ユーザからの所定の入力に応じて、管理装置200に情報提供要求信号を送信してよい。
また、例えば、制御装置310は、管理装置200から配信される各種情報を表示装置340に表示させてよい。
また、例えば、制御装置310は、ショベル100の遠隔操作に関する制御を行う。制御装置310は、遠隔操作装置で受け付けられるショベル100の遠隔操作に関する操作入力の信号を取り込み、通信装置320を用いて、操作入力の内容、即ち、ショベル100の遠隔操作の内容を表す遠隔操作信号をショベル100に送信してよい。また、制御装置310は、入力装置330で受け付けられるショベル100の玉掛け支援機能の実行を要求する入力の信号を取り込み、通信装置320を用いて、玉掛け支援機能の実行を要求する信号(玉掛け支援要求信号)を送信してもよい。遠隔操作信号や玉掛け支援要求信号は、直接、ショベル100に送信されてもよいし、管理装置200経由でショベル100に送信されてもよい。これにより、ショベル100のコントローラ30は、通信装置60により受信される支援装置300からの玉掛け支援要求信号に応じて、玉掛け支援機能を実行する。
通信装置320は、通信回線NWに接続し、支援装置300の外部(例えば、ショベル100や支援装置300)と通信を行う。
入力装置330は、支援装置300のユーザからの入力を受け付け、入力(例えば、操作入力や音声入力等)の内容を表す信号を出力する。入力の内容を表す信号は、制御装置310に取り込まれる。
入力装置330には、例えば、遠隔操作装置が含まれてよい。これにより、支援装置300のユーザ(オペレータ)は、遠隔操作装置を用いて、ショベル100の遠隔操作を行うことができる。また、入力装置330には、例えば、支援装置300のユーザ(オペレータ)が玉掛け支援要求入力を行うための入力手段を含んでもよい。これにより、支援装置300のユーザ(オペレータ)は、ショベル100の外部から玉掛け支援機能を実行させることができる。
表示装置340は、支援装置300に関する各種情報画像を表示する。表示装置340は、例えば、遠隔操作用表示装置を含んでよく、遠隔操作用表示装置には、制御装置210の制御下で、ショベル100の周囲の画像情報が表示されてよい。ショベル100の周囲の画像情報は、ショベル100から支援装置300に直接送信されてもよいし、ショベル100から管理装置200経由で支援装置300に送信されてもよい。これにより、支援装置300の作業者(オペレータ)は、遠隔操作用表示装置に表示されるショベル100の周囲の画像情報を確認しながら、ショベル100の遠隔操作を行うことができる。
[玉掛け支援機能の概要]
次に、図4、図5を参照して、ショベル100の玉掛け支援機能の概要について説明する。
図4、図5は、ショベル100の玉掛け支援機能に関する動作の状況を示す図である。
尚、図4、図5では、フック80の描画が省略されている。
ショベル100の玉掛け支援機能は、例えば、上述の如く、玉掛け支援スイッチ52aの操作(所定のトリガの一例)に応じて開始される。また、ショベル100の玉掛け支援機能は、例えば、上述の如く、管理装置200や支援装置300からの玉掛け支援要求信号の受信(所定のトリガ)に応じて開始されてもよい。
まず、図4に示すように、演算装置30E(周囲認識部301)は、ショベル100の周囲(前方)の吊り上げ対象の吊荷SLを認識する。また、周囲認識部301は、吊り上げ対象の吊荷SLに加えて、吊荷SLに設置される玉掛け用具STを認識してもよい。具体的には、周囲認識部301は、周囲情報取得装置40(例えば、撮像装置)により取得されるショベル100の前方の周囲情報に基づき、ショベル100の前方の吊り上げ対象の吊荷SLや玉掛け用具STを認識してよい。
続いて、図5に示すように、コントローラ30は、ショベル100が吊荷SLに正対している状態で、演算装置30Eと協働して、ブーム4、アーム5、及びバケット6の少なくとも一つを自動で動作させ、バケット6(フック80の設置部位)を吊荷SLに近づける。ショベル100が吊荷SLに正対している状態は、ショベル100を上面視で見たときに、ショベル100の向き(アタッチメントが延び出す方向)の延長線上に吊荷SLが存在する状態を意味する。そして、コントローラ30及び演算装置30Eは、吊荷SLに対してフック80を位置合わせする。具体的には、演算装置30E(操作指令生成部303)は、操作指令を生成し、コントローラ30に出力する。そして、コントローラ30は、当該操作指令に応じて、制御信号を油圧制御弁31に出力することで、フック80を吊荷に近づけ、吊荷SLに対するフック80の位置合わせを行う。即ち、演算装置30E(操作指令生成部303)は、ショベル100が吊荷SLに正対している状態で、コントローラ30を介して、吊荷SLに対してフック80を位置合わせするように、アタッチメント(ブーム4、アーム5、及びバケット6の少なくとも一つ)の動作を自動で制御する。
例えば、コントローラ30及び演算装置30Eは、フック80を吊荷SLの上方の所定の位置に位置合わせする。所定の位置は、玉掛け用具の吊部をフック80に引っ掛けることが可能で、且つ、吊荷SLと接触しない高さに相当する。これにより、例えば、キャビン10のオペレータは、玉掛け支援スイッチ52aの操作後、フック80の位置合わせが完了すると、キャビン10から降車して吊荷SLの玉掛け作業を行った後、キャビン10に戻り、ショベル100のクレーン作業に移行することができる。また、支援装置300のユーザ(例えば、作業者)は、玉掛け支援要求入力を行った後、フック80の位置合わせが完了すると、吊荷SLの玉掛け作業を行った後、支援装置300を用いた遠隔操作によるショベル100のクレーン作業に移行することができる。そのため、ショベル100のオペレータの他に、玉掛け作業時のショベル100の誘導を行う作業者等を配置する必要が無く、最低限の要員でショベル100のクレーン作業を完了させることができる。よって、作業現場の作業効率を向上させることができる。
また、例えば、玉掛け用具STが自立式である場合、コントローラ30及び演算装置30Eは、更に、フック80を吊荷SLの玉掛け用具STの吊部に自動で引っ掛けるように移動させて、自動で吊荷SLを吊り上げてもよい。自立式とは、フック80の引っ掛ける吊部が自立した状態を維持可能な玉掛け用具STである。自立式の玉掛け用具STには、例えば、アイボルトが含まれる。また、自立式の玉掛け用具STには、例えば、通常は、伏せられた状態にあり、クレーン作業に合わせて自律的に起立することが可能な専用の治具が含まれてもよい。当該治具は、例えば、アクチュエータを搭載し、ショベル100からの信号に基づき、クレーン作業の実施を判断し、自律的に起伏する態様であってよい。これにより、キャビン10のオペレータや支援装置300のユーザは、玉掛け作業を自ら行うことなく、ショベル100に自動で玉掛け作業を行わせ、連続的にショベル100のクレーン作業に移行することができる。また、管理装置200の作業者等は、自立式の玉掛け用具が予め設置されることを前提に、追加の要員なしで遠隔地からショベル100にクレーン作業を行わせることができる。そのため、作業現場の作業効率を更に向上させることができる。
[玉掛け支援機能に関する制御処理]
次に、図6〜図9を参照して、ショベル100の玉掛け支援機能に関する制御処理について説明する。
<玉掛け支援機能に関する制御処理の第1例>
図6は、コントローラ30及び演算装置30Eによる玉掛け支援機能に関する制御処理の第1例を概略的に示すフローチャートである。本フローチャートの処理は、玉掛け支援スイッチ52aのON操作される場合に開始される。また、本フローチャートの処理は、通信装置60により玉掛け支援要求信号が受信される場合に開始されてもよい。以下、図7〜図9のフローチャートについても同様である。
ステップS102にて、演算装置30Eの周囲認識部301は、最新の周囲情報を取得する。
演算装置30Eは、ステップS102の処理が完了すると、ステップS104に進む。
ステップS104にて、周囲認識部301は、吊り上げ可能な対象物(吊荷SL)の認識があるか否かを判定する。周囲認識部301は、例えば、玉掛け用具が設定されている物体を認識した場合、当該物体を対象物(吊荷SL)と判定してよい。また、周囲認識部301は、例えば、ショベル100が対象物に正対し且つ対象物がフック80を移動させることが可能な範囲(以下、「フック移動可能範囲」)内にある場合に、吊り上げ可能な対象物であると判定してよい。フック移動可能範囲は、例えば、上部旋回体3の旋回軸を中心とする径方向において、アタッチメントの関節の可動範囲に基づき規定されてよい。また、フック移動可能範囲は、アタッチメントの関節の可動範囲に加えて、ショベル100の静的な姿勢安定度を考慮して、規定されてもよい。アタッチメントの先端部が機体から離れるにつれて、機体を転倒させようとするモーメントが大きくなるからである。
周囲認識部301は、吊り上げ可能な対象物(吊荷SL)を認識している場合、ステップS106に進み、吊り上げ可能な対象物を認識していない場合、今回のフローチャートの処理を終了する。
ステップS106にて、演算装置30Eの目標軌道演算部302は、最新の周囲情報に基づき、認識した対象物(吊荷SL)の形状、及びショベル100に対する相対位置を取得(計測)する。対象物のショベル100に対する相対位置は、例えば、上部旋回体3に対する相対位置であってもよいし、アタッチメント(フック80)に対する相対位置であってもよいし、その両方であってもよい。
演算装置30Eは、ステップS106の処理が完了すると、ステップS108に進む。
ステップS108にて、演算装置30Eの目標軌道演算部302は、ステップS106で取得される対象物の形状やショベル100に対する相対位置に基づき、フック80の現在位置から対象物(吊荷SL)の上方の所定位置までの目標軌道を生成する。例えば、目標軌道演算部302は、管理装置200から配信される学習モデルを用いて、フック80を対象物に対して位置合わせする目標軌道を生成してよい。
演算装置30Eは、ステップS108の処理が完了すると、ステップS110に進む。
ステップS110にて、コントローラ30及び演算装置30Eは、協働して、フック80を対象物の上方の所定位置まで移動させる。具体的には、演算装置30Eの操作指令生成部303は、ステップS108で生成される目標軌道に基づき、制御周期ごとに、フック80を当該目標軌道で移動させるための操作指令をコントローラ30に出力する。そして、コントローラ30は、制御周期ごとに演算装置30Eから出力される操作指令に応じて、操作指令に応じた制御信号をブーム4、アーム5、及びバケット6の少なくとも一つに対応する油圧制御弁31に出力する。これにより、コントローラ30は、演算装置30Eと協働して、フック80が目標軌道で移動するように、アタッチメントを駆動させることができる。そのため、ショベル100は、フック80を対象物(吊荷SL)の上方の所定位置まで移動させ、対象物に対する位置合わせを完了することができる。
<玉掛け支援機能に関する制御処理の第2例>
図7は、コントローラ30及び演算装置30Eによる玉掛け支援機能に関する制御処理の第2例を概略的に示すフローチャートである。
ステップS202,S204の処理は、図6のステップS102,S104と同じであるため、説明を省略する。
ステップS206にて、玉掛け支援スイッチ52aの操作に基づく玉掛け支援機能の場合、コントローラ30は、演算装置30E(周囲認識部301)の演算結果に基づき、対象物(吊荷SL)の候補を表示装置50(表示部の一例)に表示させる。例えば、コントローラ30は、ショベル100の前方の画像情報を表示装置50に表示させると共に、画像情報に映っている認識済の対象物の候補にマーカ(例えば、枠のアイコン)を重畳して表示させてよい。これにより、キャビン10のオペレータは、演算装置30Eにより認識された対象物の候補を確認し、複数の候補が認識されている場合、入力装置52(入力部の一例)を通じて、適切な対象物(吊荷SL)を選択することができる。
また、管理装置200或いは支援装置300からの玉掛け支援要求信号の受信に基づく玉掛け支援機能の場合、コントローラ30は、通信装置60を通じて、玉掛け支援要求信号の送信元に、ショベル100の画像情報と共に、対象物の候補を表す情報を送信する。これにより、コントローラ30は、管理装置200の表示装置240や支援装置300の表示装置340に対象物の候補を表示させることができる。そのため、管理装置200の作業者等(オペレータ)や支援装置300のユーザ(オペレータ)は、演算装置30Eにより認識された対象物の候補を確認し、複数の候補が認識されている場合、適切な対象物(吊荷SL)を選択することができる。
管理装置200の制御装置210は、入力装置230を通じて、対象物の候補の中から適切な対象物を選択する入力があると、通信装置220を通じて、選択された対象物の候補を含む信号(以下、「選択入力信号」)をショベル100に送信する。支援装置300の場合についても同様である。
ステップS208にて、コントローラ30は、対象物の候補の中から一の候補を選択する選択入力があったか否かを判定する。
具体的には、玉掛け支援スイッチ52aの操作に基づく玉掛け支援機能の場合、コントローラ30は、入力装置52を通じて、対象物の候補の中から一の候補を選択する選択入力が受け付けられたか否かを判定する。
また、管理装置200或いは支援装置300からの玉掛け支援要求信号の受信に基づく玉掛け支援機能の場合、コントローラ30は、通信装置60によって、管理装置200或いは支援装置300から選択入力信号が受信されたか否かを判定する。
コントローラ30は、対象物の候補の中から一の候補を選択する選択入力があった場合、ステップS210に進み、所定時間内に選択入力が無かった場合、今回のフローチャートを終了する。
ステップS210〜S214の処理は、図6のステップS106〜S110と同じであるため、説明を省略する。
このように、本例では、認識された対象物の候補をオペレータ等に提示(表示)し、確認させる。これにより、適切な吊荷SLとは異なる物体が対象物として認識された状態で、玉掛け支援機能が継続される事態を抑制することができる。
<玉掛け支援機能に関する制御処理の第3例>
図8は、コントローラ30及び演算装置30Eによる玉掛け支援機能に関する制御処理の第3例を概略的に示すフローチャートである。
ステップS302,S304の処理は、図6のステップS102,S104と同じであるため、説明を省略する。
尚、ステップS304とステップS306の処理の間に、図7のステップS206,S208と同様の処理が設けられてもよい。
ステップS306にて、演算装置30Eの周囲認識部301は、認識した吊荷SLに設定されている玉掛け用具STが自立式であるか否かを判定する。周囲認識部301は、玉掛け用具STが自立式でない場合、ステップS308に進み、自立式である場合、ステップS314に進む。
尚、ステップS306にて、周囲認識部301は、玉掛け用具STが自立式であるか否かに依らず、認識された玉掛け用具の姿勢状態からフック80を自動で移動させて吊部に引っ掛けることが可能であるか否かを判定してもよい。
ステップS308〜S312の処理は、図6のステップS106〜S110と同じであるため、説明を省略する。
また、ステップS314の処理は、ステップS308と同じ内容であるため、説明を省略する。
演算装置30Eは、ステップS314の処理が完了すると、ステップS316に進む。
ステップS316にて、演算装置30Eの目標軌道演算部302は、ステップS314で取得される対象物の形状やショベル100に対する相対位置に基づき、フック80の現在位置から対象物(吊荷SL)の近傍の所定位置までの目標軌道を生成する。対象物の近傍の所定位置は、フック80を玉掛け用具の吊部に引っ掛けるための移動開始位置に相当する。対象物の近傍の所定位置は、フック80の対象物(吊荷SL)に対する位置合わせだけを行う場合の対象物の上方の所定位置と同じであってもよいし、異なっていてもよい。例えば、目標軌道演算部302は、管理装置200から配信される学習モデルを用いて、フック80を対象物に対して位置合わせする目標軌道を生成してよい。
演算装置30Eは、ステップS316の処理が完了すると、ステップS318に進む。
ステップS318にて、コントローラ30及び演算装置30Eは、協働して、フック80を対象物の近傍の所定位置まで移動させる。
演算装置30Eは、ステップS318の処理が完了すると、ステップS320に進む。
ステップS320にて、演算装置30Eの目標軌道演算部302は、フック80を現在の位置から玉掛け用具の吊部に引っ掛けるように移動させる目標軌道を生成する。例えば、目標軌道演算部302は、フック80を対象物に近づける場合と同様、管理装置200から配信される学習モデルを用いて、フック80を対象物に設置される玉掛け用具の吊部に引っ掛ける目標軌道を生成してよい。
演算装置30Eは、ステップS320の処理が完了すると、ステップS322に進む。
ステップS322にて、コントローラ30及び演算装置30Eは、協働して、フック80を対象物に設置させる玉掛け用具の吊部に引っ掛けるように移動させる。
演算装置30Eは、ステップS322の処理が完了すると、ステップS324に進む。
ステップS324にて、演算装置30Eの周囲認識部301は、最新の周囲情報に基づき、玉掛け用具の吊部にフック80を引っ掛けて、フック80で対象物を吊り上げることができたか否かを判定する。周囲認識部301は、フック80で対象物を吊り上げることができている場合、今回の処理を終了し、フック80で対象物を吊り上げることができていない場合、ステップS316に戻って、ステップS316〜S324の処理を繰り返す。
尚、ステップS324の判定条件が成立せずに、ステップS316〜S324の処理を繰り返し回数は、所定回数以下に制限されてもよい。具体的には、所定回数繰り返された後に、ステップS324の判定条件が成立しない場合、即ち、所定回数の試行によっても、フック80で対象物を吊り上げられない場合、本フローチャートの処理は終了されてよい。
このように、本例では、ショベル100は、玉掛け用具の吊部に自動でフック80を引っ掛けることが可能と判断すると、フック80を吊荷SLに位置合わせするだけでなく、自動でフック80を玉掛け用具の吊部に引っ掛けるように移動させる。これにより、ショベル100は、自動で玉掛け作業を行うことができる。そのため、作業現場の作業効率を更に向上させることができる。
<玉掛け支援機能に関する制御処理の第4例>
図9は、コントローラ30及び演算装置30Eによる玉掛け支援機能に関する制御処理の第4例を概略的に示すフローチャートである。
ステップS402の処理は、図6のステップS102と同じであるため、説明を省略する。
ステップS404にて、演算装置30Eの周囲認識部301は、ショベル100の周囲で対象物(吊荷SL)を認識したか否かを判定する。周囲認識部301は、ショベル100の周囲で対象物を認識している場合、ステップS406に進み、認識していない場合、今回のフローチャートの処理を終了する。
尚、ステップS404とステップS406の処理の間に、図7のステップS206,S208に相当する処理が設けられてもよい。
ステップS406にて、周囲認識部301は、認識している対象物がフック80により吊り上げ可能な範囲内、即ち、フック移動可能範囲内にあるか否かを判定する。周囲認識部301は、認識している対象物がフック移動可能範囲内にない場合、ステップS408に進み、フック移動可能範囲内にある場合、ステップS410に進む。
ステップS408にて、コントローラ30及び演算装置30Eは、協働して、ショベル100が対象物に正対する向きで対象物を吊り上げ可能な位置にショベル100を走行移動させる。具体的には、演算装置30Eの目標軌道演算部302は、下部走行体1の走行に関する目標軌道を生成し、操作指令生成部303は、制御周期ごとに、下部走行体1が目標軌道に沿って移動するための操作指令を生成し、コントローラ30に出力する。そして、コントローラ30は、制御周期ごとに演算装置30Eから出力される操作指令に応じて、操作指令に応じた制御信号を下部走行体1に対応する油圧制御弁31に出力する。これにより、コントローラ30は、演算装置30Eと協働して、対象物に正対する向きで対象物を吊り上げ可能な位置にショベル100を走行移動させることができる。
尚、コントローラ30及び演算装置30Eは、例えば、最短の目標軌道で、対象物がフック移動可能範囲内に収まる位置にショベル100を走行移動させた後に、上部旋回体3を旋回させることにより、ショベル100を対象物に正対させてもよい。
演算装置30Eは、ステップS408の処理が完了すると、ステップS414に進む。
一方、ステップS410にて、演算装置30Eの周囲認識部301は、ショベル100が対象物と正対している状態か否かを判定する。周囲認識部301は、ショベル100が対象物と正対していない状態の場合、ステップS412に進み、正対している状態の場合、ステップS414に進む。
ステップS412にて、コントローラ30及び演算装置30Eは、協働して、ショベル100が対象物に正対するように上部旋回体3を旋回させる。具体的には、演算装置30Eの目標軌道演算部302は、フック80の目標軌道を生成し、操作指令生成部303は、制御周期ごとに、フック80が目標軌道に沿って移動するための操作指令を生成し、コントローラ30に出力する。フック80の目標軌道は、例えば、上部旋回体3の向きを対象物の向きに一致させるための旋回動作に際して、対象物を含むショベル100の周囲の物体との当接を回避する目標軌道であってよい。上部旋回体3の旋回動作に伴い、フック80が対象物を含むショベル100の周囲の物体と当接する可能性がない場合、フック80の目標軌道は、上部旋回体3の旋回動作に伴う円軌道である。そして、コントローラ30は、制御周期ごとに演算装置30Eから出力される操作指令に応じて、操作指令に応じた制御信号を上部旋回体3に対応する油圧制御弁31に出力する。また、アタッチメントを動作させる必要がある場合、コントローラ30は、操作指令に応じた制御信号を上部旋回体3に対応する油圧制御弁31に加えて、ブーム4、アーム5、及びバケット6のうちの少なくとも一つに対応する油圧制御弁31に出力する。これにより、コントローラ30は、演算装置30Eと協働して、ショベル100が対象物に正対する状態になるように上部旋回体3を旋回させることができる。
尚、本ステップでは、コントローラ30及び演算装置30Eは、協働して、ショベル100が対象物に正対するように、下部走行体1を信地旋回や超信地旋回させてもよい。
ステップS414〜S418の処理は、図6のステップS106〜S110と同じであるため、説明を省略する。
このように、本例では、演算装置30E(操作指令生成部303)は、対象物(吊荷SL)がフック移動可能範囲内にない場合、対象物がフック移動可能範囲内に入るように自動で下部走行体1を走行させて移動する。また、演算装置30E(操作指令生成部303)は、対象物(吊荷SL)と正対していない場合、コントローラ30を介して、対象物と正対するように上部旋回体3を自動で旋回させる。また、演算装置30E(操作指令生成部303)は、対象物(吊荷SL)と正対していない場合、コントローラ30を介して、対象物と正対するように、下部走行体1を自動で走行させてもよい。即ち、演算装置30E(操作指令生成部303)は、コントローラ30を介して、吊荷SLに対してフック80を位置合わせするように、アタッチメント、下部走行体1、及び上部旋回体3の少なくとも一つの動作を制御する。これにより、ショベル100と吊荷SLの位置関係が適切でない場合であっても、ショベル100の玉掛け支援機能を実現することができる。そのため、ショベル100のオペレータ等の利便性を向上させることができる。また、玉掛け支援機能を実行させるのに際して、オペレータによる玉掛けショベル100と吊荷SLとの間の事前の厳密な位置合わせを要しないため、作業現場の作業効率を更に向上させることができる。
尚、図9のフローチャートは、図6のフローチャートのステップS104に代えて、ステップS404〜S412の処理が追加される形態に相当するが、図8のフローチャートのステップS304に代えて、ステップS404〜S412の処理が追加されてもよい。
[変形・変更]
以上、実施形態について詳述したが、本開示はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された要旨の範囲内において、種々の変形・変更が可能である。
例えば、上述した実施形態では、ショベル100は、下部走行体1、上部旋回体3、ブーム4、アーム5、及びバケット6等の被駆動要素を全て油圧駆動する構成であったが、その一部が電気駆動される構成であってもよい。つまり、上述した実施形態で開示される構成等は、ハイブリッドショベルや電動ショベル等に適用されてもよい。
また、上述した実施形態及び変形例では、ショベル100は、所定のトリガに応じて、吊荷SLに対するフック80の位置合わせを自動で行うが、オペレータの操作を支援(アシスト)する態様で、吊荷SLに対するフック80の位置合わせを行ってもよい。即ち、ショベル100は、上部旋回体3及びアタッチメント(ブーム4、アーム5、バケット6)の少なくとも一つに関する操作に応じて、吊荷SLに対するフック80の位置合わせを行ってもよい。具体的には、演算装置30E(操作指令生成部303)は、玉掛け支援機能の作動中において、オペレータの操作内容をフック80の目標軌道に沿うように調整した操作指令をコントローラ30に出力し、コントローラ30は、当該操作指令に対応する制御信号を油圧制御弁31に出力してよい。これにより、ショベル100は、オペレータの操作をアシストする形態で、玉掛け支援機能を実現することができる。
また、上述した実施形態及び変形例では、ショベル100に玉掛け支援機能が採用されるが、吊荷の吊り上げ作業を行う他の作業機械にも同様の機能が採用されてもよい。例えば、移動式クレーンに、同様の玉掛け支援機能が採用されてもよい。