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

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

▶ ヤンマーホールディングス株式会社の特許一覧

特開2023-167080自動走行方法、自動走行システム、及び自動走行プログラム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023167080
(43)【公開日】2023-11-24
(54)【発明の名称】自動走行方法、自動走行システム、及び自動走行プログラム
(51)【国際特許分類】
   G05D 1/02 20200101AFI20231116BHJP
   A01B 69/00 20060101ALI20231116BHJP
【FI】
G05D1/02 H
A01B69/00 Z
A01B69/00 303K
A01B69/00 303M
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2022077964
(22)【出願日】2022-05-11
(71)【出願人】
【識別番号】720001060
【氏名又は名称】ヤンマーホールディングス株式会社
(74)【代理人】
【識別番号】100167302
【弁理士】
【氏名又は名称】種村 一幸
(74)【代理人】
【識別番号】100135817
【弁理士】
【氏名又は名称】華山 浩伸
(74)【代理人】
【識別番号】100181869
【弁理士】
【氏名又は名称】大久保 雄一
(72)【発明者】
【氏名】西野 光哉
(72)【発明者】
【氏名】高橋 葵
(72)【発明者】
【氏名】岩村 圭将
(72)【発明者】
【氏名】石川 航平
(72)【発明者】
【氏名】宮本 真之助
【テーマコード(参考)】
2B043
5H301
【Fターム(参考)】
2B043AA04
2B043AB20
2B043BA02
2B043BB01
2B043BB06
2B043BB14
2B043DC03
2B043EA03
2B043EA04
2B043EB05
2B043EB10
2B043ED12
5H301AA03
5H301BB01
5H301BB02
5H301CC03
5H301CC06
5H301CC10
5H301DD06
5H301DD17
5H301GG14
5H301GG17
5H301HH02
(57)【要約】
【課題】作業車両の方位角の精度を向上させることが可能な自動走行方法、自動走行システム、及び自動走行プログラムを提供すること。
【解決手段】取得処理部112は、作業車両10の方位角を計測する慣性計測装置165により計測された計測方位角D0を取得する。調整処理部115は、作業車両10の車速Vfに基づいて、計測方位角D0に対応する重みを調整する。推定処理部116は、調整処理部115により重みが調整された計測方位角D0と、作業車両10の位置情報と、作業車両10の角速度情報とに基づいて、作業車両10の現在の姿勢に対応する方位角D1を推定する。走行処理部111は、推定処理部116により推定される方位角D1に基づいて、作業車両10を自動走行させる。
【選択図】図5
【特許請求の範囲】
【請求項1】
作業車両の方位角を計測する計測部により計測された計測方位角を取得することと、
前記作業車両の車速に基づいて、前記計測方位角に対応する重みを調整することと、
前記車速に応じて重みが調整された前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定することと、
推定された前記方位角に基づいて、前記作業車両を自動走行させることと、
を実行する自動走行方法。
【請求項2】
前記作業車両の車速が遅いほど、前記計測方位角から推定される状態の重みが小さくなるように前記方位角を推定する、
請求項1に記載の自動走行方法。
【請求項3】
前記作業車両の車速が第1車速以上の場合に、前記方位角の推定結果において前記計測方位角から推定される状態が支配的になる第1パラメータを設定して前記方位角を推定し、
前記作業車両の車速が前記第1車速よりも遅い第2車速以下の場合に、前記方位角の推定結果において前記計測方位角から推定される状態が非支配的になる第2パラメータを設定して前記方位角を推定する、
請求項1に記載の自動走行方法。
【請求項4】
前記第1車速と前記第2車速との間は、前記車速に応じて線形変化するパラメータを設定して前記方位角を推定する、
請求項3に記載の自動走行方法。
【請求項5】
前記作業車両が走行する経路に関する経路情報と、前記作業車両の作業に関する作業情報と、前記作業車両の走行モードに関する走行モード情報との少なくともいずれかに基づいて、前記計測方位角及び推定された前記方位角のうちいずれかを出力方位角として選択することをさらに実行し、
前記出力方位角に基づいて、前記作業車両を自動走行させる、
請求項1~4のいずれかに記載の自動走行方法。
【請求項6】
前記作業車両の車速が所定車速未満の場合に、推定された前記方位角を前記出力方位角として選択し、前記作業車両の車速が前記所定車速以上の場合に、前記計測方位角を前記出力方位角として選択する、
請求項5に記載の自動走行方法。
【請求項7】
前記計測方位角と、前記作業車両の車速に応じたパラメータと、前記作業車両の位置情報と、前記作業車両の角速度情報とが入力されるカルマンフィルタを用いて前記方位角を推定する、
請求項1~4のいずれかに記載の自動走行方法。
【請求項8】
作業車両の方位角を計測する計測部により計測された計測方位角を取得することと、
前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定することと、
前記作業車両の車速に基づいて、前記計測方位角と推定された前記方位角とのうちいずれかを出力方位角として選択することと、
前記出力方位角に基づいて、前記作業車両を自動走行させることと、
を実行する自動走行方法。
【請求項9】
前記作業車両の車速が第1車速以上の場合に、前記計測方位角を前記出力方位角として選択し、
前記作業車両の車速が前記第1車速以下の第2車速以下の場合に、推定された前記方位角を前記出力方位角として選択する、
請求項8に記載の自動走行方法。
【請求項10】
前記作業車両が走行する経路に関する経路情報と、前記作業車両の作業に関する作業情報と、前記作業車両の走行モードに関する走行モード情報との少なくともいずれかに基づいて、前記方位角の推定処理を実行するか否かを判定する、
請求項1又は8に記載の自動走行方法。
【請求項11】
作業車両の方位角を計測する計測部により計測された計測方位角を取得する取得処理部と、
前記作業車両の車速に基づいて、前記取得処理部により取得される前記計測方位角に対応する重みを調整し、重みが調整された前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定する推定処理部と、
前記推定処理部により推定される前記方位角に基づいて、前記作業車両を自動走行させる走行処理部と、
を備える自動走行システム。
【請求項12】
作業車両の方位角を計測する計測部により計測された計測方位角を取得することと、
前記作業車両の車速に基づいて、前記計測方位角に対応する重みを調整することと、
前記車速に応じて重みが調整された前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定することと、
推定された前記方位角に基づいて、前記作業車両を自動走行させることと、
を一又は複数のプロセッサーに実行させるための自動走行プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、作業車両を自動走行させることが可能な自動走行方法、自動走行システム、及び自動走行プログラムに関する。
【背景技術】
【0002】
作業車両の位置情報に基づいて、予め設定された目標経路を走行することにより自動走行を行う作業車両が知られている。例えば、目標経路上に前方目標点を設定して、作業車両の方位角に基づいて作業車両が前記前方目標点に向かうように操舵制御することにより、作業車両を目標経路に従って自動走行させる技術が知られている(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2020-080743号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、作業車両の方位角を算出する装置として、方位角センサー、慣性計測装置などが存在する。前記慣性計測装置は、3軸のジャイロセンサーと3軸の加速度センサーとを用いて車体の方位を計測するため、作業車両が低速で走行する場合には、各センサーから得られる出力値が小さくなる。このため、作業車両の方位角の精度が低下し、走行精度が低下する問題が生じる。
【0005】
本発明の目的は、作業車両の方位角の精度を向上させることが可能な自動走行方法、自動走行システム、及び自動走行プログラムを提供することにある。
【課題を解決するための手段】
【0006】
本発明に係る自動走行方法は、作業車両の方位角を計測する計測部により計測された計測方位角を取得することと、前記作業車両の車速に基づいて、前記計測方位角に対応する重みを調整することと、前記車速に応じて重みが調整された前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定することと、推定された前記方位角に基づいて、前記作業車両を自動走行させることと、を実行する自動走行方法である。
【0007】
また、本発明に係る自動走行方法は、作業車両の方位角を計測する計測部により計測された計測方位角を取得することと、前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定することと、前記作業車両の車速に基づいて、前記計測方位角と推定された前記方位角とのうちいずれかを出力方位角として選択することと、前記出力方位角に基づいて、前記作業車両を自動走行させることと、を実行する自動走行方法である。
【0008】
本発明に係る自動走行システムは、取得処理部と推定処理部と走行処理部とを備える。前記取得処理部は、作業車両の方位角を計測する計測部により計測された計測方位角を取得する。前記推定処理部は、前記作業車両の車速に基づいて、前記取得処理部により取得される前記計測方位角に対応する重みを調整し、重みが調整された前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定する。前記走行処理部は、前記推定処理部により推定される前記方位角に基づいて、前記作業車両を自動走行させる。
【0009】
本発明に係る自動走行プログラムは、作業車両の方位角を計測する計測部により計測された計測方位角を取得することと、前記作業車両の車速に基づいて、前記計測方位角に対応する重みを調整することと、前記車速に応じて重みが調整された前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定することと、推定された前記方位角に基づいて、前記作業車両を自動走行させることと、を一又は複数のプロセッサーに実行させるための自動走行プログラムである。
【発明の効果】
【0010】
本発明によれば、作業車両の方位角の精度を向上させることが可能な自動走行方法、自動走行システム、及び自動走行プログラムを提供することができる。
【図面の簡単な説明】
【0011】
図1図1は、本発明の実施形態1に係る自動走行システムの構成を示すブロック図である。
図2図2は、本発明の実施形態に係る作業車両の一例を示す外観図である。
図3図3は、本発明の実施形態に係る作業車両の目標経路の一例を示す図である。
図4図4は、本発明の実施形態に係る作業車両の走行状態の一例を示す図である。
図5図5は、本発明の実施形態1に係る車両制御装置の具体的構成を示すブロック図である。
図6図6は、本発明の実施形態に係る車両制御装置における推定対象区間の判定方法の一例を示す図である。
図7図7は、本発明の実施形態1に係る車両制御装置におけるパラメータの調整方法の一例を示すグラフである。
図8図8は、本発明の実施形態1に係る車両制御装置の他の構成を示すブロック図である。
図9図9は、本発明の実施形態1に係る自動走行システムによって実行される自動走行処理の手順の一例を示すフローチャートである。
図10図10は、本発明の実施形態2に係る自動走行システムの構成を示すブロック図である。
図11図11は、本発明の実施形態2に係る車両制御装置の具体的構成を示すブロック図である。
図12図12は、本発明の実施形態2に係る車両制御装置における方位角の決定方法の一例を示すグラフである。
図13A図13Aは、本発明の実施形態に係る車両制御装置における推定対象区間の判定方法の他の例を示す図である。
図13B図13Bは、本発明の実施形態に係る車両制御装置における推定対象区間の判定方法の他の例を示す図である。
図14A図14Aは、本発明の実施形態に係る車両制御装置における推定値のリセット方法の他の例を示す図である。
図14B図14Bは、本発明の実施形態に係る車両制御装置における推定値のリセット方法の他の例を示す図である。
図14C図14Cは、本発明の実施形態に係る車両制御装置における推定値のリセット方法の他の例を示す図である。
【発明を実施するための形態】
【0012】
以下の実施形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定するものではない。
【0013】
[実施形態1]
図1に示されるように、本発明の実施形態1に係る自動走行システム1は、作業車両10と、操作端末20とを含んでいる。作業車両10及び操作端末20は、通信網N1を介して通信可能である。例えば、作業車両10及び操作端末20は、携帯電話回線網、パケット回線網、又は無線LANを介して通信可能である。自動走行システム1は、圃場F内において作業車両10を自動走行させるシステムである。
【0014】
本実施形態では、作業車両10がトラクタである場合を例に挙げて説明する。なお、他の実施形態として、作業車両10は、田植機、コンバイン、建設機械、又は除雪車などであってもよい。作業車両10は、圃場F(図3参照)内を予め設定された目標経路Rに従って自動走行(自律走行)可能な構成を備えている。なお、作業車両10は、圃場F内において自動走行しながら所定の作業を行うことが可能である。
【0015】
作業車両10は、測位ユニット16により算出される作業車両10の現在位置の位置情報に基づいて、圃場Fに対して予め生成された目標経路Rに従って自動走行する。なお、目標経路Rは、作業機14が作業を行う作業経路(直進経路R1)(図3の実線部分)と、作業機14が作業を行わない非作業経路(旋回経路R2)(図3の点線部分)とを含み、作業開始位置Sから作業終了位置Gまで、複数の直進経路R1及び複数の旋回経路R2を含んでいる。図3に示す目標経路Rは、作業車両10が直進経路R1及び旋回経路R2のそれぞれを自動走行する経路を示している。
【0016】
作業車両10は、例えば図3に示す圃場Fにおいて、作業開始位置Sから作業終了位置Gまで複数の直進経路R1を平行に往復走行しながら、各直進経路R1で作業機14により作業を行う。目標経路Rは、図3に示す経路に限定されず、作業内容に応じて適宜設定される。
【0017】
なお、作業車両10は、オペレータが搭乗してオペレータの操作に応じて目標経路Rを自動走行するものであってもよいし、直進経路のみ自動走行を行うものであってもよい。例えば、オペレータは、作業車両10に搭乗して、直進経路R1の自動走行(自動操舵)と、旋回経路R2の手動走行(手動操舵)とを切り替えながら作業車両10を走行させることが可能であってもよい。また、例えば、オペレータは、作業車両10に搭乗して、車速(走行速度)を変更する操作(アクセル操作、ブレーキ操作など)を行いながら、目標経路R又は目標経路Rの一部(例えば直進経路R1)を自動走行させることが可能であってもよい。また、作業車両10は、作業経路ごとに設定された車速情報に従って車速を制御しながら目標経路Rを自動走行してもよい。さらに、作業車両10は、オペレータが搭乗しないで目標経路Rを自動走行するものであってもよい。
【0018】
操作端末20は、作業車両10による作業に関する各種情報を表示部に表示させたり、オペレータの操作を受け付けて当該操作に応じた処理を実行したりする。例えばオペレータは、操作端末20を操作して、自動走行に必要な情報を設定したり、作業車両10に作業開始指示(又は自動走行開始指示)を出力したりする。また、操作端末20は、自動走行中の作業車両10の作業状況、走行状況などの情報を表示させる。オペレータは、操作端末20において作業状況、走行状況を把握することが可能である。操作端末20は、例えば、オペレータが携帯可能な携帯端末(タブレット端末など)であって、作業車両10に着脱可能な機器である。また、操作端末20は、作業車両10に固定された機器であってもよい。
【0019】
[作業車両10]
図1及び図2に示すように、作業車両10は、車両制御装置11、記憶部12、走行装置13、作業機14、通信部15、測位ユニット16などを備える。車両制御装置11は、記憶部12、走行装置13、作業機14、測位ユニット16などに電気的に接続されている。なお、車両制御装置11及び測位ユニット16は、無線通信可能であってもよい。
【0020】
通信部15は、作業車両10を有線又は無線で通信網N1に接続し、通信網N1を介して操作端末20などの外部機器との間で所定の通信プロトコルに従ったデータ通信を実行するための通信インターフェースである。
【0021】
記憶部12は、各種の情報を記憶するHDD(Hard Disk Drive)又はSSD(Solid State Drive)などの不揮発性の記憶部である。記憶部12には、車両制御装置11に後述の自動走行処理(図9参照)を実行させるための自動走行プログラムなどの制御プログラムが記憶されている。例えば、前記自動走行プログラムは、フラッシュROM、EEPROM、CD、又はDVDなどのコンピュータ読取可能な記録媒体に非一時的に記録されており、所定の読取装置(不図示)で読み取られて記憶部12に記憶される。なお、前記自動走行プログラムは、サーバー(不図示)から通信網N1を介して作業車両10にダウンロードされて記憶部12に記憶されてもよい。また、記憶部12には、操作端末20において生成される目標経路Rの経路データが記憶されてもよい。
【0022】
走行装置13は、作業車両10を走行させる駆動部である。図2に示すように、走行装置13は、エンジン131、前輪132、後輪133、トランスミッション134、フロントアクスル135、リアアクスル136、ハンドル137などを備える。なお、前輪132及び後輪133は、作業車両10の左右にそれぞれ設けられている。また、走行装置13は、前輪132及び後輪133を備えるホイールタイプに限らず、作業車両10の左右に設けられるクローラを備えるクローラタイプであってもよい。
【0023】
エンジン131は、不図示の燃料タンクに補給される燃料を用いて駆動するディーゼルエンジン又はガソリンエンジンなどの駆動源である。走行装置13は、エンジン131とともに、又はエンジン131に代えて、電気モーターを駆動源として備えてもよい。なお、エンジン131には、不図示の発電機が接続されており、当該発電機から作業車両10に設けられた車両制御装置11等の電気部品及びバッテリー等に電力が供給される。なお、前記バッテリーは、前記発電機から供給される電力によって充電される。そして、作業車両10に設けられている車両制御装置11及び測位ユニット16等の電気部品は、エンジン131の停止後も前記バッテリーから供給される電力により駆動可能である。
【0024】
エンジン131の駆動力は、トランスミッション134及びフロントアクスル135を介して前輪132に伝達され、トランスミッション134及びリアアクスル136を介して後輪133に伝達される。また、エンジン131の駆動力は、PTO軸(不図示)を介して作業機14にも伝達される。作業車両10が自動走行を行う場合、走行装置13は、車両制御装置11の命令に従って走行動作を行う。
【0025】
作業機14は、例えば耕耘機、溝堀機、草刈機、プラウ、施肥機、播種機、散布機などであって、作業車両10に着脱可能であってもよい。これにより、作業車両10は、作業機14各々を用いて各種の作業を行うことが可能である。図2には、作業機14の一例として耕耘機を示している。
【0026】
ハンドル137は、オペレータ又は車両制御装置11によって操作される操作部である。例えば走行装置13では、車両制御装置11によるハンドル137の操作に応じて、不図示の油圧式パワーステアリング機構などによって前輪132の角度が変更され、作業車両10の進行方向が変更される。
【0027】
また、走行装置13は、ハンドル137の他に、車両制御装置11によって操作される不図示のシフトレバー、アクセル、ブレーキ等を備える。そして、走行装置13では、車両制御装置11による前記シフトレバーの操作に応じて、トランスミッション134のギアが前進ギア又はバックギアなどに切り替えられ、作業車両10の走行態様が前進又は後進などに切り替えられる。また、車両制御装置11は、前記アクセルを操作してエンジン131の回転数を制御する。また、車両制御装置11は、前記ブレーキを操作して電磁ブレーキを用いて前輪132及び後輪133の回転を制動する。
【0028】
測位ユニット16は、測位制御部161、記憶部162、通信部163、測位用アンテナ164、慣性計測装置165(IMU:Inertial Measurement Unit)などを備える通信機器である。例えば、測位ユニット16は、図2に示すように、オペレータが搭乗するキャビン138の上部に設けられている。また、測位ユニット16の設置場所はキャビン138に限らない。さらに、測位ユニット16の測位制御部161、記憶部162、通信部163、測位用アンテナ164、慣性計測装置165は、作業車両10において異なる位置に分散して配置されていてもよい。なお、前述したように測位ユニット16には前記バッテリーが接続されており、測位ユニット16は、エンジン131の停止中も稼働可能である。また、測位ユニット16として、例えば携帯電話端末、スマートフォン、又はタブレット端末などが代用されてもよい。
【0029】
測位制御部161は、一又は複数のプロセッサーと、不揮発性メモリ及びRAMなどの記憶メモリとを備えるコンピュータシステムである。記憶部162は、測位制御部161に測位処理を実行させるためのプログラム、及び測位情報、移動情報などのデータを記憶する不揮発性メモリなどである。例えば、前記プログラムは、フラッシュROM、EEPROM、CD、又はDVDなどのコンピュータ読取可能な記録媒体に非一時的に記録されており、所定の読取装置(不図示)で読み取られて記憶部162に記憶される。なお、前記プログラムは、サーバー(不図示)から通信網N1を介して測位ユニット16にダウンロードされて記憶部162に記憶されてもよい。
【0030】
通信部163は、測位ユニット16を有線又は無線で通信網N1に接続し、通信網N1を介して基地局(不図示)などの外部機器との間で所定の通信プロトコルに従ったデータ通信を実行するための通信インターフェースである。測位用アンテナ164は、衛星から発信される電波(GNSS信号)を受信するアンテナである。
【0031】
測位制御部161は、測位用アンテナ164が衛星から受信するGNSS信号に基づいて作業車両10の現在位置を算出する。例えば、作業車両10が圃場Fを自動走行する場合に、測位用アンテナ164が複数の衛星のそれぞれから発信される電波(発信時刻、軌道情報など)を受信すると、測位制御部161は、測位用アンテナ164と各衛星との距離を算出し、算出した距離に基づいて作業車両10の現在位置(緯度及び経度)を算出する。また、測位制御部161は、作業車両10に近い基地局(基準局)に対応する補正情報を利用して作業車両10の現在位置を算出する、リアルタイムキネマティック方式(RTK-GPS測位方式(RTK方式))による測位を行ってもよい。このように、作業車両10は、RTK方式による測位情報を利用して自動走行を行う。なお、作業車両10の現在位置は、測位位置(例えば測位用アンテナ164の位置)と同一位置であってもよいし、測位位置からずれた位置であってもよい。
【0032】
慣性計測装置165は、3軸のジャイロセンサー、3軸の加速度センサーなどを備え、作業車両10の走行中の姿勢を計測する。例えば、慣性計測装置165は、作業車両10の車体の方位角を計測する。また、慣性計測装置165は、自動走行中の作業車両10の方位角を計測して、計測結果(計測方位角D0)を車両制御装置11に送信する(図5参照)。慣性計測装置165は、本発明の計測部の一例である。
【0033】
車両制御装置11は、CPU、ROM、及びRAMなどの制御機器を有する。前記CPUは、各種の演算処理を実行するプロセッサーである。前記ROMは、前記CPUに各種の演算処理を実行させるためのBIOS及びOSなどの制御プログラムが予め記憶される不揮発性の記憶部である。前記RAMは、各種の情報を記憶する揮発性又は不揮発性の記憶部であり、前記CPUが実行する各種の処理の一時記憶メモリー(作業領域)として使用される。そして、車両制御装置11は、前記ROM又は記憶部12に予め記憶された各種の制御プログラムを前記CPUで実行することにより作業車両10を制御する。
【0034】
具体的には、図1に示すように、車両制御装置11は、走行処理部111、取得処理部112、区間判定処理部113、リセット判定処理部114、調整処理部115、推定処理部116、出力処理部117などの各種の処理部を含む。なお、車両制御装置11は、前記CPUで前記自動走行プログラムに従った各種の処理を実行することによって前記各種の処理部として機能する。また、一部又は全部の前記処理部が電子回路で構成されていてもよい。なお、前記自動走行プログラムは、複数のプロセッサーを前記処理部として機能させるためのプログラムであってもよい。
【0035】
走行処理部111は、作業車両10の走行を制御する。具体的には、走行処理部111は、測位制御部161により測位される作業車両10の現在位置を示す位置情報に基づいて作業車両10を目標経路Rに従って自動走行させる。例えば、測位状態がRTK測位可能な状態になって、操作端末20の操作画面(不図示)においてオペレータがスタートボタンを押下すると、操作端末20は作業開始指示を作業車両10に出力する。走行処理部111は、操作端末20から作業開始指示を取得すると、測位制御部161により測位される作業車両10の現在位置を示す位置情報に基づいて作業車両10の自動走行を開始させる。
【0036】
また、走行処理部111は、作業車両10の操舵角(ハンドル切れ角)を制御(操舵制御)して作業車両10の走行方向を制御する。図4には、作業車両10の走行状態の一例を示している。図4に示す状態では、作業車両10の現在位置P0が、目標経路Rから距離L1だけ離れている。符号α1は目標経路Rに対する現在の方位角(現在方位角)を示し、符号θ1は現在の操舵角を示している。ここで、作業車両10の前方かつ目標経路R上に目標点P1(前方目標点)を設定した場合、作業車両10の目標方位角をα2とすると、作業車両10の目標操舵角θは、「α1+θ1+α2」で表される。走行処理部111は、測位制御部161により測位される現在位置P0(位置情報)と、現在位置P0及び目標点P1から求められる目標方位角α2と、現在方位角α1と、現在操舵角θ1とに基づいて目標操舵角θを算出する。そして、走行処理部111は、目標操舵角θに基づいて作業車両10の操舵角を制御して作業車両10の走行方向を制御する。
【0037】
以上のようにして、走行処理部111は、位置情報及び目標操舵角θに基づいて、作業車両10を目標経路Rに従って自動走行させる。これにより、作業車両10は、目標経路Rに従って自動走行しながら、作業機14による作業を行う。なお、目標経路Rは、例えば操作端末20により生成される。作業車両10は、操作端末20から目標経路Rの経路データを取得して、目標経路Rに従って圃場F内を自動走行する(図3参照)。
【0038】
また、走行処理部111は、操作端末20から作業停止指示を取得すると作業車両10の自動走行を停止させる。例えば、操作端末20の操作画面(不図示)においてオペレータがストップボタンを押下すると、操作端末20は作業停止指示を作業車両10に出力する。走行処理部111は、操作端末20から作業停止指示を取得すると、作業車両10の自動走行を停止させる。これにより、作業車両10は、自動走行を停止し、作業機14による作業を停止する。走行処理部111は、本発明の走行処理部の一例である。
【0039】
上述したように、作業車両10を目標経路Rに従って自動走行させるためには、作業車両10の現在の方位角を高精度に計測して操舵角を制御する必要がある。しかし、従来の技術では、作業車両10が低速で走行する場合に、作業車両10の方位角の精度が低下する(方位角がドリフトする)問題が生じる。これにより、作業車両10の走行精度が低下してしまう。これに対して、本実施形態に係る自動走行システムは、以下に示すように、作業車両の方位角の精度を向上させることが可能である。以下では、図5を参照しつつ、車両制御装置11の具体例について説明する。
【0040】
取得処理部112は、作業車両10の方位角を計測する慣性計測装置165により計測される方位角(以下、計測方位角D0という。)を取得する。慣性計測装置165は、作業車両10の自動走行が開始すると所定の周期で計測方位角D0を計測し、車両制御装置11に送信する。取得処理部112は、慣性計測装置165から所定の周期で計測方位角D0を取得する。図5に示すように、取得処理部112は、慣性計測装置165から取得した計測方位角D0の情報を推定処理部116及び出力処理部117に出力する。取得処理部112は、本発明の取得処理部の一例である。
【0041】
区間判定処理部113は、作業車両10の走行経路(走行区間)が方位角を推定する推定対象区間であるか否かを判定する。具体的には、区間判定処理部113は、経路情報d0に基づいて、前記走行経路が前記推定対象区間であるか否かを判定する。
【0042】
ここで、例えば、作業車両10の車速Vfは、高い作業精度が要求される直進経路R1において低速(例えば1km/h)に設定され、作業を行わない旋回経路R2において高速(例えば2km/h)に設定されている。この場合、図6に示すように、区間判定処理部113は、走行経路が直進経路R1の場合に前記推定対象区間であると判定し、走行経路が旋回経路R2の場合に前記推定対象区間ではないと判定する。図5に示すように、区間判定処理部113は、作業車両10の走行経路が方位角の推定対象区間であること、又は、作業車両10の走行経路が方位角の推定対象区間ではないことを示す判定結果d1を、リセット判定処理部114及び出力処理部117に出力する。
【0043】
リセット判定処理部114は、作業車両10の方位角(現在方位角)を推定する推定処理部116における推定値をリセットするか否かを判定する。具体的には、リセット判定処理部114は、作業車両10の方位角D1を推定するカルマンフィルタKFの推定値(姿勢状態)の累積誤差をリセットするか否かを判定する。例えば図5に示すように、リセット判定処理部114は、区間判定処理部113の判定結果d1と、リセット判定情報d2と、作業車両10の車速Vfとに基づいて、前記推定値をリセットするか否かを判定する。リセット判定情報d2は、前記推定値をリセットするタイミングを規定する情報であり、例えば図6に示すように、直進経路R1(前記推定対象区間)の開始地点Rpを示す情報である。なお、リセット判定情報d2は、開始地点Rpの設定方法に応じて定められた情報(位置情報、自動走行状態を示す情報、経路情報など)であってもよい。
【0044】
例えば、リセット判定処理部114は、作業車両10が直進経路R1の開始地点Rpに位置し、車速Vfが所定車速(例えば2km/h)以下の場合に、前記推定値をリセットすると判定する。図5に示すように、リセット判定処理部114は、推定処理部116における推定値をリセットすること、又は、推定処理部116における推定値をリセットしないことを示す判定結果Rfを、推定処理部116に出力する。
【0045】
調整処理部115は、作業車両10の車速Vfに基づいて、計測方位角D0に対応する重みを調整するための情報(パラメータPf)を設定して推定処理部116に出力する。具体的には、調整処理部115は、推定処理部116における方位角の推定処理に用いられるパラメータPfを、作業車両10の車速Vfに応じて調整する。調整処理部115は、調整したパラメータPfを推定処理部116に出力する。パラメータPfは、例えば推定処理部116のカルマンフィルタKFにおける方位角の観測における分散であり、カルマンゲインのパラメータに相当する。パラメータPfの具体例は後述する。
【0046】
推定処理部116は、作業車両10の現在の姿勢に対応する方位角D1(図4の現在方位角α1)を推定する。具体的には、推定処理部116はカルマンフィルタKFで構成されており、カルマンフィルタKFは、リセット判定処理部114の判定結果Rfと、調整処理部115において設定されるパラメータPfと、位置情報f1と、角速度情報f2と、取得処理部112から取得する計測方位角D0とに基づいて、作業車両10の方位角D1を推定する。位置情報f1は、測位制御部161により測位される作業車両10の位置を示す情報(測位情報)である。角速度情報f2は、慣性計測装置165により計測される作業車両10の角速度の情報である。なお、角速度情報f2には、作業車両10の加速度情報が含まれてもよい。カルマンフィルタKFは、位置情報f1及び角速度情報f2に基づいて、ロール角、ピッチ角、及びヨー角を含む作業車両10の姿勢状態を示す状態推定値(方位角)を算出する。
【0047】
また、カルマンフィルタKFは、推定モデルによって推定された状態と、観測値(計測方位角D0)によって推定された状態とに基づいて、状態推定値(方位角)を算出する。また、カルマンフィルタKFは、車速Vfに応じたパラメータPfによって、推定モデルによって推定された状態の重みと、観測値(計測方位角D0)によって推定された状態の重みとを調整して方位角を推定する。例えば、カルマンフィルタKFは、推定モデルによって推定された推定値をx1(k)とし、観測値(計測方位角D0)によって推定された推定値をx2(k)とした場合に、推定値x(k)を、「x(k)=K・x1(k)+(1-K)・x2(k)」の式で求めることができる。前記式の係数K(但し、0<K<1)はパラメータPfに相当する。前記式に示すように、パラメータPf(係数K)が小さいほど観測値(計測方位角D0)によって推定された状態(x2(k))の重みが大きくなり計測方位角D0が支配的になる。また、パラメータPfが大きいほど推定モデルによって推定された状態(x1(k))の重みが大きくなり計測方位角D0が非支配的になる。
【0048】
また、カルマンフィルタKFは、作業車両10の車速Vfに応じて設定されたパラメータ(重み)に基づいて、方位角D1を算出する。例えば図7に示すように、調整処理部115は、車速Vfが2km/h(本発明の第1車速)以上の場合にパラメータPfを「Pf1」(本発明の第1パラメータ)に設定する。すなわち、調整処理部115は、車速Vfが2km/h以上の場合に、計測方位角D0によって推定される状態(x2(k))の重みが大きくなり、推定モデルによって推定される状態(x1(k))の重みが小さくなるパラメータPf1(方位角の推定結果において計測方位角D0が支配的になるパラメータPf1)を設定する。
【0049】
また、調整処理部115は、車速Vfが1km/h(本発明の第2車速)以下の場合にパラメータPfを「Pf2」(本発明の第2パラメータ)(但し、Pf1<Pf2)に設定する。すなわち、調整処理部115は、車速Vfが1km/h以下の場合に、推定モデルによって推定される状態(x1(k))の重みが大きくなり、計測方位角D0によって推定される状態(x2(k))の重みが小さくなるパラメータPf2(方位角の推定結果において計測方位角D0が非支配的になるパラメータPf2)を設定する。
【0050】
また、調整処理部115は、車速Vfが1km/hから2km/hまでの間は、車速Vfに応じて線形変化(漸減)するパラメータPfを設定する。
【0051】
カルマンフィルタKFは、車速Vfが2km/h以上の場合にパラメータPf1を取得すると、計測方位角D0によって推定される状態の重みが大きくなる、すなわち計測方位角D0が支配的となる方位角D1を算出する。
【0052】
また、カルマンフィルタKFは、車速Vfが1km/h以下の場合にパラメータPf2を取得すると、推定モデルによって推定される状態の重みが大きくなる、すなわち計測方位角D0が非支配的となる方位角D1を算出する。
【0053】
また、カルマンフィルタKFは、車速Vfが1km/hから2km/hまでの場合に車速Vfに応じて補間されたパラメータPfを取得すると、パラメータPfに応じて、推定モデルによって推定される状態の重みと、パラメータPfに応じた計測方位角D0によって推定される状態の重みとが調整された方位角D1を算出する。
【0054】
このように、推定処理部116は、作業車両10の車速Vfに基づいて、計測方位角D0に対応する重みを調整し、重みが調整された計測方位角D0と、作業車両10の位置情報と、作業車両10の角速度情報とに基づいて、作業車両10の現在の姿勢に対応する方位角D1を推定する。例えば、推定処理部116は、計測方位角D0と、計測方位角D0から推定される状態の重みを調整するパラメータPfと、作業車両10の位置情報f1及び角速度情報f2とが入力されるカルマンフィルタKFを用いて、方位角D1を推定する。また、カルマンフィルタKFは、作業車両10の車速Vfが遅いほど、計測方位角D0から推定される状態の重みが小さくなるように方位角D1を推定し、作業車両10の車速Vfが速いほど、計測方位角D0から推定される状態の重みが大きくなるように方位角D1を推定する。
【0055】
なお、オペレータが作業車両10に搭乗する場合、オペレータは自動走行する作業車両10の車速Vfを変更することが可能であってもよい。例えば、オペレータは作業車両10の変速レバー(不図示)を操作して、自動走行中の作業車両10の車速Vfを変更することが可能であってもよい。この場合、推定処理部116は、オペレータによる車速変更操作に応じたパラメータPfに基づいて方位角D1を推定する。
【0056】
推定処理部116は、推定結果である方位角D1の情報を出力処理部117に出力する。
【0057】
なお、カルマンフィルタKFは、推定値の累積誤差をリセットしてから推定処理を実行する。例えば、作業車両10が直進経路R1の開始地点Rpに到達し、作業車両10の車速Vfが所定車速(上記の例では2km/h)以下の場合に、推定処理部116がリセット判定処理部114から推定値をリセットすることを示す判定結果Rf(図5参照)を取得すると、カルマンフィルタKFは、推定値をリセットし、その後に推定処理を実行する。これにより、カルマンフィルタKFは、推定値の累積誤差をリセットすることができるため、適切な推定値を求めることができる。推定処理部116は、本発明の推定処理部の一例である。
【0058】
出力処理部117は、走行処理部111の走行処理(例えば操舵制御)に利用される出力方位角D2(図4に示す現在方位角α1)を出力する。具体的には、出力処理部117は、作業車両10が走行する経路に関する経路情報に基づいて、計測方位角D0及び推定された方位角D1のうちいずれかを出力方位角D2として選択する。すなわち、出力処理部117は、前記経路情報に基づいて、出力方位角D2を、計測方位角D0又は方位角D1に切り替える。
【0059】
例えば図5に示すように、出力処理部117は、区間判定処理部113から判定結果d1を取得し、推定処理部116から方位角D1を取得し、取得処理部112から計測方位角D0を取得すると、判定結果d1に基づいて、計測方位角D0又は方位角D1を出力方位角D2として走行処理部111に出力する。
【0060】
例えば、出力処理部117は、作業車両10の走行経路が低速走行に対応する直進経路R1(図6参照)の場合に、推定処理部116から取得した方位角D1を出力方位角D2として走行処理部111に出力する。一方、出力処理部117は、作業車両10の走行経路が高速走行に対応する旋回経路R2(図6参照)の場合に、慣性計測装置165により計測された計測方位角D0を出力方位角D2として走行処理部111に出力する。
【0061】
他の実施形態として、図8に示すように、出力処理部117は、前記経路情報と作業車両10の車速Vfとに基づいて、計測方位角D0及び推定された方位角D1のうちいずれかを出力方位角D2として選択してもよい。例えば、出力処理部117は、作業車両10の走行経路が直進経路R1であって、かつ、作業車両10の車速Vfが所定車速(例えば2km/h)未満の場合に、推定処理部116から取得した方位角D1を出力方位角D2として走行処理部111に出力し、作業車両10の走行経路が直進経路R1であって、かつ、作業車両10の車速Vfが所定車速(例えば2km/h又は2km/hよりも速い速度)以上の場合に、慣性計測装置165により計測された計測方位角D0を出力方位角D2として走行処理部111に出力する。
【0062】
走行処理部111は、出力処理部117により出力される出力方位角D2を上述の現在方位角α1(図4参照)として(α1=D2)、作業車両10の目標操舵角θ(θ=α1+θ1+α2)を算出し、目標操舵角θに基づいて作業車両10の操舵角を制御する。このように、走行処理部111は、推定処理部116により推定された方位角D1に基づいて、作業車両10を自動走行させる。これにより、作業車両10は、低速走行時にも高精度に目標経路Rに従って自動走行を行うことができる。
【0063】
[操作端末20]
図1に示すように、操作端末20は、操作制御部21、記憶部22、操作表示部23、及び通信部24などを備える情報処理装置である。操作端末20は、タブレット端末、スマートフォンなどの携帯端末で構成されてもよい。
【0064】
通信部24は、操作端末20を有線又は無線で通信網N1に接続し、通信網N1を介して一又は複数の作業車両10などの外部機器との間で所定の通信プロトコルに従ったデータ通信を実行するための通信インターフェースである。
【0065】
操作表示部23は、各種の情報を表示する液晶ディスプレイ又は有機ELディスプレイのような表示部と、操作を受け付けるタッチパネル、マウス、又はキーボードのような操作部とを備えるユーザーインターフェースである。オペレータは、前記表示部に表示される操作画面において、前記操作部を操作して各種情報(後述の作業車両情報、圃場情報、作業情報など)を登録する操作を行うことが可能である。また、オペレータは、前記操作部を操作して作業車両10に対する作業開始指示を行うことが可能である。また、作業車両10が無人走行する場合、オペレータは、作業車両10から離れた場所において、操作端末20に表示される走行軌跡により、圃場F内を目標経路Rに従って自動走行する作業車両10の走行状態を把握することが可能であってもよい。
【0066】
記憶部22は、各種の情報を記憶するHDD又はSSDなどの不揮発性の記憶部である。記憶部22には、操作制御部21に所定の制御処理を実行させるための制御プログラムが記憶されている。例えば、前記制御プログラムは、フラッシュROM、EEPROM、CD、又はDVDなどのコンピュータ読取可能な記録媒体に非一時的に記録されており、操作端末20が備える所定の読取装置(不図示)で読み取られて記憶部22に記憶される。なお、前記制御プログラムは、サーバー(不図示)から通信網N1を介して操作端末20にダウンロードされて記憶部22に記憶されてもよい。また、記憶部22は、作業車両10から送信される作業情報を記憶してもよい。
【0067】
また、記憶部22には、作業車両10を自動走行させるための専用アプリケーションがインストールされている。操作制御部21は、前記専用アプリケーションを起動させて、作業車両10に関する各種情報の設定処理、作業車両10の目標経路Rの生成処理、作業車両10に対する作業開始指示などを行う。
【0068】
操作制御部21は、CPU、ROM、及びRAMなどの制御機器を有する。前記CPUは、各種の演算処理を実行するプロセッサーである。前記ROMは、前記CPUに各種の演算処理を実行させるためのBIOS及びOSなどの制御プログラムが予め記憶される不揮発性の記憶部である。前記RAMは、各種の情報を記憶する揮発性又は不揮発性の記憶部であり、前記CPUが実行する各種の処理の一時記憶メモリー(作業領域)として使用される。そして、操作制御部21は、前記ROM又は記憶部22に予め記憶された各種の制御プログラムを前記CPUで実行することにより操作端末20を制御する。
【0069】
具体的には、操作制御部21は、作業車両10に関する情報(以下、作業車両情報という。)を設定する。操作制御部21は、作業車両10の機種、作業車両10において測位用アンテナ164が取り付けられている位置、作業機14の種類、作業機14のサイズ及び形状、作業機14の作業車両10に対する位置等の情報について、オペレータが操作端末20において登録する操作を行うことにより当該情報を設定する。
【0070】
また、操作制御部21は、圃場Fに関する情報(以下、圃場情報という。)を設定する。操作制御部21は、圃場Fの位置及び形状、作業を開始する作業開始位置S及び作業を終了する作業終了位置G、作業方向等の情報について、操作端末20において登録する操作を行うことにより当該情報を設定する。なお、作業方向とは、圃場Fから枕地、非作業地などを除いた領域において、作業機14で作業を行いながら作業車両10を走行させる方向を意味する。
【0071】
圃場Fの位置及び形状の情報は、例えばオペレータが作業車両10に搭乗して圃場Fの外周に沿って一回り周回するように運転し、そのときの測位用アンテナ164の位置情報の推移を記録することで、自動的に取得することができる。また、圃場Fの位置及び形状は、操作端末20に地図を表示させた状態でオペレータが操作端末20を操作して当該地図上の複数の点を指定することで得られた多角形に基づいて取得することもできる。取得された圃場Fの位置及び形状により特定される領域は、作業車両10を走行させることが可能な領域(走行領域)である。
【0072】
また、操作制御部21は、作業を具体的にどのように行うかに関する情報(以下、作業情報という。)を設定する。操作制御部21は、作業情報として、作業車両10(無人トラクタ)と有人の作業車両10の協調作業の有無、作業車両10が枕地において旋回する場合にスキップする作業経路の数であるスキップ数、枕地の幅、及び非耕作地の幅等を設定可能に構成されている。
【0073】
また、操作制御部21は、前記設定情報に基づいて、作業車両10を自動走行させる経路である目標経路Rを生成する。本実施形態の目標経路Rは、作業機14が作業を行う作業経路(直進経路R1)と、作業機14が作業を行わない非作業経路(旋回経路R2)とを含む(図3参照)。操作制御部21は、前記各設定情報に基づいて、作業車両10の目標経路Rを生成して記憶することができる。
【0074】
具体的には、操作制御部21は、圃場設定で登録した作業開始位置S及び作業終了位置Gに基づいて目標経路R(図3参照)を生成する。目標経路Rは、図3に示す経路に限定されない。
【0075】
また、操作制御部21は、目標経路Rに関連付けて作業車両10の車速Vfの情報を設定する。例えば、オペレータは、作業時の車速Vf(直進経路R1の走行速度)、旋回時の車速(旋回経路R2の走行速度)などを設定することができる。操作制御部21は、設定された車速情報を目標経路Rに関連付けて登録する。操作制御部21は、生成した目標経路Rの経路データを作業車両10に出力する。また、操作制御部21は、オペレータの操作に基づいて、作業開始指示及び作業終了指示を作業車両10に出力する。
【0076】
また、操作制御部21は、オペレータから、作業開始の指示操作(作業開始指示操作)、自動走行している作業車両10の作業を停止させる指示操作(作業停止指示操作)などを受け付ける。操作制御部21は、前記作業開始指示操作を受け付けると、前記作業開始指示を作業車両10に出力する。これにより、作業車両10の車両制御装置11は、操作端末20から前記作業開始指示を取得する。車両制御装置11は、前記作業開始指示を取得すると、作業車両10の作業及び走行を開始させる。また、操作制御部21は、前記作業停止指示操作を受け付けると、前記作業停止指示を作業車両10に出力する。これにより、作業車両10の車両制御装置11は、操作端末20から前記作業停止指示を取得する。車両制御装置11は、前記作業停止指示を取得すると、作業車両10の作業及び走行を停止させる。
【0077】
作業車両10は、操作端末20から転送される目標経路Rの経路データを受信すると記憶部12に記憶する。作業車両10は、現在位置が圃場F内に位置している場合に自動走行できるように構成されており、現在位置が圃場F外に位置している場合には自動走行できないように構成されている。また、作業車両10は、例えば現在位置が作業開始位置Sと一致している場合に自動走行できるように構成されている。
【0078】
作業車両10は、現在位置が作業開始位置Sと一致している場合に、オペレータにより操作画面においてスタートボタンが押されて作業開始指示が与えられると、車両制御装置11によって、作業機14による作業を開始する。すなわち、操作制御部21は、現在位置が作業開始位置Sと一致していることを条件に作業車両10の自動走行を許可する。なお、作業車両10の自動走行を許可する条件は、前記条件に限定されない。
【0079】
車両制御装置11は、目標経路Rの情報に基づいて、作業車両10を作業開始位置Sから作業終了位置Gまで自動走行させるとともに、作業機14を昇降させて作業を実行させる。また、車両制御装置11は、目標経路Rに関連付けられた車速Vfに基づいて、作業車両10の車速Vfを変更しながら作業車両10を自動走行させる。例えば、車両制御装置11は、作業車両10が直進経路R1を走行する場合に車速Vfを「1km/h」に設定し、作業車両10が旋回経路R2を走行する場合に車速Vfを「2km/h」に設定して、作業車両10を自動走行させる。
【0080】
また、車両制御装置11は、作業車両10が作業を終了すると、作業終了位置Gから圃場Fの入口まで自動走行させてもよい。作業車両10が自動走行している場合、操作制御部21は、作業車両10の状態(位置、車速等)を作業車両10から受信して操作表示部23に表示させることができる。
【0081】
なお、操作端末20は、サーバー(不図示)が提供する農業支援サービスのウェブサイト(農業支援サイト)に通信網N1を介してアクセス可能であってもよい。この場合、操作端末20は、操作制御部21によってブラウザプログラムが実行されることにより、前記サーバーの操作用端末として機能することが可能である。そして、前記サーバーは、上述の各処理部を備え、各処理を実行する。
【0082】
[自動走行処理]
以下、図9を参照しつつ、自動走行システム1が実行する前記自動走行処理の一例について説明する。
【0083】
なお、本発明は、前記自動走行処理に含まれる一又は複数のステップを実行する自動走行方法の発明として捉えることができる。また、ここで説明する前記自動走行処理に含まれる一又は複数のステップは適宜省略されてもよい。なお、前記自動走行処理における各ステップは同様の作用効果を生じる範囲で実行順序が異なってもよい。さらに、ここでは車両制御装置11が前記自動走行処理における各ステップを実行する場合を例に挙げて説明するが、一又は複数のプロセッサーが当該自動走行処理における各ステップを分散して実行する自動走行方法も他の実施形態として考えられる。
【0084】
ここでは、操作制御部21により、圃場Fに対して直進経路R1及び旋回経路R2を含む目標経路R(図3参照)が設定されているものとする。
【0085】
ステップS1において、作業車両10の車両制御装置11は、自動走行を開始する。具体的には、車両制御装置11は、操作制御部21がオペレータから作業開始指示操作を受け付けると、目標経路Rに応じた自動走行を開始する。例えば、車両制御装置11は、作業車両10の現在位置が作業開始位置S(直進経路R1の始端位置)に一致する場合に、自動走行を開始させる。
【0086】
次にステップS2において、車両制御装置11は、慣性計測装置165から計測方位角D0を取得する。車両制御装置11は、所定の周期で計測方位角D0を取得する。
【0087】
次にステップS3において、車両制御装置11は、作業車両10の走行経路(走行区間)が方位角の推定対象区間であるか否かを判定する。例えば、区間判定処理部113は、経路情報d0に基づいて、走行経路が直進経路R1であるか否かを判定する。車両制御装置11は、走行経路が直進経路R1の場合に前記推定対象区間であると判定し、走行経路が旋回経路R2の場合に前記推定対象区間ではないと判定する。車両制御装置11は、前記走行経路が前記推定対象区間であると判定すると(S3:Yes)、処理をステップS4に移行させる。一方、車両制御装置11は、前記走行経路が前記推定対象区間ではないと判定すると(S3:No)、処理をステップS31に移行させる。
【0088】
ステップS4において、操作制御部21は、カルマンフィルタKF(図5参照)における推定値の累積誤差をリセットする。
【0089】
次にステップS5において、操作制御部21は、作業車両10の車速Vfに基づいて、カルマンフィルタKFにおける推定値の算出に用いるパラメータPfを調整する。具体的には、操作制御部21は、作業車両10の車速Vfが速いほど小さくなり、作業車両10の車速Vfが遅いほど大きくなるパラメータPfを設定する。例えば、図7に示すように、車両制御装置11は、車速Vfが2km/h以上の場合にパラメータPf1を設定し、車速Vfが1km/h以下の場合にパラメータPf2に設定し、車速Vfが1km/hから2km/hまでの間は、車速Vfに応じて線形変化(漸減)するパラメータPfを設定する。
【0090】
また、操作制御部21は、車速Vfが2km/h以上の場合に、計測方位角D0によって推定される状態(上述の推定値「x2(k)」)の重みが大きくなり、推定モデルによって推定される状態(上述の推定値「x1(k)」)の重みが小さくなるパラメータPf1(カルマンフィルタKFにおける推定値において計測方位角D0が支配的になるパラメータPf1)を設定する。また、操作制御部21は、車速Vfが1km/h以下の場合に、推定モデルによって推定される状態の重みが大きくなり、計測方位角D0によって推定される状態の重みが小さくなるパラメータPf2(カルマンフィルタKFにおける推定値において計測方位角D0が非支配的になるパラメータPf2)を設定する。
【0091】
次にステップS6において、操作制御部21は、作業車両10の現在の姿勢に対応する方位角D1(図4の現在方位角α1)を推定する。例えば、操作制御部21は、カルマンフィルタKFにおいて、作業車両10の車速Vfに応じて設定されたパラメータPfに基づいて方位角D1を推定する。例えば、カルマンフィルタKFは、車速Vfが2km/h以上の場合に、パラメータPf1を用いて方位角D1を推定する。また、カルマンフィルタKFは、車速Vfが1km/h以下の場合に、パラメータPf2を用いて方位角D1を推定する。また、カルマンフィルタKFは、車速Vfが1km/hから2km/hまでの間の場合は、線形特性(図7参照)から補間されたパラメータPfを用いて方位角D1を推定する。
【0092】
このように、操作制御部21は、作業車両10の車速Vfが速いほど計測方位角D0から推定される状態の重みが大きくなる(推定要素が弱くなる)ように方位角D1を推定し、作業車両10の車速Vfが遅いほど計測方位角D0から推定される状態の重みが小さくなる(推定要素が強くなる)ように方位角D1を推定する。
【0093】
次にステップS7において、操作制御部21は、推定した方位角D1を出力方位角D2(図5参照)として出力する。一方、ステップS31では、操作制御部21は、慣性計測装置165により計測された計測方位角D0を出力方位角D2(図5参照)として出力する。
【0094】
このように、操作制御部21は、作業車両10の走行経路が低速走行に対応する直進経路R1(図6参照)の場合に(S3:Yes)、推定した方位角D1を出力方位角D2として出力する(S7)。一方、操作制御部21は、作業車両10の走行経路が高速走行に対応する旋回経路R2(図6参照)の場合に(S3:No)、慣性計測装置165により計測された計測方位角D0を出力方位角D2として出力する(S31)。
【0095】
次にステップS8において、操作制御部21は、出力方位角D2に基づいて、作業車両10の目標操舵角θを算出する。例えば、操作制御部21は、現在方位角α1(出力方位角D2)と、現在の操舵角θ1と、目標方位角α2とに基づいて、作業車両10の目標操舵角θ(θ=α1+θ1+α2)を算出する(図4参照)。
【0096】
次にステップS9において、操作制御部21は、目標操舵角θに基づいて作業車両10の操舵角を制御し、作業車両10の自動走行を制御する。
【0097】
次にステップS10において、車両制御装置11は、作業車両10が作業を終了したか否かを判定する。例えば、作業車両10が作業終了位置Gに到達した場合(S10:Yes)、車両制御装置11は、処理を終了する。一方、作業車両10が作業終了位置Gに到達していない場合(S10:No)、処理をステップS2に移行させて、上述の処理を繰り返す。以上のようにして、自動走行システム1は、前記自動走行処理を実行する。
【0098】
以上説明したように、実施形態1に係る自動走行システム1は、作業車両10の方位角を計測する計測部(慣性計測装置165)により計測された計測方位角D0を取得し、作業車両10の車速Vfに基づいて、計測方位角D0に対応する重みを調整し、車速Vfに応じて重みが調整された計測方位角D0と、作業車両10の位置情報と、作業車両10の角速度情報とに基づいて、作業車両10の現在の姿勢に対応する方位角D1を推定し、推定した方位角D1に基づいて作業車両10を自動走行させる。
【0099】
上記構成によれば、作業車両10の車速Vfに応じて、計測方位角D0に対応する重みを調整して、作業車両10の方位角D1(現在方位角)を推定することができる。例えば、作業車両10の車速Vfが遅い場合(低速走行時)には、カルマンフィルタKFにおいて計測方位角D0によって推定される状態の重み小さくして(計測方位角D0を非支配的にして)、方位角D1を推定することができる。このように、作業車両10が低速走行する場合に、計測方位角D0をそのまま利用せず、カルマンフィルタKFの推定値に与える計測方位角D0の影響(重み)が小さくなるように調整して方位角D1を推定する。これにより、作業車両10は、方位角の計測精度が低下する低速走行時においても高精度に方位角D1を推定することができる。よって、作業車両10の方位角の精度を向上させることができるため、高精度な自動走行が可能となる。また、方位角の推定処理が不要となる区間(例えば高速走行区間)では、従来通りの計測方位角D0を用いて操舵制御することにより、自動走行の精度を維持することができる。
【0100】
[実施形態2]
図10は、本発明の実施形態2に係る自動走行システム1の構成を示すブロック図である。以下では、実施形態1に係る自動走行システム1との相違点について説明する。なお、図10において、実施形態1に係る自動走行システム1(図1参照)と同一の機能を有する構成要素には同一の符号を付している。
【0101】
図10に示すように、実施形態2に係る作業車両10では、車両制御装置11において、調整処理部115(図1参照)が省略されている。
【0102】
図11には、実施形態2に係る車両制御装置11の具体例を示している。実施形態2に係る車両制御装置11では、推定処理部116のカルマンフィルタKFに、リセット判定処理部114の判定結果Rfと、位置情報f1と、角速度情報f2と、計測方位角D0とが入力される。カルマンフィルタKFは、判定結果Rfと位置情報f1と角速度情報f2と計測方位角D0とに基づいて、作業車両10の方位角D1を推定する。例えば、カルマンフィルタKFは、作業車両10の走行経路が低速走行に対応する直進経路R1(図6参照)の場合に、位置情報f1と角速度情報f2と計測方位角D0とに基づいて作業車両10の方位角D1を推定する。
【0103】
出力処理部117には、区間判定処理部113の判定結果d1と、推定処理部116の推定結果(方位角D1)と、慣性計測装置165の計測結果(計測方位角D0)と、作業車両10の車速Vfとが入力される。例えば、出力処理部117は、車速Vfが2km/h未満になった場合に、方位角D1を出力方位角D2として走行処理部111に出力する。また、出力処理部117は、車速Vfが2km/h以上になった場合に、計測方位角D0を出力方位角D2として走行処理部111に出力する。
【0104】
このように、実施形態2に係る車両制御装置11は、作業車両10の方位角を計測する慣性計測装置165により計測された計測方位角D0を取得し、計測方位角D0と、作業車両10の位置情報と、作業車両10の角速度情報とに基づいて、作業車両10の現在の姿勢に対応する方位角D1を推定し、作業車両10の車速Vfに基づいて、計測方位角D0と推定された方位角D1とのうちいずれかを出力方位角D2として選択し、出力方位角D2に基づいて作業車両10を自動走行させる構成を備える。
【0105】
他の実施形態として、図12に示すように、出力処理部117は、出力方位角D2の急激な変動を抑えるために、所定の車速範囲(例えば1km/h~2km/h)を不感帯に設定してもよい。この場合、出力処理部117は、車速Vfが低下して1km/hになるまでは計測方位角D0を出力方位角D2として出力し、車速Vfが1km/h以下になった場合に方位角D1(推定方位角)を出力方位角D2として出力する。また、出力処理部117は、車速Vfが上昇して2km/hになるまでは方位角D1(推定方位角)を出力方位角D2として出力し、車速Vfが2km/h以上になった場合に計測方位角D0を出力方位角D2として出力する。
【0106】
すなわち、出力処理部117は、作業車両10の車速Vfが第1車速(例えば1km/h)以下の場合に、推定された方位角D1を出力方位角D2として選択し、作業車両10の車速Vfが前記第1車速以上の第2車速(例えば1km/h又は2km/h)以上の場合に、計測方位角D0を出力方位角D2として選択する。
【0107】
実施形態2に係る自動走行処理では、実施形態1に係る前記自動走行処理(図9参照)のステップS5が省略される。また、実施形態2に係る自動走行処理では、実施形態1に係る前記自動走行処理のステップS3において、車両制御装置11は、作業車両10の走行経路(走行区間)が方位角の推定対象区間であるか否か、及び、作業車両10の車速Vfが所定車速未満であるか否かを判定する。車両制御装置11は、前記走行経路が前記推定対象区間であって、車速Vfが所定車速未満であると判定すると(S3:Yes)、処理をステップS4に移行させる。一方、車両制御装置11は、前記走行経路が前記推定対象区間ではないと判定した場合、又は、車速Vfが所定車速以上であると判定した場合に(S3:No)、処理をステップS31に移行させる。その他の処理は実施形態1に係る前記自動走行処理と同一である。
【0108】
以上のように、実施形態2に係る自動走行システム1は、作業車両10の方位角を計測する計測部(慣性計測装置165)により計測された計測方位角D0を取得し、作業車両10の位置情報と、作業車両10の角速度情報とに基づいて、作業車両10の現在の姿勢に対応する方位角D1を推定し、作業車両10の車速Vfに基づいて、計測方位角D0と推定された方位角D1とのうちいずれかを出力方位角D2として選択し、出力方位角D2に基づいて作業車両10を自動走行させる。
【0109】
上記構成によれば、例えば作業車両10の車速Vfが遅い場合に、カルマンフィルタKFの推定値に対応する方位角D1に基づいて作業車両10を自動走行させることができる。これにより、作業車両10は、低速走行時においても高精度に方位角D1を推定することができる。よって、作業車両10の方位角の精度を向上させることができるため、高精度な自動走行が可能となる。
【0110】
[他の実施形態]
上述した実施形態1及び実施形態2のそれぞれに適用可能な他の構成例ついて以下に説明する。
【0111】
[推定対象区間の判定方法]
図6に示す例では、区間判定処理部113は、経路情報d0に基づいて、作業車両10の走行経路(走行区間)が方位角を推定する推定対象区間であるか否かを判定している([推定対象区間の判定方法1])。例えば、区間判定処理部113は、走行経路が直進経路R1の場合に前記推定対象区間であると判定し、走行経路が旋回経路R2の場合に前記推定対象区間ではないと判定している。
【0112】
前記推定対象区間の判定方法の他の例([推定対象区間の判定方法2])として、区間判定処理部113は、作業情報に基づいて、作業車両10の走行経路が前記推定対象区間であるか否かを判定してもよい。図13Aには、前記作業情報の一例を示している。図13Aにおいて、作業車両10は、直進経路R1のうち第1部分経路R1aにおいて所定の作業(例えば溝堀作業)を行い、直進経路R1のうち第2部分経路R1bにおいて作業を行なわない。すなわち、第1部分経路R1aは作業経路(作業区間)であり、第2部分経路R1b及び旋回経路R2は非作業経路(非作業区間)である。
【0113】
ここで、例えば、作業車両10の車速Vfは、高い作業精度が要求される作業経路において低速に設定され、作業を行わない旋回経路R2において高速に設定されている。この場合、図13Aに示すように、区間判定処理部113は、作業車両10が作業を行う走行経路を前記推定対象区間であると判定し、作業車両10が作業を行わない走行経路を前記推定対象区間ではないと判定する。すなわち、区間判定処理部113は、作業区間を前記推定対象区間と判定し、非作業区間を前記推定対象区間ではないと判定する。
【0114】
例えば、区間判定処理部113は、作業機14が下降した場合に前記走行経路を前記推定対象区間であると判定し、作業機14が上昇した場合に前記走行経路を前記推定対象区間ではないと判定する。また例えば、区間判定処理部113は、PTO軸の回転数が所定回転数以上の場合に前記走行経路を前記推定対象区間であると判定し、PTO軸の回転数が所定回転数未満の場合に前記走行経路を前記推定対象区間ではないと判定する。作業機14の昇降状態、PTO軸の回転数は、前記作業情報の一例である。
【0115】
前記推定対象区間の判定方法の他の例([推定対象区間の判定方法3])として、区間判定処理部113は、作業車両10の走行モードに基づいて、作業車両10の走行経路が前記推定対象区間であるか否かを判定してもよい。前記走行モードには、例えば、直進経路R1のみを自動走行する第1走行モードと、直進経路R1及び旋回経路R2のそれぞれを自動走行する第2走行モードとが含まれる。この場合、区間判定処理部113は、前記走行モードが前記第1走行モードの場合に、前記走行経路を前記推定対象区間であると判定し、前記走行モードが前記第2走行モードの場合に、前記走行経路を前記推定対象区間ではないと判定する。前記第1走行モードは、精度が要求される作業において選択され、第2走行モードは、精度が要求されない作業において選択されることが考えられる。このような場合に、判定方法3を採用することにより、直進経路R1において低速走行する際の作業精度を高めることができる。
【0116】
前記推定対象区間の判定方法の他の例([推定対象区間の判定方法4])として、区間判定処理部113は、上述した前記判定方法1~3を組み合わせてもよい。例えば、区間判定処理部113は、前記走行モードが前記第1走行モードであり、走行経路が直進経路R1であり、かつ、作業機14が下降した場合に、前記走行経路を前記推定対象区間であると判定する。また例えば、区間判定処理部113は、前記走行モードが前記第2走行モードであり、走行経路が直進経路R1であり、かつ、作業機14が下降した場合に、前記走行経路を前記推定対象区間であると判定する。
【0117】
ここで、低速作業の終了直後は、計測方位角D0が大きくドリフトしているため、すぐに推定処理を停止すると方位角の精度が悪化してしまう恐れがある。このため、低速作業の終了後も自動走行を続ける場合には、計測方位角D0の精度が戻るまで、方位角の推定処理を継続することが望ましい。そこで、例えば図13Bに示すように、区間判定処理部113は、前記走行モードが前記第2走行モードの場合に、第1部分経路R1aと、第1部分経路R1aにおいて作業が終了した直後の第2部分経路R1bとを、前記推定対象区間であると判定する。また例えば、区間判定処理部113は、前記走行モードが前記第2走行モードの場合に、直進経路R1と、直進経路R1において作業が終了した直後の旋回経路R2とを、前記推定対象区間であると判定する。
【0118】
区間判定処理部113の判定結果d1はリセット判定処理部114に入力され、リセット判定処理部114は、判定結果d1に基づいて、前記推定値の累積誤差をリセットするか否かを判定する(図5等参照)。また、推定処理部116は、リセット判定処理部114の判定結果Rfに基づいて推定処理を実行する(図5等参照)。すなわち、推定処理部116は、作業車両10が走行する経路に関する経路情報(直進経路R1、旋回経路R2)と、作業車両10の作業に関する作業情報(作業機14、PTO軸に関する情報)と、作業車両10の走行モードに関する走行モード情報との少なくともいずれかに基づいて、方位角の推定処理を実行するか否かを判定する。
【0119】
また、区間判定処理部113の判定結果d1は出力処理部117に入力され、出力処理部117は、判定結果d1に基づいて、計測方位角D0及び推定された方位角D1のうちいずれかを出力方位角D2として走行処理部111に出力する(図5等参照)。出力処理部117は、上述した前記判定方法1~4による判定結果d1に基づいて出力方位角D2を走行処理部111に出力する(図5等参照)。すなわち、出力処理部117は、作業車両10が走行する経路に関する経路情報(直進経路R1、旋回経路R2)と、作業車両10の作業に関する作業情報(作業機14、PTO軸に関する情報)と、作業車両10の走行モードに関する走行モード情報との少なくともいずれかに基づいて、計測方位角D0及び方位角D1のうちいずれかを出力方位角D2として選択して走行処理部111に出力する。
【0120】
[推定値のリセット方法]
図6に示す例では、リセット判定処理部114は、作業車両10が前記推定対象区間に到達したか否かを判定し、作業車両10が前記推定対象区間に到達したと判定すると、カルマンフィルタKFは推定値の累積誤差をリセットする([推定値のリセット方法1])。例えば、カルマンフィルタKFは、作業車両10が直進経路R1の開始地点Rpに到達したタイミングで前記推定値の累積誤差をリセットする。
【0121】
前記推定値のリセット方法の他の例([推定値のリセット方法2])として、例えば図14Aに示すように、カルマンフィルタKFは、作業車両10が各推定対象区間において最初の低速走行区間の開始地点Rsに到達したタイミングで前記推定値をリセットしてもよい。図14Aに示す例では、直進経路R1cに2か所の低速走行区間が含まれており、この場合に、カルマンフィルタKFは、最初の低速走行区間の開始地点Rsに到達したタイミングで前記推定値をリセットし、次の低速走行区間の開始地点に到達したタイミングでは前記推定値をリセットしない。
【0122】
前記推定値のリセット方法の他の例([推定値のリセット方法3])として、例えば図14Bに示すように、カルマンフィルタKFは、作業車両10が各推定対象区間において各低速走行区間の開始地点Rtに到達したタイミングで前記推定値をリセットしてもよい。図14Bに示す例では、直進経路R1cに2か所の低速走行区間が含まれており、この場合に、カルマンフィルタKFは、最初の低速走行区間の開始地点Rtに到達したタイミングで前記推定値をリセットし、さらに次の低速走行区間の開始地点Rtに到達したタイミングでも前記推定値をリセットする。
【0123】
前記推定値のリセット方法の他の例([推定値のリセット方法4])として、例えば図14Cに示すように、カルマンフィルタKFは、作業車両10が各推定対象区間における各低速走行区間において作業を開始した後、待機区間走行後(所定時間経過後、又は、所定距離走行後)の地点Rxに到達したタイミングで前記推定値をリセットしてもよい。図14Bに示す例では、直進経路R1cに2か所の低速走行区間が含まれており、この場合に、カルマンフィルタKFは、最初の低速走行区間の開始地点から待機区間だけ離れた地点Rxに到達したタイミングで前記推定値をリセットし、さらに次の低速走行区間の開始地点から待機区間だけ離れた地点Rxに到達したタイミングでも前記推定値をリセットする。このように、低速作業の開始直後において方位角のドリフトの影響が少ない場合には、低速走行区間の開始直後の所定区間(待機区間)については、車両制御装置11は計測方位角D0に基づいて操舵制御してもよい。なお、車両制御装置11は、前記待機区間に対応する前記所定時間又は前記所定距離を、カルマンフィルタKFの推定値を適切なタイミングでリセットできるように調整することが望ましい。
【0124】
本発明の自動走行システムは、作業車両10単体で構成されてもよいし、車両制御装置11単体で構成されてもよい。また、本発明は、作業車両10の方位角を推定する推定装置、推定方法、及び推定プログラムとして実現されてもよい。この場合に、前記推定装置は、車両制御装置11の各処理部を含んで構成されてもよい。また、前記自動走行システムは、作業車両10に搭載されてもよいし、操作端末20に搭載されてもよい。
【0125】
[発明の付記]
以下、上述の実施形態から抽出される発明の概要について付記する。なお、以下の付記で説明する各構成及び各処理機能は取捨選択して任意に組み合わせることが可能である。
【0126】
<付記1>
作業車両の方位角を計測する計測部により計測された計測方位角を取得することと、
前記作業車両の車速に基づいて、前記計測方位角に対応する重みを調整することと、
前記車速に応じて重みが調整された前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定することと、
推定された前記方位角に基づいて、前記作業車両を自動走行させることと、
を実行する自動走行方法。
【0127】
<付記2>
前記作業車両の車速が遅いほど、前記計測方位角から推定される状態の重みが小さくなるように前記方位角を推定する、
付記1に記載の自動走行方法。
【0128】
<付記3>
前記作業車両の車速が第1車速以上の場合に、前記方位角の推定結果において前記計測方位角から推定される状態が支配的になる第1パラメータを設定して前記方位角を推定し、
前記作業車両の車速が前記第1車速よりも遅い第2車速以下の場合に、前記方位角の推定結果において前記計測方位角から推定される状態が非支配的になる第2パラメータを設定して前記方位角を推定する、
付記1又は2に記載の自動走行方法。
【0129】
<付記4>
前記第1車速と前記第2車速との間は、前記車速に応じて線形変化するパラメータを設定して前記方位角を推定する、
付記3に記載の自動走行方法。
【0130】
<付記5>
前記作業車両が走行する経路に関する経路情報と、前記作業車両の作業に関する作業情報と、前記作業車両の走行モードに関する走行モード情報との少なくともいずれかに基づいて、前記計測方位角及び推定された前記方位角のうちいずれかを出力方位角として選択することをさらに実行し、
前記出力方位角に基づいて、前記作業車両を自動走行させる、
付記1~4のいずれかに記載の自動走行方法。
【0131】
<付記6>
前記作業車両の車速が所定車速未満の場合に、推定された前記方位角を前記出力方位角として選択し、前記作業車両の車速が前記所定車速以上の場合に、前記計測方位角を前記出力方位角として選択する、
付記5に記載の自動走行方法。
【0132】
<付記7>
前記計測方位角と、前記作業車両の車速に応じたパラメータと、前記作業車両の位置情報と、前記作業車両の角速度情報とが入力されるカルマンフィルタを用いて前記方位角を推定する、
付記1~6のいずれかに記載の自動走行方法。
【0133】
<付記8>
作業車両の方位角を計測する計測部により計測された計測方位角を取得することと、
前記計測方位角と、前記作業車両の位置情報と、前記作業車両の角速度情報とに基づいて、前記作業車両の現在の姿勢に対応する方位角を推定することと、
前記作業車両の車速に基づいて、前記計測方位角と推定された前記方位角とのうちいずれかを出力方位角として選択することと、
前記出力方位角に基づいて、前記作業車両を自動走行させることと、
を実行する自動走行方法。
【0134】
<付記9>
前記作業車両の車速が第1車速以上の場合に、前記計測方位角を前記出力方位角として選択し、
前記作業車両の車速が前記第1車速以下の第2車速以下の場合に、推定された前記方位角を前記出力方位角として選択する、
付記8に記載の自動走行方法。
【0135】
<付記10>
前記作業車両が走行する経路に関する経路情報と、前記作業車両の作業に関する作業情報と、前記作業車両の走行モードに関する走行モード情報との少なくともいずれかに基づいて、前記方位角の推定処理を実行するか否かを判定する、
付記1~9のいずれかに記載の自動走行方法。
【符号の説明】
【0136】
1 :自動走行システム
10 :作業車両
11 :車両制御装置
16 :測位ユニット
20 :操作端末
111 :走行処理部
112 :取得処理部
113 :区間判定処理部
114 :リセット判定処理部
115 :調整処理部
116 :推定処理部
117 :出力処理部
161 :測位制御部
165 :慣性計測装置(計測部)
D0 :計測方位角
D1 :方位角
D2 :出力方位角
F :圃場
KF :カルマンフィルタ
Pf :パラメータ
Pf1 :パラメータ(第1パラメータ)
Pf2 :パラメータ(第2パラメータ)
R :目標経路
R1 :直進経路
R2 :旋回経路
Rf :判定結果
Vf :車速
d0 :経路情報
d1 :判定結果
d2 :リセット判定情報
f1 :位置情報
f2 :角速度情報
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13A
図13B
図14A
図14B
図14C