JP2002202891A - Electronic controller and recording medium - Google Patents

Electronic controller and recording medium

Info

Publication number
JP2002202891A
JP2002202891A JP2000402421A JP2000402421A JP2002202891A JP 2002202891 A JP2002202891 A JP 2002202891A JP 2000402421 A JP2000402421 A JP 2000402421A JP 2000402421 A JP2000402421 A JP 2000402421A JP 2002202891 A JP2002202891 A JP 2002202891A
Authority
JP
Japan
Prior art keywords
processing
output
input
application
electronic control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000402421A
Other languages
Japanese (ja)
Other versions
JP4427899B2 (en
JP2002202891A5 (en
Inventor
Yoshinobu Tani
芳伸 谷
Keisuke Matsuda
啓資 松田
Katsutoshi Haruna
克俊 春名
Kunitaka Egawa
邦隆 江川
Shigeo Kato
滋郎 加藤
Shuichi Nitta
修一 新田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2000402421A priority Critical patent/JP4427899B2/en
Publication of JP2002202891A publication Critical patent/JP2002202891A/en
Publication of JP2002202891A5 publication Critical patent/JP2002202891A5/ja
Application granted granted Critical
Publication of JP4427899B2 publication Critical patent/JP4427899B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an electronic controller or the like capable of reducing the capacity of a program, and improving the degree of freedom of an application by improving the independency of an application program, and ensuring reliability. SOLUTION: A body ECU inputs data from an in-vehicle LNA or an input port by input processing in an S6 according to timer interruption, and arbitrates the contradiction of the input data by input arbitration processing in an S7, and generates output data based on the input data arbitrated by application processing in an S8. Then, the contradiction of the output data is arbitrated by output arbitration processing in an S9, and the output data arbitrated by output processing in an S10 are outputted to the in-vehicle LAN or the output port. Also, the programs of input processing, input arbitration processing, and output arbitration processing, and output processing are executed by simple scheduling, and the program of the application processing is executed by event driven.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】電子制御装置等に関する。The present invention relates to an electronic control device and the like.

【0002】[0002]

【従来の技術及び発明が解決しようとする課題】従来よ
り、メモリに記憶されたアプリケーションプログラムに
従って、例えば所定時間毎に各種センサ等の状態を入力
し、その入力データに応じて制御対象(出力装置)を制
御するか否かを判定し、制御すると判定された場合には
その制御対象を制御するための出力を行う電子制御装置
が知られている。
2. Description of the Related Art Conventionally, according to an application program stored in a memory, states of various sensors and the like are input at predetermined time intervals, for example, and a control target (output device) is input in accordance with the input data. 2. Description of the Related Art There is known an electronic control device which determines whether or not to control the control, and when it is determined that the control is performed, performs an output for controlling the control target.

【0003】このような電子制御装置のアプリケーショ
ンプログラムは、制御対象や制御目的などに応じて所定
の処理単位毎に作成し、その作成したそれぞれのアプリ
ケーションプログラムを連続的に実行するように構成す
ること、すなわち複数のアプリケーションプログラムを
順次実行するスケジューリング方式(シンプルスケジュ
ーリング)で実行することで、複数の制御対象の制御ま
たは1の制御対象の複数の制御を1の電子制御装置で実
現している。
An application program for such an electronic control device is created for each predetermined processing unit according to a control object, a control purpose, and the like, and the created application programs are configured to be continuously executed. That is, by executing a plurality of application programs in a scheduling method (simple scheduling) for sequentially executing, a plurality of control targets or a plurality of control targets are realized by one electronic control device.

【0004】しかしながら、このような電子制御装置で
は、それぞれのアプリケーションプログラムで入力→判
断→出力の処理を行っているため次のような問題があっ
た。すなわち、同一の入力装置から複数のアプリケーシ
ョンプログラムによって入力を行ったり、同一の出力装
置に対して複数のアプリケーションプログラムによって
出力を行う場合、最初に実行されたアプリケーションプ
ログラムでの処理と後に実行されたアプリケーションプ
ログラムでの処理において、入力装置から入力した情報
が変化してしまい処理結果に矛盾が生じたり、最初に実
行したアプリケーションプログラムによる処理と後に実
行したアプリケーションプログラムによる処理で異なる
情報を出力してしまい、出力装置が誤動作する可能性が
あった。そのため、各処理の結果に矛盾が起きないよう
に各アプリケーションプログラムによる処理において調
停を行う必要があり、その調停のために各アプリケーシ
ョン間で情報をやりとりする必要があるため、各アプリ
ケーション間に依存関係が生じてしまい、システムの複
雑さが増すにつれアプリケーションプログラムの設計保
守等が困難となるといった問題があった。またこのよう
な電子制御装置では各アプリケーションプログラム毎の
処理において入出力を行っていたため、同一の入出力装
置に対して複数のアプリケーションプログラムによる処
理で入出力を行っており、プログラムに無駄があるとい
った問題もあった。
[0004] However, in such an electronic control device, there are the following problems because input->determination-> output processing is performed in each application program. That is, when input is performed by a plurality of application programs from the same input device, or output is performed by a plurality of application programs to the same output device, processing by an application program executed first and an application executed later In the processing by the program, the information input from the input device changes, causing inconsistency in the processing result, or outputting different information between the processing by the application program executed first and the processing by the application program executed later, The output device may malfunction. Therefore, it is necessary to perform arbitration in the processing by each application program so that inconsistency does not occur in the results of each processing, and it is necessary to exchange information between each application for the arbitration. And the design and maintenance of application programs become more difficult as the complexity of the system increases. Further, in such an electronic control device, input / output is performed in processing for each application program, and thus input / output is performed in the same input / output device by processing by a plurality of application programs, so that the program is useless. There were also problems.

【0005】そこで本発明は、上述した問題点を解決
し、入出力コードの重複を無くすことを可能にしてプロ
グラムを格納するメモリ容量を削減することができ、ア
プリケーションプログラムのモジュール性(独立性)を
高めアプリケーションの自由度を向上させることがで
き、信頼性を確保することができる電子制御装置等を提
供することを目的とする。
Accordingly, the present invention solves the above-mentioned problems, eliminates duplication of input / output codes, reduces the memory capacity for storing programs, and provides modularity (independence) of application programs. It is an object of the present invention to provide an electronic control device or the like capable of increasing the degree of freedom of an application and improving the reliability of the application.

【0006】[0006]

【課題を解決するための手段及び発明の効果】上述した
問題点を解決するためになされた請求項1に記載の電子
制御装置は、制御処理を、図1(a)に例示するように
入力処理とアプリケーション処理と出力処理に分け順次
実行して行う。このとき、入力処理のための複数の入力
処理プログラムは順次実行する一方、アプリケーション
処理のための複数のアプリケーションプログラムは、入
力処理で入力された入力データに応じて複数のアプリケ
ーションプログラムの中から実行すべきアプリケーショ
ンプログラムを決定して、その実行すべきアプリケーシ
ョンプログラムを実行する。そして、出力処理はアプリ
ケーション処理によって生成された出力データに基づい
て出力を行う出力処理プログラムを順次実行して行う。
すなわち入出力処理は順次呼び出しを行うスケジューリ
ング方式(シンプルスケジューリング)で構成し、アプ
リケーション部はアプリケーションプログラムの処理に
必要な入力データが存在した時(外部イベント発生時)
にその入力データ(イベント)に応じたアプリケーショ
ンプログラムを実行する(イベントドリブン方式)。し
たがって、イベントが発生したアプリケーションのみ実
行されるため、処理の不要なアプリケーションプログラ
ムが実行されることがなくなる。
Means for Solving the Problems and Effects of the Invention The electronic control device according to the first aspect of the present invention, which has been made to solve the above-mentioned problems, inputs a control process as illustrated in FIG. Processing, application processing, and output processing are separately executed and performed. At this time, the plurality of input processing programs for input processing are sequentially executed, while the plurality of application programs for application processing are executed from among the plurality of application programs in accordance with input data input in the input processing. The application program to be executed is determined, and the application program to be executed is executed. The output processing is performed by sequentially executing an output processing program that performs output based on output data generated by the application processing.
That is, the input / output processing is configured by a scheduling method (simple scheduling) in which calls are sequentially made, and the application unit performs processing when input data necessary for processing the application program exists (when an external event occurs).
Then, an application program corresponding to the input data (event) is executed (event-driven method). Therefore, since only the application in which the event has occurred is executed, an application program that does not require processing is not executed.

【0007】また、アプリケーション処理では入力装置
及び出力装置への入出力は行わないよう構成する。した
がって、アプリケーションプログラムは、入出力の前後
の依存関係を考慮することなく作成することが可能とな
り、信頼性が向上する。また、アプリケーションプログ
ラムは、独立したプログラムとして、例えば機能単位の
追加や削除を容易に行うことができる。またこのように
制御処理を、入力処理、アプリケーション処理、出力処
理に分けることにより、従来のようにそれぞれのアプリ
ケーション処理内で入出力を行う場合に比べ、プログラ
ムのサイズを小さくすることが可能となり、ROM等の
メモリ容量を削減することができる。
In the application processing, input / output to an input device and an output device is not performed. Therefore, the application program can be created without considering the dependency before and after input / output, and the reliability is improved. In addition, the application program can easily add or delete a function unit, for example, as an independent program. In addition, by dividing the control processing into input processing, application processing, and output processing in this way, it is possible to reduce the size of the program as compared with the conventional case where input / output is performed in each application processing, The capacity of a memory such as a ROM can be reduced.

【0008】また、制御処理は繰り返し実行することと
なるが、請求項2に示すように構成することができる。
このように所定時間毎に周期的に制御処理を実行し、そ
の所定時間内に処理が完了することで、例えばリアルタ
イムOSのような複雑な処理を、極力省いた低コストで
信頼性の高い装置とすることができる。
Further, the control process is repeatedly executed, but can be configured as described in claim 2.
As described above, the control processing is periodically executed at predetermined time intervals, and the processing is completed within the predetermined time. It can be.

【0009】そしてさらに、請求項3に示すようにデー
タ入力の完了後に入力調停を行うとよい。すなわち、入
力データに基づいてアプリケーション処理におけるアプ
リケーションプログラムを実行させる状態になったか否
かを判定する処理を行う。例えば、入力データAと入力
データBが共に1の場合に、入力調停結果としてイベン
トAを発生するといった判定を行う。そしてアプリケー
ション処理において、このイベントA発生時に実行すべ
きアプリケーションプログラムを実行する。このように
することで、アプリケーションプログラムにおける処理
に必要なレベルで各アプリケーションプログラムを実行
させることができ、アプリケーションプログラム内で入
力データに矛盾がないか等をいちいちチェックする必要
もなくなる。したがって、アプリケーションプログラム
の作成が容易になり、モジュール性も高くなって信頼性
も向上する。
Further, it is preferable to perform input arbitration after completion of data input. That is, a process of determining whether or not the application program in the application process has been executed based on the input data is performed. For example, when both the input data A and the input data B are 1, it is determined that the event A is generated as an input arbitration result. Then, in the application processing, the application program to be executed when the event A occurs is executed. By doing so, each application program can be executed at a level necessary for processing in the application program, and it is not necessary to check for inconsistencies in input data in the application program. Therefore, creation of an application program is facilitated, modularity is improved, and reliability is improved.

【0010】同様に、出力処理において、データの出力
開始前に出力調停を行うとよい(請求項4参照)。この
ようにすれば、例えば、アプリケーション処理では出力
ポートの詳細な構成を意識することなく、より高いレベ
ルの出力データを出力するだけでよくなる。また、各ア
プリケーションプログラム同士が出力データの内容に矛
盾がないかを判定する必要がなくなり、アプリケーショ
ンプログラムの作成が容易になり、モジュール性も高く
なって信頼性も向上する。
Similarly, in output processing, output arbitration may be performed before data output is started (see claim 4). By doing so, for example, in application processing, it is sufficient to output higher-level output data without being aware of the detailed configuration of the output port. In addition, there is no need for each application program to determine whether there is any inconsistency in the contents of output data. This makes it easier to create an application program, improves modularity, and improves reliability.

【0011】ここで、請求項3に記載の入力調停と請求
項4の出力調停とを行う5階層で構成されるプログラム
の間の関係を図1(b)に例示する。このように請求項
3と請求項4の双方の調停処理を行うようにすれば、ア
プリケーションプログラムの独立性は極めて高くなる。
Here, FIG. 1B shows an example of a relationship between programs composed of five layers that perform input arbitration according to claim 3 and output arbitration according to claim 4. If the arbitration processing of both the third and fourth aspects is performed in this way, the independence of the application program becomes extremely high.

【0012】そして、さらに請求項5に示すようにして
入力データの同期をとるとよい。このようにすれば、デ
ータ入力完了後の各処理において使用する入力データは
すべて同じ状態となる。したがって、例えばアプリケー
ション処理中に入力データが変化してしまい、変化前の
入力データと変化した入力データに基づいたアプリケー
ション処理を行ってしまうような矛盾は発生しなくな
る。したがって信頼性(安全性)を容易に確保すること
ができる。
Further, it is preferable to synchronize the input data as described in claim 5. In this way, the input data used in each process after the completion of data input is all in the same state. Therefore, for example, the inconsistency that the input data changes during the application processing and the application processing is performed based on the input data before the change and the changed input data does not occur. Therefore, reliability (safety) can be easily ensured.

【0013】同様に、請求項6に示すようにして出力デ
ータの同期をとれば、アプリケーション処理完了後の各
処理において使用する出力データはすべて同じ状態とな
る。したがって、例えば出力処理中に出力データが変化
してしまい、変化前の出力データと変化した出力データ
に基づいた出力処理を行ってしまうような矛盾が発生し
なくなる。したがって信頼性(安全性)を容易に確保す
ることができる。
Similarly, if the output data is synchronized as described in claim 6, all output data used in each processing after the completion of the application processing will be in the same state. Therefore, for example, inconsistency in which output data changes during output processing and output processing based on the output data before the change and the changed output data is performed does not occur. Therefore, reliability (safety) can be easily ensured.

【0014】また、請求項7に示すようにして入力調停
結果の同期をとれば、入力調停完了後の各処理において
使用する入力調停結果は、すべて同じ状態となる。した
がって、例えばアプリケーション処理中に入力調停結果
が変化してしまい、変化前の入力調停結果と変化した入
力調停結果に基づいたアプリケーション処理を行ってし
まうような矛盾が発生しなくなる。したがって信頼性
(安全性)を容易に確保することができる。
Further, if the input arbitration results are synchronized as described in claim 7, the input arbitration results used in each processing after the completion of the input arbitration are all in the same state. Therefore, for example, there is no inconsistency that the input arbitration result changes during the application processing and the application processing based on the changed input arbitration result and the changed input arbitration result is performed. Therefore, reliability (safety) can be easily ensured.

【0015】同様に、請求項8に示すようにして出力調
停結果の同期をとれば、出力調停完了後の各処理におい
て使用する出力調停結果は、すべて同じ状態となる。し
たがって、例えばデータの出力中に出力調停結果が変化
してしまい、変化前の出力調停結果と変化した出力調停
結果に基づいたデータの出力を行ってしまうような矛盾
が発生しなくなる。したがって信頼性(安全性)を容易
に確保することができる。
Similarly, if the output arbitration results are synchronized as described in claim 8, the output arbitration results used in each processing after the output arbitration is completed are all in the same state. Therefore, for example, the output arbitration result changes during data output, and contradiction in which data output based on the output arbitration result before the change and the changed output arbitration result is not generated. Therefore, reliability (safety) can be easily ensured.

【0016】またアプリケーションプログラム間で処理
結果を利用する場合は、請求項9のようにして、直接ア
プリケーション間で処理結果(データ)の受け渡しをし
ないようにするとよい。例えば、アプリケーション間の
データの通信は、出力処理や入力処理を1度通して別の
アプリケーションに通知することで、安全設計が可能な
仕組みとなる。そして、アプリケーション・アプリケー
ション間の結合が切れて、機能の付け外しが可能な機構
となる。よって、アプリケーションプログラム同士の独
立性が高くなり、アプリケーションプログラムの開発が
容易になる。また、入出力信号の信頼性(安全性)を容
易に確保することができる。
In the case where the processing result is used between application programs, the processing result (data) may not be directly transferred between the applications. For example, in data communication between applications, the output process and the input process are performed once and notified to another application, so that a safe design is possible. Then, the connection between the applications is broken, and a mechanism capable of attaching and detaching functions is provided. Therefore, the independence between the application programs is increased, and the development of the application programs becomes easy. Also, the reliability (safety) of the input / output signals can be easily ensured.

【0017】しかし、アプリケーションプログラムは上
述したイベントドリブンで実行されるため、例えば、あ
るアプリケーションプログラムに対応するイベントが発
生せずに起動しない状態が長時間継続する場合が考えら
れる。このような場合に、外部のノイズ等によってその
アプリケーションプログラムによる処理の処理結果や出
力データを格納したRAMのデータが変化してしまう
と、その変化したデータに基づいた出力処理により、制
御対象の誤動作が発生する。そこで請求項10のように
するとよい。このように、例えば、定期的なイベント発
生手段によりアプリケーションを起動させ、アプリケー
ションプログラムの処理によりその処理結果を格納した
RAMの内容をリフレッシュする。すなわち、例えばイ
ベントによって起動されるアプリケーションプログラム
は、定期的なイベントの発生によっても起動される仕組
みを持たせ、通常の処理よりも長い間隔で、かつ、内部
のデータのRAM化け等による不都合が起こってもシス
テムに支障をきたさない間隔でのデータリフレッシュを
保証するようにする。こうすることで、誤動作の影響を
最小限に抑えることができる。
However, since the application program is executed in an event-driven manner as described above, for example, a situation in which an event corresponding to a certain application program does not start without being generated may continue for a long time. In such a case, if the processing result of the application program or the data in the RAM storing the output data changes due to an external noise or the like, the output processing based on the changed data causes a malfunction of the control target. Occurs. Then, it is good to make it like Claim 10. In this way, for example, the application is activated by the periodic event generating means, and the contents of the RAM storing the processing result are refreshed by the processing of the application program. That is, for example, an application program that is started by an event is provided with a mechanism that is also started by the occurrence of a regular event. Even so, data refresh at intervals that do not hinder the system is guaranteed. In this way, the influence of a malfunction can be minimized.

【0018】以上のような構成とすることで、入出力信
号の信頼性の確保、アプリケーションの自由度向上、プ
ログラムを格納するROM容量を節約することができ
る。特に請求項11に示すように、人の指示を入力する
ための入力装置や人に対して影響を与える出力装置への
入出力の制御を行う電子制御装置では入出力信号の信頼
性を確保する必要性が高いため、上述した電子制御装置
とすることで、特に優れた効果を発揮する。また、請求
項12に示すように、入力装置や出力装置がネットワー
クを介して情報を伝達するための装置である場合には、
ネットワークによるデータの入出力の遅延を調停するこ
とができ、アプリケーションの設計を容易にすることが
できる。
With the above configuration, the reliability of input / output signals can be ensured, the degree of freedom of applications can be improved, and the capacity of ROM for storing programs can be saved. In particular, in an electronic control device that controls input and output to an input device for inputting a human instruction and an output device that affects a human, the reliability of input and output signals is ensured. Since the necessity is high, the electronic control device described above exhibits particularly excellent effects. Further, when the input device or the output device is a device for transmitting information via a network,
Data input / output delay through the network can be arbitrated, and application design can be facilitated.

【0019】なお、請求項13に示すように、請求項1
〜12に記載の電子制御装置における制御処理をコンピ
ュータにて実現する機能は、例えば、コンピュータで起
動するプログラムとして備えることができる。このよう
なプログラムの場合、例えば、フロッピー(登録商標)
ディスク、光磁気ディスク、CD−ROM、ハードディ
スク、ROM等のコンピュータ読み取り可能な記録媒体
に記録し、必要に応じてコンピュータシステムにロード
して起動することにより用いることができる。
In addition, as shown in claim 13, claim 1
The functions for realizing the control processing in the electronic control device according to any one of the first to twelfth by a computer can be provided, for example, as a program activated by the computer. In the case of such a program, for example, floppy (registered trademark)
It can be used by recording it on a computer-readable recording medium such as a disk, a magneto-optical disk, a CD-ROM, a hard disk, and a ROM, and loading and activating the computer system as needed.

【0020】[0020]

【発明の実施の形態】以下、本発明が適用された実施例
について図面を用いて説明する。なお、本発明の実施の
形態は、下記の実施例に何ら限定されることなく、本発
明の技術的範囲に属する限り種々の形態を採りうること
は言うまでもない。
Embodiments of the present invention will be described below with reference to the drawings. It is needless to say that the embodiments of the present invention are not limited to the following examples, and can take various forms within the technical scope of the present invention.

【0021】図2は、実施例としての電子制御装置であ
るボデーECU10を備えたボデー系システム100を
示す図である。ボデー系システム100は、特許請求の
範囲におけるネットワークに相当する車内LAN50に
接続されたボデーECU10と、ボデーECU10と車
内LAN50を介して通信可能な通信対象ECU20を
備える。ボデーECU10及び通信対象ECU20は、
CPU、ROM、RAM、I/O等を備えたコンピュー
タシステムであり、I/Oには入力装置30や出力装置
40や車内LAN50が接続されている。
FIG. 2 is a diagram showing a body system 100 provided with a body ECU 10 which is an electronic control unit as an embodiment. The body system 100 includes a body ECU 10 connected to an in-vehicle LAN 50 corresponding to a network in the claims, and a communication target ECU 20 that can communicate with the body ECU 10 via the in-vehicle LAN 50. The body ECU 10 and the communication target ECU 20 include:
This is a computer system including a CPU, a ROM, a RAM, an I / O, and the like. An input device 30, an output device 40, and an in-vehicle LAN 50 are connected to the I / O.

【0022】通信対象ECU20は、入力装置30の状
態を読み取ってパケットを生成し車内LAN50を介し
てボデーECU10へ送信する。また、車内LAN50
を介して入力されるボデーECU10からのパケットの
制御情報に基づいて出力装置40を制御する。通信対象
ECU20は、例えば、D席ドアECU20aやP席ド
アECU20bやインパネECU20c等である。D席
ドアECU20aはドライバ側のドアに設置されたEC
Uであり、入力装置30としてD席ドアコントロールス
イッチ30aなどが接続されており、出力装置40とし
てD席ドアロックモータ40aやD席パワーウインドウ
モータなどが接続されている。P席ドアECU20bは
補助席側のドアに設置されたECUであり、入力装置3
0としてP席ドアコントロールスイッチ30b等が接続
され、出力装置40としてP席ドアロックモータ40b
やP席パワーウインドウモータなどが接続されている。
また、インパネECUは、インパネに設置されたECU
であり、例えば、出力装置40としてブザー40cやラ
ンプ40d等が接続されている。
The communication target ECU 20 reads the state of the input device 30, generates a packet, and transmits the packet to the body ECU 10 via the in-vehicle LAN 50. In-vehicle LAN 50
The output device 40 is controlled based on the control information of the packet from the body ECU 10 input through the control unit. The communication target ECU 20 is, for example, a D seat door ECU 20a, a P seat door ECU 20b, an instrument panel ECU 20c, or the like. The D-seat door ECU 20a is an EC installed on the driver's door.
U, a D-seat door control switch 30a or the like is connected as the input device 30, and a D-seat door lock motor 40a, a D-seat power window motor, or the like is connected as the output device 40. The P-seat door ECU 20b is an ECU installed on the door on the side of the auxiliary seat, and the input device 3
As 0, the P seat door control switch 30b and the like are connected, and as the output device 40, the P seat door lock motor 40b
And a power window motor for the P seat are connected.
The instrument panel ECU is an ECU installed on the instrument panel.
For example, a buzzer 40c, a lamp 40d, or the like is connected as the output device 40.

【0023】ボデーECU10は、通信対象ECU20
から車内LAN50に送信されるパケットを所定時間毎
に受信して、I/Oを介して取り込み、取り込んだパケ
ットの内容に応じたアプリケーションを起動して、出力
装置40の制御が必要な場合には、制御対象の通信対象
ECU20への制御指示を含むパケットを生成して送信
する制御処理を行う。
The body ECU 10 is a communication target ECU 20.
When a packet transmitted to the in-vehicle LAN 50 is received at predetermined time intervals, captured via I / O, an application corresponding to the content of the captured packet is started, and control of the output device 40 is required. Then, a control process of generating and transmitting a packet including a control instruction to the communication target ECU 20 to be controlled is performed.

【0024】このようなボデーECU10の処理につい
て図3を参照して説明する。図3に示すように、ボデー
ECU10は、電源が投入されると、S1で、各I/O
ポートやRAM等のシステムの初期化を行う初期化処理
を行う。続くS2で、アイドルタスクを管理するアイド
ルタスクマネージャを実行する。そして、S3でアイド
ル時に実行するユーザ定義処理を実行し、CPUの状態
を監視するCPU監視マネージャを実行する。そして再
びS2に戻りアイドルタスクマネージャを実行する。こ
のようにS2〜S4をループして実行する。
The processing of the body ECU 10 will be described with reference to FIG. As shown in FIG. 3, when the power is turned on, the body ECU 10 performs each I / O in S1.
An initialization process for initializing a system such as a port and a RAM is performed. In S2, an idle task manager that manages idle tasks is executed. Then, in S3, a user-defined process executed at the time of idling is executed, and a CPU monitoring manager for monitoring the state of the CPU is executed. Then, the process returns to S2 to execute the idle task manager. Thus, S2 to S4 are executed in a loop.

【0025】そしてCPUには、図示しないタイマから
5ms毎にタイマ割込みがかかる。このタイマ割込みに
よって、S5のシステムマネージャへ処理が移行し、S
6の入力処理、S7の入力調停処理、S8のアプリケー
ション処理、S9の出力調停処理、S10の出力処理、
S11のスリープマネージャを順次実行して、タイマ割
込みから復帰し、元のS2〜S4で構成されるアイドル
ループに戻る。なお、このタイマ割込みによるメイン処
理は、タイマ割込みの間隔である5msよりも短時間で
終了するように構成されている。
The CPU receives a timer interrupt every 5 ms from a timer (not shown). Due to this timer interrupt, the processing shifts to the system manager in S5,
6, input arbitration processing in S7, application processing in S8, output arbitration processing in S9, output processing in S10,
The sleep manager of S11 is sequentially executed to return from the timer interrupt and return to the idle loop composed of the original S2 to S4. The main processing based on the timer interrupt is configured to be completed in a shorter time than the timer interrupt interval of 5 ms.

【0026】このうち、S6の入力処理からS10の出
力処理に至る各ステップの処理をさらに詳細に説明す
る。S6では、I/Oから入力処理を行う入力処理プロ
グラムを順次実行する。すなわち、入力処理プログラム
1、入力処理プログラム2、入力処理プログラム3、入
力処理プログラム4、…、入力処理プログラムi、のよ
うに順次実行する。すべての入力処理プログラムの実行
が終了すると、S7の入力調停処理へ移行する。
The processing of each step from the input processing in S6 to the output processing in S10 will be described in more detail. In S6, an input processing program for performing input processing from I / O is sequentially executed. That is, the input processing program 1, the input processing program 2, the input processing program 3, the input processing program 4,..., And the input processing program i are sequentially executed. When the execution of all the input processing programs is completed, the process proceeds to the input arbitration processing in S7.

【0027】S7の入力調停処理は、S6の入力処理に
よってI/Oから入力したデータを総合して調停を行う
処理である。すなわち、S8のアプリケーションプログ
ラムを起動させるためのイベントフラグを立てるか否か
を、入力処理(S6)によって入力されたデータに基づ
いて判定する処理である。入力調停処理(S7)は、そ
れぞれのイベントに応じた複数の入力調停プログラムで
構成されており、入力調停プログラム1、入力調停プロ
グラム2、…入力調停プログラムj、のように順次実行
する。そして、すべての入力調停処理プログラムの実行
が終了すると、S8のアプリケーション処理へ移行す
る。
The input arbitration process of S7 is a process of performing arbitration by integrating data input from the I / O by the input process of S6. That is, the process of determining whether to set an event flag for activating the application program of S8 based on the data input in the input process (S6). The input arbitration process (S7) is composed of a plurality of input arbitration programs corresponding to respective events, and is sequentially executed as in the input arbitration program 1, the input arbitration program 2,... The input arbitration program j. Then, when the execution of all the input arbitration processing programs is completed, the processing shifts to the application processing of S8.

【0028】アプリケーション処理(S8)は、複数の
アプリケーションプログラム1、アプリケーションプロ
グラム2、…、アプリケーションプログラムkで構成さ
れており、各アプリケーションプログラムは直接I/O
への入出力処理を行わないように構成してある。すなわ
ち入力は、メモリを媒介して、特許請求の範囲における
入力処理に相当する入力層(S3の入力処理と、S4の
入力調停処理に相当する)によって行い、出力は、メモ
リを媒介して、特許請求の範囲における出力処理に相当
する出力層(S9の出力調停処理と、S10の出力処理
に相当する)によって行うのである。
The application processing (S8) is composed of a plurality of application programs 1, application programs 2,..., And an application program k.
It is configured not to perform input / output processing to the device. That is, the input is performed by an input layer (corresponding to the input processing of S3 and the input arbitration processing of S4) corresponding to the input processing in the claims via a memory, and the output is performed via a memory. This is performed by an output layer corresponding to the output processing in the claims (corresponding to the output arbitration processing in S9 and the output processing in S10).

【0029】また各アプリケーションプログラム間の情
報のやりとりは、直接的には行わない。すなわち、図4
に示すように、例えばアプリケーションプログラム1と
アプリケーションプログラム4が実行される場合に、ア
プリケーションプログラム1を実行した結果(処理結
果)のデータは、アプリケーションプログラム4では使
用しないように構成する。つまり、アプリケーションプ
ログラム1は、処理結果をRAM上のアプリ処理結果格
納領域に記憶するが、そのデータはアプリケーションプ
ログラム4の処理からは直接的には参照しない。アプリ
ケーションプログラム4による処理にてアプリケーショ
ンプログラム1の処理結果を必要とする場合には、予め
S7の入力調停処理で、アプリ処理結果格納領域に格納
された処理結果を入力データ格納領域にコピーするよう
にする。そしてイベントフラグに応じてアプリケーショ
ンプログラム4が起動された際にその入力データ格納領
域から処理結果のデータを参照する。したがって、例え
アプリケーションプログラム1の直後にアプリケーショ
ンプログラム4を実行する場合であっても、アプリケー
ションプログラム4は出力結果格納領域ではなく、入力
結果格納領域を参照して処理に利用するため、直前のア
プリケーションプログラム1の処理結果ではなく、1周
期前のタイマ割込み時のアプリケーションプログラム1
の処理結果を利用して処理を行うのである。
The exchange of information between application programs is not performed directly. That is, FIG.
As shown in (2), for example, when the application program 1 and the application program 4 are executed, the data of the result of executing the application program 1 (processing result) is not used in the application program 4. That is, the application program 1 stores the processing result in the application processing result storage area on the RAM, but does not directly refer to the data from the processing of the application program 4. When the processing result of the application program 1 is required in the processing by the application program 4, the processing result stored in the application processing result storage area is copied to the input data storage area in the input arbitration processing in S7 in advance. I do. Then, when the application program 4 is started according to the event flag, the data of the processing result is referred to from the input data storage area. Therefore, even if the application program 4 is executed immediately after the application program 1, the application program 4 refers to the input result storage area instead of the output result storage area and uses it for processing. The application program 1 at the time of the timer interrupt one cycle earlier, not the processing result of 1.
The processing is performed using the processing result of (1).

【0030】このように、入出力処理と入出力以外の処
理を分け、データの受け渡しをアプリケーションプログ
ラム間で直接的に行わないようにすることで、各アプリ
ケーションの独立性が高まり、機能単位であるアプリケ
ーションプログラムの追加削除が容易にできるようにな
る。
As described above, the input / output processing and the processing other than the input / output are separated, and the data transfer is not performed directly between the application programs, so that the independence of each application is enhanced and the application is a functional unit. Addition and deletion of application programs can be easily performed.

【0031】また、いずれのアプリケーションプログラ
ムを実行するかは、管理用のアプリケーションプログラ
ムである簡易OS処理によって決定する。この決定処理
は、予め各アプリケーションプログラムがどのイベント
が発生した際(イベントフラグが立ったとき)に実行さ
れるかを登録するイベントテーブルに基づいて行う。こ
のイベントテーブルには、イベントフラグに対応したア
プリケーションプログラムのアドレスが登録(記憶)さ
れており、入力調停処理によってイベントフラグが立て
られた場合(イベントが発生した場合)には、対応する
アプリケーションプログラムのアドレスをコールして、
処理をそのアプリケーションプログラムに移行する。な
お、1のイベントに対して複数のアプリケーションがイ
ベントテーブルで対応付けられている場合には、そのイ
ベントに対応したアプリケーション同士は、順次実行す
るようにする。すなわち、イベントフラグ1に対応する
アプリケーションプログラムが、アプリケーションプロ
グラム1、アプリケーションプログラム2、アプリケー
ションプログラムxと複数ある場合には、アプリケーシ
ョンプログラム1が終了したらアプリケーションプログ
ラム2へ処理を移行し、アプリケーションプログラム2
が終了したらアプリケーションプログラム3に処理を移
行するのである。そして、すべてのイベントフラグに対
応するアプリケーションプログラムの処理が終了した場
合に、簡易OS処理を終了して、S9へ移行する。
Which application program is to be executed is determined by a simple OS process which is a management application program. This determination process is performed based on an event table that registers in advance which event each application program will execute (when an event flag is raised). In this event table, the address of the application program corresponding to the event flag is registered (stored). When the event flag is set by the input arbitration processing (when an event occurs), the address of the corresponding application program is stored. Call the address,
The processing shifts to the application program. When a plurality of applications are associated with one event in the event table, the applications corresponding to the event are executed sequentially. That is, when there are a plurality of application programs corresponding to the event flag 1 including the application program 1, the application program 2, and the application program x, the processing is shifted to the application program 2 when the application program 1 ends, and
When the processing is completed, the processing shifts to the application program 3. Then, when the processing of the application programs corresponding to all the event flags has been completed, the simple OS processing is terminated, and the routine goes to S9.

【0032】S9の出力調停処理は、S8のアプリケー
ション処理によってアプリ処理結果格納領域に記憶され
たデータに基づきS10の出力処理で出力を行うか否か
を調停する処理である。すなわち、例えば、複数のアプ
リケーションプログラムが同一の出力対象に対する異な
る出力指示を処理結果格納領域に格納した場合に、いず
れの処理結果を反映させて出力するかを調停する処理を
行うのである。例えば、出力調停処理(S9)は、複数
の出力調停プログラムで構成されており、出力調停プロ
グラム1、出力調停プログラム2、…出力調停プログラ
ムl、のように順次実行する。そして、すべての出力結
果調停プログラムの実行を完了すると、処理はS10の
出力処理へ移行する。
The output arbitration process of S9 is a process of arbitrating whether or not to perform output in the output process of S10 based on the data stored in the application process result storage area by the application process of S8. That is, for example, when a plurality of application programs store different output instructions for the same output target in the processing result storage area, arbitration is performed to determine which processing result is to be output. For example, the output arbitration process (S9) is composed of a plurality of output arbitration programs, and is sequentially executed as an output arbitration program 1, an output arbitration program 2,... Then, when the execution of all the output result arbitration programs is completed, the processing shifts to the output processing of S10.

【0033】S10の出力処理では、I/Oへの出力処
理を行う出力処理プログラムを順次実行する。すなわ
ち、出力処理プログラム1、出力処理プログラム2、
…、出力処理プログラムm、のように順次実行する。す
べての出力処理プログラムの実行が終了すると、S11
のスリープマネージャへ移行する。
In the output processing of S10, an output processing program for performing output processing to I / O is sequentially executed. That is, the output processing program 1, the output processing program 2,
.., Are sequentially executed like an output processing program m. When execution of all output processing programs is completed, S11
To sleep manager.

【0034】このようにして、従来ひとまとめで行って
いた処理を、S6の入力処理、S7の入力調停処理、S
8のアプリケーション処理、S9の出力調停処理、S1
0の出力処理の5つに分割し、各処理において、データ
の同期を取る。すなわち、図5に示すように、ある時間
で確定したデータを次の処理部へ受け渡し、それ以後は
変化させない。例えば、S6の入力処理でスイッチがO
Nと確定した後は、次の周期の入力処理を実行するまで
は、たとえ入力の状態がOFFになっていたとしてもス
イッチの状態はONとして処理を行う。同様にS7の入
力調停処理で確定した情報は次の周期の入力調停処理ま
で変化させない。またS8のアプリケーション処理で確
定した情報は次のアプリケーション処理まで変化させな
い。そして、出力調停処理によって確定した情報は、次
の出力調停処理まで変化させない。したがって、各処理
部の処理完了時点でデータが確定(同期)する。そし
て、各処理部の処理中に前の処理部で生成したデータは
変化しないので、例えば変化前のデータに基づく処理と
変化後のデータに基づいて処理を行ってしまうような処
理矛盾を避けることができ、安全設計も容易にできる。
In this manner, the processing that has been conventionally performed collectively is replaced with the input processing of S6, the input arbitration processing of S7,
8 application processing, S9 output arbitration processing, S1
The process is divided into five output processes of 0, and data is synchronized in each process. That is, as shown in FIG. 5, data determined at a certain time is transferred to the next processing unit, and is not changed thereafter. For example, in the input processing of S6, the switch
After N is determined, the processing is performed with the switch ON state, even if the input state is OFF, until the input processing of the next cycle is executed. Similarly, the information determined in the input arbitration process in S7 is not changed until the input arbitration process in the next cycle. The information determined in the application processing in S8 is not changed until the next application processing. The information determined by the output arbitration process is not changed until the next output arbitration process. Therefore, the data is determined (synchronized) at the time when the processing of each processing unit is completed. Since the data generated by the previous processing unit does not change during the processing of each processing unit, avoid processing inconsistency such as performing processing based on the data before the change and processing based on the data after the change. And safety design can be facilitated.

【0035】これまで説明したように入力層、出力層の
プログラムは順次実行を行う。すなわちシンプルスケジ
ューリングで実行する。一方、アプリケーション層で
は、どのアプリケーションプログラムが実行されるか
は、イベントの有無を判断して、簡易OS処理で決定す
る。
As described above, the programs of the input layer and the output layer are sequentially executed. That is, it is executed by simple scheduling. On the other hand, in the application layer, which application program is to be executed is determined by a simple OS process by determining the presence or absence of an event.

【0036】このような構成とすることで、イベントの
発生しないアプリケーションプログラムは、イベントが
発生しない間は実行されないことになる。したがって、
実行されないアプリケーションプログラム用のアプリ処
理結果格納領域は、その間更新されない。そのため外部
のノイズ等によってアプリ処理結果格納領域のデータが
書き換えられた場合(いわゆるRAM化け)には、S8
の出力調停処理、S9の出力処理によって誤った出力が
なされてしまう場合がある。このような状況は、アプリ
処理結果記憶領域が長時間更新されなければされないほ
ど発生する可能性が高くなる。特に、例えば制御の誤り
によって人に対して悪影響を与える可能性のあるシステ
ムを制御する場合には、このようなことが起こらないよ
うに、メモリの値を所定時間毎に更新することが望まし
い。
With such a configuration, an application program in which no event occurs does not execute while no event occurs. Therefore,
The application processing result storage area for the application program that is not executed is not updated during that time. For this reason, if the data in the application processing result storage area is rewritten by external noise or the like (so-called RAM conversion), S8
Output arbitration processing and the output processing of S9 may result in erroneous output. Such a situation is more likely to occur as the application processing result storage area must be updated for a longer time. In particular, for example, when controlling a system that may adversely affect a person due to a control error, it is desirable to update the value of the memory every predetermined time so that such a case does not occur.

【0037】そこで、図6に示すように簡易OS処理に
おいて、一定時間以上起動されていないアプリケーショ
ンプログラムを順次起動して、そのアプリケーションプ
ログラム用のアプリ処理結果記憶領域を更新する。この
一定時間は、タイマ割込み間隔よりも長い間隔で、かつ
アプリ処理結果記憶領域のデータが外部のノイズ等によ
って変化してしまってもシステムの制御に支障をきたさ
ない時間とする。すなわちボデー系システム100(図
1参照)においては、RAM化けによって、例えば図示
しないパワーウィンドウの閉制御のように本来閉じては
いけない状態で閉じる指示が出力される状況が想定され
る。このような異常な制御が続く時間が50ms程度で
あれば人に対して悪影響を及ぼさない。したがって、例
えば40msの間、起動されていないアプリケーション
プログラムから順次実行するようにする。例えば、図6
に示すように、アプリ2とアプリ3とアプリ4が、40
msの間実行されていなければ、アプリ2を実行し、ア
プリ3を実行し、アプリ4を実行する。そして、イベン
トに応じたアプリを実行する前述の処理を行う。このよ
うな構成を採ることで、RAM化けが起きても、信頼性
や安全性を確保することができる。
Therefore, as shown in FIG. 6, in the simple OS processing, the application programs that have not been started for a certain period of time are sequentially started, and the application processing result storage area for the application program is updated. This fixed time is an interval longer than the timer interrupt interval and a time that does not hinder system control even if data in the application processing result storage area changes due to external noise or the like. That is, in the body system 100 (see FIG. 1), a situation is assumed in which a garbled RAM outputs an instruction to close in a state where it should not be closed, as in the case of power window closing control (not shown). If the time during which such abnormal control continues is about 50 ms, there is no adverse effect on humans. Therefore, for example, the application programs that have not been started are sequentially executed for 40 ms. For example, FIG.
As shown in, the application 2, the application 3, and the application 4
If not executed for ms, the application 2 is executed, the application 3 is executed, and the application 4 is executed. Then, the above-described processing for executing the application corresponding to the event is performed. By adopting such a configuration, reliability and safety can be ensured even if the RAM is corrupted.

【0038】こうしたボデー系システム100によれ
ば、例えば、D席ドアコントロールスイッチ30aと図
示しない入力装置30としてのワイヤレス(電波等を使
用し、ドアを施錠・解錠するシステム)の双方から異な
る指示がほぼ同時に連続して入力された場合、すなわち
例えば、D席ドアコントロールスイッチ30aの状態に
基づきD席ドアECU20aが全席ドア施錠の指示を出
し、ワイヤレスは全席ドア解錠の指示を車内LAN50
を介してボデーECU10に出力した場合、ボデーEC
U10は、S6の入力処理によってI/Oからこれらの
情報を取り込む。そして、S7の入力調停処理によっ
て、いずれか1の指示を優先して利用する。例えば、D
席ドアコントロールスイッチ30aの状態を優先するよ
うに調停する。そして、全席ドア施錠の指示が入力され
た旨のイベントフラグを立て処理をS8へ移行する。よ
って、簡易OS処理によって、このイベントフラグに対
応するアプリケーションに実行が移される。例えば、ア
プリ1の処理によって、アプリ処理結果格納領域に全席
ドア施錠の指示が書き込まれる。一方このとき、他の入
力装置30の状態に基づくイベントによって例えばアプ
リ2が実行され、その処理結果として、D席ドア解錠の
指示がアプリ処理結果格納領域に書き込まれていたとす
る。この場合、S9の出力調停処理によって、出力の調
停を行い全席ドア施錠を優先して、S10の出力処理に
渡し、S10の出力処理によって、出力装置40の接続
された各ドアECUに対してドア施錠の指示を送信す
る。こうして、極めて短い時間にドアが解錠→施錠また
は施錠→解錠することを防止することができる。すなわ
ち複数の矛盾する入力データや出力データを調停するこ
とができ、安全で信頼性の高い制御を実現することがで
きる。
According to such a body system 100, for example, different instructions are given from both the D-seat door control switch 30a and a wireless (system for locking / unlocking the door using radio waves or the like) as the input device 30 (not shown). Are input substantially simultaneously at the same time, that is, for example, the D-seat door ECU 20a issues an instruction to lock all the doors based on the state of the D-seat door control switch 30a, and the wireless sends the instruction to unlock all the doors in the vehicle LAN 50.
Output to the body ECU 10 via the
U10 fetches these information from the I / O by the input processing of S6. Then, any one of the instructions is preferentially used by the input arbitration process in S7. For example, D
Arbitration is performed to give priority to the state of the seat door control switch 30a. Then, an event flag indicating that the instruction to lock all the seat doors has been input is set, and the process proceeds to S8. Therefore, the execution is transferred to the application corresponding to the event flag by the simple OS process. For example, by the processing of the application 1, an instruction to lock all the seat doors is written in the application processing result storage area. On the other hand, at this time, it is assumed that, for example, the application 2 is executed by an event based on the state of the other input device 30, and an instruction to unlock the D-seat door is written in the application processing result storage area as the processing result. In this case, the output arbitration process of S9 arbitrates the output and gives priority to locking of all the doors to the output process of S10, and the output process of S10 sends the door ECU to each door ECU connected to the output device 40. Send the locking instruction. Thus, it is possible to prevent the door from being unlocked → locked or locked → unlocked in a very short time. That is, a plurality of contradictory input data and output data can be arbitrated, and safe and highly reliable control can be realized.

【0039】このように、人間の操作する装置系に対す
る制御を行う場合には、人間と制御対象の機械の処理時
間(認識時間)の差を上述した調停や同期によって、調
整することができる。また車内LAN50による遅延等
によるデータの到着のずれ等の影響もこれらの機構によ
り抑えることができる。
As described above, when controlling a system operated by a human, the difference between the processing time (recognition time) between the human and the machine to be controlled can be adjusted by the above-described arbitration and synchronization. In addition, the influence of a delay in data arrival due to a delay or the like caused by the in-vehicle LAN 50 can be suppressed by these mechanisms.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 制御処理の階層化を説明する説明図である。FIG. 1 is an explanatory diagram illustrating hierarchization of control processing.

【図2】 ボデー系システムの構成を示すブロック図で
ある。
FIG. 2 is a block diagram illustrating a configuration of a body system.

【図3】 各処理の分割の状態と実行順を説明する説明
図である。
FIG. 3 is an explanatory diagram illustrating a division state and an execution order of each process.

【図4】 アプリケーションプログラム間のデータのや
りとりの方法を示す説明図である。
FIG. 4 is an explanatory diagram showing a method of exchanging data between application programs.

【図5】 各処理におけるデータの同期を説明する説明
図である。
FIG. 5 is an explanatory diagram illustrating data synchronization in each process.

【図6】 メモリ状態の再設定に関する説明図である。FIG. 6 is an explanatory diagram regarding resetting of a memory state.

【符号の説明】[Explanation of symbols]

10…ボデーECU 20…通信対象ECU 20a…D席ドアECU20a 20b…P席ドアECU20b 30…入力装置 30a…D席ドアコントロールスイッチ 30b…P席ドアコントロールスイッチ 40…出力装置 40a…D席ドアロックモータ 40b…P席ドアロックモータ 40c…ブザー 40d…ランプ 50…車内LAN 100…ボデー系システム DESCRIPTION OF SYMBOLS 10 ... Body ECU 20 ... ECU to be communicated 20a ... D seat door ECU 20a 20b ... P seat door ECU 20b 30 ... Input device 30a ... D seat door control switch 30b ... P seat door control switch 40 ... Output device 40a ... D seat door lock motor 40b P door lock motor 40c Buzzer 40d Lamp 50 In-vehicle LAN 100 Body system

───────────────────────────────────────────────────── フロントページの続き (72)発明者 春名 克俊 愛知県刈谷市昭和町1丁目1番地 株式会 社デンソー内 (72)発明者 江川 邦隆 愛知県刈谷市昭和町1丁目1番地 株式会 社デンソー内 (72)発明者 加藤 滋郎 愛知県刈谷市昭和町1丁目1番地 株式会 社デンソー内 (72)発明者 新田 修一 愛知県刈谷市昭和町1丁目1番地 株式会 社デンソー内 Fターム(参考) 3G084 DA04 DA13 EB02 EB03 EB06 5B098 GA08 GC01  ──────────────────────────────────────────────────の Continuing on the front page (72) Inventor Katsutoshi Haruna 1-1-1, Showa-cho, Kariya-shi, Aichi Prefecture Inside Denso Corporation (72) Inventor Kunitaka Egawa 1-1-1, Showa-cho, Kariya City, Aichi Prefecture Denso Corporation (72) Inventor Shirou Kato 1-1-1, Showa-cho, Kariya-shi, Aichi Prefecture Inside Denso Corporation (72) Inventor Shuichi Nitta 1-1-1, Showa-cho, Kariya City, Aichi Prefecture F-term (Reference) 3G084 DA04 DA13 EB02 EB03 EB06 5B098 GA08 GC01

Claims (13)

【特許請求の範囲】[Claims] 【請求項1】メモリに記憶されたプログラムに従って、
複数の入力装置からデータを入力し入力データを得る入
力処理と、前記入力処理の終了後、前記入力データに基
づいて出力装置に出力する出力データを生成するアプリ
ケーション処理と、前記アプリケーション処理の終了
後、前記出力データに基づいて出力装置へデータを出力
するための出力処理とからなる制御処理を繰り返し行う
電子制御装置であって、 前記入力処理は、前記入力装置に対応する入力処理プロ
グラムを順次実行して行い、 前記アプリケーション処理は、前記入力処理による前記
入力データに応じて複数のアプリケーションプログラム
の中から実行すべきアプリケーションプログラムを決定
して、該実行すべきアプリケーションプログラムを実行
して行い、 前記出力処理は、前記出力装置に対応する出力処理プロ
グラムを順次実行して行うことを特徴とする電子制御装
置。
1. According to a program stored in a memory,
An input process for inputting data from a plurality of input devices to obtain input data, an application process for generating output data to be output to an output device based on the input data after the input process, and after the application process An electronic control device that repeatedly performs a control process including an output process for outputting data to an output device based on the output data, wherein the input process sequentially executes an input processing program corresponding to the input device. The application processing is performed by determining an application program to be executed from a plurality of application programs in accordance with the input data obtained by the input processing, and executing the application program to be executed. The processing includes an output processing program corresponding to the output device. An electronic control unit, which comprises carrying out in the following run.
【請求項2】請求項1に記載の電子制御装置において、 前記制御処理は所定時間毎に実行し、該制御処理は前記
所定時間内に完了することを特徴とする電子制御装置。
2. The electronic control unit according to claim 1, wherein said control processing is executed at predetermined time intervals, and said control processing is completed within said predetermined time period.
【請求項3】請求項1または2に記載の電子制御装置に
おいて、 前記入力処理において、データ入力の完了後、前記入力
データに基づいて、前記各アプリケーションプログラム
の実行をすべき状態になったか否かを判定する入力調停
を行い、 前記実行すべきアプリケーションプログラムの決定は、
該入力調停結果に基づいて行うことを特徴とする電子制
御装置。
3. The electronic control device according to claim 1, wherein, in the input processing, after completion of data input, whether or not each of the application programs is to be executed based on the input data. Performing input arbitration to determine whether the application program to be executed is determined by:
An electronic control device, wherein the control is performed based on the input arbitration result.
【請求項4】請求項1〜3のいずれかに記載の電子制御
装置において、 前記出力処理において、前記出力装置へのデータの出力
開始前に、前記アプリケーション処理による前記出力デ
ータに応じた出力対象の出力装置に対して、適切な状態
に出力がされるように調停する出力調停を行い、 前記データの出力は、該出力調停結果に基づいて行うこ
とを特徴とする電子制御装置。
4. The electronic control device according to claim 1, wherein, in said output processing, an output target according to said output data by said application processing before starting output of data to said output device. An electronic arbiter for performing an output arbitration for arbitrating the output device to output an appropriate state, and outputting the data based on the output arbitration result.
【請求項5】請求項1〜4のいずれかに記載の電子制御
装置において、 前記入力処理におけるデータ入力完了後は、前記入力デ
ータを確定し、以後の処理において前記入力データを変
化させないことを特徴とする電子制御装置。
5. The electronic control device according to claim 1, wherein after completion of data input in said input processing, said input data is determined, and said input data is not changed in subsequent processing. Electronic control device characterized by the following.
【請求項6】請求項1〜5のいずれかに記載の電子制御
装置において、 前記アプリケーション処理における前記出力データの生
成完了後は、前記出力データを確定し、以後の処理にお
いて、前記出力データを変化させないことを特徴とする
電子制御装置。
6. The electronic control device according to claim 1, wherein after the generation of the output data in the application processing is completed, the output data is determined, and in the subsequent processing, the output data is determined. An electronic control unit characterized by not changing.
【請求項7】請求項3〜6のいずれかに記載の電子制御
装置において、 前記入力処理における前記入力調停完了後は、前記入力
調停結果を確定し、以後の処理において、前記入力調停
結果を変化させないことを特徴とする電子制御装置。
7. The electronic control device according to claim 3, wherein after the input arbitration is completed in the input processing, the input arbitration result is determined, and in the subsequent processing, the input arbitration result is determined. An electronic control unit characterized by not changing.
【請求項8】請求項4〜7のいずれかに記載の電子制御
装置において、 前記出力処理における前記出力調停完了後は、前記出力
調停結果を確定し、以後の処理において、前記出力調停
結果を変化させないことを特徴とする電子制御装置。
8. The electronic control device according to claim 4, wherein after the output arbitration is completed in the output processing, the output arbitration result is determined, and in the subsequent processing, the output arbitration result is determined. An electronic control unit characterized by not changing.
【請求項9】請求項1〜8のいずれかに記載の電子制御
装置において、 前記アプリケーション処理において、1のアプリケーシ
ョンプログラムを実行することによって得られる処理結
果を他のアプリケーションプログラムの実行時に利用す
る場合には、次の繰り返し周期での前記他のアプリケー
ションの実行時まで該処理結果を利用しないことを特徴
とする電子制御装置。
9. The electronic control device according to claim 1, wherein in the application processing, a processing result obtained by executing one application program is used when another application program is executed. An electronic control device, wherein the processing result is not used until the other application is executed in the next repetition cycle.
【請求項10】請求項1〜9のいずれかに記載の電子制
御装置において、 前記アプリケーション処理において、前記複数のアプリ
ケーションプログラムのうち前記実行すべきアプリケー
ションと決定されず、実行していない時間が所定の時間
に達したアプリケーションプログラムがある場合には、
該アプリケーションプログラムを実行することを特徴と
する電子制御装置。
10. The electronic control device according to claim 1, wherein in the application processing, a time during which the plurality of application programs are not determined to be the application to be executed and are not being executed is determined. If there is an application program that has reached
An electronic control device for executing the application program.
【請求項11】請求項1〜10のいずれかに記載の電子
制御装置において、 前記入力装置または前記出力装置の少なくともいずれか
一方は、人の指示を入力するための装置または人に対し
て影響を与える動作をする装置であることを特徴とする
電子制御装置。
11. The electronic control device according to claim 1, wherein at least one of said input device and said output device has an effect on a device for inputting a human instruction or on a human. An electronic control device, wherein the electronic control device is a device that performs an operation of providing a control signal.
【請求項12】請求項1〜11のいずれかに記載の電子
制御装置において、 前記入力装置または前記出力装置の少なくともいずれか
一方は、ネットワークを介して接続される装置であるこ
とを特徴とする電子制御装置。
12. The electronic control device according to claim 1, wherein at least one of the input device and the output device is a device connected via a network. Electronic control unit.
【請求項13】請求項1〜12のいずれかに記載の電子
制御装置に前記制御処理を実行させるためのプログラム
を記録した記録媒体。
13. A recording medium on which a program for causing the electronic control device according to claim 1 to execute the control processing is recorded.
JP2000402421A 2000-12-28 2000-12-28 Electronic control device and recording medium Expired - Lifetime JP4427899B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000402421A JP4427899B2 (en) 2000-12-28 2000-12-28 Electronic control device and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000402421A JP4427899B2 (en) 2000-12-28 2000-12-28 Electronic control device and recording medium

Publications (3)

Publication Number Publication Date
JP2002202891A true JP2002202891A (en) 2002-07-19
JP2002202891A5 JP2002202891A5 (en) 2007-04-12
JP4427899B2 JP4427899B2 (en) 2010-03-10

Family

ID=18866721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000402421A Expired - Lifetime JP4427899B2 (en) 2000-12-28 2000-12-28 Electronic control device and recording medium

Country Status (1)

Country Link
JP (1) JP4427899B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146789A (en) * 2004-11-24 2006-06-08 Denso Corp Electronic controller, its control method, and program
JP2007257563A (en) * 2006-03-27 2007-10-04 Hitachi Ltd Operation support device of batch plant
JP2013054613A (en) * 2011-09-06 2013-03-21 Denso Corp Electronic control unit and control method thereof
EP3640798A1 (en) 2018-10-18 2020-04-22 Toyota Jidosha Kabushiki Kaisha Vehicular arbitration system
CN112594078A (en) * 2020-12-07 2021-04-02 重庆潍柴发动机有限公司 Preemptive redundant electric control system and method for marine engine
WO2024029269A1 (en) * 2022-08-02 2024-02-08 株式会社デンソー Vehicle control device, inquiry method, program, and vehicle control system

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146789A (en) * 2004-11-24 2006-06-08 Denso Corp Electronic controller, its control method, and program
JP2007257563A (en) * 2006-03-27 2007-10-04 Hitachi Ltd Operation support device of batch plant
JP2013054613A (en) * 2011-09-06 2013-03-21 Denso Corp Electronic control unit and control method thereof
EP3640798A1 (en) 2018-10-18 2020-04-22 Toyota Jidosha Kabushiki Kaisha Vehicular arbitration system
KR20210088486A (en) * 2018-10-18 2021-07-14 도요타지도샤가부시키가이샤 Vehicular arbitration system
KR102395759B1 (en) * 2018-10-18 2022-05-10 도요타지도샤가부시키가이샤 Vehicular arbitration system
KR20220061067A (en) * 2018-10-18 2022-05-12 도요타지도샤가부시키가이샤 Vehicular arbitration system
US11570252B2 (en) 2018-10-18 2023-01-31 Toyota Jidosha Kabushiki Kaisha Vehicular arbitration system
KR102551126B1 (en) * 2018-10-18 2023-07-05 도요타지도샤가부시키가이샤 Vehicular arbitration system
CN112594078A (en) * 2020-12-07 2021-04-02 重庆潍柴发动机有限公司 Preemptive redundant electric control system and method for marine engine
CN112594078B (en) * 2020-12-07 2022-07-01 重庆潍柴发动机有限公司 Preemptive redundant electric control system and method for marine engine
WO2024029269A1 (en) * 2022-08-02 2024-02-08 株式会社デンソー Vehicle control device, inquiry method, program, and vehicle control system

Also Published As

Publication number Publication date
JP4427899B2 (en) 2010-03-10

Similar Documents

Publication Publication Date Title
US7178062B1 (en) Methods and apparatus for executing code while avoiding interference
JP5951429B2 (en) Watchdog circuit, power supply IC, and watchdog monitoring system
JP2001526495A (en) How to coordinate network components
JP6011379B2 (en) Tamper detection system, electronic control unit
JP2002202891A (en) Electronic controller and recording medium
US9043046B2 (en) Data processing device, microcontroller, and self-diagnosis method of data processing device
JP2011170626A (en) Built-in control device
Leteinturier et al. Multicore benefits & challenges for automotive applications
JP5454315B2 (en) In-vehicle network system and data relay device
JP6279152B1 (en) Control device, control system, and control device return processing method
KR20130022804A (en) Re-programming control module and re-programming system and method using the re-programming control module
Beyer et al. Towards the formal verification of lower system layers in automotive systems
US11500403B2 (en) System and method for power supply voltage scaling for secure embedded systems
JP2006146789A (en) Electronic controller, its control method, and program
JP2002304304A (en) Process execution device, processing program loaded in the same, and recording medium
JP2001175494A (en) System and method for doubly diagnosing normality of arithmetic processing of microprocessor
JP2001502459A (en) Method of operating a communication channel in a mixed master / slave subscriber environment via dynamic closing and / or opening operations, and a system configured to implement such a method
Eloranta et al. A pattern language for distributed machine control systems
JP3397496B2 (en) Multiplex transmission system
JP6646322B2 (en) Multi-system computer and program for multi-system computer
US20230377383A1 (en) Electronic control device, vehicle information provision method, and non-transitory computer readable storage medium
JP6637450B2 (en) Dynamic saving of registers in transactions
JPH09134208A (en) Information processing system, controller and actuator controller
GB2345362A (en) Fault detection in a redundant multi-processor system
MARTINEZ GARCIA Analisi di schedulabilità real-time per sistemi embedded per automotive

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070227

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081216

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090213

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090407

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090707

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091029

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121225

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4427899

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091207

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131225

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term