(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0008】
(発明の概要)
本発明は、作業機械を遠隔操縦する際、操作指令に対する作業機械の動作を遠隔制御装置側のモニタに表示するシステムに関する。このシステムでは、カメラで撮影して得た作業機械の映像信号を符号化映像信号にエンコードし、通信により遠隔制御装置に送信し、符号化映像信号をデコードしてモニタ表示する。その際、種々の原因で操作指令に対する表示画像に遅延が発生する。そこで、本発明では、遅延の発生が避けられない映像の表示に先駆けて、エンコード・デコード処理が不要なセンサ情報などに基づき作業機械の動作開始などを報知するものである。
【0009】
(第1の実施の形態)
以下、
図1〜8を参照して、本発明による遠隔操縦システムの第1の実施の形態を説明する。
図1および
図2は、遠隔操縦システム1の構成を示すブロック図である。遠隔操縦システム1は、地理的に離れた2つの地点、すなわち動作地点と操作地点にある複数の機器から構成される。動作地点とは、
図1に示すように遠隔操縦される油圧ショベル100が動作する地点である。操作地点とは、
図2に示すように遠隔制御装置70が設置される地点である。2つの地点間のデータの授受は通信ネットワーク15を介して行われる。
【0010】
本発明の第1実施形態としての遠隔操縦システム1の概略を説明する。動作地点の油圧ショベル100は操作地点の遠隔制御装置70で遠隔操縦される。遠隔制御装置70と油圧ショベル100は、操作信号、センサ信号等、遠隔操縦に必要な信号や情報を無線通信により授受する。遠隔制御装置70には、オペレータが油圧ショベルの駆動状況を把握するための表示モニタが搭載されており、遠隔制御装置70からの操作信号により駆動したブームなどの駆動状況がモニタに表示され、オペレータはモニタ画面で実際の駆動状況を把握しながら油圧ショベル100を遠隔操作することが可能となる。
【0011】
通信中継器13Cは、符号化された油圧ショベル100の映像信号を遠隔制御装置70に送信する。遠隔制御装置70の通信部77は、この符号化された映像信号を受信する。その後、通信部77が受信した符号化された映像信号はデコードされて、モニタに出力される。以上の一連の流れにおいて、操作指令の出力時刻と、モニタ表示される時刻に時間差が発生する。実施の形態の遠隔操縦システム1はこの時間差による操作性の低下を改善するものである。
以下、
図1、
図2の順に構成を説明する。
【0012】
図1は、遠隔操縦システム1の動作地点の構成を示すブロック図である。
(油圧ショベルの構成)
油圧ショベル100は、下部走行体100Aと、旋回モータ101と、上部旋回体100Bと、ブーム102Aと、アーム102Bと、バケット102Cと、車体コントローラ50と、コントロールバルブ110と、比例弁111とを備える。下部走行体100Aは、走行モータ105Rおよび走行モータ105Lを備える。走行モータ105Rおよび走行モータ105Lは、下部走行体100Aを駆動させる。旋回モータ101は、上部旋回体100Bを旋回駆動させる。
【0013】
上部旋回体100Bは、ブームシリンダ103A、アームシリンダ103B、およびバケットシリンダ103Cを備え、これらはそれぞれ、ブーム102A、アーム102B、およびバケット102Cを駆動する。以下では、ブーム102A、アーム102B、およびバケット102Cをまとめて、被駆動部102と呼ぶ。
コントロールバルブ110は、これらのシリンダ103A〜103Cやモータ101、105R、105Lの駆動を個々に制御する複数のバルブ要素を備える。後述するD/A変換器54からの駆動信号により駆動されるパイロットバルブとしての比例弁111は、コントロールバルブ110のバルブ要素のそれぞれに駆動信号を与える。
【0014】
(センサ)
油圧ショベル100は、ブーム角検出器104Aと、アーム角検出器104Bと、バケット角検出器104Cと、旋回角検出器104Dとを備える。ブーム角検出器104Aは、ブーム102Aの回転角度を検出してこれに比例した電気信号を出力する。アーム角検出器104Bは、アーム102Bの回転角度を検出してこれに比例した電気信号を出力する。バケット角検出器104Cは、バケット102Cの回転角度を検出してこれに比例した電気信号を出力する。旋回角検出器104Dは、上部旋回体100Bの旋回角度を検出してこれに比例した電気信号を出力する。以下では、ブーム角検出器104A、アーム角検出器104B、バケット角検出器104C、および旋回角検出器104Dをまとめて角度検出器104と呼ぶ。
【0015】
(車体コントローラ)
車体コントローラ50は、油圧ショベル100に内蔵され、遠隔制御装置70から受信する操作信号に基づき比例弁111を制御して被駆動部102の駆動を制御する。詳細な説明は省くが、油圧ショベル100の搭載した操作レバーによっても被駆動部102が駆動される。車体コントローラ50は、演算を行うCPU51と、演算結果等を記憶するRAM52と、CPU51の処理手順を記憶するROM53と、比例弁111にアナログ信号を出力するD/A変換器54と、アナログ信号を取得するA/D変換器55と、車載画像送信部5Aと、車載通信部57とを備える。
【0016】
CPU51は、ROM53に保存されるプログラムをRAM52に展開して実行する。ROM53は、後述する車体操作プログラム53A、および車体情報送信プログラム53Bを保存する。
D/A変換器54は、CPU51からの指令に基づき比例弁111に動作指令を出力する。すなわち、CPU51を起点として、D/A変換器54、比例弁111、およびコントロールバルブ110が動作することにより、被駆動部102が駆動される。しかし、一般の油圧ショベルにおいて、被駆動部102の質量が大きいため、D/A変換器54が比例弁111に動作指令である電気信号を出力してから被駆動部102の動作が開始するまでに0.2秒程度の時間を要することが多い。
【0017】
A/D変換器55は、所定時間ごと、たとえば10msごとに角度検出器104の出力する電気信号を取り込み、CPU51に出力する。CPU51は、A/D変換器55から受信する角度検出器104の出力値を遠隔制御装置70に送信する。角度検出器104の応答およびA/D変換器55の動作は以下で述べるエンコード処理に比べて高速であり、たとえば角度が変化すると0.01秒以下でA/D変換器55の出力が変化する。
【0018】
車載画像送信部5Aは、後述する車載カメラ4により撮影された映像を符号化、すなわちエンコードし、車載通信部57を経由して遠隔制御装置70に送信する。換言すると、車載画像送信部5Aは、車載カメラ4の出力する映像信号を符号化し、符号化映像信号を出力する。エンコード処理は、車載カメラ4から映像信号が入力されると逐次行われる。エンコード処理は比較的短時間で行われるが、油圧ショベル100の運転には無視できない時間、たとえば0.5秒程度の時間を要する。たとえば、車載カメラ4が0時0分0秒から1分間にわたって車載画像送信部5Aに映像信号を出力する場合に、エンコード処理に0.5秒の時間を要する場合は、車載画像送信部5Aからの符号化映像信号の出力は0時0分0.5秒に開始され、0時1分0.5秒に終了する。
上述したように、車載カメラ4により撮影された映像がエンコードされ、遠隔制御装置70に送信される時間より角度検出器104が検出する角度信号が遠隔制御装置70に送信される時間の方が短い。
【0019】
車載通信部57は、操作地点に設置された遠隔制御装置70と通信を行う無線通信ユニットである。車載通信部57は、操作信号を受信するとCPU51に出力する。CPU51は、操作信号を受信するとデータの整合性を確認し、問題がないと判断すると正常に受信した旨の通知、いわゆるACK応答を遠隔制御装置70に返信する。車載通信部57は、CPU51から入力された情報を遠隔制御装置70に送信する。車載通信部57は、車載画像送信部5Aの出力する符号化映像信号を遠隔制御装置70に送信する。
【0020】
(カメラ)
遠隔操縦システム1は、車載カメラ4および外部カメラ2を備える。これらのカメラの視点は、油圧ショベル100の運転室からの視点、および少し離れた位置から油圧ショベル100の全体を俯瞰する視点である。
油圧ショベル100は、バケット102C付近を撮影する車載カメラ4を備える。車載カメラ4は上部旋回体100Bに備えられる運転室の上部に設けられ、車載カメラ4の光軸はバケット102Cの動作軸と交差する。すなわち、車載カメラ4はバケット102Cを斜めから観察するので、撮影して得られた映像からバケット102Cの奥行き方向の位置を容易に把握できる。
【0021】
遠隔操縦システム1は、油圧ショベル100及びその周辺を俯瞰する外部カメラ2と、外部カメラ2が出力する映像をエンコードする外部画像送信部5Bと、外部画像送信部5Bが出力するエンコードされた映像を送信する外部通信部13Bとを油圧ショベル100の周辺に備える。車載カメラ4から得られる映像だけでは、遠隔操作を行うオペレータが周辺状況を把握することが困難であるため、外部カメラ2により得られる映像も参照して遠隔操縦を行う。特に、車載カメラ4は上部旋回体100Bに備えられるため、油圧ショベル100が旋回動作を行う際には車載カメラ4よりも外部カメラ2により撮影された映像が遠隔操縦に有用である。
【0022】
外部画像送信部5Bは、外部カメラ2により撮影された映像を符号化、すなわちエンコードし、外部通信部13Bを経由して操作地点に送信する。エンコード処理は、外部カメラ2から映像が入力されると逐次行われる。エンコード処理は比較的短時間で行われるが無視できない時間、たとえば0.5秒の時間を要する。
車載カメラ4および外部カメラ2は常時撮影を行っており、遠隔制御装置70からの動作指令にかかわらず、遠隔制御装置70に撮影して得られた映像を送信する。
【0023】
(通信)
遠隔操縦システム1は、操作地点の油圧ショベル100と通信を行うために、車載通信部57と、外部通信部13Bと、通信中継器13Cとを備える。車載通信部57と、外部通信部13Bと、通信中継器13Cとは、それぞれ無線アンテナ14A〜Cを備える。通信中継器13Cは、車載通信部57、および外部通信部13Bと無線により短距離の通信を行う。
図2に示すように、通信中継器13Cは、通信ネットワーク15を経由して操作地点の通信中継器13Cと通信を行う。通信ネットワーク15とは、構内LAN、インターネット回線、または専用通信回線である。
【0024】
車載カメラ4により撮影されエンコードされた符号化映像信号と、角度検出器104の出力信号はいずれも、車載通信部57、通信中継器13C、通信ネットワーク15を経由して遠隔制御装置70に到達する。1枚の画像を形成する符号化映像信号は、角度検出器104の出力信号よりも容量が大きいので、以下の段落で説明する理由により、通信だけに着目しても符号化映像信号は角度検出器104の出力信号よりも遅れが生じやすい。
【0025】
通信ネットワーク上に送信されるデータは、送受信を容易にするために小さいデータの固まり、すなわちパケットに分割して送信される。パケット信号は受信側の遠隔制御装置70で復元される。パケットの通信経路は、通信経路中に存在するルータのルーティングテーブルの記述にしたがって決定される。ルーティングテーブルは、通信路の負荷などによって時々刻々と更新されるので、あるデータを構成するパケット数が多いほど経路にばらつきが生じ、各パケットが受信側の遠隔制御装置70に到着するまでの通信に要する時間もばらつきやすい。データを構成する全てのパケットが到着しなければデータを復元できないので、パケット数が多いほど、すなわちデータのサイズが大きいほど通信に要する時間が長くなる傾向にある。
【0026】
(遠隔制御装置)
遠隔制御装置70は、所要の演算を行うCPU71と、CPU71の演算結果等を記憶するRAM72と、CPU71の処理手順を記憶するROM73と、スイッチ81の操作情報入力を取り込むDI74と、操作レバー80の信号をディジタル値に変換するA/D変換器75と、エンコードされた映像信号をデコードする画像受信部78A,78Bと、運転室視点モニタ82Aおよび俯瞰用モニタ82Bに映像を出力するモニタ出力部76と、操作地点と通信を行う通信部77とを備える。
【0027】
RAM72には、油圧ショベル100に操作指令を送信した最終時刻を表す最終操作時刻toと、油圧ショベル100から操作指令を正常に受信した旨の通知、いわゆるACK応答を受信した最終時刻を表す最終受信時刻trとが保存される。
ROM73には、後述する指令送信プログラム73Aと、姿勢描画プログラム73Bと、表示属性表73Cとが保存される。指令送信プログラム73A、および姿勢描画プログラム73Bは、RAM72に展開されてCPU71により実行される。
【0028】
画像受信部78A,78Bは、通信部77が受信するエンコードされた符号化映像信号を復号化、すなわちデコードし、映像信号をモニタ出力部76に出力する。デコード処理は、通信部77から映像信号を受信すると逐次行われる。デコード処理は比較的短時間、たとえば1秒で行われるが、油圧ショベル100の運転には無視できない。通信部77が0時1分1秒から1分間にわたって画像受信部78Aに符号化映像信号を出力する場合に、デコード処理に1秒の時間を要する場合は、画像受信部78Aからの出力は0時1分2秒に開始され、0時2分2秒に終了する。
モニタ出力部76は、画像受信部78A,78Bが出力する映像信号に、CPU71が出力する映像を重畳して運転室視点モニタ82A、および俯瞰用モニタ82Bに出力する。
オペレータは、運転室視点モニタ82Aおよび俯瞰用モニタ82Bを見ながら操作レバー80を操作する。
【0029】
(姿勢描画プログラム)
姿勢描画プログラム73Bは、油圧ショベル100に取り付けられた角度検出器104の出力を用いて油圧ショベル100の姿勢を推定する。姿勢描画プログラム73Bはさらに、車載カメラ4の取付け位置・姿勢に基づき、車載カメラ4に撮影された画像内における被駆動部102の位置および姿勢を推定し、その外形を表す線図(以下、「推定線画」とも言う)をモニタ出力部76に出力する。推定線画の描画に用いられる線種は、後述する表示属性表73Cを用いて決定される。
【0030】
モニタ出力部76は、画像受信部78Aがデコードした映像信号に、姿勢描画プログラム73Bが出力する推定線画を重畳して出力する。
姿勢描画プログラム73Bの演算は短時間、たとえば1ms以内に終了するため、上述した油圧ショベルの画像が車載カメラ4により撮影し、油圧ショベルの映像が運転室モニタに映し出されるよりも早い。従って、ある瞬間に油圧ショベル100が動いた場合に、その動きを車載カメラ4が撮影してその映像が運転室視点モニタ82Aから出力されるよりも先に、角度検出器104の出力に基づく姿勢描画プログラム73Bの推定結果が運転室視点モニタ82Aから出力される。
【0031】
(表示属性表)
表示属性表73Cは、姿勢描画プログラム73Bが推定した油圧ショベル100の外形を描画する推定線画の線種の決定に用いられる表である。線種は、表示属性表73C、およびRAM72に保存される最終操作時刻toと最終受信時刻trとから決定される。最終操作時刻toは、操作信号を最後に出力した時刻であり、最終受信時刻trは操作信号に対する受信応答ACKを受信した時刻である。
【0032】
図3は、表示属性表73Cの一例を示す図である。CPU71は、表示属性表73Cを参照する時刻と、最終操作時刻toとの時間差が時間ho未満であるか否かにより表示属性表73Cの行を選択する。CPU71は、表示属性表73Cを参照する時刻と、最終受信時刻trとの時間差が時間hr未満であるか否かにより表示属性表73Cの列を選択する。以上より、表示属性表73Cを参照する時間と、最終受信時刻t0と、最終操作時間trとの差に応じて、破線、一点鎖線、二重線、実線のいずれかで、姿勢描画プログラム73Bが推定した油圧ショベル100の外形が、上述した運転室視点モニタ82Aに表示されることとなる。
【0033】
(動作例)
図4を用いて、遠隔操縦システム1の動作例を説明する。
図4(A)〜(F)は、運転室視点モニタ82Aに表示される被駆動部102を示す図である。
図4(D)を一例で説明すると、車載カメラ4により撮影されたアーム102Bとバケット102Cの実映像は斜線で示すアーム実画像102BGとバケット実画像102CGで示される。一方、姿勢描画プログラム73Bが推定する被駆動部102の位置・姿勢は、破線で示すアーム推定画像102BS、バケット推定線画102CSで示される。推定線画102BS,102CSの線種は、上述したように、
図3に例示した表示属性表73Cを参照して決定される。なお、
図4(A)〜(F)の右上にドットで示す領域はブーム102Aの一部の実映像である。
【0034】
遠隔制御装置70は、油圧ショベル100から短い時間間隔で角度検出器104の出力を受信し、姿勢描画プログラム73Bに入力する。運転室視点モニタ82Aには、車載カメラ4により撮影された実映像に、姿勢描画プログラム73Bが推定する被駆動部102の位置・姿勢が上述した表示属性表73Cに基づき決定された線種で推定線画として重畳して表示される。 以下の例では、十分に長い時間操作を行わなかった場合、(例えば、最終操作時間t0から、時間h0以上、最終受信時刻trから時間hr以上操作を行っていない場合)に、その後オペレータが操作レバー80を一定時間操作し、操作を終了してから所定時間が経過するまでの運転室視点モニタ82Aに表示される映像の遷移を説明する。
【0035】
上述した、オペレータが長時間操作を行わない場合は、最終操作時刻toから時間ho以上、最終受信時刻trから時間hr以上経過している。そのため、CPU71により表示属性表73Cから、姿勢描画プログラム73Bが推定した油圧ショベル100の外形を描画する推定線画の線種として「実線」が選択される。また、このとき油圧ショベル100が長時間動作していないため、車載カメラ4により撮影された実映像の輪郭線は、姿勢描画プログラム73Bが推定する被駆動部102の推定線画と一致する。そのため、
図4(A)に示すように、被駆動部102の推定線画102BS,102CSは、車載カメラ4により撮影された実映像の外形と一致して表示される。
【0036】
上述した、オペレータが長時間操作を行わない状態から、オペレータが操作レバー80を操作すると、油圧ショベル100にその操作指令が送信されるとともに最終操作時刻toが更新される。しかし、その瞬間にはまだ油圧ショベル100からACKを受信していないので最終受信時刻trは更新されず、CPU71により表示属性表73Cから「一点鎖線」が選択される。そのため、
図4(B)に示すように、
図4(A)と比較して推定線画の線種のみが変更された画像が運転室視点モニタ82Aに表示される。なお、これ以後も
図4(D)の映像が表示されるタイミングまでは、オペレータは同じ操作を継続することとする。
【0037】
そのままオペレータが操作を継続すると最終操作時刻toは更新され続ける。油圧ショベル100は、操作指令を受信し遠隔制御装置70にACK信号を送信するとともに、被駆動部102を駆動すべくD/A変換器54に動作指令を出力する。ACK信号を受信した遠隔制御装置70は最終受信時刻trを更新する。従って、表示属性表73Cを参照した時刻と、最終操作時刻t0との差はh0未満となり、表示属性表73Cを参照した時刻と、最終受信時刻との差がhr未満となり、CPU71は、表示属性表73Cから推定線画の線種として「破線」を選択する。しかし、まだ油圧ショベル100は動き始めていないので、角度検出器104の出力および車載カメラ4により撮影された実映像に変化はない。そのため、
図4(C)に示すように、
図4(A)〜(B)と比較して推定線画の線種のみが破線に変更された映像が運転室視点モニタ82Aに表示される。
【0038】
オペレータの操作レバー80の操作により被駆動部102に対する操作指令が出力された場合、被駆動部102が動作を開始し、被駆動部102の変位が角度検出器104により測定される。ここで、オペレータの操作レバー80の操作から、1秒経過した状況において説明する。この状況においては、角度検出器104の出力は、A/D変換器55を経て遠隔制御装置70に送信され、遠隔制御装置70の姿勢描画プログラム73Bにより、被駆動部102の位置および姿勢が推定され、モニタ出力部76には、推定線画が出力される。しかし、車載カメラ4によって撮影された、操作指令により動作を開始する被駆動部102の映像は処理時間を要するエンコード、およびデコードを経てモニタ出力部76に出力されるので、まだ車載カメラ4により撮影された映像は変化しない。そのため、
図4(D)に示すように、推定線画102BS,102CSのみが移動している映像が運転室視点モニタ82Aに表示される。
【0039】
オペレータが操作レバー80の操作を終了して時間hoが経過すると、CPU71により表示属性表73Cから「二重線」が選択される。動作を開始した被駆動部102を車載カメラ4が撮影して得られた映像が、エンコードおよびデコードを経てモニタ出力部76に出力される。そのため、
図4(E)に示すように、推定線画の線種が二重線に変更され、車載カメラ4が撮影した斜線で示す実映像も移動している動画が運転室視点モニタ82Aに表示される。
【0040】
さらに十分な時間、少なくとも油圧ショベル100からACK信号を受信してから時間hrが経過すると、CPU71により表示属性表73Cから「実線」が選択される。また、動作を終了した被駆動部102の実映像もモニタ出力部76に出力される。そのため、
図4(F)に示すように、推定線画の線種が実線に変更され、車載カメラ4が撮影した実映像が先に移動した推定線画に重なっているモニタ画像が運転室視点モニタ82Aに表示される。
【0041】
(フローチャート)
以下、
図5〜8を参照して油圧ショベル100の車体コントローラ50が実行するプログラム、および遠隔制御装置70が実行するプログラムの動作を説明する。
【0042】
(指令送信プログラム)
図5は、遠隔制御装置70が実行する指令送信プログラム73Aの処理内容を示すフローチャートである。以下で説明する各ステップの実行主体は、遠隔制御装置70のCPU71である。遠隔制御装置70は、オペレータにより操作レバー80が操作されると、以下の動作を行う指令送信プログラム73Aを実行する。
ステップS700において、遠隔制御装置70は、A/D変換器75からオペレータによる操作レバー80の操作を電圧値として取得し、ステップS701に進む。
ステップS701において、遠隔制御装置70は、ステップS700において読み込んだ電圧値に対して既知のスケーリング変換を行い、電圧値を操作レバー80が操作された角度を示す数値に変換してステップS702に進む。
【0043】
ステップS702において、遠隔制御装置70は、ステップS701において変換した角度を示す数値に基づき、データの整合性を確認する情報を算出する。データの整合性を確認する情報とは、たとえば、パリティビット、ハッシュ、チェックサムなどである。遠隔制御装置70は、ステップS701において変換した角度を示す数値と、算出したデータの整合性を確認する情報とを操作データとして油圧ショベル100に送信し、ステップS703に進む。ステップS703では、操作レバーが中立位置に対応するか否かを判断し、操作レバーが中立位置にあると判断する場合は
図5により動作が表されるプログラムを終了し、中立以外であると判断する場合はステップS704に進む。
ステップS704において、遠隔制御装置70は、最終操作時刻toを現在時刻に更新し、ステップS700に戻る。
【0044】
(車体操作プログラム)
図6は、油圧ショベル100の車体コントローラ50が実行する車体操作プログラム53Aの処理内容を示すフローチャートである。以下で説明する各ステップの実行主体は、車体コントローラ50のCPU51である。車体コントローラ50は、車載通信部57が遠隔制御装置70から操作データを受信するたびに、以下の動作を行う車体情報送信プログラム53Bを実行する。換言すると、
図5のステップS702が実行されるたびに、車体情報送信プログラム53Bが実行される。
ステップS500において、車体コントローラ50は、車載通信部57からCPU51に操作データを読み込み、ステップS501に進む。
【0045】
ステップS501において、車体コントローラ50は、操作データに含まれるデータの整合性を確認する情報を用いて、受信した操作データにエラーがあるか否かを判断する。エラーがあると判断する場合は、
図5により動作が表されるプログラムを終了する。エラーがないと判断する場合はステップS502に進む。
ステップS502において、車体コントローラ50は、受信した角度を示す数値に基づきD/A変換器54に動作指令を出力し、ステップS503に進む。
ステップS503において、車体コントローラ50は、遠隔制御装置70に操作データを正常に受信したことを知らせるために、ACK信号を送信し、
図6により動作が表されるプログラムを終了する。
【0046】
(車体情報送信プログラム)
図7は、油圧ショベル100の車体コントローラ50が実行する車体情報送信プログラム53Bの処理内容を示すフローチャートである。以下で説明する各ステップの実行主体は、車体コントローラ50のCPU51である。車体コントローラ50は、短い時間間隔ごと、たとえば0.01秒ごとに以下の動作を行う車体情報送信プログラム53Bを実行する。
ステップS510において、車体コントローラ50は、ブーム角検出器104A、アーム角検出器104B、バケット角検出器104C、および旋回角検出器104Dから角度を表す検出信号を電圧値として読み込み、ステップS511に進む。
【0047】
ステップS511において、車体コントローラ50は、ステップS510において読み込んだ電圧値に対して既知のスケーリング変換を行い、電圧値を角度に変換してステップS512に進む。
ステップS512において、車体コントローラ50は、ステップS511において変換した4つの角度を車体情報として遠隔制御装置70に送信し、
図7により動作が表されるプログラムを終了する。
【0048】
(姿勢描画プログラム)
図8は、遠隔制御装置70が実行する姿勢描画プログラム73Bの処理内容を示すフローチャートである。以下で説明する各ステップの実行主体は、遠隔制御装置70のCPU71である。遠隔制御装置70は、油圧ショベル100から車体情報またはACK信号を受信すると
図8により動作が表されるプログラムを実行する。
ステップS710において、遠隔制御装置70は、受信したデータが、車体情報およびACK信号のいずれであるかを判断する。車体情報であると判断する場合はステップS711に進み、ACK信号であると判断する場合はステップS721に進む。
【0049】
ステップS711において、遠隔制御装置70は、車体情報を用いて油圧ショベル100の三次元姿勢を算出する。ブームシリンダ103A、アームシリンダ103B、およびバケットシリンダ103Cの自由度はそれぞれ「1」なので、ブーム角検出器104A、アーム角検出器104B、およびバケット角検出器104Cの出力に基づいて油圧ショベル100の三次元姿勢を算出する。次にステップS712に進む。
【0050】
ステップS712において、遠隔制御装置70は、既知である車載カメラ4の取付け位置、および車載カメラ4の撮影方向に基づき、車載カメラ4により撮影されると推定する被駆動部102の位置および姿勢に応じた推定線画を算出する。次にステップS713に進む。
ステップS713において、遠隔制御装置70は、表示属性表73Cを参照し、最終操作時刻to、および最終受信時刻trに基づき、推定線画の表示に用いる線種を決定し、ステップS714に進む。
【0051】
ステップS714において、遠隔制御装置70は、ステップS712において算出した被駆動部102の推定線画を、ステップS713において決定した線種により描画してモニタ出力部76に出力する。
図8により動作が表されるプログラムを終了する。
受信したデータがACK信号であると判断される場合に実行されるステップS721において、遠隔制御装置70は、最終受信時刻trを現在時刻に更新して
図8により動作が表されるプログラムを終了する。
【0052】
上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)遠隔操縦システム1は、遠隔制御装置70、および遠隔制御装置70と通信ネットワーク15により接続される作業機械、すなわち油圧ショベル100を備える。油圧ショベル100の少なくとも被駆動部102が遠隔制御装置70から操作される。遠隔制御装置70は、油圧ショベル100の少なくとも被駆動部102を操作する操作信号を生成する信号生成部、すなわちA/D変換器75と、作業機械に操作信号を送信し、作業機械の動作に関する情報、および符号化された被駆動部102の映像信号を受信する通信部77とを備える。遠隔制御装置70はさらに、符号化された被駆動部102の映像信号を復号化するデコード部と、デコード部が復号化した映像信号に基づく実映像を表示する表示部、すなわち運転室視点モニタ82Aと、デコード部における処理を経ずに、作業機械の動作に関する情報に基づいて操作信号による作業機械の動作を報知する報知部、すなわち運転室視点モニタ82Aとを備える。
【0053】
このように構成された遠隔操縦システム1では、エンコード・デコードなどの遅延を生じさせる処理が不要である作業機械の被駆動部102の動作に関する情報に基づいて、作業機械の動作を報知し、動作開始時においても作業機械の動作をオペレータが把握することができる。すなわち、被駆動部102に操作指令を与えた時、エンコード・デコードが必要な被駆動部102の実映像が更新されるよりも早いタイミングで被駆動部102の動作をオペレータに報知することができ、オペレータはカメラ画像の通信遅延の影響を考慮せずに油圧ショベルの遠隔操縦を行うことが可能となり、操作性の低下を補うことができる。また、オペレータは報知よりは遅れるものの被駆動部102の映像も得られるため、その映像を見ながら遠隔操縦を行うことができる。さらに、被駆動部102の動作遅れと、実映像の更新遅れとを別々に把握することができるため、システムの不具合が予想できたときに的確に原因の推定と対策が可能となる。
【0054】
(2)作業機械の動作に関する情報は、作業機械が動作する前兆を示す信号、および作業機械が動作していることを示す信号の少なくとも一方である。
そのため、オペレータは作業機械に操作指令が伝達されたことを映像の更新、すなわち映像の変化に先んじて知ることができる。たとえば、オペレータが入力操作を行ったにもかかわらず被駆動部102の実映像が変化しないと、入力操作が受け付けられていないと誤解して過大な入力を行う恐れがある。しかし本システムによれば、入力が伝達されたことが運転室視点モニタ82Aに表示される被駆動部102の外形線の線種が変化することにより、換言すると推定線画の変化により報知されるので、過大な入力がされる恐れがない。さらに、操作信号が届いているか否かの確認が可能となり、遠隔操縦システム1のトラブルシュートにも有効に機能する。
【0055】
(3)作業機械が動作する前兆を示す信号とは、操作信号を作業機械が受信したことを示す信号、すなわちACK信号であり、作業機械が動作していることを示す信号とは、当該作業機械の動作を測定するセンサの出力信号、すなわちブーム角検出器104A、アーム角検出器104B、およびバケット角検出器104Cの出力信号である。
そのため、ACK信号を送信することにより作業機械が動作するのを待たずに迅速な応答が得られる。作業機械が動作したことによる変化をセンサで計測し、計測結果を送信することにより、動作が確実に行われたことを示すことができる。
【0056】
(4)作業機械の動作に関する情報は、作業機械に設置されたブーム角検出器104A、アーム角検出器104B、およびバケット角検出器104Cの出力を含む情報である。遠隔制御装置70は、ブーム角検出器104A、アーム角検出器104B、およびバケット角検出器104Cの出力に基づき被駆動部102の姿勢を推定し、この推定に基づく推定線画を生成する姿勢推定部、すなわち姿勢描画プログラム73Bを備える。
運転室視点モニタ82Aは、実映像および推定線画を表示する。
そのため、被駆動部102がこれからどのように動作するかを、撮影した実映像よりも早期に、なおかつ視覚的に報知することができる。
【0057】
(5)油圧ショベル100は、映像信号を生成する撮像部、すなわち車載カメラ4を備える。遠隔制御装置70の姿勢推定部は、推定した姿勢ならびに車載カメラ4の取付け位置および姿勢に基づき、当該被駆動部102が車載カメラ4に撮影されると得られる当該被駆動部102の外形を示す推定線画を生成する。運転室視点モニタ82Aは、実映像に推定線画を重畳して表示する。
そのため、算出された被駆動部102の位置・姿勢は、撮影した被駆動部102の実映像に重畳されて表示するので、オペレータは被駆動部102の動作方向や動作量を的確に把握できる。
【0058】
また、作業機械のバケット等の操作箇所を接触させて停止するような操作の場合にも、以下の利点がある。すなわち、撮影した被駆動部102の実映像により接触を確認する前に、被駆動部102が接触にて停止したことを確認できるため余分に操作することがない。すなわち、オペレータは被駆動部102を撮影して得た実映像の情報のみを得る場合に比べて、画像遅延の影響を低減した遠隔操作が可能となる。
【0059】
(6)油圧ショベル100は、遠隔制御装置70から動作指令を受信する車載通信部57と、遠隔制御装置70からの信号に基づき動作する被駆動部102と、少なくとも被駆動部102の一部を撮影する車載カメラ4と、車載カメラ4が撮影して得られた映像を符号化するエンコード部、すなわち車載画像送信部5Aと、当該油圧ショベル100の動作に関する情報を生成する動作情報生成部、すなわち角度検出器104およびACK信号を生成するCPU51と、を備える。車載通信部57は、符号化された車載カメラ4の映像および当該油圧ショベル100の動作に関する情報を遠隔制御装置70に送信する。
そのため、油圧ショベル100は、遠隔制御装置70と協調して動作を行う。
【0060】
以上説明した第1の実施の形態は、以下のように変形してもよい。
(1)被駆動部102の全体に同一の表示属性を割り当てたが、個別に表示属性を割り当ててもよい。すなわち、ブーム102A、アーム102B、バケット102Cについて個別に最終操作時刻to、および最終受信時刻trを管理する。そして、ブーム102A、アーム102B、バケット102Cについて別々に線種を決定し、運転室視点モニタ82Aに表示する。これにより、ブーム102A、アーム102B、バケット102Cそれぞれの応答特性を把握することができる。
【0061】
(2)表示属性表73Cでは、条件ごとに線種を定義していたが、条件ごとに色を定義してもよいし、条件ごとに線種と色とを定義してもよい。
(3)油圧ショベル100が実行する車体操作プログラム53Aは、操作指令を正常に受信したことを示すACK信号に代えて、被駆動部102へ駆動指令を出力したことを遠隔制御装置70に送信してもよい。
(4)車載カメラ4は、遠隔制御装置70からの指令により動作可能であってもよい。すなわち、車載カメラ4がパン・チルト・ズーム機能を備え、遠隔制御装置70から操作可能であってもよい。この場合は、車載カメラ4により撮影される被駆動部102の位置および姿勢の推定(
図8のステップS712)において、パン・チルト・ズームの設定値を参酌する。
【0062】
(5)俯瞰用モニタ82Bに表示される油圧ショベル100の位置・姿勢を、運転室視点モニタ82Aに表示される被駆動部102の位置・姿勢と同様に推定し、重畳して表示してもよい。特に旋回動作や直進動作を行った場合に、運転室視点モニタ82Aに表示される推定した被駆動部102の位置・姿勢が変化しないため有用である。
(6)車載通信部57と、外部通信部13Bと、通信中継器13Cとの通信は、無線に限定されない。いずれか1か所、または複数が有線による通信を行ってもよい。
(7)遠隔操縦システム1は、通信中継器13Cを備えずに、車載通信部57、および外部通信部13Bが直接に通信部77と通信を行ってもよい。
(8)遠隔制御装置70は、油圧ショベル100を遠隔操縦したが遠隔操縦する対象はこれに限定されない。遠隔制御装置70が遠隔操縦を行う対象は、ホイールローダーやクレーンなどの、他の作業機械でもよい。
【0063】
(第2の実施の形態)
図9〜12を参照して、本発明にかかる遠隔操縦システム1の第2の実施の形態を説明する。以下の説明では、第1の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第1の実施の形態と同じである。本実施の形態では、主に、運転室視点モニタ82Aに描画する実映像に重畳して表示する情報が第1の実施の形態と異なる。
図9は、第2の実施の形態における遠隔操縦システム1の構成を示すブロック図である。
図9は、第1の実施の形態の
図2に相当する。
第2に実施の形態における遠隔操縦システム1の構成は、遠隔制御装置70のROM73にさらに表示色表73Dが保存されている点が第1の実施の形態と主に異なる。また、ROM73に保存されている姿勢描画プログラム73Bの動作も異なる。
【0064】
(表示色表)
図10は、表示色表73Dの一例を示す図である。角速度の大きさと、それに対応する色および明るさが示されている。たとえば、角速度が0度付近であれば無色が選択され、角速度が大きくなると順に暗い赤、明るい赤へと変化する。角速度が0度から小さくなると、すなわちマイナス方向に大きくなると、暗い青、明るい青へと変化する。このとき、角速度のプラスとマイナスは、予め角度検出器104の動作方向に応じて設定する。本実施の形態では、アームやバケットを本体側に巻き込む方向をプラスと設定する。
【0065】
(動作の概要)
遠隔制御装置70は、油圧ショベル100から受信する車体情報に基づき、運転室視点モニタ82Aのモニタ画像として、
図11のような入力操作を示す画像情報を被駆動部102の実映像に重畳して表示する。オペレータによる入力操作を示す四方向矢印800L、800Rの外枠の線種と、操作方向を示すハッチングの色を以下のように決定する。
遠隔制御装置70は、第1の実施の形態において推定線画の線種を決定した手法を用いて、入力操作を示す表示の外枠の線種を決定する。すなわち、表示属性表73C、およびRAM72に保存される最終操作時刻toと最終受信時刻trとから線種を決定する。
遠隔制御装置70は、油圧ショベル100から受信した角度検出器104の検出した角度を対象に微分演算を行い、角速度を求める。遠隔制御装置70は、
図10の表示色表73Dを参照して算出した微分値より求めた角速度に対応する色および明るさを決定し、操作方向を示すハッチングに用いる。
【0066】
(表示例)
図11は、オペレータがアーム102Bを伸ばす操作を行っている場合の、運転室視点モニタ82Aの表示の一例である。図中の斜線で示すハッチング部は、車載カメラ4により撮影された被駆動部102の映像を示している。図中の2つの四方向矢印800L、800Rは、姿勢描画プログラム73Bにより作成された、オペレータによる入力操作を示す表示である。2つの四方向矢印800L、800Rの外枠は、破線を用いて表示されている。四方向矢印800Lの左方向のみが明るい青によりハッチングされ、四方向矢印800Lの他の方向、および四方向矢印800Rの全ての方向はハッチングされていない。
【0067】
操作レバー80は2本あり、左レバーの上下方向が旋回、左レバーの左右方向がアーム102Bの伸縮、右レバーの上下方向がブーム102Aの上げ下げ、右レバーの左右方向がバケット102Cのクラウド・ダンプに対応する。遠隔制御装置70は、角度検出器104が検出した角度を対象に微分演算を行う。遠隔制御装置70は、アーム102Bの角度が大きく減少していることから、表示属性表73Cを参照して入力操作を示すハッチングの色として明るい青を選択する。ブーム102Aおよびバケット102Cの角度変化はなかったため、入力操作を示すハッチングの色として無色を選択する。遠隔制御装置70は、角度検出器104が検出した角度の微分値に基づき、操作レバー80の左レバーが左方向に入力されていると推定し、ハッチング部分として四方向矢印800Lの左方向を選択する。そのため運転室視点モニタ82Aには、四方向矢印800Lの左方向が明るい青によりハッチングされて表示される。
【0068】
(フローチャート)
図12は、第1の実施の形態における
図8のフローチャートに代わって、遠隔制御装置70が実行する姿勢描画プログラム73Bの処理内容を示すフローチャートである。遠隔制御装置70は、油圧ショベル100から車体情報またはACK信号を受信すると
図12により動作が表されるプログラムを実行する。ここで、車体情報とは、ブーム角検出器104A、アーム角検出器104B、バケット角検出器104C、および旋回角検出器104Dの検出する角度を含む情報である。
【0069】
ステップS710aにおいて、遠隔制御装置70は、受信したデータが、車体情報およびACK信号のいずれであるかを判断する。車体情報であると判断する場合はステップS731に進み、ACK信号であると判断する場合はステップS721に進む。
ステップS731において、遠隔制御装置70は、今回受信した角度情報、および過去に受信した角度情報を用いて、ブーム角、アーム角、バケット角、旋回角の微分演算を行いステップS732に進む。
【0070】
ステップS732において、遠隔制御装置70は、表示色表73Dを参照して、ステップS731における演算結果から表示色、すなわちブーム角、アーム角、バケット角、旋回角の操作表示に用いる色および明るさを決定する。次にステップS713aに進む。
ステップS713aにおいて、遠隔制御装置70は、表示属性表73Cを参照し、最終操作時刻to、および最終受信時刻trに基づき、四方向矢印800L、800Rの外枠の表示に用いる線種を決定し、ステップS733に進む。
【0071】
ステップS733において、遠隔制御装置70は、既知である操作レバー80の操作方向と被駆動部102の動作の組み合わせ、およびステップS731における演算結果から、オペレータによるレバーの入力を推測する。四方向矢印800L、800Rの画像に推測したレバー入力をハッチングとして追記し、ステップS734に進む。
ステップS734において、遠隔制御装置70は、ステップS733において作成した四方向矢印800L、800Rの画像をモニタ出力部76に出力し、
図12により動作が表されるプログラムを終了する。
【0072】
以上説明した第2の実施の形態では、以下の作用効果を奏する。ただし、第1の実施の形態と共通する作用効果は省略する。
(1)遠隔制御装置70は、受信した車体情報を用いてオペレータによる操作レバー80への操作入力を推定し、推定した操作入力を2つの四方向矢印800L、800Rとして運転室視点モニタ82Aに出力する。
そのため、オペレータは入力が正しく伝達されていることを、視覚的に確認することができる。
(2)遠隔制御装置70は、受信した車体情報を用いて被駆動部102の動作の有無および変化率の大きさを判断し、色および明るさを用いて運転室視点モニタ82Aに出力する。
そのため、形状だけでなく色と明るさの多彩な情報を用いて直感的に分かりやすく報知することができる。
【0073】
上述した第2の実施の形態を以下のように変形してもよい。
(1)操作レバー80の推定操作表示に代えて、バケット102Cが移動する方向を表示してもよい。たとえば、
図13に示すように運転室視点モニタ82Aに四方向矢印810を表示し、車体情報に基づきバケット102Cが移動する方向の矢印を他と異なる態様で表示してもよい。
図13の例では、バケット102Cが左に移動することを示している。
(2)操作レバー80の推定操作表示に代えて、バケット102Cのクラウド・ダンプ動作を矢印で表示してもよい。たとえば、
図14に示すように運転室視点モニタ82Aに、ダンプ動作を示す外向き矢印820Uと、クラウド動作を示す内向き矢印820Dを表示可能とする。遠隔制御装置70は、車体情報に基づきバケット102Cの動作にあわせて、外向き矢印820Uまたは内向き矢印820Dを表示してもよい。
【0074】
(3)操作レバー80の推定操作表示に代えて、動作中であることを表すアイコンや図柄を表示してもよい。たとえば、
図15に示すように運転室視点モニタ82Aの一部に動作中であることを示す表示領域830を設ける。遠隔制御装置70は、車体情報に基づき動作中であると判断すると、表示領域830に動作中であることを示す表示を行う。たとえば、動作をしていない場合は透明表示を行い、動作中であると判断すると赤い半透明の丸を表示する。
さらに、動作中であることを運転室視点モニタ82Aに表示する代わりに、不図示のランプ、ブザー、または振動子を用いてオペレータに報知してもよい。動作しているか否かの判定は各部位の方向や動作速度を判定するシステムに比べて判定処理負荷が小さいが、動きだしの判定や衝突判定には有効であり、画像遅延の影響を低減した遠隔操作が可能となる。
【0075】
(4)油圧ショベル100は、ブーム角、アーム角、バケット角、および旋回角を検出する角度センサを備えたが、角度センサに代えて、角速度センサ、または加速度センサを備えてもよい。角速度センサおよび加速度センサを用いても、第2の実施の形態と同様の作用効果を得ることができる。
(5)四方向矢印800L、800Rの外枠の線種は、最終操作時刻toと最終受信時刻trからの経過時間によらず一定の表示としてもよい。たとえば、常に四方向矢印800L、800Rの外枠の線種は破線として、ハッチング表示を行う四方向矢印800L、800Rの個所、およびハッチングの色・明るさを変化させてもよい。
【0076】
上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。
上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。