図面 (/)

技術 シリアル通信におけるエラー処理方法

出願人 株式会社デンソー
発明者 牧健一西依洋一
出願日 1992年11月30日 (28年1ヶ月経過) 出願番号 1992-321009
公開日 1994年6月14日 (26年6ヶ月経過) 公開番号 1994-168147
状態 拒絶査定
技術分野 内燃機関の複合的制御 内燃機関の複合的制御 デバッグ/監視 計算機における入出力系RAS エラーの検出
主要キーワード CPU間 ノイズフラグ パリティーエラー ノイズエラー 実行ポイント パリティービット 非同期シリアル通信 実行カウンタ
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(1994年6月14日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (4)

目的

適切なタイミングにてフェイル動作を実行することができるシリアル通信におけるエラー処理方法を提供することにある。

構成

目標開度演算CPU5とサブスロットル駆動CPU6とは8ビット通信ライン7にて接続されている。この通信ライン7を用いたシリアル通信には、通信エラーとして、フレシングエラーオーバーランエラーノイズフラグ及びパリティエラーがあり、ノイズフラグ以外はすべて重要なものと考える。そして、予めシリアル通信におけるエラーの重要度に応じて重み付けをしておく。シリアル通信におけるエラーを検出したときにそのエラーの重み付け分だけフェイル動作実行カウンタカウント値カウントアップしつつカウントアップ動作を行い、かつ、所定期間エラーが検出されないとカウント値をカウントダウンし、当該カウント値が所定値(=「13」)に達するとフェイル動作を実行する。

概要

背景

従来、車両のエンジン制御としてトラクションコントロールが行われている。これは、車両の駆動力エンジン出力を制御することにより行うものであり、その一例としてエンジン吸気管メインスロットルバルブ直列サブスロットルバルブを配置し、このサブスロットルバルブの開度ステッピングモータにより調整してエンジン出力を制御するものである。このとき、目標開度演算用CPUとサブスロット駆動用CPUの2つのCPUを設けることがある。この場合において、両CPU間シリアル通信しながら目標スロットル開度となるようにステッピングモータを制御するが、通信エラーが発生した際にはそのデータを読み捨てて、エラーが連続的にある回数発生した際には通信ライン異常と判断し、フェイル動作を実行している。

概要

適切なタイミングにてフェイル動作を実行することができるシリアル通信におけるエラー処理方法を提供することにある。

目標開度演算CPU5とサブスロットル駆動CPU6とは8ビット通信ライン7にて接続されている。この通信ライン7を用いたシリアル通信には、通信エラーとして、フレシングエラー、オーバーランエラーノイズフラグ及びパリティエラーがあり、ノイズフラグ以外はすべて重要なものと考える。そして、予めシリアル通信におけるエラーの重要度に応じて重み付けをしておく。シリアル通信におけるエラーを検出したときにそのエラーの重み付け分だけフェイル動作実行カウンタカウント値カウントアップしつつカウントアップ動作を行い、かつ、所定期間エラーが検出されないとカウント値をカウントダウンし、当該カウント値が所定値(=「13」)に達するとフェイル動作を実行する。

目的

そこで、この発明の目的は、適切なタイミングにてフェイル動作を実行することができるシリアル通信におけるエラー処理方法を提供することにある。

効果

実績

技術文献被引用数
0件
牽制数
2件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

予めシリアル通信におけるエラー重要度に応じて重み付けをしておき、シリアル通信におけるエラーを検出したときにそのエラーの重み付け分だけカウント値カウントアップしつつカウントアップ動作を行い、かつ、所定期間エラーが検出されないとカウント値をカウントダウンし、当該カウント値が所定値に達するとフェイル動作を実行するようにしたことを特徴とするシリアル通信におけるエラー処理方法

技術分野

0001

この発明は、シリアル通信におけるエラー処理方法に関するものである。

背景技術

0002

従来、車両のエンジン制御としてトラクションコントロールが行われている。これは、車両の駆動力エンジン出力を制御することにより行うものであり、その一例としてエンジン吸気管メインスロットルバルブ直列サブスロットルバルブを配置し、このサブスロットルバルブの開度ステッピングモータにより調整してエンジン出力を制御するものである。このとき、目標開度演算用CPUとサブスロット駆動用CPUの2つのCPUを設けることがある。この場合において、両CPU間でシリアル通信しながら目標スロットル開度となるようにステッピングモータを制御するが、通信エラーが発生した際にはそのデータを読み捨てて、エラーが連続的にある回数発生した際には通信ライン異常と判断し、フェイル動作を実行している。

発明が解決しようとする課題

0003

しかしながら、断続的にエラーが発生した場合にはフェイル動作に入ることができなかった。つまり、車内での装置の故障や外部からの影響でノイズが発生し信号ラインにノイズが発生した場合、あるいは、信号ラインの断線予兆などで通信エラーが断続的に発生した場合等ではフェイル動作に入ることができなかった。

0004

そこで、この発明の目的は、適切なタイミングにてフェイル動作を実行することができるシリアル通信におけるエラー処理方法を提供することにある。

課題を解決するための手段

0005

この発明は、予めシリアル通信におけるエラーの重要度に応じて重み付けをしておき、シリアル通信におけるエラーを検出したときにそのエラーの重み付け分だけカウント値カウントアップしつつカウントアップ動作を行い、かつ、所定期間エラーが検出されないとカウント値をカウントダウンし、当該カウント値が所定値に達するとフェイル動作を実行するようにしたシリアル通信におけるエラー処理方法をその要旨とする。

0006

シリアル通信におけるエラーを検出したときにそのエラーの重み付け分だけカウント値をカウントアップしつつカウントアップ動作を行い、かつ、所定期間エラーが検出されないとカウント値をカウントダウンし、当該カウント値が所定値に達するとフェイル動作を実行する。

0007

つまり、いくつかある通信エラーの形態に対し重要度に応じて重み付けをすることにより、重要なるエラーが多発すると、フェイル動作を実行する。又、重要でないエラーが発生しても、フェイル動作は実行されない。

0008

以下、この発明を具体化した一実施例を図面に従って説明する。本実施例は、車両用エンジントラクションコントロール装置に具体化したものである。

0009

図1に示すように、エンジンの吸気管1にメインスロットルバルブ(図示略)と直列にサブスロットルバルブ2が配置されている。このサブスロットルバルブ2にはステッピングモータ3が連結され、同モータ3の駆動によりサブスロットルバルブ2の開度が調整されるようになっている。又、このサブスロットルバルブ2の開度はサブスロットルセンサ4により検出されるようになっている。

0010

本トラクションコントロール装置には2つのCPU5,6が設けられている。目標開度演算CPU5は図示しないエンジンコントロールユニットからサブスロットルバルブ2の目標開度データを取り込む。又、サブスロットル駆動CPU6はステッピングモータ3にサブスロットル駆動パルスを出力して同モータ3を制御してサブスロットルバルブ2の開度を調整してエンジン出力を制御するものである。そして、目標開度演算CPU5とサブスロットル駆動CPU6とは8ビット通信ライン7にて接続され、同ライン7を通して目標開度演算CPU5からサブスロットル駆動CPU6にサブスロットルバルブ2の目標開度データが送られる。

0011

又、サブスロットル駆動CPU6はサブスロットルセンサ4によるサブスロットルバルブ2の開度検出信号フィードバックされるようになっている。そして、サブスロットル駆動CPU6はサブスロットルセンサ4からの信号による実開度と目標開度との差よりステッピングモータ3の脱調を検出する。

0012

又、目標開度演算CPU5とサブスロットル駆動CPU6とはトラクション実行開始信号ライン8により接続され、同ライン8を通して目標開度演算CPU5からサブスロットル駆動CPU6に有効時(非常時)のみサブスロットルバルブ2を駆動する。さらに、目標開度演算CPU5とサブスロットル駆動CPU6とは通信ライン9で接続され、同ライン9を通じて、例えばステッピングモータ3の脱調などの異常状態などをデューティーにより目標開度演算CPU5に伝達する。

0013

目標開度は、目標開度演算CPU5からサブスロットル駆動CPU6に通信ライン7を用いて8ビット非同期シリアル通信通信されており、そのため、この通信ライン7は、サブスロットル制御上非常に重要な役割を担っている。よって、もし、通信ライン7にトラブルが発生すると誤った制御を実行し、非常に危険となる。

0014

本システム非同期ビットシリアル通信には、通信エラーとして、フレシングエラー(FE)、オーバーランエラー(OR)、ノイズフラグ(NF)及びパリティエラーの4つのエラーがある。ノイズフラグは通信データ(ストップスタートデータビット)中に、ノイズが発生した場合にセットされる。しかし、これのみのエラーの場合、データが破壊されている確率は低いと考えられる。そのため、通信エラーの形態としては軽微なもの(重要度の低いもの)と考えられる。又、フレーシングエラーの場合は、一般にボーレートの違いなどでセットされ、まともにデータを受け取っていないため通信エラーの形態としては重要なものと考えられる。さらに、オーバーランエラーの場合、一般には送信と受信のタイミングのずれや、データ長が8ビット長より長いか短い場合やストップビットを受信側が確認できない場合にセットされる。このエラーはデータの信頼性が非常に低く、通信エラーの形態としては重要なものと考えられる。

0015

パリティーエラーは、データの合計が偶数奇数かを計算し、その情報をビットのオンオフパリティービットと呼ぶ)で、受信側に送信し、受信側は、データの合計を計算し、パリティービットと一致するかどうかを判断し、違った場合、パリティーエラーと判断するものである。そして、エラー発生時はデータの破壊は確実で通信エラーの形態は重要なエラーと考えられる。

0016

以上のことからノイズフラグ以外はすべて重要なものと考えられる。次に、このように構成したトラクションコントロール装置の作用を説明する。図2にはサブスロットル駆動CPU6が実行する処理(フローチャート)を示す。又、図3には同処理を説明するためのタイミングチャートを示す。尚、図3において、重要でないエラーがt1,12,14,t20,t21のタイミングにて発生し、重要なエラーがt17,t18,t24のタイミングにて発生したものとする。

0017

サブスロットル駆動CPU6は、ステップ101で通信エラーの有無を判定する。そして、サブスロットル駆動CPU6は、通信エラーがないと、ステップ102でエラーカウンタERRORをクリア(=0)する。このエラーカウンタCERRORは、通信エラーが連続で発生した場合、連続回数を記憶しておくカウンタである。さらに、サブスロットル駆動CPU6は、ステップ103で正常カウンタCNORMALを「1」インクリメントする。正常カウンタCNORMALは、正常に通信が連続で何回受信できたかを記憶するものである。そして、サブスロットル駆動CPU6は、ステップ104,105で正常カウンタCNORMALの値のオーバーフローチェックを行う。つまり、ステップ104で正常カウンタCNORMALの値がフルスケール16進法の「FF」)となっていないか判定し、フルスケールになっているとステップ105でフルスケール値をガードする。

0018

次に、サブスロットル駆動CPU6は、ステップ106で正常カウンタCNORMALが「9」以上か否か判定し、「9」未満であればリターンする。サブスロットル駆動CPU6は、正常カウンタCNORMALが「9」以上であれば、ステップ107でフェイル動作実行カウンタFAILを「1」デクリメントする。これは、図3のt11のタイミングでの処理である。つまり、10回に1回の割合で重要度の低い通信エラーが発生した場合、フェイル動作実行カウンタCFAILはカウントアップしない。

0019

さらに、サブスロットル駆動CPU6は、ステップ108,109で正常カウンタCNORMALの値のアンダーフローチェックを行う。つまり、ステップ108で正常カウンタCNORMALの値が「0」となっていないか判定し、「0」となっているとステップ109で「0」をガードする。引き続き、サブスロットル駆動CPU6は、ステップ110で正常カウンタCNORMALをクリア(=0)する。

0020

一方、サブスロットル駆動CPU6は、ステップ101において通信エラーが発生すると、ステップ111で正常カウンタCNORMALをクリア(=0)し、ステップ112でエラーカウンタCERRORを「1」インクリメントする。そして、サブスロットル駆動CPU6は、ステップ113,114でエラーカウンタCERRORの値のオーバーフローチェックを行う。つまり、ステップ113でエラーカウンタCERRORの値がフルスケール(16進法の「FF」)となっていないか判定し、フルスケールになっているとステップ114でフルスケール値をガードする。

0021

さらに、サブスロットル駆動CPU6は、ステップ115でノイズフラグのエラーかをチェックし、ノイズフラグの場合、つまり重要度の低いエラーの場合、ステップ117で汎用レジスタBレジスタに「1」を入れる。又、サブスロットル駆動CPU6は、ノイズフラグ以外のエラー、つまり重要度の高いエラーの場合、ステップ116でBレジスタには「2」を入れる。

0022

サブスロットル駆動CPU6は、ステップ116あるいはステップ117を処理した後、ステップ118でエラーカウンタCERRORが「2」以上か否か判定する。つまり、エラーが連続で発生したか否かをチェックする。そして、サブスロットル駆動CPU6は、エラーカウンタCERROR=1、即ち、1回目のエラーの場合、ステップ120でフェイル動作実行カウンタCFAILにBレジスタの内容を加え、その値をフェイル動作実行カウンタCFAILに入れる。このときの動作が、図3のt12のタイミング及びt14のタイミングに相当する。

0023

この図3のt12のタイミング及びt14のタイミングは、ノイズエラーが連続でなく、とぎれとぎれに発生した場合のカウンタCFAILのカウントアップを示している。

0024

一方、ステップ118において、エラーカウンタCERRORが「2」以上となりエラーが連続した場合には、サブスロットル駆動CPU6は、ステップ119でBレジスタの値にエラーカウンタCERRORの値を乗算して新たなBレジスタの値にする。つまり、連続回数分、Bレジスタの値を倍化する。そして、サブスロットル駆動CPU6は、ステップ120でフェイル動作実行カウンタCFAILにBレジスタの内容を加え、その値をフェイル動作実行カウンタCFAILに入れる。このときの動作が図3のt17のタイミング及びt18のタイミングに相当する。

0025

図3のt17のタイミング及びt18のタイミングにおいては、重要なエラーが2度連続で発生した場合を示す。そして、フェイル動作実行カウンタCFAILの値は、「2」→「4」、及び、「4」→「8」へとアップしていく。

0026

次に、サブスロットル駆動CPU6は、ステップ121,122でフェイル動作実行カウンタCFAILのオーバフローをチェックする。つまり、ステップ121でフェイル動作実行カウンタCFAILの値がフルスケール(16進法の「FF」)となっていないか判定し、フルスケールになっているとステップ122でフルスケール値をガードする。

0027

さらに、サブスロットル駆動CPU6は、ステップ123でフェイル動作実行カウンタCFAILがフェイル動作の実行する設定値(本実施例では「13」)をオーバーしているのをチェックする。サブスロットル駆動CPU6は、オーバーした場合はステップ124でフェイル動作実行フラグをセットする。このフェイル動作実行フラグのセットにより、サブスロットル駆動CPU6は、フェイル動作を実行する。これが図3中のt24タイミングでのフェイル動作実行ポイントに相当する。ここで、フェイル動作とは、サブスロットルバルブ2と連動するステッピングモータ3をゆるやかに全開駆動し、動作を停止することを意味する。

0028

以上のことにより通信回路が非常に悪い場合(重要度が高いエラーが連続した場合)は、速やかにフェイル動作を実行する。又、通信回線が悪くなる予兆が見られた時は(ノイズフラグなど)、状態に応じてフェイル動作を実行する。

0029

以上詳述したように、車内での装置の故障や外部からの影響でノイズが発生し、信号ラインにノイズが発生した場合、あるいは、信号ラインの断線の予兆などで、通信エラーが、断続的に発生した場合などで、制御上問題となるかどうかをより速く判断し、フェイル動作を実行でき安全となる。又、いくつかある通信エラーの形態が重要か重要でないものかを判断し、重要なエラーの場合、重要でないエラーに比べ、フェイル動作の実行を早く行う。つまり、通信状態がだめになる前に、ノイズフラグなどのエラーがたまに発生しても、制御上問題になりそうな場合にも、状態に応じてフェイル動作の実行を行う。

0030

このように本実施例では、予めシリアル通信におけるエラーの重要度に応じて重み付けをしておき(図2のステップ116,117)、シリアル通信におけるエラーを検出したときにそのエラーの重み付け分だけフェイル動作実行カウンタCFAILのカウント値をカウントアップしつつカウントアップ動作を行い(図2のステップ118,119,120)、かつ、所定期間エラーが検出されないとフェイル動作実行カウンタCFAILのカウント値をカウントダウンし(図2のステップ106,107)、当該カウント値が所定値(=「13」)に達すると(図2のステップ123)フェイル動作を実行するようにした(図2のステップ124)。

0031

よって、いくつかある通信エラーの形態に対し重要度に応じて重み付けをすることにより、重要なるエラーが多発すると、フェイル動作を実行する。又、重要でないエラーが発生しても、フェイル動作は実行されない。その結果、適切なタイミングにてフェイル動作を実行することができることとなる。

発明の効果

0032

以上詳述したようにこの発明によれば、適切なタイミングにてフェイル動作を実行することができる優れた効果を発揮する。

図面の簡単な説明

0033

図1実施例の車両用エンジンのトラクションコントロール装置の概略図である。
図2作用を説明するためのフローチャートである。
図3作用を説明するためのタイミングチャートである。

--

0034

2サブスロットルバルブ
3ステッピングモータ
5目標開度演算CPU
6サブスロットル駆動CPU

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ