(57)【要約】【課題】  操作に不慣れなユーザにとって使い勝手のよい手動操作システムを提供する。【解決手段】  対話装置がユーザと対話を行い、その対話内容に基づいて中間スクリプト群を生成し（Ｓ３２０）、その生成した中間スクリプト群を実行することによって手動操作装置のフォースデータ及びコントロールデータを変更する（Ｓ３２５）。この結果、手動操作装置は特定の機能のみに特化されたフォースデータ及びコントロールデータに変更される。したがって、手動操作装置の操作に不慣れなユーザが手動操作装置を操作する場合であっても操作ミスを限りなく減らすことができる。【選択図】図６
2007091209.tif 000002
【特許請求の範囲】
【請求項１】
手動操作される操作部と、
前記操作部に力を与える動力源であるアクチュエータと、
前記操作部の操作位置を検出する検出部と、
前記検出部によって検出された検出結果と前記アクチュエータの制御値との関係が定義されたフォースデータ、及び、前記検出部によって検出された検出結果と操作対象装置を操作するための信号との関係が定義されたコントロールデータを組にして複数記憶する記憶部と、
前記検出部によって検出された検出結果、前記記憶部に記憶された前記フォースデータ及び前記コントロールデータに基づいて、前記制御値を前記アクチュエータへ出力するともに前記信号を前記操作対象装置へ出力する第一の制御手段と、
音声により対話を行うための対話手段と、
前記対話手段によってユーザと対話を行い、その対話内容に基づいて前記第一の制御手段が用いる前記フォースデータ及び前記コントロールデータを切り替える第二の制御手段と、
を備えること、
を特徴とする手動操作システム。
【請求項２】
請求項１に記載の手動操作システムにおいて、
前記第二の制御手段は、前記対話内容に基づいてスクリプトを生成し、そのスクリプトを実行することによって前記フォースデータ及び前記コントロールデータの切り替えを行うようになっており、前記スクリプトを生成した際には、そのスクリプトを記憶しておき、前記スクリプトを生成しなくても記憶しておいた前記スクリプトが利用できる場合は、前記スクリプトを生成することなく記憶しておいた前記スクリプトを実行することによって前記フォースデータ及び前記コントロールデータの切り替えを行うこと、
を特徴とする手動操作システム。
【請求項３】
請求項１または請求項２に記載の手動操作システムにおいて、
さらに、車両の状態に関する情報を取得する車両状態情報取得手段を備え、
前記第二の制御手段は、前記車両状態情報取得手段が取得した前記情報も加味して前記フォースデータ及び前記コントロールデータの切り替え及び切り替え可否の決定を行うこと、
を特徴とする手動操作システム。
【請求項４】
請求項１〜請求項３の何れかに記載の手動操作システムにおいて、
前記第二の制御手段は、さらに、前記対話内容に基づき、前記操作対象装置に対して信号を直接送信するか否かを判定し、直接送信すると判定した場合は、前記操作対象装置に対して信号を直接送信すること、
を特徴とする手動操作システム。
【請求項５】
請求項１〜請求項４の何れかに記載の手動操作システムにおいて、
前記第一の制御手段は、前記操作対象装置へ出力した前記信号の意味する内容を前記第二の制御手段へ渡し、
前記第二の制御手段は、前記第一の制御手段から受信した前記内容を前記対話手段に音声として出力させること、
を特徴とする手動操作システム。
【請求項６】
請求項１〜請求項５の何れかに記載の手動操作システムにおいて、
前記第二の制御手段は、前記対話手段が有する音声入力手段に入力された所定の音声コマンドに基づいて前記記憶手段が記憶する前記フォースデータの修正をさらに行うこと、
を特徴とする手動操作システム。
【請求項７】
請求項１〜請求項５の何れかに記載の手動操作システムにおいて、
前記第二の制御手段は、前記対話手段による対話内容に基づいて前記記憶手段が記憶する前記フォースデータの修正をさらに行うこと、
を特徴とする手動操作システム。
【請求項８】
請求項７に記載の手動操作システムにおいて、
前記第二の制御手段は、前記フォースデータの修正を行うための対話を開始すると、前記検出部の検出結果も利用して前記記憶手段が記憶する前記フォースデータの修正を行うこと、
を特徴とする手動操作システム。
【請求項９】
請求項３を引用する、請求項６〜請求項８の何れかに記載の手動操作システムにおいて、
前記第二の制御手段は、前記車両情報取得手段が取得した前記情報に基づいて前記フォースデータの修正可否を判定し、修正可能であると判定した場合のみ前記修正を許可すること、
を特徴とする手動操作システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両に搭載された様々な装置を統合的に操作することができる手動操作システムに関する。
【背景技術】
【０００２】
近年、車両に搭載された様々な電装品を統合的に操作する仕組みが実現されている。具体的には、ナビゲーション装置やエアコンやオーディオ等の操作に必要な情報をディスプレイに表示させ、ディスプレイに表示されたボタンをタッチパネル等を介して乗員が操作することによって上記装置を操作する仕組みである。
【０００３】
しかしながら、この仕組みはディスプレイを見ながら操作を行う必要があるため、ディスプレイを注視することの難しい運転者が操作を行う場合、どのボタンがどこに配置されていて、ボタンを操作した結果どのような状態になったのかがわかりづらいという問題がある。
【０００４】
そこで、このような問題を解決するための技術として、下記の特許文献１に記載のような技術が知られている。この技術は、操作位置や状況に応じて反力がコントロールされるいわゆるハプティックデバイスと呼ばれるデバイスに関する技術であり、特許文献１に記載の技術は、反力だけでなく操作方向へ外力（推力）を加えるものである。
【０００５】
具体的には、ラジオやＣＤプレーヤの音量を調節する場合、音量をアップする方向に手動操作部を動かすときには抵抗感を感じるように、反対に、音量をダウンする方向に手動操作部を動かすときには加速感を感じるように手動操作部に外力を負荷する。この結果、音量をアップする際に車室内に出る音が急に大きくなるといった不都合を解消できると共に、音量をダウンしたいときには速やかに音量を絞れるので、オーディオの聴取や会話が妨げられるといった不都合を解消できるという効果が得られる。また、このような制御内容（音量のアップやダウン等）は、手動操作部によってなされる操作の対象装置（例えば、ナビゲーション装置、エアコン、オーディオ等）によって異なるようにもなっている上、これらの対象装置自体も手動操作部を操作することによって切り替えることができるようになっている。
【特許文献１】特開２００１−８４８７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このような様々な機能が割り当てられた手動操作部では、機能が割り当てられた位置を運転者が全て覚えていればスムーズに手動操作部を操作することができるが、初めて手動操作部を操作する場合や手動操作部の操作に慣れていない場合などは、運転者はどの機能がどの位置に割り当てられているかがわからず試行錯誤しながら手動操作部を操作することになってしまう。
【０００７】
また、そもそも手動操作部を用いず、対話によって手動操作部と同等の機能を実現する方法も考えられている。しかしながら、対話による方法では、例えば、音量調整のような、ユーザの耳で聞きながら調整するようなケースにおいては、調整を素早く行うことができず、ユーザにストレスをかけるという問題がある。
【０００８】
本発明は、このような問題にかんがみなされたものであり、操作に不慣れなユーザにとって使い勝手のよい手動操作システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するためになされた請求項１に記載の手動操作システムは、操作部と、アクチュエータと、検出部と、記憶部と、第一の制御手段と、対話手段と、第二の制御手段とを備える。操作部は手動操作される部位であり、アクチュエータは操作部に力を与える動力源であり、検出部は操作部の操作位置を検出する部位である。また、記憶手段は、操作部の操作位置とアクチュエータの動作力に対応した制御値との関係が定義されたフォースデータ、および、操作部の位置と操作対象装置を操作するために出力する信号との関係が定義されたコントロールデータを組にして記憶する手段である。また、第一の制御手段は、検出部によって検出された検出結果、記憶部に記憶されたフォースデータ及びコントロールデータに基づいて、前記制御値をアクチュエータへ出力するともに前記信号を操作対象装置へ出力する手段である。また、対話手段は、音声により対話を行うための手段であり、第二の制御手段は、その対話手段によってユーザと対話を行い、その対話内容に基づいて第一の制御手段が用いるフォースデータ及びコントロールデータを切り替える手段である。
【００１０】
このような手動操作システムによれば、使用するフォースデータ及びコントロールデータを、対話内容に基づいて必要とされる機能のみに限定されたものに切り替えることができる。例えば、オーディオの音量を調整する旨の対話が行われているならば、オーディオの音量変更のみに特化されたコントロールデータ（例えば、車両前方へ操作部を操作すればオーディオの音量が上がり、車両後方へ操作部を操作すればオーディオの音量が下がるといった機能のみに限定されたコントロールデータ）及びそれに対応するフォースデータに切り替えることができる。したがって、操作に不慣れなユーザが操作する場合であっても、操作ミスの発生を限りなく減らすことができる。
【００１１】
ところで、第一の制御手段が用いるフォースデータ及びコントロールデータを切り替える際には様々な判断によって切り替えを行うデータを決定する場合も考えられる。例えば、装置の識別番号やユーザの識別番号や車両の状態情報等の取得を行い、それらの情報に基づいて切り替えを行うデータを決定するような場合である。しかし、これらの決定処理は煩雑になりがちであるため、次回の同様の処理のためにこれらの処理を一連のスクリプトとして処理・記憶するようなっているとよい。つまり、請求項２に記載のように、第二の制御手段は、対話内容に基づいてスクリプトを生成し、そのスクリプトを実行することによってフォースデータ及びコントロールデータの切り替えを行うようになっているとよい。そして、スクリプトを生成した際には、そのスクリプトを記憶しておき、スクリプトを生成しなくても記憶しておいたスクリプトが利用できる場合は、スクリプトを生成することなく記憶しておいたスクリプトを実行することによってフォースデータ及びコントロールデータの切り替えを行うようになっているとよい。
【００１２】
このようになっていれば、例えば、以前と同様の対話がなされ、第一の制御手段が利用するフォースデータ及びコントロールデータを以前と同様に切り替える必要が生じたときには、記憶しおいたスクリプトを読み出すことによって一部の処理が省略でき、素早くフォースデータ及びコントロールデータの切り替えを行うことができる。
【００１３】
また、一般的に車両の走行中と停車中とではユーザの可能な操作は異なる。つまり、車両の走行中であれば比較的単純な操作しかユーザは行うことができず、車両の停車中であれば比較的複雑な操作を行うことができる。したがって、手動操作システムは、さらに、車両の状態に関する情報を取得する車両状態情報取得手段を備え、第二の制御手段は、車両状態情報取得手段が取得した情報も加味してフォースデータ及びコントロールデータの切り替え及び切り替え可否の決定を行うようになっているとよい（請求項３）。なお、ここで言う「車両の状態に関する情報」というのは、走行中であるか否かの情報や、車速情報、ブレーキの操作状態を表す情報、方向指示器の操作状態を表す情報、ハンドルの操作状態を表す情報、乗員の着座状態を表す情報、ドアやウィンドウの開閉状態を表す情報等である。
【００１４】
このようになっていれば、フォースデータ及びコントロールデータを、車両の状態に合ったものに切り替えることができるため（又は切り替えを抑制できるため）、よりユーザの操作ミスを軽減することができる。
【００１５】
また、ユーザは操作部を使用せずに、あえて対話によって操作対象装置を操作したい場合も考えられる。そのため、第二の制御手段は、さらに、対話内容に基づき、フォースデータ及びコントロールデータの切り替えを行って操作部によって操作可能にするか、操作対象装置に対して直接指令を送信するかを判定し、直接送信すると判定した場合は操作対象装置に対して指令を送信するようになっているとよい（請求項４）。
【００１６】
このようになっていれば、ユーザがあえて対話によって操作対象装置を操作したいと考えた場合、それを実現することができるため、ユーザにとって自由度が高まり、ユーザの満足度が向上する。
【００１７】
また、ユーザは操作部を操作した結果を音声によって知ることができるようになっているとよい。したがって、第一の制御手段は、操作対象装置へ出力した前記信号の意味する内容を第二の制御手段へ渡し、第二の制御手段は、第一の制御手段から受信した前記内容を対話手段に音声として出力させるようになっているとよい（請求項５）。
【００１８】
このようになっていれば、ユーザは操作部を操作した結果を音声によって確認することができるため、ユーザにとって安心感が高まる。
また、第二の制御手段は、対話手段が有する音声入力手段（マイクロフォン等）に入力された所定の音声コマンドに基づいて記憶手段が記憶するフォースデータの修正をさらに行うようになっていてもよい（請求項６）。つまり、フォースデータを切り替えるのではなく、フォースデータ自体を修正するのである。
【００１９】
このようになっていれば、ユーザは所定の音声コマンドを発することにより、フォースデータ（つまり、操作部を操作する際の反力）を好みの状態に修正することができるため、操作部を操作する際の操作感を向上させることができる。
【００２０】
また、音声コマンドではなく対話手段による対話内容に基づいてフォースデータの修正をさらに行うようになっていてもよい（請求項７）。つまり、手動操作システム側からの問いかけに呼応してユーザが修正内容を発声することによってフォースデータの修正を行うようになっていてもよい（請求項７）。
【００２１】
このようになっていれば、より容易にフォースデータの修正を行うことができる。
また、フォースデータの修正を行うための対話を開始すると、検出部の検出結果も利用してフォースデータの修正を行うようになっているとよい（請求項８）。例えば、反力の修正を行う操作部の位置の指定を、操作部自体を用いて指定することである。
【００２２】
このようになっていれば、より容易にフォースデータの修正を行うことができる。
なお、第二の制御手段は、車両情報取得手段が取得した前記情報に基づいてフォースデータの修正可否を判定し、修正可能であると判定した場合のみ修正を許可するようになっているとよい（請求項９）。例えば、車両の停止中にのみ、修正を行うようになっていることである。
【００２３】
このようになっていれば、フォースデータの修正を行うことが好ましくない車両の状態の場合に、修正を実施しないように制御できるため、適切な車両状態のときにフォースデータの修正をユーザに実施させることができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明が適用された実施形態について図面を用いて説明する。尚、本発明の実施の形態は、下記の実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態を採りうる。
【００２５】
［構成の説明］
図１は、手動操作装置１１を中心とした、手動操作システム１０の概略構成を示すブロック図である。手動操作装置１１は、車両の運転席付近に設置されており、運転者が運転席に座った状態で操作可能になっている。手動操作装置１１は、操作部１２と、アクチュエータ１３と、位置センサ１４と、記憶部１５と、通信部１６と、制御部１７とを備える。そして、通信部１６は、車内ＬＡＮ２８を介して、対話装置２０、通信装置２２、オーディオコントローラ２３、エアコンコントローラ２４、ナビゲーション装置２５、着座センサ２６及び表示装置２７と接続されている。また、対話装置２０は、マイク１８と、カメラ１９と、スピーカ２１とが接続されている。
【００２６】
操作部１２は、ユーザが操作を行う部位である。詳細については後述する。
アクチュエータ１３は、制御部１７から入力される制御値に基づいて操作部１２に対して力を与える部位である。
【００２７】
位置センサ１４は、操作部１２の操作状態（操作位置）を検知し、その検知結果を制御部１７へ出力するセンサである。
記憶部１５は、フォースデータやコントロールデータや画像認識データ（画像認識技術により運転者を特定するために必要なデータ）等を記憶する部位である。なお、フォースデータというのは、操作部１２の操作状態とアクチュエータ１３を動作させるための制御値との関係であり、コントロールデータというのは、操作部１２の操作位置と操作対象装置（オーディオ、エアコン、ナビゲーション装置等）を操作するための信号との関係を示す値の集合である。なお、フォースデータ及びコントロールデータは、運転者を特定する情報と関連づけられて、運転者毎に用意されている。
【００２８】
通信部１６は、車内ＬＡＮ２８を介し、車内ＬＡＮ２８に接続された様々な機器等と通信を行う部位である。
制御部１７は、ＣＰＵ、ＲＯＭ、ＲＡＭ等から構成され、ＲＡＭに読み込まれたフォースデータ及びコントロールデータにしたがって、アクチュエータ１３や通信部１６へ制御値を送るようになっている。
【００２９】
車内ＬＡＮ２８は、車両内に張り巡らされたＬＡＮであり、当該ＬＡＮに接続された機器（通信装置２２、オーディオコントローラ２３、エアコンコントローラ２４、ナビゲーション装置２５、着座センサ２６等）は互いに通信を行うことができる。
【００３０】
マイク１８は、ユーザが音声を入力（発話）するとその入力した音声に基づく電気信号（音声信号）を対話装置２０に出力するものである。
カメラ１９は、車両のルームミラーに内蔵されたカメラであり、主に運転者の顔面部分を撮影するカメラであり、撮影した映像を対話装置２０に出力する。
【００３１】
スピーカ２１は、対話装置２０に接続され、対話装置２０から出力される音声信号に基づいて音声を出力するものである。
対話装置２０は、ＣＰＵ，ＲＯＭ，ＲＡＭ，ＳＲＡＭ，Ｉ／Ｏ及びこれらの構成を接続するバスラインなどからなる周知のマイクロコンピュータを中心に構成されている。そして、ＲＯＭ及びＲＡＭに記憶されたプログラムに基づいて各種処理を実行し、ユーザとの対話機能（エージェント機能）を担う。
【００３２】
通信装置２２は、携帯電話やＰＤＡと通信を行う通信装置であり、本実施形態ではBluetooth（登録商標）規格に基づいた通信を行う。
オーディオコントローラ２３は、図示しないオーディオ装置を制御するためのコントローラである。
【００３３】
エアコンコントローラ２４は、図示しないエアコンを制御するためのコントローラである。
ナビゲーション装置２５は、地図ディスクやＧＰＳ受信機等を備え、車両の現在位置を地図と共に表示装置２７に表示させ、経路案内等を実施する。
【００３４】
着座センサ２６は、運転者の着座を検出するセンサであり、運転席の座面に設けられた圧力センサである。
表示装置２７は、液晶パネルや有機ＥＬパネルを有する画像表示装置である。なお、表示装置２７は、複数台から構成されていてもよく、その場合はそれぞれの表示装置２７が表示内容を分担しているとよい。また、それぞれの表示装置２７が各座席に設置されていてもよい。
【００３５】
次に、操作部１２の構造について、図２の説明図を用いて説明する。図２は操作部１２を、設置状態において側方から見た際の断面図である。操作部１２は、主に、トラックボール保持部１２ａと、トラックボール部１２ｂと、アクチュエータ１３と、位置センサ１４とから構成される。
【００３６】
トラックボール保持部１２ａは、トラックボール部１２ｂとアクチュエータ１３と位置センサ１４とを内部に囲む様に保持する卵状の筐体である。なお、このうちトラックボール部１２ｂのみ、トラックボール保持部１２ａの開口部１２ｃから突出している。
【００３７】
トラックボール部１２ｂは、半透明の半球体から構成され、その半球の中心点を支点として所定範囲を限度として全方向に回転可能に構成されている。また、トラックボール部１２ｂの最上部には、突起部１２ｄが設けられ、運転者（ユーザ）の掌に引っかかることによって運転者が操作しやすいようになっている。なお、トラックボール部１２ｂは戻り特性を有し、運転者が手を離せば突起部１２ｄが所定位置に戻るようになっている。また、トラックボール部１２ｂは、矢印Ａ方向に押下可能に構成されている。
【００３８】
このようなトラックボール部１２ｂの動きを、位置センサ１４が検知し、その検知結果を制御部１７へ出力するようになっている。また、アクチュエータ１３が、制御部１７から送られてきた制御値に基づいてトラックボール部１２ｂに対して力を与えることにより、トラックボール部１２ｂを操作する運転者に反力を感じさせたり、トラックボール部１２ｂを自立的に回転させるようになっている。
【００３９】
次に、対話装置２０の詳細について図３の説明図を用いて説明する。図３は、対話装置２０を中心とした機能ブロック図である。対話装置２０は、Ａ／Ｄ変換部２０ａと、Ａ／Ｄ変換部２０ｂと、フィルタリング部２０ｃと、音声認識部２０ｄと、スクリプト生成部２０ｅと、音声認識辞書２０ｆと、スクリプトＤＢ２０ｇ、ＨＭＩコントローラ２０ｈ、対話部２０ｉとを備える。
【００４０】
Ａ／Ｄ変換部２０ａは、マイク１８から入力した音声信号をデジタル変換し、フィルタリング部２０ｃへ出力する部位である。
Ａ／Ｄ変換部２０ｂは、カメラ１９から入力した映像信号をデジタル変換し、フィルタリング部２０ｃへ出力する部位である。
【００４１】
フィルタリング部２０ｃは、Ａ／Ｄ変換部２０ａから入力した音声信号をフィルタリングし、人の発話の周波数帯域のみの音声信号を音声認識部２０ｄへ出力する。また、Ａ／Ｄ変換部２０ｂから入力した映像信号をフィルタリングし、人の表情を解析しやすい帯域のみの映像信号を音声認識部２０ｄへ出力する。
【００４２】
音声認識部２０ｄは、フィルタリング部２０ｃから入力された音声信号および映像信号からユーザが発話した内容をテキストに変換する部位である。なお、変換の際には、音声認識辞書２０ｆが用いられる。
【００４３】
スクリプト生成部２０ｅは、対話部２０ｉから送られてきた指令に基づいてスクリプトＤＢ２０ｇに記憶された各種のスクリプトを組み合わせて必要な実行用スクリプト（中間スクリプト群）を生成する部位である。
【００４４】
音声認識辞書２０ｆは、ユーザによって発話された音声をテキストに変換する際に使用される音声パターンや表情パターンが記憶された辞書である。
ＨＭＩコントローラ２０ｈは、スクリプト生成部２０ｅにて生成されたスクリプト（中間スクリプト群）を解釈し、車両に搭載された各種の装置へ指令を送信する部位である。
【００４５】
対話部２０ｉは、音声認識部２０ｄにて認識された変換されたテキストを入力し、予め登録された対話パターンに基づき適切な音声信号をスピーカ２１へ出力したり、スクリプト生成部２０ｅにスクリプトの生成を指示する部位である。
【００４６】
スクリプトＤＢ２０ｇは、スクリプト生成部２０ｅが実行用スクリプトを生成する際に用いるスクリプトが記憶された部位である。ここで、スクリプトＤＢ２０ｇの詳細について図４の説明図を用いて説明する。図４は、スクリプトＤＢ２０ｇを構成するデータベースを表すブロック図である。スクリプトＤＢ２０ｇは、要素スクリプトＤＢ２０１と、中間スクリプトＤＢ２０２と、構成スクリプトＤＢ２０３とを備える。
【００４７】
（１）要素スクリプトＤＢ２０１について
要素スクリプトＤＢ２０１は、テキスト単語と要素スクリプトとが組となったものの集合である。ここで言う「テキスト単語」というのは、ユーザから発話された会話に含まれる単語をテキスト化したものである。また、「要素スクリプト」というのは、後述する中間スクリプト（実際に機器を動作させることができる命令群の最小単位）を生成する際にその一部をなすものである。
【００４８】
テキスト単語は、コマンドとワードとに分類され、コマンドは、動作や状態を示すために用いられるものであり、ワードは、物体の名前や属性を示すために用いられるものである。
【００４９】
コマンドは、動詞に分類されるものと副詞に分類されるものとがあり、動詞に分類されるものの具体例としては、「開く、閉じる、押す、引く、点灯する、消す、作動する、休止する、停止する、起動する、あげる、下げる、しめる、ゆるめる、回す、踏む、膨らませる、縮ませる」等である。また、副詞に分類されるものとしては、「早く、遅く、ゆっくり、高く、低く、アップ、ダウン、左に、右に」等である。
【００５０】
一方、ワードは、一意に特定可能な識別番号を含む要素スクリプトと組をなしているものと、車両識別情報と機器特定情報とを含む要素スクリプトと組をなしているものと、このような情報（以下、「付加情報」と称す。）を含まない要素スクリプトと組をなしているものとに分類される。
【００５１】
具体的には、一意に特定可能な識別番号を含む要素スクリプトと組をなしているワードとしては、固有名詞（人名（ユーザ）、施設名、道路名等）が考えられる。また、車両識別情報と機器特定情報とを含む要素スクリプトと組をなしているワードとしては、車両部分名詞（エアコン、オーディオ、ディスプレイ、ステアリング、ブレーキ、アクセル、タイヤ、エアバッグ、ドア等）が考えられる。また、上述した情報を含まない要素スクリプトと組をなしているワードとしては、物理量を表す名詞（速度、角度、距離、方向（前後左右）等）が考えられる。
【００５２】
このように付加情報を含む要素スクリプトと組をなしているワードが定義されているため、ユーザは単なる名称を言うだけで（ＩＤ等を指定しなくとも）対象物を指定することができる。例えば、ユーザが、「エアコンを作動させる」と車両Ａで言えば、対応する中間スクリプトが中間スクリプトＤＢ２０２から読み出され、その中間スクリプトの中の未確定部分が要素スクリプトによって埋められる。その結果、下記のような、車両Ａに搭載されたメーカＢの型番Ｃのエアコンを作動させる完成された中間スクリプトが生成される。
【００５３】
中間スクリプト例：Start  AC  on  Car  A  (AC（maker  B、No  C）)
一方、ユーザが、「エアコンを作動させる」と車両Ｂで言うと、車両Ｂに搭載されたメーカＤの型番Ｅのエアコンを作動させる完成された中間スクリプトが生成される。
【００５４】
中間スクリプト例：Start  AC  on  Car  B  (AC（maker  D、No  E）)
※on Car B の部分は省略されていてもよい。
（２）中間スクリプトＤＢ２０２について
中間スクリプトは、実際に機器を動作させることができる命令群の最小単位であり、このような中間スクリプトを集めたものが中間スクリプトＤＢ２０２である。なお、中間スクリプトの中には未確定部分を有しているものもあり、その場合は上述した要素スクリプトに含まれる付加情報によって埋めるか、さらにユーザに問い合わせることによって埋め、中間スクリプトを完成させるようになっている。
【００５５】
（３）  構成スクリプトＤＢ２０３について
ユーザが発音した指令は、「何をどうする」という指令が多いと考えられるが、その指令を実現する中間スクリプトコマンドは複数になる場合が多いと考えられる。そのため、ユーザが発音した一の指令とその結果作成された複数の中間スクリプトとを一まとめにしたものが構成スクリプトである。そして、その構成スクリプトを複数集めたものが構成スクリプトＤＢ２０３である。
【００５６】
例えば、ユーザが、「再生中の曲を繰り返す」と発音すると、この指令に対応する構成スクリプトが構成スクリプトＤＢ２０３から検索され、該当する構成スクリプトが見つかれば見つかった構成スクリプトが読み出され、その読み出された構成スクリプトを構成する中間スクリプトに基づいて、各種の指令がオーディオコントローラ２３に出力されるようになっている。
【００５７】
［動作の説明］
次に、手動操作システム１０の動作について説明するが、以下では本発明に関連する処理、すなわち、対話装置２０が実行する処理を中心に説明する。なお、ユーザが他の装置を操作する目的で手動操作装置１１を操作した際の動作等については、広く知られた動作であるため、説明を省略する。
【００５８】
（１）エージェントコール処理
まず、対話装置２０が実行するエージェントコール処理について図５および図６のフローチャートを用いて説明する。この処理は、ユーザによりマイク１８に対して何らかの発話がなされた際に実行が開始される。
【００５９】
対話装置２０は、エージェントコール処理の実行を開始すると、まず、発話された内容がエージェントコール処理の開始を希望するものであるか否かを判定する（Ｓ２００）。この判定は、音声認識部２０ｄによってテキスト変換されたユーザの発話内容によって行う。例えば、ユーザの発話が、「エージェントコール」という言葉や、「エージェント」という言葉や、「おい」という言葉であった場合に、発話された内容がエージェントコール処理の開始を希望するものであると判定する。
【００６０】
このＳ２００において、ユーザによってエージェントコールの開始を希望する発話がなされたと判定した場合は（Ｓ２００：Ｙｅｓ）、Ｓ２０５に処理を移行し、ユーザによってエージェントコールの開始を希望する発話がなされなかったと判定した場合は（Ｓ２００：Ｎｏ）、本処理（エージェントコール処理）を終了する。
【００６１】
ユーザによってエージェントコールの開始を希望する発話がなされたと判定した場合に進むＳ２０５では、エージェントレスポンスを行う。これは、例えば「はい、エージェントです」という言葉や、「動作可能です」という言葉をスピーカ２１から出力させることである。
【００６２】
続くＳ２１０では、ドライバーズリクエストの受付が行われる。これは、例えば「何かご用ですか？」という言葉や、「命令をおっしゃってください」という言葉のような、ユーザに問いかける言葉をスピーカ２１から出力させ、その言葉に対するユーザの発話内容を受け付けることである。
【００６３】
続くＳ２１５では、Ｓ２１０での問いかけに対してユーザから受け付けた発話内容が、音声認識部２０ｄによって全てテキスト変換できたか否かを判定する。ユーザから受け付けた発話内容が全てテキスト変換できたと判定した場合は（Ｓ２１５：Ｙｅｓ），Ｓ２２０に処理を移行し、ユーザから受け付けた発話内容の一部にテキスト変換できない部分があったと判定した場合は（Ｓ２１５：Ｎｏ）、上述したＳ２１０に処理を戻す。
【００６４】
ユーザから受け付けた発話内容が全てテキスト変換できたと判定した場合に進むＳ２２０では、エージェントレスポンスを行う。これは、テキスト変換したものを合成音声によってスピーカ２１から出力させて正しいかどうかを問いかけることである。具体的には、例えば「オーディオの音量を変更することを希望されているのですか？」というような問いかけである。
【００６５】
続くＳ２２５では、ドライバーズレスポンスの受付が行われる。これは、Ｓ２２０での問いかけに対するユーザの発話内容を受け付けることである。
続くＳ２３０では、Ｓ２２５で受け付けた発話内容が、肯定的なものであるか否定的なものであるかを判定する。この判定では、音声認識部２０ｄによってテキスト変換された言葉が、例えば「はい」や「そうだ」や「うん」と言ったものであれば、Ｓ２２５で受け付けた発話内容が肯定的なものであると判定し、図６のＳ３０３に処理を移行する。一方、音声認識部２０ｄによってテキスト変換された言葉が、例えば「いいえ」や「ちがう」や「いや」と言ったものであれば、Ｓ２２５で受け付けた発話内容が否定的なものであると判定し、Ｓ２３５に処理を移行する。
【００６６】
Ｓ２２５で受け付けた発話内容が否定的なものであると判定して進むＳ２３５では、Ｓ２１０のドライバーズリクエストの受付を行った回数が２回であるか否かを判定する。ドライバーズリクエストの受付を行った回数が２回であると判定した場合は（Ｓ２３５：Ｙｅｓ）、Ｓ２４０に処理を移行し、ドライバーズリクエストを行った回数が２回でないと判定した場合は、Ｓ２１０に処理を戻す。
【００６７】
ドライバーズリクエストの受付を行った回数が２回であると判定した場合に進むＳ２４０では、ユーザのリクエスト内容を手動入力にて受け付ける。これは例えば、ナビゲーション装置２５のタッチパネルに表示された５０音表をユーザにタッチしてもらうことによって行う。ユーザのリクエスト内容を手動入力にて受け付けると、図６のＳ３０３に処理を移行する。
【００６８】
図６のＳ３０３では、上記テキスト変換された言葉が、例えば「反力修正」等のフォースデータを修正する旨の言葉であるか否かを判定する。その結果、上記テキスト変換された言葉がフォースデータを修正する旨の言葉であると判定した場合は（Ｓ３０３：Ｙｅｓ）、図７のＳ３７２に処理を移行し、上記テキスト変換された言葉がフォースデータを修正する旨の言葉でないと判定した場合は（Ｓ３０３：Ｎｏ）、Ｓ３０５へ処理を移行する。
【００６９】
上記テキスト変換された言葉がフォースパターンを修正する旨の言葉でないと判定した場合に進むＳ３０５では、Ｓ２１０で受け付けたユーザの発話内容が、さらに手動操作装置１１を使用して操作する必要がある内容か否かを判定する。この判定では、Ｓ２１０で受け付けたユーザの発話内容が例えば「オーディオの音量を変更」であれば、具体的な音量の程度を入力する必要があるため、さらに手動操作装置１１を使用して操作する必要がある内容であると判定し、Ｓ３１０に処理を移行する。一方、Ｓ２１０で受け付けたユーザの発話内容が例えば「オーディオをオフ」であれば、さらに手動操作装置１１を使用して操作する必要がないと判定し、Ｓ３５０に処理を移行する。
【００７０】
さらに手動操作装置１１を使用して操作する必要がある内容であると判定した場合に進むＳ３１０では、ドライバーズリクエストの受け付けが行われる。これは、例えば「手動操作装置を使用しますか？」という言葉のようなユーザに問いかける言葉をスピーカ２１から出力させ、その言葉に対するユーザの発話内容を受け付けることである。
【００７１】
続くＳ３１５では、Ｓ３１０で受け付けた発話内容が、肯定的なものであるか否定的なものであるかを判定する。この判定では、音声認識部２０ｄによってテキスト変換された言葉が、例えば「はい」や「うん」や「使用する」と言ったものであれば、Ｓ３１０で受け付けた発話内容が肯定的なものであると判定し、Ｓ３２０に処理を移行する。一方、音声認識部２０ｄによってテキスト変換された言葉が、例えば「いいえ」や「ちがう」や「いや」と言ったものであれば、Ｓ３１０で受け付けた発話内容が否定的なものであると判定し、Ｓ３５０に処理を移行する。
【００７２】
Ｓ３１０で受け付けた発話内容が肯定的なものであると判定した場合に進むＳ３２０では、スクリプト生成処理を実行する。このスクリプト生成処理については後述する。
続くＳ３２５では、Ｓ３２０で生成した中間スクリプト群をＨＭＩコントローラ２０ｈによって実行する。中間スクリプト群を実行することにより、手動操作装置１１へ指令が送られ、手動操作装置１１が適切な状態に変更される。なお、この際に中間スクリプト群に付加されている車両走行状況に関する情報を加味して手動操作装置１１へ適切な指令を送る。
【００７３】
続くＳ３３０では、手動操作装置１１から上記変更が正常に完了した旨のレスポンスが届いたか否かを判定する。手動操作装置１１から正常に完了した旨のレスポンスが届いたと判定した場合には（Ｓ３３０：Ｙｅｓ）、Ｓ３３５に処理を移行し、手動操作装置１１から正常に完了した旨のレスポンスが届かなかったと判定した場合には（Ｓ３３０：Ｎｏ）、Ｓ３７０に処理を移行する。
【００７４】
手動操作装置１１から上記変更が正常に完了した旨のレスポンスが届いたと判定した場合に進むＳ３３５では、手動操作装置１１が適切な状態に変更され、操作可能な状態になったことをユーザへ報知する。これは、例えば「手動操作装置が使用可能になりました」という言葉をスピーカ２１から出力させることにより行う。この結果、ユーザは手動操作装置１１の操作を開始する。
【００７５】
続くＳ３４０では、ドライバーズレスポンスの受付が行われる。これは、ユーザから手動操作装置１１の使用の終了を意味する言葉を受け付けることである。具体的には、例えば、「ＯＫ」や「完了」や「終了」と言った言葉である。ユーザからこのような手動操作装置１１の使用の終了を意味する言葉を受け付けると、Ｓ３４５に処理を移行する。
【００７６】
続くＳ３４５では、手動操作装置１１から操作内容に関する情報を受け取り、その操作内容をユーザへ報知する。これは、例えば「音量を１０に設定しました」と言った音声をスピーカ２１から出力させることにより行う。ユーザへの報知を終えると、図７のＳ３７２へ処理を移行する。
【００７７】
一方、Ｓ３０５において、さらに手動操作装置１１を使用して操作する必要がないと判定した際に進むＳ３５０では、スクリプト生成処理を実行する。このスクリプト生成処理の詳細については後述する。
【００７８】
続くＳ３５５では、Ｓ３５０で生成した中間スクリプト群をＨＭＩコントローラ２０ｈによって実行する。中間スクリプト群を実行することにより、車両に搭載された装置（手動操作装置１１を除いたもの）やコントローラ等に指令を送り、それらの設定が変更されたり、それらが動作を開始したりする。なお、この際に中間スクリプト群に付加されている車両走行状況に関する情報を加味してオーディオコントローラ２３やエアコンコントローラ２４等へ適切な指令を送る。
【００７９】
続くＳ３６０では、上述した指令を送った装置やコントローラ等から、正常に指令を実行した旨のレスポンスが対話装置２０へ届いたか否かを判定する。正常に指令を実行した旨のレスポンスが届いたと判定した場合には（Ｓ３６０：Ｙｅｓ）、Ｓ３６５に処理を移行し、正常に指令を実行した旨のレスポンスが届かなかったと判定した場合には（Ｓ３６０：Ｎｏ）、Ｓ３７０に処理を移行する。
【００８０】
正常に指令を実行した旨のレスポンスが届いたと判定した場合に進むＳ３６５では、上述した指令の内容をユーザへ報知する。これは、例えば「エアコンの動作を開始しました」と言った音声をスピーカ２１から出力させることにより行う。ユーザへの報知を終えると、図７のＳ３７２へ処理を移行する。
【００８１】
一方、Ｓ３６０において否定判定（Ｓ３６０：Ｎｏ）、または、Ｓ３３０において否定判定（Ｓ３３０：Ｎｏ）の場合に進むＳ３７０では、所定のエラー処理を行い、図７のＳ３７２へ処理を移行する。なお、エラー処理としては、エラーの内容を音声にてスピーカ２１から出力させること等である。
【００８２】
説明を図７に移し、Ｓ３７２では、ユーザから所定時間内（例えば、１０秒以内）にフォースデータを修正する旨の指示があったか否かを判定する。この判定では、ユーザから「フォースデータ修正」，「反力修正」等の言葉を受け付けたり、別に設けられた所定のスイッチが押下された場合等に、フォースデータを修正する旨の指示があったと判定する。その結果、ユーザから所定時間内にフォースデータを修正する旨の指示があったと判定した場合は（Ｓ３７２：Ｙｅｓ）、Ｓ３７４へ処理を移行し、ユーザから所定時間内にフォースデータを修正する旨の指示がなかったと判定した場合は（Ｓ３７２：Ｎｏ）、本処理（エージェントコール処理）を終了する。
【００８３】
ユーザから所定時間内にフォースデータを修正する旨の指示があったと判定した場合に進むＳ３７４では、現在の車両の状態がフォースデータを修正してもよい状態であるか否かを判定する。具体的には、車内ＬＡＮ２８を介して各種のＥＣＵ等から車両走行状況に関する情報を取得し、車両走行中であるか否かを判定する。その結果、車両走行中であるためフォースデータの修正は不可能な状態であると判定した場合は（Ｓ３７４：Ｎｏ）、Ｓ３７６へ処理を移行し、車両走行中でないためフォースデータの修正は可能な状態であると判定した場合は（Ｓ３７４：Ｙｅｓ）、Ｓ３７８へ処理を移行する。
【００８４】
フォースデータの修正は不可能な状態であると判定した場合に進むＳ３７６では、その旨をスピーカ２１から報知させ、上述したＳ３７４へ処理を戻す。
一方、フォースデータの修正は可能な状態であると判定した場合に進むＳ３７８では、エージェントレスポンスとして、フォースデータの修正を行うモードに入った旨と修正したいポイント（操作部１２の操作状態位置）を指定して欲しい旨とをスピーカ２１から出力させる。具体的には、例えば、「フォースデータの修正を受け付けます。修正したいポイントを操作部で指定してください」等である。なお、Ｓ３０３にて肯定判定されて本ステップに到達した場合は、本ステップに先立ち、フォースデータの修正を行う機能についての問合せを行い（例えば「どの機能のフォースデータを修正しますか？」）、指定された機能を手動操作装置１１に割り当てておくようにする（図７では省略）。
【００８５】
続いて、対話装置２０は、ドライバーからレスポンスがあったか否かを判定する（Ｓ３８０）。これは、上述したポイント指定依頼に対する返答を意味し、例えば「ＯＫ」や「この辺りだ」という音声入力を想定している。このような音声入力があったと判定した場合は（Ｓ３８０：Ｙｅｓ）、Ｓ３８２へ処理を移行し、このような音声入力がないと判定した場合は（Ｓ３８０：Ｎｏ）、本ステップ（Ｓ３８０）にとどまる。
【００８６】
「ＯＫ」や「この辺りだ」という音声入力（ドライバーズレスポンス）があったと判定した場合に進むＳ３８２では、操作部１２の現在の操作状態位置を位置センサ１４からの信号に基づいて特定し、その位置を修正ポイントとする。
【００８７】
続いて、現在、手動操作装置１１の制御部１７が用いているフォースデータを取得し、表示装置２７に視覚化して表示させる（Ｓ３８３）。なお、視覚化の詳細については後述する。
【００８８】
続いて、対話装置２０は、どのように修正するのかを問いかける音声をスピーカ２１から出力させる（Ｓ３８４）。なお、本ステップを再度実行する場合は（後述するＳ３８３で否定判定された場合は）、この状態のフォースデータで良いのかどうかを問いかける音声をスピーカ２１から出力させる（Ｓ３８４）。
【００８９】
続いて、ドライバーから音声入力があったか否かを判定する（Ｓ３８６）。ここで言う音声というのは、例えば、「ピークダウン」、「ピークアップ」、「ＯＫ」等の修正内容についての音声である。ドライバーから音声入力があったと判定した場合は（Ｓ３８６：Ｙｅｓ）、Ｓ３８８へ処理を移行し、ドライバーから音声入力がないと判定した場合は（Ｓ３８６：Ｎｏ）、音声入力があるまで本ステップにとどまる。
【００９０】
ドライバーから音声入力があったと判定した場合に進むＳ３８８では、その音声が終了を意味する音声であるか否かを判定する。終了を意味する音声というのは「ＯＫ」や「終了」等である。終了を意味する音声であると判定した場合は（Ｓ３８８：Ｙｅｓ）、Ｓ３９０へ処理を移行し、終了を意味する音声でないと判定した場合は（Ｓ３８８：Ｎｏ）、ドライバーから入力された音声に対応した処理を実行した後、Ｓ３８４へ処理を戻す。なお、ここで言う「ドライバーから入力された音声に対応した処理」というのは、例えば、ドライバーが「ピークダウン」という音声を発したのであれば、上述した修正ポイントの反力の山が所定レベル下がるようにフォースデータを修正することである。そして、この修正したフォースデータは即座に手動操作装置１１へ送られ、修正後のフォースデータによって手動操作装置１１が機能するようになっている。また、視覚化されているフォースデータも即座に反映される。
【００９１】
終了を意味する音声であると判定した場合に進むＳ３９０では、現在手動操作装置１１が用いているフォースデータを記憶部１５へ記憶させる指令を手動操作装置１１の制御部１７へ送る。そして、フォースデータの修正を終えた旨の音声をスピーカ２１から出力させ、本処理（エージェントコール処理）を終了する。
【００９２】
（２）スクリプト生成処理
次に、対話装置２０が実行するスクリプト生成処理について図８のフローチャートを用いて説明する。この処理は、上述したエージェントコール処理のＳ３２０またはＳ３５０において呼び出されて実行が開始される。
【００９３】
対話装置２０は、スクリプト生成処理の実行を開始すると、まず、エージェントコール処理のＳ２１０で入力されたユーザの発話内容であって音声認識部２０ｄによってテキスト変換されたテキスト（ユーザ要求）に対応する構成スクリプトが、構成スクリプトＤＢ２０３の中にあるか否かを判定する（Ｓ４０５）。ユーザ要求に対応する構成スクリプトが構成スクリプトＤＢ２０３の中にあると判定すれば（Ｓ４０５：Ｙｅｓ）、Ｓ４１０に処理を移行し、ユーザ要求に対応する構成スクリプトが構成スクリプトＤＢ２０３の中にないと判定すれば、Ｓ４２５に処理を移行する。
【００９４】
ユーザ要求に対応する構成スクリプトが構成スクリプトＤＢ２０３の中にあると判定して進むＳ４１０では、その対応する構成スクリプトのファイルが構成スクリプトＤＢ２０３の中から読み出される。
【００９５】
続くＳ４１５では、車内ＬＡＮ２８を介して各種のＥＣＵ等から車両走行状況に関する情報を取得する。具体的な情報としては、走行中であるか否かの情報や、車速情報、ブレーキの操作状態を表す情報、方向指示器の操作状態を表す情報、ハンドルの操作状態を表す情報、乗員の着座状態を表す情報、ドアやウィンドウの開閉状態を表す情報等である。
【００９６】
続くＳ４２０では、Ｓ４１０で読み出した構成スクリプト（中間スクリプト群）、または後述するＳ４５０で生成した中間スクリプト群に対し、Ｓ４１５で取得した情報を必要に応じて付加し、本処理（スクリプト生成処理）を終了する。そして、呼び出しもとであるエージェントコール処理のＳ３２０またはＳ３５０に続く処理を実行する。
【００９７】
一方、ユーザ要求に対応する構成スクリプトが構成スクリプトＤＢ２０３の中にないと判定して進むＳ４２５では、ユーザ要求に対応する中間スクリプトが中間スクリプトＤＢ２０２の中にあるか否かを判定する。ユーザ要求に対応する中間スクリプトが中間スクリプトＤＢ２０２の中にあると判定すれば（Ｓ４２５：Ｙｅｓ）、Ｓ４３５に処理を移行し、ユーザ要求に対応する中間スクリプトが中間スクリプトＤＢ２０２の中にないと判定すれば（Ｓ４２５：Ｎｏ）、Ｓ４３０に処理を移行する。
【００９８】
ユーザ要求に対応する中間スクリプトが中間スクリプトＤＢ２０２の中にないと判定した場合に進むＳ４３０では、ユーザのリクエスト内容を手動入力にて受け付ける。これは例えば、ナビゲーション装置２５のタッチパネルに表示された５０音表をユーザにタッチしてもらうことによって行う。ユーザのリクエスト内容を手動入力にて受け付けると、Ｓ４０５に処理を移行する。
【００９９】
一方、ユーザ要求に対応する中間スクリプトが中間スクリプトＤＢ２０２の中にあると判定した場合に進むＳ４３５では、その中間スクリプトが中間スクリプトＤＢ２０２から読み出され、その中間スクリプトに存在する未確定部分の問い合わせをユーザへ行う。これは、例えば「どのチャンネルでしょうか？」という言葉や、「どのＣＤでしょうか？」という言葉をスピーカ２１から出力させ、その言葉に対するユーザの発話内容を受け付けることである。
【０１００】
続くＳ４４０では、Ｓ４３５での問い合わせに対してユーザから何らかの応答（発話）があったか否かを判定する。Ｓ４３５での問い合わせに対してユーザから何からの応答があったと判定した場合はＳ４４５に処理を移行し、ユーザから一定時間の間に何の応答もなかったと判定した場合はＳ４５５に処理を移行する。
【０１０１】
Ｓ４３５での問い合わせに対してユーザから一定時間の間に何の応答もなかったと判定した場合に進むＳ４５５では、所定のエラー処理を行い、本処理（エージェントコール処理）を終了する。なお、エラー処理としては、エラーの内容を音声にてスピーカ２１から出力させること等である。その後、本処理（スクリプト生成処理）を終了し、上述したエージェントコール処理のＳ２０５に処理を戻す。
【０１０２】
一方、Ｓ４３５での問い合わせに対してユーザから何らかの応答があったと判定した場合に進むＳ４４５では、その応答の内容が解読できる（テキスト変換でき、かつ未確定部分に相当するものとして適している）か否かを判定する。ここで想定されるユーザの発話内容としては、例えば、「１ｃｈ」という言葉や、「３枚目のＣＤ」という言葉である。
【０１０３】
このＳ４４５において、ユーザの応答の内容は解読できると判定した場合はＳ４５０に処理を移行し、ユーザの応答内容は解読できないと判定した場合は上述したＳ４３０に処理を移行する。
【０１０４】
ユーザの応答の内容は解読できると判定した場合に進むＳ４５０では、その応答内容に基づいてＳ４３５で読み出された中間スクリプトを埋める。そして、さらに必要な中間スクリプト（例えば初期化用のスクリプト等）を付加し、中間スクリプト群を構成すると共にその構成した中間スクリプト群をファイル形式にて構成スクリプトとして構成スクリプトＤＢ２０３に追加する。そして、Ｓ４１５に処理を移行する。
【０１０５】
［対話例］
次に、対話例を説明する。
（１）対話例１
対話例１について図９，図１０の進行表にしたがって説明する。ユーザが「エージェントコール」と発話したとする（Ｓ５０１）。すると、対話装置２０は、エージェント処理を起動する（Ｓ５０３）。そして、対話装置２０は、エージェントレスポンスとして「はい、エージェントです」とスピーカ２１から音声を出力させ（Ｓ５０５）、さらに「何かご用ですか？」とスピーカ２１から音声を出力させる（Ｓ５０７）。
【０１０６】
ここで例えば、ユーザが「オーディオの音量を変えたい」と発話したとする（Ｓ５０９）。すると、対話装置２０はユーザの発話内容をテキスト変換する（Ｓ５１１）。そして、エージェントレスポンスとして「オーディオの音量を変えたいのですか？」とスピーカ２１から音声を出力させる（Ｓ５１３）。
【０１０７】
それに対してユーザが「そうだ」と発話したとすると（Ｓ５１５）、対話装置２０は、ユーザの発話内容が肯定的なものであると判定し（Ｓ５１７）、ユーザの要望を実現するにあたり手動操作装置１１を使用する必要があるか否かを判定する（Ｓ５１９）。その結果、手動操作装置１１を使用する必要があると判定した場合は、対話装置２０は「手動操作装置を使用しますか？」とスピーカ２１から音声を出力させる（Ｓ５２１）。
【０１０８】
それに対してユーザが「使う」と発話したとすると（Ｓ５２３）、対話装置２０は、ユーザの発話内容が肯定的なものであると判定し（Ｓ５２５）、スクリプト生成処理を開始する（Ｓ５２７）。そして、対話装置２０は、スクリプト生成処理を完了すると、生成した中間スクリプト群を実行する。なお、この際に実行される中間スクリプト群は、下記のようなものである。
【０１０９】
Set sound#volume of the Audio to manual#op
（意味：オーディオ機器の音量を手動設定する）
Set the manual#op to the left-hand remote-controller
（意味：ユーザの左手側に設置された手動操作装置を用いて手動設定する）
Set the driver#name to the user#name of manual#op
（意味：ユーザ名はdriver#name）
Set the condition of running to the force data of manual#op
（意味：車両走行中のフォースデータを設定する）
このような中間スクリプト群を実行することにより、手動操作装置１１へ指令が送信される（Ｓ５２９）。この結果、手動操作装置１１は、指令にしたがってフォースデータ及びコントロールデータを変更する。例えば、車両前方に操作部１２を動かすと音量が上がり、車両後方に操作部１２を動かすと音量が下がり、車両走行中であれば操作反力が停車時よりも強くなるように変更する。
【０１１０】
対話装置２０は、手動操作装置１１から上記指令に対する完了通知を受信すると（Ｓ５３１）、手動操作装置１１の設定が完了したことをユーザへ通知するため、「手動操作装置が使用できます。」とスピーカ２１から音声を出力させる（Ｓ５３３）。
【０１１１】
それに対してユーザが、手動操作装置１１を操作するとその操作状態に応じてオーディオの音量が変化する。そして音量が５の位置に操作部１１の突起部１２ｄがある状態で、「ＯＫ」と発話したとすると（Ｓ５３７）、対話装置２０は、操作結果の報知として「音量は５に設定されました。」とスピーカ２１から音声を出力させる（Ｓ５３９）。
【０１１２】
説明を図１０に移し、その後、所定時間内（例えば１０秒以内）にユーザが「フォースデータ修正」と発話したとすると（Ｓ５４１）、対話装置２０は、ユーザが反力に不満を感じて修正を希望していると判断し、「フォースデータの修正を受け付けます。修正したいポイントを指定してください。」とスピーカ２１から音声を出力させる（Ｓ５４３）。
【０１１３】
それに対し、ユーザが、手動操作装置１１の操作部１２を操作し、音量操作時における反力の不満のある位置に突起部１２ｄを移動させて「この辺りだ」と発話したとすると（Ｓ５４５）、対話装置２０は、手動操作装置１１の位置センサ１４が検出した結果と、手動操作装置１１の制御部１７が現在用いているフォースデータとを取得する。そして、フォースデータの視覚化を行って表示装置２７に表示させ（Ｓ５４７）、「修正ポイントを検知しました。修正内容をお話ください。」とスピーカ２１から音声を出力させる（Ｓ５４９）。なお、フォースデータの視覚化については後述する。
【０１１４】
それに対し、ユーザが、例えば「ピークダウン」と発話したとすると（Ｓ５５１）、対話装置２０は、修正ポイントの反力を１０％ダウンするようにフォースデータを修正し、その修正したフォースデータを利用させて手動操作装置１１を機能させる。そして、「修正ポイントの反力を１０％ダウンしました。いかがですか？」とスピーカ２１から音声を出力させる（Ｓ５５３）。
【０１１５】
それに対し、ユーザが手動操作装置１１の操作部１２の操作感覚を試したところ、まだ反力が強いと感じ、さらに「ピークダウン」と発話したとする（Ｓ５５５）。すると、対話装置２０は、修正ポイントの反力をさらに１０％ダウンするようにフォースデータを修正し、その修正したフォースデータを利用させて手動操作装置１１を機能させる。そして、「修正ポイントの反力を１０％ダウンしました。いかがですか？」とスピーカ２１から音声を出力させる（Ｓ５５７）。
【０１１６】
それに対し、ユーザが手動操作装置１１の操作部１２の操作感覚を試したところ、逆に反力が弱くなり過ぎたと感じ、「少しピークアップ」と発話したとする（Ｓ５５９）。すると、対話装置２０は、修正ポイントの反力を５％アップするようにフォースデータを修正し、その修正したフォースデータを利用させて手動操作装置１１を機能させる。そして、「修正ポイントの反力を５％アップしました。いかがですか？」とスピーカ２１から音声を出力させる（Ｓ５６１）。
【０１１７】
それに対し、ユーザが手動操作装置１１の操作部１２の操作感覚を試したところ、ちょうど良いと感じ、「ＯＫ」と発話したとする（Ｓ５６３）。すると、対話装置２０は、「フォースデータを現在の状態で確定させます」とスピーカ２１から音声を出力させ（Ｓ５６５）、手動操作装置１１が現在利用しているフォースデータを、手動操作装置１１の記憶部１５に記憶させる（Ｓ５６７）。
【０１１８】
（２）対話例２
対話例２について図１１の進行表にしたがって説明する。ユーザが「エージェントコール」と発話したとする（Ｓ６０１）。すると、対話装置２０は、エージェント処理を起動する（Ｓ６０３）。そして、対話装置２０は、エージェントレスポンスとして「はい、エージェントです」とスピーカ２１から音声を出力させ（Ｓ６０５）、さらに「何かご用ですか？」とスピーカ２１から音声を出力させる（Ｓ６０７）。
【０１１９】
ここで例えば、ユーザが「オーディオの音量を５に変えたい」と発話したとする（Ｓ６０９）。すると、対話装置２０はユーザの発話内容をテキスト変換する（Ｓ６１１）。そして、エージェントレスポンスとして「オーディオの音量を５に変えたいのですか？」とスピーカ２１から音声を出力させる（Ｓ６１３）。
【０１２０】
それに対してユーザが「そうだ」と発話したとすると（Ｓ６１５）、対話装置２０は、ユーザの発話内容が肯定的なものであると判定し（Ｓ６１７）、ユーザの要望を実現するにあたり手動操作装置１１を使用する必要があるか否かを判定する（Ｓ６１９）。その結果、手動操作装置１１を使用する必要がないと判定した場合は、対話装置２０は、スクリプト生成処理を開始する（Ｓ６２１）。そして、対話装置２０は、スクリプト生成処理を完了すると、生成した中間スクリプト群を実行し、オーディオコントローラ２３へ指令を送信する（Ｓ６２３）。なお、この指令を受信したオーディオコントローラ２３は、指令にしたがって音量を変更する。
【０１２１】
対話装置２０は、オーディオコントローラ２３から上記指令に対する完了通知を受信すると（Ｓ６２５）、対話装置２０は、操作結果の報知として「音量は５に設定されました。」とスピーカ２１から音声から出力させる。
【０１２２】
（３）対話例３
対話例３について図１２の進行表にしたがって説明する。ユーザが「エージェントコール」と発話したとする（Ｓ７０１）。すると、対話装置２０は、エージェント処理を起動する（Ｓ７０３）。そして、対話装置２０は、エージェントレスポンスとして「はい、エージェントです」とスピーカ２１から音声を出力させ（Ｓ７０５）、さらに「何かご用ですか？」とスピーカ２１から音声を出力させる（Ｓ７０７）。
【０１２３】
ここで例えば、ユーザが「フォースデータ修正」と発話したとする（Ｓ７０９）。すると、対話装置２０はユーザの発話内容をテキスト変換する（Ｓ７１１）。そして、エージェントレスポンスとして「フォースデータの修正を行いたいのですが？」とスピーカ２１から音声を出力させる（Ｓ７１３）。
【０１２４】
それに対してユーザが「そうだ」と発話したとすると（Ｓ７１５）、対話装置２０は、ユーザの発話内容が肯定的なものであると判定し（Ｓ７１７）、「フォースデータの修正を行います。どの機能を修正しますか？」とスピーカ２１から音声を出力させる（Ｓ７１９）。
【０１２５】
それに対し、ユーザが「エアコンの風量」と発話したとすると（Ｓ７２１）、対話装置２０は、「修正したいポイントを指定してください」スピーカ２１から音声を出力させる（Ｓ７２３）。
【０１２６】
それに対し、ユーザが、手動操作装置１１の操作部１２を操作し、反力の不満のある位置に突起部１２ｄを移動させて「この辺りだ」と発話したとすると（Ｓ７２５）、対話装置２０は、手動操作装置１１の位置センサ１４が検出した結果を取得するとともに、先にユーザによって指定された機能（エアコンの風量調整）に対応するフォースデータを手動操作装置１１の記憶部１５から取得する。そして、そして、フォースデータの視覚化を行って表示装置２７に表示させ（Ｓ７２７）、「修正ポイントを検知しました。修正内容をお話ください。」とスピーカ２１から音声を出力させる（Ｓ７２９）。
【０１２７】
それに対し、ユーザが、例えば「滑らかに」と発話したとすると（Ｓ７３１）、対話装置２０は、修正ポイント付近の反力が平滑化するようにフォースデータを修正し、その修正したフォースデータを利用させて手動操作装置１１を機能させる。そして、「修正ポイント付近の反力を滑らかにしました。いかがですか？」とスピーカ２１から音声を出力させる（Ｓ７３３）。
【０１２８】
それに対し、ユーザが手動操作装置１１の操作部１２の操作感覚を試したところ、ちょうど良いと感じ、「ＯＫ」と発話したとする（Ｓ７３５）。すると、対話装置２０は、「フォースデータを現在の状態で確定させます」とスピーカ２１から音声を出力させ（Ｓ７３７）、手動操作装置１１が現在利用しているフォースデータを、手動操作装置１１の記憶部１５に記憶させる（Ｓ７３９）。
【０１２９】
［フォースデータの視覚化］
次にフォースデータの視覚化について図１３の説明図を用いて説明する。
図１３（ａ）は、トラックボール部１２ｂを上方から眺めた図であり、突起部１２ｄが図面左方に寄っている状態の図である。フォースデータは、突起部１２ｄの位置毎（正確には位置センサの分解能に対応した位置毎）に反力がそれぞれ数値として定義されているが、現在のフォースデータでは、破線Ｂ１と破線Ｂ２で囲まれた範囲のみ突起部１２ｄを移動させることが可能な程度の反力が設定されており、それ以外の範囲については突起部１２ｄを移動させることができない程度の反力が設定されているものとして説明する。また、手動操作装置１１は、音量変更の機能が割り当てられており、その音量変更はレベル１からレベル５まで５段階に変更できるようになっているとする。
【０１３０】
図１３（ｂ）は、図１３（ａ）における一点鎖線Ｃ上を、突起部１２ｄを移動させた場合にユーザが感じる反力の強さをグラフ化したものである。横軸が一点鎖線Ｃ上の位置に対応し、縦軸が反力の大きさに対応する。図１３（ｂ）に示すように、５つの谷部が存在し、それぞれが音量レベルの１〜５に対応し、突起部１２ｄを何れかの谷部に移動させて押下すればその音量に設定されるようになっている。
【０１３１】
ここで、ユーザがレベル５とレベル４の谷部の間にある位置Ｄを修正ポイントとして指定し、「ピークアップ」と発話した場合のグラフが図１３（ｃ）である（グラフの見方は図１３（ｂ）と同様）。図１３（ｃ）からわかるように、レベル５とレベル４の谷部の間にある位置Ｄの反力が上がっていることが確認できる。
【０１３２】
以上、図１３（ｂ），（ｃ）で説明したようなグラフが表示装置２７に表示されるため、ユーザはそれを見ながら修正指示を発話することができるようになっている。
［実施形態の効果］
次に上記実施形態の効果について説明する。
【０１３３】
上述したような手動操作システム１０によれば、手動操作装置１１は、対話内容に基づいて必要とされる機能のみに限定されたフォースデータ及びコントロールデータに変更される。例えば、オーディオの音量を調整する旨の対話が行われたならば、手動操作装置１１は、オーディオの音量変更のみに特化されたフォースデータ及びコントロールデータに変更される。したがって、手動操作装置１１の操作に不慣れなユーザが手動操作装置１１を操作する場合であっても、操作ミスの発生を限りなく減らすことができる。
【０１３４】
また、スクリプトＤＢ２０ｇの構成スクリプトＤＢ２０３の中に、必要な構成スクリプトがないとしてスクリプト生成部２０ｅが中間スクリプト群を生成すると、その生成した中間スクリプト群を構成スクリプトとして構成スクリプトＤＢ２０３に追加するようになっている（Ｓ４５０）。そして、次回以降、同様の中間スクリプト群が必要となった際に、構成スクリプトＤＢ２０３から対応する構成スクリプトを読み出して利用するようになっている（Ｓ４１０）。
【０１３５】
このため、以前と同様の対話がなされた場合に、スクリプトを実質的に生成する必要がなくなるため、処理が高速化される。
また、ＨＭＩコントローラ２０ｈから手動操作装置１１や各種のコントローラに出力される指令は、車両走行状況に関する情報を加味した指令である（Ｓ３２５，Ｓ３５５）。したがって、例えば、車両の走行中であれば比較的単純な操作のみが行えるように手動操作装置１１等が設定され、車両の停車中であれば比較的複雑な操作も行えるように手動操作装置１１等が設定される。ゆえに、よりユーザの操作ミスを軽減することができる。
【０１３６】
また、対話装置２０は、対話の結果および手動操作装置１１等が操作された結果をユーザへ音声により報知するようになっている（Ｓ３４５，Ｓ３６５）。したがって、ユーザは、対話の結果および手動操作装置１１を操作した結果を確認することができるため、より安心を得ることができる。
【０１３７】
また、手動操作装置１１を操作した結果、反力に不満を感じた場合は「フォースデータ修正」と発話することによって、フォースデータを対話によって修正できるようになっている（Ｓ３８４〜Ｓ３８８等）。したがって、ユーザは操作部１２を操作する際の反力を好みの状態に容易に修正することができる。しかも、その際、反力を修正する位置を操作部１２を用いて指定できるため、音声で位置を指定する場合よりもスムーズに修正位置を指定できる。
【０１３８】
［他の実施形態］
（１）上記実施形態では、エージェントとの対話（双方向の会話）によってフォースデータを修正するようになっていたが、対話という形をとらずに、ユーザが一方的に音声コマンドを発話することによってフォースデータを修正できるようになっていてもよい。その場合にも、フォースデータの視覚化は実施されるようになっているとよい。
【０１３９】
このようになっていても、ユーザは操作部を操作する際の反力を好みの状態に修正することができる。
（２）上記実施形態では、フォースデータの修正を行うことができるようになっていたが、同様の対話にてコントロールデータの修正も行えるようになっているとよい。つまり、手動操作装置１１の突起部１２ｄがどの位置にあるときにどの機能が動作するかという対応関係を対話によって修正できるようになっているとよい。具体的には、図１３（ｂ）において、「レベル５の位置を右へ」のように発話することによって行うようになっているとよい。
【０１４０】
このようになっていれば、より手動操作装置１１の使い勝手を向上させることができる。
［特許請求の範囲との対応］
ここで、上記実施形態における各部と特許請求の範囲に記載の用語との対応を示す（ただし異なる用語を用いたもののみ）。
【０１４１】
位置センサ１４が検出部に相当し、記憶部１５が記憶手段に相当し、制御部１７が第一の制御手段に相当する。
スピーカ２１及びマイク１８が対話手段に相当し、ＨＭＩコントローラ２０ｈが車両状態情報取得手段に相当し、主に、対話部２０ｉおよびスクリプト生成部２０ｅが第二の制御手段に相当する。
【図面の簡単な説明】
【０１４２】
【図１】手動操作システム１０の概略構成を示すブロック図である。
【図２】操作部１２の構造を説明するための断面図である。
【図３】対話装置２０の詳細を説明するための機能ブロック図である。
【図４】スクリプトＤＢ２０ｇの構成を説明するためのブロック図である。
【図５】エージェントコール処理を説明するためのフローチャートである。
【図６】エージェントコール処理を説明するためのフローチャートである。
【図７】エージェントコール処理を説明するためのフローチャートである。
【図８】スクリプト生成処理を説明するためのフローチャートである。
【図９】対話の流れを説明するための対話例である。
【図１０】対話の流れを説明するための対話例である。
【図１１】対話の流れを説明するための対話例である。
【図１２】対話の流れを説明するための対話例である。
【図１３】フォースデータの視覚化を説明するための図である。
【符号の説明】
【０１４３】
１０…手動操作システム、１１…手動操作装置、１２…操作部、１２ａ…トラックボール保持部、１２ｂ…トラックボール部、１２ｃ…開口部、１２ｄ…突起部、１３…アクチュエータ、１４…位置センサ、１５…記憶部、１６…通信部、１７…制御部、１８…マイク、１９…カメラ、２０…対話装置、２０ａ…Ａ／Ｄ変換部、２０ｂ…Ａ／Ｄ変換部、２０ｃ…フィルタリング部、２０ｄ…音声認識部、２０ｅ…スクリプト生成部、２０ｆ…音声認識辞書、２０ｇ…スクリプトＤＢ、２０ｈ…ＨＭＩコントローラ、２０ｉ…対話部、２１…スピーカ、２２…通信装置、２３…オーディオコントローラ、２４…エアコンコントローラ、２５…ナビゲーション装置、２６…着座センサ、２７…表示装置、２８…車内ＬＡＮ、２０１…要素スクリプトＤＢ、２０２…中間スクリプトＤＢ、２０３…構成スクリプトＤＢ。
【図１】
2007091209.tif 000003
【図２】
2007091209.tif 000004
【図３】
2007091209.tif 000005
【図４】
2007091209.tif 000006
【図５】
2007091209.tif 000007
【図６】
2007091209.tif 000008
【図７】
2007091209.tif 000009
【図８】
2007091209.tif 000010
【図９】
2007091209.tif 000011
【図１０】
2007091209.tif 000012
【図１１】
2007091209.tif 000013
【図１２】
2007091209.tif 000014
【図１３】
2007091209.tif 000015