JP5393528B2 - 通信装置及びプログラム - Google Patents

通信装置及びプログラム Download PDF

Info

Publication number
JP5393528B2
JP5393528B2 JP2010035946A JP2010035946A JP5393528B2 JP 5393528 B2 JP5393528 B2 JP 5393528B2 JP 2010035946 A JP2010035946 A JP 2010035946A JP 2010035946 A JP2010035946 A JP 2010035946A JP 5393528 B2 JP5393528 B2 JP 5393528B2
Authority
JP
Japan
Prior art keywords
data
payload
slave
unit
payload data
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.)
Active
Application number
JP2010035946A
Other languages
English (en)
Other versions
JP2011172142A (ja
Inventor
大介 長川
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2010035946A priority Critical patent/JP5393528B2/ja
Publication of JP2011172142A publication Critical patent/JP2011172142A/ja
Application granted granted Critical
Publication of JP5393528B2 publication Critical patent/JP5393528B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Description

本発明は、所定の通信周期ごとに通信が行われる通信システムにおいて通信周期の短縮を図る技術に関する。
以下では、FA(Factory Automation)ネットワークを例にして説明を進める。
FAネットワークは、1台の指令機器(以下、マスタ装置又はマスタと記す)で複数の制御機器(以下、スレーブ装置又はスレーブと記す)を制御するためのネットワークである。
FAネットワークでは、機器間の接続を省配線で実現するために、各機器がそれぞれ複数の機器と接続し、ツリートポロジーやリングトポロジーを構成する。
このとき直接接続されていない機器間の通信は他の機器を中継することで実現される。
機器間の通信には、マスタから各スレーブに対して指令を送信する下り通信と、各スレーブからマスタに対して制御状態を送信する上り通信がある。
両通信は共通の周期(以下、通信周期)で実施される。
通信周期が短いほど、スレーブには短い周期で指令が通知されるため、スレーブをきめ細かく制御できる。
通信周期は、上り通信で1周期分の通信にかかる時間と、下り通信で1周期分の通信にかかる時間の長いほうの時間となる。
一般に、複数のスレーブからフレームを送信する上り通信のほうが、1台のマスタからフレームを送信する下り通信と比べ1周期分の通信完了にかかる時間が長くなるため、通信周期は上り通信で1周期分の通信にかかる時間となる。
上り通信で1周期分の通信にかかる時間は、図8のように1周期の間に受信する全フレームの受信時間とフレーム間ギャップの合計値となる。
さらにフレームの受信時間は、フレーム長(ヘッダとフッタとペイロードの合計値)を回線速度で割った値となる。
図8の例では、マスタMにスレーブSn〜スレーブS1がシリアルに接続されているFAネットワークを想定している。
このFAネットワークでは、スレーブSnが、Sn応答が含まれるフレームをマスタに送信し、その後、スレーブS(n−1)〜スレーブS1の各々が前段にあるスレーブに各々の応答が含まれるフレームを送信する。
また、各スレーブは後段のスレーブから受信したフレームを前段のスレーブに転送し、マスタMがスレーブSn〜スレーブS1のフレームを受信する。
マスタMがスレーブSnのフレームの受信を開始してから、次にスレーブSnのフレームの受信を開始するまでが1つの通信周期となる。
次に、通信周期の短縮を実現する従来特許について説明する。
特許文献1では、まずマスタに相当する親局はフレームが到達するまでの伝搬遅延をスレーブに相当する子局に通知する。
これを受け、スレーブに相当する子局は伝搬遅延を考慮し、マスタに相当する親局が受信可能になるタイミングに合わせてフレームを送信する。
これより、フレーム間ギャップを短縮している。
特開平10−093607号公報 第8頁、第2、4図
特許文献1を適用した上り通信では、図8のように毎周期各スレーブからフレームが送信されるため、フレームはスレーブ台数分送信される。
この結果、通信周期に相当する上り通信で1周期分の通信にかかる時間には、スレーブ台数分のフレームのヘッダとフッタの受信時間とスレーブ台数分のフレーム間ギャップが含まれる。
これらヘッダ、フッタ、フレーム間ギャップといった通信のオーバヘッドは、各スレーブからのデータを送信するためには必ずしも必要ではないため、削減することで通信周期の短縮を実現できる。
この発明は、上記のような課題を解決することを主な目的の一つとしており、通信のオーバヘッドを削減して、通信周期を短縮することを主な目的とする。
本発明に係る通信装置は、
上位装置と下位装置に接続され、前記下位装置からデータを受信し、前記上位装置にデータを送信する通信装置であって、
前記下位装置から送信された下位ペイロードデータを受信するデータ受信部と、
前記上位装置に送信するペイロードデータを自装置ペイロードデータとして生成するデータ生成部と、
前記データ生成部により生成された自装置ペイロードデータを格納するデータ格納部と、
所定のデータ送信タイミングごとに、前記データ格納部の自装置ペイロードデータと、前記データ受信部により受信された下位ペイロードデータとを連結するデータ連結部と、
前記自装置ペイロードデータと前記下位ペイロードデータとが連結されている送信データを前記上位装置に送信するデータ送信部とを有することを特徴とする。
本発明によれば、下位ペイロードデータと自装置ペイロードデータを連結し、下位ペイロードデータと自装置ペイロードデータが連結された状態で上位装置に送信されるため、フレーム間ギャップが発生せず、通信周期を短縮することができる。
実施の形態1に係るシステム構成例を示す図。 実施の形態2に係るシステム構成例を示す図。 実施の形態1に係るスレーブのアドレス設定の例を示す図。 実施の形態1に係るフレームの構成例を示す図。 実施の形態1に係るフレームの送信例を示す図。 実施の形態1に係る送信開始時刻の導出原理を説明する図。 実施の形態1に係る受信開始時刻の導出原理を説明する図。 従来技術を説明する図。 実施の形態1に係るフレーム連結部の動作例を示すフローチャート図。 実施の形態1に係るフッタ評価部の動作例を示すフローチャート図。 実施の形態1に係るフッタ付加部の動作例を示すフローチャート図。 実施の形態2に係るフレーム連結部の動作例を示すフローチャート図。 実施の形態2に係るフッタ評価部の動作例を示すフローチャート図。 実施の形態1及び2に係るスレーブ装置のハードウェア構成例を示す図。
以下の実施の形態1及び2では、中継を実施するスレーブが中継時に、他のスレーブからの制御状態データを含むフレームをひとつのフレームにまとめて送信することで、フレーム数を削減し、通信のオーバヘッドの分、通信周期を短縮することを説明する。
初めに、実施の形態1及び2に係るシステムの前提を説明する。
まず、実施の形態1及び2で対象とするネットワークは、マスタを根とするツリートポロジーとする。
マスタは、通信周期をポートごとに定義する。
ネットワーク内の全スレーブには下記の手順でアドレスが付与されているとする。
(1)マスタから見て、最も深い葉のスレーブにアドレス1を割り付ける。
(2)直前にアドレスを割り付けたスレーブから最も近い節点のスレーブの手前のスレーブまで順番にアドレスを割り付ける。
(3)最後にアドレスを割り付けたスレーブの親にあたる節点のスレーブから見て、アドレス割付済みのスレーブを除き、最も深い葉のスレーブにアドレスを割り付け、(2)と同様、節点のスレーブの手前のスレーブまで順番にアドレスを割り付ける。
(4)最後にアドレスを割り付けたスレーブの親にあたる節点のスレーブに、子のスレーブがなくなったら、その節点のスレーブにアドレスを割り付け、(2)と同様、最も近い先祖の節点のスレーブの手前のスレーブまで順番にアドレスを割り付ける。
このとき、マスタ−スレーブ間の接続およびスレーブのアドレスは図3のようになる。
また、各スレーブは、各スレーブの枝に対して、子孫スレーブの接続されている各枝の最若アドレス(値が最も小さいアドレス)が大きい順に枝に1から番号を付ける。
例えば、スレーブS6については、スレーブS5に接続している枝が枝1となり、スレーブS4〜S1に接続している枝が枝2となる。
なお、親のマスタまたはスレーブと接続している枝には番号を付けない。
例えば、スレーブS6については、スレーブS13と接続している枝には番号を付けない。
また、実施の形態1及び2で対象とする通信は、全スレーブからマスタへの周期的な制御状態データの送信である。
この通信で使用するフレームは、図4のよう1つのフレームに複数のスレーブからの制御状態データを格納できるとする。
なお、フレームには、ヘッダ、フッタは必ずしも必要ではなく、制御状態データも該当するデータがない場合はその領域を確保せずフレームを短縮する。
さらに、簡略化のため、すべてのフレームのヘッダサイズ、フッタサイズは同じ値とする。
なお、予めマスタは、以下の情報を記憶しているとする。
(a)スレーブから最初のフレームを受信開始する時刻
また、予めスレーブは、以下の情報を記憶しているとする。
(a)自身のアドレス
(b)自身の各枝の子孫のスレーブの最も若いアドレス(以下、最若アドレス)
(c)ヘッダデータサイズ
(d)自身の制御状態データサイズ
(e)それぞれの子のスレーブからの受信フレームのペイロードサイズ
(f)通信周期
(g)親のマスタまたはスレーブまでの伝搬遅延
(h)子のスレーブからの受信フレームのペイロードを受信してから送信フレーム内の同データ部を送信開始するまでの処理時間(以下、中継遅延)
(i)回線速度
(j)スレーブが送信処理を開始してから実際にスレーブからフレームの送信が開始されるまでの時間(以下、送信処理時間)
上記の前提を踏まえ、実施の形態1及び2を説明する。
実施の形態1.
図1は実施の形態1に係るマスタ装置、スレーブ装置の構成図である。
マスタ装置1(以下、単にマスタともいう)は、周期通信開始前に子のスレーブ装置2(以下、単にスレーブともいう)に受信開始時刻を通知し、周期通信開始後は、毎周期、ネットワーク上の全スレーブからの制御状態データが格納された子のスレーブからのフレームを受信する。
前述のように、本実施の形態ではFAネットワークはマスタ1を根とするツリートポロジーにより構成されている。
各スレーブ2は、通信装置の例である。
また、各スレーブ2に接続されている装置のうちツリーにおいて根側の装置を上位装置とし、葉側の装置を下位装置という。
図1の例では、図の中央に示されているスレーブ2(大きく表示されているスレーブ2)については、マスタ1が上位装置となり、図の右端の各スレーブ2が下位装置となる。
なお、上位装置を親、下位装置を子とも表現する。また、直近の上位装置を含め、より根側(上流側)に位置する装置を祖先とも表現し、また、直近の下位装置を含め、より葉側(下流側)に位置する装置を子孫とも表現する。
各スレーブ2は、周期通信開始前に親のマスタまたはスレーブから通知された受信開始時刻より、自身の送信開始時刻の設定と子のスレーブに受信開始時刻の通知を行い、周期通信開始後は、毎周期、子のスレーブから子のスレーブ及び更に下位のスレーブの制御状態データが含まれるフレームを受信し、自身の制御状態データと受信フレームのペイロードを連結したフレームを親のマスタまたはスレーブに送信する。
次に、マスタ1の内部構成例を説明する。
マスタ1において、受信時刻通知部14は、スレーブから最初のフレームを受信開始する時刻を子のスレーブの送信時刻算出部23に通知する。
受信部10は、制御状態データを含むフレームを受信する。
次に、スレーブ2の内部構成例を説明する。
スレーブ2において、タイマ21は、送信時刻算出部23より通知される送信開始時刻と通信周期と送信処理時間に従い、指定した送信開始時刻にフッタ付加部28からフレームを送信できる送信処理開始タイミング(以下、単に送信タイミングという)をフレーム連結部22に通知する。
フレーム連結部22は、タイマ21から通知される送信タイミングで、ヘッダ生成部25から読み出したヘッダデータ(以下、単にヘッダという)と、データ格納部26から読み出した自身の制御状態データと送信タイミングに合わせてフッタ評価部27より送信される子のスレーブからの受信フレームのペイロードデータ(以下、単にペイロードという)を連結した送信予定のフレームからフッタデータ(以下、単にフッタという)を除いたデータ列を、フッタ付加部28に送信する。
つまり、フレーム連結部22は、ヘッダ生成部25からヘッダを入力し、データ格納部26から自身の制御状態データを入力し、フッタ評価部27から子のスレーブからのペイロード(子の制御状態データ)を入力し、ヘッダと自身の制御状態データと子の制御状態データを連結する。
なお、後述するフッタ付加部28においてフッタが付加されて送信フレームとなる。
また、フレーム連結部22は、自身の制御状態データと子のスレーブの制御状態データを連結し、自身の制御状態データと子のスレーブの制御状態データを送信フレームのペイロードとする。
フレーム連結部22は、データ連結部の例である。
また、自身の制御状態データは自装置ペイロードデータの例であり、子のスレーブの制御状態データは下位ペイロードデータの例である。
送信時刻算出部23は、親のマスタまたはスレーブまでの伝搬遅延、親のマスタまたはスレーブの受信時刻通知部14、24より通知される親のマスタまたはスレーブの受信開始時刻より算出される送信開始時刻を、タイマ21と受信時刻通知部24に通知する。
送信時刻算出部23は、複数の子のスレーブが存在する場合は、スレーブごとにシフトさせた受信開始時刻を算出する。
受信時刻通知部24は、フレームの受信開始時刻(受信要求タイミング)を子のスレーブの送信時刻算出部23に通知する。
上述のように、複数の子のスレーブが存在する場合は、スレーブごとにシフトしている受信開始時刻が通知される(通知する受信開始時刻がスレーブごとにずれている)。
受信開始時刻は、送信時刻算出部23より通知される送信開始時刻、中継遅延、送信待ち合わせ時間、受信待ち合わせ時間から算出される。
送信待ち合わせ時間は、ヘッダデータサイズ、自身の制御状態データサイズ、それぞれの子のスレーブからの受信フレームのペイロードサイズより算出される、送信フレームの送信開始から送信フレーム内のそれぞれの子のスレーブからの受信フレームのペイロードを送信開始するまでの送信時間である。
また、受信待ち合わせ時間は、ヘッダデータサイズより算出される、子のスレーブからの受信フレームの受信開始から受信フレームのペイロードを受信開始するまでの受信時間である。
受信時刻通知部24は、算出された、それぞれの子のスレーブからのフレームの受信開始時刻をそれぞれの子のスレーブの送信時刻算出部23に通知する。
受信時刻通知部24は、タイミング通知部の例である。
ヘッダ生成部25は、親のマスタまたはスレーブのアドレス、自身の制御状態データサイズ、それぞれの子のスレーブからの受信フレームのペイロードのサイズより、ヘッダを生成する。
データ格納部26は、自身の制御状態データを格納する。
フッタ評価部27は、子のスレーブからのフレームを受信する。
また、フッタ評価部27は、受信した受信フレームをフレーム連結部22に送信しつつ、同じ送信フレームにペイロードを格納するすべての子のスレーブからの受信フレームのフッタの正否を評価し、フッタの正否をフッタ付加部28に通知する。
フッタはチェックサム符号といった誤り検出用データであり、フッタ評価部27は、ペイロード内のデータ誤りの有無を評価する。データ誤りがなければフッタが正しいという評価になり、データ誤りがある場合はフッタが正しくないという評価になる。
フッタ評価部27は、データ受信部の例である。
フッタ付加部28は、親のノード(親のスレーブ又はマスタ)にフレームを送信する。
より具体的には、フッタ付加部28は、フレーム連結部22からの送信予定のフレームからフッタを除いたデータ列を入力し、また、フッタ評価部27からフッタの評価結果を入力する。
そして、フッタ付加部28は、フッタ評価部27のフッタ評価において、同じ送信フレームにペイロードを格納するすべての子のスレーブからの受信フレームのフッタが正しい時には正しいフッタを、そうでない場合は意図的に誤ったフッタを生成し、データ列に生成したフッタを付加したフレームを親のノードに送信する。
なお、フッタ付加部28が生成する正しいフッタとは、ペイロード中のデータ誤りの有無を親のノードが正確に判断できるフッタである。一方、誤ったフッタとは、ペイロード中にデータ誤りがあると親のノードが必ず判断することになるフッタである。
フッタ付加部28は、データ送信部の例である。
データ生成部30は、マスタ1に通知する自装置の制御状態を示す制御状態データ(自装置ペイロードデータ)を生成し、データ格納部26に格納する。
次に、本実施の形態に係る動作について説明する。
本実施の形態では、各スレーブの送信開始時刻を指定したあと、各スレーブが周期通信を実施する。
まず、各スレーブの送信開始時刻を指定する手順を説明する。
初めに、マスタ1の受信時刻通知部14は、スレーブから最初のフレームを受信開始する時刻を子のスレーブの送信時刻算出部23に通知する。
スレーブ2の送信時刻算出部23は、図6の関係より、以下の計算式に従って、親のマスタまたはスレーブまでの伝搬遅延Tpropagation_s0、親のマスタまたはスレーブの受信開始時刻Treceive_s0より、送信開始時刻Ttransmit_s0を算出する。
Figure 0005393528
子のスレーブ2の送信時刻算出部23は算出した送信開始時刻Ttransmit_s0をタイマ21と受信時刻通知部24に通知する。
スレーブ2の受信時刻通知部24は、図7の関係より、送信時刻算出部23より通知される送信開始時刻Ttransmit_s0、中継遅延Trelay_s0、送信待ち合わせ時間Tdata_t_s1〜Tdata_t_sn、各枝からの受信フレームの受信待ち合わせ時間Tdata_r_s1〜Tdata_r_sn、すべての子のスレーブに子のスレーブからのフレームの受信開始時刻Treceive_s1〜Treceive_smを算出し、これをそれぞれの子のスレーブに通知する。
i番目の枝の子のスレーブからのフレームの受信開始時刻Treceive_siは下記の計算により算出できる。
Figure 0005393528
ただし、上式において、各変数はそれぞれ以下のとおりとする。
header:ヘッダデータサイズ
s0:自身の制御状態データサイズ
sl:l番目の枝の子のスレーブからの受信フレームのデータ部のサイズ
Tr:回線速度
送信開始時刻が決まると、各スレーブは通信周期に従い、周期通信が実施可能になる。
なお、図7では、スレーブ(S0)にスレーブ(S1)とスレーブ(S2)が接続され、スレーブ(S0)とスレーブ(S1)との接続が枝1であり、スレーブ(S0)とスレーブ(S2)との接続が枝2である。
なお、図7のスレーブ(S0)、スレーブ(S1)及びスレーブ(S2)の表記は、他の図とは関連していない。
スレーブ(S0)は、Ttransmit_s0にて上位装置に対してフレームの送信(ヘッダの送信)を開始する。
スレーブ(S0)は、ヘッダに続けてスレーブ(S0)の制御状態を示すペイロードを送信する。また、スレーブ(S0)は上位装置へのフレームの送信と並行して、スレーブ(S1)及びスレーブ(S2)からのフレームの受信を行う。
より具体的には、上位装置へヘッダを送信しているときに並行してスレーブ(S1)からのフレームのヘッダの受信を開始し(Treceive_s1)、上位装置へペイロード(S0の制御状態)を送信している間にスレーブ(S1)からのヘッダの受信を完了し、スレーブ(S1)からのペイロード(S1の制御状態)の受信を開始する。
スレーブ(S1)からのヘッダの受信に要する時間が、Tdata_r_s1である。
また、上位装置へのヘッダの送信開始からペイロード(S0の制御状態)の送信完了までに要する時間(ペイロード(S1の制御状態)の送信が開始するまでの時間)が、Tdata_t_s1である。
また、ペイロード(S0の制御状態)の送信が完了すると、スレーブ(S1)からのペイロード(S1の制御状態)の受信と並行して、受信した部分から順にスレーブ(S1)からのペイロード(S1の制御状態)を上位装置に送信する。
スレーブ(S1)からのペイロード(S1の制御状態)の受信を開始してから上位装置への送信を開始するまでの時間がTrelay_s0である。
また、スレーブ(S0)は、スレーブ(S1)からのペイロード(S1の制御状態)を上位装置に送信している間に、スレーブ(S1)からのフッタを受信し、フッタの受信を完了する。
また、スレーブ(S0)は、ペイロード(S0の制御状態)の送信及びスレーブ(S1)からのペイロード(S1の制御状態)の受信と並行して、スレーブ(S2)からもフレームのヘッダの受信を開始する(Treceive_s2)。
スレーブ(S2)からのヘッダの受信に要する時間が、Tdata_r_s2である。
また、スレーブ(S0)は、スレーブ(S1)からのペイロード(S1の制御状態)の上位装置への送信が完了したら、スレーブ(S2)からのペイロード(S2からの制御状態)を受信しながら、受信した部分から順にスレーブ(S2)からのペイロード(S2からの制御状態)を上位装置に送信する。
スレーブ(S2)からのペイロード(S2の制御状態)の受信を開始してから上位装置への送信を開始するまでの時間がTrelay_s0である。
また、上位装置へのヘッダの送信開始からペイロード(S1の制御状態)の送信完了までに要する時間(ペイロード(S2の制御状態)の送信が開始するまでの時間)が、Tdata_t_s2である。
そして、スレーブ(S0)は、スレーブ(S2)からのペイロード(S2からの制御状態)の送信が完了すると、フッタを送信して1つのフレームの送信を完了する。
このような送信及び受信の時間関係において、上記の式により、フレームの受信開始時刻が算出される。
次に、各スレーブが周期通信を実施する手順を図9〜図11を参照して説明する。
図9はフレーム連結部22の動作例(データ連結ステップ)を示し、図10はフッタ評価部27の動作例(データ受信ステップ)を示し、図11はフッタ付加部28の動作例(データ送信ステップ)を示す。
各スレーブは周期的に、フレームを送信する。
フッタ評価部27は、図10に示すように、子のスレーブからのフレームを受信し(S1001)、受信した受信フレームの複製を生成し、一方の受信フレームをフレーム連結部22に送信する(S1002)。
そして、フッタ評価部27は、他方の受信フレームを用いてフッタの正否を評価する(S1003)。より具体的には、フッタ評価部27は、送信フレームにペイロードを格納するすべての子のスレーブからの受信フレームのフッタの正否を評価する。
つまり、当該スレーブに複数の子のスレーブがパラレルに接続されている場合は、複数の受信フレームを受信することになるが、フッタ評価部27はこれら複数の受信フレームに含まれている子のスレーブの制御状態データを1つのフレームのペイロードとして統合するため、フレームごとにフッタの正否を評価する。
そして、フッタ評価部27は、フッタの正否の評価結果をフッタ付加部28に通知する(S1004)。
フッタ評価部27の動作と並行して、タイマ21はフレーム連結部22に送信タイミングを通知する。
タイマ21からの送信タイミングの通知前に、ヘッダ生成部25は次の周期に送信するフレームのヘッダを生成している。また、同様に、データ生成部30も送信タイミングの通知前に、次の周期に送信する自身の制御状態データを生成し、データ格納部26に格納している(データ生成ステップ、データ格納ステップ)。
フレーム連結部22は、図9に示すように、タイマ21から送信タイミングを通知されると(S901)、ヘッダ生成部25からヘッダを読み出し(S902)、また、データ格納部26から自身の制御状態データを読み出す(S903)。
次に、フレーム連結部22は、ヘッダ生成部25から読み出したヘッダと、データ格納部26から読み出した自身の制御状態データを連結する(S904)。
また、フレーム連結部22は、フッタ評価部27から子のフレームを入力する度に(S905でYES)、入力したフレーム中の制御状態データを最後尾の制御状態データに連結する動作(S906)を繰り返しながら、ヘッダ、制御状態データを順にフッタ付加部28に出力する(S907)。フレーム連結部22からフッタ付加部28に出力されるデータ列は、親のスレーブ又はマスタに送信予定のフレームからフッタを除いたデータ列である。
また、前述したように、子のスレーブからは、送信タイミングに合わせてフレームが送信されるので、フレーム連結部22は、自身の制御状態データに子の制御状態データを連結できるタイミングでフッタ評価部27より子のスレーブからの制御状態データを受け取ることができる。
なお、子のフレームに含まれるヘッダは、フレーム連結部22、フッタ評価部27のいずれが取り除いてもよいが、フレーム連結部22からフッタ付加部28に出力されるデータ列には子のフレーム中のヘッダは含まれない。
そして、フレーム連結部22は、全てのデータ列をフッタ付加部28に出力するまでS905以降の処理を繰り返し、全てのデータ列を出力したら、処理を終了する。
フッタ付加部28は、図11に示すように、フッタ評価部27からフッタの評価結果を入力し(S1101)、また、フレーム連結部22から送信予定のフレームからフッタを除いたデータ列を入力する(S1102)。
また、フッタ付加部28は、フッタ評価部27からのフッタの評価結果を確認し(S1103)、同じ送信フレームにペイロードを格納するすべての子のスレーブからの受信フレームのフッタが正しい時(S1103でYES)には、フレーム連結部22から入力したデータ列に基づき、正しいフッタを生成し、生成した正しいフッタをデータ列に付加する(S1104)。
一方、いずれかのフッタが正しくないという評価結果の場合(S1103でNO)は、フッタ付加部28は、意図的に誤ったフッタを生成し、生成した誤ったフッタをデータ列に付加する(S1105)。
そして、フッタ付加部28は、フッタが付加されたフレームを親のノードに送信する(S1106)。
この結果、本実施の形態では、上り通信は図5のように実施される。
図5は、スレーブS4において枝が分岐しており、スレーブS2−スレーブS1に至る枝と、スレーブS3に至る枝の2つがある。
また、図5では、図の簡明化のために、上段では、スレーブS3からスレーブS4へのフレームとスレーブS4からマスタMへのフレームのみを表している。
しかしながら、実際には、スレーブS3からスレーブS4へのフレーム(S3制御情報が含まれる)の送信と並行して、スレーブS1からスレーブS2へフレーム(S1制御情報が含まれる)が送信され、スレーブS2からスレーブS4へフレーム(S1制御情報とS2制御情報が含まれる)が送信されている。図5の上段では、スレーブS1からスレーブS2へのフレーム、スレーブS2からスレーブS4へのフレームの図示を省略している。
スレーブS4は、自身の制御情報にスレーブS3から受信したS3制御情報とスレーブS2から受信したS2制御情報とS1制御情報を連結したフレームをマスタMに送信する。
同様に、図5の下段では、スレーブS1からスレーブS2へのフレーム、スレーブS2からスレーブS4へフレーム、スレーブS4からマスタMへのフレームのみを表しているが、並行してスレーブS3からスレーブS4へのフレーム送信が行われている(図5の下段では図示を省略している)。
図5に示すように、本実施の形態によれば、マスタMはフレーム間ギャップなくスレーブS1〜S4の制御情報を連続して受信することができ、また、スレーブS1〜S3がフレームを送信する際に付加したヘッダ及びフッタが省略されているので、ヘッダ及びフッタ分の通信オーバヘッドを削減している。
通信周期TCycはマスタMでフレームを受信する間隔となり、本実施の形態では、以下の式で表される。
Figure 0005393528
なお、上式において、各変数はそれぞれ以下のとおりとする。
header:ヘッダデータサイズ
footer:フッタデータサイズ
gap:フレーム間ギャップ
status_i:アドレスiのスレーブの制御状態データサイズ
n:スレーブ台数
これに対して、特許文献1での通信周期T’Cycは以下の式で表される。
Figure 0005393528
このため、本実施の形態によれば、通信周期を(Dheader+Dfooter+Dgap)×(n−1)/Tr
だけ短縮できる。
つまり、本実施の形態に係るスレーブ装置では、子のスレーブからのペイロードと自装置のペイロードを連結し、子のスレーブのペイロードと自装置のペイロードが連結された状態で親のノードに送信されるため、フレーム間ギャップが発生せず、通信周期を短縮することができる。
また、各スレーブにおいて、子のスレーブからのフレームに含まれているヘッダ及びフッタを除去することにより、マスタでは不要なヘッダ、フッタを省略することができ、これによっても通信周期を短縮することができる。
本実施の形態ではその他のメリットとして、以下3件が挙げられる。
(1)各スレーブに所定のアドレス割り付けを実施することで、スレーブは枝1に接続されているスレーブ台数を(自身のアドレス−枝1の最若アドレス)より算出でき、枝i(ただし、i≧2)に接続されているスレーブ台数を{枝(i−1)の最若アドレス−枝iの最若アドレス}より算出できる。この結果、各スレーブからの制御状態データサイズが同じである場合、受信フレームのペイロードサイズの管理が容易になる。
(2)子のスレーブからフッタの誤ったフレームを受信した場合、送信フレームのフッタを誤ったものにすることで、先祖のマスタもしくはスレーブにペイロードに誤ったデータが含まれている可能性を通知することができるようになる。
(3)マスタはフレームを受信完了した段階で、初めて各スレーブからの制御状態データを取り扱う。この結果、フレームの先頭に連結された制御状態データほど、取り扱いまでの時間は長く、データの鮮度が落ちる。また、階層の深いスレーブほど、中継遅延、伝搬遅延により送信から到達までにかかる時間が長くなり、同様にデータの鮮度が落ちる。定義した通信タイミングでは、階層の深いスレーブからの制御状態データほど、フレームの後部に連結されるため、突出して鮮度の低いデータがなくなる。この結果、ほぼ同タイミングでの制御状態データが得られるため、データ取得時刻なしでもスレーブ間の連動制御実施時の精度が向上する。
例えば、図5の例において、S1制御情報はスレーブS2、スレーブS4を経由してマスタMに到達するため、送信元のスレーブから送出された後マスタMに到達するまでの時間がS4制御情報に比べて長い。このため、スレーブ1はスレーブ1〜スレーブ4間の遅延を考慮した送信タイミングでS1制御情報を送信している。
ここで、図5の順序を代えて、例えば、スレーブS4からS1制御情報が最初に送信されるようにすると、スレーブ1は図5に示されるS1制御情報の送信タイミングよりも大幅に早期にS1制御情報を送信しなければならない。
しかしながら、本実施の形態では、スレーブS4からのペイロードの送信順序をS1制御情報を最後にし、スレーブS4にS1制御情報が受信する前にS4制御情報〜S2制御情報を送信することで、スレーブS1〜スレーブS4間の遅延を吸収し、突出して鮮度が低いデータが出るのを回避している。
以上、本実施の形態では、
ツリートポロジーを構成し、周期通信を実施するネットワークにおいて、
予め送信開始時刻、通信周期、すべての子の通信装置からの受信フレームのヘッダサイズ、ペイロードサイズを記憶しており、
送信開始時刻と通信周期と送信処理時間に従い、フレーム連結部に周期的に送信タイミングを通知するタイマと、
タイマから通知される送信タイミングで、送信タイミングに合わせて受信する子の通信装置からの受信フレームのペイロードを連結し、送信フレームとして送信するフレーム連結部
を備える通信装置を説明した。
また、本実施の形態では、
送信開始時刻の算出のために、
予め親の通信装置までの伝搬遅延、子の通信装置からの受信フレームのペイロードを受信してから送信フレーム内の同データ部を送信開始するまでの処理時間、送信フレームのヘッダサイズを記憶しており、
親の通信装置までの伝搬遅延と、親の通信装置の受信時間通知部より通知される親の通信装置の受信開始時刻より、算出される送信開始時刻をタイマと受信時刻算出部に通知する送信時刻算出部と、
送信時刻算出部より通知される送信開始時刻と、
子の通信装置からの受信フレームのペイロードを受信してから送信フレーム内の同データ部を送信開始するまでの処理時間と、
送信フレームのヘッダサイズ、子の通信装置からの受信フレームのペイロードサイズより算出される、送信フレームの送信開始から送信フレーム内の子の通信装置からの受信フレームのペイロードを送信開始するまでの送信時間と、
子の通信装置からの受信フレームのヘッダサイズより算出される、子の通信装置からの受信フレームの受信開始から受信フレームのペイロードを受信開始するまでの受信時間から算出される受信開始時刻を、それぞれの子の通信装置の送信時刻算出部に通知する受信時刻通知部と、
送信時刻算出部より通知される送信開始時刻と通信周期と送信処理時間に従い、フレーム連結部に周期的に送信タイミングを通知するタイマ
を備える通信装置を説明した。
また、本実施の形態では、
送信先アドレス、フレーム長等を含むヘッダを備えるフレームを取り扱うために、
予め親の通信装置のアドレス、送信フレームのヘッダサイズを記憶しており、
親の通信装置のアドレス、送信フレームのヘッダサイズ、子の通信装置からの受信フレームのペイロードサイズよりヘッダを生成するヘッダ生成部と、
タイマから通知される送信タイミングで、ヘッダ生成部から読み出したヘッダと送信タイミングに合わせて受信する子の通信装置からの受信フレームのペイロードを連結し、送信フレームとして送信するフレーム連結部
を備える通信装置を説明した。
また、本実施の形態では、
自身からの通信を実現するために、
自身の送信データを格納するデータ格納部と、
タイマから通知される送信タイミングで、データ格納部から読み出した自身の送信データと送信タイミングに合わせて受信する子の通信装置からの受信フレームのペイロードを連結し、送信フレームとして送信するフレーム連結部
を備える通信装置を説明した。
また、本実施の形態では、
チェックサム符号等を含むフッタを備えるフレームを取り扱うために、
子のスレーブからの受信フレームをフレーム連結部に送信しつつ、同じ送信フレームにペイロードを格納するすべての子のスレーブからの受信フレームのフッタの正否を評価し、フッタの正否をフッタ付加部に通知するフッタ評価部と、
タイマから通知される送信タイミングで、送信タイミングに合わせてフッタ評価部より送信される子の通信装置からの受信フレームのペイロードを連結した送信予定のフレームからフッタ部を除いたデータ列を、フッタ付加部に送信するフレーム連結部と、
フレーム連結部からの送信予定のフレームからフッタ部を除いたデータ列に、フッタ評価部からのフッタの正否に応じて、同じ送信フレームにペイロードを格納するすべての子のスレーブから受信したフレームのフッタが正しい時には正しいフッタを、そうでない場合は意図的に誤ったフッタを生成しつつ、データ列に生成したフッタを付加したフレームを送信するフッタ付加部
を備える通信装置を説明した。
実施の形態2.
以上の実施の形態1では、中継を実施するスレーブでは各スレーブの通信タイミングを定義し、スレーブ内でフレームをバッファリングさせずに1つのフレームとして連結し、送信する方法であった。
本実施の形態では、次に予め子のスレーブからフレームを受信しておき、タイマの指定する送信タイミングで、フレームを送信する例を示す。
図2は、実施の形態2におけるマスタ、スレーブの構成図である。
図1と同じ符号の要素は、図1で示したものと同様であるため説明を省略する。
図2では、子のスレーブからの1周期分のフレームを格納するバッファ29が追加されている。バッファ29はデータ蓄積部の例である。
本実施の形態では、タイマ21は、任意のタイミングで開始する通信周期に従い、フレーム連結部22に送信タイミングを通知する。
また、フレーム連結部22は、タイマ21から通知される送信タイミングで、バッファ29に格納されている子のスレーブからの受信フレームのペイロードとデータ格納部26から読み出した自装置の制御状態データとヘッダ生成部25から読み出したヘッダを連結し、連結したデータ列をフッタ付加部28に出力する。
また、本実施の形態では、送信時刻算出部23と受信時刻通知部24は不要となる。
次に、本実施の形態に係る動作を図12及び図13を参照して説明する。
図12は本実施の形態に係るフレーム連結部22の動作(データ連結ステップ)を示し、図13は本実施の形態に係るフッタ評価部27の動作(データ受信ステップ)を示す。
なお、図12において図9と同じステップ番号が付されているステップは図9と同じ処理が行われ、また、図13において図10と同じステップ番号が付されているステップは図10と同じ処理が行われる。
また、フッタ付加部28の動作(データ送信ステップ)は実施の形態1で示した図11と同様である。
各スレーブは周期的に、フレームを送信する。
フレームを受信した親のスレーブのフッタ評価部27は(S1001)、子のスレーブからの受信フレームを複製し、一方のフレームをバッファ29に送信し(S1301)、他方のフレームを用いてフッタの正否を評価する(S1003)。この処理は、実施の形態1と同様に、同じ送信フレームにペイロードを格納するすべての子のスレーブからの受信フレームのフッタの正否を評価する。
その後、フッタ評価部27は、フッタの正否の評価結果をフッタ付加部28に通知する(S1004)。
タイマ21はフレーム連結部22に任意のタイミングで送信タイミングを通知し、その後、通信周期に従い、周期的に送信タイミングを通知する。
タイマ21からの送信タイミングの通知前に、ヘッダ生成部25は次の周期に送信するフレームのヘッダを生成している。また、同様に、データ生成部30も送信タイミングの通知前に、次の周期に送信する自身の制御状態データを生成し、データ格納部26に格納している(データ生成ステップ、データ格納ステップ)。
フレーム連結部22は、図12に示すように、タイマ21から送信タイミングを通知されると(S901)、ヘッダ生成部25からヘッダを読み出し(S902)、また、データ格納部26から自身の制御状態データを読み出す(S903)。
次に、フレーム連結部22は、バッファ29から子のスレーブからの受信フレームの受信を開始する(S1201)。
そして、フレーム連結部22は、ヘッダ生成部25から読み出したヘッダと、データ格納部26から読み出した自身の制御状態データとバッファ29から読み出した子のスレーブからの受信フレームのペイロードを順番に連結する(S1202)。
最後に、フレーム連結部22は、連結したデータ列をフッタ付加部28に出力する(S907)。フレーム連結部22からフッタ付加部28に出力されるデータ列は、親のスレーブ又はマスタに送信予定のフレームからフッタを除いたデータ列である。
フッタ付加部28は、実施の形態1と同様に、フレーム連結部22からの送信予定のフレームからフッタを除いたデータ列に、フッタ評価部27からのフッタの正否に応じて、同じ送信フレームにペイロードを格納するすべての子のスレーブからの受信フレームのフッタが正しい時には正しいフッタを、そうでない場合は意図的に誤ったフッタを生成しつつ、データ列に生成したフッタを付加したフレームを送信する。
以上の手順により、本実施の形態においても、実施の形態1と同等の通信周期を実現できる。
また、本実施の形態によれば、送信開始時刻を厳密に管理しなくても、短縮した周期通信を実現することができる。
以上、本実施の形態では、
厳密な送信時刻管理を回避するために、
予め通信周期を記憶しており、
通信周期に従い、フレーム連結部に周期的に送信タイミングを通知するタイマと
子の通信装置からの受信フレームを格納するバッファと、
タイマから通知される送信タイミングで、バッファから子の通信装置からのすべての受信フレームを読み出し、子の通信装置からのすべての受信フレームのペイロードを連結し、送信フレームとして送信するフレーム連結部
を備える通信装置を説明した。
最後に、実施の形態1及び2に示したスレーブ装置2のハードウェア構成例について説明する。
図14は、実施の形態1及び2に示すスレーブ装置2のハードウェア資源の一例を示す図である。
なお、図14の構成は、あくまでもスレーブ装置2のハードウェア構成の一例を示すものであり、スレーブ装置2のハードウェア構成は図14に記載の構成に限らず、他の構成であってもよい。
図14において、スレーブ装置2は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906と接続していてもよい。また、磁気ディスク装置920の代わりに、フラッシュメモリ、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態1及び2で説明した「データ格納部」及び実施の形態2で説明した「バッファ」は、RAM914、磁気ディスク装置920等により実現される。
通信ボード915、キーボード902、マウス903、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
通信ボード915は、図1に示すように、ネットワークに接続されている。例えば、通信ボード915は、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)、SAN(ストレージエリアネットワーク)などに接続されていても構わない。
磁気ディスク装置920には、オペレーティングシステム921(OS)プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921を利用しながら実行する。
プログラム群923のプログラムには、例えば、ラダープログラムが含まれる。
また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
スレーブ装置2の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
上記プログラム群923には、実施の形態1及び2の説明において「〜部」(「データ格納部」以外、以下同様)として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、実施の形態1及び2の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の連結」、「〜の評価」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1及び2で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
また、実施の形態1及び2の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
すなわち、実施の形態1及び2で説明したフローチャートに示すステップ、手順、処理により、本発明に係る通信方法を実現することができる。
また、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1及び2の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1及び2の「〜部」の手順や方法をコンピュータに実行させるものである。
このように、実施の形態1及び2に示すスレーブ装置2は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
1 マスタ装置、2 スレーブ装置、10 受信部、14 受信時刻通知部、21 タイマ、22 フレーム連結部、23 送信時刻算出部、24 受信時刻通知部、25 ヘッダ生成部、26 データ格納部、27 フッタ評価部、28 フッタ付加部、29 バッファ、30 データ生成部。

Claims (9)

  1. 上位装置と下位装置に接続され、前記下位装置からデータを受信し、前記上位装置にデータを送信する通信装置であって、
    前記下位装置から送信された下位ペイロードデータと、前記下位ペイロードデータのデータ誤り検出のためのフッタデータとを受信し、前記フッタデータを用いて前記下位ペイロードデータにおけるデータ誤りの有無を判断するデータ受信部と、
    前記上位装置に送信するペイロードデータを自装置ペイロードデータとして生成するデータ生成部と、
    前記データ生成部により生成された自装置ペイロードデータを格納するデータ格納部と、
    所定のデータ送信タイミングごとに、前記データ格納部の自装置ペイロードデータと、前記データ受信部により受信された下位ペイロードデータとを連結するデータ連結部と、
    前記データ受信部により前記下位ペイロードデータにデータ誤りがないと判断された場合に、前記上位装置が前記自装置ペイロードデータと前記下位ペイロードデータにおけるデータ誤りの有無を正確に判断できる新たなフッタデータを生成し、前記データ受信部により前記下位ペイロードデータにデータ誤りがあると判断された場合に、前記上位装置が前記自装置ペイロードデータと前記下位ペイロードデータにデータ誤りが存在すると判断することになる新たなフッタデータを生成し、生成した新たなフッタデータを前記自装置ペイロードデータと前記下位ペイロードデータに連結し、前記自装置ペイロードデータと前記下位ペイロードデータと前記新たなフッタデータとが連結されている送信データを前記上位装置に送信するデータ送信部とを有することを特徴とする通信装置。
  2. 上位装置と下位装置に接続され、前記下位装置からデータを受信し、前記上位装置にデータを送信する通信装置であって、
    前記下位装置から送信された下位ペイロードデータを受信するデータ受信部と、
    前記上位装置に送信するペイロードデータを自装置ペイロードデータとして生成するデータ生成部と、
    前記データ生成部により生成された自装置ペイロードデータを格納するデータ格納部と、
    所定のデータ送信タイミングごとに、前記データ格納部の自装置ペイロードデータと、前記データ受信部により受信された下位ペイロードデータとを連結するデータ連結部と、
    前記自装置ペイロードデータと前記下位ペイロードデータとが連結されている送信データを前記上位装置に送信するデータ送信部とを有し、
    前記データ受信部は、
    データ送信タイミング時の前記データ連結部の処理と並行して前記下位装置から下位ペイロードデータを受信し、
    前記データ連結部は、
    データ送信タイミングごとに、前記データ格納部から前記自装置ペイロードデータを読み出すとともに、自身の処理と並行して前記データ受信部により受信された下位ペイロードデータを前記自装置ペイロードデータに連結し、
    前記通信装置は、更に、
    前記データ受信部が前記データ連結部の処理に並行して下位ペイロードデータを受信できるタイミングを前記下位装置に受信要求タイミングとして通知し、通知した受信要求タイミングに適合させた下位ペイロードデータの送信を前記下位装置に行わせるタイミング通知部を有することを特徴とする通信装置。
  3. 前記データ受信部は、
    前記下位装置から、前記下位ペイロードデータにヘッダデータが付加されている下位フレームデータを受信し、
    前記データ連結部は、
    データ送信タイミングごとに、前記下位フレームデータに付加されているヘッダデータとは異なる新たなヘッダデータと、前記データ格納部の自装置ペイロードデータと、前記下位フレームデータ内の前記下位ペイロードデータとを連結し、
    前記データ送信部は、
    前記新たなヘッダデータと前記自装置ペイロードデータと前記下位ペイロードデータと前記新たなフッタデータとが連結されている送信データを前記上位装置に送信することを特徴とする請求項1に記載の通信装置。
  4. 前記通信装置は、
    複数の下位装置に接続されており、
    前記データ受信部は、
    データ送信タイミング時の前記データ連結部の処理と並行して前記複数の下位装置から複数の下位ペイロードデータを受信し、
    前記データ連結部は、
    データ送信タイミングごとに、前記データ格納部から前記自装置ペイロードデータを読み出すとともに、自身の処理と並行して前記データ受信部により受信された複数の下位ペイロードデータを前記自装置ペイロードデータに連結することを特徴とする請求項に記載の通信装置。
  5. 前記通信装置は、更に、
    前記データ受信部が前記データ連結部の処理に並行して下位ペイロードデータを受信できるタイミングを下位装置ごとにシフトさせて下位装置ごとに受信要求タイミングとして通知し、通知した受信要求タイミングに適合させた下位ペイロードデータの送信をそれぞれの下位装置に行わせるタイミング通知部を有することを特徴とする請求項に記載の通信装置。
  6. 前記通信装置は、更に、
    前記データ受信により受信された下位ペイロードデータを蓄積するデータ蓄積部を有し、
    前記データ連結部は、
    データ送信タイミングごとに、データ送信タイミング時点で前記データ蓄積部に蓄積されている下位ペイロードデータと前記データ格納部の自装置ペイロードデータとを連結することを特徴とする請求項1又は2に記載の通信装置。
  7. 前記データ受信部は、
    前記下位装置で生成されたペイロードデータと前記下位装置に接続しているより下位の装置で生成されたペイロードデータが含まれている下位ペイロードデータを受信することを特徴とする請求項1又は2に記載の通信装置。
  8. 前記通信装置は、
    複数の下位装置に接続されており、
    前記データ受信部は、
    前記複数の下位装置から複数の下位ペイロードデータを受信し、
    前記データ連結部は、
    データ送信タイミングごとに、前記データ格納部の自装置ペイロードデータと前記受信部により受信された複数の下位ペイロードデータとを連結することを特徴とする請求項1又は2に記載の通信装置。
  9. コンピュータを、請求項1又は2に記載された通信装置として機能させることを特徴とするプログラム。
JP2010035946A 2010-02-22 2010-02-22 通信装置及びプログラム Active JP5393528B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010035946A JP5393528B2 (ja) 2010-02-22 2010-02-22 通信装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010035946A JP5393528B2 (ja) 2010-02-22 2010-02-22 通信装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2011172142A JP2011172142A (ja) 2011-09-01
JP5393528B2 true JP5393528B2 (ja) 2014-01-22

Family

ID=44685768

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010035946A Active JP5393528B2 (ja) 2010-02-22 2010-02-22 通信装置及びプログラム

Country Status (1)

Country Link
JP (1) JP5393528B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020178879A1 (ja) * 2019-03-01 2020-09-10 三菱電機株式会社 スレーブ装置およびスレーブプログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5866101B2 (ja) * 2012-04-20 2016-02-17 三菱電機株式会社 中継装置及び中継方法及びプログラム
JP2017063390A (ja) * 2015-09-25 2017-03-30 トヨタ自動車株式会社 通信方法
CN111083208B (zh) 2019-12-03 2022-10-28 华为技术有限公司 网络结构、网络中网元之间的报文发送方法及接收方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3852067B2 (ja) * 1999-06-08 2006-11-29 株式会社山武 通信システム
DE102006013872A1 (de) * 2006-03-23 2007-09-27 Robert Bosch Gmbh Verfahren und System zum Übertragen von Daten
JP4343212B2 (ja) * 2006-11-27 2009-10-14 ファナック株式会社 データ送受信方式
JP4621837B2 (ja) * 2008-07-10 2011-01-26 国立大学法人名古屋大学 中継装置、通信システム及び通信方法
JP5455684B2 (ja) * 2010-01-29 2014-03-26 三菱電機株式会社 通信装置及び通信方法及びプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020178879A1 (ja) * 2019-03-01 2020-09-10 三菱電機株式会社 スレーブ装置およびスレーブプログラム
CN113519142A (zh) * 2019-03-01 2021-10-19 三菱电机株式会社 从站装置及从站程序
DE112019006762T5 (de) 2019-03-01 2021-10-28 Mitsubishi Electric Corporation Slave-vorrichtung und slave-programm

Also Published As

Publication number Publication date
JP2011172142A (ja) 2011-09-01

Similar Documents

Publication Publication Date Title
JP6408461B2 (ja) デバイスを同期するための機構、システム、及び方法
JP5255579B2 (ja) 車内データ中継装置、車両制御システム
KR101745456B1 (ko) HiL 시뮬레이션 환경에서 대용량 데이터를 전송하기 위한 전자제어 장치, 이를 포함하는 시스템 및 그 방법
JP5393528B2 (ja) 通信装置及びプログラム
JP2009225441A (ja) 通信装置におけるデータ検索装置及びゲートウェイ装置
JP2018056682A (ja) 通信方法
JP2009246453A (ja) エミュレータ装置
US9955402B2 (en) Information processing method, communications method, communications node, system, and computer product
US20180241700A1 (en) Transfer device, transfer system, and transfer method
US10728178B2 (en) Apparatus and method for distribution of congestion information in a switch
US9210093B2 (en) Alignment circuit and receiving apparatus
JP2005086683A (ja) 誤り復号回路、データバス制御方法、及びデータバスシステム
CN113821076B (zh) 基于虚拟时钟的虚拟仿真系统及同步方法
JP5376990B2 (ja) 中継装置および中継装置の中継方法
CN110548285B (zh) 游戏通信控制方法及装置、介质及电子设备
US10397174B2 (en) Message delivery in a message system
JP3834318B2 (ja) データ駆動プロセッサ用のデータ入力装置、データ出力装置およびそれらの方法
JP2016146605A (ja) 車載通信装置
US10067816B2 (en) Model checking apparatus and method, and storage medium having program stored therein
KR101748080B1 (ko) 해양 IoT 플랫폼을 위한 CAN 버스 기반의 데이터 송수신 시스템 및 방법
CN115250251B (zh) 片上网络仿真中的传输路径规划方法、装置、电子设备及计算机可读存储介质
CN116107666B (zh) 程序业务流信息生成方法、装置、电子设备和计算机介质
CN116346711B (zh) 基于行为树的路由协议表征方法、介质及通信方法
JP2019046379A (ja) 計算ノード装置、並列計算機システム、および計算ノード装置の制御方法
JP2012010108A (ja) データ処理回路及びデータ処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130730

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130828

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: 20130917

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131015

R150 Certificate of patent or registration of utility model

Ref document number: 5393528

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250