JP2004173371A - Motor controller - Google Patents

Motor controller Download PDF

Info

Publication number
JP2004173371A
JP2004173371A JP2002334230A JP2002334230A JP2004173371A JP 2004173371 A JP2004173371 A JP 2004173371A JP 2002334230 A JP2002334230 A JP 2002334230A JP 2002334230 A JP2002334230 A JP 2002334230A JP 2004173371 A JP2004173371 A JP 2004173371A
Authority
JP
Japan
Prior art keywords
motor
mpu
command value
communication line
serial communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002334230A
Other languages
Japanese (ja)
Other versions
JP4023301B2 (en
Inventor
Hiroshi Suzuki
浩 鈴木
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.)
Toyoda Koki KK
Original Assignee
Toyoda Koki KK
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 Toyoda Koki KK filed Critical Toyoda Koki KK
Priority to JP2002334230A priority Critical patent/JP4023301B2/en
Publication of JP2004173371A publication Critical patent/JP2004173371A/en
Application granted granted Critical
Publication of JP4023301B2 publication Critical patent/JP4023301B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)
  • Safety Devices In Control Systems (AREA)
  • Control Of Electric Motors In General (AREA)
  • Power Steering Mechanism (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a motor controller which can secure a reliability in motor drive control. <P>SOLUTION: This motor controller is equipped with an analog communication line Lc2 separately from a serial communication line Lc1. Then, the second MPU22 performs the determination about whether serial communication is performed normally or not, and when the serial communication is performed normally, it controls the drive of an electric motor 3, based on a motor command value S1 sent by the serial communication line Lc1. In the case that the serial communication is abnormal, the second MPU22 controls the drive of the electric motor 3, based on a motor command value S2 sent by the analog communication line Lc2. Therefore, even in the case that the serial communication between the first MPU and the second MPU is not performed normally, it can continue the drive control of the electric motor 3. Therefore, it can improve the reliability on the motor drive control. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、分散型のモータ制御装置に関するものである。
【0002】
【従来の技術】
従来より、分散型のモータ制御装置としては、2つのMPU間のデータ通信をシリアル通信で行うようにしたもの(以下、「第1の従来技術」という。)と、パラレル通信で行うようにしたもの(以下、「第2の従来技術」という。)とが知られている。
【0003】
(第1の従来技術)
まず、2つのMPU間のデータ通信をシリアル通信で行うようにした従来のモータ制御装置について説明する。図12に示すように、例えば電動パワーステアリング装置のモータ制御装置100は、操舵トルクT及び車速V等に基づいてモータ指令値を演算する第1のMPU(Micro Processing Unit)101と、この第1のMPU101により算出されたモータ指令値に基づいてモータ102を駆動する第2のMPU103とを備えている。第1のMPU101のシリアルポート101aと第2のMPU103のシリアルポート103aとの間はシリアル通信ライン104により相互に接続されている。
【0004】
図13(a)に示すように、第1のMPU101はまず各種のセンサにより検出されたセンサ信号を読み込む。即ち、トルクセンサ(図示略)により検出された操舵トルクT及び車速センサ(図示略)により検出された車速Vを読み込む(S501)。次に、第1のMPU101は、操舵トルクT及び車速Vに基づいて予め記憶された特性マップを参照してモータ指令値(アシスト指令電流値)を演算する(S502)。そして、第1のMPU101は算出したモータ指令値(例えば8ビットのデータ)をシリアル通信ライン104により第2のMPU103へ送る(S503)。モータ指令値は直列的に1ビットずつ第2のMPU103へ送られる。以後、第1のMPU101はS501〜S503の処理を所定の制御周期毎に繰り返す。
【0005】
一方、第2のMPU103においては、次のような処理が行われる。即ち、図13(b)に示すように、第2のMPU103はまずシリアル通信が正常に行われているか否かを判断する(S601)。例えば第2のMPU103はチェックサム等によりシリアル通信の正常異常を判定する。そして、シリアル通信が正常に行われていると判断したとき(S601でYES)、第2のMPU103はシリアル通信ライン104により送られてきたデータ、即ちモータ指令値を受信し(S602)、この受信したモータ指令値に基づいてモータ102を駆動制御する。
【0006】
シリアル通信が正常に行われていないと判断したとき(S601でNO)、第2のMPU103はモータ102の駆動制御を停止する(S604)。リアル通信が異常の場合、第2のMPU103へのデータ送信が途切れ、第2のMPU103はモータ指令値(目標値)を認識不能となる。そして、モータ指令値が不明な状態でモータ102が駆動制御された場合、当該モータ102は予期しない挙動を示すおそれがある。このため、モータ102を停止させるのである。以後、第2のMPU103はS601及びS602の処理を所定の制御周期毎に繰り返す。
【0007】
(第2の従来技術)
次に、2つのMPU間のデータ通信をパラレル通信で行うようにした従来のモータ制御装置について説明する。この第2の従来技術のモータ制御装置は2つのMPU間のデータ通信をパラレル通信で行うようにした点で前記第1の従来技術と異なる。従って、前記第1の従来技術と同様の構成については同一の符号を付し、その詳細な説明を省略する。
【0008】
図14に示すように、第1のMPU101のパラレルポート101bと第2のMPU103のパラレルポート103bとの間はパラレル通信ライン105により相互に接続されている。モータ指令値は8ビットのデータであるので、パラレル通信ライン105は8本のデータラインD0〜D7を備えている。
【0009】
図15(a)に示すように、まず第1のMPU101は各種のセンサにより検出されたセンサ信号を読み込む。即ち、トルクセンサ(図示略)により検出された操舵トルクT及び車速センサ(図示略)により検出された車速Vを読み込む(S701)。次に、第1のMPU101は、操舵トルクT及び車速Vに基づいて予め記憶された特性マップを参照してモータ指令値(アシスト指令電流値)を演算する(S702)。そして、第1のMPU101は算出したモータ指令値をパラレルポート101bにセットして処理を終了する。第1のMPU101により算出されたモータ指令値は各データラインD0〜D7によりビット毎に第2のMPU103へ送られる。以後、第1のMPU101はS701〜S703の処理を所定の制御周期毎に繰り返す。
【0010】
一方、第2のMPU103においては、次のような処理が行われる。即ち、図15(b)に示すように、第2のMPU103はまず第1のMPU101から送られてきたモータ指令値をパラレルポート103bにラッチ(保持)、即ち受信する(S801)。そして、第2のMPU103は受信したモータ指令値に基づいてモータ102を駆動制御する(S802)。以後、第2のMPU103はS801及びS802の処理を所定の制御周期毎に繰り返す。
【0011】
【発明が解決しようとする課題】
(第1の従来技術)
ところが、2つのMPU間のデータ通信をシリアル通信で行うようにした前記従来のモータ制御装置においては、シリアル通信が正常に行われていないと判断したときにはモータ102の駆動制御を停止するようにしていた。これにより、モータ102の予期しない挙動は回避できるものの、モータ駆動制御の信頼性が損なわれるという問題があった。このモータ制御装置が例えば電動パワーステアリング装置に使用されている場合、モータ102が停止されることにより操舵性能が著しく低下する。
【0012】
(第2の従来技術)
一方、2つのMPU間のデータ通信をパラレル通信で行うようにした前記従来のモータ制御装置においては、次のような問題があった。即ち、電動パワーステアリング装置で使用されている分散型のモータ制御装置は小型化の傾向にあり、これに伴って、シグナル系とパワー系との干渉に起因して信号にスイッチングノイズ等の各種ノイズが重畳しやすくなる。そして、第1のMPU101により算出されたモータ指令値を8ビットのパラレル通信ライン105で第2のMPU103へ送る際、ノイズが発生したタイミングでデータが第2のMPU103のパラレルポート103bにラッチされると、第2のMPU103は「0」を「1」又は「1」を「0」と誤認識する。換言すれば、いわゆるビット化けが発生する。この結果、第2のMPU103は、正しいモータ指令値を受け取ることができない。
【0013】
第1のMPU101により算出されたモータ指令値を例えば「+100」とした場合、これを符号付の2進数で表すと「01100100(B)」となる。ここで、最上位ビットは正負(+,−)を示す符号ビットであり、最上位から2桁目以降が数値を示す数値ビットとなる。ちなみに、正は「0」、負は「1」で示される。このモータ指令値の各ビットはパラレル通信ライン105の8本のデータラインD0〜D7によりそれぞれ第2のMPU103へ送られる。
【0014】
そして、このモータ指令値の送信時において、上位ビット(例えば上位4ビット「0110」)のうち最上位から2桁目以降のいずれかの数値ビットにビット化けが発生すると、第2のMPU103は誤認識した過剰なモータ指令値に基づいてモータ102を駆動制御する。
【0015】
例えば第1のMPU101により算出されたモータ指令値を「+36=00100100(B)」とした場合に最上位から2桁目がビット化けすると、第2のMPU103はモータ指令値を「01100100(B)」と誤認識する。これは10進数で表すと+100であり、本来のモータ指令値「+36」に比べて過大な値となる。
【0016】
また、図16に示すように、例えばモータ指令値の最上位ビットの信号にノイズが重畳し、このタイミングで第2のMPU103でラッチされると、第2のMPU103はモータ指令値を11100100(B)と誤認識する。これは10進数で表すと「−100」である。即ち、第2のMPU103は本来とは逆方向の電流指令をモータ102へ出力し、モータ102は本来正回転されるべきであるにもかかわらず、逆回転(逆アシストの方向へ回転)する。
【0017】
このように、上位のビットほど桁数が大きいのでモータ102の挙動に与える影響が大きい。そして、このモータ指令値の上位ビットがビット化けすると、前述したような過大なモータ指令値又は逆方向のモータ指令値に基づいてモータ102が駆動されることとなり、当該モータ102が意図しない挙動を示すおそれがあった。ひいては、モータ駆動制御の信頼性が損なわれるという問題があった。
【0018】
本発明は上記問題点を解決するためになされたものであって、その目的は、モータ駆動制御の信頼性を確保することができるモータ制御装置を提供することにある。
【0019】
【課題を解決するための手段】
請求項1に記載の発明は、モータ指令値を演算する第1のMPUと、第1のMPUにより算出されたモータ指令値に基づいてモータを駆動制御する第2のMPUと、第1のMPUと第2のMPUとの間を接続するシリアル通信ライン又はパラレル通信ラインとを備えたモータ制御装置において、前記第1のMPUと第2のMPUとの間には前記シリアル通信ライン又はパラレル通信ラインとは別にアナログ通信ラインを設け、前記第2のMPUはシリアル通信ライン又はパラレル通信ライン及びアナログ通信ラインによりそれぞれ送られてきたモータ指令値のうちいずれか一方に基づいてモータを駆動制御するようにしたことを要旨とする。
【0020】
請求項2に記載の発明は、請求項1に記載のモータ制御装置において、前記第2のMPUにはシリアル通信又はパラレル通信が正常に行われているか否かの判断を行う判断手段を備え、前記判断手段によりシリアル通信又はパラレル通信が正常に行われていると判断されたときには第2のMPUはシリアル通信又はパラレル通信により送られてきたモータ指令値に基づいてモータを駆動制御し、前記判断手段によりシリアル通信又はパラレル通信が正常に行われていないと判断されたときには第2のMPUは前記アナログ通信ラインにより送られてきたモータ指令値に基づいてモータを駆動制御するようにしたことを要旨とする。
【0021】
請求項3に記載の発明は、請求項1又は請求項2に記載のモータ制御装置において、前記アナログ通信ラインの途中にはローパスフィルタを設けるようにしたことを要旨とする。
【0022】
請求項4に記載の発明は、請求項1〜請求項3のうちいずれか一項に記載のモータ制御装置において、前記モータ指令値は、モータ電流指令値、モータ角速度指令値及びモータ角度指令値のうち少なくとも一つであることを要旨とする。
【0023】
(作用)
請求項1に記載の発明によれば、第1のMPUにより演算されたモータ指令値はシリアル通信ライン又はパラレル通信ライン及びアナログによりそれぞれ第2のMPUへ送られる。そして、第2のMPUはシリアル通信ライン又はパラレル通信ライン及びアナログ通信ラインによりそれぞれ送られてきたモータ指令値のうちいずれか一方に基づいてモータを駆動制御する。このため、シリアル通信又はパラレル通信及びアナログ通信のいずれか一方に通信異常が発生しても、第2のMPUは正常なもう一つの通信ラインによりモータ指令値を得ることができる。
【0024】
請求項2に記載の発明によれば、請求項1に記載の発明の作用に加えて、シリアル通信ライン又はパラレル通信ラインが正常に行われていると判断されたとき、第2のMPUはシリアル通信ライン又はパラレル通信ラインにより送られてきたモータ指令値に基づいてモータを駆動制御する。シリアル通信ライン又はパラレル通信ラインが正常に行われていないと判断されたとき、第2のMPUはアナログ通信ラインにより送られてきたモータ指令値に基づいてモータを駆動制御する。
【0025】
請求項3に記載の発明によれば、請求項1又は請求項2に記載の発明の作用に加えて、前記アナログ通信ラインにより送られてきたモータ指令値はローパスフィルタを通過することによりそのノイズ成分が除去される。
【0026】
請求項4に記載の発明によれば、請求項1〜請求項3のうちいずれか一項に記載の発明の作用に加えて、第2のMPUは、モータ電流指令値、モータ角速度指令値及びモータ角度指令値のうち少なくとも一つに基づいてモータを駆動制御する。
【0027】
【発明の実施の形態】
(第1実施形態;EPS;シリアル通信メイン)
以下、本発明を電動パワーステアリング装置のモータ制御装置に具体化した第1実施形態を図1〜図3に従って説明する。
【0028】
(全体構成)
図1に示すように、電動パワーステアリング装置(EPS)1は、電動パワーステアリング制御装置(以下「制御装置2」という。)及び当該制御装置2により駆動制御される電動モータ3を備えており、この電動モータ3の出力軸にはギヤ4が固定されている。電動モータ3は三相同期式永久磁石モータで構成したブラシレスモータであり、モータ回転角センサ(例えばホール素子)5を備えている。モータ回転角センサ5は電動モータ3の回転角θm、即ち電動モータ3を構成するロータの磁極位置を示す電気角を検出し、この検出結果(モータ回転角信号)を制御装置2へ送る。
【0029】
一方、ステアリングホイール(以下、「ハンドル7」という)にはステアリングシャフト8が連結されており、同ステアリングシャフト8には減速歯車9が固定されている。この減速歯車9には前記電動モータ3のギヤ4が噛合している。ステアリングシャフト8にはトーションバー(ねじりばね)10が組み込まれており、当該トーションバー10にはトルクセンサ11が設けられている。トルクセンサ11は、運転者によりハンドル7が操舵されてステアリングシャフト8が回転した際のトーションバー10の捻れ量に基づいて、当該ハンドル7に作用する操舵トルクTを検出する。この操舵トルク信号は制御装置2へ送られる。
【0030】
前記減速歯車9にはピニオンシャフト12を介してピニオンギヤ13が固定されている。このピニオンギヤ13はラック14と噛合しており、当該ラック14の両端にはそれぞれタイロッド15が固定されている。タイロッド15の先端部にはナックルアーム16が回動可能に連結されており、両ナックルアーム16,16間にはクロスメンバ17が回動可能に連結されている。両ナックルアーム16,16にはそれぞれ前輪18が取り付けられている。
【0031】
前後左右の各車輪にはそれぞれ車速センサ19が設けられている(図1では、一方の前輪18の車速センサ19のみ図示する)。車速センサ19は車輪速(車輪の単位時間当たりの回転数、即ち回転速度)を検出し、この検出結果(車輪速信号)を制御装置2へ送る。制御装置2は車速センサ19から送られてきた車輪速信号に基づいて車速Vを演算する。
【0032】
さて、運転者によりハンドル7が回動操作されると、ステアリングシャフト8が回転する。この回転はトーションバー10、ピニオンシャフト12及びピニオンギヤ13を介してラック14へ伝達され、同ラック14の軸動に変換される。これにより、両前輪18,18が転舵される。
【0033】
このとき、制御装置2は、トルクセンサ11により検出された操舵トルクT及び車速センサ19により検出された車速Vに基づいて、所定の操舵補助トルク(アシストトルク)を発生させるように電動モータ3を正逆駆動制御する。電動モータ3の回転はギヤ4を介して減速歯車9に伝達され、当該減速歯車9により回転数が減少されてピニオンシャフト12及びピニオンギヤ13に伝達される。ピニオンギヤ13の回転はラック14に伝達され、同ラック14の軸動に変換される。このようにして、ハンドル7の回動操作による前輪18の操舵に対してアシストトルクが付与される。
【0034】
(制御装置)
次に、制御装置2の電気的構成について説明する。
図1に示すように、制御装置2は、第1のMPU(Micro Processing Unit)21、第2のMPU22、第1のROM(読み出し専用メモリ)23、第1のRAM(読み出し書き込み専用メモリ)24、第2のROM25、第2のRAM26及びモータ駆動装置27を備えている。また、制御装置2は電流センサ28を備えている。
【0035】
第1のROM23には、第1のMPU21が実行する基本アシスト制御プログラム及びハンドル戻し制御プログラム等の各種の制御プログラム、各種のデータ及び各種の特性マップ等が格納されている。各種の特性マップはそれぞれ車両モデルによる実験データ及び周知の理論計算等によって予め求められたものであり、例えば車速Vと操舵トルクTとに基づいて基本アシスト電流を求めるための基本アシストトルクマップや車速、操舵角速度及び操舵絶対角に基づいてハンドル戻し指令電流を求めるためのマップがある。
【0036】
第1のRAM24は、第1のROM23に書き込まれた各種の制御プログラムを展開して第1のMPU21が各種の演算処理を実行するためのデータ作業領域である。また、第1のRAM24は第1のMPU21が各種の演算処理を行う際の各種の演算処理結果等を一時的に記憶する。
【0037】
第1のMPU21にはトルクセンサ11及び車速センサ19がそれぞれ入出力インターフェイス(図示略)を介して接続されている。第1のMPU21はトルクセンサ11、車速センサ19及びモータ回転角センサ5から得られる各種の情報に基づいて基本アシスト制御プログラム及びハンドル戻し制御プログラム等の各種の制御プログラムを実行する。
【0038】
第2のROM25には、第2のMPU22が実行する電流制御プログラムやPWM演算プログラム等の各種の制御プログラム及び各種のデータ等が格納されている。
【0039】
第2のRAM26は、第2のMPU22に書き込まれた各種の制御プログラムを展開して第2のMPU22が各種の演算処理を実行するためのデータ作業領域である。また、第2のRAM26は第2のMPU22が各種の演算処理を行う際の各種の演算処理結果等を一時的に記憶する。
【0040】
第2のMPU22にはモータ回転角センサ5及び電流センサ28がそれぞれ入出力インターフェイス(図示略)を介して接続されている。第2のMPU22は、第1のMPU21における演算結果やモータ回転角センサ5及び電流センサ28から得られる各種の情報等に基づいて電流制御プログラムやPWM演算プログラム等の各種の制御プログラムを実行する。
【0041】
(モータ駆動装置)
図2に示すように、モータ駆動装置27は、FET(電界効果トランジスタ)31U,32Uの直列回路と、FET31V,32Vの直列回路と、FET31W,32Wの直列回路とが並列に接続されることにより構成されている。FET31U,32U間の接続点33Uは電動モータ3のU相巻線に接続され、FET31V,32V間の接続点33Vは電動モータ3のV相巻線に接続され、FET31W,32W間の接続点33Wは電動モータ3のW相巻線に接続されている。
【0042】
モータ駆動装置27と車両に搭載されたバッテリ34との間の電源ラインLp上には昇圧回路(図示略)が設けられており、当該昇圧回路は第2のMPU22からの指令信号(昇圧回路制御信号)に基づいてバッテリ34の電圧を昇圧し、これをモータ駆動装置27の各直列回路にそれぞれ印加する。
【0043】
図2に示すように、電流センサ28はモータ駆動装置27から電動モータ3へ出力される3相の励磁電流Iu,Iv,Iwをそれぞれ検出するu相電流センサ28u、v相電流センサ28v及びw相電流センサ28wを備えている。u相電流センサ28u、v相電流センサ28v及びw相電流センサ28wは検出したu相励磁電流Iu、v相励磁電流Iv及びw相励磁電流Iwをそれぞれ第2のMPU22へ送る。
【0044】
(第1及び第2のMPUの接続間係)
図2に示すように、第1のMPU21と第2のMPU22との間はシリアル通信ラインLc1とアナログ通信ラインLc2とによりそれぞれ接続されている。シリアル通信ラインLc1はメイン(主)の通信ラインであり、アナログ通信ラインLc2はサブ(副)の通信ラインである。
【0045】
第1のMPU21はD/A変換器41を備えており、第2のMPU22はA/D変換器42を備えている。このD/A変換器41とA/D変換器42との間がアナログ通信ラインLc2により接続されている。D/A変換器41は第1のMPU21により演算されたモータ指令値をデジタル信号からアナログ信号に変換する。A/D変換器42はアナログ通信ラインLc2により送られてきたアナログ信号をデジタル信号に変換する。
【0046】
アナログ通信ラインLc2の途中にはローパスフィルタ45が設けられており、当該アナログ通信ラインLc2により送られてきたアナログ信号はローパスフィルタ45を通過することによりそのノイズ成分が除去される。ただし、ローパスフィルタ45により除去されるアナログ信号のノイズ成分の度合いはD/A変換器41及びA/D変換器42の分解能に依存する。
【0047】
第1のMPU21は、前記基本アシストトルクマップに基づいて、車速V及び操舵トルクTに対応した基本アシスト電流値を演算し、この演算結果(即ち、モータ指令値)をシリアル通信ラインLc1及びアナログ通信ラインLc2により第2のMPU22へ送る。
【0048】
第2のMPU22はモータ回転角センサ5により検出された電動モータ3の回転角θmに基づいて、u相電流センサ28u、v相電流センサ28v及びw相電流センサ28wにより検出されたu相励磁電流Iu、v相励磁電流Iv及びw相励磁電流Iwをd−q変換してd軸及びq軸電流を求める。そして、第2のMPU22は第1のMPU21から送られてきた基本アシスト電流値と前記q軸電流とに基づいてPI制御値を演算する。
【0049】
第2のMPU22はPI制御値に応じたPWM演算を行い、このPWM演算の結果(モータ制御信号)をモータ駆動装置27に対して、具体的にはFET31U,32U、FET31V,32V、FET31W,32Wに対してそれぞれ出力する。モータ駆動装置27は、送られてきたPWM演算の結果に基づいて電動モータ3に対する基本アシスト電流(3相の励磁電流)の供給を3相の励磁電流路を介して行う。電動モータ3は基本アシスト電流の供給に基づいてハンドル7に対して基本アシスト力を付与する。
【0050】
(実施形態の作用)
次に、前述のように構成した電動パワーステアリング制御装置の動作を図5(a),(b)に示すフローチャートに従って説明する。図5(a)に示すフローチャートは第1のROM23に予め格納された各種の制御プログラムに従って実行される。図5(b)に示すフローチャートは第2のROM25に予め格納された各種の制御プログラムに従って実行される。尚、本実施形態では「ステップ」を「S」と略記する。
【0051】
(第1のMPUの動作)
図5(a)に示すように、第1のMPU21は、まずセンサ信号、即ちトルクセンサ11により検出された操舵トルクT及び車速センサ19により検出された車速Vを読込む(S101)。そして、第1のMPU21は、操舵トルクT及び車速Vに基づいてmビット(本実施形態では8ビット)のモータ指令値(アシスト指令電流値)を演算する(S102)。
【0052】
次に、第1のMPU21はモータ指令値をシリアル通信ラインLc1により直列的に1ビットずつ第2のMPU22へ送信する(図2に示すモータ指令値S1)(S103)。また、第1のMPU21はモータ指令値をD/A変換器41によりアナログ信号に変換し、このアナログ信号をアナログ通信ラインLc2により第2のMPU22へ送信する(図2に示すモータ指令値S2)(S104)。
【0053】
以後、第1のMPU21はS101〜S104の処理を所定の制御周期毎に繰り返す。
(第2のMPUの動作)
一方、第2のMPU22においては、次のような処理が行われる。即ち、図3(b)に示すように、第2のMPU22は、まずシリアル通信が正常に行われているか否かを判断する(S201)。例えば、第2のMPU22はタイムアウトエラーやオーバランエラーの有無に基づいてシリアル通信が正常か否かを判断する。予め設定された所定時間内に次のデータ(ビット)が送られてこない場合には第2のMPU22はタイムアウトエラーと判断する。データを受信中に次のデータが送られてきた場合には第2のMPU22はオーバランエラーと判断する。
【0054】
また、S201において、チェックサム(検査合計)によりエラーを検出するようにしてもよい。この場合、第1のMPU21はモータ指令値(8ビットのデータ)の合計の値(チェックサム)を計算し、これを添付してデータを送るようにする。そして、第2のMPU22は送られてきたデータ列から同様にチェックサムを計算して、第1のMPU21から送られてきたチェックサムと一致するかどうかを検査する。両者が異なれば、第2のMPU22は通信系路上でデータに誤りが生じていると判断する。
【0055】
そして、シリアル通信が正常に行われていると判断したとき(S201でYES)、第2のMPU22はシリアル通信ラインLc1により送られてきたモータ指令値S1を受信し(S202)、このモータ指令値S1に基づいて電動モータ3を駆動制御する(S203)。
【0056】
一方、シリアル通信が正常に行われていないと判断したとき(S201でNO)、第2のMPU22はアナログ通信ラインLc2により送られてきたモータ指令値S2をA/D変換器42によりデジタル信号に変換して受信し(S204)、このモータ指令値S2に基づいて電動モータ3を駆動制御する(S205)。モータ指令値S2の精度はD/A変換器41及びA/D変換器42の分解能に依存するものの、電動モータ3が全く予期しない挙動(例えば逆回転する等)を示すに精度が低下することはない。
【0057】
このように、シリアル通信に異常が発生しても、バックアップ用のアナログ通信ラインLc2により送られてきたモータ指令値S2に基づいて暫定モータ制御を行うようにしたことにより、モータ駆動制御の信頼性が確保され、ひいては電動パワーステアリング装置1の操舵性能が確保される。電動モータ3の駆動制御を停止させるようにした場合、電動モータ3による操舵補助がまったく行われなくなるので、操舵性能は著しく悪化する。
【0058】
尚、前記S201はシリアル通信が正常に行われているか否かの判断を行う判断手段を構成する。
(実施形態の効果)
従って、本実施形態によれば、以下の効果を得ることができる。
【0059】
(1)シリアル通信ラインLc1とは別にアナログ通信ラインLc2を備えた。そして、第2のMPU22はシリアル通信ラインLc1及びアナログ通信ラインLc2によりそれぞれ送られてきたモータ指令値のうちいずれか一方に基づいて電動モータ3を駆動制御するようにした。即ち、第2のMPU22はシリアル通信が正常に行われているか否かの判断を行い、シリアル通信が正常に行われていると判断したときにはシリアル通信ラインLc1により送られてきたモータ指令値S1に基づいて電動モータ3を駆動制御するようにした。また、シリアル通信が正常に行われていないと判断したときには第2のMPU22はアナログ通信ラインLc2により送られてきたモータ指令値S2に基づいて電動モータ3を駆動制御するようにした。このため、第1のMPUと第2のMPUとの間のシリアル通信が正常に行われない場合であっても、アナログ通信からのモータ指令値S2に基づいて電動モータ3の駆動制御を継続することができる。このため、モータ駆動制御の信頼性を確保することができる。ひいては、電動パワーステアリング装置1の信頼性を確保することもできる。
【0060】
(2)アナログ通信ラインLc2の途中にはローパスフィルタ45を設けるようにした。このため、アナログ通信ラインLc2により送られてきたモータ指令値S2はローパスフィルタ45を通過することによりそのノイズ成分が除去される。従って、第2のMPU22におけるモータ指令値S2のデータ誤認識(通信途中におけるノイズに起因するビットエラーなど)が抑制される。この結果、本来のモータ指令値S1により近い値のモータ指令値に基づいて電動モータ3を駆動制御することができる。
【0061】
(3)モータ指令値としてモータ電流指令値(具体的には、基本アシスト電流値)が使用されている。このため、モータを電流制御するシステムに制御装置2を応用することができる。
【0062】
(第2実施形態;EPS;パラレル通信メイン)
次に、本発明の第2実施形態を説明する。本実施形態はメインの通信ラインがパラレル通信ラインである点で前記第1実施形態と異なる。従って、前記第1実施形態と同様の部材構成は同一の符号を付し、その重複した説明を省略する。
【0063】
図4に示すように、第1のMPU21と第2のMPU22との間はパラレル通信ラインLc3とアナログ通信ラインLc2とによりそれぞれ接続されている。パラレル通信ラインLc3はメイン(主)の通信ラインであり、アナログ通信ラインLc2はサブ(副)の通信ラインである。
【0064】
パラレル通信ラインLc3は第1のMPU21から第2のMPU22へ送るモータ指令値のビット長と同じ本数のデータラインを備えている。本実施形態では、モータ指令値のビット長は8ビットとされているので、パラレル通信ラインLc3は8本のデータラインD0〜D7を備えている。
【0065】
また、第1のMPU21はパラレルポート43を備えており、第2のMPU22はパラレルポート44を備えている。両パラレルポート43,44はそれぞれビット位置b0〜b7の8ビット長のパラレルポートである。第1のMPU21のパラレルポート43と第2のMPU22のパラレルポート44との間、具体的には両パラレルポート43,44のビット位置b0〜b7間はそれぞれデータラインD0〜D7により接続されている。
【0066】
第1のMPU21は算出したモータ指令値をパラレル通信ラインLc3及びアナログ通信ラインLc2により第2のMPU22へ送る。第2のMPU22は第1のMPU21から送られてきたモータ指令値等に基づいて電動モータ3を駆動制御する。
【0067】
(実施形態の作用)
次に、前述のように構成した電動パワーステアリング制御装置の動作を図3(a),(b)に示すフローチャートに従って説明する。図3(a)に示すフローチャートは第1のROM23に予め格納された各種の制御プログラムに従って実行される。図3(b)に示すフローチャートは第2のROM25に予め格納された各種の制御プログラムに従って実行される。
【0068】
(第1のMPUの動作)
図3(a)に示すように、第1のMPU21は、まずセンサ信号、即ちトルクセンサ11により検出された操舵トルクT及び車速センサ19により検出された車速Vを読込む(S301)。
【0069】
次に、第1のMPU21は、操舵トルクT及び車速Vに基づいてモータ指令値(アシスト指令電流値)を演算する(S302)。
本実施形態において、モータ指令値は8ビットのデータであり、例えば「+100」としたとき、これを符号付の2進数で表すと「01100100(B)」となる。(B)は2進数であるということを示す記号である。また、最上位ビット(本実施形態では「0」)は符号ビットであり、モータ指令値の正負、即ち「+」,「−」を示す。符号ビットが「0」のときは「+」、「1」のときは「−」を示す。最上位から2桁目以降が数値を示す数値ビットである。
【0070】
次に、第1のMPU21は算出したモータ指令値の全ビット(8ビット)をパラレルポート43にセットする(S303)。このとき、パラレルポート43のビット位置b0〜b7とモータ指令値のビット位置とが相互に対応するように、パラレルポート43のビット位置b0〜b7にはそれぞれ0,1,1,0,0,1,0,0がセットされる。そして、第1のMPU21はパラレルポート43にセットされたデータをパラレル通信ラインLc3により第2のMPU22へ送る。
【0071】
また、第1のMPU21はモータ指令値をD/A変換器41によりアナログ量に変換し、このアナログ信号をアナログ通信ラインLc2により第2のMPU22へ送信する(図2に示すモータ指令値S2)(S304)。
【0072】
以後、第1のMPU21はS301〜S304の処理を所定の制御周期毎に繰り返す。
(第2のMPUの動作)
一方、第2のMPU22においては、次のような処理が行われる。即ち、図5(b)に示すように、第2のMPU22は、まず第1のMPU21からパラレル通信ラインLc3により送られてきたモータ指令値S1をパラレルポート44にラッチ(保持)して受信する(S401)。本実施形態では、パラレルポート44のビット位置b0〜b7にはそれぞれ0,1,1,0,0,1,0,0が保持される。
【0073】
また、第2のMPU22はアナログ通信ラインLc2により送られてきたモータ指令値S2をA/D変換器42によりデジタル信号に変換して受信する(S402)
次に、第2のMPU22はパラレル通信が正常に行われているか否かを判断する(S403)。例えば、第2のMPU22は時分割でモータ指令値S1を2回受信し、この2つのデータの排他的論理和(exlusive OR)をビット毎に演算する。この演算は2入力1出力の処理であり、入力の一方だけが「1」のとき、出力は「1」となる。換言すれば、入力がともに「1」であるか、ともに「0」であるとき、出力は「0」となる。従って、2つのデータにおけるビット毎の比較結果がすべて「0」であれば、ビット化けはなく、第2のMPU22は正常にデータ通信が行われたと判断する。逆に、2つのデータにおけるビット毎の比較結果に「1」があれば、第2のMPU22はビット化けがあると判断する。
【0074】
また、S403において、パリティチェックなどによりビット化け(ビットエラー)を検出するようにしてもよい。この場合、第1のMPU21は、モータ指令値(8ビットのデータ)の中に含まれる1( 又は0) の個数の偶奇( パリティビット) を添付してデータを転送するようにする。そして、第2のMPU22は添付されたパリティビットと、データ中に含まれる1( 又は0) の個数を比較して、偶奇が合わなければデータに誤りがあると判断する。
【0075】
パラレル通信が正常に行われていると判断したとき(S403でYES)、第2のMPU22はパラレル通信ラインLc3により送られてきたモータ指令値S1に基づいて電動モータ3を駆動制御する(S404)。一方、パラレル通信が正常に行われていないと判断したとき(S403でNO)、第2のMPU22はアナログ通信ラインLc2により送られてきたモータ指令値S2に基づいて電動モータ3を駆動制御する(S405)。
【0076】
以後、第2のMPU22はS401〜S405の処理を所定の制御周期毎に繰り返す。尚、前記S403はパラレル通信が正常に行われているか否かの判断を行う判断手段を構成する。
【0077】
従って、本実施形態によれば、以下の効果を得ることができる。
・パラレル通信に異常がある場合、バックアップ用のアナログ通信ラインLc2により送られてきたモータ指令値S2に基づいて暫定モータ制御を行うようにした。このため、間違ったモータ指令値(ビットエラーがあるモータ指令値)で電動モータ3が駆動されることはない。また、パラレル通信ラインLc3により送られてきたモータ指令値にビットエラーが検出されたときでも、アナログ通信ラインLc2により送られてきたモータ指令値S2に基づいて電動モータ3が継続して駆動制御される。このため、エラー検出時に電動モータ3の駆動制御を停止するようにした場合と異なり、モータ駆動制御の信頼性を確保することができる。ひいては電動パワーステアリング装置1の信頼性及び操舵性能を確保することもできる。
【0078】
(第3実施形態;VGRS;パラレル通信メイン)
次に、本発明をギヤ比可変ステアリングシステムに具体化した第3実施形態を説明する。本実施形態は制御対象が電動パワーステアリング装置の電動モータではなくギヤ比可変ステアリングシステムの電動モータである点で前記第2実施形態と異なる。従って、前記第2実施形態と同様の部材構成は同一の符号を付し、その重複した説明を省略する。
【0079】
図6に示すように、ギヤ比可変ステアリングシステム(VGRS)51のステアリングホイール(以下、ハンドル52」という。)には第1ステアリングシャフト53の一端が接続されており、この第1ステアリングシャフト53の他端にはギヤ比可変ユニット54の入力側に接続されている。ギヤ比可変ユニット54の出力側には第2ステアリングシャフト55の一端が接続されており、この第2ステアリングシャフト55の他端はステアリングギヤボックス56の入力側に接続されている。このステアリングギヤボックス56はピニオンギヤ(図示略)を備えており、このピニオンギヤはラック軸57に噛み合っている。第2ステアリングシャフト55に入力された回転運動はピニオンギヤを介してラック軸57に伝達され、当該ラック軸57の軸方向運動に変換される。
【0080】
ギヤ比可変ユニット54は第1ステアリングシャフト53と第2ステアリングシャフト55とを作動連結する減速機58及びこの減速機58を駆動する電動モータ59等を備えている。この電動モータ59の駆動により第1ステアリングシャフト53と第2ステアリングシャフト55との間の伝達比(ステアリングギヤ比)が減速機58を介して変化する。ちなみに、ステアリングギヤ比とは、本実施形態におけるラック&ピニオン方式の電動パワーステアリング装置1の場合、ハンドル7の全回転角度(ロックからロックまで)と車輪(転舵輪)の切れ角との比をいう。
【0081】
図7に示すように、ギヤ比可変ステアリングシステム51は、第1ステアリングシャフト53の回転角(即ち、操舵角θh)を検出する操舵角センサ61及び第2ステアリングシャフト55の回転角(即ち、出力角θp)を検出する出力角センサ62を備えている。また、ギヤ比可変ステアリングシステム51は、車速Vを検出する車速センサ63及び電動モータ59の回転角(電気角)を検出する回転角センサ64を備えている。
【0082】
操舵角センサ61により検出された操舵角θh、出力角センサ62により検出された出力角θp、車速センサ63により検出された車速V及び回転角センサ64により検出された電動モータ59の回転角θmはそれぞれギヤ比可変ステアリングシステム51の制御装置65へ送られる。制御装置65は操舵角θh、出力角θp、車速V及び回転角θmに基づいて電動モータ59を駆動制御する。
【0083】
即ち、制御装置65の第1のMPU21は、操舵角θh及び車速Vに基づいて、第1のROM23(図1参照)に予め格納されたモータ回転角特性マップ(図示略)を参照してギヤ比可変ユニット54における電動モータ59のモータ回転角指令値(モータ角度指令値)を演算する。モータ回転角特性マップは、車速Vの増加に対するモータ回転角指令値の変化を示したものであり、モータ回転角指令値は車速Vに応じて一義的に決まる。
【0084】
第1のMPU21は算出したモータ回転角指令値の全ビット(8ビット)をパラレル通信ラインLc3により第2のMPU22へ送る。また、第2のMPU22はモータ回転角指令値をD/A変換器41によりアナログ信号に変換し、このモータ回転角指令値をアナログ通信ラインLc2により第2のMPU22へ送る(図5(a)のフローチャート参照)。
【0085】
第2のMPU22はパラレル通信が正常か否かを判断し、パラレル通信が正常と判断したとき、第2のMPU22はパラレル通信ラインLc3により送られてきたモータ回転角指令値に基づいて電動モータ59を駆動制御する(図5(b)のフローチャート参照)。
【0086】
このとき、回転角センサ64により検出された電動モータ59の回転角θmは第2のMPU22へ帰還される。そして、第2のMPU22は、第1のMPU21により算出されたモータ回転角指令値と実際の電動モータ59の回転角θmとが一致するようにモータ電流をフィードバック制御する。
【0087】
車速Vに応じた伝達比(ステアリングギヤ比)が設定されることにより、ハンドル7の取り回し性能が向上する。例えば停車時や低速走行時にはハンドル7の操舵角θhに対してギヤ比可変ユニット54の出力角θpが大きくなるようにステアリングギヤ比が設定される。この結果、より少ないハンドル操作で旋回することができる。また、高速走行時にはハンドル7の操舵角θhに対してギヤ比可変ユニット54の出力角θpが小さくなるようにステアリングギヤ比が設定される。この結果、穏やかで安定感のある車両応答が実現される。
【0088】
一方、パラレル通信が異常であると判断したとき、第2のMPU22はアナログ通信ラインLc2により送られてきたモータ回転角指令値に基づいて電動モータ59を駆動制御する。なお、アナログ通信ラインLc2により送られてきたモータ回転角指令値はその受信時にA/D変換器42によりアナログ信号に変換される(図5(b)のフローチャート参照)。
【0089】
従って、本実施形態によれば、モータ指令値としてモータ角度指令値(具体的には、モータ回転角指令値)を使用するようにしたシステムにおいて、前記第2実施形態と同様の効果を得ることができる。また、モータを同じく角度制御(位置制御)する他のシステムに制御装置65を応用することもできる。
【0090】
(第4実施形態;NC工作機械;パラレル通信メイン)
次に、本発明をNC工作機械に具体化した第4実施形態を説明する。本実施形態は制御対象が電動パワーステアリング装置の電動モータではなくNC工作機械のテーブル送り用の電動モータである点で前記第2実施形態と異なる。従って、前記第2実施形態と同様の部材構成は同一の符号を付し、その重複した説明を省略する。
【0091】
図8に示すように、NC工作機械71の固定テーブル72にはボールねじ73が軸受け(図示略)を介して回転可能に支持されており、このボールねじ73の外端部は送り用電動モータ74の出力軸にカップリング(図示略)を介して連結されている。また、ボールねじ73にはナット75が螺合されている。このナット75はボールねじ73の正逆回転に伴って螺進及び螺退可能とされている。ナット75の上面には移動テーブル76を介して主軸台77が一体移動可能に設けられている。主軸台77には主軸用モータ78が固定されており、主軸用モータ78の出力軸には主軸79が作動連結されている。主軸79の先端にはタップ等の工具80が取り付けられている。
【0092】
従って、送り用電動モータ74が駆動されると、ボールねじ73の回転によりナット75が当該ボールねじ73に沿って往復移動し、これに伴って移動テーブル76もボールねじ73の軸線に沿う方向(図8に示す矢印方向)へ往復移動する。主軸用モータ78が駆動されると、主軸79と共に工具80が正逆回転する。
【0093】
NC工作機械71は送り用電動モータ74の回転角θmsを検出する送り用モータ回転角センサ81、及び主軸用モータ78の回転角θmpを検出する主軸用モータ回転角センサ82を備えている。送り用モータ回転角センサ81及び主軸用モータ回転角センサ82により検出された回転角θms及び回転角θmpはそれぞれNC工作機械71の制御装置91へ送られる。
【0094】
図9に示すように、制御装置91は第1のMPU21、第2のMPU22、送り用モータ駆動装置92、主軸用モータ駆動装置93及びPLO(プログラム可能論理制御装置)94を備えている。このPLO94は第1のMPU21に接続されている。また、PLO94には入出力装置(操作盤)95が接続されている。PLO94はシーケンサ機能を備えており、第1のMPU21が実行すべきNCプログラムを判断及び選択して所定のプログラム指令により、第1のMPU21にそのNCプログラムを実行させる。
【0095】
即ち、第1のMPU21は、所定の制御周期毎にPLO94からの所定のプログラム指令に基づいて送り用電動モータ74に対するモータ指令値(モータ角度指令値;移動テーブル76の送り量)及び主軸用モータ78に対するモータ指令値(モータ角速度指令値;主軸79の回転角速度)をそれぞれ演算する。
【0096】
第1のMPU21は算出したモータ角度指令値の全ビット及びモータ角速度指令値の全ビットをパラレル通信ラインLc3により第2のMPU22へ送る。また、第2のMPU22はモータ角度指令値及びモータ角速度指令値をそれぞれD/A変換器41によりアナログ信号に変換し、このモータ角度指令値及びモータ角速度指令値をアナログ通信ラインLc2により第2のMPU22へ送る(図5(a)のフローチャート参照)。
【0097】
第2のMPU22はパラレル通信が正常か否かを判断し、パラレル通信が正常であると判断したときにはパラレル通信ラインLc3により送られてきたモータ角度指令値及びモータ角速度指令値に基づいて送り用電動モータ74及び主軸用モータ78をそれぞれ駆動制御する(図5(b)のフローチャート参照)。
【0098】
このとき、送り用モータ回転角センサ81により検出された回転角θms及び主軸用モータ回転角センサ82により検出された回転角θmpはそれぞれ第2のMPU22へ帰還される。第2のMPU22はこれら回転角θms,θmpに基づいて送り用電動モータ74及び主軸用モータ78のモータ電流をそれぞれフィードバック制御する。即ち、第2のMPU22は、モータ指令値(モータ角度指令値及びモータ角速度指令値)と実際のモータの回転角(電気角)θms,θmpとをそれぞれ一致させるように送り用電動モータ74及び主軸用モータ78をそれぞれ駆動制御する。
【0099】
一方、パラレル通信が異常であると判断したとき、第2のMPU22はアナログ通信ラインLc2により送られてきたモータ角度指令値及びモータ角速度指令値に基づいて送り用電動モータ74及び主軸用モータ78をそれぞれ駆動制御する。なお、アナログ通信ラインLc2により送られてきたモータ角度指令値及びモータ角速度指令値はそれらの受信時にA/D変換器42によりアナログ信号に変換される(図5(b)のフローチャート参照)。
【0100】
従って、本実施形態によれば、モータ指令値としてモータ角度指令値及びモータ角速度指令値を使用するようにしたシステムにおいて、前記第2実施形態と同様の効果を得ることができる。また、モータを同じく速度制御(角速度制御)する他のシステムに制御装置91を応用することもできる。
【0101】
(第5実施形態;VGRS;シリアル通信メイン)
次に、本発明の第5実施形態を説明する。本実施形態はパラレル通信ラインLc3をシリアル通信ラインLc1に置換した点で前記第3実施形態と異なる。従って、前記第3実施形態と同様の部材構成は同一の符号を付し、その重複した説明を省略する。
【0102】
図10に示すように、第1のMPU21は算出したモータ回転角指令値を構成するデータの全ビット(8ビット)をシリアル通信ラインLc1により直列的に1ビットずつ第2のMPU22へ伝送する。また、第2のMPU22は、モータ回転角指令値をD/A変換器41によりアナログ信号に変換し、このモータ回転角指令値をアナログ通信ラインLc2により第2のMPU22へ送る(図3(a)のフローチャート参照)。
【0103】
第2のMPU22はシリアル通信が正常に行われているか否かを判断する。シリアル通信が正常に行われていると判断したとき、第2のMPU22はシリアル通信ラインLc1により送られてきたデータ、即ちモータ回転角指令値に基づいて電動モータ59を駆動制御する。シリアル通信が正常に行われていないと判断したとき、第2のMPU22はアナログ通信ラインLc2により送られてきたモータ回転角指令値に基づいて電動モータ59を駆動制御する。なお、アナログ通信ラインLc2により送られてきたモータ回転角指令値はその受信時にA/D変換器42によりアナログ信号に変換される(図3(b)のフローチャート参照)。
【0104】
従って、本実施形態によれば、モータ指令値としてモータ角度指令値(具体的には、モータ回転角指令値)を使用するようにしたシステムにおいて、前記第1実施形態における(1)及び(2)番目の効果と同様の効果を得ることができる。また、モータを同じく角度制御する他のシステムに制御装置65を応用することもできる。
【0105】
(第6実施形態;NC工作機械)
次に、本発明の第6実施形態を説明する。本実施形態はパラレル通信ラインLc3をシリアル通信ラインLc1に置換した点で前記第4実施形態と異なる。従って、前記第4実施形態と同様の部材構成は同一の符号を付し、その重複した説明を省略する。
【0106】
図11に示すように、第1のMPU21は算出したモータ角度指令値及びモータ角速度指令値を構成するデータの全ビット(8ビット)をそれぞれシリアル通信ラインLc1により直列的に1ビットずつ第2のMPU22へ伝送する。また、第2のMPU22は、モータ角度指令値及びモータ角速度指令値をそれぞれD/A変換器41によりアナログ信号に変換し、このモータ角度指令値及びモータ角速度指令値をアナログ通信ラインLc2により第2のMPU22へ送る(図3(a)のフローチャート参照)。
【0107】
第2のMPU22はシリアル通信が正常に行われているか否かを判断する。シリアル通信が正常に行われていると判断したとき、第2のMPU22はシリアル通信ラインLc1により送られてきたデータ、即ちモータ角度指令値及びモータ角速度指令値に基づいて送り用電動モータ74及び主軸用モータ78をそれぞれ駆動制御する。
【0108】
シリアル通信が正常に行われていないと判断したとき、第2のMPU22はアナログ通信ラインLc2により送られてきたモータ角度指令値及びモータ角速度指令値に基づいて送り用電動モータ74及び主軸用モータ78をそれぞれ駆動制御する。なお、アナログ通信ラインLc2により送られてきたモータ角度指令値及びモータ角速度指令値はその受信時にA/D変換器42によりアナログ信号に変換される(図3(b)のフローチャート参照)。
【0109】
従って、本実施形態によれば、モータ指令値としてモータ角度指令値及びモータ角速度指令値を使用するようにしたシステムにおいて、前記第1実施形態における(1)及び(2)番目の効果と同様の効果を得ることができる。また、モータを同じく速度制御する他のシステムに制御装置91を応用することもできる。
【0110】
(別例)
・第1〜第6実施形態では、第1のMPU21及び第2のMPU22をそれぞれ同一の制御装置2,65,91に備えるようにしたが、例えば第1のMPU21を制御装置2,65,91の外部に設けるようにしてもよい。このようにすれば、制御装置2,65,91の小型化が図られる。
【0111】
・第1〜第3及び第5実施形態において、第1のMPU21の機能を電動パワーステアリング装置1及びギヤ比可変ステアリングシステム51以外の他のシステムのMPUに行わせるようにしてもよい。例えば、電動パワーステアリング装置1、ギヤ比可変ステアリングシステム51及びSC(スタビリティコントロール;安定性制御)等を組み合わせて統合制御するようにした車両システムにおいて、この車両システムを統合制御する統合制御ECU(電子制御装置)によりモータ指令値を演算する。そして、この演算結果を例えばCAN(Controller Area Network)通信(即ち,自動車内LAN)により第2のMPU22へ送る。この演算結果(モータ指令値)に基づいてモータ電流制御を行い、電動パワーステアリング装置1の電動モータ3及びギヤ比可変ステアリングシステム51の電動モータ59等の駆動制御を行う。このようにすれば、制御装置2,65の小型化が図られる。
【0112】
・本実施形態では第1のMPU21及び第2のMPU22をそれぞれ8ビットシステムとしたが、例えば16ビットシステムなど任意のビット数のシステムとしてもよい。
【0113】
・ローパスフィルタ45以外のろ波手段をアナログ通信ラインLc2の途中に設けるようにしてもよい。例えば、ローパスフィルタ45をバンドパスフィルタに置き換える。
【0114】
(付記)
次に前記実施形態及び別例から把握できる技術的思想を以下に追記する。
(イ)車両の操舵系にトルク伝達可能に設けられて操舵補助トルクを発生するモータと、前記モータを駆動するモータ駆動手段と、前記モータ駆動手段を通電制御することにより前記モータを駆動制御するモータ制御装置とを備えた電動パワーステアリング装置において、請求項1〜請求項4のうちいずれか一項に記載のモータ制御装置を備えた電動パワーステアリング装置。
【0115】
(ロ)ステアリングホイールの操舵角と転舵輪の転舵角との間の伝達比を変化させる伝達比可変機構を備えた車両用操舵制御装置であって、前記ステアリングホイールの操舵角を検出する操舵角センサと、車速を検出する車速センサと、前記伝達比可変機構を駆動する電動モータと、車速センサにより検出された車速に基づいて前記伝達比を設定すると共に操舵角センサにより検出された操舵角に基づいて前記電動モータを駆動制御する制御手段とを備えたギヤ比可変ステアリングシステムにおいて、請求項1〜請求項4のうちいずれか一項に記載のモータ制御装置を備えたギヤ比可変ステアリングシステム。
【0116】
(ハ)第1のMPUにより演算されたデータをシリアル通信ライン又はパラレル通信ラインを介して第2のMPUへ送るデータ伝送方法において、前記第1のMPUと第2のMPUとの間には前記シリアル通信ライン又はパラレル通信ラインとは別にアナログ通信ラインを設け、第2のMPUはシリアル通信又はパラレル通信が正常か否かを判断し、シリアル通信又はパラレル通信が正常であると判断したときには第2のMPUはシリアル通信ライン又はパラレル通信ラインにより送られてきたデータを受信し、シリアル通信ライン又はパラレル通信ラインが正常ではないと判断したときには第2のMPUはアナログ通信ラインにより送られてきたデータを受信するようにしたデータ伝送方法。
【0117】
【発明の効果】
本発明によれば、第2のMPUはシリアル通信ライン又はパラレル通信ライン及びアナログ通信ラインによりそれぞれ送られてきたモータ指令値のうちいずれか一方に基づいてモータを駆動制御するようにしたことにより、モータ駆動制御の信頼性を確保することができる。
【図面の簡単な説明】
【図1】第1実施形態における電動パワーステアリング装置の概略構成図。
【図2】第1実施形態におけるモータ制御装置の回路図。
【図3】(a)は第1実施形態における第1のMPUのデータ送信時の処理を示すフローチャート、
(b)は第1実施形態における第2のMPUのデータ受信時の処理を示すフローチャート。
【図4】第2実施形態におけるモータ制御装置の回路図。
【図5】(a)は第2実施形態における第1のMPUのデータ送信時の処理を示すフローチャート、
(b)は第2実施形態における第2のMPUのデータ受信時の処理を示すフローチャート。
【図6】第3実施形態におけるギヤ比可変ステアリングシステムの概略構成図。
【図7】第3実施形態におけるモータ制御装置の回路図。
【図8】第4実施形態におけるNC工作機械の概略構成図。
【図9】第4実施形態におけるモータ制御装置の回路図。
【図10】第5実施形態におけるモータ制御装置の回路図。
【図11】第6実施形態におけるモータ制御装置の回路図。
【図12】第1の従来のモータ制御装置の回路図。
【図13】(a)は第1の従来の第1のMPUのデータ送信時における処理を示すフローチャート、
(b)は第1の従来の第2のMPUのデータ受信時における処理を示すフローチャート。
【図14】第2の従来のモータ制御装置の回路図。
【図15】(a)は第2の従来の第1のMPUのデータ送信時における処理を示すフローチャート、
(b)は第2の従来の第2のMPUのデータ受信時における処理を示すフローチャート。
【図16】データのビット化けの発生状況を示すタイミングチャート。
【符号の説明】
3,59,74,78…電動モータ、
2,65,91…モータ制御装置を構成する制御装置、
21…第1のMPU、
22…第2のMPU、
45…ローパスフィルタ、
D0〜D3…パラレル通信ラインのデータライン、
Lc1…シリアル通信ライン、
Lc2…アナログ通信ライン、
Lc3…パラレル通信ライン、
S1,S2…モータ指令値。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a distributed motor control device.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, as a distributed motor control device, data communication between two MPUs is performed by serial communication (hereinafter, referred to as “first conventional technology”) and parallel communication is performed. (Hereinafter, referred to as “second related art”).
[0003]
(First prior art)
First, a conventional motor control device in which data communication between two MPUs is performed by serial communication will be described. As shown in FIG. 12, for example, a motor control device 100 of an electric power steering device includes a first MPU (Micro Processing Unit) 101 that calculates a motor command value based on a steering torque T, a vehicle speed V, and the like. And a second MPU 103 for driving the motor 102 based on the motor command value calculated by the MPU 101. The serial port 101a of the first MPU 101 and the serial port 103a of the second MPU 103 are mutually connected by a serial communication line 104.
[0004]
As shown in FIG. 13A, the first MPU 101 first reads sensor signals detected by various sensors. That is, a steering torque T detected by a torque sensor (not shown) and a vehicle speed V detected by a vehicle speed sensor (not shown) are read (S501). Next, the first MPU 101 calculates a motor command value (assist command current value) based on the steering torque T and the vehicle speed V with reference to a previously stored characteristic map (S502). Then, the first MPU 101 sends the calculated motor command value (for example, 8-bit data) to the second MPU 103 via the serial communication line 104 (S503). The motor command value is sent to the second MPU 103 serially one bit at a time. Thereafter, the first MPU 101 repeats the processing of S501 to S503 every predetermined control cycle.
[0005]
On the other hand, in the second MPU 103, the following processing is performed. That is, as shown in FIG. 13B, the second MPU 103 first determines whether or not serial communication is normally performed (S601). For example, the second MPU 103 determines whether the serial communication is normal or abnormal based on a checksum or the like. Then, when it is determined that the serial communication is normally performed (YES in S601), the second MPU 103 receives the data transmitted by the serial communication line 104, that is, the motor command value (S602). The drive of the motor 102 is controlled based on the motor command value obtained.
[0006]
When it is determined that the serial communication is not normally performed (NO in S601), the second MPU 103 stops the drive control of the motor 102 (S604). If the real communication is abnormal, data transmission to the second MPU 103 is interrupted, and the second MPU 103 cannot recognize the motor command value (target value). If the motor 102 is drive-controlled in a state where the motor command value is unknown, the motor 102 may exhibit unexpected behavior. Therefore, the motor 102 is stopped. After that, the second MPU 103 repeats the processing of S601 and S602 every predetermined control cycle.
[0007]
(Second conventional technology)
Next, a conventional motor control device in which data communication between two MPUs is performed by parallel communication will be described. This second prior art motor control device differs from the first prior art in that data communication between two MPUs is performed by parallel communication. Therefore, the same components as those of the first related art are denoted by the same reference numerals, and detailed description thereof will be omitted.
[0008]
As shown in FIG. 14, the parallel port 101b of the first MPU 101 and the parallel port 103b of the second MPU 103 are mutually connected by a parallel communication line 105. Since the motor command value is 8-bit data, the parallel communication line 105 has eight data lines D0 to D7.
[0009]
As shown in FIG. 15A, first, the first MPU 101 reads sensor signals detected by various sensors. That is, a steering torque T detected by a torque sensor (not shown) and a vehicle speed V detected by a vehicle speed sensor (not shown) are read (S701). Next, the first MPU 101 calculates a motor command value (assist command current value) based on the steering torque T and the vehicle speed V with reference to a previously stored characteristic map (S702). Then, the first MPU 101 sets the calculated motor command value in the parallel port 101b, and ends the processing. The motor command value calculated by the first MPU 101 is sent to the second MPU 103 bit by bit through the data lines D0 to D7. Thereafter, the first MPU 101 repeats the processing of S701 to S703 at every predetermined control cycle.
[0010]
On the other hand, in the second MPU 103, the following processing is performed. That is, as shown in FIG. 15B, the second MPU 103 first latches (holds), ie, receives, the motor command value sent from the first MPU 101 to the parallel port 103b (S801). Then, the second MPU 103 controls the driving of the motor 102 based on the received motor command value (S802). Thereafter, the second MPU 103 repeats the processing of S801 and S802 at every predetermined control cycle.
[0011]
[Problems to be solved by the invention]
(First prior art)
However, in the conventional motor control device in which data communication between two MPUs is performed by serial communication, the drive control of the motor 102 is stopped when it is determined that serial communication is not normally performed. Was. As a result, although unexpected behavior of the motor 102 can be avoided, there is a problem that the reliability of motor drive control is impaired. When this motor control device is used, for example, in an electric power steering device, the stopping performance of the motor 102 significantly reduces the steering performance.
[0012]
(Second conventional technology)
On the other hand, the conventional motor control device in which data communication between two MPUs is performed by parallel communication has the following problems. That is, the distributed motor control device used in the electric power steering device tends to be miniaturized, and accordingly, various kinds of noises such as switching noise are included in the signal due to interference between the signal system and the power system. Are easily superimposed. When the motor command value calculated by the first MPU 101 is transmitted to the second MPU 103 via the 8-bit parallel communication line 105, data is latched by the parallel port 103b of the second MPU 103 at a timing when noise occurs. Then, the second MPU 103 erroneously recognizes “0” as “1” or “1” as “0”. In other words, so-called garbled bits occur. As a result, the second MPU 103 cannot receive a correct motor command value.
[0013]
When the motor command value calculated by the first MPU 101 is, for example, “+100”, this is “01100100 (B)” when represented by a signed binary number. Here, the most significant bit is a sign bit indicating positive / negative (+,-), and the second and subsequent digits from the most significant are numerical bits indicating a numerical value. Incidentally, positive is indicated by “0” and negative is indicated by “1”. Each bit of the motor command value is sent to the second MPU 103 via eight data lines D0 to D7 of the parallel communication line 105, respectively.
[0014]
At the time of transmission of the motor command value, if any of the upper 2 bits (for example, the upper 4 bits “0110”) is garbled in any of the numerical bits after the second digit from the most significant bit, the second MPU 103 erroneously performs The drive of the motor 102 is controlled based on the recognized excessive motor command value.
[0015]
For example, when the motor command value calculated by the first MPU 101 is “+ 36 = 00100100 (B)” and the second digit from the highest digit is garbled, the second MPU 103 sets the motor command value to “01100100 (B)”. ". This is +100 in decimal notation, which is an excessive value compared to the original motor command value “+36”.
[0016]
As shown in FIG. 16, for example, when noise is superimposed on the signal of the most significant bit of the motor command value and latched by the second MPU 103 at this timing, the second MPU 103 converts the motor command value to 11100100 (B ). This is "-100" in decimal notation. That is, the second MPU 103 outputs a current command in the direction opposite to the original direction to the motor 102, and the motor 102 rotates in the reverse direction (rotates in the direction of the reverse assist) although the motor 102 is supposed to rotate in the normal direction.
[0017]
As described above, the higher-order bits have a larger number of digits, and thus have a greater effect on the behavior of the motor 102. If the upper bits of the motor command value are garbled, the motor 102 is driven based on the excessive motor command value or the reverse motor command value as described above, and the motor 102 Could be shown. As a result, there is a problem that the reliability of the motor drive control is impaired.
[0018]
The present invention has been made to solve the above problems, and an object of the present invention is to provide a motor control device that can ensure the reliability of motor drive control.
[0019]
[Means for Solving the Problems]
The first aspect of the present invention provides a first MPU that calculates a motor command value, a second MPU that controls driving of a motor based on the motor command value calculated by the first MPU, and a first MPU. A serial communication line or a parallel communication line connecting between the first MPU and the second MPU, wherein the serial communication line or the parallel communication line is provided between the first MPU and the second MPU. An analog communication line is provided separately, and the second MPU controls the drive of the motor based on one of the motor command values sent by the serial communication line or the parallel communication line and the analog communication line, respectively. The gist is that you have done it.
[0020]
According to a second aspect of the present invention, in the motor control device according to the first aspect, the second MPU includes a determination unit that determines whether serial communication or parallel communication is normally performed, When the determination means determines that the serial communication or the parallel communication is being performed normally, the second MPU controls the drive of the motor based on the motor command value sent by the serial communication or the parallel communication. When the means determines that serial communication or parallel communication is not normally performed, the second MPU controls the drive of the motor based on the motor command value sent by the analog communication line. And
[0021]
According to a third aspect of the present invention, in the motor control device according to the first or second aspect, a low-pass filter is provided in the middle of the analog communication line.
[0022]
According to a fourth aspect of the present invention, in the motor control device according to any one of the first to third aspects, the motor command value is a motor current command value, a motor angular velocity command value, and a motor angle command value. It shall be at least one of
[0023]
(Action)
According to the first aspect of the invention, the motor command value calculated by the first MPU is sent to the second MPU by a serial communication line or a parallel communication line and by analog. Then, the second MPU controls the drive of the motor based on one of the motor command values sent via the serial communication line, the parallel communication line, and the analog communication line. Therefore, even if a communication error occurs in one of serial communication, parallel communication, and analog communication, the second MPU can obtain a motor command value through another normal communication line.
[0024]
According to the second aspect of the present invention, in addition to the operation of the first aspect, when it is determined that the serial communication line or the parallel communication line is normally performed, the second MPU operates the serial MPU. The drive of the motor is controlled based on the motor command value sent by the communication line or the parallel communication line. When it is determined that the serial communication line or the parallel communication line is not normally performed, the second MPU controls the driving of the motor based on the motor command value sent by the analog communication line.
[0025]
According to the third aspect of the present invention, in addition to the operation of the first or second aspect, the motor command value sent by the analog communication line passes through a low-pass filter to reduce noise. The components are removed.
[0026]
According to the invention described in claim 4, in addition to the effect of the invention described in any one of claims 1 to 3, the second MPU includes a motor current command value, a motor angular speed command value, The drive of the motor is controlled based on at least one of the motor angle command values.
[0027]
BEST MODE FOR CARRYING OUT THE INVENTION
(First Embodiment; EPS; Serial Communication Main)
Hereinafter, a first embodiment in which the present invention is embodied in a motor control device of an electric power steering device will be described with reference to FIGS.
[0028]
(overall structure)
As shown in FIG. 1, an electric power steering device (EPS) 1 includes an electric power steering control device (hereinafter, referred to as “control device 2”) and an electric motor 3 that is driven and controlled by the control device 2. A gear 4 is fixed to an output shaft of the electric motor 3. The electric motor 3 is a brushless motor composed of a three-phase synchronous permanent magnet motor, and includes a motor rotation angle sensor (for example, a Hall element) 5. The motor rotation angle sensor 5 detects the rotation angle θm of the electric motor 3, that is, an electrical angle indicating the position of the magnetic pole of the rotor constituting the electric motor 3, and sends the detection result (motor rotation angle signal) to the control device 2.
[0029]
On the other hand, a steering shaft 8 is connected to a steering wheel (hereinafter, referred to as a “handle 7”), and a reduction gear 9 is fixed to the steering shaft 8. The gear 4 of the electric motor 3 meshes with the reduction gear 9. A torsion bar (torsion spring) 10 is incorporated in the steering shaft 8, and the torsion bar 10 is provided with a torque sensor 11. The torque sensor 11 detects the steering torque T acting on the steering wheel 7 based on the amount of twist of the torsion bar 10 when the steering wheel 8 is rotated by the steering of the steering wheel 7 by the driver. This steering torque signal is sent to the control device 2.
[0030]
A pinion gear 13 is fixed to the reduction gear 9 via a pinion shaft 12. The pinion gear 13 meshes with a rack 14, and tie rods 15 are fixed to both ends of the rack 14. A knuckle arm 16 is rotatably connected to the tip of the tie rod 15, and a cross member 17 is rotatably connected between the knuckle arms 16, 16. A front wheel 18 is attached to each of the knuckle arms 16,16.
[0031]
Each of the front, rear, left and right wheels is provided with a vehicle speed sensor 19 (in FIG. 1, only the vehicle speed sensor 19 of one front wheel 18 is shown). The vehicle speed sensor 19 detects the wheel speed (the number of rotations of the wheel per unit time, that is, the rotation speed), and sends the detection result (wheel speed signal) to the control device 2. The control device 2 calculates the vehicle speed V based on the wheel speed signal sent from the vehicle speed sensor 19.
[0032]
When the driver rotates the steering wheel 7, the steering shaft 8 rotates. This rotation is transmitted to the rack 14 via the torsion bar 10, the pinion shaft 12, and the pinion gear 13, and is converted into the axial movement of the rack 14. As a result, both front wheels 18, 18 are steered.
[0033]
At this time, the control device 2 controls the electric motor 3 to generate a predetermined steering assist torque (assist torque) based on the steering torque T detected by the torque sensor 11 and the vehicle speed V detected by the vehicle speed sensor 19. Controls forward / reverse drive. The rotation of the electric motor 3 is transmitted to the reduction gear 9 via the gear 4, and the rotation speed is reduced by the reduction gear 9 and transmitted to the pinion shaft 12 and the pinion gear 13. The rotation of the pinion gear 13 is transmitted to the rack 14 and is converted into the axial movement of the rack 14. In this way, assist torque is applied to the steering of the front wheel 18 by the turning operation of the handle 7.
[0034]
(Control device)
Next, the electrical configuration of the control device 2 will be described.
As shown in FIG. 1, the control device 2 includes a first MPU (Micro Processing Unit) 21, a second MPU 22, a first ROM (read only memory) 23, a first RAM (read only memory) 24. , A second ROM 25, a second RAM 26, and a motor driving device 27. Further, the control device 2 includes a current sensor 28.
[0035]
The first ROM 23 stores various control programs such as a basic assist control program and a handle return control program executed by the first MPU 21, various data, various characteristic maps, and the like. The various characteristic maps are obtained in advance by experimental data based on a vehicle model and well-known theoretical calculations. For example, a basic assist torque map and a vehicle speed for obtaining a basic assist current based on the vehicle speed V and the steering torque T are provided. There is a map for obtaining the steering wheel return command current based on the steering angular velocity and the steering absolute angle.
[0036]
The first RAM 24 is a data work area in which various control programs written in the first ROM 23 are developed and the first MPU 21 executes various arithmetic processes. In addition, the first RAM 24 temporarily stores various calculation processing results when the first MPU 21 performs various calculation processing.
[0037]
The torque sensor 11 and the vehicle speed sensor 19 are connected to the first MPU 21 via input / output interfaces (not shown), respectively. The first MPU 21 executes various control programs such as a basic assist control program and a steering wheel return control program based on various information obtained from the torque sensor 11, the vehicle speed sensor 19, and the motor rotation angle sensor 5.
[0038]
The second ROM 25 stores various control programs such as a current control program and a PWM operation program executed by the second MPU 22 and various data.
[0039]
The second RAM 26 is a data work area in which various control programs written in the second MPU 22 are developed and the second MPU 22 executes various arithmetic processes. In addition, the second RAM 26 temporarily stores various calculation processing results when the second MPU 22 performs various calculation processing.
[0040]
The motor rotation angle sensor 5 and the current sensor 28 are connected to the second MPU 22 via input / output interfaces (not shown). The second MPU 22 executes various control programs such as a current control program and a PWM calculation program based on the calculation results of the first MPU 21 and various information obtained from the motor rotation angle sensor 5 and the current sensor 28.
[0041]
(Motor drive)
As shown in FIG. 2, the motor driving device 27 is configured such that a series circuit of FETs (field effect transistors) 31U and 32U, a series circuit of FETs 31V and 32V, and a series circuit of FETs 31W and 32W are connected in parallel. It is configured. A connection point 33U between the FETs 31U and 32U is connected to a U-phase winding of the electric motor 3, a connection point 33V between the FETs 31V and 32V is connected to a V-phase winding of the electric motor 3, and a connection point 33W between the FETs 31W and 32W. Is connected to the W-phase winding of the electric motor 3.
[0042]
A booster circuit (not shown) is provided on a power supply line Lp between the motor drive device 27 and a battery 34 mounted on the vehicle, and the booster circuit provides a command signal (boost circuit control) from the second MPU 22. The voltage of the battery 34 is boosted based on the signal) and applied to each series circuit of the motor driving device 27.
[0043]
As shown in FIG. 2, current sensors 28 are u-phase current sensors 28 u, v-phase current sensors 28 v and w which respectively detect three-phase excitation currents Iu, Iv, and Iw output from motor drive device 27 to electric motor 3. A phase current sensor 28w is provided. The u-phase current sensor 28u, the v-phase current sensor 28v, and the w-phase current sensor 28w send the detected u-phase excitation current Iu, v-phase excitation current Iv, and w-phase excitation current Iw to the second MPU 22, respectively.
[0044]
(Connection between the first and second MPUs)
As shown in FIG. 2, the first MPU 21 and the second MPU 22 are connected by a serial communication line Lc1 and an analog communication line Lc2, respectively. The serial communication line Lc1 is a main (main) communication line, and the analog communication line Lc2 is a sub (sub) communication line.
[0045]
The first MPU 21 has a D / A converter 41, and the second MPU 22 has an A / D converter 42. The D / A converter 41 and the A / D converter 42 are connected by an analog communication line Lc2. The D / A converter 41 converts the motor command value calculated by the first MPU 21 from a digital signal to an analog signal. The A / D converter 42 converts an analog signal sent by the analog communication line Lc2 into a digital signal.
[0046]
A low-pass filter 45 is provided in the middle of the analog communication line Lc2. The analog signal transmitted by the analog communication line Lc2 passes through the low-pass filter 45 to remove its noise component. However, the degree of the noise component of the analog signal removed by the low-pass filter 45 depends on the resolution of the D / A converter 41 and the A / D converter 42.
[0047]
The first MPU 21 calculates a basic assist current value corresponding to the vehicle speed V and the steering torque T based on the basic assist torque map, and outputs the calculation result (that is, the motor command value) to the serial communication line Lc1 and the analog communication The signal is sent to the second MPU 22 via the line Lc2.
[0048]
The second MPU 22 detects the u-phase excitation current detected by the u-phase current sensor 28u, the v-phase current sensor 28v, and the w-phase current sensor 28w based on the rotation angle θm of the electric motor 3 detected by the motor rotation angle sensor 5. The d-axis and q-axis currents are obtained by dq conversion of Iu, v-phase excitation current Iv and w-phase excitation current Iw. Then, the second MPU 22 calculates a PI control value based on the basic assist current value sent from the first MPU 21 and the q-axis current.
[0049]
The second MPU 22 performs a PWM operation according to the PI control value, and outputs the result of the PWM operation (motor control signal) to the motor driving device 27, specifically, FETs 31U and 32U, FETs 31V and 32V, FETs 31W and 32W. Is output for each. The motor drive device 27 supplies the basic assist current (three-phase excitation current) to the electric motor 3 via the three-phase excitation current path based on the result of the PWM calculation sent. The electric motor 3 applies a basic assist force to the steering wheel 7 based on the supply of the basic assist current.
[0050]
(Operation of the embodiment)
Next, the operation of the electric power steering control device configured as described above will be described with reference to the flowcharts shown in FIGS. The flowchart shown in FIG. 5A is executed according to various control programs stored in the first ROM 23 in advance. The flowchart shown in FIG. 5B is executed according to various control programs stored in the second ROM 25 in advance. In this embodiment, “step” is abbreviated as “S”.
[0051]
(Operation of the first MPU)
As shown in FIG. 5A, the first MPU 21 first reads a sensor signal, that is, a steering torque T detected by the torque sensor 11 and a vehicle speed V detected by the vehicle speed sensor 19 (S101). Then, the first MPU 21 calculates an m-bit (8-bit in this embodiment) motor command value (assist command current value) based on the steering torque T and the vehicle speed V (S102).
[0052]
Next, the first MPU 21 transmits the motor command value serially one bit at a time to the second MPU 22 via the serial communication line Lc1 (the motor command value S1 shown in FIG. 2) (S103). Further, the first MPU 21 converts the motor command value into an analog signal by the D / A converter 41 and transmits the analog signal to the second MPU 22 via the analog communication line Lc2 (motor command value S2 shown in FIG. 2). (S104).
[0053]
After that, the first MPU 21 repeats the processing of S101 to S104 every predetermined control cycle.
(Operation of the second MPU)
On the other hand, in the second MPU 22, the following processing is performed. That is, as shown in FIG. 3B, the second MPU 22 first determines whether serial communication is normally performed (S201). For example, the second MPU 22 determines whether the serial communication is normal based on the presence or absence of a timeout error or an overrun error. If the next data (bit) is not sent within a predetermined time, the second MPU 22 determines that a time-out error has occurred. If the next data is sent while the data is being received, the second MPU 22 determines that an overrun error has occurred.
[0054]
In S201, an error may be detected by a checksum (check sum). In this case, the first MPU 21 calculates the total value (check sum) of the motor command value (8-bit data), attaches this, and sends the data. Then, the second MPU 22 similarly calculates a checksum from the transmitted data string, and checks whether or not the checksum matches the checksum transmitted from the first MPU 21. If the two are different, the second MPU 22 determines that an error has occurred in the data on the communication path.
[0055]
Then, when it is determined that the serial communication is normally performed (YES in S201), the second MPU 22 receives the motor command value S1 sent by the serial communication line Lc1 (S202), and The driving of the electric motor 3 is controlled based on S1 (S203).
[0056]
On the other hand, when it is determined that serial communication is not normally performed (NO in S201), the second MPU 22 converts the motor command value S2 sent via the analog communication line Lc2 into a digital signal by the A / D converter 42. The electric motor 3 is converted and received (S204), and the electric motor 3 is drive-controlled based on the motor command value S2 (S205). Although the accuracy of the motor command value S2 depends on the resolution of the D / A converter 41 and the A / D converter 42, the accuracy may be reduced so that the electric motor 3 exhibits unexpected behavior (for example, reverse rotation). There is no.
[0057]
As described above, even if an abnormality occurs in the serial communication, the provisional motor control is performed based on the motor command value S2 sent through the backup analog communication line Lc2, thereby improving the reliability of the motor drive control. Thus, the steering performance of the electric power steering device 1 is ensured. When the drive control of the electric motor 3 is stopped, the steering assist by the electric motor 3 is not performed at all, so that the steering performance is significantly deteriorated.
[0058]
The step S201 constitutes a judging means for judging whether or not the serial communication is normally performed.
(Effects of the embodiment)
Therefore, according to the present embodiment, the following effects can be obtained.
[0059]
(1) An analog communication line Lc2 is provided separately from the serial communication line Lc1. Then, the second MPU 22 controls the drive of the electric motor 3 based on one of the motor command values sent via the serial communication line Lc1 and the analog communication line Lc2. That is, the second MPU 22 determines whether or not the serial communication is normally performed. If the second MPU 22 determines that the serial communication is normally performed, the second MPU 22 determines whether or not the motor command value S1 transmitted through the serial communication line Lc1 is correct. The drive of the electric motor 3 is controlled based on this. When it is determined that the serial communication is not normally performed, the second MPU 22 controls the drive of the electric motor 3 based on the motor command value S2 sent via the analog communication line Lc2. For this reason, even when serial communication between the first MPU and the second MPU is not performed normally, the drive control of the electric motor 3 is continued based on the motor command value S2 from the analog communication. be able to. Therefore, the reliability of the motor drive control can be ensured. As a result, the reliability of the electric power steering device 1 can be ensured.
[0060]
(2) The low-pass filter 45 is provided in the middle of the analog communication line Lc2. For this reason, the motor command value S2 sent by the analog communication line Lc2 passes through the low-pass filter 45 to remove its noise component. Therefore, erroneous data recognition of the motor command value S2 in the second MPU 22 (such as a bit error caused by noise during communication) is suppressed. As a result, the drive of the electric motor 3 can be controlled based on the motor command value closer to the original motor command value S1.
[0061]
(3) A motor current command value (specifically, a basic assist current value) is used as the motor command value. Therefore, the control device 2 can be applied to a system that controls the current of the motor.
[0062]
(Second Embodiment; EPS; Parallel Communication Main)
Next, a second embodiment of the present invention will be described. This embodiment is different from the first embodiment in that the main communication line is a parallel communication line. Therefore, the same components as those of the first embodiment are denoted by the same reference numerals, and the description thereof will not be repeated.
[0063]
As shown in FIG. 4, the first MPU 21 and the second MPU 22 are connected by a parallel communication line Lc3 and an analog communication line Lc2, respectively. The parallel communication line Lc3 is a main (main) communication line, and the analog communication line Lc2 is a sub (sub) communication line.
[0064]
The parallel communication line Lc3 has the same number of data lines as the bit length of the motor command value sent from the first MPU 21 to the second MPU 22. In the present embodiment, since the bit length of the motor command value is set to 8 bits, the parallel communication line Lc3 includes eight data lines D0 to D7.
[0065]
The first MPU 21 has a parallel port 43, and the second MPU 22 has a parallel port 44. Both parallel ports 43 and 44 are 8-bit parallel ports at bit positions b0 to b7, respectively. Data lines D0 to D7 are connected between the parallel port 43 of the first MPU 21 and the parallel port 44 of the second MPU 22, specifically, between the bit positions b0 to b7 of the two parallel ports 43 and 44, respectively. .
[0066]
The first MPU 21 sends the calculated motor command value to the second MPU 22 via the parallel communication line Lc3 and the analog communication line Lc2. The second MPU 22 controls the drive of the electric motor 3 based on the motor command value and the like sent from the first MPU 21.
[0067]
(Operation of the embodiment)
Next, the operation of the electric power steering control device configured as described above will be described with reference to the flowcharts shown in FIGS. The flowchart shown in FIG. 3A is executed according to various control programs stored in the first ROM 23 in advance. The flowchart shown in FIG. 3B is executed according to various control programs stored in the second ROM 25 in advance.
[0068]
(Operation of the first MPU)
As shown in FIG. 3A, the first MPU 21 first reads a sensor signal, that is, the steering torque T detected by the torque sensor 11 and the vehicle speed V detected by the vehicle speed sensor 19 (S301).
[0069]
Next, the first MPU 21 calculates a motor command value (assist command current value) based on the steering torque T and the vehicle speed V (S302).
In the present embodiment, the motor command value is 8-bit data. For example, when the motor command value is “+100”, it is “01100100 (B)” when represented by a signed binary number. (B) is a symbol indicating that it is a binary number. The most significant bit (“0” in this embodiment) is a sign bit, and indicates whether the motor command value is positive or negative, that is, “+” or “−”. When the sign bit is “0”, it indicates “+”, and when it is “1”, it indicates “−”. The second and subsequent digits from the highest order are numerical bits indicating a numerical value.
[0070]
Next, the first MPU 21 sets all bits (8 bits) of the calculated motor command value in the parallel port 43 (S303). At this time, the bit positions b0 to b7 of the parallel port 43 correspond to the bit positions b0 to b7 of the motor command value so that the bit positions b0 to b7 of the parallel port 43 correspond to 0, 1, 1, 0, 0, 0, respectively. 1,0,0 is set. Then, the first MPU 21 sends the data set in the parallel port 43 to the second MPU 22 via the parallel communication line Lc3.
[0071]
Further, the first MPU 21 converts the motor command value into an analog amount by the D / A converter 41, and transmits this analog signal to the second MPU 22 via the analog communication line Lc2 (motor command value S2 shown in FIG. 2). (S304).
[0072]
After that, the first MPU 21 repeats the processing of S301 to S304 every predetermined control cycle.
(Operation of the second MPU)
On the other hand, in the second MPU 22, the following processing is performed. That is, as shown in FIG. 5B, the second MPU 22 first latches (holds) the motor command value S1 sent from the first MPU 21 via the parallel communication line Lc3 to the parallel port 44 and receives it. (S401). In the present embodiment, 0, 1, 1, 0, 0, 1, 0, 0 are held in bit positions b0 to b7 of the parallel port 44, respectively.
[0073]
Further, the second MPU 22 converts the motor command value S2 sent by the analog communication line Lc2 into a digital signal by the A / D converter 42 and receives it (S402).
Next, the second MPU 22 determines whether the parallel communication is normally performed (S403). For example, the second MPU 22 receives the motor command value S1 twice in a time-division manner, and calculates an exclusive OR (exclusive OR) of these two data for each bit. This operation is a process of two inputs and one output. When only one of the inputs is “1”, the output is “1”. In other words, when the inputs are both “1” or both are “0”, the output is “0”. Therefore, if the comparison result for each bit of the two data is “0”, there is no garbled bit, and the second MPU 22 determines that the data communication has been performed normally. Conversely, if the comparison result for each bit in the two data is “1”, the second MPU 22 determines that the bits are garbled.
[0074]
In S403, garbled bits (bit errors) may be detected by a parity check or the like. In this case, the first MPU 21 attaches 1 (or 0) even-odd (parity bits) included in the motor command value (8-bit data) to transfer the data. Then, the second MPU 22 compares the attached parity bit with the number of 1s (or 0s) included in the data, and determines that there is an error in the data if the oddness does not match.
[0075]
When judging that the parallel communication is performed normally (YES in S403), the second MPU 22 controls the drive of the electric motor 3 based on the motor command value S1 sent by the parallel communication line Lc3 (S404). . On the other hand, when it is determined that the parallel communication is not performed normally (NO in S403), the second MPU 22 controls the drive of the electric motor 3 based on the motor command value S2 sent via the analog communication line Lc2 ( S405).
[0076]
Thereafter, the second MPU 22 repeats the processing of S401 to S405 every predetermined control cycle. Note that S403 constitutes a judging means for judging whether or not the parallel communication is normally performed.
[0077]
Therefore, according to the present embodiment, the following effects can be obtained.
-When there is an abnormality in the parallel communication, provisional motor control is performed based on the motor command value S2 sent via the backup analog communication line Lc2. Therefore, the electric motor 3 is not driven by an incorrect motor command value (a motor command value having a bit error). Further, even when a bit error is detected in the motor command value transmitted by the parallel communication line Lc3, the electric motor 3 is continuously driven and controlled based on the motor command value S2 transmitted by the analog communication line Lc2. You. Therefore, unlike the case where the drive control of the electric motor 3 is stopped when an error is detected, the reliability of the motor drive control can be ensured. As a result, the reliability and the steering performance of the electric power steering device 1 can be ensured.
[0078]
(Third embodiment; VGRS; parallel communication main)
Next, a third embodiment in which the present invention is embodied in a variable gear ratio steering system will be described. This embodiment is different from the second embodiment in that the control target is not the electric motor of the electric power steering device but the electric motor of the variable gear ratio steering system. Therefore, the same components as those in the second embodiment are denoted by the same reference numerals, and the description thereof will not be repeated.
[0079]
As shown in FIG. 6, one end of a first steering shaft 53 is connected to a steering wheel (hereinafter, referred to as a handle 52) of a variable gear ratio steering system (VGRS) 51. The other end is connected to the input side of the variable gear ratio unit 54. One end of a second steering shaft 55 is connected to the output side of the variable gear ratio unit 54, and the other end of the second steering shaft 55 is connected to the input side of a steering gear box 56. The steering gear box 56 includes a pinion gear (not shown), and the pinion gear meshes with a rack shaft 57. The rotational motion input to the second steering shaft 55 is transmitted to the rack shaft 57 via the pinion gear, and is converted into the axial motion of the rack shaft 57.
[0080]
The variable gear ratio unit 54 includes a speed reducer 58 that operatively connects the first steering shaft 53 and the second steering shaft 55, and an electric motor 59 that drives the speed reducer 58. By the driving of the electric motor 59, the transmission ratio (steering gear ratio) between the first steering shaft 53 and the second steering shaft 55 changes via the speed reducer 58. Incidentally, in the case of the rack and pinion type electric power steering device 1 in the present embodiment, the steering gear ratio is a ratio between the total rotation angle (from lock to lock) of the handle 7 and the turning angle of the wheel (steered wheel). Say.
[0081]
As shown in FIG. 7, the variable gear ratio steering system 51 includes a steering angle sensor 61 for detecting a rotation angle of the first steering shaft 53 (ie, the steering angle θh) and a rotation angle (ie, output) of the second steering shaft 55. An output angle sensor 62 for detecting the angle θp) is provided. The variable gear ratio steering system 51 includes a vehicle speed sensor 63 for detecting a vehicle speed V and a rotation angle sensor 64 for detecting a rotation angle (electric angle) of the electric motor 59.
[0082]
The steering angle θh detected by the steering angle sensor 61, the output angle θp detected by the output angle sensor 62, the vehicle speed V detected by the vehicle speed sensor 63, and the rotation angle θm of the electric motor 59 detected by the rotation angle sensor 64 are: Each is sent to the control device 65 of the variable gear ratio steering system 51. The control device 65 controls the driving of the electric motor 59 based on the steering angle θh, the output angle θp, the vehicle speed V, and the rotation angle θm.
[0083]
That is, the first MPU 21 of the control device 65 refers to the motor rotation angle characteristic map (not shown) stored in advance in the first ROM 23 (see FIG. 1) based on the steering angle θh and the vehicle speed V to change the gear. A motor rotation angle command value (motor angle command value) of the electric motor 59 in the ratio variable unit 54 is calculated. The motor rotation angle characteristic map shows a change in the motor rotation angle command value with an increase in the vehicle speed V, and the motor rotation angle command value is uniquely determined according to the vehicle speed V.
[0084]
The first MPU 21 sends all bits (8 bits) of the calculated motor rotation angle command value to the second MPU 22 via the parallel communication line Lc3. Further, the second MPU 22 converts the motor rotation angle command value into an analog signal by the D / A converter 41 and sends the motor rotation angle command value to the second MPU 22 via the analog communication line Lc2 (FIG. 5 (a)). See the flowchart in FIG.
[0085]
The second MPU 22 determines whether or not the parallel communication is normal. When the second MPU 22 determines that the parallel communication is normal, the second MPU 22 uses the electric motor 59 based on the motor rotation angle command value transmitted through the parallel communication line Lc3. (See the flowchart of FIG. 5B).
[0086]
At this time, the rotation angle θm of the electric motor 59 detected by the rotation angle sensor 64 is returned to the second MPU 22. Then, the second MPU 22 performs feedback control on the motor current so that the motor rotation angle command value calculated by the first MPU 21 matches the actual rotation angle θm of the electric motor 59.
[0087]
By setting the transmission ratio (steering gear ratio) according to the vehicle speed V, the steering performance of the steering wheel 7 is improved. For example, when the vehicle is stopped or running at low speed, the steering gear ratio is set such that the output angle θp of the variable gear ratio unit 54 becomes larger than the steering angle θh of the steering wheel 7. As a result, it is possible to turn with less steering operation. Further, the steering gear ratio is set such that the output angle θp of the variable gear ratio unit 54 becomes smaller than the steering angle θh of the steering wheel 7 during high-speed running. As a result, a gentle and stable vehicle response is realized.
[0088]
On the other hand, when it is determined that the parallel communication is abnormal, the second MPU 22 controls the drive of the electric motor 59 based on the motor rotation angle command value transmitted via the analog communication line Lc2. Note that the A / D converter 42 converts the motor rotation angle command value sent via the analog communication line Lc2 into an analog signal at the time of reception thereof (see the flowchart of FIG. 5B).
[0089]
Therefore, according to the present embodiment, in a system in which the motor angle command value (specifically, the motor rotation angle command value) is used as the motor command value, the same effect as in the second embodiment can be obtained. Can be. Further, the control device 65 can be applied to another system for controlling the angle of the motor (position control).
[0090]
(Fourth embodiment; NC machine tool; parallel communication main)
Next, a fourth embodiment in which the present invention is embodied in an NC machine tool will be described. This embodiment is different from the second embodiment in that the control target is not the electric motor of the electric power steering device but the table feed electric motor of the NC machine tool. Therefore, the same components as those in the second embodiment are denoted by the same reference numerals, and the description thereof will not be repeated.
[0091]
As shown in FIG. 8, a ball screw 73 is rotatably supported on a fixed table 72 of an NC machine tool 71 via a bearing (not shown). An outer end of the ball screw 73 is connected to an electric motor for feeding. 74 is connected to the output shaft via a coupling (not shown). A nut 75 is screwed into the ball screw 73. The nut 75 can be advanced and retracted with the forward and reverse rotation of the ball screw 73. A headstock 77 is provided on an upper surface of the nut 75 via a moving table 76 so as to be integrally movable. A spindle motor 78 is fixed to the headstock 77, and a spindle 79 is operatively connected to an output shaft of the spindle motor 78. A tool 80 such as a tap is attached to the tip of the main shaft 79.
[0092]
Therefore, when the feed electric motor 74 is driven, the rotation of the ball screw 73 causes the nut 75 to reciprocate along the ball screw 73, and accordingly, the moving table 76 also moves in the direction along the axis of the ball screw 73 ( (In the direction of the arrow shown in FIG. 8). When the spindle motor 78 is driven, the tool 80 rotates forward and backward together with the spindle 79.
[0093]
The NC machine tool 71 includes a feed motor rotation angle sensor 81 that detects the rotation angle θms of the feed electric motor 74, and a spindle motor rotation angle sensor 82 that detects the rotation angle θmp of the spindle motor 78. The rotation angle θms and the rotation angle θmp detected by the feed motor rotation angle sensor 81 and the main shaft motor rotation angle sensor 82 are sent to the control device 91 of the NC machine tool 71, respectively.
[0094]
As shown in FIG. 9, the control device 91 includes a first MPU 21, a second MPU 22, a feed motor drive device 92, a spindle motor drive device 93, and a PLO (programmable logic control device) 94. This PLO 94 is connected to the first MPU 21. An input / output device (operation panel) 95 is connected to the PLO 94. The PLO 94 has a sequencer function, determines and selects an NC program to be executed by the first MPU 21, and causes the first MPU 21 to execute the NC program according to a predetermined program command.
[0095]
That is, the first MPU 21 controls the motor command value (motor angle command value; feed amount of the moving table 76) for the feed electric motor 74 and the spindle motor based on a predetermined program command from the PLO 94 at each predetermined control cycle. The motor command value for 78 (motor angular speed command value; rotational angular speed of the main shaft 79) is calculated.
[0096]
The first MPU 21 sends all bits of the calculated motor angle command value and all bits of the motor angular velocity command value to the second MPU 22 via the parallel communication line Lc3. Further, the second MPU 22 converts the motor angle command value and the motor angular speed command value into analog signals by the D / A converter 41, and converts the motor angle command value and the motor angular speed command value into the second signal via the analog communication line Lc2. It is sent to the MPU 22 (see the flowchart of FIG. 5A).
[0097]
The second MPU 22 determines whether or not the parallel communication is normal. If the second MPU 22 determines that the parallel communication is normal, the second MPU 22 determines whether the parallel communication is normal, based on the motor angle command value and the motor angular speed command value sent by the parallel communication line Lc3. The drive of the motor 74 and the spindle motor 78 are controlled (see the flowchart of FIG. 5B).
[0098]
At this time, the rotation angle θms detected by the feed motor rotation angle sensor 81 and the rotation angle θmp detected by the main shaft motor rotation angle sensor 82 are respectively fed back to the second MPU 22. The second MPU 22 feedback-controls the motor currents of the feed electric motor 74 and the spindle motor 78 based on the rotation angles θms and θmp. That is, the second MPU 22 controls the feed electric motor 74 and the main shaft so that the motor command values (motor angle command value and motor angular velocity command value) and the actual motor rotation angles (electrical angles) θms and θmp respectively match. Drive motors 78 are respectively controlled.
[0099]
On the other hand, when the second MPU 22 determines that the parallel communication is abnormal, the second MPU 22 controls the feed electric motor 74 and the main shaft motor 78 based on the motor angle command value and the motor angular speed command value sent by the analog communication line Lc2. Drive control is performed for each. Note that the motor angle command value and the motor angular speed command value sent via the analog communication line Lc2 are converted into analog signals by the A / D converter 42 when they are received (see the flowchart in FIG. 5B).
[0100]
Therefore, according to the present embodiment, in a system in which the motor angle command value and the motor angular velocity command value are used as the motor command value, the same effects as in the second embodiment can be obtained. Further, the control device 91 can be applied to another system for controlling the speed of the motor (angular speed control).
[0101]
(Fifth embodiment; VGRS; serial communication main)
Next, a fifth embodiment of the present invention will be described. This embodiment is different from the third embodiment in that the parallel communication line Lc3 is replaced with a serial communication line Lc1. Therefore, the same components as those of the third embodiment are denoted by the same reference numerals, and the description thereof will not be repeated.
[0102]
As shown in FIG. 10, the first MPU 21 transmits all bits (8 bits) of the data constituting the calculated motor rotation angle command value to the second MPU 22 serially one bit at a time via the serial communication line Lc1. Further, the second MPU 22 converts the motor rotation angle command value into an analog signal by the D / A converter 41, and sends this motor rotation angle command value to the second MPU 22 via the analog communication line Lc2 (FIG. 3 (a)). )).
[0103]
The second MPU 22 determines whether serial communication is normally performed. When it is determined that the serial communication is normally performed, the second MPU 22 controls the drive of the electric motor 59 based on the data transmitted through the serial communication line Lc1, that is, the motor rotation angle command value. When determining that the serial communication is not performed normally, the second MPU 22 controls the drive of the electric motor 59 based on the motor rotation angle command value transmitted via the analog communication line Lc2. Note that the motor rotation angle command value sent via the analog communication line Lc2 is converted into an analog signal by the A / D converter 42 when the motor rotation angle command value is received (see the flowchart in FIG. 3B).
[0104]
Therefore, according to the present embodiment, in the system in which the motor angle command value (specifically, the motor rotation angle command value) is used as the motor command value, (1) and (2) in the first embodiment are used. ) The same effect as that of the second effect can be obtained. Further, the control device 65 can be applied to another system for controlling the angle of the motor similarly.
[0105]
(Sixth embodiment; NC machine tool)
Next, a sixth embodiment of the present invention will be described. This embodiment differs from the fourth embodiment in that the parallel communication line Lc3 is replaced with a serial communication line Lc1. Therefore, the same components as those of the fourth embodiment are denoted by the same reference numerals, and the duplicate description will be omitted.
[0106]
As shown in FIG. 11, the first MPU 21 converts all bits (8 bits) of the data constituting the calculated motor angle command value and the motor angular velocity command value into the second bit by bit in series by the serial communication line Lc1. The data is transmitted to the MPU 22. Further, the second MPU 22 converts the motor angle command value and the motor angular speed command value into analog signals by the D / A converter 41, and converts the motor angle command value and the motor angular speed command value into the second signal via the analog communication line Lc2. (See the flowchart of FIG. 3A).
[0107]
The second MPU 22 determines whether serial communication is normally performed. When it is determined that the serial communication is normally performed, the second MPU 22 sends the electric motor 74 for feeding and the spindle based on the data transmitted by the serial communication line Lc1, that is, the motor angle command value and the motor angular speed command value. Drive motors 78 are respectively controlled.
[0108]
When the second MPU 22 determines that the serial communication is not performed normally, the second MPU 22 sends the electric motor 74 for the feed and the motor 78 for the main shaft based on the motor angle command value and the motor angular speed command value sent by the analog communication line Lc2. Are respectively driven and controlled. The A / D converter 42 converts the motor angle command value and the motor angular speed command value sent via the analog communication line Lc2 into analog signals at the time of reception (see the flowchart in FIG. 3B).
[0109]
Therefore, according to the present embodiment, in a system in which the motor angle command value and the motor angular velocity command value are used as the motor command value, the same effects as (1) and (2) in the first embodiment are obtained. The effect can be obtained. Further, the control device 91 can be applied to another system for controlling the speed of the motor in the same manner.
[0110]
(Another example)
In the first to sixth embodiments, the first MPU 21 and the second MPU 22 are provided in the same control device 2, 65, 91, respectively. For example, the first MPU 21 is provided in the control device 2, 65, 91. May be provided outside. By doing so, the size of the control devices 2, 65, 91 can be reduced.
[0111]
In the first to third and fifth embodiments, the function of the first MPU 21 may be performed by an MPU of a system other than the electric power steering device 1 and the variable gear ratio steering system 51. For example, in a vehicle system in which the electric power steering device 1, the variable gear ratio steering system 51, and SC (stability control; stability control) are combined for integrated control, an integrated control ECU (IC) for integrated control of the vehicle system is provided. An electronic control unit) calculates a motor command value. Then, the calculation result is sent to the second MPU 22 by, for example, CAN (Controller Area Network) communication (ie, in-vehicle LAN). Motor current control is performed based on the calculation result (motor command value), and drive control of the electric motor 3 of the electric power steering device 1 and the electric motor 59 of the variable gear ratio steering system 51 is performed. By doing so, the size of the control devices 2 and 65 can be reduced.
[0112]
In the present embodiment, each of the first MPU 21 and the second MPU 22 is an 8-bit system, but may be a system having an arbitrary number of bits such as a 16-bit system.
[0113]
-Filtering means other than the low-pass filter 45 may be provided in the middle of the analog communication line Lc2. For example, the low-pass filter 45 is replaced with a band-pass filter.
[0114]
(Note)
Next, technical ideas that can be grasped from the embodiment and other examples will be additionally described below.
(A) A motor that is provided in a steering system of a vehicle so as to be capable of transmitting torque and generates a steering assist torque, a motor drive unit that drives the motor, and controls the drive of the motor by controlling the energization of the motor drive unit. An electric power steering device comprising a motor control device, the electric power steering device comprising the motor control device according to any one of claims 1 to 4.
[0115]
(B) A vehicle steering control device including a transmission ratio variable mechanism for changing a transmission ratio between a steering angle of a steering wheel and a steering angle of a steered wheel, wherein the steering detecting the steering angle of the steering wheel. An angle sensor, a vehicle speed sensor that detects a vehicle speed, an electric motor that drives the transmission ratio variable mechanism, and a steering angle that is set by the steering angle sensor while setting the transmission ratio based on the vehicle speed detected by the vehicle speed sensor. A variable gear ratio steering system comprising a motor control device according to any one of claims 1 to 4, the control system comprising: a control unit configured to drive and control the electric motor based on the control signal. .
[0116]
(C) In a data transmission method for transmitting data calculated by the first MPU to the second MPU via a serial communication line or a parallel communication line, the method comprises the steps of: An analog communication line is provided separately from the serial communication line or the parallel communication line. The second MPU determines whether the serial communication or the parallel communication is normal or not, and determines that the serial communication or the parallel communication is normal. The MPU receives the data sent by the serial communication line or the parallel communication line, and when it judges that the serial communication line or the parallel communication line is not normal, the second MPU transmits the data sent by the analog communication line. A data transmission method intended to be received.
[0117]
【The invention's effect】
According to the present invention, the second MPU drives and controls the motor based on one of the motor command values sent by the serial communication line or the parallel communication line and the analog communication line, respectively. The reliability of motor drive control can be ensured.
[Brief description of the drawings]
FIG. 1 is a schematic configuration diagram of an electric power steering device according to a first embodiment.
FIG. 2 is a circuit diagram of a motor control device according to the first embodiment.
FIG. 3A is a flowchart illustrating a process of transmitting data by a first MPU according to the first embodiment;
FIG. 4B is a flowchart illustrating a process when the second MPU receives data in the first embodiment.
FIG. 4 is a circuit diagram of a motor control device according to a second embodiment.
FIG. 5A is a flowchart illustrating a process at the time of data transmission of a first MPU in the second embodiment;
9B is a flowchart illustrating a process performed by the second MPU when receiving data in the second embodiment.
FIG. 6 is a schematic configuration diagram of a variable gear ratio steering system according to a third embodiment.
FIG. 7 is a circuit diagram of a motor control device according to a third embodiment.
FIG. 8 is a schematic configuration diagram of an NC machine tool according to a fourth embodiment.
FIG. 9 is a circuit diagram of a motor control device according to a fourth embodiment.
FIG. 10 is a circuit diagram of a motor control device according to a fifth embodiment.
FIG. 11 is a circuit diagram of a motor control device according to a sixth embodiment.
FIG. 12 is a circuit diagram of a first conventional motor control device.
FIG. 13 (a) is a flowchart showing processing of the first conventional MPU when transmitting data,
(B) is a flowchart showing processing at the time of data reception of the first conventional second MPU.
FIG. 14 is a circuit diagram of a second conventional motor control device.
FIG. 15 (a) is a flowchart showing processing of the second conventional first MPU when transmitting data,
10B is a flowchart illustrating a process performed by the second conventional MPU when receiving data.
FIG. 16 is a timing chart showing the occurrence of garbled data.
[Explanation of symbols]
3,59,74,78 ... electric motor,
2, 65, 91: a control device constituting a motor control device;
21 ... First MPU,
22 ... the second MPU,
45 ... Low-pass filter,
D0 to D3: data lines of parallel communication lines,
Lc1 ... Serial communication line,
Lc2: analog communication line,
Lc3: parallel communication line,
S1, S2: Motor command values.

Claims (4)

モータ指令値を演算する第1のMPUと、第1のMPUにより算出されたモータ指令値に基づいてモータを駆動制御する第2のMPUと、第1のMPUと第2のMPUとの間を接続するシリアル通信ライン又はパラレル通信ラインとを備えたモータ制御装置において、
前記第1のMPUと第2のMPUとの間には前記シリアル通信ライン又はパラレル通信ラインとは別にアナログ通信ラインを設け、
前記第2のMPUはシリアル通信ライン又はパラレル通信ライン及びアナログ通信ラインによりそれぞれ送られてきたモータ指令値のうちいずれか一方に基づいてモータを駆動制御するようにしたモータ制御装置。
A first MPU that calculates a motor command value, a second MPU that drives and controls a motor based on the motor command value calculated by the first MPU, and a first MPU and a second MPU. In a motor control device having a serial communication line or a parallel communication line to be connected,
An analog communication line is provided between the first MPU and the second MPU separately from the serial communication line or the parallel communication line,
A motor control device wherein the second MPU controls driving of a motor based on one of motor command values sent via a serial communication line, a parallel communication line, and an analog communication line.
前記第2のMPUにはシリアル通信又はパラレル通信が正常に行われているか否かの判断を行う判断手段を備え、
前記判断手段によりシリアル通信又はパラレル通信が正常に行われていると判断されたときには第2のMPUはシリアル通信又はパラレル通信により送られてきたモータ指令値に基づいてモータを駆動制御し、
前記判断手段によりシリアル通信又はパラレル通信が正常に行われていないと判断されたときには第2のMPUは前記アナログ通信ラインにより送られてきたモータ指令値に基づいてモータを駆動制御するようにした請求項1に記載のモータ制御装置。
The second MPU includes a determination unit that determines whether serial communication or parallel communication is normally performed,
When it is determined that the serial communication or the parallel communication is normally performed by the determination unit, the second MPU drives and controls the motor based on the motor command value transmitted by the serial communication or the parallel communication,
When the determination means determines that serial communication or parallel communication is not normally performed, the second MPU drives and controls the motor based on the motor command value sent by the analog communication line. Item 2. The motor control device according to item 1.
前記アナログ通信ラインの途中にはローパスフィルタを設けるようにした請求項1又は請求項2に記載のモータ制御装置。3. The motor control device according to claim 1, wherein a low-pass filter is provided in the middle of the analog communication line. 前記モータ指令値は、モータ電流指令値、モータ角速度指令値及びモータ角度指令値のうち少なくとも一つである請求項1〜請求項3のうちいずれか一項に記載のモータ制御装置。The motor control device according to any one of claims 1 to 3, wherein the motor command value is at least one of a motor current command value, a motor angular velocity command value, and a motor angle command value.
JP2002334230A 2002-11-18 2002-11-18 Motor control device Expired - Fee Related JP4023301B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002334230A JP4023301B2 (en) 2002-11-18 2002-11-18 Motor control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002334230A JP4023301B2 (en) 2002-11-18 2002-11-18 Motor control device

Publications (2)

Publication Number Publication Date
JP2004173371A true JP2004173371A (en) 2004-06-17
JP4023301B2 JP4023301B2 (en) 2007-12-19

Family

ID=32698740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002334230A Expired - Fee Related JP4023301B2 (en) 2002-11-18 2002-11-18 Motor control device

Country Status (1)

Country Link
JP (1) JP4023301B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007008447A (en) * 2005-05-30 2007-01-18 Jtekt Corp Controller for electric power steering apparatus
JP2007166821A (en) * 2005-12-15 2007-06-28 Toyota Motor Corp Control unit of electric motor
WO2009081982A1 (en) 2007-12-26 2009-07-02 Honda Motor Co., Ltd. Redundant communication system
JP2013126792A (en) * 2011-12-16 2013-06-27 Toyota Motor Corp Vehicle steering device

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007008447A (en) * 2005-05-30 2007-01-18 Jtekt Corp Controller for electric power steering apparatus
JP2007166821A (en) * 2005-12-15 2007-06-28 Toyota Motor Corp Control unit of electric motor
WO2009081982A1 (en) 2007-12-26 2009-07-02 Honda Motor Co., Ltd. Redundant communication system
JP2009154661A (en) * 2007-12-26 2009-07-16 Honda Motor Co Ltd Redundant communication system
EP2226220A1 (en) * 2007-12-26 2010-09-08 Honda Motor Co., Ltd. Redundant communication system
EP2226220A4 (en) * 2007-12-26 2011-05-25 Honda Motor Co Ltd Redundant communication system
KR101150607B1 (en) * 2007-12-26 2012-06-01 가부시키가이샤 아이에이치아이 Redundant communication system
US8358578B2 (en) 2007-12-26 2013-01-22 Honda Motor Co., Ltd. Redundant communication system
JP2013126792A (en) * 2011-12-16 2013-06-27 Toyota Motor Corp Vehicle steering device

Also Published As

Publication number Publication date
JP4023301B2 (en) 2007-12-19

Similar Documents

Publication Publication Date Title
JP5971512B2 (en) Vehicle steering system
US20040128042A1 (en) Vehicle steering control apparatus
US20150232120A1 (en) Electric power steering apparatus
US20120111658A1 (en) Vehicular steering control apparatus
JP2002308124A (en) Electric power steering device
US7197945B2 (en) Torque direction detecting device for brushless motor
US10538265B2 (en) Rotary electric device control device, and electric power steering device using the same
JP2018038176A (en) Motor control device
JP4052099B2 (en) Motor control device
JP2015229385A (en) Electric power steering device
JP4000896B2 (en) Motor control device
JP4023301B2 (en) Motor control device
JP4023298B2 (en) Motor control device
JP2006271153A (en) Electric power steering apparatus
JP3915595B2 (en) Rotation angle detection device using resolver and control device using this device
JP4023300B2 (en) Motor control device
JP6988492B2 (en) Electric power steering device
JP6764564B2 (en) Motor control device
JP2016192882A (en) Motor control device
JP4023299B2 (en) Motor control device
JP6852580B2 (en) Steering control device
JP6024976B2 (en) Steering angle sensor reliability determination device
JP6905669B2 (en) Motor control device
JP2014000930A (en) Electric power steering apparatus for vehicle
US20230227098A1 (en) Control device and control method for electric power steering apparatus, and motor module

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050318

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20060301

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070824

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070924

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20101012

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees