(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-15
(45)【発行日】2024-04-23
(54)【発明の名称】作業支援装置
(51)【国際特許分類】
E02F 9/26 20060101AFI20240416BHJP
H04N 7/18 20060101ALI20240416BHJP
B64C 39/02 20060101ALI20240416BHJP
【FI】
E02F9/26 B
H04N7/18 J
B64C39/02
(21)【出願番号】P 2020131983
(22)【出願日】2020-08-03
【審査請求日】2023-03-28
(73)【特許権者】
【識別番号】000246273
【氏名又は名称】コベルコ建機株式会社
(74)【代理人】
【識別番号】110002871
【氏名又は名称】弁理士法人坂本国際特許商標事務所
(72)【発明者】
【氏名】福田 智宙
(72)【発明者】
【氏名】▲栄▼田 昭彦
【審査官】五十幡 直子
(56)【参考文献】
【文献】特開2019-194393(JP,A)
【文献】国際公開第2017/131194(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
E02F 9/00-9/18
E02F 9/24-9/28
H04N 7/18
B64C 13/20
B64C 27/08
B64C 39/02
B64D 47/08
G05D 1/00
(57)【特許請求の範囲】
【請求項1】
作業機械と、撮像装置を搭載した飛行体との位置関係を制御する作業支援装置であって、
前記作業機械は、下部走行体と、前記下部走行体に搭載される上部旋回体と、前記撮像装置が撮像した画像を表示する表示装置とを有し、
当該作業支援装置は、
前記作業機械の状態及び前記飛行体の状態を表す情報を取得する情報取得部と、
前記情報取得部により取得された前記情報に基づいて、前記飛行体の飛行状態を制御する飛行制御部とを備え、
前記上部旋回体の前記下部走行体に対する旋回角度
に応じて、あらかじめ設定された複数のゾーンがあり、
前記飛行制御部は、
前記旋回角度が変化した場合でも、前記旋回角度が所定のゾーンにある場合は、前記飛行体を前記所定のゾーンに対応付け
た所定のゾーンでホバリングを維持するためのホバリング維持制御を実行
し、
前記飛行制御部は、前記旋回角度が前記所定のゾーンを越えた場合、前記複数のゾーンの中から1つのゾーンを選択することで、ゾーンを更新し、更新後の当該ゾーンに対応付けた所定のゾーンに前記飛行体を移動させてから、前記ホバリング維持制御を再度実行し、
さらに、当該作業支援装置は、前記飛行体がどのゾーンに属しているのかを前記作業機械の操作者に通知するゾーン通知部を備える、作業支援装置。
【請求項2】
前記飛行制御部は、前記作業機械が特定の作業を実行している場合に、前記ホバリング維持制御を実行する、請求項1に記載の作業支援装置。
【請求項3】
前記飛行制御部は、前記情報取得部により取得された前記情報に基づいて、前記作業機械が特定の作業を実行しているか否かを判定する、請求項2に記載の作業支援装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、作業支援装置に関する。
【背景技術】
【0002】
ショベルの上部旋回体に取り付けられた撮像装置では撮像できない空間を、自律式の飛行体に取り付けられた撮像装置で撮像する技術が知られる(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記のような従来技術では、ショベルの動きに追従して飛行体の位置等を常に変化させるので、その際の飛行体の揺れ(加速度に起因した振動等)に起因して撮像装置の撮像画像の視認性が低下しやすい。
【0005】
そこで、1つの側面では、本発明は、作業機械の状態の変化に起因した撮像装置の撮像画像の視認性の低下を抑制することを目的とする。
【課題を解決するための手段】
【0006】
1つの側面では、
作業機械と、撮像装置を搭載した飛行体との位置関係を制御する作業支援装置であって、
前記作業機械は、下部走行体と、前記下部走行体に搭載される上部旋回体と、前記撮像装置が撮像した画像を表示する表示装置とを有し、
当該作業支援装置は、
前記作業機械の状態及び前記飛行体の状態を表す情報を取得する情報取得部と、
前記情報取得部により取得された前記情報に基づいて、前記飛行体の飛行状態を制御する飛行制御部とを備え、
前記飛行制御部は、前記上部旋回体の前記下部走行体に対する旋回角度が変化した場合でも、前記旋回角度が所定のゾーンにある場合は、前記飛行体を前記所定のゾーンに対応付けられた所定の飛行状態に維持するためのホバリング維持制御を実行する、作業支援装置を提供する。
【発明の効果】
【0007】
1つの側面では、本発明によれば、作業機械の状態の変化に起因した撮像装置の撮像画像の視認性の低下を抑制することが可能となる。
【図面の簡単な説明】
【0008】
【
図1】実施例1による作業機械及び無人飛行機の構成に関する説明図である。
【
図2】作業機械の制御系に係るハードウェア構成の一例を示す図である。
【
図3】各種制御装置により実現される機能を説明する図である。
【
図4】上部旋回体の旋回角度が属するゾーンを概略的に示す図である。
【
図5】飛行制御装置により実行される処理の一例を示す概略フローチャートである。
【
図6】飛行制御装置により実行される処理の別の一例を示す概略フローチャートである。
【発明を実施するための形態】
【0009】
以下、添付図面を参照しながら各実施例について詳細に説明する。
【0010】
[実施例1]
図1は、一実施例による作業機械1及び無人飛行機40の構成に関する説明図である。なお、
図1には、作業機械1及び無人飛行機40に加えて、飛行制御装置50(作業支援装置の一例)と遠隔操作装置52が図示されている。
【0011】
作業機械1は、無人飛行機40と連携しながら所定の作業を遂行する。作業機械1は、例えば解体作業等に好適な破砕機145を備えた建設機械であり、クローラ式の下部走行体110と、下部走行体110に旋回機構130を介して旋回可能に搭載される上部旋回体120と、作業機構140と、を備えている。上部旋回体120の前方左側部にはキャブ(運転室)122が設けられる。上部旋回体120の前方中央部には作業機構140が設けられ、作業機構140の先端に破砕機145が設けられる。なお、作業機械1は、無人飛行機40が発着するベースメントを備えてもよい。
【0012】
作業機構140は、上部旋回体120に起伏可能に装着されるブーム141と、ブーム141の先端に回動可能に連結されるアーム143と、アーム143の先端に取り付けられた破砕機145と、を備えている。作業機構140には、伸縮可能な油圧シリンダにより形成されるブームシリンダ142、アームシリンダ144及びバケットシリンダ146が装着される。破砕機145に代えてバケットなどの他の先端アタッチメントがアーム143の先端部に取り付けられていてもよい。
【0013】
ブームシリンダ142は、作動油の供給を受けることにより伸縮してブーム141を起伏方向に回動させるようにブーム141と上部旋回体120との間に介在する。アームシリンダ144は、作動油の供給を受けることにより伸縮してアーム143をブーム141に対して水平軸回りに回動させるようにアーム143とブーム141との間に介在する。バケットシリンダ146は、作動油の供給を受けることにより伸縮して破砕機145をアーム143に対して水平軸回りに回動させるように破砕機145とアーム143との間に介在する。破砕機用シリンダ147は、作動油の供給を受けることにより伸縮して破砕機145を開閉させるように破砕機145に設けられる。
【0014】
無人飛行機40は、回転翼機であり、複数(例えば、4、6又は8)の羽根、当該複数の羽根を回転させるための電動モータ(アクチュエータ)等に電力を供給するバッテリなどを備える。なお、かかるバッテリに代えて又は加えて、無人飛行機40は、地上から電力供給線が接続されてもよい。
【0015】
無人飛行機40は、制御装置400と、撮像装置410とを備える。
【0016】
制御装置400は、後述する飛行制御装置50からの制御情報(指令)や遠隔操作装置52からの操作情報に応じて、無人飛行機40の各種飛行状態(前進状態、後進状態、上昇状態、下降状態、ホバリング等)を実現する。また、制御装置400は、撮像装置410で取得される画像(前方環境画像)を作業機械1に送信する。
【0017】
撮像装置410は、カメラを含む。カメラの種類等は任意であり、例えば広角カメラであってもよい。撮像装置410は、取り外し可能に無人飛行機40に取り付けられてもよいし、無人飛行機40に強固に固定されてもよい。撮像装置410は、CCD(charge-coupled device)やCMOS(complementary metal oxide semiconductor)等の撮像素子により、無人飛行機40の機体前方の前方環境画像を取得する。撮像装置410は、例えば、リアルタイムに前方環境画像を取得し、所定のフレーム周期のストリーム形式で制御装置400に供給するものであってよい。
【0018】
撮像装置410は、好ましくは、ジンバル(図示せず)を備える。ジンバルは、無人飛行機40の姿勢が変化しても、撮像装置410の光軸が一定の向き(例えば水平面内の所定方向)に保つように機能する。
【0019】
飛行制御装置50は、無人飛行機40の各種制御を実行する。一実施例では、飛行制御装置50は、サーバ(サーバコンピュータ)により実現され、この場合、飛行制御装置50は、ネットワーク(図示せず)を介して作業機械1及び無人飛行機40に接続される。この場合、ネットワークは、無線通信網や、インターネット、VPN(Virtual Private Network)、WAN(Wide Area Network)、有線ネットワーク、又はこれらの任意の組み合わせ等を含んでもよい。他の実施例では、飛行制御装置50は、作業機械1の制御装置10により実現されてもよい。また、他の実施例では、飛行制御装置50は、無人飛行機40の制御装置400により実現されてもよい。あるいは、他の実施例では、飛行制御装置50の機能は、サーバ、制御装置10、及び制御装置400のうちの、いずれか2つの組み合わせ又はすべてにより協働して実現されてもよい。飛行制御装置50の詳細は後述する。
【0020】
遠隔操作装置52は、例えばリモートコントローラの形態であり、ユーザ(例えば、作業機械1の操作者又は操作者とは異なる作業者)により操作されてよい。なお、ユーザが、作業機械1の操作者である場合、遠隔操作装置52は、キャブ122内に持ち込まれうる。遠隔操作装置52は、無人飛行機40と無線通信可能であり、ユーザの操作に応じた操作信号を無人飛行機40に向けて送信する。この場合、無人飛行機40は遠隔操作装置52からの操作情報を受信すると、無人飛行機40の制御装置400は、操作情報に応じた無人飛行機40の動き(前進、後退、昇降等)を実現する。なお、変形例では、遠隔操作装置52は省略されてもよい。また、遠隔操作装置52は、スマートフォン等により実現されてもよい。
【0021】
図2は、作業機械1の制御系に係るハードウェア構成の一例を示す図である。
【0022】
作業機械1は、
図2に示すように、周辺機器8と、制御装置10とを備える。
【0023】
周辺機器8は、作業機械1に搭載される電子制御可能な機器や各種センサ等である。周辺機器8は、例えば、画像出力装置80(表示装置の一例)や、ブザー、音声出力装置(図示せず)、作業機構140を作動させる油圧発生装置(図示せず)、各種操作部材の操作状態を検出する各種センサ類82等を含んでよい。なお、油圧発生装置は、エンジン及び/又は電動モータにより駆動される油圧ポンプであってよい。電動モータにより駆動される油圧ポンプを利用する場合、油圧発生装置は、電動モータを駆動するためのインバータを含んでよい。各種センサ類82は、ジャイロセンサや、GPS(Global Positioning System)センサ、各種の角度センサ、加速度センサ(傾斜センサ)、油圧発生装置により付与される油圧ライン(図示せず)の所定箇所の油圧を検出する油圧センサ等を含んでよい。
【0024】
画像出力装置80は、作業機械1の操作者が視認できるようにキャブ122内に設けられる。画像出力装置80は、任意であるが、例えば液晶ディスプレイや、有機EL(Electro-Luminescence)ディスプレイ等であってよい。なお、変形例では、画像出力装置80は、作業機械1の操作者によりキャブ122に持ち込まれうる携帯型の装置(例えばタブレット端末等)であってもよい。
【0025】
制御装置10は、バス19で接続されたCPU(Central Processing Unit)11、RAM(Random Access Memory)12、ROM(Read Only Memory)13、補助記憶装置14、ドライブ装置15、及び通信インターフェース17、並びに、通信インターフェース17に接続された有線送受信部25及び無線送受信部26を含む。
【0026】
補助記憶装置14は、例えばHDD(Hard Disk Drive)や、SSD(Solid State Drive)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
【0027】
有線送受信部25は、有線ネットワークを利用して通信可能な送受信部を含む。有線送受信部25には、周辺機器8が接続される。ただし、周辺機器8の一部又は全部は、バス19に接続されてもよいし、無線送受信部26に接続されてもよい。
【0028】
無線送受信部26は、無線ネットワークを利用して通信可能な送受信部である。無線ネットワークは、携帯電話の無線通信網や、インターネット、VPN、WAN等を含んでよい。また、無線送受信部26は、近距離無線通信(NFC:Near Field Communication)部、ブルートゥース(Bluetooth、登録商標)通信部、Wi-Fi(Wireless-Fidelity、登録商標)送受信部、赤外線送受信部などを含んでもよい。例えば、無線送受信部26は、サーバの形態の飛行制御装置50との間で通信を実現できる。
【0029】
なお、制御装置10は、記録媒体16と接続可能であってもよい。記録媒体16は、所定のプログラムを格納する。この記録媒体16に格納されたプログラムは、ドライブ装置15を介して制御装置10の補助記憶装置14等にインストールされる。インストールされた所定のプログラムは、制御装置10のCPU11により実行可能となる。例えば、記録媒体16は、CD(Compact Disc)-ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する記録媒体、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等であってよい。なお、記録媒体16には、搬送波は含まれない。
【0030】
ここでは、
図2を参照して、作業機械1の制御系について説明したが、無人飛行機40についても、周辺機器8に係る構成を除いて、実質的に同様であってよい。例えば、無人飛行機40の制御系の場合、制御装置400のハードウェア構成は、制御装置10と同様であってよい。また、周辺機器8に対応する周辺機器は、撮像装置410(
図1参照)や各種センサ類を含む。
【0031】
また、飛行制御装置50のハードウェア構成についても、
図2に示す制御装置10のハードウェア構成と実質的に同様であってよい。
【0032】
次に、
図3以降を参照して、制御装置10及び制御装置400とともに、飛行制御装置50を詳説する。
【0033】
図3は、制御装置10、制御装置400、及び飛行制御装置50により実現される機能を説明する図である。
【0034】
制御装置10は、
図3に示すように、位置情報取得部150と、姿勢情報取得部151と、旋回角度情報取得部152と、通信処理部153と、画像出力処理部154とを含む。位置情報取得部150のような各機能部は、
図2に示したCPU11が、
図2に示したROM13のような記憶装置内のプログラムを実行することで、実現できる。
【0035】
位置情報取得部150は、センサ類82のうちの、GPSセンサ(図示せず)から、作業機械1の位置情報を取得する。作業機械1の位置情報は、緯度、経度、及び高度で表現される。なお、GPSセンサは、GPS受信機を含み、衛星からの電波に基づいて、干渉測位等により、緯度、経度、及び高度を算出する。
【0036】
姿勢情報取得部151は、センサ類82のうちの、作業機械1の姿勢に係るパラメータを取得する各種センサに基づいて、作業機械1の姿勢情報を取得する。この場合、姿勢に係るパラメータを取得する各種センサは、例えば、ブーム角度センサや、アーム角度センサ、バケット角度センサ、機体傾斜センサ等であってよい。なお、ブーム角度センサは、ブーム角度を取得するセンサであり、例えば、ブームフートピンの回転角度を検出する回転角センサ、ブームシリンダ142のストローク量を検出するストロークセンサ、ブーム141の傾斜角度を検出する傾斜(加速度)センサ等を含む。また、アーム角度センサ及びバケット角度センサについても同様である。機体傾斜センサは、機体傾斜角度を取得するセンサであり、例えば、水平面に対する上部旋回体120の傾斜角度を検出する。
【0037】
旋回角度情報取得部152は、センサ類82のうちの、下部走行体110に対する上部旋回体120の旋回角度(以下、単に「上部旋回体120の旋回角度」とも称する)に係るパラメータを取得する各種センサに基づいて、上部旋回体120の旋回角度を表す旋回角度情報を取得する。この場合、上部旋回体120の旋回角度に係るパラメータを取得する各種センサは、例えば、地磁気センサや、旋回機構130の旋回軸まわりの旋回角度を検出する回転角センサ(例えばレゾルバ等)、ジャイロセンサ等であってよい。
【0038】
通信処理部153は、位置情報取得部150、姿勢情報取得部151、及び旋回角度情報取得部152により取得される各種情報等を、飛行制御装置50に送信する。例えば、通信処理部153は、飛行制御装置50からの要求に応じて、所定周期ごとに最新の情報を飛行制御装置50に送信してもよい。
【0039】
また、通信処理部153は、無人飛行機40から画像データを受信する。画像データは、撮像装置410により撮像される前方環境画像のデータである。
【0040】
画像出力処理部154は、通信処理部153により取得される画像データに基づいて、画像出力装置80上に前方環境画像を出力する。これにより、作業機械1の操作者は、画像出力装置80上の前方環境画像から、例えば直視では見えない作業現場の状況等を把握できる。
【0041】
制御装置400は、
図3に示すように、機体情報取得部401と、目標飛行状態設定部402と、機体制御部403と、通信処理部404とを含む。機体情報取得部401のような各機能部は、
図2に示したCPU11のようなCPUが、
図2に示したROM13のような記憶装置内のプログラムを実行することで、実現できる。
【0042】
機体情報取得部401は、無人飛行機40の機体に係る各種状態を表す機体情報を取得する。機体情報は、無人飛行機40の位置情報や、無人飛行機40の姿勢情報等を含んでよい。無人飛行機40の位置情報は、例えば、緯度、経度、及び高度で表現されてよい。なお、このような無人飛行機40の位置情報は、GPSセンサから取得可能である。無人飛行機40の姿勢情報は、無人飛行機40のヨー軸、ロール軸、及びピッチ軸の各軸まわりの回転に関する情報を含んでよい。なお、このような無人飛行機40の姿勢情報は、無人飛行機40に搭載される慣性計測装置(IMU:Inertial Measurement Unit)のようなセンサから取得可能である。
【0043】
目標飛行状態設定部402は、飛行制御装置50からの制御情報(指令)に基づいて、無人飛行機40の目標飛行状態を設定する。目標飛行状態は、目標飛行位置と目標飛行姿勢とを含む。なお、制御情報が目標飛行位置と目標飛行姿勢とを含む場合は、目標飛行状態設定部402は、当該目標飛行位置と目標飛行姿勢をそのまま利用してもよい。
【0044】
目標飛行位置は、例えば、緯度、経度、及び高度で表現されてよい。
【0045】
本実施例では、上部旋回体120の旋回角度を複数の範囲に区画したゾーン(後述)を用いた「ホバリング維持制御」と、上部旋回体120の旋回角度の変化に追従して無人飛行機40の目標飛行位置を動的に変化させる「状態追従制御」が選択的に実行される。以下、ホバリング維持制御の場合を中心として目標飛行状態について説明する。
【0046】
図4は、上部旋回体120の旋回角度が属するゾーンを概略的に示す図である。
図4に示す例では、上部旋回体120が下部走行体110の後方側に向いたときに、上部旋回体120の旋回角度が第1のゾーンZ1にある。また、上部旋回体120が下部走行体110の左方側に向いたときに、上部旋回体120の旋回角度が第2のゾーンZ2にある。また、上部旋回体120が下部走行体110の前方側に向いたときに、上部旋回体120の旋回角度が第3のゾーンZ3にある。また、上部旋回体120が下部走行体110の右方側に向いたときに、上部旋回体120の旋回角度が第4のゾーンZ4にある。
【0047】
図4の例では、4つのゾーン(ゾーンZ1~Z4)は、下部走行体110の設置面(水平面、又は、ほぼ水平面)内において、例えば、上部旋回体120の旋回軸周りに周方向に、例えば90°ずつ互いに連続して設けられ、上部旋回体120の旋回角度は、常に、4つのゾーン(ゾーンZ1~Z4)のいずれかに属する。
【0048】
ホバリング維持制御が選択されている場合、目標飛行状態(目標飛行位置と目標飛行姿勢)は、対応する所定のゾーンに対応して規定される。この場合、上部旋回体120の旋回角度が所定のゾーンに継続的に属している間は、上部旋回体120が旋回しても無人飛行機40のホバリングが継続される。すなわち、無人飛行機40は、当該所定のゾーンに対応付けられた目標飛行状態を維持する。
【0049】
ゾーンの設定方法は、
図4に示す例に限定されない。ゾーンは固定的に規定されてもよく、また、作業中の上部旋回体120の旋回角度に応じて、ゾーンが流動的に規定されてもよい。後者の場合、特定の時点における上部旋回体120の旋回角度としての基準角度を基準として、それぞれのゾーンを任意に設定することができる。例えば、上部旋回体120の旋回角度が基準角度に対して所定閾値(絶対値)以下の差分を有する範囲を、その基準角度に対応するゾーンとして規定することができる。なお、
図4において、第1のゾーンZ1を、基準角度X1を基準角度、角度θ(例えば45°)を所定閾値として規定する例を示している。
【0050】
ホバリング維持制御が選択されている場合の目標飛行位置に係る緯度及び経度は、例えば、作業機械1の下部走行体110の前後軸を、上部旋回体120の旋回軸周りに、ゾーンに応じた所定の角度だけ旋回した軸上の位置であって、作業機械1の所定の部位(例えば、上部旋回体120の旋回軸)に対して水平方向に所定距離D1だけ離れて設定されてよい。所定距離D1は、例えば20m程度であってよい。また、所定距離D1は、ユーザにより可変とされてもよい。また、所定距離D1は、作業モード等に応じて自動的に変化させてもよい。目標飛行位置に係る緯度及び経度は、上部旋回体120の旋回角度が属するそれぞれのゾーンに応じて、適切な緯度及び経度が選択されればよい。なお、
図4では、第3のゾーンZ3に対応する目標飛行位置に無人飛行機40を描画している。
【0051】
また、ホバリング維持制御が選択されている場合の目標飛行位置に係る高度は、一定(例えば30mから40mの範囲内)であってもよい。ただし、目標飛行位置に係る高度は、同様に、ユーザにより可変とされてもよいし、作業モード等に応じて自動的に変化されてもよい。あるいは、上部旋回体120の旋回角度が属するゾーン、又は、所定距離D1に応じた高度が選択されてもよい。
【0052】
ホバリング維持制御が選択されている場合の目標飛行姿勢は、例えば、ヨー軸、ロール軸、及びピッチ軸の各軸まわりの回転に関するパラメータで表現されてよい。目標飛行姿勢は、例えば、無人飛行機40の機体の前後軸が上部旋回体120の旋回軸と交わり、かつ、無人飛行機40の機体の前後軸が水平面内に位置するように設定されてもよい。同様に、目標飛行姿勢に係るパラメータは、ユーザにより可変とされてもよいし、上部旋回体120の旋回角度が属するそれぞれのゾーンや作業モード等に応じて自動的に変化されてもよい。
【0053】
機体制御部403は、機体情報取得部401により取得される機体情報に基づいて、目標飛行状態設定部402により設定される目標飛行状態が実現されるように、無人飛行機40を制御する。なお、無人飛行機40の制御方法は、任意であり、例えばPID(Proportional Integral Differential)制御等により実現されてもよい。
【0054】
通信処理部404は、機体情報取得部401により取得される機体情報等を、飛行制御装置50に送信する。例えば、通信処理部404は、飛行制御装置50からの要求に応じて、所定周期ごとに最新の機体情報を飛行制御装置50に送信してもよい。
【0055】
また、通信処理部404は、撮像装置410により撮像される前方環境画像のデータを、作業機械1に送信する。例えば、通信処理部404は、飛行制御装置50からの要求に応じて、所定周期ごとに前方環境画像のデータを飛行制御装置50に送信してもよい。
【0056】
飛行制御装置50は、
図3に示すように、情報取得部510と、ゾーン判定部512と、飛行制御部514とを含む。情報取得部510のような各機能部は、
図2に示したCPU11のようなCPUが、
図2に示したROM13のような記憶装置内のプログラムを実行することで、実現できる。
【0057】
情報取得部510は、飛行制御部514の各種制御に必要な各種情報を取得する。本実施例では、一例として、情報取得部510は、作業機械1の位置情報、姿勢情報、及び旋回角度情報と、無人飛行機40の機体情報とを取得する。なお、作業機械1の位置情報、姿勢情報、及び旋回角度情報は、作業機械1の制御装置10の通信処理部153から通信により取得できる。また、無人飛行機40の機体情報は、無人飛行機40の制御装置400の通信処理部404から取得できる。
【0058】
ゾーン判定部512は、上部旋回体120の旋回角度に基づき、その旋回角度が属するゾーンを把握(判定)する。ゾーン判定部512は、例えば、上記のような設定方法に従って決められた所定のゾーンと、上部旋回体120の旋回角度とを対比し、上部旋回体120の旋回角度が所定のゾーンにあるか否かを把握(判定)する。また、ゾーン判定部512は、例えば、上部旋回体120の旋回角度が特定のゾーン(例えば、
図4の第1~第4のゾーンのうちのいずれかのゾーン)にあるか否かを把握(判定)する。
【0059】
飛行制御部514は、情報取得部510により取得された各種情報に基づいて、無人飛行機40に送信する制御情報(指令)を生成する。制御情報は、上述したように、無人飛行機40の目標飛行状態設定部402に目標飛行状態を設定させるための情報である。
【0060】
飛行制御部514は、ホバリング開始条件が成立すると、無人飛行機40のホバリングが開始されるように、制御情報を生成する。ホバリング開始条件は、例えば、無人飛行機40の位置が目標飛行位置に到達した場合に満たされてよい。なお、無人飛行機40の位置が目標飛行位置に到達した否かは、例えば、情報取得部510により取得される機体情報に基づいて判断できる。
【0061】
飛行制御部514は、例えば、制御情報を変化させないことで(これに伴い無人飛行機40の目標飛行位置を変化させないことで)、制御装置400にホバリングを開始させてもよい。あるいは、飛行制御部514は、ホバリングを開始させる指令(例えば、ホバリングモードのようなモードを指示する制御情報)を無人飛行機40に送信することで、制御装置400にホバリングを開始させてもよい。
【0062】
上記のように、飛行制御部514は、無人飛行機40のホバリング中、上部旋回体120の旋回角度が変化した場合でも、その旋回角度が一定のゾーンに属する場合には、無人飛行機40のホバリングを維持するためのホバリング維持制御を実行する。
【0063】
なお、飛行制御部514は、例えば、制御情報を変化させないことで(これに伴い無人飛行機40の目標飛行位置を変化させないことで)、ホバリング維持制御を実現してもよい。あるいは、飛行制御部514は、ホバリングを維持させる指令(例えば、ホバリングモードのようなモードを指示する制御情報)を無人飛行機40に送信することで、ホバリング維持制御を実現してもよい。
【0064】
以下、このようなホバリング維持制御との対比として、上部旋回体120の旋回角度の変化に追従して無人飛行機40の目標飛行状態を動的に変化させる制御を、上記の「状態追従制御」とも称する。状態追従制御では、上部旋回体120の旋回角度と同期して、無人飛行機40の目標飛行位置を上部旋回体120の旋回方向と同方向に移動させる。また、無人飛行機40の目標飛行姿勢を同時に調整する。この場合、上部旋回体120が旋回している間、無人飛行機40も作業機械1の周囲を上部旋回体120の旋回方向と同方向に回転するように移動しつつ、飛行姿勢が変化する。なお、状態追従制御においても、目標飛行位置は、作業機械1の所定の部位(例えば、上部旋回体120の旋回軸)に対して所定距離D1だけ離れて設定されてよい。目標飛行位置に係る高度も、ホバリング維持制御の場合と同様に定めることができる。さらに、目標飛行姿勢についてもホバリング維持制御の場合と同様、例えば、目標飛行姿勢は、無人飛行機40の機体の前後軸が上部旋回体120の旋回軸と交わり、かつ、無人飛行機40の機体の前後軸が水平面内に位置するように設定されてもよい。
【0065】
ところで、作業機械1は、作業内容に依存して動きが多様となりうるが、下部走行体110を固定したまま、上部旋回体120の旋回を伴う作業を行う場合がある。また、この作業において、上部旋回体120の旋回角度が比較的狭い移動範囲内で、上部旋回体120の旋回を伴う作業を繰り返す場合がある。かかる場合に、状態追従制御を実行すると、制御装置400が、上部旋回体120の旋回に伴って無人飛行機40の移動が繰り返されることとなる。このような動きは、無人飛行機40の機体に比較的大きい加速度を生みやすい。無人飛行機40の機体に比較的大きい加速度が生じると、撮像装置410に係る撮像範囲に変化(揺れ)が生じ、前方環境画像の視認性が低下しやすくなる。
【0066】
これに対して、本実施例によれば、上部旋回体120の旋回角度が所定のゾーン内にある期間中は、上部旋回体120が旋回した場合でも、無人飛行機40のホバリングが維持される。これにより、状態追従制御を実行する場合に比べて、ホバリングの期間を長くすることができる。この結果、無人飛行機40の機体に比較的大きい加速度が生じる頻度を低減し、前方環境画像の視認性の低下を抑制できる。
【0067】
ここで、ホバリング維持制御で用いるゾーンの設定方法は任意であるが、それぞれのゾーンに与えられる上部旋回体120の旋回角度の範囲が大きいほど、ホバリングが維持されやすい。他方、ゾーンに与えられる上部旋回体120の旋回角度の範囲が過度に大きい場合は、前方環境画像の有用性(画像から得られるユーザにとっての有用な情報量)が低下しやすくなる。従って、それぞれのゾーンの範囲は、これらの背反を考慮して決定されてもよい。なお、それぞれのゾーンは、ユーザにより可変とされてもよいし、作業モード等に応じて自動的に変化されてもよい。
【0068】
ところで、上部旋回体120の旋回角度を大きく変動させる頻度が高く、かつ、上部旋回体120を小刻みに旋回させる必要のない作業を行う場合などでは、状態追従制御のほうが、ホバリング維持制御よりも、無人飛行機40の機体に比較的大きい加速度が生じる頻度を低減できうる。この場合、ホバリング維持制御では、ゾーンを越えて上部旋回体120の旋回を行う際に、無人飛行機40の飛行位置及び飛行姿勢を変化させることとなり、それに応じて、無人飛行機40の機体に比較的大きい加速度が生じやすくなるためである。
【0069】
従って、本実施例において、ホバリング維持制御は、作業機械1により特定の作業が実行されている場合にのみ、実現されてもよい。この場合、特定の作業は、上部旋回体120の旋回角度が比較的狭い範囲内に収まるような作業であってよい。なお、特定の作業は、複数種類の作業であってよく、事前に設定されてもよい。
【0070】
また、この場合、飛行制御部514は、情報取得部510により取得された情報に基づいて、作業機械1が特定の作業を実行しているか否かを判定してもよい。飛行制御部514は、例えば以下の条件要素に基づいて、作業機械1が特定の作業を実行しているか否か判定してもよい。
条件要素(1)上部旋回体120の旋回角度を大きく変動させる(ゾーンを越える)旋回動作の頻度。
条件要素(2)上部旋回体120の旋回角度を小刻みに変動させる(ゾーン内での)旋回動作の頻度。
条件要素(3)状態追従制御の実行状態において無人飛行機40の機体に発生する加速度が所定の閾値を超える頻度。
【0071】
この場合、条件要素(1)を利用することで、ゾーンを越えて頻繁に上部旋回体120が大きく旋回される作業において、ホバリング維持制御が実行される可能性を低減できる。また、条件要素(2)を利用することで、例えば所定のゾーン内で上部旋回体120が旋回を繰り返すような状況下でホバリング維持制御を効果的に実行できる。また、条件要素(3)を利用することで、状態追従制御によると無人飛行機40の機体に比較的大きい加速度が生じやすい状況下でホバリング維持制御を効果的に実行できる。
【0072】
次に、
図5以降を参照して、飛行制御装置50の動作例について説明する。なお、以降の処理フロー図(フローチャート)においては、各ステップの入力と出力の関係を損なわない限り、各ステップの処理順序を入れ替えてもよい。
【0073】
図5は、飛行制御装置50により実行される処理の一例を示す概略フローチャートである。
図5に示す処理は、例えば所定周期ごとに繰り返し実行されてよい。
【0074】
ステップS30では、飛行制御装置50は、制御用の各種情報(例えば、作業機械1の位置情報、姿勢情報、及び旋回角度情報と、無人飛行機40の機体情報)を取得する。制御用の各種情報の取得方法は、上述したとおりである。
【0075】
ステップS32では、飛行制御装置50は、ホバリング維持制御の実行条件を満たすか否かを判定する。ホバリング維持制御の実行条件は、任意であるが、例えば、作業機械1が特定の作業を実行していると判定した場合に満たされる。特定の作業は、上述のとおりであってよい。判定結果が“YES”の場合、ステップS34に進み、それ以外の場合は、ステップS33Aに進む。
【0076】
ステップS33Aでは、飛行制御装置50は、ホバリング中フラグが“0”であるか否かを判定する。ホバリング中フラグが“0”である状態は、ホバリングを実現又は維持するための制御の非実行状態に対応する。ホバリング中フラグの初期値は、“0”である。判定結果が“YES”の場合、ステップS33Cに進み、それ以外の場合は、ステップS33Bに進む。
【0077】
ステップS33Bでは、飛行制御装置50は、ホバリング中フラグを“0”にリセットする。
【0078】
ステップS33Cでは、飛行制御装置50は、状態追従制御を実行する。具体的には、飛行制御装置50は、ステップS30で得た各種情報に基づいて目標飛行状態(目標飛行位置及び目標飛行姿勢を含む)を決定し、当該目標飛行状態を表す制御情報(指令)を生成する。そして、飛行制御装置50は、生成した制御情報を無人飛行機40に送信する。この場合、無人飛行機40の制御装置400は、かかる制御情報を受信すると、当該制御情報に係る目標飛行状態が実現されるように無人飛行機40を制御する。
【0079】
ステップS34では、飛行制御装置50は、ホバリング中フラグが“1”であるか否かを判定する。ホバリング中フラグが“1”である状態は、ホバリングを実現又は維持するための制御の実行状態に対応する。判定結果が“YES”の場合、ステップS37に進み、それ以外の場合は、ステップS42に進む。
【0080】
ステップS37では、飛行制御装置50は、飛行制御装置50に保持されている基準角度(上部旋回体120の旋回角度の基準となる角度)と、ステップ30において取得された旋回角度情報と、に基づいて、基準角度に対する現時点での上部旋回体120の旋回角度の変化量(差分)が所定閾値以下であるか否かを判定する。判定結果が“YES”の場合、ステップS38に進み、それ以外の場合は、ステップS40に進む。
【0081】
ステップS38では、飛行制御装置50は、ホバリングを実現させるための制御情報を生成し、生成した制御情報を無人飛行機40に送信する。この場合、無人飛行機40の制御装置400は、かかる制御情報を受信すると、当該制御情報に係るホバリングが実現又は維持されるように無人飛行機40を制御する。ホバリングを実現させるための制御情報は、例えば、前回周期の制御情報と同じ情報であってもよいし、その旨を表す情報であってもよい。
【0082】
ステップS40では、飛行制御装置50は、ホバリング中フラグを“0”にリセットする。
【0083】
ステップS42では、飛行制御装置50は、ステップS30で得た旋回角度情報が示す現時点の上部旋回体120の旋回角度に基づいて、その旋回角度に対応した新たなゾーンを設定するとともに、そのゾーンに対応する目標飛行位置を算出する。すなわち、飛行制御装置50は、状態追従制御の場合と同様、現時点の上部旋回体120の旋回角度に応じた目標飛行位置を算出する。ここでは、例えば、新たなゾーンとして、現時点の上部旋回体120の旋回角度がそのゾーンの角度範囲の中心に位置するようなゾーン(例えば、
図4における上部旋回体120の旋回角度に対する第3のゾーンZ3)を設定する。また、目標飛行位置として、新たに設定されたゾーン)に対応付けられた位置(例えば、
図4における第3のゾーンZ3に対応付けられた無人飛行機40の位置)が算出される。このように、ステップS42では、現時点の上部旋回体120の旋回角度に基づいて、ゾーンが流動的に設定される。例えば、
図4において、上部旋回体120の旋回角度に応じて、それぞれのゾーンZ1~Z4が周方向に移動したゾーンが設定される。また、新たに設定されたゾーンの範囲に応じて、そのゾーンに対応する目標飛行位置がゾーンの範囲に応じて流動的に算出される。
【0084】
ステップS44では、飛行制御装置50は、ステップS42で算出した目標飛行位置の算出値を含む制御情報(指令)を生成し、生成した制御情報を無人飛行機40に送信する。この場合、無人飛行機40の制御装置400は、かかる制御情報を受信すると、当該制御情報に係る目標飛行状態が実現されるように無人飛行機40を制御する。
【0085】
ステップS46では、飛行制御装置50は、ステップS30で得た各種情報に基づいて、目標飛行状態(前回周期のステップS42で算出した目標飛行状態の算出値)に無人飛行機40が到達したか否かを判定する。例えば、飛行制御装置50は、無人飛行機40の状態情報が、前回周期のステップS42で算出した目標飛行状態の算出値と略一致する場合は、目標飛行状態に無人飛行機40が到達したと判定する。判定結果が“YES”の場合、ステップS48に進み、それ以外の場合は、今回周期の処理は終了する。
【0086】
ステップS48では、飛行制御装置50は、ホバリングを開始させるための制御情報を生成し、生成した制御情報を無人飛行機40に送信する。この場合、無人飛行機40の制御装置400は、かかる制御情報を受信すると、当該制御情報に係るホバリングが実現されるように無人飛行機40を制御する。ホバリングを開始させるための制御情報は、例えば、前回周期の制御情報と同じ情報であってもよいし、その旨を表す情報であってもよい。
【0087】
ステップS50では、飛行制御装置50は、ホバリング中フラグを“1”にセットするとともに、ステップS30で得た旋回角度情報が示す現時点での上部旋回体120の旋回角度を、新たな基準角度に設定する。なお、基準角度は飛行制御装置50に保持され、ステップS50において新たな基準角度が設定された場合には更新される。飛行制御装置50に保持された基準角度は、上記のステップS37で用いられる。
【0088】
図5に示す処理によれば、ホバリング維持制御の実行条件が満たされると、ステップS34からステップS38によりホバリング維持制御が実行される。
図5に示す処理によれば、ホバリングが開始されると、そのときの上部旋回体120の旋回角度が基準角度に設定、更新される。そして、その後、基準角度からの上部旋回体120の旋回角度相対位置関係の変化量が所定閾値以下である間は、ホバリングが継続される。また、基準角度からの上部旋回体120の旋回角度の変化量が所定閾値を超えると、その時点における上部旋回体120の旋回角度に応じた範囲の新たなゾーンが設定される。そして、新たなゾーンに対応する新たな目標飛行状態が達成されるように無人飛行機40が移動されたあと、再度、ホバリングが開始され、そのときの上部旋回体120の旋回角度が基準角度に設定される。すなわち、実質的に、基準角度からの上部旋回体120の旋回角度の変化量が所定閾値を超えると、その時点における上部旋回体120の旋回角度が新たな基準角度に設定される。その後、基準角度からの上部旋回体120の旋回角度の変化量が所定閾値以下である間は、ホバリングが継続される。このようにして、基準角度を更新しつつホバリング維持制御が継続されるので、その間、撮像装置410により取得される前方環境画像の視認性の低下を抑制できる。
【0089】
図6は、飛行制御装置50により実行される処理の別の一例を示す概略フローチャートである。
図6に示す処理は、例えば所定周期ごとに繰り返し実行されてよい。
【0090】
ステップS130では、飛行制御装置50は、制御用の各種情報(例えば、作業機械1の位置情報、姿勢情報、及び旋回角度情報と、無人飛行機40の機体情報)を取得する。制御用の各種情報の取得方法は、上述したとおりである。
【0091】
ステップS132では、飛行制御装置50は、ホバリング維持制御の実行条件を満たすか否かを判定する。ホバリング維持制御の実行条件は、任意であるが、例えば、作業機械1が特定の作業を実行していると判定した場合に満たされる。特定の作業は、上述のとおりであってよい。判定結果が“YES”の場合、ステップS134に進み、それ以外の場合は、ステップS133Aに進む。
【0092】
ステップS133Aでは、飛行制御装置50は、ホバリング中フラグが“0”であるか否かを判定する。ホバリング中フラグが“0”である状態は、ホバリングを実現又は維持するための制御の非実行状態に対応する。ホバリング中フラグの初期値は、“0”である。判定結果が“YES”の場合、ステップS133Cに進み、それ以外の場合は、ステップS133Bに進む。
【0093】
ステップS133Bでは、飛行制御装置50は、ホバリング中フラグを“0”にリセットする。
【0094】
ステップS133Cでは、飛行制御装置50は、状態追従制御を実行する。具体的には、飛行制御装置50は、ステップS130で得た各種情報に基づいて目標飛行状態を決定し、当該目標飛行状態を表す制御情報(指令)を生成する。そして、飛行制御装置50は、生成した制御情報を無人飛行機40に送信する。この場合、無人飛行機40の制御装置400は、かかる制御情報を受信すると、当該制御情報に係る目標飛行状態が実現されるように無人飛行機40を制御する。
【0095】
ステップS134では、飛行制御装置50は、ホバリング中フラグが“1”であるか否かを判定する。ホバリング中フラグが“1”である状態は、ホバリングを実現又は維持するための制御の実行状態に対応する。判定結果が“YES”の場合、ステップS135に進み、それ以外の場合は、ステップS142に進む。
【0096】
ステップS135では、飛行制御装置50は、ステップS130で得た旋回角度情報に基づいて、現時点での上部旋回体120の旋回角度を取得する。
【0097】
ステップS136では、飛行制御装置50は、現時点での上部旋回体120の旋回角度に対応するゾーンを設定する。設定されたゾーンは、飛行制御装置50に保持される。ここでは、例えば、
図4の例において、現時点での上部旋回体120の旋回角度に応じて、第1のゾーンZ1、第2のゾーンZ2、第3のゾーンZ3及び第4のゾーンZ4のうちの1つが設定される。
【0098】
ステップS137では、飛行制御装置50は、実行中のホバリングに対応するゾーンと、ステップS136で設定されたゾーンとを比較し、ゾーンに変化があった(両者が異なる)か否か判定する。この判定が肯定された(変化があった)場合には、ステップS138へ進み、この判定が否定された(変化がない)場合には、ステップS140へ進む。ここでは、例えば、
図4の例において、上部旋回体120の旋回角度が第3のゾーンZ3(実行中のホバリングに対応するゾーン)から他のゾーン(第1のゾーンZ1、第2のゾーンZ2又は第4のゾーンZ4)に移動した場合に、ステップS137の判定が肯定される。
【0099】
ステップS138では、飛行制御装置50は、ホバリングを実現させるための制御情報を生成し、生成した制御情報を無人飛行機40に送信する。この場合、無人飛行機40の制御装置400は、かかる制御情報を受信すると、当該制御情報に係るホバリングが実現又は維持されるように無人飛行機40を制御する。ホバリングを実現させるための制御情報は、例えば、前回周期の制御情報と同じ情報であってもよいし、その旨を表す情報であってもよい。
【0100】
ステップS140では、飛行制御装置50は、ホバリング中フラグを“0”にリセットする。
【0101】
ステップS142では、飛行制御装置50は、ステップS136で設定したゾーンに対応する目標飛行位置を算出する。ここでは、目標飛行状態として、新たに設定されたゾーンに対応付けられた飛行状態が算出される。
図4の例では、第1のゾーンZ1、第2のゾーンZ2又は第4のゾーンZ4に対応付けられた3つの飛行状態のうちの一つが目標飛行状態として算出される。
【0102】
ステップS144では、飛行制御装置50は、ステップS142で算出した目標飛行位置の算出値を含む制御情報(指令)を生成し、生成した制御情報を無人飛行機40に送信する。この場合、無人飛行機40の制御装置400は、かかる制御情報を受信すると、当該制御情報に係る目標飛行状態が実現されるように無人飛行機40を制御する。
【0103】
ステップS146では、飛行制御装置50は、ステップS130で得た各種情報に基づいて、目標飛行状態(前回周期のステップS142で算出した目標飛行位置の算出値)に無人飛行機40が到達したか否かを判定する。例えば、飛行制御装置50は、無人飛行機40の状態情報が、前回周期のステップS142で算出した目標飛行状態の算出値と略一致する場合は、目標飛行状態に無人飛行機40が到達したと判定する。判定結果が“YES”の場合、ステップS148に進み、それ以外の場合は、今回周期の処理は終了する。
【0104】
ステップS148では、飛行制御装置50は、ホバリングを開始させるための制御情報を生成し、生成した制御情報を無人飛行機40に送信する。この場合、無人飛行機40の制御装置400は、かかる制御情報を受信すると、当該制御情報に係るホバリングが実現されるように無人飛行機40を制御する。ホバリングを開始させるための制御情報は、例えば、前回周期の制御情報と同じ情報であってもよいし、その旨を表す情報であってもよい。
【0105】
ステップS150では、飛行制御装置50は、ホバリング中フラグを“1”にセットする。
【0106】
図6に示す処理によれば、ホバリング維持制御の実行条件が満たされると、ステップS134からステップS138によりホバリング維持制御が実行される。
図6に示す処理によれば、あらかじめ複数のゾーンが規定されており、それぞれのゾーンに目標飛行状態が対応付けられている。上部旋回体120の旋回角度が所定のゾーンにある間、対応する目標飛行状態において無人飛行機40のホバリングが継続される。上部旋回体120の旋回角度が属するゾーンが変化すると、目標飛行状態が新たなゾーンに応じて変化し、無人飛行機40が移動して新たな目標飛行状態を維持するように無人飛行機40のホバリングが開始される。このように、上部旋回体120の旋回角度が所定のゾーンにある間、無人飛行機40のホバリングが継続されるので、その間、撮像装置410により取得される前方環境画像の視認性の低下を抑制できる。
【0107】
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施例の構成要素を全部又は複数を組み合わせることも可能である。
【0108】
例えば、上述した実施例において、作業機械1の制御装置10は、ゾーン通知部を備えてもよい。この場合、ゾーン通知部は、ゾーン判定部512により判定されたゾーン(例えば、
図4の第1~第4のゾーンのうちのいずれかのゾーン)を、作業機械1の操作者に通知する。これにより、作業機械1の操作者は、現在、無人飛行機40がどのゾーンに属しているか(すなわち無人飛行機40がどの方向からの前方環境画像を供給しているか)を容易に把握できる。
より具体的には、例えば、上部旋回体120が180度旋回した場合、走行レバー(下部走行体110を走行させるために操作されるレバー)の前後の入力と実際の走行の前後とが通常状態(旋回角度が0度の状態)と逆になるため、作業機械1の操作者が誤操作してしやすくなる。これに対して、上述したゾーン通知部を設けることで、作業機械1の操作者は、下部走行体110に対する上部旋回体120の方向を容易に把握できるので、かかる不都合を防止できる。なお、かかる変形例において、ゾーン通知部は、ゾーンが変化した場合に、変化後のゾーンを通知してもよい。例えば、ゾーン通知部は、上述したホバリング中フラグが“1”にセットされた際に、ゾーンを通知してもよい。あるいは、ゾーン通知部は、常時、前方環境画像にゾーン情報を重畳表示させてもよい。
【符号の説明】
【0109】
1 作業機械
8 周辺機器
10 制御装置
40 無人飛行機
50、50A 飛行制御装置
52 遠隔操作装置
80 画像出力装置
82 センサ類
110 下部走行体
120 上部旋回体
122 キャブ(運転室)
130 旋回機構
140 作業機構
141 ブーム
142 ブームシリンダ
143 アーム
144 アームシリンダ
145 破砕機
146 バケットシリンダ
147 破砕機用シリンダ
150 位置情報取得部
151 姿勢情報取得部
152 旋回角度情報取得部
153 通信処理部
154 画像出力処理部
400 制御装置
401 機体情報取得部
402 目標飛行状態設定部
403 機体制御部
404 通信処理部
410 撮像装置
510 情報取得部
512 ゾーン判定部
514 飛行制御部