Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7814613B2 - communication systems - Google Patents
[go: Go Back, main page]

JP7814613B2 - communication systems - Google Patents

communication systems

Info

Publication number
JP7814613B2
JP7814613B2 JP2025509564A JP2025509564A JP7814613B2 JP 7814613 B2 JP7814613 B2 JP 7814613B2 JP 2025509564 A JP2025509564 A JP 2025509564A JP 2025509564 A JP2025509564 A JP 2025509564A JP 7814613 B2 JP7814613 B2 JP 7814613B2
Authority
JP
Japan
Prior art keywords
ecu
request message
processing
load
transmission interval
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
JP2025509564A
Other languages
Japanese (ja)
Other versions
JPWO2024201971A1 (en
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.)
Astemo Ltd
Original Assignee
Astemo Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Astemo Ltd filed Critical Astemo Ltd
Publication of JPWO2024201971A1 publication Critical patent/JPWO2024201971A1/ja
Application granted granted Critical
Publication of JP7814613B2 publication Critical patent/JP7814613B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、通信システムに関する。 The present invention relates to a communication system.

相互に通信を行う複数の車載装置が知られている。特許文献1には、更新用データを分割して相手先装置に送信する際、相手先装置の処理負荷を基に送信間隔を決定する車載通信装置が記載されている。 Multiple in-vehicle devices that communicate with each other are known. Patent Document 1 describes an in-vehicle communication device that divides update data and transmits it to a destination device, determining the transmission interval based on the processing load of the destination device.

特開2021-039681号公報Japanese Patent Application Laid-Open No. 2021-039681

従来技術は、データを受信する相手先装置の処理負荷を送信元で判定しているため、処理負荷の精度が低く、データの送信が失敗するおそれがあった。 In conventional technology, the processing load of the destination device receiving the data was determined by the sender, which resulted in low accuracy of the processing load and the risk of data transmission failing.

本発明は、装置間のデータ通信が失敗する確率を低下させ、より確実なデータ通信を行うことを目的とする。 The present invention aims to reduce the probability of data communication failure between devices and ensure more reliable data communication.

本発明の一態様による通信システムは、所定の処理の実行を要求する要求メッセージを所定の送信間隔で送信する主装置と、前記主装置が送信した前記要求メッセージを受信し、受信した前記要求メッセージに対応する応答メッセージを前記主装置に送信する従装置とを備え、前記従装置は、前記従装置の処理負荷を算出し、算出した前記従装置の処理負荷に関する負荷情報を含む前記応答メッセージを前記主装置に送信し、前記主装置は、前記主装置の処理負荷を算出し、前記従装置が送信した前記応答メッセージを受信し、算出した前記主装置の処理負荷と受信した前記応答メッセージに含まれる前記負荷情報とに基づいて前記要求メッセージにより要求する処理および前記要求メッセージの前記送信間隔を決定する。 A communication system according to one aspect of the present invention comprises a master device that transmits a request message at a predetermined transmission interval requesting the execution of a predetermined process, and a slave device that receives the request message transmitted by the master device and transmits a response message corresponding to the received request message to the master device, wherein the slave device calculates the processing load of the slave device and transmits the response message to the master device including load information regarding the calculated processing load of the slave device, and the master device calculates the processing load of the master device, receives the response message transmitted by the slave device, and determines the process requested by the request message and the transmission interval of the request message based on the calculated processing load of the master device and the load information included in the received response message.

本発明によれば、装置間のデータ通信が失敗する確率を低下させ、より確実にデータ通信を行うことができる。 The present invention reduces the probability of data communication between devices failing, enabling more reliable data communication.

図1は、第1実施形態に係る通信システムの全体構成を示す模式図である。FIG. 1 is a schematic diagram showing the overall configuration of a communication system according to the first embodiment. 図2は、第1ECUのハードウェア構成を示す模式図である。FIG. 2 is a schematic diagram showing the hardware configuration of the first ECU. 図3は、第1ECUおよび第2ECUの機能構成を示す模式図である。FIG. 3 is a schematic diagram showing the functional configuration of the first ECU and the second ECU. 図4は、第1ECUの不揮発性メモリに格納されるデータを示す模式図である。FIG. 4 is a schematic diagram showing data stored in the nonvolatile memory of the first ECU. 図5は、第1ECUと第2ECUとの間で行われるデータ通信の通信シーケンスを示す図である。FIG. 5 is a diagram showing a communication sequence of data communication performed between the first ECU and the second ECU. 図6は、第1ECUおよび第2ECUが実行する処理のフローチャートである。FIG. 6 is a flowchart of the process executed by the first ECU and the second ECU. 図7は、第1ECUと第2ECUとの間で行われるデータ通信の通信シーケンスを示す図である。FIG. 7 is a diagram showing a communication sequence of data communication performed between the first ECU and the second ECU.

<第1実施形態>
図1~図6を参照して、本発明の第1実施形態に係る通信システムについて説明する。
First Embodiment
A communication system according to a first embodiment of the present invention will be described with reference to FIGS.

図1は、第1実施形態に係る通信システム1の全体構成を示す模式図である。通信システム1は、車両2に搭載された第1ECU3および第2ECU4、ならびに、車両2の外部に設けられた管理用PC5により構成される。第1ECU3および第2ECU4は、それぞれ、例えばエンジンやブレーキ等を制御する電子制御ユニットである。車両2の内部には、例えばCAN(Controller Area Network)などのネットワーク7が設けられる。第1ECU3および第2ECU4はネットワーク7に接続されており、相互にデータ通信が可能である。 Figure 1 is a schematic diagram showing the overall configuration of a communication system 1 according to the first embodiment. The communication system 1 is composed of a first ECU 3 and a second ECU 4 mounted on a vehicle 2, and a management PC 5 provided outside the vehicle 2. The first ECU 3 and the second ECU 4 are electronic control units that control, for example, the engine, the brakes, etc. A network 7, such as a CAN (Controller Area Network), is provided inside the vehicle 2. The first ECU 3 and the second ECU 4 are connected to the network 7, enabling data communication between them.

なお、車両2には他にもECUが搭載されており、それらのECUもネットワーク7に接続されているが、図1ではそれらのECUを代表して第1ECU3および第2ECU4のみを図示している。以下の説明でも同様に、第1ECU3および第2ECU4のみに注目する。 Note that vehicle 2 is equipped with other ECUs, and these ECUs are also connected to network 7, but Figure 1 only illustrates first ECU 3 and second ECU 4 as representatives of these ECUs. Similarly, the following explanation will focus only on first ECU 3 and second ECU 4.

車両2には、メンテナンス用のインタフェース6が設けられている。インタフェース6には、車両2の外部から管理用PC5を接続することができる。メンテナンス用のインタフェース6は、車両2の内部においてネットワーク7に接続されている。つまりインタフェース6を利用することで、車外の管理用PC5をネットワーク7に接続して管理用PC5と第1ECU3および第2ECU4との間でデータ通信を行うことが可能である。 The vehicle 2 is provided with a maintenance interface 6. A management PC 5 can be connected to the interface 6 from outside the vehicle 2. The maintenance interface 6 is connected to a network 7 inside the vehicle 2. In other words, by using the interface 6, it is possible to connect the management PC 5 outside the vehicle to the network 7 and perform data communication between the management PC 5 and the first ECU 3 and second ECU 4.

図2は、第1ECU3のハードウェア構成を示す模式図である。なお、第2ECU4および管理用PC5は少なくとも実施形態の説明の限りにおいて第1ECU3と同様のハードウェア構成を備えるため、説明を省略する。 Figure 2 is a schematic diagram showing the hardware configuration of the first ECU 3. Note that the second ECU 4 and the management PC 5 have the same hardware configuration as the first ECU 3, at least as far as the description of the embodiment is concerned, and therefore their description will be omitted.

第1ECU3は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)等の処理装置11、ROM(Read Only Memory)、フラッシュメモリ、ハードディスクドライブ等の不揮発性メモリ12、所謂RAM(Random Access Memory)と呼ばれる揮発性メモリ13、入出力インタフェース14、及び、その他の周辺回路を備えたコンピュータで構成される。これらのハードウェアは、協働してソフトウェアを動作させ、複数の機能を実現する。なお、第1ECU3は、1つのコンピュータで構成してもよいし、複数のコンピュータで構成してもよい。また、処理装置11としては、ASIC(application specific integrated circuit)、FPGA(Field Programmable Gate Array)などを用いることができる。 The first ECU 3 is composed of a computer equipped with a processing device 11 such as a CPU (Central Processing Unit), MPU (Micro Processing Unit), or DSP (Digital Signal Processor), non-volatile memory 12 such as ROM (Read Only Memory), flash memory, or a hard disk drive, volatile memory 13 known as RAM (Random Access Memory), an input/output interface 14, and other peripheral circuits. These hardware components work together to run software and realize multiple functions. The first ECU 3 may be composed of a single computer or multiple computers. The processing device 11 may be an ASIC (application specific integrated circuit), FPGA (Field Programmable Gate Array), or the like.

不揮発性メモリ12には、各種演算が実行可能なプログラムが格納されている。すなわち、不揮発性メモリ12は、本実施形態の機能を実現するプログラムを読み取り可能な記憶媒体(記憶装置)である。揮発性メモリ13は、処理装置11による演算結果及び入出力インタフェース14から入力された信号を一時的に記憶する記憶媒体(記憶装置)である。処理装置11は、不揮発性メモリ12に記憶されたプログラムを揮発性メモリ13に展開して演算実行する装置であって、プログラムに従って入出力インタフェース14、不揮発性メモリ12及び揮発性メモリ13から取り入れたデータに対して所定の演算処理を行う。 The non-volatile memory 12 stores programs capable of executing various calculations. In other words, the non-volatile memory 12 is a storage medium (storage device) that can read programs that realize the functions of this embodiment. The volatile memory 13 is a storage medium (storage device) that temporarily stores the results of calculations performed by the processing unit 11 and signals input from the input/output interface 14. The processing unit 11 is a device that loads the programs stored in the non-volatile memory 12 into the volatile memory 13 and executes the calculations, and performs predetermined calculations on data taken in from the input/output interface 14, the non-volatile memory 12, and the volatile memory 13 in accordance with the programs.

入出力インタフェース14の入力部は、ネットワーク7を介して他の各種装置(第2ECU4等)から入力された信号を処理装置11で演算可能なデータに変換する。また、入出力インタフェース14の出力部は、処理装置11での演算結果に応じた出力用の信号を生成し、その信号をネットワーク7を介して他の各種装置(第2ECU4等)に出力する。The input section of the input/output interface 14 converts signals input from various other devices (such as the second ECU 4) via the network 7 into data that can be calculated by the processing device 11. The output section of the input/output interface 14 generates an output signal based on the calculation results of the processing device 11 and outputs that signal to various other devices (such as the second ECU 4) via the network 7.

図3は、第1ECU3および第2ECU4の機能構成を示す模式図である。第1ECU3は、第1負荷算出部31、第1送受信部32、成否判定部33、間隔決定部34、および処理選択部35を備える。第1負荷算出部31は、第1ECU3の処理負荷を算出する。処理負荷については後に詳述する。第1送受信部32は、所定の処理の実行を要求する要求メッセージを所定の送信間隔で第2ECU4に送信する。第1送受信部32は更に、第2ECU4が送信した応答メッセージを受信する。成否判定部33は、第1送受信部32による要求メッセージの送信が成功したか失敗したかを判定する。間隔決定部34は、第1送受信部32が応答メッセージを受信したとき、第1ECU3の処理負荷と、受信した応答メッセージに含まれる負荷情報とに基づいて、要求メッセージの送信間隔を決定する。処理選択部35は、要求メッセージにより実行を要求する所定の処理を選択する。 Figure 3 is a schematic diagram showing the functional configuration of the first ECU 3 and the second ECU 4. The first ECU 3 includes a first load calculation unit 31, a first transmission/reception unit 32, a success/failure determination unit 33, an interval determination unit 34, and a process selection unit 35. The first load calculation unit 31 calculates the processing load of the first ECU 3. The processing load will be described in detail later. The first transmission/reception unit 32 transmits a request message requesting the execution of a predetermined process to the second ECU 4 at a predetermined transmission interval. The first transmission/reception unit 32 also receives a response message transmitted by the second ECU 4. The success/failure determination unit 33 determines whether the transmission of the request message by the first transmission/reception unit 32 was successful or unsuccessful. When the first transmission/reception unit 32 receives a response message, the interval determination unit 34 determines the transmission interval of the request message based on the processing load of the first ECU 3 and the load information contained in the received response message. The process selection unit 35 selects the predetermined process requested to be executed by the request message.

第2ECU4は、第2負荷算出部41、第2送受信部42、および処理実行部43を備える。第2負荷算出部41は、第2ECU4の処理負荷を算出する。第2送受信部42は、第1ECU3が送信した要求メッセージを受信する。第2送受信部42は更に、受信した要求メッセージに対応する応答メッセージを第1ECU3に送信する。処理実行部43は、第2送受信部42が要求メッセージを受信する度、その要求メッセージにより要求される所定の処理を実行する。 The second ECU 4 includes a second load calculation unit 41, a second transmission/reception unit 42, and a processing execution unit 43. The second load calculation unit 41 calculates the processing load of the second ECU 4. The second transmission/reception unit 42 receives a request message transmitted by the first ECU 3. The second transmission/reception unit 42 further transmits a response message corresponding to the received request message to the first ECU 3. Each time the second transmission/reception unit 42 receives a request message, the processing execution unit 43 executes the specified processing requested by the request message.

なお、管理用PC5は少なくとも実施形態の説明の限りにおいて第1ECU3と同様の機能構成を備えるため、説明を省略する。すなわち管理用PC5は、第1ECU3と同様に、第1負荷算出部31、第1送受信部32、成否判定部33、間隔決定部34、および処理選択部35を備える。 Note that the management PC 5 has the same functional configuration as the first ECU 3, at least as far as the description of the embodiment is concerned, and therefore its description will be omitted. That is, like the first ECU 3, the management PC 5 has a first load calculation unit 31, a first transmission/reception unit 32, a success/failure determination unit 33, an interval determination unit 34, and a processing selection unit 35.

例えば、要求メッセージを送信することにより、第2ECU4に仕様確認処理を実行させる場合を考える。このような仕様確認処理は、例えば、第2ECU4に診断処理を実行させる際、診断処理の前処理として実行される。この場合、まず第1ECU3から第2ECU4に、第2ECU4の仕様データ(例えば第2ECU4に付された個体番号や第2ECU4を構成する各種部品の番号)を要求する要求メッセージが送信される。第2ECU4は、このような要求メッセージを受信すると、第2ECU4自身の仕様データと第2ECU4の処理負荷を示す負荷データ(負荷情報)とを含む応答メッセージを第1ECU3に返送する。第1ECU3は、受信した応答メッセージから仕様データを読み出して、第2ECU4にどのような診断処理を実行させるかを決定する。第1ECU3は更に、応答メッセージに含まれる負荷データ(負荷情報)を用いて、同様の要求メッセージの送信間隔と、同様の要求メッセージを次回送信する際にどのような処理を第2ECU4に要求するかを決定する。For example, consider a case in which the second ECU 4 is instructed to execute a specification confirmation process by transmitting a request message. Such specification confirmation process is performed, for example, as a preprocessing step before the second ECU 4 executes a diagnostic process. In this case, the first ECU 3 first transmits a request message to the second ECU 4 requesting the second ECU 4's specification data (e.g., the individual number assigned to the second ECU 4 and the numbers of the various components constituting the second ECU 4). Upon receiving this request message, the second ECU 4 returns a response message to the first ECU 3 containing the second ECU 4's own specification data and load data (load information) indicating the processing load of the second ECU 4. The first ECU 3 reads the specification data from the received response message and determines the diagnostic process to be executed by the second ECU 4. The first ECU 3 further uses the load data (load information) contained in the response message to determine the interval for transmitting a similar request message and the process to be requested of the second ECU 4 the next time the first ECU 3 transmits a similar request message.

同様の処理は、第1ECU3ではなく管理用PC5に実行させることも可能である。つまり管理用PC5も、第2ECU4に対して、第2ECU4の仕様データを要求する要求メッセージなどを送信することできる。 Similar processing can also be performed by the management PC 5 instead of the first ECU 3. In other words, the management PC 5 can also send a request message to the second ECU 4 requesting specification data for the second ECU 4.

次に、処理負荷について説明する。第1実施形態において、第1ECU3の処理負荷とは、第1ECU3が備える処理装置11の処理負荷の大きさを指す。例えば、処理装置11による単位時間あたりの演算量が多ければ多いほど、第1ECU3の処理負荷が大きいといえる。同様に、第2ECU4の処理負荷とは、第2ECU4が備える処理装置11の処理負荷の大きさを指す。 Next, we will explain the processing load. In the first embodiment, the processing load of the first ECU 3 refers to the magnitude of the processing load of the processing device 11 provided in the first ECU 3. For example, the greater the amount of calculations per unit time by the processing device 11, the greater the processing load of the first ECU 3. Similarly, the processing load of the second ECU 4 refers to the magnitude of the processing load of the processing device 11 provided in the second ECU 4.

第1実施形態では、処理負荷を、負荷率と呼称する0以上1以下の数値により表す。最も処理負荷が小さいとき、負荷率は0になる。最も処理負荷が大きいとき、負荷率は1になる。 In the first embodiment, the processing load is represented by a numerical value between 0 and 1, called the load rate. When the processing load is at its lightest, the load rate is 0. When the processing load is at its highest, the load rate is 1.

第1負荷算出部31による処理負荷(負荷率)の算出方法について説明する。第1負荷算出部31は、所定の単位時間(例えば1ミリ秒)ごとに、その単位時間における処理装置11の非アイドル時間を集計する。非アイドル時間とは、処理装置11が何らかの演算処理を行っている時間のことである。第1負荷算出部31は、非アイドル時間÷単位時間を計算し、0以上1以下の負荷率を算出する。例えば、当該単位時間において処理装置11が演算処理を一切行っていなければ、負荷率は0になる。また、当該単位時間において処理装置11が演算処理を常に行っていた場合には、負荷率は1になる。 The following describes how the first load calculation unit 31 calculates the processing load (load factor). The first load calculation unit 31 tallies the non-idle time of the processing device 11 for each predetermined unit of time (e.g., 1 millisecond). Non-idle time refers to the time during which the processing device 11 is performing some kind of calculation processing. The first load calculation unit 31 calculates the non-idle time divided by the unit time to calculate a load factor between 0 and 1. For example, if the processing device 11 is not performing any calculation processing during that unit of time, the load factor will be 0. On the other hand, if the processing device 11 is constantly performing calculation processing during that unit of time, the load factor will be 1.

第1負荷算出部31は、算出した負荷率を揮発性メモリ13の所定位置に繰り返し格納する。従って、揮発性メモリ13のその所定位置には、常に最新の負荷率が格納される。例えば第1送受信部32や間隔決定部34など、負荷率を必要とする機能部は、揮発性メモリ13のその所定位置を参照する(読み出す)ことにより、最新の負荷率を取得する。 The first load calculation unit 31 repeatedly stores the calculated load rate in a predetermined location in the volatile memory 13. Therefore, the latest load rate is always stored in that predetermined location in the volatile memory 13. For example, functional units that require the load rate, such as the first transmission/reception unit 32 and the interval determination unit 34, obtain the latest load rate by referring to (reading) that predetermined location in the volatile memory 13.

なお、第2負荷算出部41による処理負荷(負荷率)の算出方法は、第1負荷算出部31と同様であるので説明を省略する。つまり、第1負荷算出部31が第1ECU3(または管理用PC5)の負荷率を算出したのと同様の方法により、第2負荷算出部41は第2ECU4の負荷率を算出する。 The method for calculating the processing load (load rate) by the second load calculation unit 41 is the same as that of the first load calculation unit 31, so a description thereof will be omitted. In other words, the second load calculation unit 41 calculates the load rate of the second ECU 4 in the same manner as the first load calculation unit 31 calculates the load rate of the first ECU 3 (or the management PC 5).

図4は、第1ECU3の不揮発性メモリ12に格納されるデータを示す模式図である。第1ECU3の不揮発性メモリ12には、送信間隔テーブル91および処理内容テーブル92が予め格納されている。また、第1ECU3の不揮発性メモリ12には更に、送信間隔データ93および処理内容データ94が格納される。 Figure 4 is a schematic diagram showing the data stored in the non-volatile memory 12 of the first ECU 3. A transmission interval table 91 and a processing content table 92 are pre-stored in the non-volatile memory 12 of the first ECU 3. In addition, the non-volatile memory 12 of the first ECU 3 also stores transmission interval data 93 and processing content data 94.

送信間隔テーブル91は、第1ECU3の処理負荷(負荷率)と第2ECU4の処理負荷(負荷率)とから要求メッセージの送信間隔を算出するためのテーブルである。間隔決定部34は、送信間隔テーブル91を用いて要求メッセージの送信間隔を算出する。図4に示す送信間隔テーブル91には、第1ECU3の処理負荷および第2ECU4の処理負荷をそれぞれ低、中、高の3段階に分類したとき、それぞれの組み合わせごとに予め定められた送信間隔が格納されている。第1ECU3の処理負荷が3通り(低、中、高)あり、第2ECU4の処理負荷が3通り(低、中、高)あるので、送信間隔テーブル91には、3×3=9通りの組み合わせごとに送信間隔が格納される。 The transmission interval table 91 is a table for calculating the transmission interval of a request message from the processing load (load rate) of the first ECU 3 and the processing load (load rate) of the second ECU 4. The interval determination unit 34 calculates the transmission interval of a request message using the transmission interval table 91. The transmission interval table 91 shown in FIG. 4 stores predetermined transmission intervals for each combination of the processing load of the first ECU 3 and the processing load of the second ECU 4, which are classified into three levels: low, medium, and high. Since there are three types of processing load for the first ECU 3 (low, medium, high) and three types of processing load for the second ECU 4 (low, medium, high), the transmission interval table 91 stores transmission intervals for each of 3 x 3 = 9 combinations.

例えば、負荷率0.4未満を低、負荷率0.4以上0.8未満を中、負荷率0.8以上を高と定めるものとする。第1ECU3の負荷率が0.5であり、第2ECU4の負荷率が0.2であるとき、前者は中、後者は低にそれぞれ該当するので、間隔決定部34は、送信間隔テーブル91から「第1ECU3の処理負荷は中」、「第2ECU4の処理負荷は低」という組み合わせに対応する送信間隔を読み出して新たな送信間隔とする。For example, a load rate of less than 0.4 is defined as low, a load rate of 0.4 or more but less than 0.8 as medium, and a load rate of 0.8 or more as high. When the load rate of the first ECU 3 is 0.5 and the load rate of the second ECU 4 is 0.2, the former corresponds to medium and the latter corresponds to low, respectively, so the interval determination unit 34 reads out the transmission interval corresponding to the combination of "the processing load of the first ECU 3 is medium" and "the processing load of the second ECU 4 is low" from the transmission interval table 91 and sets this as the new transmission interval.

送信間隔テーブル91により決定される送信間隔は、第1ECU3の処理負荷が低いほど短く、また、第1ECU3の処理負荷が高いほど長くなるように設定されることが望ましい。同様に、送信間隔テーブル91により決定される送信間隔は、第2ECU4の処理負荷が低いほど短く、また、第2ECU4の処理負荷が高いほど長くなるように設定されることが望ましい。このように設定することで、要求メッセージを繰り返し複数回送信したとき、第2ECU4に要求する処理を短すぎず長すぎない適切な間隔で実行させることができる。 It is desirable that the transmission interval determined by the transmission interval table 91 be set so that it is shorter the lower the processing load of the first ECU 3 and longer the higher the processing load of the first ECU 3. Similarly, it is desirable that the transmission interval determined by the transmission interval table 91 be set so that it is shorter the lower the processing load of the second ECU 4 and longer the higher the processing load of the second ECU 4. By setting it in this manner, when a request message is repeatedly sent multiple times, the processing requested of the second ECU 4 can be executed at an appropriate interval that is neither too short nor too long.

なお、送信間隔テーブル91における処理負荷の区分は、より多くしてもよいし(例えば5段階など)、より少なく(例えば2段階など)してもよい。また、第1ECU3の処理負荷の区分と第2ECU4の処理負荷の区分を異なる数にしてもよい。 The number of processing load categories in the transmission interval table 91 may be greater (for example, five levels) or less (for example, two levels). Furthermore, the number of processing load categories for the first ECU 3 and the number of processing load categories for the second ECU 4 may be different.

処理内容テーブル92は、第1ECU3の処理負荷(負荷率)と第2ECU4の処理負荷(負荷率)とから要求メッセージにより要求する処理を選択するためのテーブルである。処理選択部35は、処理内容テーブル92を用いて要求メッセージにより実行を要求する処理を選択する。図4に示す処理内容テーブル92には、第1ECU3の処理負荷および第2ECU4の処理負荷をそれぞれ低、中、高の3段階に分類したとき、それぞれの組み合わせごとに予め定められた処理が格納されている。第1ECU3の処理負荷が3通り(低、中、高)あり、第2ECU4の処理負荷が3通り(低、中、高)あるので、処理内容テーブル92には、3×3=9通りの組み合わせごとに処理が格納される。 The processing content table 92 is a table for selecting a process to be requested by a request message based on the processing load (load rate) of the first ECU 3 and the processing load (load rate) of the second ECU 4. The processing selection unit 35 uses the processing content table 92 to select a process to be requested to be executed by a request message. The processing content table 92 shown in FIG. 4 stores predetermined processes for each combination of the processing load of the first ECU 3 and the processing load of the second ECU 4, which are classified into three levels: low, medium, and high. Since there are three types of processing load for the first ECU 3 (low, medium, high) and three types of processing load for the second ECU 4 (low, medium, high), the processing content table 92 stores processes for each of the 3 x 3 = 9 combinations.

例えば、負荷率0.4未満を低、負荷率0.4以上0.8未満を中、負荷率0.8以上を高と定めるものとする。第1ECU3の負荷率が0.5であり、第2ECU4の負荷率が0.2であるとき、前者は中、後者は低にそれぞれ該当するので、処理選択部35は、処理内容テーブル92から「第1ECU3の処理負荷は中」、「第2ECU4の処理負荷は低」という組み合わせに対応する処理を読み出して要求メッセージにより要求する処理とする。For example, a load rate of less than 0.4 is defined as low, a load rate of 0.4 to 0.8 as medium, and a load rate of 0.8 or more as high. When the load rate of the first ECU 3 is 0.5 and the load rate of the second ECU 4 is 0.2, the former corresponds to medium and the latter corresponds to low, respectively, so the processing selection unit 35 reads out the processing corresponding to the combination of "the processing load of the first ECU 3 is medium" and "the processing load of the second ECU 4 is low" from the processing content table 92 and sets this as the processing to be requested by the request message.

処理内容テーブル92により選択される処理内容は、第1ECU3の処理負荷が低いほど演算量の多い、また、第1ECU3の処理負荷が高いほど演算量の少ない処理となるように設定されることが望ましい。同様に、処理内容テーブル92により選択される処理内容は、第2ECU4の処理負荷が低いほど演算量の多い、また、第2ECU4の処理負荷が高いほど演算量の少ない処理となるように設定されることが望ましい。このように設定することで、要求メッセージを繰り返し複数回送信したとき、第1ECU3や第2ECU4の処理負荷が高く要求メッセージで要求する処理を実行しきれないという問題が生じないようにすることができる。また逆に、第1ECU3や第2ECU4の処理負荷が低く他の処理を実行する余裕があるときには、より演算量の多い処理の実行を要求メッセージで要求することが可能となる。 The processing content selected by the processing content table 92 is desirably set so that the lower the processing load of the first ECU 3, the greater the amount of calculation, and the higher the processing load of the first ECU 3, the less the amount of calculation. Similarly, the processing content selected by the processing content table 92 is desirably set so that the lower the processing load of the second ECU 4, the greater the amount of calculation, and the higher the processing load of the second ECU 4, the less the amount of calculation. By setting the processing content in this manner, it is possible to prevent the problem of the first ECU 3 or the second ECU 4 being too high to execute the processing requested in the request message when a request message is sent multiple times. Conversely, when the processing load of the first ECU 3 or the second ECU 4 is low and there is room to execute other processing, it is possible to request the execution of processing with a greater amount of calculation in the request message.

例えば所定の順序で各種処理を実行する、いわゆるシーケンス制御を行うための要求メッセージを考える。このとき、第1ECU3や第2ECU4の処理負荷が高く、演算量の多い処理(例えばデータ圧縮や伸長などの処理)が実行できない場合は、その処理の後に予定されており、順番が変わっても問題のない軽い処理(例えば何らかのパラメータを要求する処理など)を先に行うように、処理内容テーブル92内の各種処理を設定すればよい。For example, consider a request message for performing so-called sequence control, which executes various processes in a predetermined order. In this case, if the processing load on the first ECU 3 or the second ECU 4 is high and a process that requires a large amount of calculation (such as data compression or decompression) cannot be executed, the various processes in the process content table 92 can be set so that a lighter process (such as a process that requires some parameters) that is scheduled after the process and that does not cause any problems if the order is changed is executed first.

なお、処理内容テーブル92における処理負荷の区分は、より多くしてもよいし(例えば5段階など)、より少なく(例えば2段階など)してもよい。また、第1ECU3の処理負荷の区分と第2ECU4の処理負荷の区分を異なる数にしてもよい。 The processing load classifications in the processing content table 92 may be more (for example, five levels) or less (for example, two levels). Furthermore, the number of processing load classifications for the first ECU 3 and the second ECU 4 may be different.

送信間隔データ93は、間隔決定部34により決定された送信間隔を表すデータである。間隔決定部34は、送信間隔を決定する度、その送信間隔を不揮発性メモリ12に送信間隔データ93として格納する。つまり不揮発性メモリ12内の送信間隔データ93を読み出せば、最新の(直近の)送信間隔を得ることができる。 The transmission interval data 93 is data representing the transmission interval determined by the interval determination unit 34. Each time the interval determination unit 34 determines a transmission interval, it stores that transmission interval in the non-volatile memory 12 as the transmission interval data 93. In other words, by reading the transmission interval data 93 in the non-volatile memory 12, the latest (most recent) transmission interval can be obtained.

処理内容データ94は、処理選択部35により選択された処理を表すデータである。処理選択部35は、要求メッセージにより要求する処理を選択する度、その処理内容を不揮発性メモリ12に処理内容データ94として格納する。つまり不揮発性メモリ12内の処理内容データ94を読み出せば、最新の(直近の)要求すべき処理内容を得ることができる。 The processing content data 94 is data representing the processing selected by the processing selection unit 35. Each time the processing selection unit 35 selects a processing request by a request message, it stores the processing content in the non-volatile memory 12 as processing content data 94. In other words, by reading the processing content data 94 in the non-volatile memory 12, the latest (most recent) processing content to be requested can be obtained.

図4に示す送信間隔テーブル91、処理内容テーブル92、送信間隔データ93、および処理内容データ94は、それぞれ要求メッセージの種類ごとに存在する。例えば第2ECU4の仕様確認を行うための要求メッセージ、第2ECU4に診断処理を実行させるための要求メッセージなど、第1ECU3から第2ECU4に向けて複数の種類の要求メッセージが送信される場合、図4に示す各種データは、それら複数の種類の要求メッセージごとに存在することになる。なお、異なる種類の要求メッセージ間で、これらのデータを共用することも可能である。 The transmission interval table 91, processing content table 92, transmission interval data 93, and processing content data 94 shown in Figure 4 each exist for each type of request message. For example, if multiple types of request messages are sent from the first ECU 3 to the second ECU 4, such as a request message to check the specifications of the second ECU 4 and a request message to have the second ECU 4 execute diagnostic processing, the various data shown in Figure 4 will exist for each of these multiple types of request messages. Note that this data can also be shared between different types of request messages.

図5は、第1ECU3と第2ECU4との間で行われるデータ通信の通信シーケンスを示す図である。まず時刻t1において、第1ECU3から第2ECU4に対して要求メッセージが送信される。この要求メッセージには、第2ECU4にどのような処理を実行させたいかを示す情報や、その処理に必要な各種パラメータの情報などが含まれる。第2ECU4がこの要求メッセージを時刻t2に受信すると、続く時刻t3において、その要求メッセージにより要求された処理を第2ECU4が実行する。処理の実行が完了した時刻t4に、第2ECU4から第1ECU3に対して、その要求メッセージおよび処理に対応する応答メッセージが送信される。この応答メッセージには、要求された処理に関連する各種の情報(例えば処理の実行結果や要求されたパラメータの値など)に加えて、第2ECU4の最新の処理負荷(負荷率)を示す負荷データ(負荷情報)が含まれる。応答メッセージの受信が完了した時刻t5において、第1ECU3は当該要求メッセージの送信間隔を決定する。時刻t1からその送信間隔が経過した時刻t6において、第1ECU3は同様の要求メッセージを再度送信する。なお、送信間隔の起点は時刻t1ではなく時刻t5であってもよい。 Figure 5 shows the communication sequence of data communication between the first ECU 3 and the second ECU 4. First, at time t1, the first ECU 3 transmits a request message to the second ECU 4. This request message includes information indicating the type of processing the second ECU 4 is to execute, as well as information on various parameters required for that processing. When the second ECU 4 receives this request message at time t2, the second ECU 4 executes the processing requested by the request message at the following time t3. At time t4, when the execution of the processing is completed, the second ECU 4 transmits the request message and a response message corresponding to the processing to the first ECU 3. This response message includes various information related to the requested processing (e.g., the execution result of the processing and the values of the requested parameters), as well as load data (load information) indicating the latest processing load (load rate) of the second ECU 4. At time t5, when the reception of the response message is completed, the first ECU 3 determines the transmission interval for the request message. At time t6, when the transmission interval has elapsed since time t1, the first ECU 3 transmits a similar request message again. Note that the start point of the transmission interval may be time t5 instead of time t1.

次に、要求メッセージの送信失敗について説明する。第1実施形態の第1ECU3は、要求メッセージを送信してから所定のタイムアウト時間(例えば100ミリ秒)以内に応答メッセージが返ってくることを期待する。このタイムアウト時間は、要求メッセージの種類ごとに予め定められている。成否判定部33は、第1送受信部32が要求メッセージを送信してから所定のタイムアウト時間が経過しても応答メッセージが送られてこない場合、要求メッセージの送信が失敗したと判定する。 Next, we will explain the failure to send a request message. In the first embodiment, the first ECU 3 expects a response message to be returned within a predetermined timeout period (e.g., 100 milliseconds) after sending a request message. This timeout period is predetermined for each type of request message. If a response message is not received within the predetermined timeout period after the first transceiver 32 sent the request message, the success/failure determination unit 33 determines that the transmission of the request message has failed.

送信間隔やタイムアウト時間を予め適切に設定したにも関わらず、要求メッセージの送信が失敗してしまうのは、第1ECU3や第2ECU4の処理負荷以外の原因であると考えられる。例えば、ECUを構成する部品(半導体部品等)の劣化、半故障等により発生する不具合、ネットワーク7の輻輳などが挙げられる。部品の劣化や半故障等により不具合が生じた場合、第1ECU3や第2ECU4は自動的に再起動することがある。 If a request message fails to be sent even though the transmission interval and timeout period have been appropriately set in advance, it is believed that this is due to causes other than the processing load of the first ECU 3 or the second ECU 4. Examples include malfunctions caused by deterioration of components (semiconductor components, etc.) that make up the ECU, partial failures, and congestion on the network 7. If a malfunction occurs due to component deterioration or partial failures, the first ECU 3 or the second ECU 4 may automatically restart.

第1送受信部32は、成否判定部33により要求メッセージの送信が失敗したと判定された場合、不揮発性メモリ12内の送信間隔データ93で示される送信間隔よりも長い送信間隔で次の要求メッセージを送信する。これにより、次の要求メッセージの送信が失敗する確率を低減させることができる。送信間隔データ93は不揮発性メモリ12に格納されているため、第1ECU3が自動的に再起動した場合であっても失われない。 If the success/failure determination unit 33 determines that the transmission of a request message has failed, the first transceiver 32 transmits the next request message at a transmission interval longer than the transmission interval indicated by the transmission interval data 93 in the non-volatile memory 12. This reduces the probability that the transmission of the next request message will fail. Because the transmission interval data 93 is stored in the non-volatile memory 12, it will not be lost even if the first ECU 3 is automatically restarted.

なお、成否判定部33により要求メッセージの送信が失敗したと判定された場合、送信間隔を変更するのではなく、要求メッセージで要求する処理を、不揮発性メモリ12内の処理内容データ94で示される処理より処理負荷が低い他の処理に変更するようにしてもよい。このようにした場合であっても同様に、次の要求メッセージの送信が失敗する確率を低減させることができる。処理内容データ94は不揮発性メモリ12に格納されているため、第1ECU3が自動的に再起動した場合であっても失われない。 In addition, if the success/failure determination unit 33 determines that the transmission of the request message has failed, rather than changing the transmission interval, the process requested in the request message may be changed to another process with a lower processing load than the process indicated by the process content data 94 in the non-volatile memory 12. Even in this case, the probability that the transmission of the next request message will fail can be reduced. Because the process content data 94 is stored in the non-volatile memory 12, it will not be lost even if the first ECU 3 is automatically restarted.

図6は、第1ECU3および第2ECU4が実行する処理のフローチャートである。図6の左半分は第1ECU3が実行する処理である。また、図6の右半分は第2ECU4が実行する処理である。第1ECU3および第2ECU4は、図6に示す処理を繰り返し実行することにより、要求メッセージと応答メッセージの送受信を繰り返し行う。まず、第1ECU3が実行する処理から説明する。 Figure 6 is a flowchart of the processing executed by the first ECU 3 and the second ECU 4. The left half of Figure 6 is the processing executed by the first ECU 3. The right half of Figure 6 is the processing executed by the second ECU 4. The first ECU 3 and the second ECU 4 repeatedly send and receive request messages and response messages by repeatedly executing the processing shown in Figure 6. First, the processing executed by the first ECU 3 will be explained.

ステップS100において、第1送受信部32が所定の処理の実行を要求する要求メッセージを第2ECU4に送信する。ステップS110において、第1送受信部32が第2ECU4により送信された応答メッセージの受信を試みる。ステップS120において、成否判定部33が第1送受信部32による要求メッセージの送信に成功したか否かを判定する。すなわち、ステップS100で要求メッセージを送信してから所定のタイムアウト時間が経過する前に、ステップS110で第1送受信部32が第2ECU4により送信された応答メッセージを受信できたか否かを判定する。要求メッセージの送信に成功したと判定された場合、処理はステップS130に進む。 In step S100, the first transmitter/receiver 32 transmits a request message to the second ECU 4 requesting the execution of a predetermined process. In step S110, the first transmitter/receiver 32 attempts to receive a response message transmitted by the second ECU 4. In step S120, the success/failure determination unit 33 determines whether the first transmitter/receiver 32 was successful in transmitting the request message. That is, it determines whether the first transmitter/receiver 32 was able to receive the response message transmitted by the second ECU 4 in step S110 before a predetermined timeout period has elapsed since the request message was transmitted in step S100. If it is determined that the transmission of the request message was successful, processing proceeds to step S130.

ステップS130において、第1負荷算出部31は第1ECU3の処理負荷(負荷率)を算出する。なお、ここでは説明を簡単にするため、処理負荷(負荷率)の算出はステップS130でのみ行われるものとしているが、実際には前述の通り、処理負荷(負荷率)の算出は一定時間ごとに常に行われており、最新の負荷率が揮発性メモリ13に準備されている。ステップS140において、間隔決定部34は、ステップS130で算出された第1ECU3の処理負荷と、ステップS110で受信された応答メッセージに含まれる負荷情報とに基づいて、要求メッセージの送信間隔を決定する。決定された送信間隔は不揮発性メモリ12に格納される。ステップS150において、処理選択部35は、ステップS130で算出された第1ECU3の処理負荷と、ステップS110で受信された応答メッセージに含まれる負荷情報とに基づいて、要求メッセージにより実行を要求する所定の処理を選択する。選択した処理の内容は不揮発性メモリ12に格納される。In step S130, the first load calculation unit 31 calculates the processing load (load rate) of the first ECU 3. For simplicity's sake, it is assumed that the calculation of the processing load (load rate) is performed only in step S130. However, as described above, the calculation of the processing load (load rate) is performed continuously at regular intervals, and the latest load rate is stored in the volatile memory 13. In step S140, the interval determination unit 34 determines the transmission interval of the request message based on the processing load of the first ECU 3 calculated in step S130 and the load information included in the response message received in step S110. The determined transmission interval is stored in the non-volatile memory 12. In step S150, the process selection unit 35 selects a predetermined process to be executed by the request message based on the processing load of the first ECU 3 calculated in step S130 and the load information included in the response message received in step S110. The content of the selected process is stored in the non-volatile memory 12.

他方、ステップS120において成否判定部33が要求メッセージの送信に失敗したと判定した場合、処理はステップS160に進む。ステップS160において、間隔決定部34は、不揮発性メモリ12内の送信間隔データ93を、より長い送信間隔を表すように書き換える。その後、不揮発性メモリ12内の送信間隔データ93で表される時間が経過したら、第1ECU3は再度図6に示す処理を実行する。On the other hand, if the success/failure determination unit 33 determines in step S120 that transmission of the request message failed, processing proceeds to step S160. In step S160, the interval determination unit 34 rewrites the transmission interval data 93 in the non-volatile memory 12 to represent a longer transmission interval. After that, when the time represented by the transmission interval data 93 in the non-volatile memory 12 has elapsed, the first ECU 3 again executes the processing shown in FIG. 6.

次に、第2ECU4が実行する処理を説明する。ステップS200において第2送受信部42は、ステップS100で送信された要求メッセージを受信する。ステップS210において処理実行部43は、ステップS200において受信された要求メッセージにより要求された処理を実行する。ステップS220において第2負荷算出部41は、第2ECU4の処理負荷(負荷率)を算出する。なお、ここでは説明を簡単にするため、処理負荷(負荷率)の算出はステップS220でのみ行われるものとしているが、実際には前述の通り、処理負荷(負荷率)の算出は一定時間ごとに常に行われており、最新の負荷率が揮発性メモリ13に準備されている。ステップS230において第2送受信部42は、ステップS200において受信した要求メッセージに対応する応答メッセージを第1ECU3に送信する。この応答メッセージには、ステップS210で処理実行部43が実行した処理の結果と、ステップS220で第2負荷算出部41により算出された処理負荷(負荷率)を示す情報とが含まれる。Next, the processing executed by the second ECU 4 will be described. In step S200, the second transceiver 42 receives the request message transmitted in step S100. In step S210, the processing execution unit 43 executes the processing requested by the request message received in step S200. In step S220, the second load calculation unit 41 calculates the processing load (load rate) of the second ECU 4. For simplicity's sake, the calculation of the processing load (load rate) is assumed to be performed only in step S220. However, as mentioned above, in reality, the processing load (load rate) is calculated at regular intervals, and the latest load rate is stored in the volatile memory 13. In step S230, the second transceiver 42 transmits a response message corresponding to the request message received in step S200 to the first ECU 3. This response message includes the results of the processing executed by the processing execution unit 43 in step S210 and information indicating the processing load (load rate) calculated by the second load calculation unit 41 in step S220.

本第1実施形態によれば、次の作用効果を奏する。 This first embodiment provides the following effects:

(1)第2ECU4(従装置)は、第2ECU4(従装置)の処理負荷を算出し、算出した第2ECU4(従装置)の処理負荷に関する負荷情報を含む応答メッセージを第1ECU3(主装置)に送信する。第1ECU3(主装置)は、第1ECU3(主装置)の処理負荷を算出し、第2ECU4(従装置)が送信した応答メッセージを受信し、算出した第1ECU3(主装置)の処理負荷と受信した応答メッセージに含まれる負荷情報とに基づいて、要求メッセージにより要求する処理および要求メッセージの送信間隔を決定する。このようにしたので、装置間のデータ通信が失敗する確率を低下させ、より確実なデータ通信を行うことができる。 (1) The second ECU 4 (slave device) calculates the processing load of the second ECU 4 (slave device) and transmits a response message containing load information related to the calculated processing load of the second ECU 4 (slave device) to the first ECU 3 (main device). The first ECU 3 (main device) calculates the processing load of the first ECU 3 (main device), receives the response message transmitted by the second ECU 4 (slave device), and determines the processing requested by the request message and the transmission interval of the request message based on the calculated processing load of the first ECU 3 (main device) and the load information contained in the received response message. This reduces the probability of data communication failure between devices, enabling more reliable data communication.

(2)第1ECU3(主装置)は、決定した送信間隔を不揮発性の記憶装置である不揮発性メモリ12に記憶する。第1ECU3(主装置)は、要求メッセージの送信が失敗したときには不揮発性メモリ12(記憶装置)に記憶した送信間隔よりも長い送信間隔で要求メッセージを送信する。このようにしたので、送信失敗により装置が停止して再起動する場合も含め、前回値を用いた送信間隔の算出が可能なため、再送信時の送信成功確率を上げることができる。 (2) The first ECU 3 (main device) stores the determined transmission interval in the nonvolatile memory 12, which is a nonvolatile storage device. When transmission of a request message fails, the first ECU 3 (main device) transmits the request message at a transmission interval longer than the transmission interval stored in the nonvolatile memory 12 (storage device). This allows the transmission interval to be calculated using the previous value, even when the device is stopped and restarted due to a transmission failure, thereby increasing the probability of successful transmission when retransmitting.

(3)第1ECU3(主装置)は、決定した要求メッセージにより要求する処理を不揮発性の記憶装置である不揮発性メモリ12に記憶する。第1ECU3(主装置)は、要求メッセージの送信が失敗したときには不揮発性メモリ12(記憶装置)に記憶した処理よりも処理負荷が低い他の処理を要求する要求メッセージを送信する。このようにしたので、処理の失敗により装置が停止して再起動する場合も含め、前回値を用いて第2ECU4に要求する処理の選択が可能なため、リトライ時の処理実行の成功確率を上げることができる。 (3) The first ECU 3 (main device) stores the processing requested by the determined request message in the nonvolatile memory 12, which is a nonvolatile storage device. If the first ECU 3 (main device) fails to send the request message, it sends a request message requesting another processing with a lower processing load than the processing stored in the nonvolatile memory 12 (storage device). This allows the second ECU 4 to select the processing to be requested using the previous value, even when the device is stopped and restarted due to a processing failure, thereby increasing the probability of successful processing execution during a retry.

<第2実施形態>
図7を参照して、本発明の第2実施形態に係る通信システムについて説明する。なお、第1実施形態で説明した構成と同一もしくは相当する構成には同一の参照記号を付し、相違点を主に説明する。
Second Embodiment
A communication system according to a second embodiment of the present invention will be described with reference to Fig. 7. Components that are the same as or equivalent to those described in the first embodiment will be given the same reference symbols, and differences will be mainly described.

例えばファームウェアの更新処理(更新データ)やセキュリティ認証処理(認証データ)など、第2ECU4に比較的大きなデータを必要とする処理を実行させたいことがある。第2実施形態では、1つの処理に対応する複数の要求メッセージを用意し、それら複数の要求メッセージに大きなデータを分割して割り当てる。第1ECU3は、決定した送信間隔でそれら複数の要求メッセージを順次送信する。第2ECU4は、それら複数の要求メッセージの各々に対して応答メッセージを返していては非効率的なので、所定数の要求メッセージを受信するか、または所定時間が経過するたびに、現在までの要求メッセージの受信に成功しているか否かを示す応答メッセージを返す。第2ECU4は、このときの応答メッセージに、第1実施形態と同様に第2ECU4の処理負荷を示す負荷情報を格納する。第1ECU3は、1つの処理に対応する複数の要求メッセージの連続送信の途中であっても、第2ECU4からの応答メッセージを受信し、自身の処理負荷および応答メッセージに含まれる負荷情報に基づき、それ以降の要求メッセージの送信間隔を決定する。For example, it may be necessary to have the second ECU 4 execute a process requiring relatively large amounts of data, such as a firmware update process (update data) or a security authentication process (authentication data). In the second embodiment, multiple request messages corresponding to one process are prepared, and large amounts of data are divided and assigned to the multiple request messages. The first ECU 3 sequentially transmits the multiple request messages at a determined transmission interval. Because it would be inefficient for the second ECU 4 to return a response message to each of the multiple request messages, the second ECU 4 returns a response message indicating whether it has successfully received all of the request messages up to that point each time it receives a predetermined number of request messages or a predetermined time has elapsed. The second ECU 4 stores load information indicating the processing load of the second ECU 4 in this response message, as in the first embodiment. The first ECU 3 receives a response message from the second ECU 4 even while it is in the middle of consecutively transmitting multiple request messages corresponding to one process, and determines the transmission interval for subsequent request messages based on its own processing load and the load information contained in the response message.

例えば、第1ECU3が1つの処理に対応する10個の要求メッセージを第1の送信間隔で繰り返し送信しているとする。3個の要求メッセージを送信した時点で第2ECU4からの応答メッセージを受信したところ、第2ECU4の処理負荷が大きくなっていた。このとき第1ECU3は、第1実施形態と同様に適切な送信間隔(3個目までよりも長い送信間隔)を決定し、4個目以降の要求メッセージをその決定した送信間隔での送信に切り替える。For example, suppose the first ECU 3 repeatedly transmits ten request messages corresponding to one process at a first transmission interval. After transmitting three request messages, the first ECU 3 receives a response message from the second ECU 4, revealing that the processing load on the second ECU 4 has increased. In this case, the first ECU 3 determines an appropriate transmission interval (longer than the transmission intervals for the first three messages), as in the first embodiment, and switches to transmitting the fourth and subsequent request messages at the determined transmission interval.

第2ECU4は、1つの処理に対応する複数の要求メッセージをすべて受信すると、その1つの処理の実行を開始する。それ以降は第1実施形態と同様である。すなわち、その1つの処理の実行が完了すると、第2ECU4から第1ECU3に処理結果を示す応答メッセージが送信される。第1ECU3はその応答メッセージを受信し、処理結果を確認したり、その応答メッセージに含まれる負荷情報を用いて新たな送信間隔を決定したりや処理内容を選択したりする。 When the second ECU 4 receives all of the request messages corresponding to one process, it begins executing that one process. The process thereafter is the same as in the first embodiment. That is, when execution of that one process is completed, the second ECU 4 sends a response message indicating the processing results to the first ECU 3. The first ECU 3 receives the response message, checks the processing results, and uses the load information contained in the response message to determine a new transmission interval or select the processing content.

図7は、図5と同様の図であり、第1ECU3と第2ECU4との間で行われるデータ通信の通信シーケンスを示す図である。まず時刻t11において、第1ECU3から第2ECU4に対して1個目の要求メッセージが送信される。その後、一定時間後の時刻t12,t13にそれぞれ2個目、3個目の要求メッセージが送信される。第2ECU4は、3個目の要求メッセージを受信完了した時刻t14において、第1ECU3に応答メッセージを送信する。第1ECU3は、時刻t15にこの応答メッセージを受信完了し、新たな送信間隔を決定する。その後の時刻t16からは、ここで決定した新たな送信間隔に基づき、4個目以降の要求メッセージを順次送信する。 Figure 7 is similar to Figure 5 and shows the communication sequence of data communication between the first ECU 3 and the second ECU 4. First, at time t11, the first ECU 3 sends the first request message to the second ECU 4. Then, a certain time later, at times t12 and t13, the second and third request messages are sent, respectively. At time t14, when the second ECU 4 has received the third request message, it sends a response message to the first ECU 3. The first ECU 3 completes receiving this response message at time t15 and determines a new transmission interval. From time t16 onwards, the fourth and subsequent request messages are sent sequentially based on the new transmission interval determined here.

本第2実施形態によれば、次の作用効果を奏する。 This second embodiment provides the following effects:

(1)第2ECU4(従装置)は、第1ECU3(主装置)が送信した要求メッセージを複数回受信する毎に、それら複数の要求メッセージに対応する1つの応答メッセージを第1ECU3(主装置)に送信する。第1ECU3(主装置)は、第2ECU4(従装置)が送信した1つの応答メッセージを受信したとき、算出した第1ECU3(主装置)の処理負荷と受信した1つの応答メッセージに含まれる負荷情報とに基づいて送信間隔を決定する。このようにしたので、データ通信の途中であっても送信間隔を変更し、データ通信の成功率やデータ転送に要する時間を変更することができる。これにより、例えば処理負荷が上昇していれば、送信間隔を長くしてエラーの発生を防止できる。逆に処理負荷が低下していれば、送信間隔を短くしてデータ転送に要する時間を短縮できる。(1) The second ECU 4 (slave device) transmits one response message corresponding to the request messages transmitted by the first ECU 3 (main device) to the first ECU 3 (main device) each time the second ECU 4 (slave device) receives multiple request messages. When the first ECU 3 (main device) receives one response message transmitted by the second ECU 4 (slave device), it determines the transmission interval based on the calculated processing load of the first ECU 3 (main device) and the load information contained in the received response message. This allows the transmission interval to be changed even during data communication, thereby changing the success rate of data communication and the time required for data transfer. As a result, for example, if the processing load is increasing, the transmission interval can be lengthened to prevent errors from occurring. Conversely, if the processing load is decreasing, the transmission interval can be shortened to reduce the time required for data transfer.

次のような変形例も本発明の範囲内であり、変形例に示す構成と上述の実施形態で説明した構成を組み合わせたり、上述の異なる実施形態で説明した構成同士を組み合わせたり、以下の異なる変形例で説明する構成同士を組み合わせることも可能である。 The following variants are also within the scope of the present invention, and it is possible to combine the configurations shown in the variants with the configurations described in the above-mentioned embodiments, to combine the configurations described in the different embodiments above, or to combine the configurations described in the different variants below.

<変形例1>
上述した各実施形態では、第1ECU3および管理用PC5が要求メッセージを送信する主装置として機能し、第2ECU4が応答メッセージを送信する従装置として機能していた。本発明はこのような実施形態に限定されず、主装置および従装置は他の装置であってもよい。例えば、第1ECU3や管理用PC5が従装置として機能し、第2ECU4が主装置として機能するように構成してもよい。また、特定の装置が主装置かつ従装置であるようにしてもよい。
<Modification 1>
In the above-described embodiments, the first ECU 3 and the management PC 5 function as master devices that transmit request messages, and the second ECU 4 function as a slave device that transmits response messages. However, the present invention is not limited to these embodiments, and other devices may serve as master and slave devices. For example, the first ECU 3 and the management PC 5 may function as slave devices, and the second ECU 4 may function as a master device. Furthermore, a specific device may function as both a master and slave device.

<変形例2>
第1実施形態および第2実施形態において、要求メッセージのサイズが第1ECU3および第2ECU4の処理負荷に応じて変化するようにしてもよい。例えば第2実施形態において、大きなデータを複数の要求メッセージに分割して送信する際、処理負荷が高い場合には分割数を増やして要求メッセージ1つあたりのデータサイズが小さくなるようにしてもよい。本変形例に係る主装置は、算出した主装置の処理負荷と受信した応答メッセージに含まれる負荷情報とに基づいて要求メッセージのサイズを決定する。主装置は、主装置の処理負荷が高いほど要求メッセージのサイズを小さくする。また、主装置は、従装置の処理負荷が高いほど要求メッセージのサイズを小さくする。この構成によれば、装置間のデータ通信が失敗する確率をより低下させることができる。
<Modification 2>
In the first and second embodiments, the size of the request message may be changed depending on the processing load of the first ECU 3 and the second ECU 4. For example, in the second embodiment, when large data is divided into multiple request messages and transmitted, if the processing load is high, the number of divisions may be increased to reduce the data size of each request message. The main device in this modification determines the size of the request message based on the calculated processing load of the main device and the load information included in the received response message. The main device reduces the size of the request message as the processing load of the main device increases. Furthermore, the main device reduces the size of the request message as the processing load of the slave device increases. This configuration can further reduce the probability of failure of data communication between devices.

<変形例3>
主装置は、テーブル参照以外の方法で送信間隔を決定してもよい。例えばそれぞれの負荷率を変数として含む数式を定め、その数式に負荷率を代入して送信間隔を決定してもよい。この場合、送信間隔には下限値および上限値を予め定めておき、数式から決定した送信間隔が下限値を下回る場合には送信間隔を下限値とし、上限値を上回る場合には送信間隔を上限値とすることが望ましい。
<Modification 3>
The main device may determine the transmission interval by a method other than referring to a table. For example, a formula may be defined that includes each load factor as a variable, and the transmission interval may be determined by substituting the load factor into the formula. In this case, it is desirable to predefine a lower limit and an upper limit for the transmission interval, and to set the transmission interval to the lower limit if the transmission interval determined by the formula is below the lower limit, or to set the transmission interval to the upper limit if it is above the upper limit.

以上、本発明の実施形態について説明したが、上記実施形態は本発明の適用例の一部を示したに過ぎず、本発明の技術的範囲を上記実施形態の具体的構成に限定する趣旨ではない。 The above describes embodiments of the present invention, but the above embodiments merely illustrate some of the application examples of the present invention and are not intended to limit the technical scope of the present invention to the specific configurations of the above embodiments.

1…通信システム、2…車両、3…第1ECU、4…第2ECU、5…管理用PC、6…インタフェース、7…ネットワーク、11…処理装置、12…不揮発性メモリ、13…揮発性メモリ、14…入出力インタフェース、31…第1負荷算出部、32…第1送受信部、33…成否判定部、34…間隔決定部、35…処理選択部、41…第2負荷算出部、42…第2送受信部、43…処理実行部1...Communication system, 2...Vehicle, 3...First ECU, 4...Second ECU, 5...Management PC, 6...Interface, 7...Network, 11...Processing device, 12...Non-volatile memory, 13...Volatile memory, 14...Input/output interface, 31...First load calculation unit, 32...First transmission/reception unit, 33...Success/failure determination unit, 34...Interval determination unit, 35...Processing selection unit, 41...Second load calculation unit, 42...Second transmission/reception unit, 43...Processing execution unit

Claims (5)

所定の処理の実行を要求する要求メッセージを所定の送信間隔で送信する主装置と、
前記主装置が送信した前記要求メッセージを受信し、受信した前記要求メッセージに対応する応答メッセージを前記主装置に送信する従装置と、を備えた通信システムであって、
前記従装置は、
前記従装置の処理負荷を算出し、
算出した前記従装置の処理負荷に関する負荷情報を含む前記応答メッセージを前記主装置に送信し、
前記主装置は、
前記主装置の処理負荷を算出し、
前記従装置が送信した前記応答メッセージを受信し、
算出した前記主装置の処理負荷と受信した前記応答メッセージに含まれる前記負荷情報とに基づいて前記要求メッセージにより要求する処理および前記要求メッセージの前記送信間隔を決定する、
通信システム。
a main device that transmits a request message requesting execution of a predetermined process at a predetermined transmission interval;
a slave device that receives the request message transmitted by the master device and transmits a response message corresponding to the received request message to the master device,
The slave device
Calculating a processing load of the slave device;
transmitting the response message to the master device, the response message including load information relating to the calculated processing load of the slave device;
The main device is
Calculating a processing load of the main device;
receiving the response message sent by the slave device;
determining a process to be requested by the request message and the transmission interval of the request message based on the calculated processing load of the main device and the load information included in the received response message;
Communication system.
請求項1に記載の通信システムにおいて、
前記従装置は、前記主装置が送信した前記要求メッセージを複数回受信する毎に、それら複数の要求メッセージに対応する1つの前記応答メッセージを前記主装置に送信し、
前記主装置は、前記従装置が送信した前記1つの応答メッセージを受信したとき、算出した前記主装置の処理負荷と受信した前記1つの応答メッセージに含まれる前記負荷情報とに基づいて前記送信間隔を決定する、
通信システム。
2. The communication system according to claim 1,
the slave device transmits to the master device one response message corresponding to the plurality of request messages each time the slave device receives the plurality of request messages transmitted by the master device;
when receiving the one response message transmitted by the slave device, the master device determines the transmission interval based on the calculated processing load of the master device and the load information included in the received one response message.
Communication system.
請求項1に記載の通信システムにおいて、
前記主装置は、
決定した前記送信間隔を不揮発性の記憶装置に記憶し、
前記要求メッセージの送信が失敗したときには前記記憶装置に記憶した送信間隔よりも長い送信間隔で前記要求メッセージを送信する、
通信システム。
2. The communication system according to claim 1,
The main device is
storing the determined transmission interval in a non-volatile storage device;
When transmission of the request message fails, the request message is transmitted at a transmission interval longer than the transmission interval stored in the storage device.
Communication system.
請求項1に記載の通信システムにおいて、
前記主装置は、
決定した前記要求メッセージにより要求する処理を不揮発性の記憶装置に記憶し、
前記要求メッセージの送信が失敗したときには前記記憶装置に記憶した処理よりも処理負荷が低い他の処理を要求する前記要求メッセージを送信する、
通信システム。
2. The communication system according to claim 1,
The main device is
storing the processing requested by the determined request message in a non-volatile storage device;
When the transmission of the request message fails, the request message is transmitted to request another process having a lower processing load than the process stored in the storage device.
Communication system.
請求項1に記載の通信システムにおいて、
前記主装置は、算出した前記主装置の処理負荷と受信した前記応答メッセージに含まれる前記負荷情報とに基づいて前記要求メッセージのサイズを決定する、
通信システム。
2. The communication system according to claim 1,
the main device determines a size of the request message based on the calculated processing load of the main device and the load information included in the received response message.
Communication system.
JP2025509564A 2023-03-31 2023-03-31 communication systems Active JP7814613B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/013469 WO2024201971A1 (en) 2023-03-31 2023-03-31 Communication system

Publications (2)

Publication Number Publication Date
JPWO2024201971A1 JPWO2024201971A1 (en) 2024-10-03
JP7814613B2 true JP7814613B2 (en) 2026-02-16

Family

ID=92904468

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2025509564A Active JP7814613B2 (en) 2023-03-31 2023-03-31 communication systems

Country Status (4)

Country Link
JP (1) JP7814613B2 (en)
CN (1) CN120826896A (en)
DE (1) DE112023005509T5 (en)
WO (1) WO2024201971A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021014995A1 (en) 2019-07-19 2021-01-28 日立オートモティブシステムズ株式会社 Gateway device, data frame transmission method, and program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4466188B2 (en) * 2003-07-16 2010-05-26 株式会社デンソー Vehicle control device
JP2006080615A (en) * 2004-09-07 2006-03-23 Nec Commun Syst Ltd Network management method, apparatus and program
JP2014028547A (en) * 2012-07-31 2014-02-13 Suzuki Motor Corp On-vehicle network system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021014995A1 (en) 2019-07-19 2021-01-28 日立オートモティブシステムズ株式会社 Gateway device, data frame transmission method, and program

Also Published As

Publication number Publication date
JPWO2024201971A1 (en) 2024-10-03
WO2024201971A1 (en) 2024-10-03
DE112023005509T5 (en) 2025-11-13
CN120826896A (en) 2025-10-21

Similar Documents

Publication Publication Date Title
JP5050653B2 (en) Electronic control device
US11715337B2 (en) Controller diagnostic device and method thereof
US7096289B2 (en) Sender to receiver request retry method and apparatus
US11695590B2 (en) Communication device, communication system and message arbitration method
CN111930840B (en) Method and system for optimizing consensus mechanism based on Paxos algorithm and blockchain network
JP2019179309A (en) Processor
JP7814613B2 (en) communication systems
CN116633780B (en) Vehicle gateway upgrade method, device, vehicle and storage medium
CN114761935A (en) Controller
US7788379B2 (en) Network system and information processing method
CN112673344B (en) Method, device and system for upgrading software
JP2024047214A (en) Control device
CN116760793A (en) Message polling reissue method, device, server and storage medium
WO2023209820A1 (en) In-vehicle electronic device
JP2006253922A (en) Gateway apparatus and data transfer method for the gateway apparatus
JP2019201289A (en) Electronic control device
JP2009187474A (en) Semiconductor device, portable electronic device, self-diagnosis method, self-diagnosis program
JP6992694B2 (en) Communication device and communication method
CN120803679B (en) A design method, device and storage medium for a counter
JP7758490B2 (en) CAN communication method and motor vehicle
US5339451A (en) Data transmission system wherein the setting of the transmit data word number indicates whether a new transmission or retransmission should be sent
KR102829577B1 (en) Internal Verification Type ECU Integration System
CN115037683B (en) ECU information transmission method, system, computer device and storage medium
WO2020230537A1 (en) Node device
JP4424231B2 (en) Communications system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20250829

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260203

R150 Certificate of patent or registration of utility model

Ref document number: 7814613

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150