JP2010251929A - Network i/o system - Google Patents
Network i/o system Download PDFInfo
- Publication number
- JP2010251929A JP2010251929A JP2009097410A JP2009097410A JP2010251929A JP 2010251929 A JP2010251929 A JP 2010251929A JP 2009097410 A JP2009097410 A JP 2009097410A JP 2009097410 A JP2009097410 A JP 2009097410A JP 2010251929 A JP2010251929 A JP 2010251929A
- Authority
- JP
- Japan
- Prior art keywords
- cycle
- time information
- timing
- network
- request frame
- 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
Links
Images
Landscapes
- Small-Scale Networks (AREA)
- Communication Control (AREA)
Abstract
Description
本発明は、ネットワークを経由してデバイスへの入出力を行うネットワークI/Oシステムに関する。 The present invention relates to a network I / O system that performs input / output to / from a device via a network.
車輌、ロボットなどの分野における組込み制御には、センサやアクチュエータなど、多数のデバイスを統合的に運用できる制御システムが求められる。そのような制御システムの構成方法としては、1つの電子制御ユニット(ECU(Electronic Control Unit))と多数のデバイスを信号線で個別に接続する方式がある。しかし、この方式では、配線量や配線長が増大し、コストアップや信頼性・保守性の低下を招いてしまう。そのため、近年では、(1)処理系毎に設けた複数のECUを、管轄するデバイスの近くにそれぞれ分散配置し、各ECU間を通信ネットワークで結ぶことによって協調動作を行う分散制御方式や、(2)多数のデバイスを通信ネットワークで結び、その通信ネットワークを介してECUから各デバイスにアクセスするネットワークI/O方式などの省配線技術が多く使われるようになった。 For embedded control in the fields of vehicles, robots, etc., a control system that can operate a large number of devices such as sensors and actuators in an integrated manner is required. As a method for configuring such a control system, there is a system in which one electronic control unit (ECU (Electronic Control Unit)) and a large number of devices are individually connected by signal lines. However, this method increases the amount of wiring and the wiring length, leading to an increase in cost and a decrease in reliability and maintainability. Therefore, in recent years, (1) a distributed control method in which a plurality of ECUs provided for each processing system are distributed and arranged near the devices under their jurisdiction and the ECUs are connected by a communication network to perform a cooperative operation, 2) Wire-saving technology such as a network I / O method in which a large number of devices are connected by a communication network and each device is accessed from the ECU via the communication network has come to be frequently used.
この種の通信ネットワークのうち、車輌制御などの分野で広く使われているものとしてCAN(Controller Area Network:ISO 11898)がある(非特許文献1等参照)。CANは、通信を必要とする事象が発生したタイミングごとに通信を開始するイベントトリガ型のネットワークである。CANにおける通信の基本単位はフレームと呼ばれるデータ列であり、その中にはフレームの優先度を示す識別子(ID)が含まれている。優先度の異なる2つ以上のフレームの間で競合が発生した場合、最も優先度の高いフレームがデータ送信を継続する。一方、低優先度のフレームは、競合を検出した時点でデータ送信を中断し、高優先度フレームの通信が完了した時点で再度送信を試みる。この方式では、ネットワーク上の通信が混雑してくると、優先度の低いフレームは、自フレームより優先度の高い送信待ちフレームが全て送信されるまで送信されないため、ネットワークの状態によって通信遅延時間が大きく変動するという問題がある。すなわち、イベントトリガ型のネットワークでは、同一ネットワーク上に複数の端末が存在すると、一の端末は他の端末がどのタイミングで通信を開始するか知ることができない。そのため、2つ以上の端末が同時に通信を開始してしまうアクセス競合によって、通信を必要とする事象が発生してからフレームを送信するまでの間に不規則な遅れ時間が生じ、通信遅延時間が変動する可能性がある。
Among these types of communication networks, CAN (Controller Area Network: ISO 11898) is widely used in fields such as vehicle control (see Non-Patent
このようなアクセス競合の問題を解決した通信ネットワークの1つとして、FlexRay(登録商標)がある(非特許文献1等参照)。FlexRayにおける最も大きなアクセス単位は、一定の大きさを持つ固定長のコミュニケーションサイクルである。このコミュニケーションサイクルは、複数のタイムスロット(スロット)で構成されており、この各タイムスロットの中であらかじめ通信内容が定められた通信フレームが送信されるようになっている。これによりFlexRayを利用した通信は、コミュニケーションサイクルのサイクル長で定まる時間間隔で周期的に実行される。すなわち、FlexRayは、あらかじめ通信内容がスケジューリングされたタイムトリガ型のネットワークであり、アクセス競合に起因してフレームの送信タイミングが変動しないため、通信遅延時間を一定に保持できる
しかしながら、上記のFlexRayでは、各デバイスにアクセスするサンプリング周期はコミュニケーションサイクルのサイクル長で定まるため任意に指定できない。また、サンプリングする際の位相も、コミュニケーションサイクル中のタイムスロットの位置で定まるために任意に指定できない。さらに、全ての通信がコミュニケーションサイクルの中に含まれることから、1つのネットワーク中には異なるサンプリング周期のデバイスアクセスを混在させることができない。 However, in the above FlexRay, the sampling period for accessing each device is determined by the cycle length of the communication cycle and cannot be arbitrarily specified. Further, the phase at the time of sampling cannot be arbitrarily designated because it is determined by the position of the time slot in the communication cycle. Furthermore, since all communications are included in the communication cycle, device accesses having different sampling periods cannot be mixed in one network.
本発明の目的は、デバイスへの入出力タイミングを一定に保持しながら、その入出力タイミングを任意に指定でき、なおかつ異なる入出力タイミングを混在させることが可能なネットワークI/Oシステムを提供することにある。 An object of the present invention is to provide a network I / O system that can arbitrarily specify the input / output timing while maintaining the input / output timing to the device constant, and can mix different input / output timings. It is in.
本発明は、上記目的を達成するために、入出力デバイスを有するデバイス端末と、このデバイス端末と通信ネットワークを介して接続され、前記デバイス端末を前記入出力デバイスにアクセスさせるための要求フレームを生成して前記デバイス端末に発行するホスト端末とを備え、前記要求フレームには、前記デバイス端末が前記入出力デバイスにアクセスすべきタイミングを示す時間情報が付加されており、前記デバイス端末は、前記要求フレームを受信すると、前記要求フレームに付加された前記時間情報を参照し、当該時間情報に示されたタイミングになるまで待機してから前記入出力デバイスにアクセスするものとする。 In order to achieve the above object, the present invention generates a request frame for connecting a device terminal having an input / output device and the device terminal via a communication network to allow the device terminal to access the input / output device. And a host terminal that issues to the device terminal, and the request frame includes time information indicating a timing at which the device terminal should access the input / output device. When a frame is received, the time information added to the request frame is referred to, and the input / output device is accessed after waiting until the timing indicated by the time information is reached.
本発明によれば、デバイスへの入出力タイミングを一定に保持しながら、その入出力タイミングを任意に指定することができ、なおかつ異なる入出力タイミングを混在させることができる。 According to the present invention, it is possible to arbitrarily designate the input / output timing while keeping the input / output timing to the device constant, and to mix different input / output timings.
以下、本発明の実施の形態を図面を用いて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は本発明の第1の実施の形態に係るネットワークI/Oシステムの構成図であり、本実施の形態はイベントトリガ型ネットワークの代表的な1つであるCAN(Controller Area Network:ISO11898)に本発明を適用した例である。 FIG. 1 is a configuration diagram of a network I / O system according to the first embodiment of the present invention. This embodiment is a CAN (Controller Area Network: ISO11898), which is a representative event trigger type network. This is an example in which the present invention is applied.
この図に示すCANネットワーク100には、入出力デバイスを有するデバイス端末130A〜130Dと、デバイス端末130A〜130Dに対して要求フレーム117,118を発行するECU(ホスト端末)120と、デバイス端末130及びECU120に基準フレーム116を送信して通信サイクルの基準時間を管理する基準端末110が接続されている。
The
なお、本実施の形態におけるデバイス端末130A〜130Bには入力デバイス141(後の図7参照)としてセンサSが、デバイス端末130C〜130Dには出力デバイス142(図7参照)としてモータMが接続されている。また、本実施の形態におけるECU120は、一定周期でセンサSの値を読み込み、その読み込んだ値を信号処理した結果によりモータMへのトルク指令値を更新している。
In the present embodiment,
図2は本実施の形態における基準端末110の構成図である。なお、先の図と同じ部分には同じ符号を付して説明は省略する(後の各図も同様とする)。
FIG. 2 is a configuration diagram of the
この図に示すように基準端末110は、一定周期で周期トリガ信号114を発生させる周期トリガ発生手段112と、基準フレーム116に付加するサイクルカウント値115を周期トリガ信号114の発生毎にカウントアップするサイクルカウンタ113と、周期トリガ信号114が発生したタイミングで基準フレーム116を生成する基準フレーム生成手段111と、生成された基準フレーム116をCANネットワーク100に送信するネットワークインタフェース101を備えている。
As shown in this figure, the
図3は基準フレーム116の構成図である。CANには用途に応じていくつかのフレーム形式が存在するが、ここではデータの送信を目的としたデータフレーム形式を使用するものとする。 FIG. 3 is a configuration diagram of the reference frame 116. There are several frame formats for CAN depending on the application. Here, it is assumed that a data frame format intended for data transmission is used.
この図において、基準フレーム116のアービトレーションフィールドには、最高優先度に設定された識別子(ID)の情報が含まれている。CANの通信フレームには、通信の目的毎に一意に指定されたIDが含まれており、ID番号が大きいほど通信の優先順位が高い。すなわち、基準フレーム116は、他のいずれのデータフレームよりも通信優先度が高く設定されており、アクセス競合の影響を受けることなく正確に一定の周期で各端末に送信される。 In this figure, the arbitration field of the reference frame 116 includes information on an identifier (ID) set to the highest priority. The CAN communication frame includes an ID uniquely specified for each purpose of communication. The higher the ID number, the higher the communication priority. That is, the reference frame 116 has a higher communication priority than any other data frame, and is transmitted to each terminal accurately at a constant cycle without being affected by access competition.
基準フレーム116のデータフィールドには、サイクルカウンタ113が生成した最新のサイクルカウント値115の情報が含まれている。このサイクルカウント値115は、CANネットワーク100に接続された全ての端末で共通して認識される基準サイクル時間として使用される。基準フレーム116を受信したECU120およびデバイス端末130A〜130Dは、基準フレーム116を受信したタイミングで基準サイクル時間の進行を認識する。
The data field of the reference frame 116 includes information on the latest
図4は本実施の形態におけるECU120の構成図である。
この図に示すように、ECU120は、プロセッサ(制御用プロセッサ)121と、プロセッサインタフェース122と、ネットワークインタフェース101と、受信フレーム解読手段123と、サイクルカウント保持レジスタ124と、サイクル遅延指定レジスタ125と、加算器126と、相対時間カウンタ127と、時間情報更新マスク手段129と、送信フレーム生成手段128を備えている。
FIG. 4 is a configuration diagram of the
As shown in this figure, the ECU 120 includes a processor (control processor) 121, a
ネットワークインタフェース101で受信されたフレーム(受信フレーム)は、受信フレーム解読手段123によって解読される。受信フレームが基準フレーム116であった場合、フレーム解読手段123はサイクル更新トリガ200を発生させると同時に、基準フレーム116に含まれているサイクルカウント値115をサイクルカウント保持レジスタ124に格納する。サイクルカウント保持レジスタ124に格納されたサイクルカウント値115は、その時点における基準サイクル時間となる。
A frame (received frame) received by the
相対時間カウンタ127は、基準フレーム116の受信時に生成されるサイクル更新トリガ200を受信するとカウント値をゼロクリアし、そこからの経過時間(相対時間)を一定周期(例えば1ビットの通信時間幅など)でカウントアップしていく。したがって、相対時間カウンタ127が出力する相対時間情報204は、基準フレーム116を最後に受信してからの経過時間を示し、基準サイクル時間の間隔(基準フレーム116の送信周期)より必然的に短くなる。
When the
ECU120は、デバイス端末130A〜130Dに対して入出力デバイス141,142へのアクセスを要求する場合、プロセッサ121の指示に基づき、送信フレーム生成手段128においてデバイス出力要求フレーム117またはデバイス入力要求フレーム118(冒頭のように、両者をまとめて要求フレーム117,118と称することがある)を生成し、CANネットワーク100を介してデバイス端末130A〜130Dに送信する。
When the ECU 120 requests the
図5はデバイス出力要求フレーム117の構成図であり、図6はデバイス入力要求フレーム118の構成図である。
FIG. 5 is a configuration diagram of the device
これらの図において、要求フレーム117,118のデータフィールドには、サイクル時間情報203と相対時間情報204が埋め込まれている。これらサイクル時間情報203と相対時間情報204は、デバイス端末130A〜130Dが入出力デバイス141,142にアクセスすべきタイミングを示す時間情報として利用される。
In these figures,
要求フレーム117,118に埋め込まれるサイクル時間情報203は、デバイス端末130A〜130Dが入出力デバイス141,142にアクセスするタイミングにおける基準フレーム116のサイクルカウント値115を示す。本実施の形態におけるサイクル時間情報203としては、サイクルカウント保持レジスタ124に保持されているサイクルカウント値201に、サイクル遅延指定レジスタ125に保持されている遅延サイクル値202を加算した値が使用されており、このサイクルカウント値201と遅延サイクル値202の加算は加算器126が行っている。遅延サイクル値202は、ECU120が要求フレームを生成したときから入出力デバイスがアクセスされるまでに要する遅れ時間を、基準サイクル時間の整数倍の値で定義したものである。遅延サイクル値202は、プロセッサ121の指示により予め定めてサイクル遅延指定レジスタ125に格納しておく。
The
要求フレーム117,118に埋め込まれる相対時間情報204は、ECU120が直近の基準フレーム116を受信したタイミングからの経過時間を示す。本実施の形態における相対時間情報204としては、要求フレーム117,118が生成されたタイミングで相対時間カウンタ127に保持されている相対時間情報204が使われている。すなわち、ECU120が、直近の基準フレーム116を受信したタイミングから要求フレーム117,118を発行するタイミングまでに要した時間が使用されている。
The
本実施の形態において、ECU120が生成した要求フレーム117,118は、CANネットワーク100を経由してデバイス端末130A〜130Dに送られるため、ネットワークのアクセス競合の影響により、デバイス端末130A〜130D側で受け取られるタイミングが不規則に変動する可能性がある。しかし、本実施の形態における要求フレーム117,118に埋め込まれた時間情報203,204は、ECU120が要求フレーム117,118を生成した時点で確定する。そのため、ネットワークのアクセス競合によって通信時間が変動しても、デバイス端末130A〜130Dが入出力デバイス141,142にアクセスするタイミングには影響を与えない。
In the present embodiment, since request frames 117 and 118 generated by
時間情報更新マスク手段129は、要求フレーム117,118に付加する時間情報203,204の更新をプロセッサ121の指示に応じて一時的に停止するものである。時間情報更新マスク手段129は、標準動作時において、サイクル時間情報203と相対時間情報204をそのまま中継し、送信フレーム生成手段128に渡す処理を行う。しかし、プロセッサ121の指示によって時間情報更新マスク信号209が有効化されると、その時点におけるサイクル時間情報203と相対時間情報204を保持し、送信フレーム生成手段128に渡す時間情報の更新を停止する。この機能を利用すると、複数のデバイス端末におけるデバイス入出力動作タイミングを完全に一致させることが可能となる。例えば、デバイス端末130Cと130Dに対して、それぞれに宛てたデバイス出力要求フレーム117を生成する場合、時間情報更新マスク信号209を有効化してから2つのデバイス出力要求フレーム117を生成すると、その2つの要求フレーム117に埋め込まれる時間情報(サイクル時間情報203,相対時間情報204)を完全に同じものにすることができる。これにより、デバイス端末130Cがこれに対応する出力デバイス142(モータM)にアクセスする時刻と、デバイス端末130Dがこれに対応する出力デバイス142(モータM)にアクセス時刻を一致させることができる。
The time information update mask means 129 temporarily stops the update of the
図7は本実施の形態におけるデバイス端末130の構成図であり、図8は入力送信要求フレーム221の構成図であり、図9は入力データ送信フレーム222の構成図である。
7 is a configuration diagram of the
図7に示すデバイス端末130は、ネットワークインタフェース101と、受信フレームの中から基準フレーム116を検出する基準フレーム検出器131と、デバイス入力要求フレーム118またはデバイス出力要求フレーム117を検出する入出力要求フレーム検出器134と、入力データ送信要求フレーム221(図8参照)を検出する送信要求フレーム検出器133と、相対時間カウンタ127と、サイクルカウント保持レジスタ124と、相対時間情報保持レジスタ136と、サイクル時間情報保持レジスタ137と、出力用データ保持レジスタ143と、情報比較手段138と、データ出力バッファ140と、出力デバイス142と、入力デバイス141と、データ入力バッファ139と、入力データ送信フレーム生成手段135を備えている。
The
デバイス端末130が基準フレーム116を受信すると、基準フレーム検出器131が受信を検出し、サイクル更新トリガ200を発生させる。またそれと同時に、基準フレーム検出器131は、基準フレーム116に含まれているサイクルカウント値115をサイクルカウント保持レジスタ124に格納する。サイクルカウント保持レジスタ124に格納されたサイクルカウント値115は、その時点における基準サイクル時間となる。
When the
相対時間カウンタ127は、基準フレーム116の受信時に生成されるサイクル更新トリガ200を受けるとカウント値をゼロクリアし、そこからの経過時間を一定周期(例えば1ビットの通信時間幅など)でカウントアップしていく。したがって、相対時間カウンタ127が出力する相対時間情報204は、最後に基準フレーム116を受信してからの経過時間を示す。なお、図7では、相対時間カウンタ127は、サイクル更新トリガ200をサイクルカウント保持レジスタ124から受信するように記載してあるが、基準フレーム検出器131から直接受信してもよい。
When the
デバイス端末130がデバイス出力要求フレーム117を受信すると、入出力要求フレーム検出器134がその受信を検出し、デバイス出力要求フレーム117に含まれるサイクル時間情報203と、相対時間情報204と、出力データ207を抽出する。そして、入出力要求フレーム検出器134は、抽出したサイクル時間情報203をサイクル時間情報保持レジスタ137に格納し、抽出した相対時間情報204を相対時間情報保持レジスタ136に格納し、抽出した出力データ207を出力データ保持レジスタ143に格納する。ここで、出力データ保持レジスタ143に格納された出力データ207は、すぐに出力デバイス142に出力されず、下記の条件を満たしたときに初めて出力される。
When the
ここで、情報比較手段138は、サイクル時間情報保持レジスタ137からのサイクル時間情報203とサイクルカウント保持レジスタ124からのサイクルカウント値201とを比較しつつ、相対時間情報保持レジスタ136からの相対時間204と相対時間カウンタ127からの相対時間204とを比較し、その両方の比較結果が一致したときにデバイスアクセストリガ206を生成する。データ出力バッファ140は、情報比較手段138で生成されたデバイスアクセストリガ206が入力されると、出力データ保持レジスタ143の出力値(出力データ207)を取り込み、それを出力デバイス142に出力する。
Here, the information comparison means 138 compares the
一方、デバイス端末130がデバイス入力要求フレーム118を受信すると、入出力要求フレーム検出器134がその受信を検出し、デバイス入力要求フレーム118に含まれるサイクル時間情報203と、相対時間情報204を抽出する。そして、入出力要求フレーム検出器134は、抽出したサイクル時間203をサイクル時間情報保持レジスタ137に格納し、抽出した相対時間情報204を相対時間情報保持レジスタ136に格納する。
On the other hand, when the
そして、情報比較手段138は、その時点におけるサイクルカウント値201と相対時間204を、それぞれサイクル時間情報保持レジスタ137と相対時間情報保持レジスタ136の出力値203,204と比較し、両方とも比較結果が一致したときに、デバイスアクセストリガ206を生成する。データ入力バッファ139は、生成されたデバイスアクセストリガ206が入力されると、入力デバイス141から入力データ227を取り込んでそれを保持する。
Then, the
その後、デバイス端末130が入力データ送信要求フレーム221を受信すると、送信要求フレーム検出器133がその受信を検出し、入力データ送信トリガ208を生成する。送信フレーム生成手段135は、入力データ送信トリガ208が入力されると、データ入力バッファ139によって保持されている入力データ227を埋め込んだ入力データ送信フレーム222(図9参照)を生成する。これにより生成された入力データ送信フレームは、CANネットワーク100を経由してECU120に送られる。
Thereafter, when the
上記のように、本実施の形態におけるデバイス端末130は、要求フレーム117,118に付加された時間情報(サイクル時間情報203,相対時間情報204)を参照し、その時間情報に示されたタイミングになるまで待機してから入出力デバイス141,142にアクセスしている。より具体的には、サイクル時間情報203及び相対時間情報204を参照したデバイス端末130は、サイクル時間情報203と同じサイクルカウント値の基準フレーム116を受信するまで待ち、その基準フレーム116の受信タイミングからの経過時間を相対時間カウンタ127でカウントし、そのカウント時間が相対時間情報204が示す時間に達したタイミングで入出力デバイス141,142にアクセスしている。そのため、ネットワークのアクセス競合によって通信時間が変動し、デバイス端末130A〜130Dが要求フレーム117,118を受信するタイミングが変動しても、デバイス端末130A〜130Dが入出力デバイス141,142にアクセスするタイミングは変動しない。
As described above, the
図10は本実施の形態におけるECU120とデバイス端末130A〜130Dの間における各種フレームの流れを図示したものである。ここでは、デバイス出力時のフレームの流れを図10(a)に、デバイス入力時のフレームの流れを図10(b)に示した。なお、いずれもサイクル遅延指定レジスタ125における遅延サイクル値202の値を「1」に設定した場合の例である。各図において、基準時間と記載しているタイミングが基準フレーム116の受信タイミングであり、このタイミングで基準サイクル時間が1つずつ進んでいく。また、Tと表現されているのが、要求フレーム117,118を生成する時点における相対時間である。
FIG. 10 illustrates the flow of various frames between the
図10(a)では、ECU120がデバイス出力要求フレーム117を送信し、それをデバイス端末130が受信している。このデバイス出力要求フレーム117には、デバイス出力を実行すべきタイミングを示すサイクル時間情報(基準時間2)203と、相対時間情報(T)204と、出力データ207が埋め込まれている。デバイス出力要求フレーム117を受信したデバイス端末130は、サイクルカウント保持レジスタ124と相対時間カウンタ127の出力値201,204が、デバイス出力要求フレーム117に埋め込まれたサイクル時間情報203と相対時間情報204に一致するまで待ってから、与えられたデータ207を出力デバイス142に出力している。
In FIG. 10A, the
図10(b)では、ECU120がデバイス入力要求フレーム118を送信し、それをデバイス端末130が受信している。このデバイス入力要求フレーム118には、デバイス入力を実行すべきタイミングを示すサイクル時間情報(基準時間2)203と、相対時間情報(T)204が埋め込まれている。デバイス入力要求フレーム118を受信したデバイス端末130は、サイクルカウント保持レジスタ124と相対時間カウンタ127の出力値201,204が、デバイス入力要求フレーム118に埋め込まれたサイクル時間情報203と相対時間情報304に一致するまで待ってから、入力デバイス141からのデータ入力を実行し、データ入力バッファ139に格納する。そして、ECU120は、デバイス入力を実行すべきタイミングの経過後において、入力データ送信要求フレーム221をデバイス端末130に送信する。なお、このフレーム221はCANの仕様において、応答データを求めるリモートフレーム形式で実装するものとする。リモートフレームを受け取ったデバイス端末130は、折り返して、入力データ227を埋め込んだ入力データ送信フレーム222をECU120に送信する。ECU120が入力データ送信フレーム222を受信し、そこに埋め込まれたデータをプロセッサ121が読み取ることにより、デバイス端末130からのデータ入力手続きが完了する。
In FIG. 10B, the
つぎに本実施の形態の効果について説明する。
本実施の形態が比較対象とするFlexRay等の方式では、コミュニケーションサイクルに基づいて通信内容が予めスケジューリングされているので、競合に起因する入出力タイミングの変動の発生を防止でき、通信遅延時間を一定に保持することができる。しかしながら、その一方で、コミュニケーションサイクルのサイクル長と無関係にデバイスへの入出力タイミングを任意に設定することができず、複数の異なるサンプリング周期を混在させることができない等の制約を受ける場合があった。
Next, the effect of the present embodiment will be described.
In the system such as FlexRay to be compared in this embodiment, the communication contents are scheduled in advance based on the communication cycle, so it is possible to prevent the occurrence of fluctuations in the input / output timing due to competition, and to keep the communication delay time constant. Can be held in. However, on the other hand, the input / output timing to the device cannot be arbitrarily set regardless of the cycle length of the communication cycle, and there are cases where a plurality of different sampling cycles cannot be mixed. .
これに対して、本実施の形態のネットワークI/Oシステムでは、ECU120から送信される要求フレーム117,118にデバイス端末130が入出力デバイス141,142にアクセスすべきタイミングを示す時間情報203,204を付加し、当該要求フレーム117,118を受信したデバイス端末130を、当該時間情報203,204に示されたタイミングに達するまで待機させてから入出力デバイス141,142にアクセスするように構成している。
On the other hand, in the network I / O system of the present embodiment,
このようにネットワークI/Oシステムを構成すると、例えアクセス競合によって通信遅延が発生しても、その遅延時間が前記時間情報203,204によって定めた時間よりも短ければ、ECU120が各要求フレーム117,118を生成した周期とデバイス141,142へのアクセスが実際に実行されるタイミングとを一致させることができる。また、タイムトリガ方式のような周期に係る制約が存在しないため、各デバイス端末130におけるデバイスへのアクセスタイミングを通信時間の長さと無関係に自由に設定できる。例えば、上記の実施の形態のように時間情報更新マスク手段129を用いれば、複数のデバイス端末130に対して順番に要求フレームを送信した場合であっても、その複数のデバイス端末130を各デバイスに同時にアクセスさせることができる。
If the network I / O system is configured in this way, even if a communication delay occurs due to access competition, if the delay time is shorter than the time determined by the
したがって、本実施の形態によれば、入出力デバイスへのアクセスタイミングを一定に保持することができるとともに、当該アクセスタイミングを周期に制約されることなく任意に指定することができる。 Therefore, according to the present embodiment, the access timing to the input / output device can be kept constant, and the access timing can be arbitrarily specified without being restricted by the period.
さらに、上記で説明した本実施の形態のネットワークI/Oシステムは、サイクル時間201が含まれた基準フレーム116を送信する基準端末110を備えており、その基準サイクル時間201に基づいて設定したサイクル時間情報203及び相対時間情報204を要求フレーム117,118に埋め込んでデバイス端末130に送信し、その後、デバイス端末130が受信した基準フレーム116の基準サイクル時間201が要求フレーム117,118に埋め込まれたサイクル時間情報203の値に達し、かつ、その基準フレーム116を受信したときからの経過時間が要求フレーム117,118に埋め込まれた相対時間情報204の値に達するときまで待ってから、入出力デバイス141,142にデバイス端末130をアクセスさせている。
Furthermore, the network I / O system of the present embodiment described above includes a
このような構成と異なり、各端末ごとに個別に経過時間を管理する方式では、各端末が管理する時間の周期数精度が悪いと、時間のずれが徐々に累積して端末間で時間が一致しなくなるという問題が発生する場合がある。しかし、上記のようにサイクル時間情報203に相対時間情報204を組み合わせて利用すると、基準フレーム116が配信されるごとに各端末が管理する相対時間が初期化されて時間のずれが累積しないので、端末間での時間を一致させることができる。
Unlike such a configuration, in the method of managing the elapsed time individually for each terminal, if the period number accuracy of the time managed by each terminal is poor, the time lag gradually accumulates and the time between terminals is reduced. There may be a problem of not doing so. However, when the
また、上記の構成と異なり、ネットワーク経由で全端末に時間を配信する方式では、時間の分解能を高めるほど、情報量が増大してネットワーク負荷が高くなるという問題がある。しかし、上記のように、共通の時間情報であるサイクル時間情報203に、各端末が個別に生成する高分解能の相対時間情報204を組み合わせて利用すると、実質的な時間分解能を高く維持したまま配信する時間の分解能を低く抑えられるので、ネットワーク負荷を軽減することができる。
Unlike the above configuration, the method of distributing time to all terminals via a network has a problem that the amount of information increases and the network load increases as the time resolution is increased. However, as described above, when the
またさらに、上記で説明した本実施の形態のネットワークI/Oシステムは、サイクル時間情報203として、ECU120が要求フレーム117,118を発行するタイミングにおけるサイクルカウント値201に、予め定めた遅延サイクル値202を加算したものを利用している。
Furthermore, in the network I / O system of the present embodiment described above, the
このように遅延サイクル値202を含めて決定したサイクル時間情報203を利用すると、要求フレーム117,118の発行時(I/Oアクセス要求時)から、入出力デバイス141,142へのアクセス実行時(I/Oアクセス実行時)までの遅延時間を、複雑な処理を必要としない簡単な構成で通信ごとに設定することができる。このため、優先度が高く通信の競合がほとんど発生しないデバイスへのアクセス要求には遅延時間(遅延サイクル値202)を短く設定してリアルタイム性を高めることができ、一方、優先度が低く通信の競合が頻発するデバイスへのアクセス要求には遅延時間を長く設定して確実にアクセス実行することができる。
When the
ところで、上記の説明では、図1に示したように、1つのECU120が全てのデバイス端末130を管理する構成について述べたが、同じ構成のECU120が複数混在する場合に対しても本発明は適用可能である。
In the above description, as shown in FIG. 1, the configuration in which one
図11は本発明の第1の実施の形態の変形例に係るネットワークI/Oシステムの構成図である。 FIG. 11 is a configuration diagram of a network I / O system according to a modification of the first embodiment of the present invention.
この図に示すネットワークI/Oシステムは、CANネットワーク100に対して、基準端末110と、複数のECU120A〜120Cと、デバイス端末130A〜130Cが接続されている。ECU120A〜120Cは、それぞれデバイス端末130A〜130Cに搭載されたデバイス141,142に対して入出力を実施する。
In the network I / O system shown in this figure, a
このように、互いに独立したタイミングで動作する複数のECU120が混在する場合、従来型イベントトリガ方式では、それぞれのネットワークアクセスが互いに競合するため、通信遅れ時間が不規則に変化し、予測できないという問題がある。正確に一定の周期を保ってデバイス141,142にアクセスしたい用途では、あらかじめ全ての通信を計画することで競合の発生を回避したタイムトリガ型ネットワーク(FlexRay等)が使用される。しかしながら、このタイムトリガ方式では、スケジューリングされた一連の通信を一定周期で繰り返すため、全てのデバイス141,142に対して、同じアクセス周期を適用しなければいけないという制約がある。
As described above, when a plurality of
しかしながら、本発明を適用した場合には、イベントトリガ型ネットワークであっても競合の影響を受けず、一定周期のデバイスアクセスを正確に実行することができ、なおかつ複数のアクセス周期を混在させることができる。この点について下記で説明する。 However, when the present invention is applied, even if it is an event trigger type network, it is not affected by contention, device access in a certain period can be executed accurately, and a plurality of access periods can be mixed. it can. This point will be described below.
図12は本変形例において各ECUがそれぞれ独立したタイミングでデバイスへの出力を実施したタイミング例を示す図である。
この図において、上から4つの信号は、上から順番に、基準端末110、ECU120A、120B、120Cがフレームデータを生成するタイミングを示したものである。ネットワーク通信の優先度は基準端末110が最も高く、それからECU120A、120B、120Cの順となっている。競合の調停を経てCANネットワークに実際に出力される信号は、図12において上から5つ目の信号である。なお、各ECU120やデバイス端末130の動作については、前述の例と同じであるので省略する。
FIG. 12 is a diagram showing a timing example in which each ECU performs output to the device at an independent timing in this modification.
In this figure, the four signals from the top indicate the timing at which the
各ECU120が生成するフレームは、いずれもデバイス出力要求フレーム117であり、デバイス出力を実行すべきタイミングのサイクル時間情報203と、相対時間情報204と、出力するデータ207が埋め込まれている。相対時間情報204は、要求フレーム117を生成するタイミングにおける相対時間カウンタ127の値がそのまま埋め込まれており、サイクル遅延指定レジスタ125の設定値は全て1とする。
Each of the frames generated by each
図12において上から6〜8つ目の信号は、デバイス出力要求フレーム117を受信したデバイス端末130が、それぞれ要求フレーム117に含まれた時間情報203,204に従って、デバイス出力を実行したタイミングである。このように、競合を調停した結果、CANネットワーク上にフレームデータが流れるタイミングは時間的にばらつきがあるが、フレームデータ117に含まれる時間情報203,204に基づいてデバイスアクセスを再現した結果、各ECU120がフレームデータ117を生成した周期と、実際にデバイス出力を実行するタイミングを一致させることができる。また、タイムトリガ方式のような周期に係る制約が存在しないため、複数のデバイス端末130に対して、それぞれ異なる周期でアクセスすることができる。このように複数のECU120が設けられている場合にも、入出力デバイスへのアクセスタイミングを一定に保持することができるとともに、当該アクセスタイミングを周期に制約されることなく任意に指定することができる。
In FIG. 12, the sixth to eighth signals from the top are timings when the
上記の実施の形態で説明したネットワークI/Oシステムの適用先としては、例えば、パワーショベル(油圧ショベル)等の建設機械の分野が考えられる。 As an application destination of the network I / O system described in the above embodiment, for example, the field of construction machinery such as a power shovel (hydraulic excavator) can be considered.
図13は本発明の第2の実施の形態に係るネットワークI/Oシステムを備えるパワーショベルの構成図である。
この図に示すパワーショベルの本体300には、パワーショベル全体の制御を統括するECU120と、デバイス端末130A〜130Cが設けられており、ECU120と各デバイス端末130A〜130CはCANネットワーク100によって接続されている。本実施の形態におけるデバイス端末130A〜130Cには、出力デバイス142として油圧バルブが実装されている。具体的には、デバイス端末130Aの油圧バルブ操作によってブームシリンダ304が伸縮され、デバイス端末130Bの油圧バルブ操作によってアームシリンダ303が伸縮され、デバイス端末130Cの油圧バルブ操作によってアタッチメントシリンダ302が伸縮される。
FIG. 13 is a configuration diagram of a power shovel including a network I / O system according to the second embodiment of the present invention.
The power shovel
上記のブーム、アーム、及びバケット(アタッチメント)301から成るパワーショベルの作業装置のように、複数の可動軸で構成されたシリアルリンク構造によって先端部(バケット)の位置決めを行う装置では、先端位置を任意の軌道で動かすために、全ての可動軸を連動させて動かすことが求められる。このような装置に対して本発明を適用すると、アクセス競合に起因する通信遅延時間の変動の影響を受けずに、各可動軸に対応した全ての油圧バルブを、同じタイミングで操作することができるため、先端部の移動軌跡を正確に制御できる。 In a device that positions the tip (bucket) by a serial link structure composed of a plurality of movable shafts, such as a power shovel working device including the boom, arm, and bucket (attachment) 301, the tip position is set. In order to move in an arbitrary trajectory, it is required to move all movable axes in conjunction with each other. When the present invention is applied to such a device, all the hydraulic valves corresponding to the respective movable shafts can be operated at the same timing without being affected by fluctuations in communication delay time caused by access competition. Therefore, the movement trajectory of the tip can be accurately controlled.
また、例えば、従来方式のイベントトリガ型ネットワークを利用して通信遅延時間が変動した場合には、油圧バルブの操作量を更新する周期が一定とならないため、作業装置の動きがぎこちなくなったり、それによる振動を起こしたりすることが考えられる。しかし、本発明を適用すれば、デバイス(油圧バルブ)への出力更新周期を一定に保つことができるため、作業装置の滑らかな動きが期待できる。 In addition, for example, when the communication delay time fluctuates using a conventional event trigger type network, the cycle of updating the operation amount of the hydraulic valve is not constant. It may be possible to cause vibration due to. However, if the present invention is applied, the output update cycle to the device (hydraulic valve) can be kept constant, so that a smooth movement of the working device can be expected.
さらに、上記の軌道制御のように、複数の可動軸を連動させて動かさなければならないシステムには、全ての通信をあらかじめスケジューリングすることでアクセス競合を排除したタイムトリガ方式が利用されることが多い。このタイムトリガ方式では、ネットワークに接続された全てのECUと全てのデバイス端末を、あらかじめ設定したタイムテーブルに従って動作させる必要がある。そのため、デバイス端末の増減などによりタイムテーブルに変更が生じた場合、ネットワークにつながる全ての端末のソフトウェアを同時に変更する必要があるという煩雑さがあった。例えば、上記のパワーショベルの例では、作業内容に応じてバケット301を他のアタッチメント(例えば、打撃で物を破壊するブレーカー、物をつかむグラップル、鉄骨などを切断するカッターなど)に交換する場合があるが、各アタッチメントで可動軸数などの仕様が異なっているときには、アタッチメント毎に異なるタイムテーブルが必要となる。
Furthermore, a time trigger method that eliminates access contention by scheduling all communications in advance is often used for systems that must move a plurality of movable axes in conjunction with each other, such as the above trajectory control. . In this time trigger method, it is necessary to operate all ECUs and all device terminals connected to the network according to a preset time table. Therefore, when the time table is changed due to increase / decrease of device terminals, it is necessary to change the software of all terminals connected to the network at the same time. For example, in the example of the power shovel described above, the
これに対して、本実施の形態のネットワークI/Oシステムでは、デバイスが動作するタイミングは必ずECU120側から指示されるため、デバイス端末130側でタイムテーブルを把握して、自分でデータ送信タイミングを判断する必要がない。このため、アタッチメント変更などによってデバイス構成が変更になった場合であっても、ECU120に係るソフトの変更だけで対応することができる。
On the other hand, in the network I / O system of the present embodiment, the timing at which the device operates is always instructed from the
次に本発明の第3の実施の形態について説明する。 Next, a third embodiment of the present invention will be described.
図14は本発明の第3の実施の形態に係るネットワークI/Oシステムの構成図であり、本実施の形態はタイムトリガ型ネットワークの代表的な1つであるFlexRay(登録商標)に本発明を適用した例である。FlexRayの通信周期はコミュニケーションサイクルと呼ばれ、このコミュニケーションサイクルには、1つのフレームが送受信される時間区分であるスロットが複数定義されている。FlexRayでは、ネットワーク上の各端末が、共通の時間認識に従って、各コミュニケーションサイクル内において自端末に割り当てられたスロットのタイミングを認識し、当該スロット内で他端末へのフレームの送信を行っている(詳細は後述するが、例えば、FlexRay対応ECU410は割り当てられたスロット内で要求フレーム417,418を送信し、FlexRay対応デバイス端末430A〜430Dは入力データ送信フレーム422を送信している)。
FIG. 14 is a configuration diagram of a network I / O system according to the third embodiment of the present invention. This embodiment is based on FlexRay (registered trademark), which is one of representative time-triggered networks. This is an example of applying. The FlexRay communication cycle is called a communication cycle, and a plurality of slots, which are time segments in which one frame is transmitted and received, are defined in this communication cycle. In FlexRay, each terminal on the network recognizes the timing of the slot allocated to itself in each communication cycle according to common time recognition, and transmits a frame to another terminal in that slot ( Although details will be described later, for example, the FlexRay
この図に示すFlexRayネットワーク400には、FlexRay対応ECU(以下、ECUと称することがある)410と、複数のFlexRay対応デバイス端末430A〜430D(以下、デバイス端末と称することがある)が接続されている。先述のCANを使ったシステムには、全端末が共通認識可能な基準サイクル時間を作るために、一定周期で基準フレーム116を送信する基準端末110が設けられていたが、本実施の形態ではこのような端末は不要である。これは、FlexRayのようなタイムトリガ型ネットワークでは、ネットワークに接続された全端末に時間を共通認識する機能が実装されており、その全端末が予め定められたスケジュールに従ったタイミングで通信を行っているからである。
A
図15はFlexRayの動作の概要図である。 FIG. 15 is a schematic diagram of the FlexRay operation.
この図に示すようにFlexRayは、一定長の通信サイクルであるコミュニケーションサイクルを繰り返し実行することで動作している。コミュニケーションサイクルは、FlexRayにおいて最大の通信周期単位であり、各コミュニケーションサイクルにはそれぞれサイクル番号(サイクルカウント値)が付加されている。サイクル番号はサイクルの繰り返し毎に1つずつカウントアップされる。 As shown in this figure, the FlexRay operates by repeatedly executing a communication cycle that is a fixed-length communication cycle. The communication cycle is the maximum communication cycle unit in FlexRay, and a cycle number (cycle count value) is added to each communication cycle. The cycle number is incremented by one for each cycle repetition.
各コミュニケーションサイクルの中身は、あらかじめ計画しておいた通信だけが含まれる固定長の静的セグメントと、必要に応じて動的な通信割当てを行う可変長の動的セグメントと、余った時間であるネットワーク・アイドル時間から構成される。 The contents of each communication cycle are a fixed-length static segment that includes only planned communications, a variable-length dynamic segment that dynamically allocates communications as needed, and extra time. Consists of network idle time.
静的セグメントの中には固定長の静的スロットが複数含まれており、各スロットにはスロット番号が割り当てられている。個々のスロットは、それぞれどういう通信に使用するのか用途が定められている。定められた用途において通信の必要が無かった場合、そのスロットは使用されず、他の用途への流用も行わない。そのため、定められた用途において通信の必要が生じた場合は、他の用途との間で通信の競合は発生せず、競合に起因する通信遅れ時間の変動も存在しない。 The static segment includes a plurality of fixed-length static slots, and a slot number is assigned to each slot. The use of each slot is determined for what kind of communication it is used for. If there is no need for communication in the specified application, the slot is not used and is not used for other applications. For this reason, when communication is required in a predetermined application, communication competition with other applications does not occur, and there is no fluctuation in communication delay time due to the competition.
図15に示すように、本実施の形態における静的セグメントのスロット1にはECU410からデバイス端末430Aへのセンサ入力要求フレームが割り当てられており、スロット2にはECU410からデバイス端末430Bへのセンサ入力要求フレームが割り当てられており、スロット3にはECU410からデバイス端末430Cへのモータ出力要求フレームが割り当てられており、スロット4にはECU410からデバイス端末430Dへのモータ出力要求フレームが割り当てられており、スロット5にはデバイス端末430AからECU410へのセンサ入力データ送信フレームが割り当てられており、スロット6にはデバイス端末430BからECU410へのセンサ入力データ送信フレームが割り当てられている。
As shown in FIG. 15, a sensor input request frame from
図16は本実施の形態におけるECU410の構成図である。
この図に示すFlexRay対応ECU410は、プロセッサ(制御用プロセッサ)121と、プロセッサインタフェース122と、サイクル遅延指定レジスタ125と、サイクルカウント取得手段411と、加算器126と、相対時間カウンタ127と、時間情報更新マスク手段129と、スロット番号指定レジスタ414と、FlexRay送信フレーム生成手段413と、FlexRay受信フレーム解読手段412と、FlexRayインタフェース401を備えている。
FIG. 16 is a configuration diagram of the
The FlexRay
本実の形態では、第1の実施の形態において基準サイクル時間の進行を認識するために使用していた基準フレーム116の代わりに、コミュニケーションサイクル中において任意に設定したタイミング(基準タイミング)を基準にして基準サイクル時間を認識している。基準タイミングとしては、例えば、コミュニケーションサイクルが開始したタイミング(開始タイミング)を利用することができる。 In this embodiment, instead of the reference frame 116 used for recognizing the progress of the reference cycle time in the first embodiment, a timing (reference timing) arbitrarily set in the communication cycle is used as a reference. To recognize the reference cycle time. As the reference timing, for example, the timing at which the communication cycle starts (start timing) can be used.
各端末に設けられたFlexRayインタフェース401は、コミュニケーションサイクル中における現在の時間を認識する機能を有している。このFlexRayインタフェース401により各端末は、コミュニケーションサイクルにおける基準タイミング、そして、現在の時刻を共通認識することができる。
The
サイクルカウント取得手段411は、コミュニケーションサイクルにおける基準タイミングを検出すると、サイクル更新トリガ200を生成すると同時にサイクルカウント値115を取得する。FlexRayの通信フレーム・フォーマット中には、コミュニケーションサイクルのサイクル番号が含まれており、そこから取得できるサイクル番号をサイクルカウント値115として利用する。
When the cycle count acquisition means 411 detects the reference timing in the communication cycle, it generates the
相対時間カウンタ127は、サイクルカウント取得手段411からサイクル更新トリガ200を受けるとカウント値をゼロクリアし、そこからの経過時間を一定周期(例えば1ビットの通信時間幅など)でカウントアップして基準タイミングからの経過時間を示す相対時間情報204を生成する。
When the
サイクル遅延指定レジスタ125には、プロセッサ121の指示に従って、あらかじめ遅延サイクル値202が格納されている。遅延サイクル値202は、ECU410がデバイス出力要求フレーム417又はデバイス入力要求フレーム418を生成したときから、デバイス端末430によってデバイス入力又はデバイス出力が実行されるまでに要する遅れ時間であり、コミュニケーションサイクル長の整数倍で定義されている。
The cycle delay designation register 125 stores a
加算器126は、サイクル遅延指定レジスタ125の出力(遅延サイクル値202)と、サイクルカウント取得手段411の出力(サイクルカウント値115)とを加算して、サイクル時間情報203を取得する。サイクル時間情報203は、デバイス入力(出力)を実行するべきタイミングを示すもので、時間情報更新マスク手段129に出力されている。
The
デバイス端末430に対してデバイス入力(出力)を指示する場合、プロセッサ121は、まず、指示の伝達対象となるデバイス端末430を示すスロット番号を、スロット番号指定レジスタ414に格納する。例えば、デバイス端末130Aに対してセンサSからの入力を指示する場合、図15記載のスロット番号定義に従って、スロット番号指定レジスタ414に「1」を書き込む。次に、プロセッサ121は、FlexRay送信フレーム生成手段413に対してフレームの生成を指示する(フレーム生成指示211)。プロセッサ121からのフレーム生成指示211を受けると、FlexRay送信フレーム生成手段413は、時間情報更新マスク手段129から渡されたサイクル時間情報203と相対時間情報204を埋め込んで、スロット番号指定レジスタ414の出力値が指すスロット用の要求フレーム417,418(送信フレーム)を生成する。FlexRayインタフェース401は、該当するスロットのタイミングを待って、FlexRay送信フレーム生成手段413が生成した要求フレーム417,418を該当するデバイス端末430に送信する。
When the device input (output) is instructed to the
なお、時間情報更新マスク手段129は、第1の実施の形態と同様に、プロセッサ121からの時間情報更新マスク信号209を受けて、FlexRay送信フレーム生成手段413に渡す時間情報の更新を停止することができる。これにより、時間情報の更新停止中に生成された複数の要求フレーム417,418には、デバイス入力(出力)を実行するべき時間として、全く同じ時間を埋め込むことができる。
The time information
図17は本実施の形態におけるデバイス端末430の構成図である。
この図に示すFlexRay対応デバイス端末430は、FlexRayインタフェース401と、サイクルカウント取得手段411と、相対時間カウンタ127と、FlexRay入出力要求フレーム検出器431と、出力データ保持レジスタ143と、相対時間情報保持レジスタ136と、サイクル時間情報保持レジスタ137と、情報比較手段138と、データ出力バッファ140および出力デバイス142と、FlexRay送信フレーム生成手段413と、入力デバイス141と、データ入力バッファ139を備えている。
FIG. 17 is a configuration diagram of the
The FlexRay
サイクルカウント取得手段411は、コミュニケーションサイクルにおける基準タイミングを検出すると、サイクル更新トリガ200を生成すると同時に、ECU410と同様にサイクルカウント値201を取得する。相対時間カウンタ127は、サイクルカウント取得手段411からサイクル更新トリガ200を受けるとカウント値をゼロクリアし、そこからの経過時間を一定周期(例えば1ビットの通信時間幅など)でカウントアップして相対時間情報204を生成する。
When the cycle
デバイス端末430がデバイス出力要求フレーム417を受信すると、FlexRay入出力要求フレーム検出器431がデバイス出力要求フレーム417を検出する。そして、入出力要求フレーム検出器431は、デバイス出力要求フレーム417に含まれる出力データ207と、相対時間情報204と、サイクル時間情報203を抽出し、その抽出したデータ207,204,203をそれぞれ、出力データ保持レジスタ143と、相対時間情報保持レジスタ136と、サイクル時間情報保持レジスタ137に保存する。
When the
そして、情報比較手段138は、相対時間情報保持レジスタ136の出力値(相対時間情報204)と相対時間カウンタ127の出力値(相対時間情報204)を比較しつつ、サイクル時間情報保持レジスタ137の出力値(サイクル時間情報203)とサイクルカウント取得手段411の出力値(サイクルカウント値201)を比較し、その両方の比較結果が一致したときにデバイスアクセストリガ206を生成する。データ出力バッファ140は、生成されたデバイスアクセストリガ206を受けると、出力データ保持レジスタ143から出力データ207を取り込み、これを出力デバイス142に出力する。
The
一方、デバイス端末430がデバイス入力要求フレーム418を受信すると、FlexRay入出力要求フレーム検出器431がデバイス入力要求フレーム418を検出する。そして、入出力要求フレーム検出器431は、デバイス入力要求フレーム418に含まれる相対時間情報204とサイクル時間情報203を抽出し、その抽出したデータ204,203をそれぞれ、相対時間情報保持レジスタ136とサイクル時間情報保持レジスタ137に保存する。
On the other hand, when the
そして、情報比較手段138は、デバイス入力を実行すべき時間を示す相対時間情報保持レジスタ136とサイクル時間情報保持レジスタ137の出力値(相対時間情報204,サイクル時間情報203)を、それぞれ相対時間情報204とサイクルカウント値201と比較し、両方が一致したときにデバイスアクセストリガ206を生成する。データ入力バッファ139は、生成されたデバイスアクセストリガ206を受けると入力デバイス141から入力データ227を取り込み、FlexRay送信フレーム生成手段413に渡す。
Then, the
FlexRay送信フレーム生成手段413は、データ入力バッファ139から入力データ227を受け取ると、図15記載のスロット番号定義に従い、自端末に割り当てられたスロット用に入力データ227を埋め込んだ入力データ送信フレーム422を生成する。FlexRayインタフェース401は、生成された入力データ送信フレーム422を該当スロットのタイミングを待って送信する。
When receiving the
デバイス端末430が送信した入力データ送信フレーム422はECU410によって取り込まれ、そこのFlexRay受信フレーム解読手段412によって入力データ227を取り出される。取り出された入力データ227は、プロセッサインタフェース122経由でプロセッサ121から参照することができる。
The input
したがって、タイムトリガ型ネットワークを利用した本実施の形態においても、第1の実施の形態と同様に、入出力デバイスへのアクセスタイミングを一定に保持することができるとともに、当該アクセスタイミングを通信周期に制約されることなく任意に指定することができる。 Therefore, in the present embodiment using a time-triggered network, the access timing to the input / output device can be kept constant as in the first embodiment, and the access timing is set to the communication cycle. It can be specified arbitrarily without any restrictions.
また、第1の実施の形態と比較した場合の本実施の形態のメリットとしては、第1に、タイムトリガ型ネットワークでは全ての端末の通信サイクルを同期させるための構成要素(基準端末110)が必ず必要となるが、各端末で時間を共通認識する機能が実装されている本実施の形態では、このような構成要素を追加する必要が無く、簡単な構成で同様の効果を得られるという点がある。また、第2に、第1の実施の形態のように基準時間情報(基準フレーム116)をネットワークに周期的に配信する必要が無いので、ネットワーク負荷を軽減できるという点が挙げられる。 In addition, as a merit of this embodiment when compared with the first embodiment, first, in the time-triggered network, there is a component (reference terminal 110) for synchronizing communication cycles of all terminals. Although it is always necessary, in this embodiment in which a function for recognizing time in common is implemented in each terminal, it is not necessary to add such a component, and the same effect can be obtained with a simple configuration. There is. Second, there is no need to periodically distribute the reference time information (reference frame 116) to the network as in the first embodiment, so that the network load can be reduced.
100 CANネットワーク
110 基準端末
115 サイクルカウント値
116 基準フレーム
117 デバイス出力要求フレーム
118 デバイス入力要求フレーム
120 ECU(ホスト端末)
124 サイクルカウント保持レジスタ
126 加算器
127 相対時間カウンタ
129 時間情報更新マスク手段
130 デバイス端末
137 サイクル時間情報保持レジスタ
141 入力デバイス
142 出力デバイス
201 基準サイクル時間
202 遅延サイクル値
203 サイクル時間情報
204 相対時間情報
207 出力データ
221 入力送信要求フレーム
222 入力データ送信フレーム
227 入力データ
400 FlexRayネットワーク
401 FlexRayインタフェース
417 デバイス出力要求フレーム
418 デバイス入力要求フレーム
422 入力データ送信フレーム
430 FlexRay対応デバイス端末
100 CAN network 110
124 Cycle
Claims (10)
このデバイス端末と通信ネットワークを介して接続され、前記デバイス端末を前記入出力デバイスにアクセスさせるための要求フレームを生成して前記デバイス端末に発行するホスト端末とを備え、
前記要求フレームには、前記デバイス端末が前記入出力デバイスにアクセスすべきタイミングを示す時間情報が付加されており、
前記デバイス端末は、前記要求フレームを受信すると、前記要求フレームに付加された前記時間情報を参照し、当該時間情報に示されたタイミングになるまで待機してから前記入出力デバイスにアクセスすることを特徴とするネットワークI/Oシステム。 A device terminal having input / output devices;
A host terminal connected to the device terminal via a communication network, generating a request frame for causing the device terminal to access the input / output device, and issuing the request frame to the device terminal;
In the request frame, time information indicating a timing at which the device terminal should access the input / output device is added,
When the device terminal receives the request frame, the device terminal refers to the time information added to the request frame, waits until the timing indicated in the time information is reached, and then accesses the input / output device. A characteristic network I / O system.
送信される毎にカウントアップされるサイクルカウント値サイクル番号が付加された基準フレームを、前記デバイス端末及び前記ホスト端末に対して一定周期で送信する基準端末をさらに備え、
前記要求フレームに付加された前記時間情報は、前記デバイス端末が前記入出力デバイスにアクセスするタイミングにおけるサイクルカウント値を示すサイクル時間情報と、当該サイクルカウント値が付加された基準フレームを受信したタイミングからの経過時間を示す相対時間情報とを組み合わせて構成されており、
前記デバイス端末は、前記サイクル時間情報が示すサイクルカウント値が付加された基準フレームを受信したタイミングからの経過時間をカウントし、その経過時間が前記相対時間情報が示す時間に達したタイミングで前記入出力デバイスにアクセスすることを特徴とするネットワークI/Oシステム。 The network I / O system according to claim 1.
A reference terminal that transmits a reference frame to which a cycle count value cycle number that is counted up each time it is transmitted is added to the device terminal and the host terminal at a fixed period;
The time information added to the request frame includes cycle time information indicating a cycle count value at a timing at which the device terminal accesses the input / output device, and a timing at which the reference frame to which the cycle count value is added is received. In combination with relative time information indicating the elapsed time of
The device terminal counts an elapsed time from the reception timing of the reference frame to which the cycle count value indicated by the cycle time information is added, and the input time is reached when the elapsed time reaches the time indicated by the relative time information. A network I / O system characterized by accessing an output device.
前記ホスト端末及び前記デバイス端末は、一定周期で繰り返されるコミュニケーションサイクルにおいて自己に割り当てられたスロットのタイミングを共通の時間認識に従って認識し、当該スロット内で他端末へのフレームの送信を行っており、
前記コミュニケーションサイクルには、繰り返される毎にカウントアップされるサイクルカウント値が付加されており、
前記要求フレームに付加された前記時間情報は、前記デバイス端末が前記入出力デバイスにアクセスするタイミングにおけるサイクルカウント値を示すサイクル時間情報と、当該サイクルカウント値が付加されたコミュニケーションサイクルにおける基準タイミングからの経過時間を示す相対時間情報とを組み合わせて構成されており、
前記デバイス端末は、前記サイクル時間情報が示すサイクルカウント値が付加されたコミュニケーションサイクルにおける基準タイミングからの経過時間をカウントし、その経過時間が前記相対時間情報が示す時間に達したタイミングで前記入出力デバイスにアクセスすることを特徴とするネットワークI/Oシステム。 The network I / O system according to claim 1.
The host terminal and the device terminal recognize the timing of the slot allocated to them in a communication cycle repeated at a constant period according to a common time recognition, and transmit a frame to another terminal in the slot,
In the communication cycle, a cycle count value that is counted up every time it is repeated is added,
The time information added to the request frame includes cycle time information indicating a cycle count value at a timing when the device terminal accesses the input / output device, and reference timing in a communication cycle to which the cycle count value is added. It is composed of a combination of relative time information indicating elapsed time,
The device terminal counts an elapsed time from a reference timing in a communication cycle to which a cycle count value indicated by the cycle time information is added, and the input / output is performed at a timing when the elapsed time reaches a time indicated by the relative time information. A network I / O system characterized by accessing a device.
前記サイクル時間情報は、前記ホスト端末が前記要求フレームを発行するタイミングにおけるサイクルカウント値に、予め定めた遅延サイクル値を加算したものであることを特徴とするネットワークI/Oシステム。 The network I / O system according to claim 2 or 3,
The network I / O system, wherein the cycle time information is obtained by adding a predetermined delay cycle value to a cycle count value at a timing when the host terminal issues the request frame.
前記相対時間情報は、前記ホスト端末が、直近の基準フレームを受信したタイミングから前記要求フレームを発行するタイミングまでに要した時間であることを特徴とするネットワークI/Oシステム。 The network I / O system according to claim 2,
The network I / O system according to claim 1, wherein the relative time information is a time required from a timing at which the host terminal receives the latest reference frame to a timing at which the request frame is issued.
前記相対時間情報は、直近のコミュニケーションサイクルにおける基準タイミングから前記ホスト端末が前記要求フレームを発行するタイミングまでに要した時間であることを特徴とするネットワークI/Oシステム。 The network I / O system according to claim 3.
The network I / O system, wherein the relative time information is a time required from a reference timing in a latest communication cycle to a timing at which the host terminal issues the request frame.
前記ホスト端末と前記デバイス端末は、それぞれ、直近に受信した基準フレームに付加されたサイクルカウント値を保持するサイクルカウント保持レジスタと、前記直近の基準フレームを受信したタイミングからの経過時間を相対時間情報として保持する相対時間カウンタとを備え、
前記要求フレームに付加された前記サイクル時間情報は、前記要求フレームが生成されたタイミングで前記ホスト端末のサイクルカウント保持レジスタに保持されているサイクルカウント値に、予め定めた遅延サイクル値を加算したものであり、
前記要求フレームに付加された前記相対時間情報は、前記要求フレームが生成されたタイミングで前記ホスト端末の相対時間カウンタに保持されている相対時間情報であり、
前記要求フレームを受信した前記デバイス端末は、当該要求フレームに含まれる前記サイクル時間情報と前記相対時間情報の値が、自己の前記サイクルカウント保持レジスタのサイクル時間情報と自己の前記相対時間カウンタの相対時間情報の値に一致するタイミングで前記入出力デバイスにアクセスすることを特徴とするネットワークI/Oシステム。 The network I / O system according to claim 2,
Each of the host terminal and the device terminal includes a cycle count holding register that holds a cycle count value added to the most recently received reference frame, and an elapsed time from the timing at which the most recently received reference frame is received. And a relative time counter that holds as
The cycle time information added to the request frame is obtained by adding a predetermined delay cycle value to the cycle count value held in the cycle count holding register of the host terminal at the timing when the request frame is generated. And
The relative time information added to the request frame is relative time information held in a relative time counter of the host terminal at a timing when the request frame is generated,
The device terminal that has received the request frame has the values of the cycle time information and the relative time information included in the request frame as relative to the cycle time information of its own cycle count holding register and its own relative time counter. A network I / O system, wherein the input / output device is accessed at a timing that matches a value of time information.
前記ホスト端末と前記デバイス端末は、それぞれ、直近のコミュニケーションサイクルに付加されたサイクルカウント値を保持するサイクルカウント保持レジスタと、前記直近のコミュニケーションサイクルにおける基準タイミングからの経過時間を相対時間情報として保持する相対時間カウンタとを備え、
前記要求フレームに付加された前記サイクル時間情報は、前記要求フレームが生成されたタイミングで前記ホスト端末のサイクルカウント保持レジスタに保持されているサイクルカウント値に、予め定めた遅延サイクル値を加算したものであり、
前記要求フレームに付加された前記相対時間情報は、前記要求フレームが生成されたタイミングで前記ホスト端末の相対時間カウンタに保持されている相対時間情報であり、
前記要求フレームを受信した前記デバイス端末は、当該要求フレームに含まれる前記サイクル時間情報と前記相対時間情報の値が、自己の前記サイクルカウント保持レジスタのサイクル時間情報と自己の前記相対時間カウンタの相対時間情報の値に一致するタイミングで前記入出力デバイスにアクセスすることを特徴とするネットワークI/Oシステム。 The network I / O system according to claim 3.
Each of the host terminal and the device terminal holds, as relative time information, a cycle count holding register that holds a cycle count value added to the latest communication cycle, and an elapsed time from the reference timing in the latest communication cycle. With a relative time counter,
The cycle time information added to the request frame is obtained by adding a predetermined delay cycle value to the cycle count value held in the cycle count holding register of the host terminal at the timing when the request frame is generated. And
The relative time information added to the request frame is relative time information held in a relative time counter of the host terminal at a timing when the request frame is generated,
The device terminal that has received the request frame has the values of the cycle time information and the relative time information included in the request frame as relative to the cycle time information of its own cycle count holding register and its own relative time counter. A network I / O system, wherein the input / output device is accessed at a timing that matches a value of time information.
前記ホスト端末は、前記要求フレームに付加する前記時間情報の更新を一時的に停止する時間情報更新マスク手段をさらに備え、
前記時間情報更新マスク手段が前記時間情報の更新を停止している間に生成された要求フレームを受信した複数の前記デバイス端末は、対応する前記入出力デバイスに同時にアクセスすることを特徴とするネットワークI/Oシステム。 The network I / O system according to claim 7 or 8,
The host terminal further comprises time information update mask means for temporarily stopping the update of the time information added to the request frame,
A plurality of the device terminals that have received a request frame generated while the time information update mask means has stopped updating the time information, simultaneously access the corresponding input / output devices. I / O system.
前記ホスト端末は複数存在していることを特徴とするネットワークI/Oシステム。 The network I / O system according to any one of claims 1 to 3,
A network I / O system comprising a plurality of the host terminals.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009097410A JP2010251929A (en) | 2009-04-13 | 2009-04-13 | Network i/o system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009097410A JP2010251929A (en) | 2009-04-13 | 2009-04-13 | Network i/o system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010251929A true JP2010251929A (en) | 2010-11-04 |
Family
ID=43313796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009097410A Pending JP2010251929A (en) | 2009-04-13 | 2009-04-13 | Network i/o system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010251929A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014006730A (en) * | 2012-06-25 | 2014-01-16 | Fujitsu Semiconductor Ltd | Random number generation device and onboard electronic control device including the same |
JP2014187445A (en) * | 2013-03-22 | 2014-10-02 | Toyota Motor Corp | Network monitoring device and network monitoring method |
JP2018131015A (en) * | 2017-02-14 | 2018-08-23 | 株式会社デンソー | Electronic control device |
JP6573052B1 (en) * | 2018-03-28 | 2019-09-11 | 住友電気工業株式会社 | Control device, control method, and computer program |
WO2019187535A1 (en) * | 2018-03-28 | 2019-10-03 | 住友電気工業株式会社 | Control device, control method, and computer program |
-
2009
- 2009-04-13 JP JP2009097410A patent/JP2010251929A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014006730A (en) * | 2012-06-25 | 2014-01-16 | Fujitsu Semiconductor Ltd | Random number generation device and onboard electronic control device including the same |
JP2014187445A (en) * | 2013-03-22 | 2014-10-02 | Toyota Motor Corp | Network monitoring device and network monitoring method |
JP2018131015A (en) * | 2017-02-14 | 2018-08-23 | 株式会社デンソー | Electronic control device |
JP6573052B1 (en) * | 2018-03-28 | 2019-09-11 | 住友電気工業株式会社 | Control device, control method, and computer program |
WO2019187535A1 (en) * | 2018-03-28 | 2019-10-03 | 住友電気工業株式会社 | Control device, control method, and computer program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2010251929A (en) | Network i/o system | |
CN109347884B (en) | Method and device for converting real-time Ethernet to field bus and storage medium | |
EP3116166A1 (en) | Control system, control device, and control method | |
CN106161165B (en) | Method and field device for transmitting data on an industrial process network | |
JP6626240B2 (en) | controller | |
US20120143941A1 (en) | Apparatus for controlling service of network robot system based on remote procedure calls and method thereof | |
CN113179227B (en) | AT instruction control method based on queue | |
US20110022809A1 (en) | Consolidated electronic control unit and relay program implemented in the same | |
EP3528471B1 (en) | Control device, control system, control method, and control program | |
KR100881275B1 (en) | Apparatus and method for controlling a priority preference in an environment of sca multi-component and multi-port | |
JP2008181482A (en) | Programmable logic control device with integrated database driver | |
DE102021211605A1 (en) | METHOD AND APPARATUS FOR TRANSMITTING AND/OR RECEIVING DATA STREAM WITH A NETWORK INTERFACE CONTROLLER | |
CN104123250A (en) | Data transmission method based on DMA | |
EP3557345B1 (en) | Control apparatus, system program, and control method | |
CN105308570A (en) | Method and apparatus for data transfer to the cyclic tasks in a distributed real-time system at the correct time | |
CN112840277B (en) | Real-time automation device with real-time data bus | |
KR101951908B1 (en) | Apparatus and method for sharing devices for robot software components | |
WO2017047657A1 (en) | Buffer control apparatus, communication node, and relay apparatus | |
US20100138022A1 (en) | Apparatus for controlling component of application and method thereof | |
US8639860B2 (en) | Data transfer system and data transfer method | |
JP6188895B1 (en) | In-vehicle control program execution time data acquisition method and in-vehicle control device | |
JPWO2008068795A1 (en) | Communication system and communication apparatus | |
KR102289140B1 (en) | Method for executing software in electronic device and electronic device thereof | |
KR100460994B1 (en) | High-bandwidth I/O device with direct memory access and method thereof | |
US8018957B2 (en) | Gateway system with automatic dispatch mechanism and method thereof |