JP7176341B2 - Information processing device for motor control - Google Patents
Information processing device for motor control Download PDFInfo
- Publication number
- JP7176341B2 JP7176341B2 JP2018191393A JP2018191393A JP7176341B2 JP 7176341 B2 JP7176341 B2 JP 7176341B2 JP 2018191393 A JP2018191393 A JP 2018191393A JP 2018191393 A JP2018191393 A JP 2018191393A JP 7176341 B2 JP7176341 B2 JP 7176341B2
- Authority
- JP
- Japan
- Prior art keywords
- control
- motor
- processor core
- memory
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Multi Processors (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Description
本発明は、モータ制御用の情報処理装置に関し、詳しくは、マルチコアプロセッサと、メモリと、を備えるモータ制御用の情報処理装置に関する。 The present invention relates to an information processing apparatus for motor control, and more particularly to an information processing apparatus for motor control that includes a multi-core processor and a memory.
従来、情報処理装置としては、マルチコアプロセッサ(マルチコアCPU)と、メモリ(RAM)と、を備えるものが提案されている(例えば、特許文献1参照)。メモリは、複数のブロックに分割され、ブロック毎にデータを記憶すると共に、複数のブロックの状態を示すポインタを記憶している。マルチコアプロセッサは、メモリにデータを書き込んだり、メモリからデータを読み出す複数のアプリケーションを実行する。マルチコアプロセッサは、メモリの複数のブロックについて、データを書き込むためのブロックと、データを読み出すためのブロックと、を適宜切り替える。これにより、複数のアプリケーションにおけるメモリのアクセス(データの読み書き)の競合を回避している。 2. Description of the Related Art Conventionally, an information processing apparatus has been proposed that includes a multi-core processor (multi-core CPU) and a memory (RAM) (see, for example, Patent Document 1). The memory is divided into a plurality of blocks, stores data for each block, and stores pointers indicating states of the plurality of blocks. Multi-core processors run multiple applications that write data to and read data from memory. The multi-core processor appropriately switches between a block for writing data and a block for reading data for a plurality of blocks of memory. This avoids memory access (data read/write) conflicts between multiple applications.
上述の情報処理装置では、2つのアプリケーションにおけるメモリのアクセスの競合を回避しているが、マルチコアプロセッサでは、複数のプロセッサコアでメモリのアクセス(データの読み書き)が競合することがある。例えば、マルチコアプロセッサが、モータを制御する制御処理を実行する制御側プロセッサコアと、メモリの異常を判定する異常判定を実行する判定側プロセッサコアと、を備える場合、制御側プロセッサコアがアクセスしているメモリの記憶領域に対して判定側プロセッサコアが異常判定を実行しようとすると、アクセスが競合してしまう。こうしたアクセスの競合は、回避されることが望ましい。 In the information processing apparatus described above, memory access conflicts between two applications are avoided, but in a multi-core processor, memory accesses (data reading and writing) may conflict between a plurality of processor cores. For example, if the multi-core processor includes a control-side processor core that executes control processing for controlling a motor, and a determination-side processor core that executes abnormality determination for determining an abnormality in the memory, the control-side processor core accesses If the processor core on the judgment side tries to execute the abnormality judgment for the storage area of the memory in which there is an access conflict. It is desirable to avoid such access conflicts.
本発明の制御側プロセッサコアと判定側プロセッサコアとを有するマルチコアプロセッサを備えるモータ制御用の情報処理装置において、制御側プロセッサコアのメモリへのアクセスと判定側プロセッサコアのメモリへのアクセスとの競合を回避することを主目的とする。 In an information processing apparatus for motor control provided with a multi-core processor having a control-side processor core and a determination-side processor core according to the present invention, conflict between access to memory of the control-side processor core and access to memory of the determination-side processor core The main purpose is to avoid
本発明の情報処理装置は、上述の主目的を達成するために以下の手段を採った。 The information processing apparatus of the present invention employs the following means in order to achieve the above main object.
本発明の情報処理装置は、
マルチコアプロセッサと、
前記マルチコアプロセッサによりアクセスされるメモリと、
を備え、モータの制御に用いられるモータ制御用の情報処理装置であって、
前記マルチコアプロセッサは、
前記メモリにアクセスしながら、前記モータの回転数に基づく制御周期毎に、前記モータを制御するための所定の制御処理を繰り返し実行する制御側プロセッサコアと、
前記メモリの検査対象領域に所定のデータを書き込んだあと、前記検査対象領域からデータを読み出し、前記所定のデータと前記読み出したデータとを比較して前記メモリに異常が生じているか否かを判定する異常判定を実行する判定側プロセッサコアと、
を有し、
前記判定側プロセッサコアは、前記制御周期が一定であり、且つ、前記制御側プロセッサコアが前記所定の制御処理を終了してから次に前記所定の制御処理を開始するまでの空き期間に前記異常判定を実行する、
ことを要旨とする。
The information processing device of the present invention includes:
a multi-core processor and
a memory accessed by the multi-core processor;
An information processing device for motor control used for controlling a motor, comprising:
The multi-core processor is
a control-side processor core that repeatedly executes a predetermined control process for controlling the motor in each control cycle based on the number of revolutions of the motor while accessing the memory;
After writing predetermined data to an inspection target area of the memory, data is read from the inspection target area, and the predetermined data and the read data are compared to determine whether or not an abnormality has occurred in the memory. a judgment-side processor core that executes an abnormality judgment to
has
The judging-side processor core has a constant control cycle, and the control-side processor core detects the abnormality during an idle period from when the control-side processor core ends the predetermined control processing to when it next starts the predetermined control processing. carry out the judgment
This is the gist of it.
この本発明の情報処理装置では、制御側プロセッサコアは、メモリにアクセスしながら、モータの回転数に基づく制御周期毎に、モータを制御するための所定の制御処理を繰り返し実行する。判定側プロセッサコアは、メモリの検査対象領域に所定のデータを書き込んだあと、検査対象領域からデータを読み出し、所定のデータと読み出したデータとを比較してメモリに異常が生じているか否かを判定する異常判定を実行する。判定側プロセッサコアは、制御周期が一定であり、且つ、制御側プロセッサコアが所定の制御処理を終了してから次に所定の制御処理を開始するまでの空き期間に異常判定を実行する。これにより、制御側プロセッサコアのメモリへのアクセスと判定側プロセッサコアのメモリへのアクセスとの競合を回避できる。 In the information processing apparatus of the present invention, the control-side processor core repeatedly executes predetermined control processing for controlling the motor in each control cycle based on the number of rotations of the motor while accessing the memory. After writing predetermined data to the inspection target area of the memory, the determination-side processor core reads the data from the inspection target area, compares the predetermined data with the read data, and determines whether or not there is an abnormality in the memory. Execute the abnormality determination to be determined. The determination-side processor core has a constant control cycle, and executes the abnormality determination during an idle period from when the control-side processor core ends a predetermined control process to when it next starts a predetermined control process. This makes it possible to avoid competition between access to the memory of the control-side processor core and access to the memory of the determination-side processor core.
こうした本発明の情報処理装置において、前記判定側プロセッサコアは、前記所定の制御処理において優先度が高いデータが記憶されている領域から順に前記異常判定を実行してもよい。こうすれば、優先度の高いデータから異常判定を実行することができる。 In such an information processing apparatus of the present invention, the determination-side processor core may perform the abnormality determination in order from the area storing data with the highest priority in the predetermined control process. In this way, abnormality determination can be performed from the data with the highest priority.
また、本発明の情報処理装置において、前記マルチコアプロセッサは、前記メモリにアクセスしながら前記制御周期より長い所定周期毎に前記モータを制御するためのモータ制御処理のうちの一部の処理を繰り返して実行する第1プロセッサコアと、前記所定の制御処理として前記モータ制御処理のうちの残部の処理を繰り返して実行する前記制御側プロセッサコアとしての第2プロセッサコアと、前記判定側プロセッサコアと、を有し、前記判定側プロセッサコアは、前記制御周期が一定であり、且つ、前記第1プロセッサコアが前記一部の処理を終了してから次に前記一部の処理を実行するまでの空き時間であり、且つ、前記第2プロセッサコアが前記残部の処理を終了してから次の前記残部の処理を実行するまでの空き時間のタイミングで前記異常判定を実行してもよい。こうすれば、第1,第2プロセッサコアが共に処理を実行していないタイミングで判定側プロセッサコアがメモリの異常判定を実行するから、第1,第2プロセッサコアのメモリへのアクセスと判定側プロセッサコアのメモリへのアクセスとが競合するのを回避できる。 Further, in the information processing apparatus of the present invention, the multi-core processor repeats part of motor control processing for controlling the motor at predetermined intervals longer than the control interval while accessing the memory. a first processor core to be executed, a second processor core as the control-side processor core to repeatedly execute the remainder of the motor control process as the predetermined control process, and the determination-side processor core. and the determination-side processor core has a constant control cycle, and an idle time from when the first processor core finishes the part of the processing until it next executes the part of the processing. and the abnormality determination may be performed at a timing of an idle time from when the second processor core finishes the processing of the remaining part to when it executes the next processing of the remaining part. In this way, since the judgment-side processor core executes memory abnormality judgment at the timing when both the first and second processor cores are not executing processing, access to the memory of the first and second processor cores and the judgment-side processor core are performed. Conflicts with processor core memory access can be avoided.
次に、本発明を実施するための形態を実施例を用いて説明する。 Next, a mode for carrying out the present invention will be described using examples.
図1は、本発明の一実施例としてのモータ制御用の情報処理装置を搭載したモータ装置20の構成の概略を示す構成図である。モータ装置20は、モータ22と、インバータ24と、昇圧コンバータ26と、バッテリ28と、電子制御ユニット30と、を備える。こうしたモータ装置20は、例えば、モータ22からの動力で走行する電気自動車などに搭載される。実施例では、電子制御ユニット30が「モータ制御用の情報処理装置」に相当する。
FIG. 1 is a configuration diagram showing an outline of the configuration of a
モータ22は、同期発電電動機として構成されており、永久磁石が埋め込まれた回転子と、三相コイルが巻回された固定子と、を備える。
The
インバータ24は、モータ22の駆動に用いられる。このインバータ24は、高電圧側電力ライン25を介して昇圧コンバータ26に接続されている。インバータ24は、パワー半導体素子である図示しない複数のトランジスタ(スイッチング素子)を備えている。モータ22は、高電圧側電力ライン25に電圧が作用しているときに、電子制御ユニット30によってインバータ24の複数のトランジスタがスイッチング制御されることにより、回転駆動される。
昇圧コンバータ26は、高電圧側電力ライン25と低電圧側電力ライン27とに接続されており、図示はしないが、スイッチング素子としての2つのトランジスタと、2つのトランジスタのそれぞれに並列に接続された2つのダイオードと、リアクトルと、を有する。昇圧コンバータ26は、電子制御ユニット30によって、2つのトランジスタのオン時間の割合が調節されることにより、低電圧側電力ライン27の電力を昇圧して高電圧側電力ライン25に供給したり、高電圧側電力ライン25の電力を降圧して低電圧側電力ライン27に供給したりする。
The
バッテリ28は、例えば定格電圧が200Vや250Vなどのリチウムイオン二次電池やニッケル水素二次電池として構成されており、低電圧側電力ライン27に接続されている。
The
電子制御ユニット30は、マルチコアマイコンとして構成されており、マルチコアプロセッサ32と、共有メモリ40と、タイマ42と、を備える。電子制御ユニット30は、その他に、図示しない処理プログラムや各種マップ等を記憶するROMや入出力ポートを備える。
The
マルチコアプロセッサ32は、プロセッサコア34a~34cと、レジスタ36a,36bと、を備える。プロセッサコア34a~34cは、中央処理演算装置(CPU)として機能し、バス50を介して、レジスタ36a,36bや共有メモリ40とデータをやり取りしたり、共有メモリ40に各種処理要求を出力している。
The
共有メモリ40は、各種データを一時的に記憶するランダムアクセスメモリとして構成されており、主記憶装置として機能する。共有メモリ40は、バス50を介してマルチコアプロセッサ32のプロセッサコア34a~34cがアクセス可能な共有バッファ40a~40bや各種アプリケーションを記憶する記憶領域などを備えている。
The shared
タイマ42は、フリーランニングカウンタとして構成されており、モータ装置20が起動してから所定時間毎にタイマ値Tをインクリメントする。
The
電子制御ユニット30には、各種センサからの信号が入力ポートを介して入力されている。電子制御ユニット30に入力される信号としては、電子制御ユニット30には、モータ22の回転子の回転位置を検出する回転位置検出センサ22aからの回転位置θmや、モータ22とインバータ24とを接続するV相,W相の電力ラインに取り付けられた電流センサ22b,22cからの相電流Iv,Iw,高電圧側電力ライン25の電圧を検出する電圧センサ25aからの電圧VH,低電圧側電力ライン27の電圧を検出する電圧センサ27aからの電圧VL,バッテリ28の状態(バッテリ電流やバッテリ電圧)を検出する各種センサからの検出値などを挙げることができる。各種センサからの信号値は、共有メモリ40に記憶される。
Signals from various sensors are input to the
電子制御ユニット30からは、各種制御信号が出力ポートを介して出力されている。電子制御ユニット30から出力される信号としては、インバータ24の各トランジスタへのスイッチング制御信号や昇圧コンバータの2つのトランジスタへのスイッチング制御信号などを挙げることができる。
Various control signals are output from the
こうして構成された実施例の情報処理装置を搭載したモータ装置20では、モータ22がトルク指令Tm*で駆動されるようにパルス幅変調制御(PWM制御)によりインバータ24の各トランジスタのスイッチング制御を行なう。また、モータ22をトルク指令Tm*で駆動できるように高電圧側電力ライン25の目標電圧VH*を設定し、高電圧側電力ライン25の電圧VHが目標電圧VH*となるように昇圧コンバータ26の2つのトランジスタのスイッチング制御を行なう。
In the
次に、こうして構成された実施例のモータ制御用の情報処理装置を搭載したモータ装置20の動作、特に、共有メモリ40の異常を検出する際の動作について説明する。図2は、マルチコアプロセッサ32のプロセッサコア34aにより実行される定周期処理ルーチンの一例を示すフローチャートである。定周期処理ルーチンは、所定時間X(例えば、数msec毎)毎に、実行される。
Next, the operation of the
定周期処理ルーチンが実行されると、プロセッサコア34aは、タイマ42のタイマ値Tを参照して、定周期処理の開始時刻T1sを取得する処理を実行する(ステップS100)。
When the periodic processing routine is executed, the
次に、モータ22のトルク指令Tm*を設定し共有メモリ40に書き込む(ステップS110)。トルク指令Tm*は、モータ装置20が電気自動車に搭載される場合には、アクセル開度と車速とに基づいて駆動輪に車軸を介して接続されている駆動軸に走行に要求される要求トルクが出力されるように設定される。
Next, a torque command Tm* for the
続いて、インバータ24をPWM制御する際のキャリア電圧の周期(以下、「キャリア周期」という。)Tc(キャリア周波数fcの逆数)を設定し、共有メモリ40に書き込む(ステップS120)。周期Tcは、モータ22の回転数Nmが所定回転数Nref(例えば、2000rpm,2500rpm,3000rpmなど)以下の低回転数領域では、一定の周期に設定される。周期Tcは、回転数Nmが所定回転数Nrefより高い中~高回転数領域では、回転数Nmが高いときに低いときに比して短くなるように、すなわち、回転数Nmが高いほど短くなるように設定される。なお、モータ22の回転数Nmは、共有メモリ40に記憶されている回転位置θmからプロセッサコア34bにより演算されて共有メモリ40に記憶されたものを読み出している。
Subsequently, a carrier voltage cycle (hereinafter referred to as a “carrier cycle”) Tc (reciprocal of the carrier frequency fc) for PWM control of the
こうしてキャリア周期Tcを設定すると、キャリア周期Tcが一定(時間変化がない)か否か(ステップS130)と、キャリア周波数fcが切り替えポイントであるか否か(ステップS140)と、を判定する。ステップS130では、前回定周期処理ルーチンが実行されたときに共有メモリ40に書き込まれたキャリア周期Tc(以下、「前回周期Tcpre」という)と、今回の定周期処理ルーチンのステップS120で設定されるキャリア周期Tcと、が一致しているときには、キャリア周期Tcが一定であると判定する。ステップS140では、モータ22の回転数Nmと、上述した低回転数領域と中~高回転数領域とを切り替える閾値である所定回転数Nrefと、の差の絶対値が判定用閾値dNm(例えば、80rpm,100rpm,120rpm)未満であるときには、キャリア周波数fcが切り替えポイントであると判定する。
After setting the carrier cycle Tc in this manner, it is determined whether the carrier cycle Tc is constant (no change over time) (step S130) and whether the carrier frequency fc is a switching point (step S140). In step S130, the carrier period Tc (hereinafter referred to as "previous period Tcpre") written in the shared
ステップS130でキャリア周期Tcが一定であり、且つ、ステップS140でキャリア周波数fcが切り替えポイントではないときには、しばらくキャリア周期Tcに変化がないと判断して、プロセッサコア34bにより実行されるフィードバック処理で共有メモリ40に記憶された開始時刻T2sを取得する(ステップS150)。ここで、フィードバック処理について説明する。
When the carrier cycle Tc is constant in step S130 and the carrier frequency fc is not the switching point in step S140, it is determined that the carrier cycle Tc does not change for a while, and is shared in the feedback processing executed by the
図3は、プロセッサコア34bにより実行されるフィードバック処理ルーチンの一例を示すフローチャートである。フィードバック処理ルーチンは、キャリア周期Tc(例えば、数百μsec)毎に実行される。
FIG. 3 is a flow chart showing an example of a feedback processing routine executed by the
フィードバック処理ルーチンが実行されると、プロセッサコア34bは、タイマ42のタイマ値Tを参照して、フィードバック処理の開始時刻T2sを取得する処理を実行する(ステップS300)。次に、直前開始時刻T2sjbを共有メモリ40の共有バッファ40a~40cのいずれかへ書き込む(ステップS310)。
When the feedback process routine is executed, the
そして、インバータ24の各トランジスタをスイッチング制御するためのPWM信号を生成する(ステップS320)。PWM信号の生成方法は、以下の通りである。プロセッサコア34bは、回転位置θmに基づくモータ22の電気角θeを用いてU相,V相,W相の相電流Iu(=0-Iv-Iw),Iv,Iwをd軸,q軸の電流Id,Iqに座標変換(3相-2相変換)する。続いて、モータ22のトルク指令Tm*に基づいてd軸,q軸の電流指令Id*,Iq*を設定する。そして、d軸,q軸の電流指令Id1*,Iq1*とd軸,q軸の電流Id1,Iq1との差分ΔId1,ΔIq1が値0に近づくように電流フィードバック制御によってd軸,q軸の電圧指令Vd*,Vq*を設定する。そして、モータ22の電気角θeを用いてd軸,q軸の電圧指令Vd*,Vq*を各相の電圧指令Vu*,Vv*,Vw*に座標変換(2相-3相変換)し、各相の電圧指令Vu*,Vv*,Vw*と三角波(搬送波、キャリア)電圧との比較によりインバータ24の各トランジスタのPWM信号を生成する。
Then, it generates a PWM signal for controlling switching of each transistor of the inverter 24 (step S320). A method of generating the PWM signal is as follows. The
PWM信号を生成すると、生成したPWM信号を用いてインバータ24の各トランジスタのスイッチング制御を実行して(ステップS330)、フィードバック処理を終了する。
When the PWM signal is generated, switching control of each transistor of the
プロセッサコア34bにより実行されるフィードバック処理ルーチンの実行間隔(キャリア周期Tc)は、プロセッサコア34aにより実行される定周期処理ルーチンの実行間隔(所定時間X)より短い。そのため、フィードバック処理ルーチンは、定周期処理ルーチンが1回実行される間に複数回実行され、定周期処理ルーチンが1回実行される間に共有メモリ40の共有バッファ40a~40cには複数の開始時刻T2sが書き込まれる。図2に例示した定周期処理ルーチンのステップS150は、こうして共有バッファ40a~40cに書き込まれた複数の開始時刻T2sのうち、ステップS150を実行する直前に記憶された開始時刻T2sを直前開始時刻T2sjbとして取得する。
The execution interval (carrier cycle Tc) of the feedback processing routine executed by the
ステップS150で直前開始時刻T2sjbを取得すると、定周期処理ルーチンとフィードバック処理ルーチンの各ステップが実行されていない空き期間をチェック可能期間T3(l)(nは自然数)に設定し、チェック可能期間T3(l)を共有メモリ40に書き込む(ステップS160)。空き期間の導出方法は、下記の通りである、最初に、定周期処理ルーチンのステップS100で取得した開始時刻T1sと予め定めた定周期処理ルーチンの各ステップを実行して処理を終了するまでに要する時間T1refから、現在の定周期処理ルーチンの終了時刻T1eを演算する。次に、ステップS150で取得した直前開始時刻T2sjbと予め定めたフィードバック処理ルーチンのステップS300~S330を終了するまでに要する時間とフィードバック処理ルーチンに実行間隔(キャリア周期Tc)から、終了時刻T1eから次の定周期処理ルーチンが開始されるまでの時刻T1ns(=T1s+X)までの間にフィードバック処理ルーチンが実行されている期間T2exe(m)を演算する。「m」は、値0以上の整数である。今、定周期処理ルーチンが1回実行される間にフィードバック処理ルーチンは1回以上実行されることから、期間T2exeは、1つ以上設定される。そして、定周期処理ルーチンの各処理の終了時刻T1eから次の定周期処理ルーチンの開始時刻T1nsまでの間で期間T2exeではない期間を、チェック可能期間T3(l)(lは自然数)とする。「l」は、値0以上の整数である。 When the immediately preceding start time T2sjb is obtained in step S150, an idle period in which each step of the fixed period processing routine and the feedback processing routine is not executed is set as the checkable period T3(l) (n is a natural number), and the checkable period T3 is set. (l) is written in the shared memory 40 (step S160). The method of deriving the vacant period is as follows. The end time T1e of the current periodic processing routine is calculated from the required time T1ref. Next, from the immediately preceding start time T2sjb acquired in step S150, the time required to end steps S300 to S330 of the predetermined feedback processing routine, and the execution interval (carrier cycle Tc) of the feedback processing routine, A period T2exe(m) during which the feedback processing routine is executed until time T1ns (=T1s+X) before the periodic processing routine is started is calculated. “m” is an integer with a value of 0 or greater. Since the feedback process routine is executed one or more times while the periodic process routine is executed once, one or more periods T2exe are set. A period other than the period T2exe from the end time T1e of each process of the periodic processing routine to the start time T1ns of the next periodic processing routine is defined as a checkable period T3(l) (l is a natural number). "l" is an integer with a value of 0 or greater.
こうしてチェック可能期間T3(l)を設定すると、チェック可能期間T3(l)毎に、1回の異常判定の対象とする共有メモリ40の記憶容量(判定容量)Mcと異常判定の対象とする領域(判定領域)Acとを設定して、共有メモリ40に書き込み(ステップS170)、チェック可否フラグFcを値1に設定して共有メモリ40に書き込んで(ステップS180)、定周期処理ルーチンを終了する。ステップS170では、判定領域Acは、共有メモリ40に記憶されるデータに対して予め異常判定を実行する際の優先度を設定する。
When the checkable period T3(l) is set in this way, the storage capacity (determination capacity) Mc of the shared
図4は、優先度とデータの種類との関係の一例を示す説明図である。優先度は、実施例では、優先度が高い順に、優先度1~5の5段階で設定している。
FIG. 4 is an explanatory diagram showing an example of the relationship between priority and data type. In the embodiment, the priority is set in five levels of
優先度の最も高い「優先度1」のデータとしては、PWM制御の出力に比較的強く寄与する情報、例えば、トルク指令Tm*やモータ22の回転数Ne,キャリア周波数fc,生成したPWM信号の出力指令,各相の電圧指令Vu*,Vv*,Vw*,d軸,q軸の電流指令Id*,Iq*,V相,W相の相電流Iv,Iw,モータ22の電気角θeなどを挙げることができる。その他にも、d軸,q軸の電圧指令Vd*,Vq*に基づく指令電圧のベクトル位相やベクトル振幅や高電圧側電力ライン25の電圧VH,昇圧コンバータ26をPWM制御する際のキャリア周期Tcdなどを挙げることができる。
The data with the highest priority "
「優先度2」のデータとしては、PWM制御の出力に寄与するが優先度1の情報よりPWM制御の出力への寄与の程度が低い情報、例えば、d軸,q軸の電圧指令Vd*,Vq*や低電圧側電力ライン27の電圧VL,昇圧コンバータ26のリアクトルに流れるリアクトル電流などを挙げることができる。その他にも、半周期毎の電流サンプリングの回数である電流サンプリング倍率やd軸,q軸の電流Id,Iqからマップを用いて得られるトルク推定値,目標電圧VH*,PWM制御モードや矩形波制御などの複数の制御モードのいずれかでインバータ24を制御する場合にはどの制御モードでインバータ24を制御しているかについての情報である制御状態などを挙げることができる。
As the data of "
「優先度3」のデータとしては、各種センサにより検出される温度や状態フラグを挙げることができる。各種センサにより検出される温度としては、インバータ24を冷却するための冷却水の温度を検出する温度センサからの冷却水温やインバータ24を構成するトランジスタの温度を検出する温度センサからの素子温度などを挙げることができる。状態フラグとしては、モータ22の回転数Neが急変しているか否かを示す回転数急変状態フラグやシフト位置検出センサからのシフト位置などを挙げることができる。
Data of "
「優先度4」のデータとしては、学習に用いられる情報を挙げることができる。学習に用いられる情報としては、モータ22の回転数を検出する回転位置検出センサ22aのオフセット値の学習で得られたオフセット値やその学習の実施状態、V相,W相の相電流Iv,Iwを検出する電流センサ22b,22cのオフセット値の学習で得られたオフセット値やその学習の実施状態、温度センサのオフセット値の学習の実施状態などを挙げることができる。
The data of "
「優先度5」のデータとしては、モータ装置20の異常状態を示す情報などを挙げることができる。異常状態を示す情報としては、モータ22やインバータ24を冷却する冷却系の異常状態やその他の各種異常状態などを挙げることができる。
Data of “
ステップS130でキャリア周期Tcが一定でなかったり、ステップS130でキャリア周期Tcが一定であってもステップS140でキャリア周波数fcが切り替えポイントであるときには、キャリア周期Tcが今後変化する可能性が高いため、直前開始時刻T2sjbを用いて定周期処理ルーチン,フィードバック処理ルーチンの各ステップを実行していない空き期間を適正に演算できない可能性が高い。この場合は、チェック可否フラグFcを値0に設定して共有メモリ40に書き込み(ステップS190)、チェック可能期間T3(l)を初期化して(ステップS200)、定周期処理ルーチンを終了する。 If the carrier cycle Tc is not constant in step S130, or if the carrier frequency fc is the switching point in step S140 even if the carrier cycle Tc is constant in step S130, there is a high possibility that the carrier cycle Tc will change in the future. There is a high possibility that the vacant period in which each step of the periodic processing routine and the feedback processing routine is not executed cannot be properly calculated using the immediately preceding start time T2sjb. In this case, the checkability flag Fc is set to 0 and written to the shared memory 40 (step S190), the checkable period T3(l) is initialized (step S200), and the periodic processing routine ends.
図5は、プロセッサコア34cにより実行される異常判定処理ルーチンの一例を示すフローチャートである。異常判定処理ルーチンは、上述したチェック可否フラグFcが値1に設定されているときに、キャリア周期Tcと同一の周期で繰り返し実行される。
FIG. 5 is a flowchart showing an example of an abnormality determination processing routine executed by the
異常判定処理ルーチンが実行されると、プロセッサコア34cは、共有メモリ40に書き込まれているチェック可能期間T3(l)を読み出す処理を実行する(ステップS400)。そして、タイマ42のタイマ値Tを参照して、今がチェック可能期間T3(l)であるか否かを判定する(ステップS410)。今がチェック可能期間T3(l)でないときには、異常判定処理ルーチンを終了する。
When the abnormality determination processing routine is executed, the
ステップS410で今がチェック可能期間T3(l)であるときには、チェック可能期間T3(l)に対応する共有メモリ40の判定容量Mc,判定領域Acに対して異常が生じているか否かを判定する異常判定を実行する(ステップS420)。異常判定は、共有メモリ40に記憶されているデータを書き換えることができない異常(メモリ固着)を判定するものとし、以下の方法で実行される。最初に、共有メモリ40の判定領域Acに記憶されているデータを判定容量Mc分読み出して、レジスタ36aに退避させる。続いて、データを読み出した判定領域Acに確認データDcを書き込む。確認データDcは、共有メモリ40をチェックする際のデータとして予め定めたデータである。そして、判定領域AcからデータDrをレジスタ36bに読み出し、確認データDcとレジスタ36bから読み出したデータDrとを比較する。判定領域Acが正常であるときには、確認データDcとデータDrとは一致する。したがって、確認データDcとデータDrとが一致しているときには共有メモリ40が正常であると判定し、確認データDcとデータDrとが一致していないときには共有メモリ40に異常(メモリ固着)が発生していると判定する。その後、レジスタ36aに退避させていた元のデータを共有メモリ40の判定領域Acに復帰させる。
When it is the checkable period T3(l) in step S410, it is determined whether or not there is an abnormality in the determination capacity Mc and the determination area Ac of the shared
ステップS420で共有メモリ40の判定領域Acに記憶されている判定容量Mcのデータが正常であるときには(ステップS430)、異常判定処理ルーチンを終了する。
When the data in the determination capacity Mc stored in the determination area Ac of the shared
ステップS420で共有メモリ40の判定領域Acに記憶されている判定容量Mcのデータに異常が発生しているときには(ステップS430)、共有メモリ40に異常が発生しているときに実行される所定のダイアグ判定処理を実行して(ステップS440)、異常判定処理ルーチンを終了する。
In step S420, when an abnormality occurs in the data of the determination capacity Mc stored in the determination area Ac of the shared memory 40 (step S430), a predetermined process executed when the shared
図6は、プロセッサコア34a~34cの動作の一例を示すタイミングチャートである。図中、「定周期処理ルーチン」でハッチングが施されている領域は、定周期処理ルーチンのステップS130,S140が実行されている期間と、ステップS180が実行されている期間を示している。「チェック可能期間(T3(l))」でハッチングが施されている領域は、定周期処理ルーチンでチェック可能期間T3(l)に設定された期間を示している。「異常判定処理ルーチン」でハッチングが施されている領域は、異常判定処理ルーチンが実行されている期間を示している。
FIG. 6 is a timing chart showing an example of operations of the
プロセッサコア34bのフィードバック処理ルーチンが実行されると、図示するように、実行のたび(キャリア周期Tc毎)に、共有メモリ40の共有バッファ40a~40cに、フィードバック処理ルーチンの実行が開始された時刻(図中、T2s(m),T2s(m+1),T2s(m+2)など)が書き込まれる。
When the feedback processing routine of the
プロセッサコア34aの定周期処理ルーチンでは、キャリア周期Tcが前回値から変化するとき(図中、周期T1から周期T2へ変化するとき)には、チェック可否フラグFcを値0に設定する(ステップS190)。チェック可否フラグFcが値0に設定されると、プロセッサコア34cの異常判定ルーチンが実行されないから、共有メモリ40の異常判定が実行されない。
In the constant cycle processing routine of the
キャリア周期Tcが一定であるとき(周期Tc2で一定であるとき)には、ステップS150を実行する直前に共有メモリ40の共有バッファに書き込まれた直前開始時刻T2sjb(図中、T2s(m+7))を取得し(ステップS150)、定周期処理ルーチンとフィードバック処理ルーチンの各ステップが実行されていない空き期間を共有メモリ40のチェック可能期間T3(l)(nは自然数)に設定し、チェック可能期間T3(l)を共有メモリ40に書き込み(ステップS160)、判定容量Mc,判定領域Acを設定し(ステップS170)、チェック可否フラグFcを値1に設定する(ステップS180)。チェック可否フラグFcが値1に設定されると、プロセッサコア34cの異常判定ルーチンが実行され、チェック可能期間T3(l)で共有メモリ40の記憶領域のうち図4に例示した優先度の高いデータが記憶されている記憶領域から順に異常判定処理ルーチンが実行される。このように、キャリア周期Tcが一定であったり、キャリア周波数fcが切り変わらない期間であって、プロセッサコア34a,34bが定周期処理ルーチン,フィードバック処理を実行していない空き期間に、プロセッサコア34cは共有メモリ40の異常判定を実行するから、プロセッサコア34a,34bの共有メモリ40へのアクセスとプロセッサコア34cの共有メモリ40へのアクセスとの競合を回避することができる。また、共有メモリ40の記憶領域のうち優先度の高いデータが記憶されている記憶領域から順に異常判定を実行するから、より適正にモータ装置20やモータ装置20が搭載されている電気自動車を作動させることができる。
When the carrier cycle Tc is constant (when the carrier cycle Tc2 is constant), the immediately preceding start time T2sjb (T2s(m+7) in the figure) written in the shared buffer of the shared
以上説明した実施例のモータ制御用の情報処理装置によれば、プロセッサコア34cは、キャリア周期(制御周期)Tcが一定であり、且つ、フィードバック処理を終了して次にフィードバック処理を開始するまでの空き期間に共有メモリ40の異常判定を実行することにより、プロセッサコア34bの共有メモリ40へのアクセスとプロセッサコア34cの共有メモリ40へのアクセスとが競合することを回避することができる。
According to the information processing apparatus for motor control of the embodiment described above, the
実施例のモータ制御用の情報処理装置では、プロセッサコア34aは、優先度の高いデータが記憶されているメモリの記憶領域から順に異常判定を実行している。しかしながら、優先度を考慮せずに、例えば、共有メモリ40のアドレスの小さい領域から順に異常判定を実行するなど、共有メモリ40のどの領域から順番に異常判定を実行するかについては適宜定めることができる。また、共有メモリ40の全ての領域に対して異常判定を実行しなくてもよく、共有メモリ40の予め定めた一部の領域のみに異常判定を実行してもよい。
In the information processing apparatus for motor control of the embodiment, the
実施例のモータ制御用の情報処理装置では、インバータ24のPWM制御をプロセッサコア34a,34bで分担して実行しているが、プロセッサコア34bで全ての処理を実行しても構わないし、3つ以上のプロセッサコアで分担して実行してもよい。
In the information processing apparatus for motor control of the embodiment, the PWM control of the
実施例では、本発明のモータ制御用の情報処理装置を、電気自動車に搭載されるモータ装置20に適用しているが、電気自動車とは異なる他の装置に搭載されるモータ装置20に適用してもよいし、モータ装置20単体に適用してもよい。
In the embodiments, the information processing device for motor control of the present invention is applied to the
実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、マルチコアプロセッサ32が「マルチコアプロセッサ」に相当し、共有メモリ40が「メモリ」に相当し、プロセッサコア34bが「制御側プロセッサコア」に相当し、プロセッサコア34cが「判定側プロセッサコア」に相当する。
The correspondence relationship between the main elements of the embodiments and the main elements of the invention described in the column of Means for Solving the Problems will be described. In the embodiment, the
なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。 Note that the correspondence relationship between the main elements of the examples and the main elements of the invention described in the column of Means for Solving the Problems is the Since it is an example for specifically explaining the mode for solving the problem, it does not limit the elements of the invention described in the column of the means for solving the problem. That is, the interpretation of the invention described in the column of Means to Solve the Problem should be made based on the description in that column, and the Examples are based on the description of the invention described in the column of Means to Solve the Problem. This is only a specific example.
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。 Although the embodiments for carrying out the present invention have been described above, the present invention is not limited to such embodiments at all, and can be modified in various forms without departing from the scope of the present invention. Of course, it can be implemented.
本発明は、モータ制御用の情報処理装置の製造産業などに利用可能である。 INDUSTRIAL APPLICABILITY The present invention is applicable to the manufacturing industry of information processing devices for motor control.
20 モータ装置、22 モータ、22a 回転位置検出センサ、22b、22c 電流センサ、24 インバータ、25 高電圧側電力ライン、25a,27a 電圧センサ、26 昇圧コンバータ、27 低電圧側電力ライン、26 昇圧コンバータ、28 バッテリ、30 電子制御ユニット、32 マルチコアプロセッサ、32a,32b,32c プロセッサコア、36a,36b レジスタ、40 共有メモリ、40a 共有バッファ、42 タイマ、50 バス。 20 motor device, 22 motor, 22a rotational position detection sensor, 22b, 22c current sensor, 24 inverter, 25 high-voltage power line, 25a, 27a voltage sensor, 26 boost converter, 27 low-voltage power line, 26 boost converter, 28 battery, 30 electronic control unit, 32 multi-core processor, 32a, 32b, 32c processor cores, 36a, 36b registers, 40 shared memory, 40a shared buffer, 42 timer, 50 bus.
Claims (1)
前記マルチコアプロセッサによりアクセスされるメモリと、
を備え、モータの制御に用いられるモータ制御用の情報処理装置であって、
前記マルチコアプロセッサは、
前記メモリにアクセスしながら、前記モータの回転数に基づく制御周期毎に、前記モータを制御するための所定の制御処理を繰り返し実行する制御側プロセッサコアと、
前記メモリの検査対象領域に所定のデータを書き込んだあと、前記検査対象領域からデータを読み出し、前記所定のデータと前記読み出したデータとを比較して前記メモリに異常が生じているか否かを判定する異常判定を実行する判定側プロセッサコアと、
を有し、
前記判定側プロセッサコアは、前記制御周期が一定であり、且つ、前記制御側プロセッサコアが前記所定の制御処理を終了してから次に前記所定の制御処理を開始するまでの空き期間に前記異常判定を実行する、
モータ制御用の情報処理装置。 a multi-core processor and
a memory accessed by the multi-core processor;
An information processing device for motor control used for controlling a motor, comprising:
The multi-core processor is
a control-side processor core that repeatedly executes a predetermined control process for controlling the motor in each control cycle based on the number of revolutions of the motor while accessing the memory;
After writing predetermined data to an inspection target area of the memory, data is read from the inspection target area, and the predetermined data and the read data are compared to determine whether or not an abnormality has occurred in the memory. a judgment-side processor core that executes an abnormality judgment to
has
The judging-side processor core has a constant control cycle, and the control-side processor core detects the abnormality during an idle period from when the control-side processor core ends the predetermined control processing to when it next starts the predetermined control processing. carry out the judgment
Information processing device for motor control.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018191393A JP7176341B2 (en) | 2018-10-10 | 2018-10-10 | Information processing device for motor control |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018191393A JP7176341B2 (en) | 2018-10-10 | 2018-10-10 | Information processing device for motor control |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020060928A JP2020060928A (en) | 2020-04-16 |
JP7176341B2 true JP7176341B2 (en) | 2022-11-22 |
Family
ID=70220808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018191393A Active JP7176341B2 (en) | 2018-10-10 | 2018-10-10 | Information processing device for motor control |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7176341B2 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004133635A (en) | 2002-10-09 | 2004-04-30 | Honda Motor Co Ltd | Control computer |
JP2010186242A (en) | 2009-02-10 | 2010-08-26 | Mitsubishi Electric Corp | Computer system |
JP2011141992A (en) | 2010-01-06 | 2011-07-21 | Nec Lighting Ltd | Lighting fixture and water tank |
JP2017097633A (en) | 2015-11-25 | 2017-06-01 | 日立オートモティブシステムズ株式会社 | Vehicle controller |
JP2018013816A5 (en) | 2016-07-19 | 2019-01-10 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2011141992A1 (en) * | 2010-05-10 | 2013-07-22 | トヨタ自動車株式会社 | Failure diagnosis apparatus and failure diagnosis method |
JP6698455B2 (en) * | 2016-07-19 | 2020-05-27 | 三菱電機株式会社 | Memory diagnostic device |
-
2018
- 2018-10-10 JP JP2018191393A patent/JP7176341B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004133635A (en) | 2002-10-09 | 2004-04-30 | Honda Motor Co Ltd | Control computer |
JP2010186242A (en) | 2009-02-10 | 2010-08-26 | Mitsubishi Electric Corp | Computer system |
JP2011141992A (en) | 2010-01-06 | 2011-07-21 | Nec Lighting Ltd | Lighting fixture and water tank |
JP2017097633A (en) | 2015-11-25 | 2017-06-01 | 日立オートモティブシステムズ株式会社 | Vehicle controller |
US20180253390A1 (en) | 2015-11-25 | 2018-09-06 | Hitachi Automotive Systems, Ltd. | Vehicle Control Device |
JP2018013816A5 (en) | 2016-07-19 | 2019-01-10 |
Also Published As
Publication number | Publication date |
---|---|
JP2020060928A (en) | 2020-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7589486B2 (en) | Control system for multiphase rotary electric machines | |
US8390223B2 (en) | Control device for electric motor drive device | |
KR100639606B1 (en) | Washing machine motor drive device | |
US9853570B2 (en) | Parallel inverter scheme for separating conduction and switching losses | |
US20070296371A1 (en) | Position sensorless control apparatus for synchronous motor | |
JP5910583B2 (en) | AC motor control device | |
US20130015803A1 (en) | Methods, systems and apparatus for reducing power loss in an electric motor drive system | |
JP4238497B2 (en) | Motor drive device for washing machine | |
US20200136537A1 (en) | Motor control apparatus and motor control method | |
JP5703174B2 (en) | FAILURE DIAGNOSIS METHOD AND DEVICE FOR CURRENT DETECTOR | |
JP2017201859A (en) | Control device for rotary electric machine | |
JP7176341B2 (en) | Information processing device for motor control | |
CN108429502B (en) | Parameter identification method, device and system of permanent magnet synchronous motor | |
JP2012244740A (en) | Drive unit | |
CN112534706B (en) | Position estimation method, motor control device, and motor system | |
CN112514238B (en) | Position estimation method, motor control device, and motor system | |
JP5997582B2 (en) | Motor control device | |
CN110086394B (en) | Control device | |
JP5897450B2 (en) | Motor control device | |
JP2016127759A (en) | Rotary electric machine controller | |
JP2020089054A (en) | Electric vehicle | |
CN112514237B (en) | Position estimation method, motor control device, and motor system | |
JPWO2020100234A1 (en) | Motor control device, actuator device and motor control method | |
CN112544034B (en) | Position estimation method, motor control device, and motor system | |
CN112534707B (en) | Position estimation method, motor control device, and motor system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20200626 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200708 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210921 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220824 |
|
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: 20221011 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221024 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7176341 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |