(57)【要約】【課題】センサを用いずに建設機械による作業の自動化が可能な自動操縦システムを提供することを目的とする。【解決手段】自動操縦システム１は、建設機械１００の操作レバーを動作させるアクチュエータ２１，２２，２３，２４，２５，２６を備える操縦装置２０、建設機械１００に設けられ、アーム部を撮像範囲に含む画像を撮像する撮像装置１０及び操縦装置２０の動作を制御する情報処理装置３０を備え、情報処理装置３０は、関節角推定モデルデータ３３１及び重機操作モデルデータ３３３を記憶する記憶部３３、撮像装置１０による撮像画像と関節角推定モデルデータ３３１に基づいて当該画像の撮像タイミングにおけるアーム部の回動角度を推定し、推定されたアーム部の動作状態と重機操作モデルデータ３３３に基づいて撮像タイミング後の建設機械１００の操作内容を決定する演算部３２等を備える。【選択図】図１
2020159147.tif 000002
【特許請求の範囲】
【請求項１】
腕部を有する建設機械の操作のうち少なくとも前記腕部の操作を自動的に行う自動操縦システムであって、
前記建設機械の操作レバーを動作させる複数のアクチュエータを備える操縦装置と、
前記建設機械に設けられ、前記腕部を撮像範囲に含む画像を撮像する撮像装置と、
前記操縦装置の動作を制御する制御装置とを備え、
前記制御装置は、
前記腕部の動作パターンに関する第１教師データ及び前記動作パターンを前記腕部に行わせる前記建設機械の操作パターンに関する第２教師データを記憶する記憶部と、
前記画像と前記第１教師データに基づいて、前記画像の撮像タイミングにおける前記腕部の動作状態を推定し、推定された前記腕部の動作状態と前記第２教師データに基づいて前記撮像タイミング後の前記建設機械の操作内容を決定する演算部と、
前記操作内容を示すデータを前記操縦装置に送信する送信部とを備え、
前記操縦装置は、前記データに基づいて前記複数のアクチュエータの動作を制御する制御部を備える
自動操縦システム。
【請求項２】
前記第１教師データは、前記撮像装置の画角と同様の画角で撮像された複数の画像データと、前記複数の画像データの各々が得られた各タイミングにおける前記腕部の動作状態を示すデータとを含み、
前記演算部は、前記画像を入力とし、前記撮像タイミングにおける前記腕部の動作状態を示すデータを第１出力とし、前記画像と前記複数の画像データの各々との類似の度合いに基づいて前記第１教師データに含まれる前記腕部の動作状態を示すデータの各々と前記第１出力との相関を決定する第１重み付け処理を行うニューラルネットワークを生成する第１処理を行う
請求項１に記載の自動操縦システム。
【請求項３】
前記第２教師データは、前記建設機械を用いて行われる一連の作業中に生じる前記腕部の複数パターンの動作状態を示すデータと、前記複数パターンの動作状態の各々を生じさせる前記操作レバーの各操作内容に対応する前記複数のアクチュエータの各動作制御内容を示すデータとを含み、
前記演算部は、前記第１出力を入力とし、前記撮像タイミング後の前記複数のアクチュエータの動作制御内容を示すデータを第２出力とし、前記第１出力と前記複数パターンの動作状態の各々との類似の度合いに基づいて前記第２教師データに含まれる前記複数のアクチュエータの各動作制御内容と前記第２出力との相関を決定する第２重み付け処理を行うニューラルネットワークを生成する第２処理を行う
請求項２に記載の自動操縦システム。
【請求項４】
前記建設機械は、バックホウであり、
前記一連の作業は、前記バックホウによる地面の掘削である
請求項３に記載の自動操縦システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動操縦システムに関する。
【背景技術】
【０００２】
建設機械を用いた建設作業現場において、作業を自動化したいという需要がある。自動化に利用可能な技術として、バックホウのアームの姿勢を検出するセンサを設けること（特許文献１参照）が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１５９５１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、建設機械にセンサを取り付けても作業を自動化できるわけではない。また、センサを用いずに作業を自動化したいという需要がある。
【０００５】
本開示は、上記に鑑みてなされたものであって、センサを用いずに建設機械による作業の自動化が可能な自動操縦システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本開示の一様態は、腕部を有する建設機械の操作のうち少なくとも前記腕部の操作を自動的に行う自動操縦システムであって、前記建設機械の操作レバーを動作させる複数のアクチュエータを備える操縦装置と、前記建設機械に設けられ、前記腕部を撮像範囲に含む画像を撮像する撮像装置と、前記操縦装置の動作を制御する制御装置とを備え、前記制御装置は、前記腕部の動作パターンに関する第１教師データ及び前記動作パターンを前記腕部に行わせる前記建設機械の操作パターンに関する第２教師データを記憶する記憶部と、前記画像と前記第１教師データに基づいて、前記画像の撮像タイミングにおける前記腕部の動作状態を推定し、推定された前記腕部の動作状態と前記第２教師データに基づいて前記撮像タイミング後の前記建設機械の操作内容を決定する演算部と、前記操作内容を示すデータを前記操縦装置に送信する送信部とを備え、前記操縦装置は、前記データに基づいて前記複数のアクチュエータの動作を制御する制御部を備える自動操縦システムである。
【０００７】
なお、上記の自動操縦システムの様態において、前記第１教師データは、前記撮像装置の画角と同様の画角で撮像された複数の画像データと、前記複数の画像データの各々が得られた各タイミングにおける前記腕部の動作状態を示すデータとを含み、前記演算部は、前記画像を入力とし、前記撮像タイミングにおける前記腕部の動作状態を示すデータを第１出力とし、前記画像と前記複数の画像データの各々との類似の度合いに基づいて前記第１教師データに含まれる前記腕部の動作状態を示すデータの各々と前記第１出力との相関を決定する第１重み付け処理を行うニューラルネットワークを生成する第１処理を行うことが好ましい。
【０００８】
なお、上記の自動操縦システムの様態において、前記第２教師データは、前記建設機械を用いて行われる一連の作業中に生じる前記腕部の複数パターンの動作状態を示すデータと、前記複数パターンの動作状態の各々を生じさせる前記操作レバーの各操作内容に対応する前記複数のアクチュエータの各動作制御内容を示すデータとを含み、前記演算部は、前記第１出力を入力とし、前記撮像タイミング後の前記複数のアクチュエータの動作制御内容を示すデータを第２出力とし、前記第１出力と前記複数パターンの動作状態の各々との類似の度合いに基づいて前記第２教師データに含まれる前記複数のアクチュエータの各動作制御内容と前記第２出力との相関を決定する第２重み付け処理を行うニューラルネットワークを生成する第２処理を行うことが好ましい。
【０００９】
なお、上記の自動操縦システムの様態において、前記建設機械は、バックホウであり、前記一連の作業は、前記バックホウによる地面の掘削であることが好ましい。
【発明の効果】
【００１０】
本開示によれば、センサを用いずに建設機械による作業を自動化できるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、自動操縦システムの主要構成を示すブロック図である。
【図２】図２は、撮像装置が設けられた建設機械の一例であるバックホウの主要構成を示す模式図である。
【図３】図３は、操縦席内の構成例を示す模式図である。
【図４】図４は、操縦装置の主要構成例を示す模式図である。
【図５】図５は、撮像装置によって撮像された画像の一例を示す模式図である。
【図６】図６は、図５の撮像が行われた建設機械の側面図である。
【図７】図７は、図６のアーム部の回動角度の推定イメージを例示した図である。
【図８】図８は、撮像装置によって撮像された画像の他の一例を示す模式図である。
【図９】図９は、図８の撮像が行われた建設機械の側面図である。
【図１０】図１０は、図９のアーム部の回動角度の推定イメージを例示した図である。
【図１１】図１１は、自動操縦システムの動作の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下に、本発明の実施形態について図面に基づいて詳細に説明する。なお、本発明は、以下の実施形態の記載に限定されるものではない。また、以下の実施形態における構成要素には、当業者が置換可能且つ容易なもの、あるいは実質的に同一のものが含まれる。また、以下に記載した構成要素は発明の趣旨を逸脱しない範囲で種々の改変を行ってもよい。さらに、以下に記載した構成要素は適宜組み合わせることが可能である。なお、以下の実施形態の説明において、同一構成には同一符号を付し、異なる構成には異なる符号を付すものとする。
【００１３】
図１は、自動操縦システム１の主要構成を示すブロック図である。自動操縦システム１は、撮像装置１０と、操縦装置２０と、情報処理装置３０とを備える。自動操縦システム１は、建設機械１００を自動的に操縦するシステムである。撮像装置１０及び操縦装置２０は、建設機械１００に着脱可能に設けられる。情報処理装置３０は、撮像装置１０及び操縦装置２０と通信可能に設けられる。情報処理装置３０は、建設機械１００に設けられてもよいし、建設機械１００の外部に設けられてもよい。
【００１４】
まず、建設機械１００及び建設機械１００に設けられる構成について説明する。図２は、撮像装置１０が設けられた建設機械１００の一例であるバックホウの主要構成を示す模式図である。バックホウは、アーム部１１０と、走行部１３０と、ボディ１４０とを備える。
【００１５】
アーム部１１０は、第１アーム１１１と、第２アーム１１２と、ショベル１１３と、アクチュエータ１２１，１２２，１２３とを備える。第１アーム１１１は、ボディ１４０に対して回動可能に連結されている。第１アーム１１１と第２アーム１１２とは、回動可能に連結されている。第２アーム１１２とショベル１１３とは、回動可能に連結されている。アクチュエータ１２１は、ボディ１４０に対する第１アーム１１１の回動角度を変更可能に駆動制御される。アクチュエータ１２２は、第１アーム１１１と第２アーム１１２との回動角度を変更可能に駆動制御される。アクチュエータ１２３は、第２アーム１１２とショベル１１３との回動角度を変更可能に駆動制御される。
【００１６】
走行部１３０は、例えばボディ１４０の下側に設けられた無限軌道であり、建設機械１００を走行可能に支持する。また、走行部１３０とボディ１４０とは旋回機構１３５を介して連結されている。旋回機構１３５は、走行部１３０に対するボディ１４０の水平方向の回転角度を変更可能に駆動制御される。
【００１７】
ボディ１４０は、アクチュエータ１２１，１２２，１２３、走行部１３０、旋回機構１３５等を駆動するためのエンジン等を内蔵する。また、ボディ１４０には操縦席１５０が設けられている。
【００１８】
撮像装置１０は、例えば操縦席１５０の屋根部上側に設けられる。撮像装置１０は、撮像部１１と、通信部１２とを備える。撮像部１１は、例えばＣＣＤ（Charge  Coupled  Device）イメージセンサ又はＣＭＯＳイメージセンサ（Complementary  Metal  Oxide  Semiconductor）のような撮像素子、撮像素子に外光を導くレンズ、撮像素子からの出力に基づいて画像データを生成する画像生成回路、画像データを記憶するフラッシュメモリー等の記憶素子、撮像素子、画像生成回路等を動作させる電池等を備える所謂デジタルカメラである。撮像部１１は、アーム部１１０及びアーム部１１０によって掘削される地面が撮像範囲内に入るよう配置される。通信部１２は、ＮＩＣ（Network  interface  controller）として機能する通信回路等を有し、情報処理装置３０と通信を行う。通信部１２は、撮像部１１の撮像によって得られた画像データを情報処理装置３０に送信する。
【００１９】
図３は、操縦席１５０内の構成例を示す模式図である。操縦席１５０内には、走行レバー１５１，１５２と、作業レバー１５３，１５４と、シート１５５とが設けられている。走行レバー１５１，１５２は、走行部１３０による建設機械１００の走行、旋回（信地旋回又は超信地旋回）、停止の制御を行うためのレバーである。作業レバー１５３，１５４は、アーム部１１０の動作制御及び旋回機構１３５による旋回を行うためのレバーである。走行レバー１５１，１５２は、シート１５５に対してアーム部１１０側に設けられる。作業レバー１５３，１５４は、シート１５５の両脇側前方寄りに設けられる。
【００２０】
走行レバー１５１，１５２は、前後方向の回動角度を操作可能なレバーである。前後方向とは、シート１５５とアーム部１１０との対向方向である。作業レバー１５３，１５４は、前後方向及び左右方向の回動角度を操作可能なレバーである。左右方向とは、前後方向に直交し、かつ、シート１５５が固定される操縦席１５０の床板に沿う方向である。
【００２１】
実施形態では、シート１５５に操縦装置２０が設けられる。図４は、操縦装置２０の主要構成例を示す模式図である。操縦装置２０は、アクチュエータ２１，２２，２３，２４，２５，２６、通信部２７、制御部２８等を備える。
【００２２】
アクチュエータ２１，２２，２３，２４は、例えば直動型のアクチュエータである。アクチュエータ２１の可動部の先端２１１は、走行レバー１５１に連結される。アクチュエータ２２の可動部の先端２２１は、走行レバー１５２に連結される。アクチュエータ２３の可動部の先端２３１は、作業レバー１５３に連結される。アクチュエータ２４の可動部の先端２４１は、作業レバー１５４に連結される。アクチュエータ２１，２２，２３，２４の動作によって先端２１１，２２１，２３１，２４１の前後方向の位置が変化することで、走行レバー１５１，１５２，作業レバー１５３，１５４の前後方向の回動角度が変化する。
【００２３】
アクチュエータ２５，２６は、例えば回動型のアクチュエータである。アクチュエータ２５の回動出力軸は、アクチュエータ２３の基部２３２に連結される。基部２３２は、先端２３１を直動可能に支持する。アクチュエータ２６の回動出力軸は、アクチュエータ２４の基部２４２に連結される。基部２４２は、先端２４１を直動可能に支持する。アクチュエータ２５，２６の回動出力軸は、例えば床板に直交する。アクチュエータ２５の動作によって基部２３２の回動角度が変化することでアクチュエータ２３が左右方向に回動し、先端２３１の左右方向の位置が変化する。アクチュエータ２６の動作によって基部２４２の回動角度が変化することでアクチュエータ２４が左右方向に回動し、先端２４１の左右方向の位置が変化する。
【００２４】
このように、走行レバー１５１，１５２、作業レバー１５３，１５４の前後方向の回動角度の制御は、アクチュエータ２１，２２，２３，２４の直動制御によって行える。また、作業レバー１５３，１５４の左右方向の回動角度の制御は、アクチュエータ２５，２６の回動制御によって行える。
【００２５】
通信部２７は、ＮＩＣとして機能する通信回路等を有し、情報処理装置３０と通信を行う。制御部２８は、通信部２７を介して情報処理装置３０から受信したデータに応じてアクチュエータ２１，２２，２３，２４，２５，２６の動作を制御する。具体的には、制御部２８は、例えば、ＰＬＣ（Programmable  Logic  Controller）、サーボコントローラ、サーボ弁、コンプレッサ、切替弁、ポジションセンサ等を含む。ＰＬＣは、情報処理装置３０から受信したデータに応じてサーボコントローラや切替弁等の動作を制御することで、アクチュエータ２１，２２，２３，２４，２５，２６の動作を制御する。サーボコントローラは、サーボ弁の開度を制御する。コンプレッサは、圧縮空気等、アクチュエータ２１，２２，２３，２４，２５，２６を動作させるための駆動力を与える。切替弁は、アクチュエータ２１，２２，２３，２４，２５，２６のうち、コンプレッサが接続される対象を切り替える。切替弁は、コンプレッサがアクチュエータ２１，２２，２３，２４，２５，２６毎に個別に設けられている場合には省略可能である。サーボ弁は、開度の制御によって、切替弁が設けられた経路を介して供給された駆動力がアクチュエータ（アクチュエータ２１，２２，２３，２４，２５，２６のいずれか）を動作させる度合いを決定可能に設けられる。ポジションセンサは、アクチュエータ（アクチュエータ２１，２２，２３，２４，２５，２６のいずれか）の動作位置を検出する。ポジションセンサの検出結果は、ＰＬＣやサーボコントローラにフィードバックされ、ポジションセンサが設けられたアクチュエータの動作制御に利用される。少なくとも、ポジションセンサ及びサーボ弁はアクチュエータ２１，２２，２３，２４，２５，２６に個別に設けられる。
【００２６】
なお、操縦装置２０の具体的態様は、図４を参照して説明した構成例に限られない。例えば、先端２３１に左右方向の位置の変化を与えるための構成として、アクチュエータ２５に代えて直動型のアクチュエータを設けてもよい。この場合、アクチュエータ２５の回動出力軸と同じ方向の回動軸を中心として回動可能に基部２３２を支持する回動部が設けられる。また、当該回動部を挟んで、先端２３１の反対側に位置する基部２３２の端部と、アクチュエータ２５に代えて設けられた直動型のアクチュエータの可動部とが連結される。当該連結は、例えば鎖等の連結部材を介して行われる。これにより、当該直動型のアクチュエータの直動動作に応じて基部２３２の端部が回動部を中心として左右方向に回動し、当該回動部を挟んで当該端部の反対側で先端２３１の左右方向の位置が変化する。同様の仕組みで、先端２４１に左右方向の位置の変化を与えるための構成として、アクチュエータ２６に代えて直動型のアクチュエータを設けてもよい。
【００２７】
また、通信部２７、制御部２８の具体的形態についても、適宜変更可能である。例えば、通信部２７が設けられている位置に、通信部２７と制御部２８とを統合した統合機能ボックスを設けてもよい。また、コンプレッサ等、上述の説明で制御部２８の一部として説明されている構成を当該統合機能ボックスとは別体のサーボボックスとし、図４における制御部２８の位置に設けてもよい。
【００２８】
次に、情報処理装置３０について説明する。図１に示すように、情報処理装置３０は、通信部３１、演算部３２、記憶部３３等を備え、実施形態における制御装置として機能する。通信部３１は、ＮＩＣとして機能する通信回路等を有し、撮像装置１０の撮像部１１及び操縦装置２０のアクチュエータ２１と通信を行う。撮像部１１と通信部３１との間及びアクチュエータ２１と通信部３１との間の通信回線の具体的形態は、有線、無線及び有線と無線が混在した形態のいずれであってもよい。また、撮像部１１と通信部３１との間及びアクチュエータ２１と通信部３１との間の通信回線に、インターネット等の公衆通信網が含まれていてもよい。
【００２９】
演算部３２は、ＣＰＵ（Central  Processing  Unit）等の演算回路を有し、記憶部３３に記憶されているプログラム、データを読み出して実行処理し、操縦装置２０の動作制御に関する各種の処理を行う。演算部３２は、操縦装置２０の動作制御に関する各種の処理に際して、撮像部１１によって撮像され、通信部１２によって送信され、通信部３１を介して受信された画像データを利用する。演算部３２は、操縦装置２０の動作制御内容を示すデータを通信部３１に送信させる。通信部３１は、演算部３２の制御下で、操縦装置２０の動作制御内容を示すデータを操縦装置２０に送信する。操縦装置２０は、通信部２７を介して受信したデータに応じて、制御部２８がアクチュエータ（例えば、アクチュエータ２１，２２，２３，２４，２５，２６）の動作制御を行って建設機械１００を操縦する。
【００３０】
記憶部３３は、ハードディスクドライブ（ＨＤＤ：Hard  Disk  Drive）、ソリッドステートドライブ（ＳＳＤ：Solid  State  Drive）、フラッシュメモリーその他の記憶装置のいずれかを有し、各種のソフトウェア・プログラム（以下、単にプログラムと記載）及びデータを記憶する。記憶部３３は、例えば、関節角推定モデルデータ３３１、状態推定プログラム３３２、重機操作モデルデータ３３３、動作算出プログラム３３４等を記憶する。その他、図示しないが、記憶部３３は、ＯＳ（Operating  System）等、情報処理装置３０の動作に必要なプログラム等を記憶する。
【００３１】
関節角推定モデルデータ３３１は、撮像装置１０によって撮像されたアーム部１１０の画像に基づいてアーム部１１０の回動角度を推定するための教師データである。具体的には、実施形態の関節角推定モデルデータ３３１は、建設機械１００の操縦を経験済みの操縦者（ヒト）による建設機械１００の操縦に伴って撮像された複数の画像データと、当該複数の画像データの各々が得られたタイミングにおけるアーム部１１０の回動角度を示すデータとを含む。関節角推定モデルデータ３３１において、複数の画像データの各々と当該複数の画像データの各々が得られたタイミングにおけるアーム部１１０の回動角度を示すデータとは対応付けられている。当該複数の画像データは、撮像装置１０と同様の設置条件で設けられた撮像装置による画像データである。すなわち、当該複数の画像データの各々には、アーム部１１０の画像が含まれる。当該複数の画像データの各々は、静止画像データであってもよいし、動画像データに含まれるフレーム画像データであってもよい。
【００３２】
図５は、撮像装置１０によって撮像された画像の一例を示す模式図である。撮像装置１０の撮像部１１が撮像を行うことで、例えば図５に示すような画角でアーム部１１０及び地面を含む画像が得られる。関節角推定モデルデータ３３１に含まれる複数の画像データの各々も、図５に示すような画角でアーム部１１０及び地面を含む画像のデータである。
【００３３】
図６は、図５の撮像が行われた建設機械１００の側面図である。図７は、図６のアーム部１１０の回動角度の推定イメージを例示した図である。例えば、図５の画像が撮像されるタイミングに建設機械１００を側方から見た場合、アーム部１１０は、図６のようになっている。図６におけるアーム部１１０の回動角度を模式化すると、例えば図７及び後述する図１０のように第１アーム１１１、第２アーム１１２、ショベル１１３を線分で表現した線分Ｌ１１１、線分Ｌ１１２、線分Ｌ１１３で表現可能である。図５の状態において、ボディ１４０に対する第１アーム１１１の回動角度（θ１）が回動角度θ１ａである。また、図５の状態において、第１アーム１１１と第２アーム１１２との回動角度（θ２）が回動角度θ２ａである。また、図５の状態において、第２アーム１１２とショベル１１３との回動角度（θ３）が回動角度θ３ａである。
【００３４】
なお、線分Ｌ１１１は、例えばボディ１４０に対する第１アーム１１１の回動連結部１１４と、第１アーム１１１と第２アーム１１２との回動連結部１１５とを結ぶ線分である。線分Ｌ１１２は、回動連結部１１５と、第２アーム１１２とショベル１１３との回動連結部１１６とを結ぶ線分である。線分Ｌ１１３は、回動連結部１１６と、ショベル１１３のショベル先端部１１７とを結ぶ線分である。これらの線分Ｌ１１１，Ｌ１１２，Ｌ１１３の設定例はあくまで一例であってこれに限られるものでなく、適宜変更可能である。
【００３５】
また、アーム部１１０の回動角度が推定されることで、走行部１３０が接地する地面Ｇに対するアーム部１１０の各部の位置も推定可能である。また、図７及び後述する図１０では図示を省略しているが、自動操縦システム１の動作により掘削された孔Ｈとアーム部１１０との位置関係についても、図５及び後述する図８のような撮像画像に基づいて推定可能である。
【００３６】
図８は、撮像装置１０によって撮像された画像の他の一例を示す模式図である。図９は、図８の撮像が行われた建設機械１００の側面図である。図１０は、図９のアーム部１１０の回動角度の推定イメージを例示した図である。撮像装置１０によって撮像されるアーム部１１０の画像や関節角推定モデルデータ３３１に含まれる画像データにおけるアーム部１１０の画像は、図５を参照して説明した例に限られない。例えば図８のように、図５とは異なる状態のアーム部１１０が撮像されうる。無論、アーム部１１０の画像は、図５及び図８の例に限られず、アーム部１１０の可動範囲内であらゆる状態のアーム部１１０が撮像されうる。従って、撮像装置１０によって画像が撮像されるタイミングにおける建設機械１００の状態及びアーム部１１０の回動角度についても、図６及び図７を参照して説明した例に限られず、例えば図９及び図１０のような建設機械１００の状態及びアーム部１１０の回動角度もありうる。図８の状態において、ボディ１４０に対する第１アーム１１１の回動角度（θ１）が回動角度θ１ｂである。また、図８の状態において、第１アーム１１１と第２アーム１１２との回動角度（θ２）が回動角度θ２ｂである。また、図８の状態において、第２アーム１１２とショベル１１３との回動角度（θ３）が回動角度θ３ｂである。
【００３７】
図５が関節角推定モデルデータ３３１に含まれる画像データである場合、アーム部１１０の回動角度を示すデータとして、図７における回動角度θ１ａ，θ２ａ，θ３ａを示すデータが当該画像データと対応付けられる。図８が関節角推定モデルデータ３３１に含まれる画像データである場合、アーム部１１０の回動角度を示すデータとして、図１０における回動角度θ１ｂ，θ２ｂ，θ３ｂを示すデータが当該画像データと対応付けられる。以下、アーム部１１０の回動角度と記載した場合、回動角度θ１，θ２，θ３を全て含むものとする。
【００３８】
状態推定プログラム３３２は、関節角推定モデルデータ３３１と撮像装置１０によって撮像されたアーム部１１０の画像に基づいてアーム部１１０の回動角度を推定するためのプログラムである。具体的には、状態推定プログラム３３２は、演算部３２が画像照合処理と回動角度推定処理とを行うためのプログラムである。画像照合処理は、撮像装置１０によって撮像されたアーム部１１０の画像と、関節角推定モデルデータ３３１に含まれる複数の画像データの各々におけるアーム部１１０の画像とのパターンマッチングを行い、撮像装置１０によって撮像されたアーム部１１０の画像に類似するアーム部１１０の画像を含む画像データを関節角推定モデルデータ３３１に含まれる複数の画像データから抽出する処理である。回動角度推定処理は、画像照合処理によって抽出された画像データと対応付けられたアーム部１１０の回動角度を示すデータに基づいて、アーム部１１０の回動角度を算出する。
【００３９】
状態推定プログラム３３２を実行した演算部３２は、画像照合処理を行い、関節角推定モデルデータ３３１に含まれる複数の画像データから１つ以上の画像データを抽出する。画像照合処理で抽出される画像データは１つであってもよいし、複数であってもよい。
【００４０】
画像照合処理で抽出される画像データが１つである場合、演算部３２は、当該１つの画像データと対応付けられたデータが示すアーム部１１０の回動角度を、回動角度推定処理において推定されたアーム部１１０の回動角度とする。例えば、演算部３２は、画像照合処理で図５に対応する画像データを抽出した場合、回動角度推定処理で回動角度θ１ａ，θ２ａ，θ３ａをアーム部１１０の回動角度として導出する。また、演算部３２は、画像照合処理で図８に対応する画像データを抽出した場合、回動角度推定処理で回動角度θ１ｂ，θ２ｂ，θ３ｂをアーム部１１０の回動角度として導出する。
【００４１】
画像照合処理で抽出される画像データが複数である場合、演算部３２は、撮像装置１０によって撮像されたアーム部１１０の画像との類似の度合いで関節角推定モデルデータ３３１に含まれる複数の画像データの一部又は全部に対して重み付け処理を行う。一例を挙げると、重み付け処理では、撮像装置１０によって撮像されたアーム部１１０の画像により類似するアーム部１１０の画像を含む画像データと対応付けられているアーム部１１０の回動角度を示すデータの反映の度合いが大きくなるよう、複数の画像データの一部又は全部に対する点数の付与が行われる。演算部３２は、回動角度推定処理で、例えば当該点数を係数として、以下の式（１）、式（２）、式（３）に基づいてアーム部１１０の回動角度を算出する。式（１）、式（２）、式（３）では、画像照合処理で抽出される画像データの数がｎである。ｎは、２以上の自然数である。抽出されたｎ個の画像データの各々に重み付けで付与される点数に対応する係数α１，α２，…，αｎは、０から１の範囲内で設定された実数であり、かつ、α１からαｎまでの係数を足し合わせた値が１である。撮像装置１０によって撮像されたアーム部１１０の画像により類似するアーム部１１０の画像を含む画像データほど、１に近い点数（係数）が付与される。θ１ｎ，θ２ｎ及びθ３ｎはそれぞれ、抽出されたｎ個の画像データの各々と対応付けられたアーム部１１０の回動角度に含まれる回動角度θ１，θ２，θ３である。なお、当然であるが、ｎ＝２の場合、式（１）における「…＋αｎ（θ１ｎ）」、式（２）における「…＋αｎ（θ２ｎ）」及び式（３）における「…＋αｎ（θ３ｎ）」は省略されることになる。このように、演算部３２は、状態推定プログラム３３２を実行中の処理において複数のデータに基づいた平均化処理を行ってもよい。
【００４２】
θ１＝｛α１（θ１１）＋α２（θ１２）＋…＋αｎ（θ１ｎ）｝／ｎ…（１）
【００４３】
θ２＝｛α１（θ２１）＋α２（θ２２）＋…＋αｎ（θ１ｎ）｝／ｎ…（２）
【００４４】
θ３＝｛α１（θ３１）＋α２（θ３２）＋…＋αｎ（θ１ｎ）｝／ｎ…（３）
【００４５】
重機操作モデルデータ３３３は、操縦装置２０の動作を制御するための教師データである。具体的には、実施形態の重機操作モデルデータ３３３は、建設機械１００の操縦を経験済みの操縦者（ヒト）による建設機械１００の操縦に伴って測定されたアーム部１１０の回動角度を示すデータと、当該回動角度を示すデータが得られたタイミングにおける操縦装置２０のアクチュエータ（例えば、アクチュエータ２１，２２，２３，２４，２５，２６）の動作位置を示すデータとを含む。関節角推定モデルデータ３３１及び重機操作モデルデータ３３３に含まれるデータは、建設機械１００を利用して行われる一連の作業（例えば、地面の掘削作業）」中に含まれる複数回のタイミングで取得されたデータであり、当該一連の作業の開始から終了までのデータを含む。重機操作モデルデータ３３３において、各タイミングのアーム部１１０の回動角度を示す複数のデータの各々と、各タイミングにおける操縦装置２０のアクチュエータの動作位置を示すデータとは対応付けられている。以下、一連の作業と記載した場合、建設機械１００を利用して行われる一連の作業をさす。重機操作モデルデータ３３３では、一連の作業に含まれる各タイミングのデータは、時系列に沿ったデータの前後関係を把握可能に設けられている。例えば、一連の作業に含まれるｍ回（ｍは、自然数）のタイミングの各々に対応するデータのうち、時間的に最初（１回目）のタイミングのデータの後に２回目のタイミングのデータが続き、ｍが３以上である場合にはその後に３回目のデータのタイミングが続く。このように、ｍ回目までデータの前後関係を把握可能な状態のデータが重機操作モデルデータ３３３として記憶されている。
【００４６】
なお、関節角推定モデルデータ３３１及び重機操作モデルデータ３３３に含まれるデータは、一連の作業１回分のデータに限られない。関節角推定モデルデータ３３１及び重機操作モデルデータ３３３の少なくとも一方は、複数回行われた一連の作業の各々のデータを含んでいてもよい。また、複数回行われた一連の作業は、同一の操縦者（ヒト）によるものでなくともよく、複数の操縦者（ヒト）によるものであってもよい。
【００４７】
動作算出プログラム３３４は、状態推定プログラム３３２の実行処理によって推定されたアーム部１１０の回動角度と重機操作モデルデータ３３３に基づいて操縦装置２０の動作を制御するためのプログラムである。具体的には、動作算出プログラム３３４は、演算部３２が現状抽出処理と動作命令生成処理とを行うためのプログラムである。
【００４８】
現状抽出処理は、状態推定プログラム３３２の実行処理によって推定されたアーム部１１０の回動角度と重機操作モデルデータ３３３に含まれるアーム部１１０の回動角度を示すデータとの比較対照を行う。現状抽出処理は、一連の作業のうちどのタイミングにおけるアーム部１１０の回動角度が状態推定プログラム３３２の実行処理によって推定されたかを抽出する。
【００４９】
動作命令生成処理は、現状抽出処理で抽出されたデータを含む一連の作業のデータのうち、当該抽出されたデータのタイミングの次のタイミングにおけるアーム部１１０の回動角度を示すデータと対応付けられている操縦装置２０のアクチュエータ（例えば、アクチュエータ２１，２２，２３，２４，２５，２６）の動作位置を抽出する。動作命令生成処理は、抽出された動作位置に基づいて操縦装置２０のアクチュエータの動作位置を制御するための命令を含むデータを生成する。演算部３２は、動作命令生成処理で生成されたデータを操縦装置２０の動作制御内容を示すデータとして通信部３１に送信させる。制御部２８は、通信部２７を介して当該操縦装置２０の動作制御内容を示すデータを受信し、当該命令に応じて操縦装置２０のアクチュエータの動作位置を制御する。
【００５０】
なお、動作算出プログラム３３４の実行処理においても、状態推定プログラム３３２の画像照合処理と回動角度算出処理との関係と同様、抽出されるデータが１つであってもよいし、複数であってもよく、複数である場合に平均化処理を行うようにしてもよい。
【００５１】
例えば、現状抽出処理において、状態推定プログラム３３２の実行処理によって推定されたアーム部１１０の回動角度と完全に一致する１つのデータ（又はそうみなせる程度に近似する１つのデータ）が重機操作モデルデータ３３３に含まれている場合を想定する。この場合、演算部３２は、当該１つのデータを含む一連の作業のデータのうち、当該１つのデータのタイミングの次のタイミングにおけるアーム部１１０の回動角度を示すデータと対応付けられている操縦装置２０のアクチュエータ（例えば、アクチュエータ２１，２２，２３，２４，２５，２６）の動作位置を示すデータを抽出する。演算部３２は、抽出された操縦装置２０のアクチュエータの動作位置とするための命令を含むデータを生成する。
【００５２】
一方、上述の回動角度推定処理で説明した平均化処理と同様の考え方で、演算部３２は、動作算出プログラム３３４の実行処理においても、現状抽出処理で複数のデータを抽出して重み付けするようにしてもよい。この場合、演算部３２は、当該複数のデータの各々の次のタイミングの次のタイミングにおけるアーム部１１０の回動角度を示すデータと対応付けられている操縦装置２０のアクチュエータ（例えば、アクチュエータ２１，２２，２３，２４，２５，２６）の動作位置を示すデータを個別に抽出する。演算部３２は、抽出された操縦装置２０のアクチュエータの動作位置を示す複数のデータに重み付けに対応する係数を適用した平均化処理を行い、次のタイミングの操縦装置２０のアクチュエータの動作位置を算出する。演算部３２は、算出された動作位置とするよう操縦装置２０のアクチュエータを制御するための命令を含むデータを生成する。
【００５３】
なお、実施形態では、記憶部３３に記憶されているデータを読み出して行う演算部３２の処理では、ニューラルネットワークを利用した重み付け処理によって求めるデータ（出力）を得られる。
【００５４】
例えば、画像照合処理では、演算部３２は、撮像装置１０からの画像を入力とし、撮像装置１０による画像の撮像タイミングにおける腕部の動作状態（アーム部１１０の回動角度）を示すデータを第１出力としたニューラルネットワークを生成する。当該ニューラルネットワークは、撮像装置１０からの画像と、関節角推定モデルデータ３３１に含まれる複数の画像データの各々との類似の度合いに基づいて上述の式（１）、式（２）、式（３）を参照して説明した係数に対応する点数の決定（重み付け）を行う。ここで、式（１）、式（２）、式（３）の係数は、関節角推定モデルデータ３３１に含まれる腕部の動作状態（アーム部１１０の回動角度）を示すデータと第１出力との関係性の強さの度合いを示す。従って、状態推定プログラム３３２を読み出して行われる演算部３２の実行処理は、関節角推定モデルデータ３３１に含まれる腕部の動作状態（アーム部１１０の回動角度）を示すデータの各々と第１出力との相関を決定する処理（第１重み付け処理）である。また、状態推定プログラム３３２を読み出して行われる演算部３２の実行処理において、関節角推定モデルデータ３３１は、第１教師データとして機能する。
【００５５】
また、現状抽出処理では、演算部３２は、上述の第１出力を入力とし、撮像装置１０による画像の撮像タイミング後の複数のアクチュエータ（例えば、アクチュエータ２１，２２，２３，２４，２５，２６）の動作制御内容を示すデータを第２出力としたニューラルネットワークを生成する。当該ニューラルネットワークは、第１出力と重機操作モデルデータ３３３に含まれる複数パターンの腕部の動作状態（アーム部１１０の回動角度）を示すデータの各々との類似の度合いに基づいて点数の決定（重み付け）を行う。当該点数は、上述の式（１）、式（２）、式（３）を参照して説明した係数に対応する点数と同様、関係性の強さの度合いを示す。当該点数で示される関係性の強さは、重機操作モデルデータ３３３に含まれる複数のアクチュエータの各動作制御内容（動作位置を示すデータ）と第２出力との関係性の強さである。従って、動作算出プログラム３３４を読み出して行われる演算部３２の実行処理は、重機操作モデルデータ３３３に含まれる複数のアクチュエータの各動作制御内容（動作位置を示すデータ）の各々と第２出力との相関を決定する処理（第２重み付け処理）である。また、動作算出プログラム３３４を読み出して行われる演算部３２の実行処理において、重機操作モデルデータ３３３は、第２教師データとして機能する。
【００５６】
このように、演算部３２は、記憶部３３に記憶されているプログラム及びデータに基づいて、ニューラルネットワークを生成する所謂ＡＩ（Artificial  Intelligence）のような振る舞いをする。当該ＡＩによるアーム部１１０の操縦の精度は、関節角推定モデルデータ３３１、重機操作モデルデータ３３３に含まれるデータの量が多く、含まれるデータの元になったアーム部１１０の操縦の精度が高いほど高まる傾向がある。上述の説明では、関節角推定モデルデータ３３１、重機操作モデルデータ３３３に含まれるデータが、ヒトである操縦者による建設機械１００の操縦に基づいたデータであるが、これに限られるものでない。例えば、本実施形態の自動操縦システム１の動作によって行われた建設機械１００の操縦に伴い、撮像装置１０によって撮像された複数の画像と、複数の画像の撮像タイミングの各々におけるアーム部１１０の回動角度と、複数のアクチュエータ（例えば、アクチュエータ２１，２２，２３，２４，２５，２６）の動作位置を示すデータとを関節角推定モデルデータ３３１、重機操作モデルデータ３３３に含ませるようにしてもよい。これにより、自動操縦システム１の実施によって自動操縦システム１の動作の精度をより高めるための機械学習を深化させることができる。なお、上述のニューラルネットワークとして、より発展的なディープラーニングを採用してもよい。
【００５７】
図１１は、自動操縦システム１の動作の流れの一例を示すフローチャートである。まず、撮像装置１０によって画像が撮像され（ステップＳ１）、画像データが撮像装置１０から情報処理装置３０に送信される。演算部３２は、状態推定プログラム３３２を読み出して実行処理し、ステップＳ１で撮像された画像と関節角推定モデルデータ３３１に含まれる複数の画像に基づいて画像照合処理を行う（ステップＳ２）。演算部３２は、ステップＳ２の処理結果に基づいて状態推定処理を行い（ステップＳ３）、ステップＳ１の処理で撮像されたアーム部１１０の動作状態（アーム部１１０の回動角度）を推定する。
【００５８】
演算部３２は、動作算出プログラム３３４を読み出して実行処理し、ステップＳ３の処理で推定されたアーム部１１０の動作状態（アーム部１１０の回動角度）と、重機操作モデルデータ３３３に含まれる複数パターンの腕部の動作状態（アーム部１１０の回動角度）を示すデータとに基づいて現状抽出処理を行う（ステップＳ４）。演算部３２は、ステップＳ４の処理結果に基づいて動作命令生成処理を行い（ステップＳ５）、ステップＳ１の処理のタイミング（撮像タイミング）後の操縦装置２０の動作制御内容を示すデータを生成する。演算部３２は、通信部３１を介して、ステップＳ５の処理で生成されたデータを操縦装置２０に送信する。操縦装置２０の制御部２８は、通信部２７を介して、ステップＳ５の処理で生成されたデータを受信し、当該命令に応じて操縦装置２０の動作制御を行う（ステップＳ６）。
【００５９】
演算部３２は、建設機械１００を用いた一連の作業が終了したか判定する（ステップＳ７）。具体的には、演算部３２は、例えば、ステップＳ１の処理で撮像された画像が、建設機械１００を用いた一連の作業における作業終了時の画像として関節角推定モデルデータ３３１に含まれている画像と類似するか判定する。ステップＳ７の判定で、一連の作業が終了したと判定された場合（ステップＳ７；Ｙｅｓ）、自動操縦システム１は動作を終了する。ステップＳ７の判定で、一連の作業が終了していないと判定された場合（ステップＳ７；Ｎｏ）、ステップＳ１の処理に移行する。
【００６０】
以上説明したように、本実施形態の自動操縦システム１は、建設機械１００の操作レバー（例えば、走行レバー１５１，１５２，作業レバー１５３，１５４）を動作させる複数のアクチュエータ（例えば、アクチュエータ２１，２２，２３，２４，２５，２６）を備える操縦装置２０と、建設機械１００に設けられ、アーム部１１０を撮像範囲に含む画像を撮像する撮像装置１０と、操縦装置２０の動作を制御する制御装置（例えば、情報処理装置３０）とを備える。制御装置は、アーム部１１０の動作パターンに関する第１教師データ（例えば、関節角推定モデルデータ３３１）及び当該動作パターンをアーム部１１０に行わせる建設機械１００の操作パターンに関する第２教師データ（例えば、重機操作モデルデータ３３３）を記憶する記憶部３３と、撮像装置１０によって撮像されたアーム部１１０を撮像範囲に含む画像と第１教師データに基づいて、当該画像の撮像タイミングにおけるアーム部１１０の動作状態（例えば、アーム部１１０の回動角度）を推定し、推定されたアーム部１１０の動作状態と第２教師データに基づいて撮像タイミング後の建設機械１００の操作内容を決定する演算部３２と、当該操作内容を示すデータ（例えば、操縦装置２０の動作制御内容を示すデータ）を操縦装置に送信する通信部３１とを備え、操縦装置２０は、当該操作内容を示すデータに基づいて複数のアクチュエータの動作を制御する制御部２８を備える。
【００６１】
これにより、撮像装置１０が撮像した画像に基づいて、制御装置としての情報処理装置３０が自動的に操縦装置２０の動作制御内容を決定できる。従って、自動操縦システム１は、センサを用いずに建設機械１００による作業を自動化できる。
【００６２】
また、演算部３２は、撮像装置１０からの画像を入力とし、撮像装置１０による画像の撮像タイミングにおける腕部の動作状態（アーム部１１０の回動角度）を示すデータを第１出力としたニューラルネットワークを生成する。これにより、情報処理装置３０が行うＡＩのような振る舞いによる機械学習に基づいた操縦装置２０の自動的な動作制御が可能になる。
【００６３】
また、演算部３２は、上述の第１出力を入力とし、撮像装置１０による画像の撮像タイミング後の複数のアクチュエータ（例えば、アクチュエータ２１，２２，２３，２４，２５，２６）の動作制御内容を示すデータを第２出力としたニューラルネットワークを生成する。これにより、情報処理装置３０が行うＡＩのような振る舞いによる機械学習に基づいた操縦装置２０の自動的な動作制御が可能になる。
【００６４】
また、建設機械１００は、バックホウであり、一連の作業は、バックホウによる地面の掘削である。これにより、バックホウによる作業を自動化できる。
【００６５】
以上、本発明の実施形態を説明したが、この実施形態の内容によって実施形態が限定されるものではない。例えば、アクチュエータ２１，２２，２３，２４等の直動式のアクチュエータは空圧で動作するアクチュエータに限定されるものでなく、油圧で動作するアクチュエータであってもよいし、電動機であってもよい。
【００６６】
また、建設機械１００はバックホウに限られない。例えば、ケーブル式ローディングショベルや、ケーブル式ドラグショベルのショベル位置及びケーブルによるショベルの吊り下げ長等についても、上述のアーム部１１０の動作制御と同様の仕組みで制御可能である。その他、繰り返し動作を行う腕部を有する建設機械の可動部の動作制御についても、上述のアーム部１１０の動作制御と同様の仕組みで制御可能である。
【符号の説明】
【００６７】
１    自動操縦システム
１０  撮像装置
２０  操縦装置
２１，２２，２３，２４，２５，２６  アクチュエータ
２７  通信部
２８  制御部
３０  制御装置
３１  通信部
３２  演算部
３３  記憶部
３３１  関節角推定モデルデータ
３３２  状態推定プログラム
３３３  重機操作モデルデータ
３３４  動作算出プログラム
１００  建設機械
１１０  アーム部
１１１  第１アーム
１１２  第２アーム
１１３  ショベル
【図１】
2020159147.tif 000003
【図２】
2020159147.tif 000004
【図３】
2020159147.tif 000005
【図４】
2020159147.tif 000006
【図５】
2020159147.tif 000007
【図６】
2020159147.tif 000008
【図７】
2020159147.tif 000009
【図８】
2020159147.tif 000010
【図９】
2020159147.tif 000011
【図１０】
2020159147.tif 000012
【図１１】
2020159147.tif 000013