(57)【要約】【課題】安全性の向上を図ることが可能な指令値決定モジュール、自動運転モジュール、移動体、指令値決定方法、及びプログラムを提供する。【解決手段】指令値決定モジュール２２は指令値決定部２２１を備える。移動体（自動車１）は、操舵角を自動制御する制御部３を有する。指令値決定部２２１は、移動体（自動車１）の操舵角の目標値θ１が入力されると、目標値θ１に基づいて、単位時間あたりの操舵角の変化量が所定の上限値以下となるように、制御部３に出力する操舵角の指令値θ３を決定する。【選択図】図１
2019177837.tif 000002
【特許請求の範囲】
【請求項１】
操舵角を自動制御する制御部を有する移動体の前記操舵角の目標値が入力されると、前記目標値に基づいて、単位時間あたりの前記操舵角の変化量が所定の上限値以下となるように、前記制御部に出力する前記操舵角の指令値を決定する指令値決定部を、備える、
指令値決定モジュール。
【請求項２】
前記指令値決定部は、前記目標値と前記操舵角の現在値との差分値に基づいて、前記指令値を決定する、
請求項１に記載の指令値決定モジュール。
【請求項３】
前記操舵角の前記指令値と前記目標値との差分の絶対値が所定の閾値以上になると、前記指令値と前記目標値との差分の絶対値が前記閾値未満である場合に比べて、前記移動体の移動速度を低減させる速度指令を決定する速度指令部を、更に備える、
請求項１又は２に記載の指令値決定モジュール。
【請求項４】
前記上限値が可変値である、
請求項１〜３のいずれか１項に記載の指令値決定モジュール。
【請求項５】
前記上限値が、前記移動体の状態に関連する移動体情報と、前記移動体の周囲環境の状態に関連する環境情報との少なくとも一方に基づいて変化する、
請求項４に記載の指令値決定モジュール。
【請求項６】
特定のイベントが発生した場合に、前記指令値決定部は、前記単位時間あたりの前記操舵角の変化量を前記上限値以下に制限する処理を行わない、
請求項１〜５のいずれか１項に記載の指令値決定モジュール。
【請求項７】
請求項１〜６のいずれか１項に記載の指令値決定モジュールと、
前記操舵角の前記目標値を生成し、生成した前記目標値を前記指令値決定モジュールに出力する目標値決定モジュールと、を備える、
自動運転モジュール。
【請求項８】
請求項１〜６のいずれか１項に記載の指令値決定モジュールと、
前記指令値決定モジュールから出力される前記操舵角の前記指令値に基づいて前記操舵角を制御する前記制御部と、を備える、
移動体。
【請求項９】
操舵角を自動制御する制御部を有する移動体の前記操舵角の目標値が入力されると、前記目標値に基づいて、単位時間あたりの前記操舵角の変化量が所定の上限値以下となるように、前記制御部に出力する前記操舵角の指令値を決定する、
指令値決定方法。
【請求項１０】
コンピュータシステムに、
操舵角を自動制御する制御部を有する移動体の前記操舵角の目標値が入力されると、前記目標値に基づいて、単位時間あたりの前記操舵角の変化量が所定の上限値以下となるように、前記制御部に出力する前記操舵角の指令値を決定する指令値決定処理を、実行させるための、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、指令値決定モジュール、自動運転モジュール、移動体、指令値決定方法、及びプログラムに関する。より詳細には、本開示は、自動操舵が可能な移動体に用いられる指令値決定モジュール、自動運転モジュール、移動体、指令値決定方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、自動的に運転される自動運転車両があった（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１８５９５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示された自動運転車両において、高速走行中に操舵角を大きく変化させるような指令値が入力されると、急にハンドルを切った状態となるため、自動運転車両の走行状態が不安定になって、安全性が低下するという問題があった。
【０００５】
本開示の目的は、安全性の向上を図ることが可能な指令値決定モジュール、自動運転モジュール、移動体、指令値決定方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
本開示の一態様の指令値決定モジュールは指令値決定部を備える。移動体は、操舵角を自動制御する制御部を有する。前記指令値決定部は、前記移動体の前記操舵角の目標値が入力されると、前記目標値に基づいて、単位時間あたりの前記操舵角の変化量が所定の上限値以下となるように、前記制御部に出力する前記操舵角の指令値を決定する。
【０００７】
本開示の一態様の自動運転モジュールは、前記指令値決定モジュールと、目標値決定モジュールと、を備える。前記目標値決定モジュールは、前記操舵角の前記目標値を生成し、生成した前記目標値を前記指令値決定モジュールに出力する。
【０００８】
本開示の一態様の移動体は、前記指令値決定モジュールと、前記制御部と、を備える。前記制御部は、前記指令値決定モジュールから出力される前記操舵角の前記指令値に基づいて前記操舵角を制御する。
【０００９】
本開示の一態様の指令値決定方法は、操舵角を自動制御する制御部を有する移動体の前記操舵角の目標値が入力されると、前記目標値に基づいて、単位時間あたりの前記操舵角の変化量が所定の上限値以下となるように、前記制御部に出力する前記操舵角の指令値を決定する。
【００１０】
本開示の一態様のプログラムは、コンピュータシステムに指令値決定処理を実行させるためのプログラムである。前記指令値決定処理では、操舵角を自動制御する制御部を有する移動体の前記操舵角の目標値が入力されると、前記目標値に基づいて、単位時間あたりの前記操舵角の変化量が所定の上限値以下となるように、前記制御部に出力する前記操舵角の指令値を決定する。
【発明の効果】
【００１１】
本開示によれば、安全性の向上を図ることが可能な指令値決定モジュール、自動運転モジュール、移動体、指令値決定方法、及びプログラムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、本開示の一実施形態の指令値決定モジュールを含む移動体のブロック図である。
【図２】図２は、同上の指令値決定モジュールを含む移動体を上側から見た図である。
【図３】図３は、同上の指令値決定モジュールの動作を示すフローチャートである。
【発明を実施するための形態】
【００１３】
（実施形態）
（１）概要
本実施形態の指令値決定モジュール２２は指令値決定部２２１を備える（図１参照）。移動体（自動車１）は、操舵角を自動制御する制御部３を有する。指令値決定部２２１は、移動体（自動車１）の操舵角の目標値θ１が入力されると、目標値θ１に基づいて、単位時間あたりの操舵角の変化量が所定の上限値以下となるように、制御部３に出力する操舵角の指令値θ３を決定する。
【００１４】
本実施形態に係る自動運転モジュール２は、指令値決定モジュール２２と、目標値決定モジュール２１と、を備える。目標値決定モジュール２１は、操舵角の目標値θ１を生成し、生成した目標値θ１を指令値決定モジュール２２に出力する。
【００１５】
本実施形態の移動体（自動車１）は、指令値決定モジュール２２と、指令値決定モジュール２２から出力される操舵角の指令値θ３に基づいて操舵角を制御する制御部３と、を備える。
【００１６】
ここにおいて、移動体は、人及び貨物の少なくとも一方を乗せて運ぶ輸送用機器であり、制御部３によって操舵角が自動制御されるような輸送用機器である。輸送用機器としては自動車、船舶、航空機等があるが、以下では移動体が自動車１である場合について説明する。図２に示す自動車１の場合、自動車１の進行方向を変化させるための操舵輪（前輪１１）の切れ角が操舵角となる。つまり、操舵輪である前輪１１が転がる方向Ｄ１と、自動車１が直進する方向Ｄ２とが交差する角度θ１０（図２参照）が操舵角となり、例えば自動車１が右旋回する場合の操舵角をプラスの値とし、自動車１が左旋回する場合の操舵角をマイナスの値とする。単位時間あたりの操舵角の変化量とは、単位時間に操舵角が変化した角度（変化量）の大きさのことであり、操舵角の角速度に対応した値となる。
【００１７】
指令値決定モジュール２２の指令値決定部２２１は、操舵角の目標値θ１に基づいて、単位時間あたりの操舵角の変化量が上限値以下となるように、操舵角の指令値θ３を決定している。したがって、単位時間あたりの操舵角の変化量が上限値を超える事態が発生しにくくなり、移動体（自動車１）の急激な方向転換が抑制されるので、安全性の向上を図ることができる。また、目標値θ１として過大な値が入力された場合でも、指令値決定部２２１は、単位時間あたりの操舵角の変化量が上限値以下となるように、操舵角の指令値θ３を決定しているので、操舵角の角速度が上限角速度を超える事態が発生しにくくなる。
【００１８】
（２）詳細
以下、本実施形態に係る指令値決定モジュール、自動運転モジュール、及び移動体について図面を参照して詳しく説明する。
【００１９】
（２．１）構成
本実施形態の指令値決定モジュール２２（自動運転モジュール２）を備える移動体（自動車１）の構成について図１及び図２を参照して説明する。
【００２０】
自動車１は、自動運転モジュール２と、制御部３と、センサ４と、走行系システム５と、を備える。自動車１は、自動運転モジュール２、制御部３、センサ４、及び走行系システム５を搭載した車体１０を備える。
【００２１】
センサ４は、自動車１の車体１０に設けられて、車体１０の周囲の状態を検知する検知センサを含む。検知センサは、車体１０の周囲の検知エリアにおいて障害物（人、静止物等）の存否を非接触で検知する。この種の検知センサとしては、例えば、ＬｉＤＡＲ（Light Detection and Ranging）、ミリ波レーダ、画像センサ等がある。また、検知センサは、車体１０の周囲の温度を検知する温度センサ、降雨量を検知する雨量センサ等を含む。また、センサ４は、例えばＧＰＳ（Global Positioning System）等の測位システムを利用して車体１０の現在値を検知する位置検出部と、加速度センサ・ジャイロセンサ等を用いて車体１０の移動方向を検知する方向検知部とを含む。
【００２２】
走行系システム５は、駆動システム、操舵システム、及び制動システム等を含む。駆動システムは、原動機（エンジン又は電動モータ等）によって駆動輪である後輪１２を回転させることで自動車１を前進又は後進させる。操舵システムは操舵輪である前輪１１の向きを変えることによって、自動車１の進行方向を所望の方向に変化させる。制動システムは、自動車１の前輪１１及び後輪１２の少なくとも一方に制動力を加える。走行系システム５は、制御部３から入力される制御信号に応じて駆動システム、操舵システム、及び制動システム等を動作させることで、自動車１を自動運転する。
【００２３】
制御部３は、例えば、自動車１の各部を制御するＥＣＵ（Electronic Control Unit）を含む。制御部３は、自動運転モジュール２から入力される制御信号（例えば、操舵角の指令値θ３等）に基づいて走行系システム５の動作を制御することで、自動車１を自動運転する。
【００２４】
自動運転モジュール２は、例えば、自動車１を目的地まで誘導するナビゲーションシステム等からの指示と、センサ４から入力される検知信号とに基づいて、自動車１の運転状態を制御するための制御信号を制御部３に出力する。
【００２５】
自動運転モジュール２は、目標値決定モジュール２１と、指令値決定モジュール２２と、車両インタフェース（車両Ｉ／Ｆ）２３と、記憶部２４とを備える。
【００２６】
車両インタフェース２３は、自動車１の車体１０に設けられたネットワークを介して制御部３及びセンサ４との間でデータを授受する。尚、自動運転モジュール２は、制御部３を介してセンサ４の検知信号を受信してもよい。
【００２７】
記憶部２４は、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）等の電気的に書き換え可能な不揮発性メモリ、ＲＡＭ（Random Access Memory）等の揮発性メモリ等を備える。記憶部２４は、自動車１が走行する地域の地図情報等を記憶する。地図情報には、自動車１が走行する道路の道路幅、カーブの曲率、道路の勾配、路面の状態（舗装路、砂利道等の種別）、等の情報が含まれている。
【００２８】
目標値決定モジュール２１は、例えば、プロセッサおよびメモリを有するマイクロコンピュータで構成されている。つまり、目標値決定モジュール２１は、プロセッサおよびメモリを有するコンピュータシステムで実現されている。そして、プロセッサが所定のプログラムを実行することにより、コンピュータシステムが目標値決定モジュール２１として機能する。プログラムは、メモリに予め記録されていてもよいし、インターネット等の電気通信回線を通じて、又はメモリカード等の非一時的な記録媒体に記録されて提供されてもよい。
【００２９】
目標値決定モジュール２１は、例えば、ナビゲーションシステム等からの指示、センサ４が検出した現在値の情報及び移動方向の情報、等に基づいて、操舵角の目標値θ１を所定の時間間隔（例えば、１秒間隔）で生成し、指令値決定モジュール２２に出力する。また、目標値決定モジュール２１は、ナビゲーションシステム等からの指示、センサ４が検出した現在値の情報及び移動方向の情報、等に基づいて、自動車１の目標速度を所定の時間間隔（例えば１秒間隔）で生成し、指令値決定モジュール２２に出力する。
【００３０】
指令値決定モジュール２２は、例えば、プロセッサおよびメモリを有するマイクロコンピュータで構成されている。つまり、指令値決定モジュール２２は、プロセッサおよびメモリを有するコンピュータシステムで実現されている。そして、プロセッサが所定のプログラムを実行することにより、コンピュータシステムが指令値決定モジュール２２として機能する。プログラムは、メモリに予め記録されていてもよいし、インターネット等の電気通信回線を通じて、又はメモリカード等の非一時的な記録媒体に記録されて提供されてもよい。指令値決定モジュール２２は、指令値決定部２２１及び速度指令部２２２の機能を備える。
【００３１】
指令値決定部２２１は、目標値決定モジュール２１から入力される目標値θ１に基づいて、所定の単位時間の間隔（例えば、目標値θ１を更新する時間間隔よりも短い時間間隔であって、例えば０．１秒間隔）で操舵角の指令値θ３を作成する。指令値決定部２２１は、目標値θ１に基づいて、単位時間あたりの操舵角の変化量が所定の上限値以下となるように、つまり操舵角の角速度が所定の上限角速度以下となるように、制御部３に出力する操舵角の指令値θ３を決定する。本実施形態の指令値決定部２２１は、操舵角の目標値θ１と操舵角の現在値（例えば、前回の指令値θ２）との差分値に基づいて、今回の指令値θ３を決定する。指令値決定部２２１は、作成した指令値θ３を車両インタフェース２３を介して制御部３に出力する。尚、指令値決定部２２１が指令値θ３を作成する間隔である単位時間は、目標値θ１を更新する時間間隔と同じ時間でもよいし、目標値θ１を更新する時間間隔より長い時間でもよい。
【００３２】
速度指令部２２２は、目標値決定モジュール２１から入力される目標速度と、制御部３から入力される実速度Ｖ１とに基づいて、所定の単位時間の間隔（例えば目標速度の更新間隔よりも短い時間間隔であって、例えば０．１秒間隔）で速度指令Ｖ２を決定する。尚、速度指令部２２２が速度指令Ｖ２を作成する間隔である単位時間は、目標速度を更新する時間間隔と同じ時間でもよいし、目標速度を更新する時間間隔より長い時間でもよい。
【００３３】
（２．２）動作
本実施形態の指令値決定モジュール２２及び自動運転モジュール２の動作を図３に基づいて説明する。
【００３４】
目標値決定モジュール２１は、所定の時間間隔（例えば１秒間隔）で、ナビゲーションシステム等からの指示、センサ４が検出した現在値の情報及び移動方向の情報、等に基づいて、操舵角の目標値θ１を決定する。
【００３５】
指令値決定部２２１は、所定の単位時間の間隔（例えば０．１秒間隔）で操舵角の指令値θ３を決定し、制御部３に出力する処理（ステップＳ１〜Ｓ６の処理）を実行する。以下、ステップＳ１〜Ｓ６の処理について説明する。
【００３６】
指令値決定部２２１は、所定の時間間隔で、目標値決定モジュール２１から操舵角の目標値θ１を取り込む（Ｓ１）。
【００３７】
指令値決定部２２１は、操舵角の目標値θ１を取り込むと、目標値θ１と制御部３に前回出力した指令値θ２との差分値（θ１−θ２）の絶対値と所定の上限値θthとの大小を比較する（Ｓ２）。ここで、目標値θ１から前回の指令値θ２を差し引いた差分値（θ１−θ２）の絶対値は、単位時間（例えば０．１秒）あたりの操舵角の変化量の絶対値となる。ここで、差分値（θ１−θ２）は、操舵角の角速度に単位時間を乗算した値に等しくなる。指令値決定部２２１は、差分値（θ１−θ２）の絶対値（つまり操舵角の角速度に単位時間を乗算した値の絶対値）と上限値θth（つまり上限角速度に単位時間を乗算した値）との高低を比較する。尚、指令値決定部２２１は、差分値（θ１−θ２）の絶対値を単位時間で割った値（つまり操舵角の角速度の絶対値）と上限値θthを単位時間で割った値（つまり上限角速度）との高低を比較してもよい。
【００３８】
ここで、差分値（θ１−θ２）の絶対値が上限値θth以下である場合（Ｓ２：Ｎｏ）、操舵角の角速度の絶対値が上限角速度以下であるので、指令値決定部２２１は、操舵角の目標値θ１を今回の指令値θ３に決定する（Ｓ３）。
【００３９】
一方、差分値（θ１−θ２）の絶対値が上限値θthより大きい場合（Ｓ２：Ｙｅｓ）、操舵角の角速度の絶対値が上限角速度を超えているので、指令値決定部２２１は、差分値（θ１−θ２）の値の正負をさらに判断する（Ｓ４）。ここで、差分値（θ１−θ２）の値が正であれば、指令値決定部２２１は、前回の指令値θ２に上限値θthを加えた値（θ２＋θth）を今回の指令値θ３とする（Ｓ５）。差分値（θ１−θ２）の値が負であれば、指令値決定部２２１は、前回の指令値θ２から上限値θthを引いた値（θ２−θth）を今回の指令値θ３とする（Ｓ５）。
【００４０】
指令値決定部２２１は、ステップＳ３又はＳ４で今回の指令値θ３を決定すると、決定した指令値θ３を車両インタフェース２３を介して制御部３に出力する（Ｓ７）。制御部３は、自動運転モジュール２から操舵角の指令値θ３を受け取ると、指令値θ３に基づいて走行系システム５を制御することで、操舵輪である前輪１１の向きを制御する。これにより、自動車１の前輪１１の操舵角が指令値θ３に制御される。尚、自動車１の操舵システムが指令値θ３に基づいて車輪１１の向きを制御する制御の応答性は、上限角速度よりも十分早くなっている。したがって、制御部３が、所定の単位時間の間隔で指令値θ３を受け取ると、次回の指令値θ３を受け取るまでの間（単位時間が経過するまでの間）に、操舵角が指令値θ３に一致するように制御されている。
【００４１】
また、指令値決定部２２１は、今回の指令値θ３を前回の指令値θ２として記憶部２４に記憶させ（Ｓ８）、次回の指令値作成に備える。
【００４２】
以上のように、指令値決定部２２１は、操舵角の目標値θ１と前回の指令値θ２との差分値（θ１−θ２）の絶対値が上限値θthより大きい場合、前回の指令値θ２と上限値θthとを用いて今回の指令値θ３を決定する。すなわち、差分値（θ１−θ２）の値が正であれば、指令値決定部２２１は、前回の指令値θ２に上限値θthを加えた値（θ２＋θth）を今回の指令値θ３とする。差分値（θ１−θ２）の値が負であれば、指令値決定部２２１は、前回の指令値θ２から上限値θthを差し引いた値（θ２−θth）を今回の指令値θ３とする。つまり、指令値決定部２２１は、操舵角の角速度が上限角速度を超えるような目標値θ１が入力された場合、操舵角の角速度が上限角速度以下となるように、制御部３に出力する操舵角の指令値θ３を決定している。これにより、操舵角の角速度が上限角速度を超える事態が発生しにくくなり、自動車１の急激な方向転換が抑制されるので、安全性の向上を図ることができる。
【００４３】
（３）変形例
上記実施形態は、本開示の様々な実施形態の一つに過ぎない。上記実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。また、指令値決定モジュール２２と同様の機能は、指令値決定方法、コンピュータプログラム、又はプログラムを記録した非一時的な記録媒体等で具現化されてもよい。一態様に係る指令値決定方法は、操舵角を自動制御する制御部３を有する移動体１の操舵角の目標値θ１が入力されると、目標値θ１に基づいて、単位時間あたりの操舵角の変化量が所定の上限値以下となるように、制御部３に出力する操舵角の指令値θ３を決定する。一態様に係る（コンピュータ）プログラムは、コンピュータシステムに、指令値決定処理を、実行させるためのプログラムである。指令値決定処理は、操舵角を自動制御する制御部３を有する移動体１の操舵角の目標値θ１が入力されると、目標値θ１に基づいて、単位時間あたりの操舵角の変化量が所定の上限値以下となるように、制御部３に出力する操舵角の指令値θ３を決定する。
【００４４】
以下、上記の実施形態の変形例を列挙する。以下に説明する変形例は、適宜組み合わせて適用可能である。
【００４５】
本開示における指令値決定モジュール２２、指令値決定モジュール２２を備える自動運転モジュール２、又は指令値決定方法の実行主体は、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示における装置、システム又は方法の実行主体としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されていてもよいが、電気通信回線を通じて提供されてもよいし、コンピュータシステムで読み取り可能な非一時的な記録媒体に記録されて提供されてもよい。コンピュータシステムで読み取り可能な非一時的な記録媒体は、メモリカード、光学ディスク、ハードディスクドライブ等である。コンピュータシステムのプロセッサは、半導体集積回路（ＩＣ）又は大規模集積回路（ＬＳＩ）を含む１乃至複数の電子回路で構成される。複数の電子回路は、１つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、１つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。上記の実施形態では、目標値決定モジュール２１と指令値決定モジュール２２とが別々のマイクロコンピュータで構成されているが、目標値決定モジュール２１と指令値決定モジュール２２とが１つのマイクロコンピュータで実現されていてもよい。
【００４６】
また、上記の実施形態では、目標値決定モジュール２１及び指令値決定モジュール２２が、１つの筐体に収まる１つの装置（自動運転モジュール２）で実現されているが、目標値決定モジュール２１及び指令値決定モジュール２２が別々の装置で実現されてもよい。目標値決定モジュール２１及び指令値決定モジュール２２が別々の装置で実現される場合、目標値決定モジュール２１と指令値決定モジュール２２とが配線を介して電気的に接続されていてもよい。
【００４７】
また、自動運転モジュール２が備える目標値決定モジュール２１及び指令値決定モジュール２２の各々の機能が、複数の装置に分散して設けられてもよく、目標値決定モジュール２１及び指令値決定モジュール２２の少なくとも一方の機能は、例えば、クラウド（クラウドコンピューティング）によって実現されてもよい。
【００４８】
また、自動運転モジュール２が備える目標値決定モジュール２１及び指令値決定モジュール２２の機能のうちの少なくとも一部が、自動車１のＥＣＵからなる制御部３に設けられていてもよい。
【００４９】
上記の実施形態において、単位時間あたりの操舵角の変化量の上限値は可変値でもよい。さらに言えば、指令値決定モジュール２２は、単位時間あたりの操舵角の変化量の上限値を、自動車１の状態に関連する移動体情報と、自動車１の周囲環境の状態に関連する環境情報との少なくとも一方に基づいて変化させてもよい。
【００５０】
移動体情報は、例えば、自動車１の速度情報である。指令値決定モジュール２２は、制御部３から取得した実速度Ｖ１の情報に基づいて、例えば自動車１の実速度Ｖ１が速いほど、単位時間あたりの操舵角の変化量の上限値（上限角速度に単位時間を乗算した値）を低くするように操舵角の変化量の上限値を設定する。これにより、自動車１が低速でカーブを曲がる場合には、高速走行時に比べて単位時間あたりの操舵角の変化量の上限値が高めに設定されるので、自動車１がカーブを曲がりやすくなる。一方、自動車１が高速で走行している場合には、自動車１が低速で走行している場合に比べて単位時間あたりの操舵角の変化量の上限値（上限角速度に単位時間を乗算した値）が低く設定される。これにより、操舵角が急激に変化しにくくなり、自動車１を安定に走行させることができる。尚、移動体情報は、自動車１の速度情報に限定されず、自動車１の操舵性能に影響する自動車１の状態に関する情報でもよい。移動体情報は、例えば自動車１に乗車している人数、自動車１に積載している荷物の重量、重量バランス等を自動車１に搭載された各種のセンサ４で測定した測定結果でもよい。
【００５１】
また、環境情報とは、例えば自動車１が走行している道路の道路幅の情報である。指令値決定モジュール２２は、記憶部２４に記憶された現在値の道路幅の情報に基づいて、道路幅が狭いほど単位時間あたりの操舵角の変化量の上限値（上限角速度に単位時間を乗算した値）を大きくするように、操舵角の変化量の上限値を設定する。道路幅が狭い場合、自動車１の操舵角が目標値θ１から外れると、道路から車体１０がはみ出す可能性が高くなるが、単位時間あたりの操舵角の変化量の上限値を大きくすることで、操舵角が目標値θ１に追従しやすくなる。よって、自動車１が道路から外れる可能性を低減できる。尚、環境情報は、例えばＶＩＣＳ(登録商標)（Vehicle Information and Communication System）等から取得された走行中の路面の状態に関する情報（例えば、砂利道、凍結路、圧雪路等、路面の摩擦係数に関係する情報）でもよい。路面の状態が車輪１１，１２が滑りやすいような状態であれば、指令値決定モジュール２２は、単位時間あたりの操舵角の変化量の上限値を低下させてもよく、自動車１を安定して走行させることができる。また、環境情報は、走行中の道路の傾斜に関する情報でもよく、指令値決定モジュール２２は、道路が右下がりに傾斜していれば、自動車１が右旋回する場合と左旋回する場合とで、単位時間あたりの操舵角の変化量の上限値を異ならせてもよい。
【００５２】
また、環境情報は、例えば、自動車１の周囲に存在する物体（例えば、人、自転車、対向車、ガードレールなど）をセンサ４が検知した検知結果でもよい。指令値決定モジュール２２は、自動車１の周囲に存在する物体のうち自動車１が回避すべき物体をセンサ４が検知した場合、単位時間あたりの操舵角の変化量の上限値（上限角速度に単位時間を乗算した値）を大きくしてもよく、自動車１が周囲に存在する物体を回避しやすくなる。
【００５３】
また、上記実施形態において、指令値決定部２２１は、特定のイベントが発生した場合に、単位時間あたりの操舵角の変化量を上限値以下に制限する角速度制限処理（つまり、操舵角の角速度を上限角速度以下に制限する処理）を行わないように構成されてもよい。例えば、指令値決定部２２１は、自動車１が回避すべき物体（例えば、人、自転車、対向車、ガードレールなど）を検知したという検知結果をセンサ４から取得すると、上記の角速度制限処理を行わない。これにより、上限角速度を超える角速度で操舵角を変化させることできるから、物体を回避しやすくなる。尚、所定のイベントとは、障害物を検知することに限定されず、例えば自動車１に人が乗っていないという状態でもよい。この場合、人が乗っていない状態では、指令値決定部２２１が上記の角速度制限処理を行わないので、乗り心地よりも操舵角を目標値θに追従させるように自動車１を自動運転することができる。また、所定のイベントとは、自動車１に乗っている人が、自動車１に設けられたＨＭＩ（Human Machine Interface）を用いて入力した解除命令を受け付けることであってもよく、自動車１に乗っている人の意思によって、上記の角速度制限処理を停止することができる。
【００５４】
上記の実施形態では、指令値決定部２２１は、操舵角の目標値θ１と前回の指令値θ２との差分値（θ１−θ２）に基づいて、指令値θ３を決定している。つまり、自動車１の現在の操舵角が前回の指令値θ２に制御されているとの想定のもと、前回の指令値θ２を現在の操舵角としているが、指令値決定部２２１は、前回の指令値θ２に替えて、制御部３から取得した実際の操舵角を用いてもよい。つまり、指令値決定部２２１は、操舵角の目標値θ１と操舵角の現在値（前回の指令値θ２、又は制御部３から取得した実際の操舵角）との差分値に基づいて、指令値θ３を決定すればよい。操舵角の目標値θ１と操舵角の現在値との差分値が操舵角の時間変化（つまり角速度）に関連しているので、操舵角の角速度を演算等で求める必要がなく、演算処理の処理コストを低減できる。
【００５５】
また、速度指令部２２２は、操舵角の目標値θ１と操舵角の指令値θ３との差分の絶対値が所定の閾値以上になると、目標値θ１と指令値θ３との差分の絶対値が閾値未満である場合に比べて、自動車１の移動速度を低減させるように速度指令Ｖ２を決定してもよい。速度指令部２２２は、操舵角の目標値θ１と指令値θ３との差分の絶対値が閾値以上である場合、自動車１の移動速度を低減させるので、自動車１が曲がりやすくなり、安全性の向上を図ることができる。ここで、指令値決定モジュール２２が、自動車１の移動速度が低いほど操舵角の上限角速度を大きくしていれば、速度指令部２２２が移動速度を低減させることで、操舵角の上限角速度を大きくでき、操舵角を目標値θ１に追従しやすくできる。
【００５６】
上記の実施形態では、自動車１が４輪の車両であったが、自動車１の車輪は４輪に限定されず、３輪でもよいし、５輪以上でもよい。また、上記の実施形態では、自動車１の車輪の一部が操舵輪であるが、自動車１の車輪の全てが操舵輪でもよい。例えば、自動車１が有する４輪の全てが駆動輪である場合に、４輪の駆動輪の操舵角がそれぞれ個別に制御されてもよく、４輪の駆動輪のそれぞれで単位時間あたりの操舵角の変化量の上限値及び上限角速度が異なっていてもよい。
【００５７】
実施形態１において、操舵角の目標値θ１などの２値の比較において、「より大きい」としているところは「以上」であってもよい。つまり、２値の比較において、２値が等しい場合を含むか否かは、基準値等の設定次第で任意に変更できるので、「より大きい」か「以上」かに技術上の差異はない。同様に、２値の比較において、「以下」としているところは「未満」であってもよく、「以下」か「未満」かに技術上の差異はない。
【００５８】
上記の実施形態では、移動体が自動車１であったが、移動体は船舶、航空機等でもよい。
【００５９】
（まとめ）
以上説明したように、第１の態様の指令値決定モジュール（２２）は指令値決定部（２２１）を備える。移動体（１）は、操舵角を自動制御する制御部（３）を有する。指令値決定部（２２１）は、移動体（１）の操舵角の目標値（θ１）が入力されると、目標値（θ１）に基づいて、単位時間あたりの操舵角の変化量が所定の上限値（θth）以下となるように、制御部（３）に出力する操舵角の指令値（θ３）を決定する。
【００６０】
この態様によれば、指令値決定部（２２１）が、操舵角の目標値（θ１）に基づいて、単位時間あたりの操舵角の変化量が上限値（θth）以下となるように、操舵角の指令値（θ３）を決定している。したがって、単位時間あたりの操舵角の変化量が上限値（θth）を超える事態が発生しにくくなり、移動体（１）の急激な方向転換が抑制されるので、安全性の向上を図ることができる。
【００６１】
第２の態様の指令値決定モジュール（２２）では、第１の態様において、指令値決定部（２２１）は、目標値（θ１）と操舵角の現在値との差分値に基づいて、指令値（θ３）を決定する。
【００６２】
ここで、目標値（θ１）と操舵角の現在値との差分値は、操舵角の角速度に比例した値になる。したがって、指令値決定部（２２１）が、目標値（θ１）と操舵角の現在値との差分値に基づいて指令値（θ３）を決定することで、操舵角の角速度を例えば演算によって求める必要がなく、演算処理の処理コストを低減できる。
【００６３】
第３の態様の指令値決定モジュール（２２）は、第１又は第２の態様において、速度指令部（２２２）を、更に備える。速度指令部（２２２）は、操舵角の指令値（θ３）と目標値（θ１）との差分の絶対値が所定の閾値以上になると、指令値（θ３）と目標値（θ１）との差分の絶対値が閾値未満である場合に比べて、移動体（１）の移動速度を低減させる速度指令（Ｖ２）を決定する。
【００６４】
この態様によれば、操舵角の指令値（θ３）と目標値（θ１）との差分の絶対値が所定の閾値以上になると、移動体（１）の移動速度が低減されるので、移動体（１）の操舵角を目標値（θ１）に制御しやすくなる。
【００６５】
第４の態様の指令値決定モジュール（２２）では、第１〜第３のいずれかの態様において、上限値（θth）が可変値である。
【００６６】
この態様によれば、安全性の向上を図ることができる。
【００６７】
第５の態様の指令値決定モジュール（２２）では、第４の態様において、上限値（θth）が、移動体（１）の状態に関連する移動体情報と、移動体（１）の周囲環境の状態に関連する環境情報との少なくとも一方に基づいて変化する。
【００６８】
この態様によれば、移動体（１）の状態と移動体（１）の周囲環境との少なくとも一方によって発生する移動体（１）の操舵性能への影響を考慮して、単位時間あたりの操舵角の変化量の上限値（θth）を変化させることができる。
【００６９】
第６の態様の指令値決定モジュール（２２）では、第１〜第５のいずれかの態様において、特定のイベントが発生した場合に、指令値決定部（２２１）は、単位時間あたりの操舵角の変化量を上限値（θth）以下に制限する処理を行わない。
【００７０】
この態様によれば、特定のイベントが発生した場合には、指令値決定部（２２１）が、単位時間あたりの操舵角の変化量が上限値（θth）を超えるような角速度で操舵角を変化させることができるので、操舵角を目標値（θ１）に追従させやすくなる。
【００７１】
第７の態様の自動運転モジュール（２）は、第１〜第６のいずれかの態様の指令値決定モジュール（２２）と、目標値決定モジュール（２１）と、を備える。目標値決定モジュール（２１）は、操舵角の目標値（θ１）を生成し、生成した目標値（θ１）を指令値決定モジュール（２２）に出力する。
【００７２】
この態様によれば、安全性の向上を図ることができる。
【００７３】
第８の態様の移動体（１）は、第１〜第６のいずれかの態様の指令値決定モジュール（２２）と、制御部（３）と、を備える。制御部（３）は、指令値決定モジュール（２２）から出力される操舵角の指令値（θ３）に基づいて操舵角を制御する。
【００７４】
この態様によれば、安全性の向上を図ることができる。
【００７５】
第９の態様の指令値決定方法では、移動体（１）の操舵角の目標値（θ１）が入力されると、目標値（θ１）に基づいて、単位時間あたりの操舵角の変化量が所定の上限値（θth）以下となるように、制御部（３）に出力する操舵角の指令値（θ３）を決定する。移動体（１）は、操舵角を自動制御する制御部（３）を有する。
【００７６】
この態様によれば、安全性の向上を図ることができる。
【００７７】
第１０の態様のプログラムは、コンピュータシステムに指令値決定処理を実行させるためのプログラムである。指令値決定処理では、移動体（１）の操舵角の目標値（θ１）が入力されると、目標値（θ１）に基づいて、単位時間あたりの操舵角の変化量が所定の上限値（θth）以下となるように、制御部（３）に出力する操舵角の指令値（θ３）を決定する。移動体（１）は、操舵角を自動制御する制御部（３）を有する。
【００７８】
この態様によれば、安全性の向上を図ることができる。
【００７９】
上記態様に限らず、上記の実施形態に係る指令値決定モジュール（２２）及び自動運転モジュール（２）の種々の構成（変形例を含む）は、指令値決定方法、（コンピュータ）プログラム、又はプログラムを記録した非一時的な記録媒体等で具現化可能である。
【００８０】
第２〜第６の態様に係る構成については、指令値決定モジュール（２２）に必須の構成ではなく、適宜省略可能である。
【符号の説明】
【００８１】
１  移動体
２  自動運転モジュール
３  制御部
２１  目標値決定モジュール
２２  指令値決定モジュール
２２１  指令値決定部
２２２  速度指令部
θ１  目標値
θ３  指令値
θth  上限値
【図１】
2019177837.tif 000003
【図２】
2019177837.tif 000004
【図３】
2019177837.tif 000005