JP2020148122A - Control device and control method - Google Patents

Control device and control method Download PDF

Info

Publication number
JP2020148122A
JP2020148122A JP2019045196A JP2019045196A JP2020148122A JP 2020148122 A JP2020148122 A JP 2020148122A JP 2019045196 A JP2019045196 A JP 2019045196A JP 2019045196 A JP2019045196 A JP 2019045196A JP 2020148122 A JP2020148122 A JP 2020148122A
Authority
JP
Japan
Prior art keywords
processing
calculation unit
hardware
unit
rotation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019045196A
Other languages
Japanese (ja)
Inventor
潤也 時永
Junya Tokinaga
潤也 時永
誠 奥原
Makoto Okuhara
誠 奥原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Ten Ltd
Original Assignee
Denso Ten Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Ten Ltd filed Critical Denso Ten Ltd
Priority to JP2019045196A priority Critical patent/JP2020148122A/en
Publication of JP2020148122A publication Critical patent/JP2020148122A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Hybrid Electric Vehicles (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

To complete processing to be required while suppressing power consumption.SOLUTION: A control device 1 is a control device 1 that controls a rotation mechanism, and comprises: a control unit 2 that causes software to process first processing of performing calculation by a neural network within a first period based on a rotation state of the rotation mechanism, and second processing of starting processing on the basis of the rotation state of the rotation mechanism and performing the processing with a higher priority than the first processing; and a hardware calculation unit 4 capable of causing hardware to process at least part of the first processing. The control unit 2 activates the hardware calculation unit 4 when a rotation speed of the rotation mechanism is equal to or larger than a predetermined threshold value.SELECTED DRAWING: Figure 2

Description

本発明は、制御装置および制御方法に関する。 The present invention relates to a control device and a control method.

近年、例えば、学習モデルに基づき、内燃機関の異常を判定する制御装置がある。この種の制御装置では、例えば、内燃機関が所定の回転タイミングから所定期間内に判定結果を出力する(例えば、特許文献1参照)。 In recent years, for example, there is a control device for determining an abnormality of an internal combustion engine based on a learning model. In this type of control device, for example, the internal combustion engine outputs a determination result within a predetermined period from a predetermined rotation timing (see, for example, Patent Document 1).

特開2018−178810号公報JP-A-2018-178810

しかしながら、従来技術では、例えば、内燃機関の回転速度が所定値以上となった場合に、処理が間に合わなくなるおそれがある。かといって、学習モデルによる処理を他のハードウェアで行うと、ハードウェアの分だけ、消費電力が増加するため好ましくない。 However, in the prior art, for example, when the rotation speed of the internal combustion engine exceeds a predetermined value, the processing may not be in time. However, it is not preferable to perform the processing by the learning model on other hardware because the power consumption increases by the amount of the hardware.

本発明は、上記に鑑みてなされたものであって、消費電力を抑えつつ、要求される処理を完了させることができる制御装置および制御方法を提供することを目的とする。 The present invention has been made in view of the above, and an object of the present invention is to provide a control device and a control method capable of completing a required process while suppressing power consumption.

上述した課題を解決し、目的を達成するために、実施形態に係る制御装置は、回転機構の制御を行う制御装置であって、回転機構の回転状態に基づく第1期間内にニューラルネットワークによる演算を行う第1処理と、前記回転機構の回転状態に基づいて処理を開始し、前記第1処理よりも高い優先度で処理を行う第2処理とを、ソフトウェアで処理する制御部と、前記第1処理の少なくとも一部をハードウェアで処理することが可能なハード演算部とを備え、前記制御部は、前記回転機構の回転速度が所定閾値以上である場合に、前記ハード演算部を起動させる。 In order to solve the above-mentioned problems and achieve the object, the control device according to the embodiment is a control device that controls the rotation mechanism, and is calculated by a neural network within the first period based on the rotation state of the rotation mechanism. A control unit that software processes the first process of performing the process and the second process of starting the process based on the rotation state of the rotation mechanism and performing the process with a higher priority than the first process, and the first process. A hardware calculation unit capable of processing at least a part of one processing by hardware is provided, and the control unit activates the hardware calculation unit when the rotation speed of the rotation mechanism is equal to or higher than a predetermined threshold value. ..

本発明によれば、消費電力を抑えつつ、要求される処理を完了させることができる。 According to the present invention, the required processing can be completed while suppressing the power consumption.

図1は、制御方法の概要を示す図である。FIG. 1 is a diagram showing an outline of a control method. 図2は、制御装置のブロック図である。FIG. 2 is a block diagram of the control device. 図3は、制御装置が実行する処理を示すタイミングチャートである。FIG. 3 is a timing chart showing the processing executed by the control device. 図4は、制御装置が実行する処理手順を示すフローチャートである。FIG. 4 is a flowchart showing a processing procedure executed by the control device.

以下、添付図面を参照して、本願の開示する制御装置および制御方法の実施形態を詳細に説明する。なお、以下に示す実施形態により本発明が限定されるものではない。 Hereinafter, embodiments of the control device and control method disclosed in the present application will be described in detail with reference to the accompanying drawings. The present invention is not limited to the embodiments shown below.

まず、図1を用いて実施形態に係る制御装置および制御方法の概要について説明する。図1は、制御方法の概要を示す図である。なお、実施形態に係る補正方法は、図1に示す制御装置1によって実行される。 First, the outline of the control device and the control method according to the embodiment will be described with reference to FIG. FIG. 1 is a diagram showing an outline of a control method. The correction method according to the embodiment is executed by the control device 1 shown in FIG.

図1に示すように、実施形態に係る制御装置1は、例えば、エンジン100から入力される各種センサ値を取得し、センサ値に基づき、エンジン100の内部状態を推定する。 As shown in FIG. 1, the control device 1 according to the embodiment acquires, for example, various sensor values input from the engine 100, and estimates the internal state of the engine 100 based on the sensor values.

また、制御装置1は、ソフト演算部と、ハード演算部とを備える。ソフト演算部は、例えば、第1処理、第2処理、第3処理を応じて、要求されるタイミングで適宜実行するソフトウェアである。 Further, the control device 1 includes a software calculation unit and a hardware calculation unit. The software calculation unit is software that appropriately executes, for example, the first process, the second process, and the third process at a required timing.

ここで、第1処理は、ニューラルネットワークによる演算処理である。第1処理は、AI(Artificial Intelligent)処理とも称される。第1処理は例えば異常検出処理であって、ノッキング検出処理等である。第2処理は、第1処理に比べて処理の優先度が高い処理である。第2処理はエンジンを制御するための処理であって、燃料噴射制御や点火制御等である。また、第3処理は、第1処理および第2処理に比べて処理の優先度が低い処理である。このため、第3処理は、第1処理および第2処理の空き時間に実行されるタスクである。 Here, the first process is an arithmetic process by a neural network. The first process is also referred to as an AI (Artificial Intelligent) process. The first process is, for example, an abnormality detection process, such as a knocking detection process. The second process is a process having a higher priority than the first process. The second process is a process for controlling the engine, such as fuel injection control and ignition control. Further, the third process is a process having a lower priority than the first process and the second process. Therefore, the third process is a task executed in the free time of the first process and the second process.

ハードウェア演算部は、第1処理の少なくとも一部をハードウェアで処理することが可能なソフトウェア演算部とは別のハードウェアである。 The hardware calculation unit is hardware different from the software calculation unit that can process at least a part of the first processing by hardware.

図1に示すように、ソフト演算部は、エンジン100のクランク角が上死点(以下、TDCと記載する)から所定のクランク角周期(例えば、30CA)で第2処理を実行し、第2処理の空き時間において、第1処理を実行する。 As shown in FIG. 1, the software calculation unit executes the second process at a predetermined crank angle period (for example, 30 CA) from the top dead center (hereinafter referred to as TDC) of the crank angle of the engine 100, and the second process is performed. The first process is executed in the free time of the process.

なお、例えば、第1処理は、第2処理よりもクランク角周期が長い周期毎(例えば、720CA)に要求されるタスクである。また、第3処理は、例えば、所定の時間周期で要求されるタスクである。 For example, the first process is a task required every cycle (for example, 720 CA) having a longer crank angle period than the second process. Further, the third process is, for example, a task required in a predetermined time cycle.

ところで、一般的に、エンジン100の回転速度が上昇するほど、第2処理の処理間隔が短くなる。この場合、ソフト演算部による処理が第2処理(および第1処理)に占拠され、第3処理を実行できない場合が想定される。 By the way, in general, as the rotation speed of the engine 100 increases, the processing interval of the second processing becomes shorter. In this case, it is assumed that the processing by the software calculation unit is occupied by the second processing (and the first processing) and the third processing cannot be executed.

このため、実施形態に係る制御方法では、エンジン100の回転速度が所定閾値を超えた場合に、ハード演算部を起動させる。すなわち、実施形態に係る制御方法では、エンジンの回転速度が回転閾値を超える場合に、ハード演算部を起動させて、第2処理をハード演算部側で実行する。 Therefore, in the control method according to the embodiment, the hardware calculation unit is activated when the rotation speed of the engine 100 exceeds a predetermined threshold value. That is, in the control method according to the embodiment, when the rotation speed of the engine exceeds the rotation threshold value, the hard calculation unit is activated and the second processing is executed on the hard calculation unit side.

これにより、ソフト演算部は、ハード演算部が起動している期間においては、第2処理を実行する必要がなく、第1処理の空き時間に第3処理を実行することができる。一方、実施形態に係る制御方法では、エンジン100の回転速度が回転閾値以下である場合、ハード演算部を停止しておく。 As a result, the software calculation unit does not need to execute the second process during the period when the hard calculation unit is running, and can execute the third process in the free time of the first process. On the other hand, in the control method according to the embodiment, when the rotation speed of the engine 100 is equal to or less than the rotation threshold value, the hardware calculation unit is stopped.

言い換えれば、ソフト演算部で第2処理の空き時間に第1処理および第3処理を要求されるタイミングまでに実行可能な場合に、ハード演算部を停止しておく。これにより、ハード演算部による消費電力を抑制することが可能となる。 In other words, the hard calculation unit is stopped when the software calculation unit can execute the first processing and the third processing by the timing required in the free time of the second processing. This makes it possible to suppress the power consumption of the hardware calculation unit.

つまり、実施形態に係る制御方法では、ソフト演算部による処理が追いつかない場合に、ハード演算部で第1処理を行うとともに、ソフト演算部で足りる場合、ハード演算部を停止させておく。 That is, in the control method according to the embodiment, when the processing by the software calculation unit cannot catch up, the hard calculation unit performs the first processing, and when the software calculation unit is sufficient, the hardware calculation unit is stopped.

したがって、実施形態に係る制御方法によれば、消費電力を抑えつつ、要求される処理を完了させることが可能となる。 Therefore, according to the control method according to the embodiment, it is possible to complete the required processing while suppressing the power consumption.

次に、図2を用いて実施形態に係る制御装置1の構成例について説明する。図2は、制御装置1のブロック図である。なお、図2には、センサ群101を併せて示す。センサ群101は、エンジン100の内部状態を検出するセンサの総称である。 Next, a configuration example of the control device 1 according to the embodiment will be described with reference to FIG. FIG. 2 is a block diagram of the control device 1. Note that FIG. 2 also shows the sensor group 101. The sensor group 101 is a general term for sensors that detect the internal state of the engine 100.

上述のように、制御装置1が、ノッキングを検出する場合、センサ群101には、クランク角センサ、ノックセンサなどが含まれる。なお、センサ群101は、異常の検出対象に応じて、適宜変更することができる。 As described above, when the control device 1 detects knocking, the sensor group 101 includes a crank angle sensor, a knock sensor, and the like. The sensor group 101 can be appropriately changed according to the abnormality detection target.

図2に示すように、制御装置1は、制御部2と、記憶部3と、ハード演算部4とを備える。制御部2は、検出部21と、ソフト演算部22と、取り込み部23と、起動制御部24とを備える。記憶部3は、入力情報31と、演算情報32とを記憶する。 As shown in FIG. 2, the control device 1 includes a control unit 2, a storage unit 3, and a hardware calculation unit 4. The control unit 2 includes a detection unit 21, a software calculation unit 22, a capture unit 23, and a start control unit 24. The storage unit 3 stores the input information 31 and the calculation information 32.

ハード演算部4は、ニューラルネットワークによる処理(第1処理)を行うためのハードウェアである。本実施形態において、ハード演算部4は、第1処理以外のタスクを行う必要はなく、第1処理、すなわち、AI処理に特化したハードウェアを用いることができる。なお、AI処理は、基本的に演算量は多いが入力値等が異なる同じような演算を繰り返す処理であるので、処理を代替えさせた際の負荷軽減量が多く、かつ、ハードウェアで処理する際の回路構成が比較的単純な構成となるので、他の第2の処理や第3の処理に比べて、ハードウェアで処理することに適している。 The hardware calculation unit 4 is hardware for performing processing (first processing) by the neural network. In the present embodiment, the hardware calculation unit 4 does not need to perform a task other than the first processing, and can use the hardware specialized for the first processing, that is, the AI processing. Note that the AI process is basically a process of repeating similar operations with different input values, etc., although the amount of calculation is large, so that the amount of load reduction when the process is replaced is large, and the process is performed by hardware. Since the circuit configuration is relatively simple, it is suitable for processing by hardware as compared with other second processing and third processing.

制御部2は、ソフトウェア演算を行うコンピュータであって、例えば、マイクロコンピュータで構成され、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、入出力ポートなどを有するコンピュータや各種の回路を含む。 The control unit 2 is a computer that performs software calculations, and is composed of, for example, a microcomputer, and has a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), an HDD (Hard Disk Drive), and the like. Includes computers with input / output ports and various circuits.

コンピュータのCPUは、例えば、ROMに記憶されたプログラムを読み出して実行することによって、制御部2の検出部21、ソフト演算部22、取り込み部23および起動制御部24として機能する。 The CPU of the computer functions as a detection unit 21, a software calculation unit 22, a capture unit 23, and a start control unit 24 of the control unit 2, for example, by reading and executing a program stored in the ROM.

また、制御部2の検出部21、ソフト演算部22、取り込み部23および起動制御部24の少なくともいずれか一部または全部をASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等のハードウェアで構成することもできる。 Further, at least a part or all of the detection unit 21, the software calculation unit 22, the capture unit 23, and the start control unit 24 of the control unit 2 are hardware such as an ASIC (Application Specific Integrated Circuit) and an FPGA (Field Programmable Gate Array). It can also be configured with hardware.

また、記憶部3は、例えば、RAMやフラッシュROM、HDDに対応する。記憶部3は、入力情報31、演算情報32や各種プログラムの情報を記憶することができる。なお、制御装置1は、有線や無線のネットワークで接続された他のコンピュータや可搬型記録媒体を介して上記したプログラムや各種情報を取得することとしてもよい。なお、制御部2と記憶部3を1つのマイクロコンピュータで構成してもよい。 Further, the storage unit 3 corresponds to, for example, a RAM, a flash ROM, or an HDD. The storage unit 3 can store input information 31, calculation information 32, and information on various programs. The control device 1 may acquire the above-mentioned program and various information via another computer or a portable recording medium connected by a wired or wireless network. The control unit 2 and the storage unit 3 may be configured by one microcomputer.

入力情報31は、センサ群101から入力される入力データに関する情報である。制御部2は、入力情報31に基づいて、上述の第1〜第3処理を実行することができる。また、図2に示すように、記憶部3は、ハード演算部4と接続されており、ハード演算部4からアクセスすることも可能である。 The input information 31 is information regarding the input data input from the sensor group 101. The control unit 2 can execute the above-mentioned first to third processes based on the input information 31. Further, as shown in FIG. 2, the storage unit 3 is connected to the hardware calculation unit 4, and can be accessed from the hardware calculation unit 4.

この場合、ハード演算部4は、入力情報31を記憶部3から直接取得し、第1処理を行うことも可能である。言い換えれば、ハード演算部4は、制御部2を介さずに入力情報31を取得する。なお、AI処理の開始時に必要となる入力データや係数データは、終了時の演算結果よりもデータ量が多くなるので、ハード演算部4が記憶部3から直接取得する構成にした方が制御部2の処理効率の面ではよりよい。 In this case, the hardware calculation unit 4 can directly acquire the input information 31 from the storage unit 3 and perform the first processing. In other words, the hardware calculation unit 4 acquires the input information 31 without going through the control unit 2. Since the amount of input data and coefficient data required at the start of AI processing is larger than the calculation result at the end, it is better to configure the hardware calculation unit 4 to directly acquire from the storage unit 3. It is better in terms of the processing efficiency of 2.

これにより、制御部2による処理負荷を抑制することが可能となる。すなわち、入力情報31は、データ量が比較的大きく、仮に、ハード演算部4が、制御部2を介して入力情報31を取得すると、制御部2が入力情報31を読み出してハード演算部4に受け渡す処理に比較的多くの時間を費やされてしまう恐れがある。 This makes it possible to suppress the processing load by the control unit 2. That is, the amount of data in the input information 31 is relatively large, and if the hardware calculation unit 4 acquires the input information 31 via the control unit 2, the control unit 2 reads the input information 31 and causes the hardware calculation unit 4 to read the input information 31. There is a risk that a relatively large amount of time will be spent on the delivery process.

演算情報32は、上述の第1処理の演算結果に関する情報である。例えば、ソフト演算部22は、第1処理を中断する場合に、中断前の第1処理の演算結果を演算情報32として記憶部3に格納する。 The calculation information 32 is information regarding the calculation result of the above-mentioned first process. For example, when the first process is interrupted, the software calculation unit 22 stores the calculation result of the first process before the interruption as calculation information 32 in the storage unit 3.

制御部2は、エンジン100のクランク角に同期させて、各種処理(第1処理〜第3処理)を実行するとともに、エンジン100の回転速度が回転閾値を超えた場合に、ハード演算部4を起動させる。 The control unit 2 executes various processes (first process to third process) in synchronization with the crank angle of the engine 100, and when the rotation speed of the engine 100 exceeds the rotation threshold, the hard calculation unit 4 is operated. Start it.

検出部21は、エンジン100の回転状態を検出する。具体的には、検出部21は、センサ群101に含まれるクランク角センサから入力されるクランク角信号に基づいてエンジン100の回転状態を検出する。また、検出部21は、クランク角信号に基づいてエンジン100の回転速度(以下、単に回転速度と記載する)を算出することもできる。 The detection unit 21 detects the rotational state of the engine 100. Specifically, the detection unit 21 detects the rotational state of the engine 100 based on the crank angle signal input from the crank angle sensor included in the sensor group 101. Further, the detection unit 21 can also calculate the rotation speed of the engine 100 (hereinafter, simply referred to as the rotation speed) based on the crank angle signal.

ソフト演算部22は、各タスクを実行する演算部である。上述のように、ソフト演算部22は、クランク角に同期して、第1処理および第2処理を実行するとともに、所定の時間周期で、第3処理を実行する。 The software calculation unit 22 is a calculation unit that executes each task. As described above, the software calculation unit 22 executes the first process and the second process in synchronization with the crank angle, and also executes the third process at a predetermined time cycle.

本実施形態においては、各タスクの優先順位は、第2処理>第1処理>第3処理である。このため、ソフト演算部22は、第2処理の空き時間において、第1処理を行うとともに、さらに、第1処理の空き時間に第3処理を行うこととなる。 In the present embodiment, the priority of each task is 2nd process> 1st process> 3rd process. Therefore, the software calculation unit 22 performs the first process in the free time of the second process, and further performs the third process in the free time of the first process.

取り込み部23は、ハード演算部から演算処理が完了した旨の連絡を割り込み等で受けると、ハード演算部4から第1処理の演算結果を取得し、かかる演算結果に基づいて記憶部3の演算情報32を更新する。すなわち、取り込み部23は、ハード演算部4から演算結果を取り込む取り込み処理を行い、演算情報32を更新する。なお、取り込み部23は、ハード演算部4が起動する際に、ハード演算部4が第1処理を行うのに必要な情報を記憶部3から取り込み、ハード演算部4へ渡すことも可能である。なお、ハード演算部4が記憶部3に演算結果を直接書き込むように構成している場合には、取り込み部23は、ハード演算部から演算処理が完了した旨の連絡を割り込み等で受けると、記憶部3から演算結果を読み出し、演算結果を用いるソフト演算部22の処理で使用できるようにする。 When the import unit 23 receives a notification from the hardware calculation unit that the calculation processing is completed by an interrupt or the like, the import unit 23 acquires the calculation result of the first processing from the hardware calculation unit 4, and the storage unit 3 calculates based on the calculation result. Information 32 is updated. That is, the import unit 23 performs an import process for importing the calculation result from the hardware calculation unit 4 and updates the calculation information 32. It should be noted that, when the hardware calculation unit 4 is activated, the import unit 23 can acquire information necessary for the hardware calculation unit 4 to perform the first processing from the storage unit 3 and pass it to the hardware calculation unit 4. .. When the hardware calculation unit 4 is configured to directly write the calculation result to the storage unit 3, the import unit 23 receives a notification from the hardware calculation unit that the calculation process is completed by an interrupt or the like. The calculation result is read from the storage unit 3 so that it can be used in the processing of the software calculation unit 22 that uses the calculation result.

起動制御部24は、ハード演算部4の起動および停止を司る処理部である。起動制御部25は、上記の回転速度が回転閾値を超えた場合に、ハード演算部4を起動させるとともに、回転速度が回転閾値を下回った場合に、ハード演算部4を停止させる。 The start control unit 24 is a processing unit that controls the start and stop of the hardware calculation unit 4. The start control unit 25 activates the hard calculation unit 4 when the rotation speed exceeds the rotation threshold value, and stops the hard calculation unit 4 when the rotation speed falls below the rotation threshold value.

起動制御部24は、回転速度が回転閾値を超えた場合に、ハード演算部4を起動させる。また、ハード演算部が起動している状態にあるときに第1処理の開始タイミングになった場合には、ハード演算部4に対して、第1処理の開始タイミングを通知する。これにより、ハード演算部4は、記憶部3から所定の入力情報31を読み出して、かかる開始タイミングから第1処理を開始することとなる。 The activation control unit 24 activates the hardware calculation unit 4 when the rotation speed exceeds the rotation threshold value. Further, when the start timing of the first process is reached while the hard calculation unit is in the activated state, the hard calculation unit 4 is notified of the start timing of the first process. As a result, the hardware calculation unit 4 reads the predetermined input information 31 from the storage unit 3 and starts the first process from the start timing.

ここで、回転閾値とは、例えば、ソフト演算部22の処理が間に合わなくなる回転速度である。例えば、回転閾値は、制御部2の性能(処理速度)に応じて予め決定される。すなわち、制御部2の性能が高いほど、単位時間当たりに実行可能な処理が多くなるため、回転閾値が高く設定されることとなる。 Here, the rotation threshold value is, for example, a rotation speed at which the processing of the software calculation unit 22 cannot keep up. For example, the rotation threshold is determined in advance according to the performance (processing speed) of the control unit 2. That is, the higher the performance of the control unit 2, the more processes that can be executed per unit time, so that the rotation threshold value is set higher.

また、起動制御部24は、ハード演算部4が第1処理を完了した場合に、完了通知をハード演算部4から取得する。これにより、取り込み部23は、ハード演算部4から演算結果を取得し、演算情報32を更新することとなる。なお、この、取り込み部23による処理は、割込み処理である。 Further, the activation control unit 24 acquires a completion notification from the hardware calculation unit 4 when the hardware calculation unit 4 completes the first process. As a result, the import unit 23 acquires the calculation result from the hardware calculation unit 4 and updates the calculation information 32. The process by the capture unit 23 is an interrupt process.

つまり、制御部2は、上記の完了通知を取得した場合に、少なくとも第3処理を一時的に中断して、ハード演算部4から演算結果を取得し、演算情報32の更新処理を行う。なお、この更新処理は、極めて負荷が小さいため、第3の処理に加えて第2の処理を一時的に中断するように構成しても、制御部2による他のタスクを阻害することなく、実行することが可能である。 That is, when the control unit 2 acquires the above completion notification, at least the third process is temporarily interrupted, the operation result is acquired from the hardware operation unit 4, and the operation information 32 is updated. Since this update process has an extremely small load, even if the second process is temporarily interrupted in addition to the third process, the other tasks by the control unit 2 are not hindered. It is possible to do it.

次に、図3を用いて、実施形態に係る制御装置1が実行する一連の処理について説明する。図3は、制御装置1が実行する処理を示すタイミングチャートである。なお、ここでは、回転速度が回転閾値を超えている期間における制御装置1の処理について説明する。 Next, a series of processes executed by the control device 1 according to the embodiment will be described with reference to FIG. FIG. 3 is a timing chart showing the processing executed by the control device 1. Here, the processing of the control device 1 during the period when the rotation speed exceeds the rotation threshold value will be described.

また、図3では、制御部2による第1〜第3処理および取り込み処理と、ハード演算部4による第1処理の処理タイミングを示す。 Further, FIG. 3 shows the processing timings of the first to third processing and the import processing by the control unit 2 and the first processing by the hardware calculation unit 4.

図3に示すように、制御部2は、第2処理を所定周期(30CA周期)で実行し、第2処理の空き時間において、第3処理を実行する。このとき、ハード演算部4は、制御部2に代わって、第1処理を実行する。 As shown in FIG. 3, the control unit 2 executes the second process in a predetermined cycle (30 CA cycle), and executes the third process in the free time of the second process. At this time, the hardware calculation unit 4 executes the first process on behalf of the control unit 2.

そして、ハード演算部4は、第1処理を完了すると、制御部2に対して、完了通知を行う(時刻t1)。これにより、制御部2は、ハード演算部4から演算結果を取り込む取り込み処理を割込み処理によって開始する。図3に示す例では、制御部2が時刻t1から時刻t2の期間において、取り込み処理を行う場合を示す。 Then, when the hardware calculation unit 4 completes the first process, the hardware calculation unit 4 notifies the control unit 2 of the completion (time t1). As a result, the control unit 2 starts the capture process of fetching the calculation result from the hardware calculation unit 4 by the interrupt process. In the example shown in FIG. 3, the case where the control unit 2 performs the capture process in the period from the time t1 to the time t2 is shown.

これにより、記憶部3の演算情報32を更新することができる。その後、制御部2は、次に第1処理の開始タイミング(TDC)となる時刻t3をハード演算部4へ通知する。制御部2は、開始タイミング(時刻t3)を現在の回転速度から推定することができる。なお、第1処理の開始タイミングはTDCに限るものではなく、その他の回転角度タイミングであってもよいし、所定時間毎といった時間に依存するタイミングであってもよい。 As a result, the calculation information 32 of the storage unit 3 can be updated. After that, the control unit 2 notifies the hardware calculation unit 4 of the time t3, which is the start timing (TDC) of the first process. The control unit 2 can estimate the start timing (time t3) from the current rotation speed. The start timing of the first process is not limited to the TDC, and may be other rotation angle timings, or may be time-dependent timings such as every predetermined time.

そして、ハード演算部4は、かかる開始タイミングから第1処理を再び実行することができる。なお、時刻t2から時刻t3の期間において、ハード演算部4を起動させた状態で待機させておくことにしてもよいし、あるいは、ハード演算部4を停止させておくことにしてもよい。ただし、回転速度が回転閾値を超えた場合には、1周期(TDCタイミングから次のTDCタイミングまでの720CA)よりも長い期間、回転速度が回転閾値を超えた状態が続くことが多く、また、ハード演算部4の起動/停止を短時間に頻繁に繰り返す制御ハンチングが発生することを防ぐためにも、ハード演算部4を1度起動させたら、しばらく起動状態を維持する(例えば、所定周期経過するまで、所定時間経過するまで、起動させた際の回転閾値よりも低い回転閾値まで回転速度が低下するまで維持する)ことが望ましい。 Then, the hardware calculation unit 4 can execute the first process again from the start timing. In the period from time t2 to time t3, the hard calculation unit 4 may be kept on standby in a activated state, or the hard calculation unit 4 may be stopped. However, when the rotation speed exceeds the rotation threshold, the rotation speed often exceeds the rotation threshold for a period longer than one cycle (720CA from the TDC timing to the next TDC timing), and the rotation speed exceeds the rotation threshold. In order to prevent control hunting that frequently repeats the start / stop of the hard calculation unit 4 in a short time, once the hard calculation unit 4 is started, the start state is maintained for a while (for example, a predetermined cycle elapses). Until a predetermined time elapses, the rotation speed is maintained until the rotation speed drops to a rotation threshold lower than the rotation threshold at the time of activation).

次に、図4を用いて、実施形態に係る制御装置1が実行する処理手順について説明する。なお、以下で説明する処理手順は、制御部2によって、優先度が最も高い第2処理の周期よりも短い所定周期で繰り返し実行される。 Next, the processing procedure executed by the control device 1 according to the embodiment will be described with reference to FIG. The processing procedure described below is repeatedly executed by the control unit 2 in a predetermined cycle shorter than the cycle of the second processing having the highest priority.

図4に示すように、実施形態に係る制御装置1は、まず、第2処理を実行するタイミングである第2処理タイミング(30CA周期)か否かを判定し(ステップS101)、第2処理タイミングである場合(ステップS101,Yes)、第2処理コールを行う(ステップS102)。 As shown in FIG. 4, the control device 1 according to the embodiment first determines whether or not it is the second processing timing (30CA cycle), which is the timing for executing the second processing (step S101), and the second processing timing. If (step S101, Yes), the second processing call is performed (step S102).

これにより、ソフト演算部22によって、第2処理が行われる。一方、ステップS101の判定処理において、第2処理タイミングでなかった場合(ステップS101,No)、ステップS102の処理は省略される。 As a result, the software calculation unit 22 performs the second processing. On the other hand, in the determination process of step S101, if it is not the second process timing (steps S101, No), the process of step S102 is omitted.

続いて、制御装置1は、第1処理を実行する第1処理タイミング(720CA周期)か否かを判定し(ステップS103)、第1処理タイミングである場合(ステップS103,Yes)、回転速度が回転閾値よりも大きいか否かを判定する(ステップS104)。 Subsequently, the control device 1 determines whether or not it is the first processing timing (720CA cycle) for executing the first processing (step S103), and if it is the first processing timing (step S103, Yes), the rotation speed is high. It is determined whether or not it is larger than the rotation threshold value (step S104).

ここで、制御装置1は、回転速度が回転閾値を超える場合(ステップS104,Yes)、ハード演算部4を起動させ(ステップS105)、回転速度が回転閾値以下である場合(ステップS104,No)、ハード演算部4を停止させる(ステップS106)。 Here, when the rotation speed exceeds the rotation threshold (step S104, Yes), the control device 1 activates the hardware calculation unit 4 (step S105), and when the rotation speed is equal to or less than the rotation threshold (step S104, No). , The hardware calculation unit 4 is stopped (step S106).

続いて、制御装置1は、ハード演算部4が停止中であるか否かを判定し(ステップS107)、ハード演算部4が停止中である場合(ステップS107,Yes)、ソフト演算部22に対して第1処理コールを行う(ステップS108)。 Subsequently, the control device 1 determines whether or not the hard calculation unit 4 is stopped (step S107), and when the hard calculation unit 4 is stopped (step S107, Yes), the software calculation unit 22 is contacted. In response to this, a first processing call is made (step S108).

一方、制御装置1は、ハード演算部4が起動中である場合(ステップS107,No)、ハード演算部4に対して、開始タイミングを通知する(ステップS109)。 On the other hand, when the hardware calculation unit 4 is running (steps S107, No), the control device 1 notifies the hardware calculation unit 4 of the start timing (step S109).

続いて、制御装置1は、ハード演算部4が起動中か否かを判定し(ステップS110)、ハード演算部4が起動中である場合(ステップS110,Yes)、ハード演算部4による第1処理が完了したか否かを判定する(ステップS111)。 Subsequently, the control device 1 determines whether or not the hard calculation unit 4 is starting (step S110), and when the hard calculation unit 4 is starting (step S110, Yes), the first by the hard calculation unit 4 It is determined whether or not the process is completed (step S111).

制御装置1は、ステップS111において、第1処理が完了していた場合(ステップS111,Yes)、演算情報32の更新処理コールを行う(ステップS112)。また、制御装置1は、ステップS110において、ハード演算部4が停止中である場合や(ステップS110,No)、ステップS111において、第1処理が未完了である場合(ステップS111,No)、ステップS113の処理へ移行する。 When the first process is completed in step S111 (step S111, Yes), the control device 1 makes an update process call for the calculation information 32 (step S112). Further, in the control device 1, when the hardware calculation unit 4 is stopped in step S110 (step S110, No), or when the first process is not completed in step S111 (step S111, No), the step. The process proceeds to S113.

続いて、制御装置1は、第3処理を実行する第3処理タイミングであるか否かを判定し(ステップS113)、第3処理タイミングである場合(ステップS113,Yes)。第3処理コールを行い(ステップS114)、処理を終了する。また、制御装置1は、ステップS113の処理において、第3処理タイミングでなかった場合(ステップS113,No)、ステップS114の処理を経由せず、処理を終了する。 Subsequently, the control device 1 determines whether or not it is the third processing timing for executing the third processing (step S113), and when it is the third processing timing (step S113, Yes). A third processing call is made (step S114), and processing is terminated. Further, if the processing in step S113 is not at the third processing timing (steps S113, No), the control device 1 ends the processing without going through the processing in step S114.

上述したように、実施形態に係るエンジン100(回転機構の一例)の制御を行う制御装置1であって、エンジン100の回転状態に基づく第1期間内にニューラルネットワークによる演算を行う第1処理と、エンジン100の回転状態に基づいて処理を開始し、第1処理よりも高い優先度で処理を行う第2処理とを、ソフトウェアで処理する制御部2と、第1処理の少なくとも一部をハードウェアで処理することが可能なハード演算部4とを備え、制御部2は、エンジン100の回転速度が所定閾値以上である場合に、ハード演算部4を起動させる。したがって、実施形態に係る制御装置1によれば、消費電力を抑えつつ、要求される処理を完了させることができる。 As described above, the control device 1 that controls the engine 100 (an example of the rotation mechanism) according to the embodiment, and the first process that performs the calculation by the neural network within the first period based on the rotation state of the engine 100. , The control unit 2 that starts the process based on the rotation state of the engine 100 and processes the second process with a higher priority than the first process by software, and hardware at least a part of the first process. A hardware calculation unit 4 that can be processed by wear is provided, and the control unit 2 activates the hardware calculation unit 4 when the rotation speed of the engine 100 is equal to or higher than a predetermined threshold value. Therefore, according to the control device 1 according to the embodiment, the required processing can be completed while suppressing the power consumption.

ところで、上述した実施形態では、回転機構がエンジン100である場合について説明したが、回転機構は、エンジン100に限られず、モータをはじめとする他の回転機構であってもよい。 By the way, in the above-described embodiment, the case where the rotation mechanism is the engine 100 has been described, but the rotation mechanism is not limited to the engine 100, and may be another rotation mechanism such as a motor.

また、上述した実施形態では、高タスク処理に比べ、演算処理の優先度が低い場合について説明したが、これに限定されるものではない。高タスク処理に比べて、演算処理の優先度が高い場合であってもよい。 Further, in the above-described embodiment, the case where the priority of the arithmetic processing is lower than that of the high task processing has been described, but the present invention is not limited to this. It may be the case that the priority of the arithmetic processing is higher than that of the high task processing.

また、上述した実施形態では、演算処理をハード演算部4で実行することとしたが、これに限定されず、演算処理に加えて、他のタスクをハード演算部4で実行することにしてもよい。この場合、演算処理と、他のタスクとを実行するハード演算部4をそれぞれ個別に設けることにしてもよい。 Further, in the above-described embodiment, the arithmetic processing is executed by the hard arithmetic unit 4, but the present invention is not limited to this, and other tasks may be executed by the hard arithmetic unit 4 in addition to the arithmetic processing. Good. In this case, the hardware calculation unit 4 for executing the calculation process and other tasks may be provided separately.

さらなる効果や変形例は、当業者によって容易に導き出すことができる。このため、本発明のより広範な様態は、以上のように表しかつ記述した特定の詳細および代表的な実施形態に限定されるものではない。したがって、添付の特許請求の範囲および、その均等物によって定義される統括的な発明の概念の精神または範囲から逸脱することなく、様々な変化が可能である。 Further effects and variations can be easily derived by those skilled in the art. For this reason, the broader aspects of the invention are not limited to the particular details and representative embodiments described and described above. Therefore, various changes are possible without departing from the spirit or scope of the overall concept of the invention as defined by the appended claims and their equivalents.

1 制御装置
2 制御部
4 ハード演算部
21 検出部
22 ソフト演算部
23 取り込み部
24 起動制御部
100 エンジン(回転機構の一例)
1 Control device 2 Control unit 4 Hard calculation unit 21 Detection unit 22 Soft calculation unit 23 Import unit 24 Start control unit 100 Engine (an example of rotation mechanism)

Claims (5)

回転機構の制御を行う制御装置であって、
回転機構の回転状態に基づく第1期間内にニューラルネットワークによる演算を行う第1処理と、前記回転機構の回転状態に基づいて処理を開始し、前記第1処理よりも高い優先度で処理を行う第2処理とを、ソフトウェアで処理する制御部と、
前記第1処理の少なくとも一部をハードウェアで処理することが可能なハード演算部と
を備え、
前記制御部は、
前記回転機構の回転速度が所定閾値以上である場合に、前記ハード演算部を起動させること
を特徴とする制御装置。
A control device that controls the rotation mechanism.
The first process of performing the calculation by the neural network within the first period based on the rotation state of the rotation mechanism and the process are started based on the rotation state of the rotation mechanism, and the processing is performed with a higher priority than the first process. A control unit that processes the second process with software,
It is provided with a hardware calculation unit capable of processing at least a part of the first processing by hardware.
The control unit
A control device characterized in that the hardware calculation unit is activated when the rotation speed of the rotation mechanism is equal to or higher than a predetermined threshold value.
前記制御部は、
前記第1処理および前記第2処理よりも低い優先度で処理を行う第3処理を行うこと
を特徴とする請求項1に記載の制御装置。
The control unit
The control device according to claim 1, wherein the first process and the third process, which performs the process with a lower priority than the second process, are performed.
前記制御部は、
前記ハード演算部からニューラルネットワークによる演算の完了連絡を受けると、当該演算の結果データを取り込む取り込み処理を行うこと
を特徴とする請求項1または2に記載の制御装置。
The control unit
The control device according to claim 1 or 2, wherein when the hardware calculation unit receives a notification of completion of a calculation by a neural network, a capture process for capturing the result data of the calculation is performed.
前記制御部は、
前記回転機構の回転速度が前記所定閾値未満になった場合に、前記ハード演算部を停止させること
を特徴とする請求項1,2または3に記載の制御装置。
The control unit
The control device according to claim 1, 2, or 3, wherein the hardware calculation unit is stopped when the rotation speed of the rotation mechanism becomes less than the predetermined threshold value.
回転機構の制御を行う制御方法であって、
回転機構の回転状態に基づく第1期間内にニューラルネットワークによる演算を行う第1処理と、前記回転機構の回転状態に基づいて処理を開始し、前記第1処理よりも高い優先度で処理を行う第2処理とを、ソフトウェアで処理する制御工程
を含み、
前記制御工程は、
前記回転機構の回転速度が所定閾値以上である場合に、前記第1処理の少なくとも一部をハードウェアで処理することが可能なハード演算部を起動させること
を特徴とする制御方法。
It is a control method that controls the rotation mechanism.
The first process of performing the calculation by the neural network within the first period based on the rotation state of the rotation mechanism and the process are started based on the rotation state of the rotation mechanism, and the processing is performed with a higher priority than the first process. The second process includes a control process in which software processes the second process.
The control step is
A control method comprising activating a hardware calculation unit capable of processing at least a part of the first processing by hardware when the rotation speed of the rotation mechanism is equal to or higher than a predetermined threshold value.
JP2019045196A 2019-03-12 2019-03-12 Control device and control method Pending JP2020148122A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019045196A JP2020148122A (en) 2019-03-12 2019-03-12 Control device and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019045196A JP2020148122A (en) 2019-03-12 2019-03-12 Control device and control method

Publications (1)

Publication Number Publication Date
JP2020148122A true JP2020148122A (en) 2020-09-17

Family

ID=72429206

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019045196A Pending JP2020148122A (en) 2019-03-12 2019-03-12 Control device and control method

Country Status (1)

Country Link
JP (1) JP2020148122A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000199450A (en) * 1998-12-28 2000-07-18 Denso Corp Engine control device
WO2010109964A1 (en) * 2009-03-27 2010-09-30 ルネサスエレクトロニクス株式会社 Semiconductor integrated circuit device
JP2011241759A (en) * 2010-05-18 2011-12-01 Toyota Motor Corp Engine control device
JP2018178810A (en) * 2017-04-10 2018-11-15 株式会社デンソーテン Knocking controller, knocking adaptation method and knocking adaptation program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000199450A (en) * 1998-12-28 2000-07-18 Denso Corp Engine control device
WO2010109964A1 (en) * 2009-03-27 2010-09-30 ルネサスエレクトロニクス株式会社 Semiconductor integrated circuit device
JP2011241759A (en) * 2010-05-18 2011-12-01 Toyota Motor Corp Engine control device
JP2018178810A (en) * 2017-04-10 2018-11-15 株式会社デンソーテン Knocking controller, knocking adaptation method and knocking adaptation program

Similar Documents

Publication Publication Date Title
JP2015032316A (en) Data storage device and data maintenance method
CN108156635B (en) Mobile terminal, WIFI access point detection processing method and storage medium
CN114257474B (en) Power utilization control method and device for intelligent gateway, computer equipment and storage medium
CN107168740B (en) Terminal and control method of operating system thereof
JP2012187349A5 (en)
JP2020148122A (en) Control device and control method
JP4462147B2 (en) Signal output device and electronic control device
JP5556760B2 (en) Engine control device
JP2000199450A (en) Engine control device
JP2013084059A (en) Electronic control device
CN108090001B (en) Kernel DMA (direct memory access) steady-state scheduling method and device
JP2017133438A (en) Internal combustion engine fuel injection control device and fuel injection system
US6389353B2 (en) Electronic control apparatus and method for engines
JP2021163425A (en) Electronic control device
JPWO2020261365A5 (en) Semiconductor devices, control flow inspection methods, control flow inspection programs and electronic devices
CN111042934A (en) Vehicle starting control method, device, equipment and storage medium
JP2001227402A (en) On-vehicle electronic control device
EP2278459A1 (en) Faster computer boot method
JP4399997B2 (en) Engine control device
US8443180B2 (en) Method for operation system startup
JP2016162330A (en) Electronic controller
US20230376218A1 (en) Checkpointing
WO2021057304A1 (en) Control method and device for variable compression ratio engine
CN114483338B (en) Engine flameout control method, device and equipment and motorcycle
JP2018162756A (en) Internal combustion engine controller

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190328

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210930

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220825

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221108

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230425