(57)【特許請求の範囲】
【請求項１】
時系列の信号を入力するための入力部と時系列の信号を出力するための出力部とを備えた機器の前記入力部へ入力された入力信号を取得する第１取得手段と、
前記入力信号に応じて前記機器が前記出力部から出力する出力信号を取得する第２取得手段と、
前記第１取得手段によって取得された入力信号の値の変化幅が所定の閾値以上となったこと、および前記第２取得手段によって取得された出力信号の値の変化幅が所定の閾値以上となったことを判別する判別手段と、
前記判別手段によって前記入力信号の値の変化幅が所定の閾値以上と判別された場合に、前記入力信号の値の変化が生じた時間に相当する時間相当値と前記入力信号とを関連付けて記憶し、前記判別手段によって前記出力信号の値の変化幅が所定の閾値以上と判別された場合に、前記出力信号の値の変化が生じた時間に相当する時間相当値と前記出力信号とを関連付けて記憶する記憶手段と、
としてコンピュータを機能させ、
前記入力信号あるいは前記出力信号はデジタル信号を含み、
デジタル信号である前記入力信号あるいは前記出力信号に対する前記閾値は、そのデジタル信号における２値の差分値であることを特徴とする情報取得プログラム。
【請求項２】
前記入力信号は複数の信号からなり、前記閾値は複数の入力信号のそれぞれに対して設定された請求項１に記載の情報取得プログラム。
【請求項３】
前記出力信号は複数の信号からなり、前記閾値は複数の出力信号のそれぞれに対して設定された請求項１又は２に記載の情報取得プログラム。
【請求項４】
前記入力信号あるいは前記出力信号はアナログ信号を含む請求項１乃至３のいずれか１項に記載の情報取得プログラム。
【請求項５】
前記入力部へ前記入力信号の入力が開始される時間からその入力信号の入力が終了する時間までの期間内に、前記閾値を変更する変更手段としてコンピュータをさらに機能させる請求項１乃至４のいずれか１項に記載の情報取得プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報取得プログラムに関する。
【背景技術】
【０００２】
周知のとおり、現在では様々な状況で各種情報の取得、蓄積が行われており、それに関する装置開発の提案がある。例えば自動車車両には、車両の各種制御に関わる電子制御ユニット（ＥＣＵ：Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）が搭載されているが、ＥＣＵ（あるいはそれに組み込まれたソフトウェア）の評価作業においても、情報（ログ）の取得、蓄積の工程がある。
【０００３】
具体的には、車載ＥＣＵの人操作に対する応答制御を評価する場合、人の操作に対する応答ログを取得し、そのログを目視やツール上での判定プログラムによって検証を行う方法がある。５ｍｓタスクの単発異常動作を抜け漏れ無く検出するためには、最低でも４ｍｓ以下のサンプリング精度が必要であり、便宜上実質１ｍｓ間隔でのログ取得を行う必要がある。
【０００４】
またＥＣＵ搭載ソフトウェアに対するテストでは、人操作や車両条件変化時の応答サービスが要求を満たしているかの評価が主体であり、テストシナリオに応じてテスト対象制御が備える全入力信号の前提条件を成立させ、ユーザ操作に応じたＥＣＵ応答が正しいかを判定する。
【０００５】
その際、判定をリアルタイムに実施し判定結果のみ記録に残す方式では、判定条件に不備があった場合はテストケースの操作からやり直す必要があり効率が悪い。したがって、操作のやり直しをせず、新しい視点で結果判定できるようにするには全入出力信号の挙動をログに残す必要がある。
【０００６】
例えば下記特許文献１には、記憶媒体における記憶容量の限界までを有効に活用し、かつ連続して安定したデータ蓄積処理をすることができる方法と装置が提案されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００５−２５９０４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
予期せぬ動き、機能間干渉も含めてＥＣＵソフトの評価を行い、且つ評価エビデンスとして残すためには評価時のＥＣＵ全入出力ログを取得、蓄積する必要がある。評価精度を保つための精度（例えば１ｍｓサンプリング）でログ取得する場合、多くの入出力信号を備えた車載ＥＣＵのテストではログサイズが数百ＭＢ〜数ＧＢ以上となってしまい、評価装置の記憶容量の限界やデータ転送時間、解析処理時間増により運用効果が損なわれる。運用効果を得るには評価精度を保ちつつログサイズを減らす必要がある。
【０００９】
またＥＣＵ自動検査装置には、様々な車両タイプや搭載制御バリエーションに応じて複数のＥＣＵが評価に共用できる汎用性が求められる。したがって、ユーザがロギング対象信号を指定するだけでログ取得が実現できる運用性が必要である。
【００１０】
しかし従来環境では、必要最低限のロギング対象信号の登録と、必要最低限のロギングサンプリング周期の設定により、ログの時間精度とサイズのトレードオフをするか、ユーザがプログラミングにより任意のログ取得プログラムを構築するしかなかった。こうした課題は、ＥＣＵ自動評価に限らず、あらゆるデータ取得、蓄積において重要である。
【００１１】
そこで本発明が解決しようとする課題は、上記に鑑み、入力部と出力部とを備えた機器の入力信号および出力信号の時系列データ（ログ）を取得し、記憶する処理を実行する情報取得プログラムであって、必要な記憶容量を低減できる情報取得プログラムを提供することにある。
【課題を解決するための手段】
【００１２】
上記課題を達成するために、本発明に係る情報取得プログラムは、時系列の信号を入力するための入力部と時系列の信号を出力するための出力部とを備えた機器の入力部へ入力された入力信号を取得する第１取得手段と、入力信号に応じて機器が出力部から出力する出力信号を取得する第２取得手段と、第１取得手段によって取得された入力信号の値の変化幅が所定の閾値以上となったこと、および第２取得手段によって取得された出力信号の値の変化幅が所定の閾値以上となったことを判別する判別手段と、判別手段によって入力信号の値の変化幅が所定の閾値以上と判別された場合に、その変化が生じた時間に相当する時間相当値と入力信号とを関連付けて記憶し、判別手段によって出力信号の値の変化幅が所定の閾値以上と判別された場合に、その変化が生じた時間に相当する時間相当値と出力信号とを関連付けて記憶する記憶手段と、としてコンピュータを機能させることを前提とする。
【００１３】
これにより本発明に係る情報取得プログラムは、所与の機器の時系列の入出力信号を取得し記憶する際に、その入出力が所定の閾値以上に変化したときにのみ、その信号を変化が起きた時間と関連付けて記憶する。したがって、信号値に閾値以上の変化が起きなければ記憶しないので、必要な記憶容量が大きく低減できる。特に入出力に変化が生じるイベントが間欠的にしか発生しない場合には、顕著に記憶容量が低減できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施形態であるＥＣＵ自動評価システムの構成例を示す図。
【図２】本発明のログ取得、記憶の処理手順の例を示すフローチャート。
【図３】本発明と従来技術におけるログ取得例を示す図。
【図４】本発明と従来技術におけるログ取得例の詳細を示す図。
【図５】本発明の別の実施形態でのシステム構成例を示す図。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態を図面を参照しつつ説明する。図１は本発明の一実施形態における車載ＥＣＵの評価システムの装置構成の概略図である。図１のとおり、車載ＥＣＵの評価システムは、評価対象であるＥＣＵ１００に対して評価装置１０、ログ取得装置１を接続した構成を有する。
【００１６】
ＥＣＵ１００は、自動車車両に搭載されるＥＣＵ（車載ＥＣＵ）であり、ＣＰＵ１０１、メモリ１０２を備える。ＣＰＵ１０１は、ＥＣＵ１００による車両制御における演算や指令などの各種情報処理を実行する。メモリ１０２は、ＣＰＵ１０１の作業領域である一時記憶部のＲＡＭや、ＣＰＵ１０１の情報処理に関係する各種データやプログラムを記憶するＲＯＭ（不揮発性記憶部）を有する。特にメモリ１０２には組み込みソフトウェア１０３が記憶されている。組み込みソフトウェア１０２は、ＥＣＵ１００による車両制御に関するプログラムやデータである。
【００１７】
評価装置１０は、ＥＣＵ１００（あるいは特に、組み込みソフトウェア１０３）が正常であるか否かを評価するための装置である。評価装置１０による評価の方式は、自動評価であっても手動評価（マニュアル評価）であってもよい。
【００１８】
自動評価の場合、ＣＰＵ１１、メモリ１２を用いる。ＣＰＵ１１は自動評価に関する情報処理全般を実行し、メモリ１２には自動評価に関するプログラムやデータが記憶される。特にメモリ１２には、評価用入力パターン１３が記憶されている。評価用入力パターン１３は、自動評価のためにＥＣＵ１００に入力される、予め決められた時系列の入力パターンである。自動評価の場合、ＣＰＵ１１の指令によって評価用入力パターン１３がメモリ１２から呼び出されてＥＣＵ１０に入力される。
【００１９】
図１に示された通り、評価用入力パターン１３は例えばケーブルを通じてＥＣＵ１００に送信され、その入力に応じたＥＣＵ１００の出力をケーブルを通じて評価装置１０は取得する。評価装置１０では、取得した出力が正常であるか否かを判定する。判定方法は、例えば自動判定プログラムをメモリ１２に記憶しておき、それを用いてＣＰＵ１１で自動的に判定する方法によればよい。
【００２０】
次に手動評価の場合は入力部１４が用いられる。入力部１４は、例えば車両の各種操作を示すボタンなどでもよい。あるいは評価装置１０をコンピュータにより実現して、入力部１４をコンピュータの各種入力部（キーボードやマウス等）としてもよい。手動評価の場合、オペレータ（作業者）が入力部１４を用いて、ＥＣＵ１００に各種入力を送信する。そして、ＥＣＵ１００からの出力を取得して、取得した出力が正常であるか否かを判定する。
【００２１】
判定方法は、例えば表示部を備えて、それに入出力を表示して、正常か否かを目視で判定してもよい。あるいは表示でなく印刷でもよい。なお評価方法は上述の組み合わせとして、ＥＣＵ１００への評価用入力は上述の自動評価のように自動で行って、出力の評価は上述の手動評価のように目視で行う形式でもよい。
【００２２】
ＥＣＵ１００への入力信号としてはデジタル信号もアナログ信号もある。例えばデジタル信号の例としては、各種操作ＳＷ入力、アクチュエータ制御出力（モータ駆動、ランプ駆動、ｅｔｃ…）、各種通信入出力（ＣＡＮ、ＬＩＮ等の１ｂｉｔ単位で意味を持つ信号）などがある。アナログ信号の例としては、センサ入力（電圧、パルス入力周波数およびデューティ比）、アクチュエータ制御出力（電圧、パルス入力周波数およびデューティ比）、各種通信入出力（ＣＡＮ、ＬＩＮ等の複数ｂｉｔで意味を持つ信号）などがある。すなわち本発明が適用される機器は、車両に搭載された電子制御ユニットであり、その入力信号および出力信号は車内通信で通信される入力信号および出力信号であるとすればよい。
【００２３】
なお図１において、ＥＣＵ１００は車両に搭載された複数のＥＣＵのうちの任意のＥＣＵでよい。１つの装置１によって、異なったＥＣＵ１００の自動評価が行えるとすればよい。その場合、評価装置１０のメモリ１２には、複数の評価用入力パターン１３を記憶しておく等で対応する。
【００２４】
次に、ログ取得装置１は、評価装置１０を用いたＥＣＵ１００の評価処理におけるログを取得し記憶しておくための装置である。ログを取得し記憶する目的としては、評価が正当であったか否かなどを後に確認できるようにすることがある。あるいは別の実施形態として、評価装置１０では評価は行わず評価用入力のみを行うこととして、ログ取得装置にログを記憶しておいて、その記憶されたログを用いて、後でＥＣＵ１００の評価を行う形態もある。
【００２５】
ログ取得装置１は、主要な構成として、ＣＰＵ２、メモリ３、インターフェイス部４、５（Ｉ／Ｆ）、入力部６を備える。ＣＰＵ２は、ログ取得に関する情報処理全般を実行する。メモリ３は、ＣＰＵ２の作業領域としてのＲＡＭや、ＣＰＵ２による情報処理で必要となるプログラムやデータを記憶する不揮発性記憶部を備える。特にメモリ３内には、本発明に係るプログラム３０が記憶されている。
【００２６】
プログラム３０は、ログ取得装置１によるログ取得処理（例えば後述の図２のフローチャートの該等部分）を司るプログラムである。インターフェイス部４（Ｉ／Ｆ）は、評価装置１０からＥＣＵ１００への入力をケーブルを通じて取得するための接続部である。インターフェイス部５（Ｉ／Ｆ）は、ＥＣＵ１００から評価装置１０への出力をケーブルを通じて取得するための接続部である。入力部６は、オペレータが本発明の処理に必要な入力を行う部位である。
【００２７】
図１の構成のもとで、評価装置１０は、ＥＣＵ１００に評価用入力を入力し、ログ取得装置では、そのログ、つまり入力および出力の時系列データを取得し記憶する。この処理においては、上述のとおり、評価装置１０でＥＣＵ１００の評価を行ってもよく、取得したログで後に評価処理を実行してもよい。評価処理およびログ取得処理は、図２に示された手順で実行される。
【００２８】
図２の処理は、評価装置１０での処理とログ取得装置１での処理の両方を含む。図２に示された処理手順のうちで、ログ取得装置１が実行する処理は、プログラム３０に記述されて、ＣＰＵ２によって自動的に実行される処理とすればよい。本発明の主要部は、ログ取得処理において、全てのログ（信号）を取得し、記憶するのではなく、信号値に変化（所定の閾値以上の変化）があった場合にのみ記憶することである。
【００２９】
具体的に図２の処理手順ではまず、Ｓ１０で取得対象信号が指定される。ここで取得対象信号とは、ＥＣＵ１００から出力される信号のうちで、評価処理のために必要なのでログ取得装置１が取得する信号である。当然、評価対象となるＥＣＵ１００が異なると、一般に取得対象信号も異なる信号となる。具体的にＳ１０では、例えばオペレータが入力部６を用いて取得対象信号を設定する入力を行い、ＣＰＵ２はそれを受けて取得対象信号を設定する。
【００３０】
次にＳ２０で閾値が設定される。ここで閾値とは、取得した信号値が、その閾値以上に変化した場合にのみログ取得装置１で記憶するために用いる数値である。閾値は各信号ごとに設定する。Ｓ２０では、例えばオペレータが入力部６を用いて閾値を設定すればよい。
【００３１】
なお本発明では、閾値は定数には限定されない。すなわち、状況に応じて場合分けされた複数の閾値としてもよい。ここで状況とは、ＥＣＵ１００の処理に関係する車両の状況などとすればよい。これにより、ログを詳細に記憶しておきたい状況では、そうした要望に対応することができる柔軟性を本発明は有することとなる。閾値が定数でない場合には、単一のＥＣＵ１００に対する評価開始から終了までの間で閾値が変化することとなる。
【００３２】
また本発明で扱う信号にはデジタル信号もアナログ信号も含まれる可能性がある。デジタル信号に対する閾値を、デジタルにおける２値の差分値と同じにすれば（つまりデジタルの２値が０と１の場合、閾値を１とすれば）デジタル信号が変化したときに、ログ取得装置１がそれを記憶することとなる。
【００３３】
次にＳ３０で評価装置１０のＣＰＵ１１は、メモリ３０（の不揮発性記憶部）に記憶された評価用入力パターン１３を（ＲＡＭに）呼び出す。このＳ３０の処理は、評価用入力パターン１３をＥＣＵ１００に自動で入力する場合にのみ実行すればよく、オペレータが手動で入力部１４を用いて入力する場合は省略すればよい。
【００３４】
次にＳ４０で評価装置１０のＣＰＵ１１は、Ｓ３０で呼び出された評価用入力パターン１３を、ＥＣＵ１００に入力する。あるいは手動の場合、Ｓ４０では、オペレータが手動で入力部１４を用いて評価用入力を入力する。なおＳ３０では、ログ取得装置１のＣＰＵ２がＥＣＵ１００への入力（ただしＳ１０で設定された取得対象信号）を取得する処理も実行される。
【００３５】
次にＳ５０でＣＰＵ１１は、ＥＣＵ１００からの出力を検出（取得）する。この出力には、Ｓ４０で入力された入力に対するＥＣＵ１００の組込みソフトウェア１０３の応答が含まれる。なおＳ５０では、ログ取得装置１のＣＰＵ２がＥＣＵ１００からの出力（ただしＳ１０で設定された取得対象信号）を取得する処理も実行される。
【００３６】
次にＳ６０以降でログ取得装置１のＣＰＵ２は、Ｓ４０、Ｓ５０で取得した入出力において時間的変化が生じているか否かを判別し、時間的変化が生じている場合にのみメモリ３に記憶する。時間的変化とは、おのおのの入出力の時間的系列において、直前の値（１サンプリング周期前の値）と現時点の値との間における変化を指す。また時間的変化はＳ２０で設定された閾値以上の時間的変化とする。
【００３７】
具体的にはまずＳ６０でＣＰＵ２は、変数ｎに１を代入する。この変数ｎは、ＥＣＵ１００の評価対象となる入出力信号（Ｓ１０で設定された取得対象信号）に付した番号である。つまりＳ４０で取得される入力信号数がｎ１個、Ｓ５０で取得される出力信号数がｎ２個とすると、ＥＣＵ１００の評価対象となる入出力信号の総数はｎ１とｎ２の和であり、変数ｎは、１からｎ１＋ｎ２までの整数値を各入出力信号に割り振ったものである。ちなみに下記のＳ１２０ではこの入出力信号の総数（ｎ１＋ｎ２）をＮと表記している。
【００３８】
次にＳ７０でＣＰＵ２は、ｎ番目の入出力信号の直前の数値からの変化幅を算出する。そしてＳ８０でＣＰＵ２は、Ｓ７０で算出した変化幅（の絶対値）がＳ２０で設定された閾値以上であるか否かが判別する。変化幅（の絶対値）が閾値以上の場合（Ｓ８０：ＹＥＳ）はＳ９０へ進み、閾値未満の場合（Ｓ８０：ＮＯ）はＳ１１０へ進む。Ｓ８０で用いられる閾値は、上述のとおり定数でない場合もあり、その場合、例えばＳ８０の処理時点での（例えば車両の）状況に応じて設定された閾値となる。
【００３９】
次にＳ９０に進んだら、ＣＰＵ２は現在時刻（あるいはそれに相当する数値）を取得する。この処理のために例えばＣＰＵ２はタイマ機能を備えればよい。
【００４０】
次にＳ１００でＣＰＵ２は、Ｓ９０で取得した時間（相当値）とｎ番目の入出力信号の現在値（直前のＳ４０又はＳ５０で取得した数値）とを、１対１で関連付けて、メモリ３に記憶する。以上の処理により、変化幅が閾値以上の入出力信号値のみが、その発生時刻とともにログ取得装置１に記憶される。
【００４１】
次にＳ１１０で変数ｎの値を１だけ増加させる。つまり、ｎ＋１番目の入出力信号に移る。そしてＳ１２０でｎがＮよりも大きいか否かを判別する。Ｎは上述のとおり、ログ取得装置１が取得する入出力信号の総数である。ｎがＮよりも大きい場合（Ｓ１２０：ＹＥＳ）はＳ１３０に進み、ｎがＮ以下の場合（Ｓ１２０：ＮＯ）はＳ７０に戻って、ｎ＋１番目の入出力信号に対して上記手順を繰り返す。
【００４２】
Ｓ１３０に進んだら、評価処理を終了するか否かを判別する。評価処理を終了する場合（Ｓ１３０：ＹＥＳ）は図２の処理を終了し、終了しない場合（Ｓ１３０：ＮＯ）はＳ４０に戻って上記処理を繰り返す。評価処理の終了は、例えばオペレータからの入力部１４等への終了を指令する入力や、評価用入力パターン１３の終了に到達したこと等によればよい。このように図２においてＳ４０を繰り返す際に、Ｓ４０の処理を所定サンプリング周期（例えば上述のように１ｍｓ）ごとに繰り返せばよい。以上が図２の処理である。
【００４３】
図２の処理を実行したことによる効果が図３、図４に示されている。図４に示すとおり、従来技術においては、全てのデジタル入力、デジタル出力、アナログ入力、アナログ出力に対する全ての時刻のログを記憶していた。これに対して本発明では、最初の時刻（０ｘ００００００００）に全ての信号値（０，０，１，０）を記憶し、その後は閾値以上の変化があった時刻に、その信号値のみを記憶する（時刻９９９に０番の信号が１に変化し、時刻Ａ５Ａ５に２番の信号が０に変化した、等）。
【００４４】
したがって図３に示すとおり、従来技術では膨大な記憶容量が必要であったのに対して、本発明では、数値に閾値以上の変化がなければ記憶しないので、必要な記憶容量が劇的に減少する（黒丸が記憶処理を実行する箇所）。なお上記で時刻とは、実際の時刻ではなく、所定のサンプリング周期のもとで何ステップ目かを示す数値とすればよい。
【００４５】
本発明の実施形態は図１の形態には限定されず、例えば図５に示された実施形態でもよい。
【００４６】
図５のシステム構成では、図１における評価装置１０の機能をログ取得装置１に移動している。具体的には、ＣＰＵ１１の機能はＣＰＵ２に移動させ、メモリ１２の機能はメモリ３へ移動させ、入力部１４の機能は入力部６に移動させる。この構成で図２の処理を行えばよい。当然、図１では評価装置１０側が担当していた処理も、全て評価／ログ取得装置１のＣＰＵ２が実行する。
【００４７】
なお図１、図５を組み合わせた実施形態もある。この実施形態では、あるＥＣＵ１００の評価を最初に実行するときには図１の構成で評価処理、ログ取得処理を入力部１４により手動で実行し、２回目以降に同種のＥＣＵ１００の評価を行う場合には、図５の構成で評価用入力パターン３１で自動的に行う。
【００４８】
その際、図５のメモリ３に記憶された評価用入力パターン３１は、１回目の評価処理でログ取得装置１に記憶されたログから入力パターンを抽出して作成すればよい。この入力パターンの作成では、例えば作成のためのプログラムを予めメモリ３に記憶しておいてＣＰＵ２で自動的に作成する形態でもよい。すなわち本発明では、複数の前記機器のそれぞれに対して順次、入力信号が入力され、ある機器に対して手動で入力された入力信号を記憶し、その記憶された入力信号を別の機器に対して自動で入力する自動入力手段を備えた形態としてもよい。なお図１の構成を用いずに、１回目の入力も図５の評価／ログ取得装置１の入力部６で行ってもよい。
【００４９】
上記実施例は特許請求の範囲に記載された趣旨の範囲内で適宜変更してよい。例えば上記実施例はＥＣＵの評価装置の例だが、本発明はこれに限定されず、時系列の信号を入力するための入力部と時系列の信号を出力するための出力部とを備えた任意の機器から、入出力信号を取得して記憶する状況で適用してよい。
【符号の説明】
【００５０】
１    ログ取得装置
１０    評価装置
３０    プログラム（情報取得プログラム）
１００    ＥＣＵ（評価対象）
【図１】
0005861463.tif 000002
【図２】
0005861463.tif 000003
【図５】
0005861463.tif 000004
【図３】
0005861463.tif 000005
【図４】
0005861463.tif 000006