JP2018201148A - 通信装置 - Google Patents

通信装置 Download PDF

Info

Publication number
JP2018201148A
JP2018201148A JP2017105564A JP2017105564A JP2018201148A JP 2018201148 A JP2018201148 A JP 2018201148A JP 2017105564 A JP2017105564 A JP 2017105564A JP 2017105564 A JP2017105564 A JP 2017105564A JP 2018201148 A JP2018201148 A JP 2018201148A
Authority
JP
Japan
Prior art keywords
communication
data
transmission
period
unit
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.)
Granted
Application number
JP2017105564A
Other languages
English (en)
Other versions
JP6984178B2 (ja
Inventor
中川 哲夫
Tetsuo Nakagawa
哲夫 中川
岸上 友久
Tomohisa Kishigami
友久 岸上
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
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP2017105564A priority Critical patent/JP6984178B2/ja
Publication of JP2018201148A publication Critical patent/JP2018201148A/ja
Application granted granted Critical
Publication of JP6984178B2 publication Critical patent/JP6984178B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】シリアル通信において誤ったデータが送受信されるおそれがあることを検出するための技術を提供する。【解決手段】ECUは、送受信部31と、判断部32と、を備える。送受信部は、所定の2つの論理値のうちの一方で表される開始符号、及び開始符号とは反対の論理値で表される終了符号、を含むシリアルデータである通信データ、を通信線を介して送信するとともに、通信データを通信線を介して受信する。判断部は、通信線において通信データが送受信されていない期間を表す無通信期間に、通信線に開始符号の論理値に対応する電気信号である開始信号が生じたか否か、を判断する。【選択図】図4

Description

本開示は、通信装置に関する。
特許文献1には、UARTインタフェースを備える通信装置間でシリアル通信を行う技術が提案されている。UARTとは、Universal Asynchronous Receiver Transmitterの略である。
特開2011−91742号公報
特許文献1に記載のUARTインタフェースを用いたシリアル通信では、通信が行われない状態(以下、無通信状態)では、通信線の信号レベルはハイレベル(以下、Hレベル)である。通信開始時には、送信側は、まずスタートビットを送信する。スタートビットは、例えば1ビットのローレベル(以下、Lレベル)の信号であり、受信側に送信開始を知らせるためのものである。受信側は、これにより、受信を開始する。送信側は、続いて、所定のデータ長のデータを順に送信する。送信側は、データの送信が終了すると、ストップビットを送信する。ストップビットは、例えば1ビットのHレベルの信号であり、受信側に送信終了を知らせるためのものである。これにより、データの送信が完了する。
ところで、上述の無通信状態において通信線にノイズ等に起因してLレベルの信号が発生していると、該Lレベルの信号が開始信号として誤って認識され、誤ったデータが受信されるおそれがある。しかしながら、このような誤ったデータが送受信されるおそれがあることを検出するための技術は、従来無かった。
本開示の1つの局面は、シリアル通信において誤ったデータが送受信されるおそれがあることを検出するための技術を提供する。
本開示の1つの局面は、一または複数の他の通信装置と通信線を介して接続され、一又は複数の他の通信装置との間で通信を行う通信装置(10)である。通信装置は、送受信部(31)と、判断部(32)と、を備える。送受信部は、所定の2つの論理値のうちの一方で表される開始符号、及び開始符号とは反対の論理値で表される終了符号、を含むシリアルデータである通信データ、を通信線を介して送信するとともに、通信データを通信線を介して受信する。判断部は、通信線において通信データが送受信されていない期間を表す無通信期間に、通信線に開始符号の論理値に対応する電気信号である開始信号が生じたか否か、を判断する。
このような構成によれば、無通信期間において、ノイズ等といった開始符号では無いものに起因して通信線に開始信号が生じた場合にも、開始信号が生じたと判断される。その結果、該判断結果を利用して、例えば、無通信期間に開始信号が生じたことを、シリアル通信において誤ったデータが送受信されるおそれがあることとして、検出することができる。
なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
通信システムの構成を示す図。 通信線における電気信号と論理値との対応を説明する説明図。 通信データとしての、UARTフレームを説明する説明図。 ECUが実行する機能を表す機能ブロック図。 受信時処理を示すフローチャート。 送信時処理を示すフローチャート。 検出処理を示すフローチャート。 送信制御処理を示すフローチャート。 UARTフレームの送受信において、送信異常が検出されない例を説明する説明図。 第1実施形態の作動を説明する説明図。 LINフレームを説明する説明図。 第2実施形態の作動を説明する説明図。
以下、図面を参照しながら、本開示の実施形態を説明する。
[1.第1実施形態]
[1−1.構成]
図1に示す通信システム1は、例えば乗用車等の車両に搭載されている。通信システム1は、図1に示すように、電子制御装置(以下、ECU)10を備える。ECUは、Electronic Control Unitの略である。通信システム1は、複数の他のECU20を備えていてもよい。図1では、通信システム1が、3つの他のECU20を備える様子が示されている。ECU10及び他のECU20は、それぞれに割り当てられた種々の機能を実現するための各種処理を実行する。
通信システム1では、ECU10と他のECU20のそれぞれとは、通信線5を介して、所定の通信手順に従って、シリアル通信可能に接続されている。本実施形態では、UARTに従って、シリアル通信が行われる。
ECU10は、トランシーバ11と通信コントローラ12マイクロコンピュータ(以下、マイコン)12とを備える。なお、図示しないが、他のECU20は、ECU10と同様に、トランシーバと通信コントローラとを備えるように構成され得る。
トランシーバ11は、通信相手となる他のECU20が備えるトランシーバとの間で、UARTで規定された通信線5の電気的条件を満たす電気信号を送受信するように構成された公知のものである。トランシーバ11は、通信コントローラ12から入力されるデジタルデータを電気信号に変換して通信線5へ送信するとともに、通信線5から受信した電気信号をデジタルデータに変換して通信コントローラ12へ出力する。
デジタルデータ(以下、データ)は、論理値0及び論理値1といった所定の2つの論理値で表される。通信線5上では、図2に示すように、論理値0に対応する電気信号はLレベルであり、論理値1に対応する電気信号はHレベルである。また、通信線5に接続されているECU10及び他のECU20のいずれもが通信線5を介して送受信を行っていない場合、通信線5上では、その信号レベルはHレベルである。
ここでは、UARTに従った通信に使用されるデータである通信データは、図3に示すように、スタートビットと、ユーザデータと、ストップビットとを含むシリアルデータである。ここでいうUARTに従った通信データは、UARTフレームに相当する。スタートビットは、通信データの開始を示す。スタートビットは、論理値0で表される。ユーザデータは、通信線5を介して送受信される所定長のデータである。UARTでは、ユーザデータは8ビットである。ストップビットは、通信データの終了を示す。ストップビットは、スタートビットとは反対の論理値である論理値1で表される。
以下でいう開始信号とは、スタートビットの論理値に対応する電気信号をいうものとする。スタートビットは論理値0で表されることから、開始信号はLレベルの電気信号である。少なくとも通信データの送信が開始されるときは、通信線5上には、開始信号が現れる。つまり、Lレベルの電気信号が現れる。
図1に戻り説明を続ける。通信コントローラ12は、CPU21と、RAM、ROM、フラッシュメモリ等の半導体メモリ(以下、メモリ22)と、を有するマイコンを備える。
ECU10の各種機能は、CPU21がメモリ22に格納されたプログラムを実行することにより実現される。また、このプログラムが実行されることで、プログラムに対応する方法が実行される。ECU10は、CPU21がプログラムを実行することで実現される機能の構成として、図4に示すように、通信部31と、検出部32と、制御部33と、を備える。
ECU10を構成するこれらの要素を実現する手法はソフトウェアに限るものではなく、その一部又は全部の要素について、一つあるいは複数のハードウェアを用いて実現してもよい。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は多数の論理回路を含むデジタル回路、又はアナログ回路、あるいはこれらの組合せによって実現してもよい。
通信部31は、制御部33から送信実行指示を受けると、UARTに従って、通信データを生成する処理を行う。具体的には、通信部31は、制御部33から入力された送信用データを上述のユーザデータとして用い、送信用データにスタートビット及びストップビットを付与した通信データを生成する。そして、通信部31は、生成した通信データをトランシーバ11へ出力する。通信部31は、トランシーバ11に、デジタルデータである通信データを電気信号に変換させ、通信線5を介して、他のECU20へ送信させる。
通信部31は、トランシーバ11から、トランシーバ11が通信線5に現れた電気信号をデジタルデータに変換した、デジタル変換データが入力される。通信部31は、デジタル変換データの中からスタートビットを検出して、通信データの開始を特定する処理を行う。
通信部31は、デジタル変換データにおいて、スタートビットからストップビットまでを通信データとして特定する処理を行う。また、通信部31は、特定された通信データからスタートビット及びストップビットを除いて得られるユーザデータを、他のECU20から受信した受信データとして通信コントローラ12へ出力する処理を行う。このようにして、通信部31は、他のECU20からの通信データを通信線5を介して受信している。
通信部31は、トランシーバ11に通信データを通信線5へ送信させる際、送信中の通信データに含まれる送信用データと、トランシーバ11が通信線5を介して受信した通信データに含まれる受信データとを比較する処理を行う。通信部31は、送信用データと受信データとが一致していなければ、送信異常が生じたと判断する。ここでいう送信異常とは、送信用データと受信データとが一致していないことをいう。
通信部31は、1バイト単位で、送信用データと受信データとが一致しているか否か、を判断する。ここでいう送信異常は、UARTにおける、所謂ビットエラーに相当する。通信部31、後述する受信時処理、送信時処理、を行う。
検出部32は、トランシーバ11から、デジタル変換データが分岐して入力されている。検出部32は、後述する検出処理を行う。
制御部33は、ECU10における作動を統括して制御するものである。制御部33は、通信部31から入力される受信データに基づいて、ECU10に割り当てられた所定の機能を実現するため、各種の処理を実行するように構成され得る。制御部33は、後述する送信制御処理を行う。
[1−2.処理]
[1−2−1.受信時処理]
次に、通信部31が実行する受信時処理について、図5のフローチャートを用いて説明する。受信時処理は、デジタル変換データにおいて、通信データの開始が特定される毎に起動される。受信時処理は、トランシーバ11から入力されたデジタル変換データにおいてスタートビットが検出された後にストップビットが検出されると、リセットフラグをセットする処理である。ここでいうリセットフラグは、通信データにおいてストップビットが検出されたか否かを表す情報である。なお、リセットフラグは、メモリ22に記憶されており、デジタル変換データにおいて通信データの開始が特定される毎にリセットされる。
通信部31は、S110では、デジタル変換データを取得する。
通信部31は、S120では、デジタル変換データにおいて、スタートビットから所定のビット数の後に、ストップビットが検出されたか否か、を判断する。ここでいう所定のビット数は、ユーザデータに相当するビット数であり、UARTに従う本実施形態では、8ビットである。通信部31は、ストップビットが検出されたと判断された場合に処理をS130へ移行させ、ストップビットが検出されなかったと判断された場合に本受信時処理を終了する。
通信部31は、S130では、リセットフラグをセットし、本受信時処理を終了する。
[1−2−2.送信時処理]
次に、通信部31が実行する送信時処理について、図6のフローチャートを用いて説明する。送信時処理は、制御部33から送信実行指示を受ける毎に起動される。送信時処理は、トランシーバ11に送信用データを通信線5へ送信させる際、上述の送信異常が生じた場合にリセットフラグをセットする処理である。つまり、上述のリセットフラグは、送信異常が生じたか否かを表す情報でもある。
通信部31は、S210では、送信用データをトランシーバ11へ出力する。これにより、送信用データをユーザデータとして含む通信データが、トランシーバ11によって電気信号に変換されて、通信線5を介して他のECU20へ送信される。
通信部31は、S220では、送信異常が生じたか否かを判断する。通信部31は、送信異常が生じたと判断された場合に処理をS230へ移行させ、送信異常が生じたと判断されなかった場合に、本送信時処理を終了する。
通信部31は、S230では、リセットフラグをセットし、本送信時処理を終了する。
[1−2−3.検出処理]
次に、検出部32が実行する検出処理について、図7のフローチャートを用いて説明する。検出処理は無通信期間において開始信号が生じたか否か、を判断する処理である。以下でいう検出フラグとは、無通信期間において開始信号が生じたか否かの判断結果を表す。検出フラグはメモリ22に記憶される。ここでいう無通信とは、通信線5において通信データが送受信されていないことを表す。無通信期間とは、通信線5において通信データが送受信されていない期間を表す。検出処理は、ECU10への電力供給が開始された以降、繰り返し実行される。
検出部32は、S310では、デジタル変換データを取得する。
検出部32は、S320では、開始信号が生じたか否かを判断する。ここでは、通信線5に、1ビット分の期間Lレベルを表す電気信号が現れた場合に、開始信号が生じたと判断する。つまり、検出部32は、デジタル変換データにおいて、論理値0が1ビット分の期間検出された場合に、開始信号が生じたと判断する。検出部32は、開始信号が検出された場合に処理をS330へ移行させ、開始信号が検出されなかった場合に処理をS310へ移行させる。
検出部32は、S330では、検出フラグをセットする。
検出部32は、S340では、リセットフラグがセットされているか否かを判断する。ここで、検出部32は、リセットフラグがセットされている場合に、処理をS350へ移行させる。一方、検出部32は、リセットフラグがセットされていない場合に、処理をS330へ移行させ、リセットフラグがセットされるまで待機する。
検出部32は、S350では、検出フラグをリセットし、処理をS310へ移行させ、S310移行の処理を繰り返す。
このように、検出フラグは、開始信号が検出されるとセットされ、且つ、リセットフラグがセットされるとリセットされる。上述のように、リセットフラグは、スタートビットが検出されてから所定のビット数の後にストップビットが検出された場合、及び送信異常が生じたと判断された場合にセットされる。
検出フラグは、ストップビットが検出されて通信データの送信が終了するとリセットされ、開始信号が検出されるとセットされるフラグである。つまり、検出フラグは、無通信期間において開始信号が生じたか否か、の判断結果を表す。検出フラグは、セットされている場合に、無通信期間において開始信号が生じたことを表し、リセットされている場合に無通信期間において開始信号が生じていないことを表す。
なお、送信異常が生じた場合は、ストップビットが検出されず、リセットフラグがセットされない状態が生じ得る。つまり、検出フラグがリセットされない状態が生じ得る。そこで、上述の送信時処理では、送信異常が生じた場合に検出フラグがリセットされない状態となることを抑制するために、送信異常が生じた場合にリセットフラグがセットされるようになっている。
[1−2−4.送信制御処理]
次に、制御部33が実行する送信制御処理について、図8のフローチャートを用いて説明する。
ここで、図9に示すように、UARTの通信において、仮に、送信ノードとしてのECU10によって、通信データすなわちUARTフレームが送信されてから次のUARTフレームが送信される前に、通信線5において例えばノイズ等によって開始信号が生じたとする。つまり、無通信期間にスタートビット以外の要因によって開始信号が生じたとする。
このような場合、受信ノードとしての他のECU20では、該開始信号をスタートビットに相当する電気信号であると誤って認識し、該開始信号をスタートビットとして、誤ったユーザデータを受信するおそれがある。また、このような場合、送信ノードとしてのECU10では、上述の送信異常は検出されない。送信異常が検出されるのはUARTフレームの送信が開始された以降であるから、である。
つまり、このような場合、他のECU20において誤ったユーザデータが受信されるにもかかわらず、ECU10及び他のECU20のいずれにおいても、誤ったユーザデータが送受信されるおそれがあること、が検出されないことになる。
そこで、本実施形態では、ECU10は、制御部33によって送信制御処理を実行することによって、誤ったユーザデータが送受信されるおそれがあること、を検出する。
送信制御処理は、送信要求が生じたことをきっかけとして開始される。送信要求とは、送信用データを含む通信データを通信線5を介して他のECU20へ送信させる要求を表す。送信要求は、予め定められたスケジュールや他のECU20からの要求等に従って生じ得る。なお、以下でいう送信フレームとは、送信用データをユーザデータとして含む通信データ、をいう。送信用データは、通信線5を介して送信すべきデータを表す。
制御部33は、S410では、送信要求を取得する。
制御部33は、S420では、送信要求に従って、送信用データを生成する。
制御部33は、S430では、検出フラグを取得する。
制御部33は、S430では、無通信期間に開始信号が生じたか否かを判断する。具体的には、制御部33は、検出フラグがセットされている場合に、無通信期間に開始信号が生じたと判断する。制御部33は、無通信期間に開始信号が生じていない場合に処理をS450へ移行させ、無通信期間に開始信号が生じていた場合に処理をS460へ移行させる。
制御部33は、S450では、送信用データを通信部31へ出力する。そして、本送信制御処理を終了する。これにより、通信部31によって送信用データを含む通信データが生成される。そして、該通信データが、トランシーバ11によって電気信号に変換されて、通信線5を介して他のECU20へ送信される。
制御部33は、S460では、ユーザデータが誤って送受信されるおそれがあると判定する。判定結果はメモリ22に記憶される。
制御部33は、S470では、送信用データの通信部31への出力を中止する。つまり、制御部33は、送信用データを通信部31へ出力しない。そして、制御部33は、本送信制御処理を終了する。
[1−2−5.作動]
このように構成されたECU10は、図10に示すように、送信ノードとして作動する際、送信準備が完了し通信データを送信する前に通信線5に開始信号が生じていた場合には、通信データを送信せず、ユーザデータが誤って送受信されるおそれがあると判定する。上述のように、検出フラグは、無通信期間にスタートビット以外の要因によって開始信号が生じたときにセットされている。つまり、例えばノイズ等といったスタートビット以外の要因によって無通信期間に開始信号が生じていたことが検出された場合には、通信データが送信されず、ユーザデータが誤って送受信されるおそれがあると判定される。
[1−3.効果]
以上詳述した第1実施形態によれば、以下の効果を奏する。
(1a)ECU10は、複数の他のECU20と通信線5を介して接続され、複数の他のECU20との間で通信を行う通信装置である。ECU10は、通信部31と検出部32とを備える。通信部31は、所定の2つの論理値のうちの一方で表されるスタートビット、及びスタートビットとは反対の論理値で表されるストップビット、を含む通信データ、を他のECU20に通信線5を介して送信するとともに、他のECU20からの通信データを通信線5を介して受信する。検出部32は、無通信期間に開始信号が生じたか否か、を判断する。
これによれば、無通信期間において、ノイズ等といったスタートビットでは無いものに起因して通信線5に開始信号が生じた場合にも、開始信号が生じたと判断される。その結果、該判断結果を利用して、例えば、無通信期間に開始信号が生じたことを、シリアル通信において誤ったデータが送受信されるおそれがあることとして、検出することができる。
(1b)検出部32は、S330、S350において、無通信期間において通信線5に開始信号が生じたか否か、の判断結果を表す検出フラグをメモリ22に記憶させる。
制御部33は、S430ではメモリ22から検出フラグを取得し、S450では、検出フラグが無通信期間に開始信号が生じていないことを表す場合に、通信部31に、通信線5を介して送信フレームを送信させる。且つ、制御部33は、S470では、検出フラグが無通信期間に開始信号が生じたことを表す場合に、通信部31に、送信フレームを送信させない。
これによれば、ノイズ等といったスタートビットでは無いものに起因して通信線5に開始信号が生じた場合には、送信フレームが送信されない。その結果、不要な送信フレームが送信されることを抑制することができる。
(1c)通信部31は、S120では、該通信部31によって通信線5を介して受信されたデジタル変換データにおいて、スタートビットを検出し、スタートビットから所定のビット数後にストップビットが検出されたか否かを判断する。検出部32は、ストップビットが検出されたと判断された場合、無通信期間に開始信号が生じていない、と判断する。
つまり、通信データの受信が終了する毎に、検出フラグがリセットされる。その結果、通信データの送信が終了した以降を無通信期間として、該無通信期間に開始信号が生じた場合に検出フラグがセットされる。
(1d)通信部31は、S220では、送信フレームが通信線5に送信される際に、通信線5を介して受信する通信データを表す受信フレームに含まれる受信データと送信用データとが一致するか否かを判断する。検出部32は、送信用データと受信データとが一致していないと判断された場合に、無通信期間に前記開始信号が生じていない、と判断する。
その結果、送信異常が生じた場合に検出フラグがリセットされない状態となることを抑制することができる。
(1e)通信部31は、UARTインタフェースに基づいて、通信データを通信線5へ送信するとともに、通信線5から通信データを受信する。その結果、UARTインタフェースに基づいて、通信データを送受信することができる。
(1f)制御部33は、S460では、送信フレームを送信する際に、検出部32によって無通信期間において開始信号が生じたと判断された場合に、通信データが誤って送受信されるおそれがあると判定する。その結果、該判定の結果に基づいて、ECU10の誤動作を抑制することが可能となる。
[1−4.変形例]
(変形例1)UARTインタフェースでは、ある論理値が1/2ビット時間以上継続したときに、該論理値の符号が発生したと判断される。つまり、ある論理値の継続時間が1/2ビット時間未満であるときは、該論理値の符号が発生していないと判断される。1/2ビット時間とは、1ビットに相当する電気信号が通信線5に現れる時間の1/2の時間をいう。
そこで、上記実施形態において、ECU10では、検出部32は、無通信期間において通信線に開始信号が現れた期間の長さが1/2ビット時間以上である場合に、無通信期間に開始信号が生じた、と判断するように構成され得る。具体的には、検出部32は、検出処理のS320において、開始信号、つまりLレベルの電気信号が現れた期間の長さが1/2ビット時間以上である場合に、開始信号が検出された、と判断するように構成されてもよい。
その結果、本変形例では、ノイズによって1/2ビット時間未満の開始信号が発生したときには送信フレームが送信されるので、このような短期間のノイズによって通信が滞ることを抑制することができる。
(変形例2)ECU10では、制御部33は、送信制御処理においてS460が省略されるように構成され得る。
(変形例3)ECU10では、制御部33は、送信制御処理において、S450、S470が省略されるように構成され得る。
[2.第2実施形態]
[2−1.構成]
第2実施形態は、基本的な構成は第1実施形態と同様であるため、相違点について以下に説明する。なお、第1実施形態と同じ符号は、同一の構成を示すものであって、先行する説明を参照する。
前述した第1実施形態では、ECU10及び他のECU20との間では、UARTに従って、通信線5を介して、UARTフレームが通信データとして送受信されていた。これに対し、第2実施形態では、ECU10及び他のECU20との間では、LINインタフェースに基づいて、通信線5を介して、LINフレームが通信データとして送受信される点で、第1実施形態と相違する。
LINは、Local Interconnect Networkの略であり、登録商標である。なお、LINについては、ISO17987に規定されており、各種文献において公知であるため、ここでは詳細な説明を省略する。
本実施形態では、図1において、UARTに対応するトランシーバ11が、LINに対応するトランシーバに置換される。図示しないが、他のECU20も同様に、LINに対応するトランシーバを備える。
なお、LINでは、図2において、論理値0に対応するLレベルの電気信号がドミナントに相当し、論理値1に対応するHレベルの電気信号がレセッシブに相当する。
LINの通信は、マスター・スレーブ方式で行われる。LINフレームは、図11に示すように、マスターノードから出力されるヘッダと、スレーブノードから出力されるレスポンスとで構成される。レスポンスは、図示しないが、データとチェックサムとの2つのフィールドで構成されており、データ、チェックサムともに、UARTフレームで送信される。つまり、レスポンスは、複数のUARTフレームを含む。
なお、ヘッダが送信されてからレスポンスの送信が開始される迄の期間を、レスポンススペースという。LINでは、予め定められた所定の時間が、レスポンススペースとして許容されている。
本実施形態では、ECU10は、スレーブノードとして機能する。つまり、図1における他のECU20のいずれか1つをマスターノードとして、該マスターノードからヘッダが送信されると、ECU10は、ヘッダに含まれるフレームIDに基づいて、レスポンスを送信するかどうかを識別する。ECU10は、フレームIDに基づいてレスポンスを送信することが確定すると、レスポンスを送信する。
ECU10は、上記実施形態と同様に、通信部31、検出部32、制御部33を備える。
なお、通信部31は、更に、LINに従って、通信データとしてのレスポンスを送信するとともに、通信データとしてのヘッダを受信する処理を行う。また、通信部31は、更に、ヘッダを受信したか否かを判断し、ヘッダを受信した場合にリセット通知をセットする処理を行う。
制御部33は、更に、LINに従って、通信部31によって受信されたヘッダに含まれているフレームIDに基づいて、レスポンスを送信するか否かを判断する処理を行う。制御部33は、レスポンスを送信すると判断された場合に、上述の送信要求を生成する処理を行う。これによって、レスポンスに含まれるフレームIDに基づいてレスポンスを送信することが確定された場合に、送信制御処理が起動される。
[2−4.処理]
本実施形態の制御部33は、図示しないが、上述の図8に示すフローチャートからS460を削除した送信制御処理を実行する。
つまり、制御部33は、レスポンスを送信する際に、S430にて検出フラグを取得する。制御部33は、S440では、開始信号すなわちドミナントが通信線5に生じているか否かを判断する。ここで、制御部33は、検出フラグが無通信期間にドミナントが生じていないことを表す場合に、S450にて通信部31にレスポンスを送信させる。一方、制御部33は、検出フラグが無通信期間にドミナントが生じたことを表す場合に、S470にて通信部31にレスポンスを送信させることを中止する。
[2−4.作動]
このように構成されたECU10は、スレーブノードとして作動する際、図12に示すように、レスポンスを送信する際に通信線5に開始信号としてのドミナントが生じていた場合には、レスポンスを送信しない。つまり、例えばノイズ等といったスタートビット以外の要因によって無通信期間に開始信号が生じていたことが検出された場合には、レスポンスが送信されないので、レスポンスが誤って送受信されることが抑制される。
[2−3.効果]
以上詳述した第2実施形態によれば、前述した第1実施形態の効果(1a)−(1d)を奏し、さらに、以下の効果を奏する。
(2a)通信部31は、LINインタフェースに基づいて、通信データを送信するとともに、通信データを受信する。その結果、ECU10は、LINに基づいて、通信データを送受信することができる。
(2b)ECU10は、スレーブノードとして作動するように構成される。制御部33は、ヘッダ及びレスポンスを含むLINフレームのうちレスポンスを通信データとして送信する際、検出フラグを取得し、検出フラグに基づいて、レスポンスを送信するか否かを判断する。ECU10は、検出フラグが無通信期間に開始信号が生じていないことを表す場合に、通信部31にレスポンスを送信させ、且つ、検出フラグが無通信期間に開始信号が生じたことを表す場合に、通信部31にレスポンスを送信させない。
その結果、例えば、ヘッダが送信された後にノイズ等によって通信線5にドミナントが生じている場合には、レスポンスを送信しないようにすることができるので、レスポンスが誤って受信されることを抑制することができる。
[3.他の実施形態]
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
(3a)上記実施形態では、通信システム1が、3つの他のECU20を備えていたが、これに限定されるものではない。通信システム1が備える他のECU20の数は、1つであってもよいし、3以外の複数であってもよい。
(3b)上記実施形態では、通信部31は、1バイト単位で送信用データと受信データとを比較し、送信用データと受信データとが一致していなければ、送信異常が生じたと判断する処理を行っていたが、これに限定されるものではない。例えば、通信部31は、送信用データと、受信データとを1ビット毎に比較し、送信用データと受信データとが一致していなければ、送信異常が生じたと判断する処理を行うように構成されてもよい。
(3c)上記実施形態において、他のECU20は、ECU10と同様に、受信時処理、送信時処理、検出処理、及び送信制御処理を実行するように構成されてもよい。
(3d)上記実施形態では、ECU10では、通信部31、検出部32、制御部33を備えていたが、これに限定されるものではない。例えば、制御部33が通信部31及び検出部32を備えるといったように、通信部31、検出部32、制御部33のうちのいずれか1つが残りの機能を備えるように構成されてもよい。また例えば、通信部31が検出部32を備えるといったように、通信部31、検出部32、制御部33のうちのいずれか1つが残りの2つのうち一方の機能を備えるように構成されてもよい。
(3e)上記実施形態では、ECU10は1つのマイコンを備えていたが、これに限定されるものではない。ECU10は、例えば、通信部31、検出部32、制御部33といった機能毎にマイコンを備えるといったように、複数のマイコンを備えていてもよい。
(3f)上記第2実施形態では、ECU10において、制御部33は、検出フラグが無通信期間に開始信号としてのドミナントが生じたことを表す場合に、通信部31にレスポンスを送信させないように構成されていたが、これに限定されるものではない。
制御部33は、レスポンスを送信する際に判断結果を取得し、判断結果が無通信期間にドミナントが生じていないことを表す場合に、通信部31に、レスポンスを送信させ、且つ、判断結果が無通信期間にドミナントが生じたことを表す場合に、通信部31に、破壊信号を送信させるように構成されていてもよい。
ここでいう破壊信号とは、予め定められた信号であって、他のECU20に、レスポンスが誤って送受信されるおそれがあることを検出させるための信号、をいう。破壊信号には、例えば、ドミナントが10ビット以上連続する信号や、レスポンスに含まれるチェックサムであって意図的に誤らせたチェックサム、等が挙げられる。
一方、他のECU20は、該破壊信号を受信した場合に、レスポンスが誤って送受信されるおそれがあることを検出し、受信したレスポンスを破棄するように構成されてもよい。
その結果、無通信期間にドミナントが生じた場合に、受信側となる他のECU20においてもレスポンスが誤って送受信されるおそれがあることを検出させ、レスポンスが誤って送受信されることを抑制することができる。なお、ECU10は、通信線5を介して破壊信号を受信した場合に、上述の他のECU20と同様に作動するように構成されてもよい。
(3g)上記実施形態における1つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、1つの構成要素が有する1つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、1つの構成要素によって実現したり、複数の構成要素によって実現される1つの機能を、1つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
(3h)上述した通信システム1、ECU10、通信コントローラ12、CPU21の他、ECU10を機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、通信方法など、種々の形態で本開示を実現することもできる。
なお、ECU10が通信装置に相当する。また、通信部31が、送受信部、終了符号検出部、一致検出部に相当し、検出部32が、判断部、判断結果記憶部に相当し、制御部33が、送信制御部、判定部に相当する。また、S120が終了符号検出部としての処理に相当し、S220が一致検出部としての処理に相当し、S310、S350が判断記憶部としての処理に相当し、S460が判定部としての処理に相当する。
また、検出フラグが、メモリ22に記憶された、判断部による判断結果に相当し、デジタル変換データが、送受信部によって通信線を介して受信されたデータに相当する。また、UARTフレーム、レスポンスが通信データに相当し、スタートビットが開始符号に相当し、ストップビットが終了符号に相当する。
10 ECU、31 通信部、32 検出部。

Claims (10)

  1. 一又は複数の他の通信装置と通信線を介して接続され、前記一又は複数の他の通信装置との間で通信を行う通信装置(10)であって、
    所定の2つの論理値のうちの一方で表される開始符号、及び前記開始符号とは反対の論理値で表される終了符号、を含む通信データ、を前記他の通信装置に前記通信線を介して送信するとともに、前記通信データを前記通信線を介して受信する送受信部(31)と、
    前記通信線において前記通信データが送受信されていない期間を表す無通信期間に、前記通信線に前記開始符号の論理値に対応する電気信号である開始信号が生じたか否か、を判断する判断部(32)と、
    を備える通信装置。
  2. 請求項1に記載の通信装置であって、
    前記判断部による判断結果をメモリに記憶する判断結果記憶部(S310、S350)と、
    前記判断結果を前記メモリから取得し、前記判断結果が前記無通信期間に前記開始信号が生じていないことを表す場合に、前記送受信部に、前記通信線を介して送信するデータを表す送信用データを含む前記通信データである送信フレームを送信させ、且つ、前記判断結果が前記無通信期間に前記開始信号が生じたことを表す場合に、前記送受信部に、前記送信フレームを送信させない送信制御部(33)と、
    を更に備える通信装置。
  3. 請求項1または請求項2に記載の通信装置であって、
    前記判断部は、前記無通信期間において前記通信線に前記開始信号が現れた期間の長さが1/2ビット時間以上である場合に、前記無通信期間に前記開始信号が生じた、と判断する
    通信装置。
  4. 請求項1から請求項3のいずれか一項に記載の通信装置であって、
    前記送受信部によって前記通信線を介して受信されたデータにおいて、前記開始符号を検出し、前記開始符号から所定のビット数後に前記終了符号が検出されたか否かを判断する終了符号検出部(31、S120)
    を更に備え、
    前記判断部は、前記終了符号が検出されたと判断された場合、前記無通信期間に前記開始信号が生じていない、と判断する
    通信装置。
  5. 請求項1から請求項4のいずれか一項に記載の通信装置であって、
    前記送受信部によって前記送信フレームが前記通信線に送信される際に、前記通信線を介して受信する前記通信データに含まれる受信データと前記送信用データとが一致するか否かを判断する一致検出部(31、S220)
    を更に備え、
    前記判断部は、前記送信用データと前記受信データとが一致していないと判断された場合に、前記無通信期間に前記開始信号が生じていない、と判断する
    通信装置。
  6. 請求項1から請求項5のいずれか一項に記載の通信装置であって、
    前記送受信部は、UARTインタフェースに基づいて、前記通信データを送信するとともに、前記通信データを受信する
    通信装置。
  7. 請求項2から請求項6のいずれか一項に記載の通信装置であって、
    前記送受信部は、LINインタフェースに基づいて、前記通信データを送信するとともに、前記通信データを受信する
    通信装置。
  8. 請求項7に記載の通信装置であって、
    前記送信制御部は、レスポンスを前記通信データとして送信する際に前記判断結果を取得し、前記判断結果が前記無通信期間に前記開始信号が生じていないことを表す場合に、前記送受信部に、前記レスポンスを送信させ、且つ、前記判断結果が前記無通信期間に前記開始信号が生じたことを表す場合に、前記送受信部に、前記レスポンスを送信させない、
    通信装置。
  9. 請求項7に記載の通信装置であって、
    前記送信制御部は、レスポンスを前記通信データとして送信する際に前記判断結果を取得し、前記判断結果が前記無通信期間に前記開始信号が生じていないことを表す場合に、前記送受信部に、前記レスポンスを送信させ、且つ、前記判断結果が前記無通信期間に前記開始信号が生じたことを表す場合に、前記送受信部に、予め定められた信号であって前記他のECUに前記レスポンスが誤って送受信されおそれがあることを検出させるための破壊信号、を送信させる、
    通信装置。
  10. 請求項1から請求項9に記載の通信装置であって、
    前記判断部によって前記無通信期間において前記開始信号が生じたと判断された場合に、前記通信データが誤って送受信されるおそれがあると判定する判定部(S460)、
    を更に備える通信装置。
JP2017105564A 2017-05-29 2017-05-29 通信装置 Active JP6984178B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017105564A JP6984178B2 (ja) 2017-05-29 2017-05-29 通信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017105564A JP6984178B2 (ja) 2017-05-29 2017-05-29 通信装置

Publications (2)

Publication Number Publication Date
JP2018201148A true JP2018201148A (ja) 2018-12-20
JP6984178B2 JP6984178B2 (ja) 2021-12-17

Family

ID=64667384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017105564A Active JP6984178B2 (ja) 2017-05-29 2017-05-29 通信装置

Country Status (1)

Country Link
JP (1) JP6984178B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113557688A (zh) * 2019-04-24 2021-10-26 欧姆龙株式会社 串行数据通信装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113557688A (zh) * 2019-04-24 2021-10-26 欧姆龙株式会社 串行数据通信装置
US11960432B2 (en) 2019-04-24 2024-04-16 Omron Corporation Serial data communication device and serial data communication method

Also Published As

Publication number Publication date
JP6984178B2 (ja) 2021-12-17

Similar Documents

Publication Publication Date Title
US8868807B2 (en) Communication system, master node, and slave node
JP6451546B2 (ja) 通信ネットワーク及び中継装置
US9947144B2 (en) Error variance detection method of CAN communication system and the CAN communication system
JP4766160B2 (ja) 通信システムおよび通信ノード
JP5811140B2 (ja) 通信システム
JP2012080360A (ja) 通信システム、マスタノード、スレーブノード
JP6176199B2 (ja) 伝送路異常検出装置
JP6984178B2 (ja) 通信装置
CN110809002A (zh) 机器人和焊接设备间协议转换的方法及协议转换模块
JP2005277978A (ja) 識別番号自動設定方法及び識別番号自動設定装置
JP2006253922A (ja) ゲートウェイ装置及びゲートウェイ装置におけるデータ転送方法
JP7005201B2 (ja) 通信メッセージ変換装置
CN116266803A (zh) 用于控制器局域网的设备
JP6743724B2 (ja) 通信ネットワーク及び通信端末
JP2006505860A (ja) 集積回路
JP2010141819A (ja) 通信装置、通信方法および通信プログラム
JP2017163344A (ja) 通信システム
JP6520729B2 (ja) 通信装置
JP2017046053A (ja) マスタノード
JP4884490B2 (ja) 通信システム及び通信方法
JP6183281B2 (ja) 通信システムおよび電子制御装置
JP5082147B2 (ja) マルチノードシステム、ノード間スイッチ及びデータ中継方法
CN110126758B (zh) 电子控制单元
JP2014131176A (ja) 通信ノード、及び通信システム
JP2006319568A (ja) 異常通知方法、および通信システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200417

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210316

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210510

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211026

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211108

R151 Written notification of patent or utility model registration

Ref document number: 6984178

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151