JP2009080566A - Vehicle control program and program generation method, program generator, and automobile controller - Google Patents
Vehicle control program and program generation method, program generator, and automobile controller Download PDFInfo
- Publication number
- JP2009080566A JP2009080566A JP2007247823A JP2007247823A JP2009080566A JP 2009080566 A JP2009080566 A JP 2009080566A JP 2007247823 A JP2007247823 A JP 2007247823A JP 2007247823 A JP2007247823 A JP 2007247823A JP 2009080566 A JP2009080566 A JP 2009080566A
- Authority
- JP
- Japan
- Prior art keywords
- application program
- device driver
- program
- interface information
- input
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims description 30
- 238000012545 processing Methods 0.000 claims abstract description 57
- 230000008569 process Effects 0.000 claims description 10
- 238000011161 development Methods 0.000 claims description 9
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 230000004044 response Effects 0.000 abstract description 6
- 230000002093 peripheral effect Effects 0.000 abstract description 2
- 230000007704 transition Effects 0.000 abstract description 2
- 230000000593 degrading effect Effects 0.000 abstract 1
- 238000004364 calculation method Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000000275 quality assurance Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 230000004043 responsiveness Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、自動車用制御装置を構成するマイクロコンピュータに実行させるための車両制御用プログラムおよびプログラム生成方法およびプログラム生成装置および自動車用制御装置に係り、特に、アプリケーションプログラムと当該アプリケーションが制御する自動車部品との間のデータ入出力処理を行うデバイスドライバとを有する車両制御用プログラム、プログラム生成方法、プログラム生成装置、自動車用制御装置に関する。 The present invention relates to a vehicle control program, a program generation method, a program generation device, and a vehicle control device to be executed by a microcomputer constituting a vehicle control device, and in particular, an application program and a vehicle part controlled by the application. The present invention relates to a vehicle control program, a program generation method, a program generation device, and a vehicle control device having a device driver that performs data input / output processing between the control device and the vehicle.
自動車エンジン制御などを行う制御装置として、中央演算装置、ROM、RAM、入出力信号処理装置などを内蔵したマイクロコントローラ(以下マイコンと表記)が用いられている。マイコンに搭載されるソフトウェアは、目的とする制御動作が行えるように、一般的には、制御処理を行うアプリケーションプログラムと、アプリケーションプログラムが制御する自動車部品(デバイス)に対してデータの入出力を行うデバイスドライバ、オペレーティングシステム(OS)などによって構成されている。 A microcontroller (hereinafter referred to as a microcomputer) incorporating a central processing unit, a ROM, a RAM, an input / output signal processing device, and the like is used as a control device that performs automobile engine control and the like. Software installed in a microcomputer generally inputs and outputs data to and from an application program that performs control processing and automobile parts (devices) that are controlled by the application program so that the target control operation can be performed. A device driver, an operating system (OS), and the like are included.
近年、ソフトウェアの規模の増大に伴い、個別の制御システムについてアプリケーションプログラムと、デバイスドライバと呼ばれるデバイス制御プログラムとを全て開発することが困難になっており、ソフトウェアを小さな単位の部品として構成し、これを再利用する手法や、これらを階層化し、変更箇所を局所化するなどの手法が採用されている。 In recent years, as the scale of software has increased, it has become difficult to develop all application programs and device control programs called device drivers for individual control systems. The method of reusing the method and the method of hierarchizing these and localizing the changed part are adopted.
階層化、部品化の手法により、デバイス制御プログラムをマイコンや電子回路を専門とする組織で開発し、アプリケーションプログラムを車両制御を専門とする組織それぞれ別々に開発し、両者を統合する組織で全ての制御ユニットとソフトウェアをとり纏めるといった複数の組織で並行に開発する開発プロセスの採用が可能となっている。 With the hierarchization and componentization methods, device control programs are developed by organizations specializing in microcomputers and electronic circuits, application programs are developed separately by organizations specializing in vehicle control, and all organizations are integrated with both. It is possible to adopt a development process that develops in parallel in multiple organizations, such as putting together control units and software.
従来技術として、エンジン制御プログラムにオブジェクト指向設計されたプログラム適用し、デバイスドライバを三階層化することにより、デバイスの変更を局所化することで、ハードウェアの変更に伴うソフトウェアの開発工数の低減を図ったものがある(例えば、実施形態1)。 As a conventional technology, by applying an object-oriented design program to the engine control program and making device drivers three-tiered, by localizing device changes, software development man-hours associated with hardware changes can be reduced. There is what is illustrated (for example, Embodiment 1).
また、要求仕様が異なる多様なアプリケーションプログラムに対して共通のプラットフォームプログラムを再利用するための手法として、中間層を設けてアプリケーションプログラム毎の差異を吸収する手法、データ形式や提供タイミングに基いて橋渡しを行う中間層を設ける手法が知られている(例えば、実施形態2)。 In addition, as a technique for reusing a common platform program for various application programs with different required specifications, a bridge is provided based on a technique for absorbing differences between application programs by providing an intermediate layer, data format, and provision timing. There is known a method of providing an intermediate layer for performing (for example, Embodiment 2).
プログラムを機能単位毎に分割するモジュール化の手法においては、モジュール間のインタフェースの形式を定め、各モジュールのインタフェースを明確に定義し、必要に応じてコンポーネント間の接続を行うことにより、ソフトウェアを構築する。このとき、接続するモジュール間のインタフェースの形式が合致していれば、モジュールを自由に組み合わせることが可能であり、モジュールの再利用が促進できる。このため、モジュールのインタフェースは、可能な限りオープンにするべく作成される。 In the modularization method that divides the program into functional units, the software is constructed by defining the interface format between modules, clearly defining the interface of each module, and connecting components as necessary. To do. At this time, if the interface format between the connected modules matches, the modules can be freely combined, and the reuse of the modules can be promoted. For this reason, module interfaces are created to be as open as possible.
しかしながら、複数の組織でソフトウェアの一部をそれぞれ担当し、各組織で開発、品質保証まで担当する場合には、品質保証の完了したモジュールに対し、他組織が作成したソフトウェアから、そのモジュールあるいはそのモジュールが利用している他のモジュールへのアクセスが自由になされると、モジュールの動作が意図せず変わってしまうことがある。このことにより、品質保証が維持できず、システムとしての品質の低下と修正、検証に要する開発期間の増大とを招くことになる。 However, when multiple organizations are in charge of a part of software, and each organization is in charge of development and quality assurance, the module or its If access to other modules used by a module is made free, the module's behavior may change unintentionally. As a result, quality assurance cannot be maintained, leading to deterioration in quality as a system, correction, and increase in the development period required for verification.
特に、自動車などの制御に好適なリアルタイム制御を実現するためには、演算、入出力処理などの各処理の内容が正しいこととともに、各処理が最適なタイミングで行われる必要があり、数マイクロ秒の遅延も許されない場合も多い。 In particular, in order to realize real-time control suitable for control of automobiles and the like, it is necessary that the contents of each processing such as calculation and input / output processing are correct, and that each processing must be performed at an optimal timing, and several microseconds In many cases, this delay is not allowed.
このような応答性が要求される信号制御は、マイコン上のソフトウェアだけでなく、マイコン内蔵あるいはマイコンに外付けされるタイマと信号出力装置の組み合わせで実現されることが多く、タイマの状態に依存した操作や、その順序によって所望の動作が得られなくなる。 Signal control that requires such responsiveness is often implemented not only by software on the microcomputer, but also by a combination of a timer built in the microcomputer or externally attached to the microcomputer and a signal output device, and depends on the state of the timer. The desired operation cannot be obtained depending on the operation and the order.
また、予期せぬ追加アプリケーション処理が、応答性の要求される割込み処理や、割込み優先度のより高い処理として追加されることにより、所定の応答すべき出力が遅延し、アプリケーションプログラム追加前に保証した最悪応答時間を増大させる結果となり得る。 In addition, unexpected additional application processing is added as interrupt processing that requires responsiveness or processing with higher interrupt priority, delaying the output that should be given a response, and guaranteeing before adding an application program Resulting in increased worst-case response time.
本発明は前記解決しようとする課題に鑑みてなされたものであって、その目的とするところは、制御ソフトウェアを複数部署で開発する際に、品質保証の完了したコンポーネントへ悪影響を及ぼすコンポーネントの追加を制限し、機能追加時に既存ソフトウェア部品の動作を損ねることなく新機能の追加を可能することである。 The present invention has been made in view of the problems to be solved, and the object of the present invention is to add a component that adversely affects a component for which quality assurance has been completed when developing control software in a plurality of departments. The new function can be added without impairing the operation of the existing software component when the function is added.
前記目的を達成するべく、本発明によるプログラム生成方法は、アプリケーションプログラムと、制御対象ハードウェアの信号と前記アプリケーションプログラムで扱うデータとの間の入出力処理を行うデバイスドライバとの間のデータの共通仕様を定義したインターフェース情報に基づいて、前記アプリケーションプログラムと前記デバイスドライバを結合して車両制御用プログラムを生成するプログラム生成方法であって、前記アプリケーションプログラム、前記デバイスドライバ及び前記インターフェース情報を入力し、前記インターフェース情報の一部を削除し、前記アプリケーションプログラム、前記デバイスドライバ及び前記削除部によって削除された残りのインターフェース情報を出力する第1のステップと、前記アプリケーションプログラムとは異なる新たなアプリケーションプログラムを入力し、前記第1の処理で出力された前記アプリケーションプログラム、前記デバイスドライバ、及び前記新たなアプリケーションプログラムとを、前記残りのインターフェース情報を用いて結合する第2のステップとを有する。 In order to achieve the above object, a program generation method according to the present invention provides a common data sharing between an application program and a device driver that performs input / output processing between a signal of a hardware to be controlled and data handled by the application program. A program generation method for generating a vehicle control program by combining the application program and the device driver based on interface information defining a specification, the application program, the device driver and the interface information being input, A first step of deleting a part of the interface information and outputting the remaining interface information deleted by the application program, the device driver and the deletion unit; A second application program that is different from the application program is input, and the application program, the device driver, and the new application program output in the first process are combined using the remaining interface information. Steps.
また、本発明によるプログラム生成装置は、アプリケーションプログラムと、制御対象の自動車部品の信号と前記アプリケーションプログラムで扱うデータとの間の入出力処理を行うデバイスドライバとの間のデータの共通仕様を定義したインターフェース情報に基づいて、前記アプリケーションプログラムと前記デバイスドライバを結合して車両制御用プログラムを生成するプログラム生成装置であって、前記アプリケーションプログラム、前記デバイスドライバ及び前記インターフェース情報を入力する入力部と、前記インターフェース情報の一部を削除する削除部と、前記アプリケーションプログラム、前記デバイスドライバ及び前記削除部によって削除された残りのインターフェース情報を出力する出力部とを有する。 Further, the program generation apparatus according to the present invention defines a common specification of data between an application program and a device driver that performs input / output processing between a signal of a controlled automobile part and data handled by the application program. A program generation apparatus that generates a vehicle control program by combining the application program and the device driver based on interface information, the input unit for inputting the application program, the device driver, and the interface information; A deletion unit that deletes part of the interface information; and an output unit that outputs the application program, the device driver, and the remaining interface information deleted by the deletion unit.
更に、本発明による車両制御用プログラムは、アプリケーションプログラムと当該アプリケーションが制御する自動車部品との間のデータ入出力処理を行うデバイスドライバとを有し、前記自動車部品の制御をコンピュータに実行させるための車両制御用プログラムであって、前記アプリケーションプログラム同士、前記デバイスドライバ同士、または前記アプリケーションプログラムと前記デバイスドライバとの間のデータの共通仕様を定義したインターフェース情報に基づいて、前記アプリケーションプログラムと前記デバイスドライバを結合して生成され、前記自動車部品の目標制御量であって前記デバイスドライバの入力パラメータとは異なる目標制御量を出力する第1のアプリケーションプログラムと、前記第1のアプリケーションプログラムから出力された前記目標制御量を前記デバイスドライバの入力パラメータに変換して出力する第2のアプリケーションプログラムとを有し、前記デバイスドライバは、前記第2のアプリケーションプログラムから出力された入力パラメータに基づいて前記自動車部品に対して制御信号を出力し、前記第1のアプリケーションプログラムは、所定の前記デバイスドライバへの情報が除かれた前記インターフェース情報を用いて作成されている。 The vehicle control program according to the present invention further includes an application program and a device driver that performs data input / output processing between the automobile parts controlled by the application, and causes the computer to execute control of the automobile parts. A vehicle control program based on interface information defining a common specification of data between the application programs, between the device drivers, or between the application program and the device driver. And a first application program that outputs a target control amount that is a target control amount of the automobile part and that is different from an input parameter of the device driver, and the first application A second application program that converts the target control amount output from the program into an input parameter of the device driver and outputs the input parameter, and the device driver uses the input parameter output from the second application program as an input parameter. Based on this, the control signal is output to the automobile part, and the first application program is created using the interface information from which information to the predetermined device driver is removed.
更にまた、本発明による車両制御用プログラムは、アプリケーションプログラムと、制御対象の自動車部品の信号と前記アプリケーションプログラムで扱うデータとの間の入出力処理を行うデバイスドライバと、前記アプリケーションプログラムと前記デバイスドライバとの間のデータの共通仕様を定義したインターフェース情報を有する補助データとを有し、前記補助データに基づいて前記アプリケーションプログラムと前記デバイスドライバを結合して成る車両制御用プログラムであって、前記補助データは、所定の前記デバイスドライバにアクセスする前記アプリケーションプログラムの開発時には、前記所定のデバイスドライバと前記アプリケーションプログラムとの間の前記インターフェース情報を含むとともに、前記所定のデバイスドライバにアクセスする新たなアプリケーションプログラムの開発時には、前記インターフェース情報が削除されている。 Furthermore, a vehicle control program according to the present invention includes an application program, a device driver that performs input / output processing between a signal of an automobile part to be controlled and data handled by the application program, the application program, and the device driver. An auxiliary data having interface information that defines a common specification of data between the application program and a vehicle control program that combines the application program and the device driver based on the auxiliary data. The data includes the interface information between the predetermined device driver and the application program at the time of development of the application program that accesses the predetermined device driver, and the predetermined device driver. During development of a new application program to access the scan driver, the interface information is deleted.
更にまた、本発明による車両制御用プログラムは、アプリケーションプログラムと、制御対象の自動車部品の信号と前記アプリケーションプログラムで扱うデータとの間の入出力処理を行うデバイスドライバとを有し、前記アプリケーションプログラムと前記デバイスドライバとの間のデータの共通仕様を定義したインターフェース情報に基づいて、前記アプリケーションプログラムと前記デバイスドライバを結合して成る車両制御用プログラムであって、前記アプリケーションプログラム、前記デバイスドライバ及び情報の一部が削除された前記インターフェース情報を有し、前記削除されたインターフェース情報に関係する前記アプリケーションプログラムと前記デバイスドライバとの結合時に警告を表示するように構成されている。 Furthermore, a vehicle control program according to the present invention includes an application program, and a device driver that performs input / output processing between a signal of an automobile part to be controlled and data handled by the application program, A vehicle control program that combines the application program and the device driver based on interface information that defines a common specification of data between the device driver, the application program, the device driver, and information A part of the interface information is deleted, and a warning is displayed when the application program related to the deleted interface information is combined with the device driver.
更にまた、本発明による自動車用制御装置は、アプリケーションプログラムと当該アプリケーションが制御する自動車部品との間のデータ入出力処理を行うデバイスドライバとを有し、前記アプリケーションプログラム同士、前記ドライバ同士、または前記アプリケーションプログラムと前記ドライバとの間のデータの共通仕様を定義したインターフェース情報に基づいて前記アプリケーションプログラムと前記ドライバを結合して生成された車両制御用プログラムを記憶し、当該車両制御用プログラムに従って前記自動車部品を制御する自動車用制御装置であって、前記自動車部品の目標制御量であって、前記ドライバの入力パラメータとは異なる目標制御量を出力する第1のアプリケーションプログラムと、前記第1のアプリケーションプログラムから出力された前記目標制御量を前記ドライバの入力パラメータに変換して出力する第2のアプリケーションプログラムと、前記第2のアプリケーションプログラムから出力された入力パラメータに基づいて前記自動車部品に対して制御信号を出力するデバイスドライバを有し、前記第1のアプリケーションプログラムは、所定の前記デバイスドライバへの情報が除かれた前記インターフェース情報を用いて作成された車両制御用プログラムに従って前記自動車部品を制御することを特徴としている。 Furthermore, the vehicle control apparatus according to the present invention includes an application program and a device driver that performs data input / output processing between the vehicle parts controlled by the application, and the application programs, the drivers, or the A vehicle control program generated by combining the application program and the driver is stored based on interface information defining a common specification of data between the application program and the driver, and the vehicle is controlled according to the vehicle control program. A vehicle control apparatus for controlling a component, the first application program outputting a target control amount that is a target control amount of the automotive component and is different from an input parameter of the driver, and the first application A second application program for converting the target control amount output from the program into an input parameter of the driver and outputting the parameter, and controlling the automobile part based on the input parameter output from the second application program A device driver for outputting a signal, wherein the first application program controls the automobile component according to a vehicle control program created using the interface information from which information to the predetermined device driver is removed. It is characterized by that.
各I/Oを制御するソフトウェアのうち、追加コンポーネントのアクセスにより影響を受けるコンポーネント群の中間に位置するインターフェースを削除し、最終演算値あるいは目標値設定のインターフェースのみを残すことにより、応答時間遅延の原因となるタイマへのアクセス、割込み応答処理の追加、あるいは、周辺回路の状態遷移に依存する入出力処理への追加ソフトウェアからのアクセスを制限することが行われる。このようにして作成したソフトウェアは、各部署で検証した品質保証をもとに、システムの品質保証を行うことができ、組み合わせによる品質低下とそれに伴う開発期間の増大を防止できる。 In the software that controls each I / O, the interface located in the middle of the component group affected by the access of the additional component is deleted, and only the interface of the final calculation value or target value setting is left, thereby reducing the response time delay. Access to the cause timer, addition of interrupt response processing, or access from additional software to input / output processing depending on the state transition of the peripheral circuit is performed. The software created in this way can be used to guarantee the quality of the system based on the quality assurance verified by each department, and can prevent the deterioration of quality due to the combination and the accompanying increase in the development period.
本発明の実施形態を、図を参照して説明する。
図1は、本発明の対象とする制御システムの一つである自動車エンジン制御システムの構成を示している。コントロールユニット201は、中央演算装置(CPU)202、割込みコントローラ203、タイマ・パルスコントローラ204、AD変換器205、読み出し専用メモリ(ROM)206、揮発性読み書きメモリ(RAM)207、バス208、入出力ポート209などから構成され、電源装置210から電源の供給を受ける。
Embodiments of the present invention will be described with reference to the drawings.
FIG. 1 shows a configuration of an automobile engine control system which is one of control systems targeted by the present invention. The
なお、符号202〜210の各要素は、一つの素子上に内蔵される場合と、別素子を用いて接続される場合があるが、その相違は、本発明に特に影響しないので、その構成は問わない。 In addition, although each element of code | symbol 202-210 may be connected using the case where it is incorporated in one element, and another element, since the difference does not affect in particular this invention, the structure is It doesn't matter.
コントロールユニット201には制御対象であるエアフローセンサ221、電制スロットル222、インジェクタ223、点火プラグ224、空燃比センサ225、クランク角センサ226などのセンサや、アクチュエータ230が入出力ポート209を介して接続され、コントロールユニット201がこれらの制御を行う。制御は、CPU202をはじめとする構成要素から入出力ポート209のレジスタへの読み書きにより行われる。制御の方法を記述したソフトウェアはコントロールユニット201上のROM206およびRAM207に搭載される。
The
図2は、コントロールユニット201が実行するソフトウェアの構成図である。ソフトウェアは、大きく分けて、アプリケーションプログラム301と、オペレーティングシステム302と、デバイスドライバ303に分類される。
FIG. 2 is a configuration diagram of software executed by the
アプリケーションプログラム301は、アプリケーションプログラムインターフェイス(API)305を通してオペレーティングシステム302やデバイスドライバ303と情報や処理の受け渡しを行う。接続されるハードウェアによらずAPI305を標準化することにより、ハードウェアが変更されても、その影響がアプリケーションプログラム301へ及ぶことを避けることができる。オペレーティングシステム302、デバイスドライバ303は、マイコン304の入出力ポートなどのハードウェアインターフェイス(HWI)306を通してこれらの制御を行う。
The application program 301 exchanges information and processing with the
図3は、図2に示すソフトウェアの構成の詳細である。本実施形態では、制御ソフトウェアを部品化し、下記の階層に配置する。 FIG. 3 shows details of the software configuration shown in FIG. In this embodiment, the control software is made into parts and arranged in the following hierarchy.
制御ロジックを記述するのがアプリケーション部123である。ここでは、ハードウェアやマイコンに依存しない制御ロジックや演算処理、情報処理を行う。アプリケーション101、102と、アプリケーション同士の入力インターフェース105、出力インターフェース103、104とで指定された接続関係に基づき接続するのが部品接続部124である。
The application unit 123 describes the control logic. Here, control logic, arithmetic processing, and information processing that do not depend on hardware or a microcomputer are performed. The
ハードウェア128に関連する処理を行うのがプラットフォーム110であり、アプリケーション部123とのインターフェースがプラットフォームI/F125である。
The
プラットフォーム110の内部は、結合済みソフトウェア部品111と、単体ソフトウェア部品117、121とに分類する。そして、プラットフォームI/F125は、プラットフォーム110が有する結合済みソフトウェア部品111のための出力インターフェース107、入力インターフェース108と、単体ソフトウェア部品117のための入力インターフェース109とを有する。
The inside of the
結合済みソフトウェア部品111は、検証を終えたなどの理由により、動作の変更を行わないソウトウェア部品であり、部品の内部処理として、検証済みアプリケーション処理部112、113、信号変換処理部115、116、入力デバイス制御部119、出力デバイス制御部120を有し、追加されるソフトウェア部品から内部処理に到達するインターフェースを削除して到達できないよう構成したものである。
The combined
単体ソフトウェア部品117、121は、以下の構成である。単体ソフトウェア部品117により具現されて信号変換部126に属する信号変換部品117aは入力インターフェース114を有し、もう一つの単体ソフト部品121により具現されて入出力制御部127に属する出力デバイス制御部品121aも入力インターフェース118を有する。
The
入力デバイス制御部119、出力デバイス制御部120および出力デバイス制御部品121aは、ハードウェア128にアクセスし、マイコン上あるいはマイコン外付けの入出力デバイスを駆動する。
The input
上述したように、所定のソフトウェア部品を結合済みソフトウェア部品として纏め、各ソフトウェア部品毎の入出力インターフェースを削除することにより、検証後の工程で追加されるソフトウェアによる誤動作を防止できる。 As described above, it is possible to prevent malfunction caused by software added in the post-verification process by collecting predetermined software components as combined software components and deleting the input / output interface for each software component.
以下では、点火制御を例にとって各コンポーネントの構成と動作について説明する。
点火制御は、自動車エンジンの各気筒に配置された点火プラグへ印加する電圧電流のオン・オフを制御することで行う。図4は、その機器構成を示している。制御対象であるエンジン701は、ピストン702の上下によってクランク軸701Aが回転する。クランク軸701Aの回転位置を検出するのがクランク角センサ704である。クランク角センサ704は、回転プレート705の円周上に配置した歯に対して磁気センサやホールIC706を用いることにより、エンジン701の回転位置(クランク軸701Aの回転位置)を検出する。
Hereinafter, the configuration and operation of each component will be described taking ignition control as an example.
The ignition control is performed by controlling on / off of a voltage / current applied to a spark plug disposed in each cylinder of the automobile engine. FIG. 4 shows the device configuration. In the
クランク角センサ704が出力するセンサ信号は、ECU707上の入力回路709を介してマイコン710の端子に入力され、マイコン内部のタイマ712を介してマイコン710上で動作するソフトウェアに取り込まれる。
A sensor signal output from the
また、一般に、エンジン701の燃焼室701Bではピストン702が圧縮上死点付近に達したタイミングで点火を行う。点火は点火プラグ703に一定時間に亘って電流(電圧)を印加し、その電流を遮断することによりイグニッションコイル(図示省略)を介して高電圧を発生させることにより行う。電圧の印加はマイコン710上のソフトウェアからの出力指示によりタイマ711を介して駆動回路708によって実際の駆動電流が出力される。この電流を印加開始する時期を通電時期と呼び、電流を遮断する時期を点火時期と呼ぶ。
Further, generally, in the combustion chamber 701B of the
図5は、点火信号を出力するためのソフトウェアの処理タイミングを時系列に示したものであり、図6は、この一連の処理順序を行うハードウェアおよびソフトウェアの実行順序を記述したものである。 FIG. 5 shows the processing timing of software for outputting an ignition signal in time series, and FIG. 6 describes the execution order of hardware and software for performing this series of processing order.
クランク角センサ704の検出信号Scの立ち上がりを検出し(ステップ501)、その数や周期などをもとに回転数やエンジン回転位置を検出する(ステップ502)。吸気上死点ITDCを点火信号算出のための基準位置として用いるために、時点t0〜t1まで基準位置を待つ(ステップ503)。時点t1で吸気上死点ITDCを検出すると、時点t1を基準として出力目標値を算出する(ステップ504)。出力目標値は、通電時間Tcと点火タイミングTiの組である。通電時間Tcはイグニッションコイルに印加する電流であることから時間で指定され、点火タイミングTiは、エンジンシリンダ内のピストン702の位置に依存するため、クランク角度で指定する場合が多い。
The rising edge of the detection signal Sc of the
クランク角度はエンジン回転数を元に時間に換算する必要があり、通電開始時期換算で、タイマに設定すべき時間単位に換算する(ステップ505)。これらをもとに通電開始時期設定にてタイマ値に換算された通電、点火時期をマイコン710のレジスタに設定する(ステップ506)。設定される値は、通電用コンペアマッチ値Ccと、点火用コンペアマッチ値Ciである。タイマ内部では定時周期で更新されるタイマカウンタCtとコンペアマッチ値Cc、Ciが一致する時点で、割込みが発生する。 The crank angle needs to be converted into time based on the engine speed, and is converted into a unit of time to be set in the timer in terms of energization start timing (step 505). Based on these, the energization and ignition timing converted to the timer value in the energization start timing setting is set in the register of the microcomputer 710 (step 506). The set values are an energizing compare match value Cc and an ignition compare match value Ci. In the timer, an interrupt is generated when the timer counter Ct updated at regular intervals and the compare match values Cc and Ci match.
例えば、時刻t2で通電用コンペアマッチが発生すると、通電開始時期到達をソフトウェアで検知し(ステップ507)、通電開始処理ルーチンを起動する(ステップ508)。通電開始処理の時点t3で、実際に出力端子からパルスが出力される。次に、エンジンの回転変動などに対応するための点火時期の補正処理(ステップ509)を行った後に、点火時期を設定する(ステップ510)。その後、時点t4で、タイマカウンタCtと点火用コンペアマッチ値Ciが一致すると、割り込みが発生し、点火時期到達を検知すると(ステップ511)、点火処理ルーチンを呼出し(ステップ512)、時点t5で通電停止することで、点火する。 For example, when an energizing compare match occurs at time t2, the energization start timing is detected by software (step 507), and an energization start processing routine is started (step 508). A pulse is actually output from the output terminal at time t3 of the energization start process. Next, after performing an ignition timing correction process (step 509) to cope with engine rotation fluctuations, the ignition timing is set (step 510). Thereafter, when the timer counter Ct matches the ignition compare match value Ci at time t4, an interrupt is generated, and when the ignition timing is detected (step 511), the ignition processing routine is called (step 512). I ignite by stopping.
これらのうち時点t3−t2が通電開始時期の遅延時間(ジッタ)、時点t5−t4が点火時期の遅延時間となる。また、時点t1〜t2間により上位の割り込みが発生し通電時期演算が間に合わない場合には所望の出力が得られないことになるため、クランク角センサの入力から点火パルスの出力までの動作を検証する必要がある。 Among these, time t3-t2 is the delay time (jitter) of the energization start timing, and time t5-t4 is the delay time of the ignition timing. Also, if a higher-order interrupt occurs between time points t1 and t2 and the energization timing calculation is not in time, the desired output cannot be obtained, so the operation from the crank angle sensor input to the ignition pulse output is verified. There is a need to.
上記の処理のうち、ステップ503〜504、ステップ507〜508およびステップ511〜512は、実行時に遅延が発生すると、点火のための出力パルスに影響が現れる部分である。これらの各モジュールの動作は、タイマユニットや割り込みコントローラなどのハードウェアと、マイコン710上で動作するソフトウェアの協調動作により実現している。
Of the above processing, steps 503 to 504,
マイコン割り込みコントローラの構成を、図7を参照して説明する。マイコン710に内蔵されたパルス入力部905、AD変換器906、タイマ907、通信部908などの内蔵モジュール902の生成する割り込み要因が割り込みコントローラ903に入力される。これらの割り込み要因は、割り込み優先レベル設定レジスタ909に設定された割り込み要因毎の優先度にしたがって最も優先度の高いものが選択される。選択された優先レベルは、中央処理装置904内のステータスレジスタ911の示す現在の割り込みレベルと比較器910で比較され、優先順位がより高ければ、中央処理装置904に割り込みが伝達される。
The configuration of the microcomputer interrupt controller will be described with reference to FIG. Interrupt factors generated by the built-in
上述のステップ507〜508での各ハードウェアやソフトウェアのモジュールの動作の詳細を、図8を参照して説明する。
Details of the operation of each hardware or software module in
ステップ807でタイマに設定した通電時期の到来を表すコンペアマッチがマイコン上のハードウェアであるタイマユニット802で発生する。これを受けた割り込みコントローラ803は優先度判定を行い(ステップ808)、優先度が高ければ割り込みを発生し(ステップ809)、割り込み処理部804にて受け付ける。
In
ここでは、スタック退避(ステップ810)、割り込み関連レジスタの処理など後処理(ステップ811)を行った上で、オペレーティングシステムへのイベント発生を通知し(ステップ812)、スタックを復帰する(ステップ813)。 Here, post-processing (step 811) such as stack saving (step 810) and interrupt-related register processing is performed, an event occurrence is notified to the operating system (step 812), and the stack is restored (step 813). .
オペレーティングシステムは、ステップ812で通知したイベントに基づき優先度を判定した上で(ステップ814)、スケジューリングを行い(ステップ815)、最も優先度の高い処理に実行権限を渡す。 The operating system determines priority based on the event notified in step 812 (step 814), performs scheduling (step 815), and passes execution authority to the process with the highest priority.
スケジューリングされた入出力制御部805は、経過時間をタイマユニット802のインプットキャプチャレジスタを参照して経過時間を計測し(ステップ816)、点火パラメータ演算アプリケーションプログラム806の通電時間補正演算を呼び出す(ステップ817)。算出された通電時間に基づき通電開始処理を行い(ステップ818)、出力時間を設定するタイマのレジスタを更新し(ステップ819)、出力であるON波形出力を行う(ステップ820)。これに基づき、タイマユニット802は点火プラグへの信号を出力する。
The scheduled input /
これら一連の点火制御のソフトウェアをエンジン制御システムとして構成した例を、図9に示す。アプリケーションの移植性、ハードウェア変更時のソフトウェア変更の局所化を実現するために階層化した構造となっている。検証済みのアプリケーションとしてエンジン回転数検出処理部6−11と点火パルス計算処理部6−12があり、未検証のアプリケーションとしてバルブ開度制御部6−2が混在する例である。 FIG. 9 shows an example in which a series of ignition control software is configured as an engine control system. It has a layered structure to realize portability of applications and localization of software changes when hardware changes. In this example, the engine speed detection processing unit 6-11 and the ignition pulse calculation processing unit 6-12 are verified applications, and the valve opening degree control unit 6-2 is mixed as an unverified application.
アプリケーション部ではエンジンの制御を主として物理量をモデルとした演算を行い、その演算処理はコンポーネントとして部品化する。 In the application section, the engine control is performed mainly using a physical quantity as a model, and the calculation processing is made into a component as a component.
6−1は、トルク指令演算を行う追加アプリケーションであり、エンジン回転数検出処理部6−11で検出したエンジン回転数を入力し、点火パルス計算処理部6−12に点火時期と通電時間を出力する。6−2は、未検証デバイスであるバルブの制御を行うアプリケーションである。 6-1 is an additional application for performing a torque command calculation. The engine speed detected by the engine speed detection processing unit 6-11 is input, and the ignition timing and energization time are output to the ignition pulse calculation processing unit 6-12. To do. Reference numeral 6-2 denotes an application for controlling a valve which is an unverified device.
これらのアプリケーション部品はパラメータの受け渡しなどを行う部品接続部6−6を介して接続する。アプリケーション部品とプラットフォームソフトウェア27は、標準I/Oインターフェース6−20を介して接続する。標準I/Oインターフェース6−20は、エンジン回転数を示すアプリケーション量インターフェース6−7、点火指令アプリケーション量インターフェース6−8と、駆動パルス信号量インターフェース6−9を持つ。 These application components are connected via a component connection unit 6-6 for transferring parameters and the like. The application component and the platform software 27 are connected via a standard I / O interface 6-20. The standard I / O interface 6-20 has an application quantity interface 6-7 indicating the engine speed, an ignition command application quantity interface 6-8, and a drive pulse signal quantity interface 6-9.
標準I/Oインターフェース6−20以下がプラットフォームソフトウェア6−21である。プラットフォームソフトウェア6−2は結合済み入出力制御部6−10とバルブ開度・駆動量変換部6−18、駆動パルス制御6−19からなる。 The standard I / O interface 6-20 or lower is platform software 6-21. The platform software 6-2 includes a combined input / output control unit 6-10, a valve opening / drive amount conversion unit 6-18, and a drive pulse control 6-19.
結合済み入出力制御部6−10は、エンジン回転数検出処理部6−11、ノイズフィルタ6−13、パルス入力制御部6−15、点火パルス計算処理部6−12、時間変換部6−14、パルス出力制御部6−16、割り込み優先度制御部6−17を内部に持つ。 The combined input / output control unit 6-10 includes an engine speed detection processing unit 6-11, a noise filter 6-13, a pulse input control unit 6-15, an ignition pulse calculation processing unit 6-12, and a time conversion unit 6-14. And a pulse output control unit 6-16 and an interrupt priority control unit 6-17.
パルス入力制御部6−15では、マイコン内蔵あるいは外付けのパルス入力器とそのタイマの制御を行い、パルス出力制御部6−16、6−19はパルス出力器とそのタイマの制御を行う。 The pulse input control unit 6-15 controls a built-in or external pulse input unit and its timer, and the pulse output control units 6-16 and 6-19 control the pulse output unit and its timer.
割り込み優先度は、パルス入力器、パルス出力器、タイマ、ソフトウェア処理などによる割り込みの優先度制御部6−17を保持し、割り込みコントローラの設定レジスタに設定するものである。 The interrupt priority holds the interrupt priority control unit 6-17 by a pulse input device, a pulse output device, a timer, software processing, etc., and is set in the setting register of the interrupt controller.
以上のように、構成することで、上記の遅延を引き起こす虞れのあるアプリケーションの追加を排除できる。 By configuring as described above, it is possible to eliminate the addition of an application that may cause the above-described delay.
前述のクランク角センサ704と点火パルス出力のように、複数のセンサやアクチュエータの連携による動作のタイミングを保証したプラットフォーム上に、新たなアプリケーションプログラムを追加した場合に、当該センサやアクチュエータの動作に関連する動作を損ねていないことを保証するためには、当該センサ、アクチュエータに関連するデバイスにアクセスしていないことや、当該処理を許容時間以上に待たせる上位優先度の処理が存在しないことが必要である。
When a new application program is added to a platform that guarantees the timing of operation by cooperation of multiple sensors and actuators, such as the
従って、アクセス許可インターフェースからクランク角センサ704と点火パルス出力に関わるコンポーネントのインターフェースを削除し、さらにこれらのコンポーネントが実行する優先度よりも低い優先度のコンポーネントのみを追加可能であることを指定すれば動作を保証することができる。
Therefore, if the interface of the components related to the
図10は、温度センサの検知を一つのアナログデジタル(AD)変換器を用いて測定するために用いられる方法を示している。測定対象は、水温センサ1812と、吸気温センサ1813である。
FIG. 10 illustrates a method used to measure temperature sensor detection using a single analog-to-digital (AD) converter. Measurement objects are a
検知に用いるAD変換器1809は、一つのチャネルのみであるため、マルチプレクサ1811を用いて入力信号を適宜切り替えることにより、二つのセンサの入力を得る。マルチプレクサ1811の制御を行うのはデジタル出力部1810であり、この出力値に応じてチャネルを切り替える。ソフトウェア上でAD変換器1809の変換開始の指定や結果の取得処理を行うのがAD変換器制御部1807であり、デジタル出力制御部1808で出力処理を行う。二つのセンサの入力を適切に切り替えるのがマルチプレクサ制御部1806であり、両者の測定電圧の正規化などを行うのが電圧変換部1804,1805である。
Since the
この構成によってアプリケーションプログラムである水温算出部1802と吸気温算出部1803は、移植性の高いソフトウェアコンポーネントとすることができる。
With this configuration, the water
ところが、この構成で吸気温算出のアプリケーションが変更された場合、その制御の影響が両者で共有しているマルチプレクサ制御部1806、AD変換器制御部1807、デジタル出力制御部1808にまで及ぶこととなる。
However, when the application for calculating the intake air temperature is changed in this configuration, the influence of the control extends to the
このように、デバイスを共有した入出力制御では、共有しているうち一つでも保護対象のインターフェースが存在する場合には、影響を及ぼす他のインターフェースも保護対象とする必要がある場合がある。 As described above, in the input / output control in which devices are shared, if at least one of the shared interfaces includes a protection target interface, it may be necessary to protect other affected interfaces as protection targets.
図11は、前述のアクセス保護されたインターフェースを生成する装置の構成を示している。インターフェース生成装置1003は、不具合の原因となり得るインターフェースのリストと対象となるコンポーネントを入力すると、アクセス許可されたインターフェースのみを持つプラットフォームソフトウェアを出力する。
FIG. 11 shows a configuration of an apparatus for generating the above access-protected interface. When the
出力されたプラットフォームソフトウェアは、追加アプリケーションから許可されないインターフェースへのアクセスを試みても構築時にコンパイルエラーなどの警告が出ることにより保護するものである。 The output platform software is protected by issuing a warning such as a compile error at the time of construction even if an additional application attempts to access an unauthorized interface.
インターフェース生成装置1003は、開発用のパーソナルコンピュータやワークステーションで構成することが考えられ、その入出力する情報、ここでは、コンポーネントソフトウェア本体1001、コンポーネントソフトウェアインターフェース1002、1008、ソフトウェアコンポーネント本体1005、ソフトウェアコンポーネントインターフェース1006、アクセス不許可I/F情報1004は、ハードディスクやメモリなどの記憶装置やネットワークなどから得る電子ファイルとし、その変換手順は、パーソナルコンピュータやワークステーションで実行可能なプログラムとして備えることができる。
The
コンポーネントソフトウェアの本体1001は、C言語などのプログラミング言語のソースコードや機械語によるオブジェクトコードの形態のファイルであり、コンポーネントソフトウェアインターフェースに必要な情報を記述したファイルである。例えば、C言語などのプログラミング言語によるヘッダファイルソースコードや、CSV(カンマ区切りテキスト)、XML(構造化テキスト)、DB(データベースファイル)など形式のファイルである。
A component software
アクセス不許可I/F情報1004は、所定のI/Fをアクセス不許可とするための情報を記述したものであり、CSV(カンマ区切りテキスト)、XML(構造化テキスト)、DB(データベースファイル)など形式のファイルである。
The access disapproved I /
これらをもとに、ソフトウェアコンポーネント本体1005と、公開用I/Fのみに限定したソフトウェアコンポーネントインターフェース1006を出力する。
Based on these, the software component
これらに追加してソフトウェアコンポーネントインターフェース1006で公開するI/Fのみを使用するコンポーネントソフトウェア本体1007およびコンポーネントソフトウェアインターフェース1008を追加し、システム構成装置1009を用いて開発対象ソフトウェア1010を得る。システム構成装置1009は、一般のC言語のコンパイラ・リンカであっても良い。
In addition to these, a component software
図12は、インターフェース生成装置1003の処理アルゴリズムを示している。
アクセス不許可ファイル、コンポーネントファイルを読み込み(ステップ1101、1102)、コンポーネントファイルに記載のコンポーネントを選定し(ステップ1104)、各コンポーネントに対して公開用I/Fを作成する(ステップ1105)。各コンポーネント内のI/F宣言を切り出す(ステップ1106)。I/F宣言(ステップ1106)はC言語の関数プロトタイプ宣言や変数の宣言などである。切り出した各I/Fについて、許可I/Fであるか判定する(ステップ1108)。判定結果が許可であれば公開用I/Fファイルに当該I/Fの前記宣言を出力し(ステップ1109)、不許可であれば当該ファイルを保護対象ファイルリストへ追加する(ステップ1110)。
FIG. 12 shows the processing algorithm of the
An access denied file and a component file are read (
全てのコンポーネントの全てのI/Fについて上記処理が終了したら、保護対象リストに記載のコンポーネントをコンパイル・リンクしたファイルと公開用I/Fファイルとを出力する(ステップ1111)。 When the above processing is completed for all the I / Fs of all the components, a file obtained by compiling and linking the components described in the protection target list and a public I / F file are output (step 1111).
図13は、ステップ1108の許可I/F判定の詳細を記述したものである。この許可I/F判定は、各対象I/Fについてアクセス許可あるいは不許可を判定するものである。対象I/FがアプリケーションI/Fであれば(ステップ1201肯定)、アクセス許可する(ステップ1208)。対象I/Fが許可I/Fリストに存在しない場合には(ステップ1202否定)、アクセス不許可である(ステップ1209)。存在する場合で(ステップ1202肯定)、割込みレベル条件が存在し(ステップ1203肯定)、当該I/Fの割込みレベルが許可レベルよりも高い場合には(ステップ1204肯定)、アクセス不許可である(ステップ1209)。当該I/Fが共有デバイスリスト中に存在し(ステップ1205肯定)、当該共有デバイスリスト中の全てのI/Fが許可リスト中に存在すれば(ステップ1206、1207)、アクセス許可であり(ステップ1208)、一つでも許可しないものが含まれていれば、アクセス不許可である(ステップ1209)。
FIG. 13 describes details of the permission I / F determination in
以上の方法によるインターフェース生成装置を用いることで、アクセス許可インターフェースのみを持つソフトウェアを得ることができる。 By using the interface generation apparatus according to the above method, software having only an access permission interface can be obtained.
図14は、図9に示す構成のソフトウェアのインターフェースの全てをアクセス許可した場合のアクセス許可情報の例を示している。ここでは、各インターフェースについて、入出力、種別、名称、関数名、パラメータ詳細などを指定する。これを元に、図12、図13に示されている処理手順によって図10に示す構成を持つインターフェース生成装置1003によって得られる公開用ソフトウェアコンポーネントインターフェース1006の例を図17に示している。このインターフェースは、図14に記載の各インターフェースをC言語の関数で実装した関数宣言を得ることができる。
FIG. 14 shows an example of access permission information when access is permitted to all the software interfaces configured as shown in FIG. Here, input / output, type, name, function name, parameter details, etc. are specified for each interface. Based on this, FIG. 17 shows an example of the public software component interface 1006 obtained by the
図15は、前述した点火制御を追加アプリケーションの悪影響から保護するためのインターフェース許可情報のリストを示している。これによって得られる公開インターフェース情報を図18に示している。 FIG. 15 shows a list of interface permission information for protecting the ignition control described above from the adverse effects of additional applications. The public interface information obtained by this is shown in FIG.
図16は、図11に示したマルチプレクサによる共有デバイスのアクセス保護の指定例である。これによって得られた許可インターフェース情報を図19に示している。この許可インターフェース情報では、共有デバイスリストに保護対象が存在するためにアプリケーションI/Fのみが公開されている。 FIG. 16 is an example of designation of access protection of a shared device by the multiplexer shown in FIG. FIG. 19 shows the permission interface information obtained as a result. In this permission interface information, only the application I / F is disclosed because the protection target exists in the shared device list.
110 プラットフォーム
111 結合済みソフトウェア部品
117、121 単体ソフトウェア部品
123 アプリケーション部
124 部品接続部
125 プラットフォームI/F
201 コントロールユニット
301 アプリケーションプログラム
302 オペレーティングシステム
303 デバイスドライバ
110
201 Control Unit 301
Claims (6)
前記アプリケーションプログラム、前記デバイスドライバ及び前記インターフェース情報を入力し、前記インターフェース情報の一部を削除し、前記アプリケーションプログラム、前記デバイスドライバ及び前記削除部によって削除された残りのインターフェース情報を出力する第1のステップと、
前記アプリケーションプログラムとは異なる新たなアプリケーションプログラムを入力し、前記第1の処理で出力された前記アプリケーションプログラム、前記デバイスドライバ、及び前記新たなアプリケーションプログラムとを、前記残りのインターフェース情報を用いて結合する第2のステップと、
を有するプログラム生成方法。 Based on interface information defining a common specification of data between an application program and a device driver that performs input / output processing between signals of hardware to be controlled and data handled by the application program, the application program and the A program generation method for generating a vehicle control program by combining device drivers,
The application program, the device driver and the interface information are input, a part of the interface information is deleted, and the remaining interface information deleted by the application program, the device driver and the deletion unit is output. Steps,
A new application program different from the application program is input, and the application program, the device driver, and the new application program output in the first process are combined using the remaining interface information. A second step;
A program generation method comprising:
前記アプリケーションプログラム、前記デバイスドライバ及び前記インターフェース情報を入力する入力部と、
前記インターフェース情報の一部を削除する削除部と、
前記アプリケーションプログラム、前記デバイスドライバ及び前記削除部によって削除された残りのインターフェース情報を出力する出力部と、
を有する車両制御用プログラム生成装置。 Based on interface information defining a common specification of data between an application program and a device driver that performs input / output processing between a signal of an automobile part to be controlled and data handled by the application program, A program generation device that combines the device drivers to generate a vehicle control program,
An input unit for inputting the application program, the device driver, and the interface information;
A deletion unit for deleting a part of the interface information;
An output unit that outputs the application program, the device driver, and the remaining interface information deleted by the deletion unit;
A vehicle control program generating device having
前記アプリケーションプログラム同士、前記デバイスドライバ同士、または前記アプリケーションプログラムと前記デバイスドライバとの間のデータの共通仕様を定義したインターフェース情報に基づいて、前記アプリケーションプログラムと前記デバイスドライバを結合して生成され、
前記自動車部品の目標制御量であって前記デバイスドライバの入力パラメータとは異なる目標制御量を出力する第1のアプリケーションプログラムと、前記第1のアプリケーションプログラムから出力された前記目標制御量を前記デバイスドライバの入力パラメータに変換して出力する第2のアプリケーションプログラムとを有し、
前記デバイスドライバは、前記第2のアプリケーションプログラムから出力された入力パラメータに基づいて前記自動車部品に対して制御信号を出力し、前記第1のアプリケーションプログラムは、所定の前記デバイスドライバへの情報が除かれた前記インターフェース情報を用いて作成されている車両制御用プログラム。 A device driver for performing data input / output processing between an application program and an automobile part controlled by the application, and a vehicle control program for causing a computer to control the automobile part,
Based on interface information that defines common specifications of data between the application programs, between the device drivers, or between the application program and the device driver, the application program and the device driver are combined and generated,
A first application program that outputs a target control amount that is a target control amount of the automobile part and is different from an input parameter of the device driver; and the target control amount that is output from the first application program A second application program that converts and outputs the input parameter to
The device driver outputs a control signal to the automobile part based on an input parameter output from the second application program, and the first application program excludes information to a predetermined device driver. A vehicle control program created using the interface information.
前記補助データは、所定の前記デバイスドライバにアクセスする前記アプリケーションプログラムの開発時には、前記所定のデバイスドライバと前記アプリケーションプログラムとの間の前記インターフェース情報を含むとともに、前記所定のデバイスドライバにアクセスする新たなアプリケーションプログラムの開発時には、前記インターフェース情報が削除されている車両制御用プログラム。 An interface that defines an application program, a device driver that performs input / output processing between a signal of an automobile part to be controlled and data handled by the application program, and a common specification of data between the application program and the device driver Vehicle control program comprising auxiliary data having information, and combining the application program and the driver based on the auxiliary data,
The auxiliary data includes the interface information between the predetermined device driver and the application program at the time of development of the application program that accesses the predetermined device driver, and a new access to the predetermined device driver. A vehicle control program from which the interface information has been deleted when an application program is developed.
前記アプリケーションプログラム、前記デバイスドライバ及び情報の一部が削除された前記インターフェース情報を有し、前記削除されたインターフェース情報に関係する前記アプリケーションプログラムと前記デバイスドライバとの結合時に警告を表示するように構成されている車両制御用プログラム。 An application program, and a device driver that performs input / output processing between a signal of an automobile part to be controlled and data handled by the application program, and a common specification of data between the application program and the device driver A vehicle control program configured by combining the application program and the device driver based on defined interface information,
The application program, the device driver, and the interface information in which a part of the information is deleted, and a warning is displayed when the application program related to the deleted interface information and the device driver are combined. A vehicle control program.
前記自動車部品の目標制御量であって、前記セバイスドライバの入力パラメータとは異なる目標制御量を出力する第1のアプリケーションプログラムと、前記第1のアプリケーションプログラムから出力された前記目標制御量を前記ドライバの入力パラメータに変換して出力する第2のアプリケーションプログラムと、前記第2のアプリケーションプログラムから出力された入力パラメータに基づいて前記自動車部品に対して制御信号を出力するデバイスドライバを有し、前記第1のアプリケーションプログラムは、所定の前記デバイスドライバへの情報が除かれた前記インターフェース情報を用いて作成された車両制御用プログラムに従って前記自動車部品を制御することを特徴とする自動車用制御装置。 A device driver that performs data input / output processing between an application program and an automobile part controlled by the application, and common data between the application programs, between the drivers, or between the application program and the driver A vehicle control device that stores a vehicle control program generated by combining the application program and the driver based on interface information that defines a specification, and controls the vehicle component according to the vehicle control program,
A first application program that outputs a target control amount that is a target control amount of the automobile part and is different from an input parameter of the device driver; and the target control amount that is output from the first application program. A second application program that converts and outputs the input parameter of the driver; and a device driver that outputs a control signal to the automobile part based on the input parameter output from the second application program, The first application program controls the automobile part according to a vehicle control program created using the interface information from which information to a predetermined device driver is removed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007247823A JP2009080566A (en) | 2007-09-25 | 2007-09-25 | Vehicle control program and program generation method, program generator, and automobile controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007247823A JP2009080566A (en) | 2007-09-25 | 2007-09-25 | Vehicle control program and program generation method, program generator, and automobile controller |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009080566A true JP2009080566A (en) | 2009-04-16 |
Family
ID=40655291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007247823A Withdrawn JP2009080566A (en) | 2007-09-25 | 2007-09-25 | Vehicle control program and program generation method, program generator, and automobile controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009080566A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014512584A (en) * | 2011-02-23 | 2014-05-22 | コンチネンタル オートモーティヴ ゲゼルシャフト ミット ベシュレンクテル ハフツング | Method, computer program, and control apparatus for configuring automobile control apparatus |
KR20180044786A (en) * | 2016-10-24 | 2018-05-03 | 주식회사 세인전장 | Smart vehicle control unit applying to method for controlling vehicle using common platform using to development of green environment vehicle |
WO2024048328A1 (en) * | 2022-09-01 | 2024-03-07 | 株式会社オートネットワーク技術研究所 | In-vehicle device, program, and, information processing method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001331228A (en) * | 2000-05-22 | 2001-11-30 | Sony Corp | Information processing method and information processor and recording medium and download method |
WO2006061884A1 (en) * | 2004-12-07 | 2006-06-15 | Hitachi, Ltd. | Automobile controller, and its software creating method and system |
JP2006344146A (en) * | 2005-06-10 | 2006-12-21 | Konica Minolta Business Technologies Inc | Application development program and image processing apparatus |
JP2007122348A (en) * | 2005-10-27 | 2007-05-17 | Ricoh Co Ltd | Image forming apparatus, security management method, security management program and recording medium |
-
2007
- 2007-09-25 JP JP2007247823A patent/JP2009080566A/en not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001331228A (en) * | 2000-05-22 | 2001-11-30 | Sony Corp | Information processing method and information processor and recording medium and download method |
WO2006061884A1 (en) * | 2004-12-07 | 2006-06-15 | Hitachi, Ltd. | Automobile controller, and its software creating method and system |
JP2006344146A (en) * | 2005-06-10 | 2006-12-21 | Konica Minolta Business Technologies Inc | Application development program and image processing apparatus |
JP2007122348A (en) * | 2005-10-27 | 2007-05-17 | Ricoh Co Ltd | Image forming apparatus, security management method, security management program and recording medium |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014512584A (en) * | 2011-02-23 | 2014-05-22 | コンチネンタル オートモーティヴ ゲゼルシャフト ミット ベシュレンクテル ハフツング | Method, computer program, and control apparatus for configuring automobile control apparatus |
US9043084B2 (en) | 2011-02-23 | 2015-05-26 | Continental Automotive Gmbh | Method for configuring a control apparatus for a motor vehicle, computer program and control apparatus |
KR20180044786A (en) * | 2016-10-24 | 2018-05-03 | 주식회사 세인전장 | Smart vehicle control unit applying to method for controlling vehicle using common platform using to development of green environment vehicle |
KR101944472B1 (en) | 2016-10-24 | 2019-02-01 | 주식회사 세인전장 | Smart vehicle control unit applying to method for controlling vehicle using common platform using to development of green environment vehicle |
WO2024048328A1 (en) * | 2022-09-01 | 2024-03-07 | 株式会社オートネットワーク技術研究所 | In-vehicle device, program, and, information processing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Nunes et al. | {APEX}: A verified architecture for proofs of execution on remote devices under full software compromise | |
US5490064A (en) | Control unit for vehicle and total control system therefor | |
EP1703391B1 (en) | Vehicle control software and vehicle control apparatus | |
US6236910B1 (en) | Vehicle control apparatus having programs of object-oriented design | |
WO2010113538A1 (en) | In-vehicle electronic control device, control software and development tool for control software | |
JP2002202001A (en) | Vehicular control device provided with self-diagnostic function, and recording medium | |
JP2015118662A (en) | Electronic controller | |
JP2009541636A (en) | Method and apparatus for monitoring the function of an engine controller of an internal combustion engine | |
JP2015531521A (en) | Method and controller for controlling the separate execution of a plurality of linked program blocks | |
US20180259577A1 (en) | Electronic control apparatus and method | |
JP2009080566A (en) | Vehicle control program and program generation method, program generator, and automobile controller | |
JP6306530B2 (en) | Electronic control unit for automobile | |
Albinet et al. | Model-based methodology for requirements traceability in embedded systems | |
KR20050103498A (en) | Controller and control of a drive unit of a vehicle | |
JP4852629B2 (en) | Simulation system, method and program | |
Boulanger | Experiences from a model-based methodology for embedded electronic software in automobile | |
JP3457520B2 (en) | Task execution control method on real-time OS | |
JP7067078B2 (en) | Internal combustion engine control system | |
JP6466269B2 (en) | Electronic control device and stack area usage monitoring method | |
WO2017002939A1 (en) | Electronic control device and stack usage method | |
Gaglio | Design and realization of an open-loop simulator for ICE control unit, developing the crankshaft and camshaft sensors simulation | |
Leteinturier et al. | Advanced Gasoline Engine Management Platform for Euro IV & CHN IV Emission Regulation | |
Viele et al. | A PC and FPGA hybrid approach to hardware-in-the-loop simulation | |
JP4921175B2 (en) | Software creation method for automobile control device | |
Brewerton et al. | Rapid gasoline powertrain system design and evaluation using a powertrain starter kit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090403 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20100115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110517 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20110805 |