JP2017218081A - Electronic control unit - Google Patents
Electronic control unit Download PDFInfo
- Publication number
- JP2017218081A JP2017218081A JP2016115583A JP2016115583A JP2017218081A JP 2017218081 A JP2017218081 A JP 2017218081A JP 2016115583 A JP2016115583 A JP 2016115583A JP 2016115583 A JP2016115583 A JP 2016115583A JP 2017218081 A JP2017218081 A JP 2017218081A
- Authority
- JP
- Japan
- Prior art keywords
- calculation load
- main ecu
- electronic control
- processing
- microcomputer
- 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
Links
Landscapes
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
Description
本発明は、自動車に搭載される電子制御装置に関する。 The present invention relates to an electronic control device mounted on an automobile.
自動車に搭載される電子制御装置は、特開2016−23603号公報(特許文献1)に記載されるように、定期的に発生する定期処理、及び、非定期的に発生する割込処理を実行する。 As described in JP-A-2006-23603 (Patent Document 1), an electronic control device mounted on an automobile executes periodic processing that occurs regularly and interrupt processing that occurs irregularly. To do.
しかしながら、電子制御装置において、例えば、加減速などの過渡期で割込処理が急増すると、定期処理に加えて割込処理が実行されるため、定期処理が所定の時間内に終了しなくなり、いわゆる処理抜けが発生するおそれがある。そして、処理抜けが発生すると、例えば、電子制御装置の制御対象機器が予期せぬ動作をしたり、プログラムが無限ループに陥って停止してしまう。このため、外部装置で電子制御装置の演算負荷を監視することが考えられるが、例えば、電子制御装置の演算負荷が高まると通信の同期をとることが困難となり、外部装置が演算負荷を監視することができなくなってしまう。 However, in the electronic control unit, for example, when the interrupt process rapidly increases in a transitional period such as acceleration / deceleration, the interrupt process is executed in addition to the regular process. Processing omission may occur. When the processing omission occurs, for example, the control target device of the electronic control device performs an unexpected operation, or the program falls into an infinite loop and stops. For this reason, it is conceivable to monitor the calculation load of the electronic control device with an external device. For example, if the calculation load of the electronic control device increases, it becomes difficult to synchronize communication, and the external device monitors the calculation load. It becomes impossible to do.
そこで、本発明は、通信に依存せず、演算負荷を外部から監視可能な電子制御装置を提供することを目的とする。 Therefore, an object of the present invention is to provide an electronic control device that can monitor a calculation load from the outside without depending on communication.
このため、電子制御装置は、マイクロコンピュータの演算負荷を測定する手段と、演算負荷をアナログ電圧値に変換する手段と、アナログ電圧値に応じた電圧を外部に出力する手段と、を有する。 For this reason, the electronic control unit has means for measuring the calculation load of the microcomputer, means for converting the calculation load into an analog voltage value, and means for outputting a voltage corresponding to the analog voltage value to the outside.
本発明によれば、通信に依存せず、演算負荷を外部から監視することができる。 According to the present invention, it is possible to monitor the calculation load from the outside without depending on communication.
以下、添付された図面を参照し、本発明を実施するための実施形態について詳述する。
図1は、自動車に搭載された電子制御システムの一例を示す。
Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the accompanying drawings.
FIG. 1 shows an example of an electronic control system mounted on an automobile.
電子制御システム100は、燃料噴射装置,自動変速機,電動ブレーキ装置などの制御対象機器を制御する主系の電子制御装置(メインECU)200と、メインECU200とは異なる制御対象機器を制御しながら、メインECU200の演算負荷を監視する従系の電子制御装置(サブECU)300と、を有する。メインECU200は、被監視対象となるマイクロコンピュータ(マイコン)250を内蔵し、サブECU300は、メインECU200のマイコン250を監視する主体となるマイコン350を内蔵する。 The electronic control system 100 controls a main electronic control device (main ECU) 200 that controls control target devices such as a fuel injection device, an automatic transmission, and an electric brake device, and a control target device different from the main ECU 200. And a secondary electronic control unit (sub ECU) 300 that monitors the calculation load of the main ECU 200. The main ECU 200 incorporates a microcomputer (microcomputer) 250 to be monitored, and the sub ECU 300 incorporates a microcomputer 350 serving as a main body for monitoring the microcomputer 250 of the main ECU 200.
メインECU200のマイコン250は、図2に示すように、CPU(Central Processing Unit)250A、不揮発性メモリの一例として挙げることができるROM(Read Only Memory)250B、揮発性メモリの一例として挙げることができるRAM(Random Access Memory)250C、ウォッチドッグタイマ250D、アナログ信号を入出力するアナログ入出力ポート250E、デジタル信号を入出力するデジタル入出力ポート250F及び他の電子制御装置などと通信するための通信回路250Gが1つのパッケージに封入された電子デバイスである。ここで、ROM250Bとしては、電気的にデータを消去及び書込み可能な、フラッシュROMを使用することができる。なお、サブECU300のマイコン350も、メインECU200のマイコン250と同様な構成をなしている。 As shown in FIG. 2, the microcomputer 250 of the main ECU 200 can be exemplified as a CPU (Central Processing Unit) 250A, a ROM (Read Only Memory) 250B that can be cited as an example of a nonvolatile memory, and an example of a volatile memory. Communication circuit for communicating with RAM (Random Access Memory) 250C, watchdog timer 250D, analog input / output port 250E for inputting / outputting analog signals, digital input / output port 250F for inputting / outputting digital signals, and other electronic control devices 250G is an electronic device enclosed in one package. Here, as the ROM 250B, a flash ROM capable of electrically erasing and writing data can be used. Note that the microcomputer 350 of the sub ECU 300 also has the same configuration as the microcomputer 250 of the main ECU 200.
ここで、メインECU200において、マイコン250が実行する処理、及び、そこで発生する問題点について説明する。
メインECU200のマイコン250は、制御対象機器を制御するためのジョブとして、定期的に発生する定期処理と非定期的に発生する割込処理を夫々実行する。定期処理は、例えば、2ms周期,10ms周期など、所定時間ごとに実行する処理である。割込処理は、例えば、自動車の運転状態が変化する過渡期になったとき、変化する運転状態に対応するために発生する処理である。
Here, processing executed by the microcomputer 250 in the main ECU 200 and problems occurring therein will be described.
The microcomputer 250 of the main ECU 200 executes a periodic process that periodically occurs and an interrupt process that occurs irregularly as jobs for controlling the control target device. The periodic process is a process that is executed at predetermined time intervals such as a 2 ms period and a 10 ms period. The interruption process is a process that occurs in order to respond to the changing driving state when the driving state of the automobile changes, for example.
メインECU200のマイコン250が実行する処理として、定期処理A〜Dと割込処理a〜eを想定する。割込処理a〜eが発生しない場合、マイコン250は、図3に示すように、定期処理の実行間隔である定期処理時間内に、定期処理A〜Dを実行する。このとき、定期処理時間に対する定期処理A〜Dの実行に要する時間の割合は、例えば、約59%となり、マイコン250の演算負荷は約59%となる。また、割込処理a〜cが発生すると、マイコン250は、定期処理時間内に、定期処理A〜Dに加えて割込処理a〜cを実行する。この場合、定期処理時間に対する定期処理A〜D及び割込処理a〜cの実行に要する時間の割合は、例えば、約87%となり、マイコン250の演算負荷は約87%となる。 As processes executed by the microcomputer 250 of the main ECU 200, periodic processes A to D and interrupt processes a to e are assumed. When the interrupt processes a to e do not occur, the microcomputer 250 executes the regular processes A to D within the regular process time that is the regular process execution interval, as shown in FIG. At this time, the ratio of the time required for execution of the regular processes A to D with respect to the regular process time is approximately 59%, for example, and the calculation load of the microcomputer 250 is approximately 59%. When interrupt processing ac occurs, the microcomputer 250 executes the interrupt processing ac in addition to the periodic processing AD within the regular processing time. In this case, the ratio of the time required for execution of the periodic processes A to D and the interrupt processes a to c with respect to the periodic process time is, for example, about 87%, and the calculation load of the microcomputer 250 is about 87%.
さらに、自動車の運転状態変化に応じて割込処理a〜eが発生すると、マイコン250は、定期処理時間内に、定期処理A〜Dに加えて割込処理a〜eを実行する。このとき、例えば、定期処理A,割込処理a,定期処理B,割込処理b,定期処理C,割込処理c〜e,定期処理Dの順番で処理が実行されると、定期処理時間内に定期処理Dが終了せず、いわゆる処理あふれが発生してしまう。処理あふれが発生した場合、その処理が重要なものであると、制御対象機器が予期せぬ動作をしたり、プログラムが無限ループに陥って停止してしまうおそれがある。なお、割込処理eが発生しない場合には、定期処理時間内にすべての処理が実行される。 Further, when interrupt processes a to e occur according to changes in the driving state of the automobile, the microcomputer 250 executes the interrupt processes a to e in addition to the regular processes A to D within the regular process time. At this time, for example, when processing is executed in the order of periodic processing A, interrupt processing a, periodic processing B, interrupt processing b, periodic processing C, interrupt processing c to e, and periodic processing D, the periodic processing time The regular processing D does not end within this, so-called processing overflow occurs. When processing overflow occurs, if the processing is important, the control target device may perform an unexpected operation or the program may fall into an infinite loop and stop. If the interrupt process e does not occur, all processes are executed within the regular processing time.
このため、背景技術でも説明したように、外部装置でメインECU200のマイコン250の演算負荷を監視することが考えられるが、例えば、マイコン250の演算負荷が高まると通信の同期をとることが困難となり、外部装置が演算負荷を監視することができなくなってしまう。そこで、以下説明するように、マイコン250の演算負荷をアナログ電圧値に変換し、アナログ電圧値に応じた電圧をアナログ入出力ポート250Eから外部に出力することで、通信に依存せず、演算負荷を外部から監視できるようにする。 For this reason, as described in the background art, it is conceivable to monitor the calculation load of the microcomputer 250 of the main ECU 200 with an external device. For example, if the calculation load of the microcomputer 250 increases, it becomes difficult to synchronize communication. The external device cannot monitor the calculation load. Therefore, as will be described below, the calculation load of the microcomputer 250 is converted into an analog voltage value, and the voltage corresponding to the analog voltage value is output from the analog input / output port 250E to the outside. Can be monitored from the outside.
図4は、メインECU200が起動したことを契機として、そのマイコン250が所定時間t1ごとに繰り返し実行する、演算負荷出力処理の一例を示す。なお、マイコン250は、例えば、CPU250AがROM250Bに予め格納された制御プログラムを実行することで、演算負荷出力処理を実行する(以下同様)。また、以下の説明においては、説明を簡略化することを目的として、メインECU200のマイコン250をメインECU200と略記する(以下同様)。 FIG. 4 shows an example of a calculation load output process that the microcomputer 250 repeatedly executes every predetermined time t1 when the main ECU 200 is activated. For example, the microcomputer 250 executes a calculation load output process by the CPU 250A executing a control program stored in advance in the ROM 250B (the same applies hereinafter). In the following description, for the purpose of simplifying the description, the microcomputer 250 of the main ECU 200 is abbreviated as the main ECU 200 (the same applies hereinafter).
ステップ1(図4では、「S1」と略記する。以下同様。)では、メインECU200が、定期処理時間内に実行した処理(定期処理及び割込処理)の実行時間を計測し、定期処理時間に対する全処理時間である演算負荷(CPU使用率)を計測する。なお、演算負荷としては、CPU使用率に限らず、例えば、計測した処理時間そのもの、リソース使用率など、公知の指標を採用することができる。 In step 1 (abbreviated as “S1” in FIG. 4, the same applies hereinafter), the main ECU 200 measures the execution time of the processing (periodic processing and interrupt processing) executed within the periodic processing time, and the periodic processing time. The computation load (CPU usage rate) that is the total processing time for is measured. The calculation load is not limited to the CPU usage rate, and for example, a known index such as the measured processing time itself or the resource usage rate can be employed.
ステップ2では、メインECU200が、演算負荷0%〜100%が所定の電圧範囲、例えば、0V〜5Vに分布するように、演算負荷をアナログ電圧値に変換する。なお、演算負荷を分布させる電圧範囲は、例えば、CPU250Aの演算精度、アナログ入出力ポート250Eの出力特性などを考慮して決定することができる。 In step 2, the main ECU 200 converts the calculation load into an analog voltage value so that the calculation load 0% to 100% is distributed in a predetermined voltage range, for example, 0V to 5V. Note that the voltage range in which the calculation load is distributed can be determined in consideration of the calculation accuracy of the CPU 250A, the output characteristics of the analog input / output port 250E, and the like.
ステップ3では、メインECU200が、アナログ電圧値に応じた電圧を、アナログ入出力ポート250Eから外部に出力する。なお、メインECU200は、アナログ入出力ポート250Eから出力する電圧を任意の時点で参照可能とするため、この状態を持続するようにしてもよい。 In step 3, the main ECU 200 outputs a voltage corresponding to the analog voltage value from the analog input / output port 250E to the outside. The main ECU 200 may maintain this state so that the voltage output from the analog input / output port 250E can be referred to at an arbitrary time.
かかる演算負荷出力処理によれば、メインECU200は、所定時間t1ごとに、定期処理時間内に実行した処理の実行時間を計測し、これをアナログ電圧値に変化した後、アナログ電圧値に応じた電圧をアナログ入出力ポート250Eから出力する。このため、図5に示すように、メインECU200の起動直後から、演算負荷に相当する電圧が外部に出力され、メインECU200とサブECU300との間の通信が確立されていない状態でも、サブECU300はメインECU200の演算負荷を監視することができる。また、サブECU300は、メインECU200とサブECU300との通信に依存せず、その演算負荷を監視することができる。 According to this calculation load output process, the main ECU 200 measures the execution time of the process executed within the regular process time every predetermined time t1, changes this to an analog voltage value, and then responds to the analog voltage value. The voltage is output from the analog input / output port 250E. For this reason, as shown in FIG. 5, even after the main ECU 200 is activated, the sub ECU 300 outputs the voltage corresponding to the calculation load to the outside even when the communication between the main ECU 200 and the sub ECU 300 is not established. The calculation load of the main ECU 200 can be monitored. The sub ECU 300 can monitor the calculation load without depending on the communication between the main ECU 200 and the sub ECU 300.
図5に示す一例は、アナログ入出力ポート250Eは0V〜5Vの範囲で電圧を出力するものを前提として、定期処理時間内に実行した処理の実行時間[μs]を演算負荷とすると共に、演算負荷1000[μs]を200[mV]として出力したものである。この例を参照すると、メインECU200の起動直後は、例えば、各種の初期化処理によって演算負荷が比較的高く、演算負荷が約11000[μs]であり、これに相当する電圧が約2200[mV]となっていることが理解されよう。そして、メインECU200の初期化処理が完了すると、演算負荷が低下して約7000[μs]となり、これに相当する電圧が約1400[mV]となった後、定常状態に移行し、演算負荷が約6000[μs]、これに相当する電圧が約1200[mV]で安定することが理解されよう。 In the example shown in FIG. 5, assuming that the analog input / output port 250E outputs a voltage in the range of 0V to 5V, the execution time [μs] of the processing executed within the regular processing time is used as the calculation load, and the calculation is performed. A load of 1000 [μs] is output as 200 [mV]. Referring to this example, immediately after the activation of the main ECU 200, for example, the calculation load is relatively high due to various initialization processes, the calculation load is about 11000 [μs], and the corresponding voltage is about 2200 [mV]. It will be understood that When the initialization process of the main ECU 200 is completed, the calculation load decreases to about 7000 [μs], and the voltage corresponding to this reaches about 1400 [mV]. It will be understood that the voltage corresponding to about 6000 [μs] is stable at about 1200 [mV].
なお、メインECU200の演算負荷は、オシロスコープなどの汎用機器で視認できるため、例えば、メインECU200の実証実験などにおいて、その演算負荷が過度に高くなっているか否かを確認することができる。 In addition, since the calculation load of the main ECU 200 can be visually recognized by a general-purpose device such as an oscilloscope, for example, in a verification experiment of the main ECU 200, it can be confirmed whether or not the calculation load is excessively high.
図6は、サブECU300が起動したことを契機として、そのマイコン350が所定時間t2ごとに繰り返し実行する、演算負荷監視処理の一例を示す。ここで、サブECU300は、メインECU200の電圧出力と同期して演算負荷を監視すべく、メインECU200の演算負荷出力処理と同一の所定時間t1で演算負荷監視処理を繰り返し実行することが望ましい。 FIG. 6 shows an example of a calculation load monitoring process that the microcomputer 350 repeatedly executes every predetermined time t2 when the sub ECU 300 is activated. Here, it is desirable that the sub-ECU 300 repeatedly executes the calculation load monitoring process at the same predetermined time t1 as the calculation load output process of the main ECU 200 in order to monitor the calculation load in synchronization with the voltage output of the main ECU 200.
ステップ11では、サブECU300が、メインECU200の演算負荷を監視すべく、そのアナログ入出力ポート250Eから電圧を読み込む。
ステップ12では、サブECU300が、電圧が所定のしきい値より高いか否かを判定する。ここで、所定のしきい値は、メインECU200の演算負荷が高まって、割込処理の発生によって処理抜けが発生する可能性があるか否かを判定するためのしきい値であって、例えば、制御対象機器の制御内容,メインECU200の処理能力などを考慮して適宜設定することができる。そして、サブECU300は、電圧が所定のしきい値より高いと判定すれば処理をステップ13へと進める一方(Yes)、電圧が所定のしきい値以下であると判定すれば処理をステップ15へと進める(No)。
In step 11, the sub ECU 300 reads a voltage from the analog input / output port 250 </ b> E in order to monitor the calculation load of the main ECU 200.
In step 12, sub ECU 300 determines whether or not the voltage is higher than a predetermined threshold value. Here, the predetermined threshold value is a threshold value for determining whether or not there is a possibility that a processing loss may occur due to the occurrence of an interrupt process due to an increase in the computation load of the main ECU 200, for example, It can be set as appropriate in consideration of the control content of the control target device, the processing capability of the main ECU 200, and the like. If sub ECU 300 determines that the voltage is higher than the predetermined threshold, the process proceeds to step 13 (Yes), while if it is determined that the voltage is equal to or lower than the predetermined threshold, the process proceeds to step 15. (No).
ステップ13では、サブECU300が、例えば、内蔵した計時機能を利用して、電圧が所定のしきい値より高くなった状態が所定時間継続したか否かを判定する。ここで、所定時間は、一時的に演算負荷が高まったことを排除するためのしきい値であって、例えば、制御対象機器の制御内容,メインECU200の処理能力などを考慮して適宜設定することができる。そして、サブECU300は、上記状態が所定時間継続したと判定すれば処理をステップ14へと進める一方(Yes)、上記状態が所定時間継続していないと判定すれば処理をステップ15へと進める(No)。 In step 13, the sub ECU 300 determines whether or not the state in which the voltage has become higher than a predetermined threshold has continued for a predetermined time by using, for example, a built-in timing function. Here, the predetermined time is a threshold value for eliminating a temporary increase in calculation load, and is appropriately set in consideration of, for example, the control content of the control target device, the processing capability of the main ECU 200, and the like. be able to. If the sub-ECU 300 determines that the state has continued for a predetermined time, the process proceeds to step 14 (Yes), whereas if the sub-ECU 300 determines that the state has not continued for a predetermined time, the process proceeds to step 15 ( No).
ステップ14では、サブECU300が、メインECU200の演算負荷が異常であると判定し、その判定結果をメインECU200に送信する。なお、サブECU300は、メインECU200の演算負荷が異常であると判定したとき、例えば、インストルメントパネルの警告灯などを点灯させ、運転者などに異常が発生したことを報知するようにしてもよい。 In step 14, the sub ECU 300 determines that the calculation load of the main ECU 200 is abnormal, and transmits the determination result to the main ECU 200. When the sub ECU 300 determines that the calculation load of the main ECU 200 is abnormal, for example, a warning light on an instrument panel may be turned on to notify the driver or the like that an abnormality has occurred. .
ステップ15では、サブECU300が、メインECU200の演算負荷は正常であると判定し、その判定結果をメインECU200に送信する。 In step 15, the sub ECU 300 determines that the calculation load of the main ECU 200 is normal, and transmits the determination result to the main ECU 200.
かかる演算負荷監視処理によれば、サブECU300は、メインECU200が出力する電圧が所定のしきい値より高いか否かを介して、メインECU200の演算負荷が過度に上昇したか否かを判定する。そして、サブECU300は、電圧が所定のしきい値より高い状態が所定時間継続したら、メインECU200の演算負荷が異常であると判定する。一方、サブECU300は、電圧が所定のしきい値より高い状態が所定時間継続していなければ、メインECU200の演算負荷が正常であると判定する。その後、サブECU300は、判定結果をメインECU200へ送信する。このとき、メインECU200は、起動直後又は演算負荷が高いときにも電圧を出力しているため、サブECU300は、メインECU200が起動している限り、その演算負荷を監視することができる。 According to the calculation load monitoring process, the sub ECU 300 determines whether or not the calculation load of the main ECU 200 is excessively increased through whether or not the voltage output from the main ECU 200 is higher than a predetermined threshold value. . Then, sub ECU 300 determines that the computation load of main ECU 200 is abnormal when the state where the voltage is higher than a predetermined threshold value continues for a predetermined time. On the other hand, if the state where the voltage is higher than the predetermined threshold value has not continued for a predetermined time, sub-ECU 300 determines that the calculation load of main ECU 200 is normal. Thereafter, sub ECU 300 transmits the determination result to main ECU 200. At this time, since the main ECU 200 outputs a voltage immediately after activation or when the computation load is high, the sub ECU 300 can monitor the computation load as long as the main ECU 200 is activated.
なお、サブECU300は、電圧が所定のしきい値より高くなったとき、その状態が所定時間継続したか否かを判定せずに、メインECU200の演算負荷が異常であると判定することもできる。但し、上記状態が所定時間継続したか否かを判定することで、メインECU200の演算負荷が異常であると判定する判定精度を向上させることができる。また、サブECU300は、メインECU200から出力された電圧の変化状態を介して、そのA/D変換器が正常であるか否かを診断することもできる。 Note that, when the voltage becomes higher than a predetermined threshold, the sub ECU 300 can determine that the calculation load of the main ECU 200 is abnormal without determining whether or not the state has continued for a predetermined time. . However, by determining whether or not the above state has continued for a predetermined time, it is possible to improve the determination accuracy for determining that the calculation load of the main ECU 200 is abnormal. The sub ECU 300 can also diagnose whether or not the A / D converter is normal through the change state of the voltage output from the main ECU 200.
ところで、メインECU200の演算負荷が異常になったとき、これを放置しておくと、例えば、プログラムが無限ループに陥って、自動車の運転状態に応じて制御対象機器を制御できなくなってしまう。このため、サブECU300は、メインECU200の演算負荷が異常になったと判定したとき、メインECU200をリセットすることもできる。このようにすれば、メインECU200の処理状態を監視しているウォッチドッグタイマ250Dが不要となり、そのマイコン250の製造コストを低減することができる。 By the way, if the calculation load of the main ECU 200 becomes abnormal, if this is left unattended, for example, the program falls into an infinite loop, and the control target device cannot be controlled according to the driving state of the automobile. For this reason, the sub ECU 300 can also reset the main ECU 200 when it is determined that the calculation load of the main ECU 200 has become abnormal. In this way, the watchdog timer 250D that monitors the processing state of the main ECU 200 is not necessary, and the manufacturing cost of the microcomputer 250 can be reduced.
しかし、メインECU200において、演算負荷が過度に高くなったとき、自動車の運転状態に応じた処理を特定し、各処理の優先度に応じて実行する処理を取捨選択するようにすれば、メインECU200をリセットせずに、制御対象機器を制御し続けることができる。以下、この方法について説明する。 However, in the main ECU 200, when the calculation load becomes excessively high, if the process according to the driving state of the vehicle is specified and the process to be executed is selected according to the priority of each process, the main ECU 200 is selected. It is possible to continue to control the control target device without resetting. Hereinafter, this method will be described.
図7は、メインECU200が、定期処理又は割込処理が発生したことを契機として実行する、選択実行処理の一例を示す。ここで、選択実行処理を実行する前提として、メインECU200は、サブECU300から送信された判定結果を任意の時点で参照可能とするため、例えば、その判定結果をRAM250Cに格納する。なお、以下に説明する選択実行処理は、メインECU200が制御対象機器を制御するための定期処理及び割込処理と比較して演算負荷が軽いため、これを実行しても影響が少ない。 FIG. 7 shows an example of a selection execution process that is executed by the main ECU 200 triggered by the occurrence of a periodic process or an interrupt process. Here, as a premise for executing the selection execution process, the main ECU 200 stores the determination result in the RAM 250C, for example, so that the determination result transmitted from the sub ECU 300 can be referred to at an arbitrary time. Note that the selection execution process described below has a smaller calculation load than the regular process and the interruption process for the main ECU 200 to control the control target device, and therefore, even if this is executed, the influence is small.
ステップ21では、メインECU200が、例えば、RAM250Cに格納された判定結果を参照し、演算負荷が所定のしきい値より高い異常が発生しているか否かを判定する。そして、メインECU200は、異常が発生していると判定すれば処理をステップ22へと進める一方(Yes)、異常が発生していないと判定すれば、発生した処理を実行すべく、処理をステップ27へと進める(No)。 In step 21, the main ECU 200 refers to, for example, a determination result stored in the RAM 250C, and determines whether or not an abnormality in which the calculation load is higher than a predetermined threshold value has occurred. If the main ECU 200 determines that an abnormality has occurred, the process proceeds to step 22 (Yes). If the main ECU 200 determines that no abnormality has occurred, the main ECU 200 steps the process to execute the generated process. Proceed to 27 (No).
ステップ22では、メインECU200が、自動車の所定箇所に取り付けられたセンサ出力などを読み込み、例えば、エンジン稼働状態で停止中か、アイドリングストップ状態で停車中か、所定車速以下の低速走行中か、所定車速よりも速い高速走行中かなど、自動車の運転状態を判定する。なお、自動車の運転状態としては、上記の4種類に限らず、3種類以下又は5種類以上とすることもできる。 In step 22, the main ECU 200 reads the sensor output attached to a predetermined location of the automobile, for example, whether the engine is stopped in an engine operating state, stopped in an idling stop state, or traveling at a low speed below a predetermined vehicle speed. The driving state of the automobile is determined, for example, whether the vehicle is traveling at a higher speed than the vehicle speed. In addition, as a driving | running state of a motor vehicle, it is not restricted to said 4 types, It can also be 3 types or less or 5 types or more.
ステップ23では、メインECU200が、ステップ22で判定した運転状態で発生する可能性がある定期処理及び割込処理の各処理について、処理の重要度を示す優先度を特定する。即ち、メインECU200のROM250Bには、図8に示すような定期処理の優先度テーブル、図9に示すような割込処理の優先度テーブルが格納されている。定期処理及び割込処理の優先度テーブルには、夫々、定期処理A〜Dの各処理について、自動車の運転状態に応じた優先度高,中及び低が設定されている。ここで、優先度「高」は必ず実行しなければならない処理、優先度「中」は所定回数ごとに1回実行すればよい処理、優先度「低」は処理をスキップしても影響が少ない処理を示す(以下同様)。定期処理の優先度テーブルを参照すると、例えば、アイドリングストップ状態での停車中における定期処理Bの優先度は、必ず実行しなければならない「高」であることが特定できる。そして、メインECU200は、選択実行処理を実行する契機となった定期処理又は割込処理に応じた、ROM250Bに格納された優先度テーブルを参照し、自動車の運転状態及び処理に応じた優先度を特定する。 In step 23, the main ECU 200 identifies the priority indicating the importance of the process for each of the periodic process and the interrupt process that may occur in the operating state determined in step 22. That is, the ROM 250B of the main ECU 200 stores a priority table for periodic processing as shown in FIG. 8, and a priority table for interrupt processing as shown in FIG. In the priority table of the periodic process and the interrupt process, high, medium and low priorities according to the driving state of the vehicle are set for each of the periodic processes A to D, respectively. Here, the priority “high” must be executed, the priority “medium” should be executed once every predetermined number of times, and the priority “low” has little influence even if the processing is skipped. Processing is shown (the same applies hereinafter). Referring to the periodic process priority table, for example, it is possible to specify that the priority of the periodic process B when the vehicle is stopped in the idling stop state is “high” that must be executed. Then, the main ECU 200 refers to the priority table stored in the ROM 250B according to the periodic process or interrupt process that triggered the execution of the selection execution process, and determines the priority according to the driving state and process of the vehicle. Identify.
ステップ24では、メインECU200が、ステップ23で特定した優先度が「低」、即ち、実行対象である処理はその実行をスキップしても影響が少ないか否かを判定する。そして、メインECU200は、優先度が「低」であると判定すれば(Yes)、その処理の実行をスキップして処理を終了させる。一方、メインECU200は、優先度が「低」でない、即ち、優先度が「中」又は「高」であると判定すれば(No)、処理をステップ25へと進める。 In step 24, the main ECU 200 determines whether or not the priority specified in step 23 is “low”, that is, whether the process to be executed has little influence even if the execution is skipped. If the main ECU 200 determines that the priority is “low” (Yes), the main ECU 200 skips the execution of the process and ends the process. On the other hand, if the main ECU 200 determines that the priority is not “low”, that is, the priority is “medium” or “high” (No), the process proceeds to step 25.
ステップ25では、メインECU200が、ステップ23で特定した優先度が「中」、即ち、所定回数ごとに1回実行すればよい処理であるか否かを判定する。そして、メインECU200は、優先度が「中」であると判定すれば処理をステップ26へと進める一方(Yes)、優先度が「中」でない、即ち、優先度が「高」であると判定すれば処理をステップ27へと進める(No)。 In step 25, the main ECU 200 determines whether or not the priority specified in step 23 is “medium”, that is, whether or not the process has only to be executed once every predetermined number of times. If the main ECU 200 determines that the priority is “medium”, the process proceeds to step 26 (Yes), while the priority is not “medium”, that is, the priority is determined to be “high”. If so, the process proceeds to step 27 (No).
ステップ26では、メインECU200が、処理の優先度が「中」であるため、例えば、前回処理を実行してから所定回数経過したか否かを介して、その処理の実行をスキップ可能であるか否かを判定する。そして、メインECU200は、スキップ可能であると判定すれば処理を終了させる一方(Yes)、スキップ可能でないと判定すれば処理をステップ27へと進める(No)。 In step 26, since the priority of the process is “medium”, the main ECU 200 can skip the execution of the process, for example, based on whether or not a predetermined number of times have elapsed since the previous process was executed. Determine whether or not. Then, the main ECU 200 terminates the process if it is determined that skipping is possible (Yes), and proceeds to step 27 if it determines that skipping is not possible (No).
ステップ27では、メインECU200が、選択実行処理を実行する契機となった処理を実行する。 In step 27, the main ECU 200 executes the process that triggered the execution of the selection execution process.
かかる選択実行処理によれば、メインECU200は、定期処理又は割込処理が発生したときに、演算負荷が正常であれば、その処理を無条件で実行する一方、演算負荷が異常であれば、その処理の優先度に応じて処理の実行をスキップする。このとき、処理の優先度は、自動車の運転状態に応じて特定されるため、実際の運転状態に適合した優先度を特定することができる。そして、優先度の低い処理の実行がスキップされるため、定期処理時間内に重要な処理を実行することができ、例えば、メインECU200をリセットしなくとも、制御対象機器の制御を続行することができる。なお、処理の優先度は、高,中及び低の3段階に限らず、少なくとも、高及び低の2段階であればよい。 According to the selection execution process, the main ECU 200 executes the process unconditionally if the calculation load is normal when the periodic process or the interrupt process occurs, while if the calculation load is abnormal, The execution of the process is skipped according to the priority of the process. At this time, since the priority of processing is specified according to the driving state of the automobile, the priority suitable for the actual driving state can be specified. And since execution of a process with low priority is skipped, an important process can be executed within the regular processing time. For example, control of the control target device can be continued without resetting the main ECU 200. it can. Note that the processing priority is not limited to three levels of high, medium, and low, but may be at least two levels of high and low.
以上の実施形態では、メインECU200の演算負荷が異常であるか否かを判定するための所定のしきい値は、固定値であったが、次のように、自動車の運転状態変化に応じて動的に変更することもできる。 In the above embodiment, the predetermined threshold value for determining whether or not the calculation load of the main ECU 200 is abnormal is a fixed value, but in accordance with a change in the driving state of the automobile as follows. It can also be changed dynamically.
自動車の運転状態が変化するときは、定常状態で発生する定期処理に加え、運転状態変化に対応すべく、種々の割込処理が発生する。即ち、自動車の運転状態が過渡期になったとき、自動車の運転状態が切り替わるとき、メインECU200の演算負荷が変化する状態に移行するとき、発生する処理の数が増減するので、その増減を見越して所定のしきい値を変更する。ここで、自動車の運転状態が過渡期になる一例として、例えば、走行中にブレーキを作動させて減速させたとき、走行中にアクセルペダルを踏み込んで加速させたときなどを挙げることができる。また、自動車の運転状態が切り替わる一例として、例えば、停車時にアイドリングストップに移行するとき、アイドリングストップから復帰するときなどを挙げることができる。さらに、メインECU200の演算負荷が変化する状態に移行する一例として、例えば、電源投入時にメモリ診断を行うとき、アイドリングストップに移行するときなどを挙げることができる。なお、上記運転状態変化に応じて所定のしきい値を変更する大きさは、例えば、各状態変化により発生する割込処理の演算負荷などを考慮して適宜設定することができる。 When the driving state of the automobile changes, various interruption processes occur in response to the driving state change in addition to the periodic processing that occurs in the steady state. That is, when the driving state of the vehicle is in a transition period, when the driving state of the vehicle is switched, or when the calculation load of the main ECU 200 is changed, the number of processes that occur is increased or decreased. To change the predetermined threshold. Here, as an example in which the driving state of the automobile becomes a transitional period, for example, when the brake is operated to decelerate the vehicle while traveling, the accelerator pedal is depressed to accelerate the vehicle while traveling, and the like. Moreover, as an example in which the driving state of the automobile is switched, for example, when shifting to an idling stop when the vehicle is stopped, returning from the idling stop can be cited. Furthermore, as an example of shifting to a state in which the calculation load of the main ECU 200 changes, for example, when performing memory diagnosis at power-on, shifting to idling stop can be cited. In addition, the magnitude | size which changes a predetermined | prescribed threshold value according to the said driving | running state change can be suitably set considering the calculation load etc. of the interruption process generate | occur | produced by each state change, for example.
このようにすれば、図10に示すように、自動車の運転状態が変化する、過渡期,運転状態の切り替わり,演算負荷が変化する状態となったとき、所定のしきい値が変更されるので、運転状態変化に応じた異常判定を行うことができる。なお、図10に示す例では、所定のしきい値は、定期処理時間に対する処理時間の割合[%]となっている。 In this way, as shown in FIG. 10, the predetermined threshold value is changed when the driving state of the vehicle changes, the transition period, the switching of the driving state, or the calculation load changes. Therefore, it is possible to make an abnormality determination according to a change in the driving state. In the example shown in FIG. 10, the predetermined threshold value is the ratio [%] of the processing time to the regular processing time.
電子制御システム100を構成するメインECU200が、図11に示すように、1つのパッケージに2つのマイクロコンピュータA及びBが封入されたデュアルコアプロセッサを内蔵する場合、例えば、一方のマイクロコンピュータBが他方のマイクロコンピュータAの演算負荷を監視することができる。また、電子制御システム100を構成するメインECU200が、図12に示すように、1つのマイクロコンピュータCのみを内蔵する場合、マイクロコンピュータCから出力される電圧を自己で読み込み、その電圧に基づいて演算負荷を自己診断することができる。 When the main ECU 200 constituting the electronic control system 100 includes a dual core processor in which two microcomputers A and B are enclosed in one package as shown in FIG. 11, for example, one microcomputer B is connected to the other. The calculation load of the microcomputer A can be monitored. Further, when the main ECU 200 constituting the electronic control system 100 includes only one microcomputer C as shown in FIG. 12, the voltage output from the microcomputer C is read by itself and is calculated based on the voltage. The load can be self-diagnosed.
ここで、上述した実施形態から把握し得る技術的思想について、以下に記載する。
(1)電子制御装置は、マイクロコンピュータの演算負荷を測定する手段と、前記演算負荷をアナログ電圧値に変換する手段と、前記アナログ電圧値に応じた電圧を外部に出力する手段と、を有する。
Here, the technical idea that can be understood from the above-described embodiment will be described below.
(1) The electronic control device includes means for measuring a calculation load of the microcomputer, means for converting the calculation load into an analog voltage value, and means for outputting a voltage corresponding to the analog voltage value to the outside. .
(2)前記電子制御装置は、前記電圧を入力する手段を更に有する。
(3)前記電子制御装置は、前記電圧が所定のしきい値より高くなったときに、前記マイクロコンピュータの演算負荷が異常であると判定する手段を更に有する。
(2) The electronic control device further includes means for inputting the voltage.
(3) The electronic control device further includes means for determining that the operation load of the microcomputer is abnormal when the voltage becomes higher than a predetermined threshold value.
(4)前記電子制御装置は、前記マイクロコンピュータの演算負荷が異常であると判定されたときに、前記マイクロコンピュータで実行する処理を取捨選択する手段を更に有する。
(5)前記電子制御装置は、自動車の運転状態に応じて、前記所定のしきい値を動的に設定する手段を更に有する。
(4) The electronic control device further includes means for selecting processing to be executed by the microcomputer when it is determined that the calculation load of the microcomputer is abnormal.
(5) The electronic control device further includes means for dynamically setting the predetermined threshold value according to a driving state of the automobile.
(6)前記電子制御装置は、前記電圧が所定のしきい値より高くなったことに加え、その状態が所定時間継続したときに、前記マイクロコンピュータの演算負荷が異常であると判定する。 (6) The electronic control unit determines that the computation load of the microcomputer is abnormal when the voltage has become higher than a predetermined threshold and the state continues for a predetermined time.
(7)前記電子制御装置は、前記マイクロコンピュータの演算負荷が異常であると判定したとき、前記処理の優先度に応じて、前記マイクロコンピュータで実行する処理を取捨選択する。 (7) When the electronic control unit determines that the calculation load of the microcomputer is abnormal, the electronic control unit selects processing to be executed by the microcomputer according to the priority of the processing.
(8)前記処理の優先度は、自動車の運転状態ごとに設定されている。
(9)前記演算負荷は、定期処理時間内に実行する処理の実行時間又は割合である。
(10)前記処理は、定期処理及び割込処理である。
(8) The priority of the process is set for each driving state of the automobile.
(9) The calculation load is an execution time or a ratio of processing executed within the regular processing time.
(10) The processing is regular processing and interrupt processing.
200 メインECU
250 マイコン(マイクロコンピュータ)
250E アナログ入出力ポート
200 Main ECU
250 Microcomputer
250E Analog I / O port
Claims (5)
前記演算負荷をアナログ電圧値に変換する手段と、
前記アナログ電圧値に応じた電圧を外部に出力する手段と、
を有することを特徴とする電子制御装置。 Means for measuring the computing load of the microcomputer
Means for converting the calculation load into an analog voltage value;
Means for outputting a voltage corresponding to the analog voltage value to the outside;
An electronic control device comprising:
ことを特徴とする請求項1に記載の電子制御装置。 Further comprising means for inputting the voltage;
The electronic control device according to claim 1.
ことを特徴とする請求項1又は請求項2に記載の電子制御装置。 Means for determining that the operation load of the microcomputer is abnormal when the voltage is higher than a predetermined threshold;
The electronic control device according to claim 1 or 2, characterized by the above.
ことを特徴とする請求項3に記載の電子制御装置。 When it is determined that the operation load of the microcomputer is abnormal, the apparatus further includes means for selecting a process to be executed by the microcomputer.
The electronic control device according to claim 3.
ことを特徴とする請求項3又は請求項4に記載の電子制御装置。
Further comprising means for dynamically setting the predetermined threshold in accordance with the driving state of the vehicle;
The electronic control device according to claim 3 or 4, characterized by the above.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016115583A JP6522550B2 (en) | 2016-06-09 | 2016-06-09 | Electronic control unit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016115583A JP6522550B2 (en) | 2016-06-09 | 2016-06-09 | Electronic control unit |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2017218081A true JP2017218081A (en) | 2017-12-14 |
| JP6522550B2 JP6522550B2 (en) | 2019-05-29 |
Family
ID=60658778
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016115583A Active JP6522550B2 (en) | 2016-06-09 | 2016-06-09 | Electronic control unit |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6522550B2 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102085899B1 (en) * | 2018-12-10 | 2020-03-06 | 현대오트론 주식회사 | Operating Monitoring Method For CPU Of Vehicle ECU, And Monitoring Unit |
| JP2022171075A (en) * | 2021-04-30 | 2022-11-11 | 日野自動車株式会社 | Vehicle information output device |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6320931A (en) * | 1986-07-14 | 1988-01-28 | Mitsubishi Electric Corp | Data transmission equipment |
| JPH07141225A (en) * | 1993-11-15 | 1995-06-02 | Nec Home Electron Ltd | Runaway monitor device |
| JP2005259023A (en) * | 2004-03-15 | 2005-09-22 | Denso Corp | Vehicle control system |
| US20070073984A1 (en) * | 2005-09-29 | 2007-03-29 | International Business Machines Corporation | Apparatus and method for monitoring performance of a storage area network |
| JP2012018219A (en) * | 2010-07-06 | 2012-01-26 | Aisin Aw Co Ltd | Display device and program therefor |
-
2016
- 2016-06-09 JP JP2016115583A patent/JP6522550B2/en active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6320931A (en) * | 1986-07-14 | 1988-01-28 | Mitsubishi Electric Corp | Data transmission equipment |
| JPH07141225A (en) * | 1993-11-15 | 1995-06-02 | Nec Home Electron Ltd | Runaway monitor device |
| JP2005259023A (en) * | 2004-03-15 | 2005-09-22 | Denso Corp | Vehicle control system |
| US20070073984A1 (en) * | 2005-09-29 | 2007-03-29 | International Business Machines Corporation | Apparatus and method for monitoring performance of a storage area network |
| JP2012018219A (en) * | 2010-07-06 | 2012-01-26 | Aisin Aw Co Ltd | Display device and program therefor |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102085899B1 (en) * | 2018-12-10 | 2020-03-06 | 현대오트론 주식회사 | Operating Monitoring Method For CPU Of Vehicle ECU, And Monitoring Unit |
| US11422916B2 (en) | 2018-12-10 | 2022-08-23 | Hyundai Autoever Corp. | Usage amount monitoring method and monitoring unit of electronic control unit for vehicle |
| JP2022171075A (en) * | 2021-04-30 | 2022-11-11 | 日野自動車株式会社 | Vehicle information output device |
Also Published As
| Publication number | Publication date |
|---|---|
| JP6522550B2 (en) | 2019-05-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9058419B2 (en) | System and method for verifying the integrity of a safety-critical vehicle control system | |
| US9547546B2 (en) | Interrupt supervision system, processing system and method for interrupt supervision | |
| US8762792B2 (en) | Event monitor having switch matrix, separate counter, and compare circuitry | |
| JP6522550B2 (en) | Electronic control unit | |
| JP6153815B2 (en) | Electronic control unit for automobile | |
| US20080282248A1 (en) | Electronic computing device capable of specifying execution time of task, and program therefor | |
| JP2016113968A (en) | Vehicular control device and control method | |
| JP2011008702A (en) | Fault processor | |
| JP5582748B2 (en) | Electronic control device for vehicle | |
| US10514970B2 (en) | Method of ensuring operation of calculator | |
| JP2018165873A (en) | In-vehicle control device | |
| JP2010113419A (en) | Multicore controller | |
| US12491829B2 (en) | In-vehicle use control system | |
| JP6094387B2 (en) | Control device | |
| CN112113777B (en) | Slope signal disabling method, slope signal disabling device and vehicle | |
| JP7633911B2 (en) | Electronic Control Unit | |
| JP2016203764A (en) | Vehicular electronic control device | |
| JP2016162330A (en) | Electronic controller | |
| JP2021133720A (en) | Malfunction diagnostic device for vehicle control | |
| KR102075086B1 (en) | Epm microtick generation emergency stop using dma | |
| JP2020021131A (en) | In-vehicle control device | |
| JP2013001141A (en) | Information processing apparatus and software starting method | |
| CN109131358A (en) | Maloperation recognition methods, system, vehicle and computer readable storage medium | |
| JP6533489B2 (en) | Vehicle controller | |
| CN119911292A (en) | Autonomous driving control device and method thereof |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180307 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181206 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181218 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190213 |
|
| 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: 20190416 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190424 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6522550 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| 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 |