JPH06168147A - シリアル通信におけるエラー処理方法 - Google Patents

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

Info

Publication number
JPH06168147A
JPH06168147A JP4321009A JP32100992A JPH06168147A JP H06168147 A JPH06168147 A JP H06168147A JP 4321009 A JP4321009 A JP 4321009A JP 32100992 A JP32100992 A JP 32100992A JP H06168147 A JPH06168147 A JP H06168147A
Authority
JP
Japan
Prior art keywords
error
sub
serial communication
cpu
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4321009A
Other languages
English (en)
Inventor
Kenichi Maki
健一 牧
Yoichi Nishiyori
洋一 西依
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
NipponDenso Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NipponDenso Co Ltd filed Critical NipponDenso Co Ltd
Priority to JP4321009A priority Critical patent/JPH06168147A/ja
Publication of JPH06168147A publication Critical patent/JPH06168147A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Combined Controls Of Internal Combustion Engines (AREA)
  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、シリアル通信におけ
るエラー処理方法に関するものである。
【0002】
【従来の技術】従来、車両のエンジン制御としてトラク
ションコントロールが行われている。これは、車両の駆
動力をエンジン出力を制御することにより行うものであ
り、その一例としてエンジンの吸気管にメインスロット
ルバルブと直列にサブスロットルバルブを配置し、この
サブスロットルバルブの開度をステッピングモータによ
り調整してエンジン出力を制御するものである。このと
き、目標開度演算用CPUとサブスロットル駆動用CP
Uの2つのCPUを設けることがある。この場合におい
て、両CPU間でシリアル通信しながら目標スロットル
開度となるようにステッピングモータを制御するが、通
信エラーが発生した際にはそのデータを読み捨てて、エ
ラーが連続的にある回数発生した際には通信ライン異常
と判断し、フェイル動作を実行している。
【0003】
【発明が解決しようとする課題】しかしながら、断続的
にエラーが発生した場合にはフェイル動作に入ることが
できなかった。つまり、車内での装置の故障や外部から
の影響でノイズが発生し信号ラインにノイズが発生した
場合、あるいは、信号ラインの断線の予兆などで通信エ
ラーが断続的に発生した場合等ではフェイル動作に入る
ことができなかった。
【0004】そこで、この発明の目的は、適切なタイミ
ングにてフェイル動作を実行することができるシリアル
通信におけるエラー処理方法を提供することにある。
【0005】
【課題を解決するための手段】この発明は、予めシリア
ル通信におけるエラーの重要度に応じて重み付けをして
おき、シリアル通信におけるエラーを検出したときにそ
のエラーの重み付け分だけカウント値をカウントアップ
しつつカウントアップ動作を行い、かつ、所定期間エラ
ーが検出されないとカウント値をカウントダウンし、当
該カウント値が所定値に達するとフェイル動作を実行す
るようにしたシリアル通信におけるエラー処理方法をそ
の要旨とする。
【0006】
【作用】シリアル通信におけるエラーを検出したときに
そのエラーの重み付け分だけカウント値をカウントアッ
プしつつカウントアップ動作を行い、かつ、所定期間エ
ラーが検出されないとカウント値をカウントダウンし、
当該カウント値が所定値に達するとフェイル動作を実行
する。
【0007】つまり、いくつかある通信エラーの形態に
対し重要度に応じて重み付けをすることにより、重要な
るエラーが多発すると、フェイル動作を実行する。又、
重要でないエラーが発生しても、フェイル動作は実行さ
れない。
【0008】
【実施例】以下、この発明を具体化した一実施例を図面
に従って説明する。本実施例は、車両用エンジンのトラ
クションコントロール装置に具体化したものである。
【0009】図1に示すように、エンジンの吸気管1に
メインスロットルバルブ(図示略)と直列にサブスロッ
トルバルブ2が配置されている。このサブスロットルバ
ルブ2にはステッピングモータ3が連結され、同モータ
3の駆動によりサブスロットルバルブ2の開度が調整さ
れるようになっている。又、このサブスロットルバルブ
2の開度はサブスロットルセンサ4により検出されるよ
うになっている。
【0010】本トラクションコントロール装置には2つ
のCPU5,6が設けられている。目標開度演算CPU
5は図示しないエンジンコントロールユニットからサブ
スロットルバルブ2の目標開度データを取り込む。又、
サブスロットル駆動CPU6はステッピングモータ3に
サブスロットル駆動パルスを出力して同モータ3を制御
してサブスロットルバルブ2の開度を調整してエンジン
出力を制御するものである。そして、目標開度演算CP
U5とサブスロットル駆動CPU6とは8ビット通信ラ
イン7にて接続され、同ライン7を通して目標開度演算
CPU5からサブスロットル駆動CPU6にサブスロッ
トルバルブ2の目標開度データが送られる。
【0011】又、サブスロットル駆動CPU6はサブス
ロットルセンサ4によるサブスロットルバルブ2の開度
検出信号がフィードバックされるようになっている。そ
して、サブスロットル駆動CPU6はサブスロットルセ
ンサ4からの信号による実開度と目標開度との差よりス
テッピングモータ3の脱調を検出する。
【0012】又、目標開度演算CPU5とサブスロット
ル駆動CPU6とはトラクション実行開始信号ライン8
により接続され、同ライン8を通して目標開度演算CP
U5からサブスロットル駆動CPU6に有効時(非常
時)のみサブスロットルバルブ2を駆動する。さらに、
目標開度演算CPU5とサブスロットル駆動CPU6と
は通信ライン9で接続され、同ライン9を通じて、例え
ばステッピングモータ3の脱調などの異常状態などをデ
ューティーにより目標開度演算CPU5に伝達する。
【0013】目標開度は、目標開度演算CPU5からサ
ブスロットル駆動CPU6に通信ライン7を用いて8ビ
ット非同期シリアル通信で通信されており、そのため、
この通信ライン7は、サブスロットル制御上非常に重要
な役割を担っている。よって、もし、通信ライン7にト
ラブルが発生すると誤った制御を実行し、非常に危険と
なる。
【0014】本システムの非同期8ビットシリアル通信
には、通信エラーとして、フレーシングエラー(F
E)、オーバーランエラー(OR)、ノイズフラグ(N
F)及びパリティエラーの4つのエラーがある。ノイズ
フラグは通信データ(ストップ、スタート、データビッ
ト)中に、ノイズが発生した場合にセットされる。しか
し、これのみのエラーの場合、データが破壊されている
確率は低いと考えられる。そのため、通信エラーの形態
としては軽微なもの(重要度の低いもの)と考えられ
る。又、フレーシングエラーの場合は、一般にボーレー
トの違いなどでセットされ、まともにデータを受け取っ
ていないため通信エラーの形態としては重要なものと考
えられる。さらに、オーバーランエラーの場合、一般に
は送信と受信のタイミングのずれや、データ長が8ビッ
ト長より長いか短い場合やストップビットを受信側が確
認できない場合にセットされる。このエラーはデータの
信頼性が非常に低く、通信エラーの形態としては重要な
ものと考えられる。
【0015】パリティーエラーは、データの合計が偶数
か奇数かを計算し、その情報をビットのオン・オフ(パ
リティービットと呼ぶ)で、受信側に送信し、受信側
は、データの合計を計算し、パリティービットと一致す
るかどうかを判断し、違った場合、パリティーエラーと
判断するものである。そして、エラー発生時はデータの
破壊は確実で通信エラーの形態は重要なエラーと考えら
れる。
【0016】以上のことからノイズフラグ以外はすべて
重要なものと考えられる。次に、このように構成したト
ラクションコントロール装置の作用を説明する。図2に
はサブスロットル駆動CPU6が実行する処理(フロー
チャート)を示す。又、図3には同処理を説明するため
のタイミングチャートを示す。尚、図3において、重要
でないエラーがt1,12,14,t20,t21のタ
イミングにて発生し、重要なエラーがt17,t18,
t24のタイミングにて発生したものとする。
【0017】サブスロットル駆動CPU6は、ステップ
101で通信エラーの有無を判定する。そして、サブス
ロットル駆動CPU6は、通信エラーがないと、ステッ
プ102でエラーカウンタCERRORをクリア(=
0)する。このエラーカウンタCERRORは、通信エ
ラーが連続で発生した場合、連続回数を記憶しておくカ
ウンタである。さらに、サブスロットル駆動CPU6
は、ステップ103で正常カウンタCNORMALを
「1」インクリメントする。正常カウンタCNORMA
Lは、正常に通信が連続で何回受信できたかを記憶する
ものである。そして、サブスロットル駆動CPU6は、
ステップ104,105で正常カウンタCNORMAL
の値のオーバーフローチェックを行う。つまり、ステッ
プ104で正常カウンタCNORMALの値がフルスケ
ール(16進法の「FF」)となっていないか判定し、
フルスケールになっているとステップ105でフルスケ
ール値をガードする。
【0018】次に、サブスロットル駆動CPU6は、ス
テップ106で正常カウンタCNORMALが「9」以
上か否か判定し、「9」未満であればリターンする。サ
ブスロットル駆動CPU6は、正常カウンタCNORM
ALが「9」以上であれば、ステップ107でフェイル
動作実行カウンタCFAILを「1」デクリメントす
る。これは、図3のt11のタイミングでの処理であ
る。つまり、10回に1回の割合で重要度の低い通信エ
ラーが発生した場合、フェイル動作実行カウンタCFA
ILはカウントアップしない。
【0019】さらに、サブスロットル駆動CPU6は、
ステップ108,109で正常カウンタCNORMAL
の値のアンダーフローチェックを行う。つまり、ステッ
プ108で正常カウンタCNORMALの値が「0」と
なっていないか判定し、「0」となっているとステップ
109で「0」をガードする。引き続き、サブスロット
ル駆動CPU6は、ステップ110で正常カウンタCN
ORMALをクリア(=0)する。
【0020】一方、サブスロットル駆動CPU6は、ス
テップ101において通信エラーが発生すると、ステッ
プ111で正常カウンタCNORMALをクリア(=
0)し、ステップ112でエラーカウンタCERROR
を「1」インクリメントする。そして、サブスロットル
駆動CPU6は、ステップ113,114でエラーカウ
ンタCERRORの値のオーバーフローチェックを行
う。つまり、ステップ113でエラーカウンタCERR
ORの値がフルスケール(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度連続で発生し
た場合を示す。そして、フェイル動作実行カウンタCF
AILの値は、「2」→「4」、及び、「4」→「8」
へとアップしていく。
【0026】次に、サブスロットル駆動CPU6は、ス
テップ121,122でフェイル動作実行カウンタCF
AILのオーバフローをチェックする。つまり、ステッ
プ121でフェイル動作実行カウンタCFAILの値が
フルスケール(16進法の「FF」)となっていないか
判定し、フルスケールになっているとステップ122で
フルスケール値をガードする。
【0027】さらに、サブスロットル駆動CPU6は、
ステップ123でフェイル動作実行カウンタCFAIL
がフェイル動作の実行する設定値(本実施例では「1
3」)をオーバーしているのをチェックする。サブスロ
ットル駆動CPU6は、オーバーした場合はステップ1
24でフェイル動作実行フラグをセットする。このフェ
イル動作実行フラグのセットにより、サブスロットル駆
動CPU6は、フェイル動作を実行する。これが図3中
のt24タイミングでのフェイル動作実行ポイントに相
当する。ここで、フェイル動作とは、サブスロットルバ
ルブ2と連動するステッピングモータ3をゆるやかに全
開駆動し、動作を停止することを意味する。
【0028】以上のことにより通信回路が非常に悪い場
合(重要度が高いエラーが連続した場合)は、速やかに
フェイル動作を実行する。又、通信回線が悪くなる予兆
が見られた時は(ノイズフラグなど)、状態に応じてフ
ェイル動作を実行する。
【0029】以上詳述したように、車内での装置の故障
や外部からの影響でノイズが発生し、信号ラインにノイ
ズが発生した場合、あるいは、信号ラインの断線の予兆
などで、通信エラーが、断続的に発生した場合などで、
制御上問題となるかどうかをより速く判断し、フェイル
動作を実行でき安全となる。又、いくつかある通信エラ
ーの形態が重要か重要でないものかを判断し、重要なエ
ラーの場合、重要でないエラーに比べ、フェイル動作の
実行を早く行う。つまり、通信状態がだめになる前に、
ノイズフラグなどのエラーがたまに発生しても、制御上
問題になりそうな場合にも、状態に応じてフェイル動作
の実行を行う。
【0030】このように本実施例では、予めシリアル通
信におけるエラーの重要度に応じて重み付けをしておき
(図2のステップ116,117)、シリアル通信にお
けるエラーを検出したときにそのエラーの重み付け分だ
けフェイル動作実行カウンタCFAILのカウント値を
カウントアップしつつカウントアップ動作を行い(図2
のステップ118,119,120)、かつ、所定期間
エラーが検出されないとフェイル動作実行カウンタCF
AILのカウント値をカウントダウンし(図2のステッ
プ106,107)、当該カウント値が所定値(=「1
3」)に達すると(図2のステップ123)フェイル動
作を実行するようにした(図2のステップ124)。
【0031】よって、いくつかある通信エラーの形態に
対し重要度に応じて重み付けをすることにより、重要な
るエラーが多発すると、フェイル動作を実行する。又、
重要でないエラーが発生しても、フェイル動作は実行さ
れない。その結果、適切なタイミングにてフェイル動作
を実行することができることとなる。
【0032】
【発明の効果】以上詳述したようにこの発明によれば、
適切なタイミングにてフェイル動作を実行することがで
きる優れた効果を発揮する。
【図面の簡単な説明】
【図1】実施例の車両用エンジンのトラクションコント
ロール装置の概略図である。
【図2】作用を説明するためのフローチャートである。
【図3】作用を説明するためのタイミングチャートであ
る。
【符号の説明】
2 サブスロットルバルブ 3 ステッピングモータ 5 目標開度演算CPU 6 サブスロットル駆動CPU

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 予めシリアル通信におけるエラーの重要
    度に応じて重み付けをしておき、シリアル通信における
    エラーを検出したときにそのエラーの重み付け分だけカ
    ウント値をカウントアップしつつカウントアップ動作を
    行い、かつ、所定期間エラーが検出されないとカウント
    値をカウントダウンし、当該カウント値が所定値に達す
    るとフェイル動作を実行するようにしたことを特徴とす
    るシリアル通信におけるエラー処理方法。
JP4321009A 1992-11-30 1992-11-30 シリアル通信におけるエラー処理方法 Pending JPH06168147A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4321009A JPH06168147A (ja) 1992-11-30 1992-11-30 シリアル通信におけるエラー処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4321009A JPH06168147A (ja) 1992-11-30 1992-11-30 シリアル通信におけるエラー処理方法

Publications (1)

Publication Number Publication Date
JPH06168147A true JPH06168147A (ja) 1994-06-14

Family

ID=18127777

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4321009A Pending JPH06168147A (ja) 1992-11-30 1992-11-30 シリアル通信におけるエラー処理方法

Country Status (1)

Country Link
JP (1) JPH06168147A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6704640B2 (en) 2001-06-15 2004-03-09 Fujitsu Ten Limited Engine control device
JP2008188373A (ja) * 2007-02-08 2008-08-21 Olympia:Kk 遊技機、プログラムおよび記憶媒体
JP2020077171A (ja) * 2018-11-07 2020-05-21 株式会社デンソー 電子制御装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6704640B2 (en) 2001-06-15 2004-03-09 Fujitsu Ten Limited Engine control device
KR100561014B1 (ko) * 2001-06-15 2006-03-16 후지쓰 텐 가부시키가이샤 엔진 제어 장치
JP2008188373A (ja) * 2007-02-08 2008-08-21 Olympia:Kk 遊技機、プログラムおよび記憶媒体
JP2020077171A (ja) * 2018-11-07 2020-05-21 株式会社デンソー 電子制御装置

Similar Documents

Publication Publication Date Title
US4136384A (en) Loop type data highway system
US6938190B2 (en) Failure detector for communication network in automobile
CN108663080B (zh) 一种伺服驱动系统中绝对值编码器故障诊断方法
JP4080980B2 (ja) 電子制御装置
JPS59114652A (ja) ウォッチドッグ・タイマ回路
CN110824988B (zh) 一种基于1553b总线冗余的姿控输出信号表决方法
EP1308811B1 (en) Electronic control device having control and monitoring CPUS
JP2002510082A (ja) データ伝送方法
JP2005031993A (ja) 電子制御装置
EP0024940B1 (en) Method and apparatus for transmission of serial data
JPH06168147A (ja) シリアル通信におけるエラー処理方法
US7131051B2 (en) Coding method for coding control commands for actuators and actuator control unit for controlling actuators
JPH0581222A (ja) 2cpuの動作監視方法
JP3325040B2 (ja) 電子スロットル制御機構
JP3901987B2 (ja) 車両用電子制御装置
US20020114409A1 (en) Serial data communication apparatus and detection method for communication error
JP3351104B2 (ja) 車両通信システム
JP3249710B2 (ja) アナログ/デジタル変換装置
JP2006195739A (ja) 電子制御装置
US6760854B2 (en) Method and apparatus for handling a framing error at a serial interface by forcing invalid commands to be read upon determine the command is invalid
JPH07269409A (ja) 車載用電子制御装置
JP3271270B2 (ja) データ通信装置
JP2002314556A (ja) 車両制御システム
JP2003150408A (ja) 車載制御装置用マイクロコンピュータの監視方法及び回路
JP2770621B2 (ja) 車両用多重通信装置用計器装置