モータを駆動するモータ駆動回路と、前記モータ駆動回路を通して流れるモータ電流を検出する電流検出回路と、前記電流検出回路の出力に基づいて前記モータ電流の検出値を算出し、当該検出値を前記モータ電流の目標値と比較し、その偏差に基づいて前記モータに前記目標値のモータ電流を流すための指令値を生成し、当該指令値を前記モータ駆動回路へ出力する制御手段と、を備えたモータ制御装置において、前記電流検出回路は、正の第1ゲインを有する第1電流検出回路と、前記第1ゲインを反転した負の第2ゲインを有する第2電流検出回路とから構成され、前記制御手段は、前記第1電流検出回路の出力に基づいて、前記モータ電流の第1検出値を算出するとともに、前記第2電流検出回路の出力に基づいて、前記モータ電流の第2検出値を算出し、前記第1検出値と前記第2検出値との和が第1の条件を満たす場合は、前記第1検出値または前記第2検出値を前記モータ電流の検出値として採用し、前記第1検出値と前記第2検出値との和が第1の条件を満たさず、かつ、前記第1検出値と前記指令値とが第2の条件を満たす場合は、前記第1検出値を前記モータ電流の検出値として採用し、前記第1検出値と前記第2検出値との和が第1の条件を満たさず、かつ、前記第2検出値と前記指令値とが第2の条件を満たす場合は、前記第2検出値を前記モータ電流の検出値として採用することを特徴とするモータ制御装置。請求項1に記載のモータ制御装置において、前記制御手段は、前記第1検出値と前記第2検出値との和が第1の条件を満たさず、かつ、前記第1検出値または前記第2検出値と前記指令値とが第2の条件を満たす場合は、一定の制限の下で前記モータの制御を実行することを特徴とするモータ制御装置。請求項1に記載のモータ制御装置において、前記制御手段は、前記第1検出値と前記第2検出値との和が第1の条件を満たさず、かつ、前記第1検出値および前記第2検出値と前記指令値とが第2の条件を満たさない場合は、前記モータの制御を停止することを特徴とするモータ制御装置。モータを駆動するモータ駆動回路と、前記モータ駆動回路を通して流れるモータ電流を検出する電流検出回路と、前記電流検出回路の出力に基づいて前記モータ電流の検出値を算出し、当該検出値を前記モータ電流の目標値と比較し、その偏差に基づいて前記モータに前記目標値のモータ電流を流すための指令値を生成し、当該指令値を前記モータ駆動回路へ出力する制御手段と、を備えたモータ制御装置において、前記電流検出回路は、正の第1ゲインを有する第1電流検出回路と、前記第1ゲインを反転した負の第2ゲインを有する第2電流検出回路とから構成され、前記制御手段は、前記第1電流検出回路および前記第2電流検出回路のそれぞれの出力に基づいて、前記モータ電流の検出値を算出することを特徴とするモータ制御装置。本発明の課題とするところは、電流検出回路に故障が発生した場合でも、モータ制御の正常な動作を維持することができるモータ制御装置を提供することにある。本発明に係るモータ制御装置は、モータを駆動するモータ駆動回路と、モータ駆動回路を通して流れるモータ電流を検出する電流検出回路と、電流検出回路の出力に基づいてモータ電流の検出値を算出し、当該検出値をモータ電流の目標値と比較し、その偏差に基づいてモータに目標値のモータ電流を流すための指令値を生成し、当該指令値をモータ駆動回路へ出力する制御手段とを備える。電流検出回路は、正の第1ゲインを有する第1電流検出回路と、第1ゲインを反転した負の第2ゲインを有する第2電流検出回路とから構成される。制御手段は、第1電流検出回路の出力に基づいて、モータ電流の第1検出値を算出するとともに、第2電流検出回路の出力に基づいて、モータ電流の第2検出値を算出する。そして、制御手段は、第1検出値と第2検出値との和が第1の条件を満たす場合は、第1検出値または第2検出値をモータ電流の検出値として採用する。また、制御手段は、第1検出値と第2検出値との和が第1の条件を満たさず、かつ、第1検出値と指令値とが第2の条件を満たす場合は、第1検出値をモータ電流の検出値として採用する。さらに、制御手段は、第1検出値と第2検出値との和が第1の条件を満たさず、かつ、第2検出値と指令値とが第2の条件を満たす場合は、第2検出値をモータ電流の検出値として採用する。このようにすると、電流検出回路の2重化により、一方の電流検出回路が故障した場合でも、他方の電流検出回路によりモータ電流を検出できるため、電流検出の信頼性が向上する。また、第2電流検出回路の出力は、第1電流検出回路の出力を反転したものとなるので、第1検出値と第2検出値との和に基づいて電流検出回路の異常を判定することで、外乱等に左右されずに異常を精度良く検出することができる。さらに、第1検出値および第2検出値と指令値とに基づいて、いずれの電流検出回路が異常であるかの判断が可能となるので、異常の発生していない電流検出回路の出力から、正確な電流値を取得することができる。このため、電流検出回路の一方が故障しても、モータ制御の正常な動作を維持することができる。本発明において、制御手段は、第1検出値と第2検出値との和が第1の条件を満たさず、かつ、第1検出値または第2検出値と指令値とが第2の条件を満たす場合は、一定の制限の下でモータの制御を実行するようにしてもよい。また、本発明において、制御手段は、第1検出値と第2検出値との和が第1の条件を満たさず、かつ、第1検出値および第2検出値と指令値とが第2の条件を満たさない場合は、モータの制御を停止するようにしてもよい。本発明によれば、電流検出回路に故障が発生した場合でも、モータ制御の正常な動作を維持することができるモータ制御装置を提供することができる。以下、本発明の実施形態につき、図面を参照しながら説明する。各図において、同一部分または対応部分には、同一符号を付してある。図1は、本実施形態に係るモータ制御装置の一例を示している。モータ制御装置は、モータ4へ電流を供給するインバータ回路1と、インバータ回路1を駆動するPWM回路2と、PWM回路2を制御する制御部3と、インバータ回路1に流れる電流を検出するシャント抵抗Rsと、シャント抵抗Rsの両端電圧に基づいて、モータ電流に応じた電圧を出力する第1電流検出回路10および第2電流検出回路20とを備えている。電源Bは、スイッチ接点XおよびコンデンサC1を介して、インバータ回路1へ電源電圧を供給する。モータ4は、例えば車両の電動パワーステアリング装置に用いられる3相ブラシレスモータである。インバータ回路1は、U相、V相、W相に対応して上下一対のアームが3組設けられた3相ブリッジから構成されている。U相の上アームA1はスイッチング素子Q1を有し、U相の下アームA4はスイッチング素子Q4を有している。V相の上アームA2はスイッチング素子Q2を有し、V相の下アームA5はスイッチング素子Q5を有している。W相の上アームA3はスイッチング素子Q3を有し、W相の下アームA6はスイッチング素子Q6を有している。これらのスイッチング素子Q1~Q6は、FETFieldEffectTransistor:電界効果トランジスタからなる。スイッチング素子Q1~Q6の各ゲートは、それぞれ抵抗R1~R6を介して、PWM回路2に接続されている。インバータ回路1は、PWM回路2とともに、本発明におけるモータ駆動回路を構成している。モータ4に流れる電流モータ電流を検出するためのシャント抵抗Rsは、単一の抵抗からなり、インバータ回路1とグランドとの間に接続されている。シャント抵抗Rsの両端の電圧は、第1電流検出回路10に与えられるとともに、第2電流検出回路20に与えられる。第1電流検出回路10は、差動増幅器OP1および抵抗R11~R14から構成され、シャント抵抗Rsの両端電圧と基準電圧Vrefとに基づいて、シャント抵抗Rsに流れるモータ電流に比例した電圧を出力する。差動増幅器OP1の一方の入力端子には、抵抗R11の一端が接続されているとともに、抵抗R13の一端が接続されている。抵抗R11の他端は、シャント抵抗Rsの一端に接続されている。抵抗R13の他端には、基準電圧Vrefが印加されている。Vrefの値は、例えば2.5Vである。差動増幅器OP1の他方の入力端子には、抵抗R12の一端が接続されているとともに、抵抗R14の一端が接続されている。抵抗R12の他端は、シャント抵抗Rsの他端グランドに接続されている。抵抗R14の他端は、差動増幅器OP1の出力端子に接続されている。差動増幅器OP1の出力端子は、抵抗R15およびコンデンサC11からなるフィルタ回路を介して、制御部3に接続されている。第2電流検出回路20は、差動増幅器OP2と、抵抗R21~R24から構成され、後述するように、第1電流検出回路10の出力を反転した信号を出力する。差動増幅器OP2の一方の入力端子には、抵抗R21の一端が接続されているとともに、抵抗R23の一端が接続されている。抵抗R21の他端は、シャント抵抗Rsの他端グランドに接続されている。抵抗R23の他端には、基準電圧Vrefが印加されている。Vrefの値は、例えば2.5Vである。差動増幅器OP2の他方の入力端子には、抵抗R22の一端が接続されているとともに、抵抗R24の一端が接続されている。抵抗R22の他端は、シャント抵抗Rsの一端に接続されている。抵抗R24の他端は、差動増幅器OP2の出力端子に接続されている。差動増幅器OP2の出力端子は、抵抗R25およびコンデンサC21からなるフィルタ回路を介して、制御部3に接続されている。第1電流検出回路10のゲインをGとしたとき、第2電流検出回路20のゲインは-Gとなっている。すなわち、第1電流検出回路10は、正の第1ゲインGを有しており、第2電流検出回路20は、第1ゲインGを反転した負の第2ゲイン-Gを有している。したがって、第2電流検出回路20の出力は、第1電流検出回路10の出力を反転したものとなる。制御部3は、CPUやメモリからなり、本発明における制御手段を構成している。制御部3には、第1電流検出回路10および第2電流検出回路20の出力が入力され、また、操舵トルクを検出する図示しないトルクセンサからトルク値が入力される。制御部3は、第1電流検出回路10および第2電流検出回路20の出力に基づいて、モータ電流の検出値を算出するとともに、トルク値に基づいてモータ4に流す電流の目標値を算出する。そして、算出した検出値と目標値とを比較し、その偏差に基づいて、モータ4に目標値のモータ電流を流すための指令値を生成する。この指令値は、PWM回路2へ与えられる。PWM回路2は、制御部3から与えられた指令値に基づいて、所定のデューティを持った6種類のPWM信号を生成する。そして、これらのPWM信号を、抵抗R1~R6を介してインバータ回路1のスイッチング素子Q1~Q6のゲートに供給する。これにより、スイッチング素子Q1~Q6は、ONOFF動作を行い、電源Bからインバータ回路1を介してモータ4へ電流が供給され、モータ4が回転する。モータ4の回転数は、PWM信号のデューティにより制御することができる。このようにして、シャント抵抗Rsで検出された電流に基づくフィードバック制御が行われる。次に、上述したモータ制御装置において、電流検出回路10、20の異常を検出する方法につき説明する。以下では、電流検出回路10、20の異常として、オフセット異常とゲイン異常を例に挙げる。1オフセット異常の場合図2は、オフセット異常を説明するための電流検出回路の入出力特性を示している。横軸は、電流検出回路10、20の入力電圧、すなわちシャント抵抗Rsに流れるモータ電流実モータ電流を表している。縦軸は、電流検出回路10、20の出力電圧、すなわち実モータ電流に比例した電圧を表している。実線で示すAは、第1電流検出回路10の正常時の出力電圧であり、実線で示すBは、第2電流検出回路20の正常時の出力電圧である。出力電圧Bは、出力電圧Aを反転したものとなっている。正常時においては、実モータ電流がゼロのときシャント抵抗Rsに電流が流れないときに、第1電流検出回路10の出力電圧Aは基準電圧Vrefとなり、第2電流検出回路20の出力電圧Bも基準電圧Vrefとなる。シャント抵抗Rsに正方向の電流が流れて、実モータ電流がゼロより大きくなると、それに応じて、第1電流検出回路10の出力電圧Aは基準電圧Vrefより大きくなり、第2電流検出回路20の出力電圧Bは基準電圧Vrefより小さくなる。一方、シャント抵抗Rsに負方向の電流が流れて、実モータ電流がゼロより小さくなると、それに応じて、第1電流検出回路10の出力電圧Aは基準電圧Vrefより小さくなり、第2電流検出回路20の出力電圧Bは基準電圧Vrefより大きくなる。したがって、正常時には、出力電圧Aと出力電圧Bとの和は、理論上、常に2×Vrefとなる。図2の破線A’は、第1電流検出回路10の故障により、正常時の出力電圧Aがシフトした状態を示している。すなわち、実モータ電流がゼロのときでも、第1電流検出回路10の出力電圧A’は基準電圧Vrefとならず、オフセットが発生しているオフセット異常。この状態では、出力電圧A’と出力電圧Bとの和は、2×Vrefよりも小さくなる。したがって、電流検出回路10、20の各出力の加算値と2×Vrefとの差絶対値を閾値と比較し、この差が閾値以上であれば、電流検出回路に異常が発生したと判断することができる。但し、第1電流検出回路10が正常で、第2電流検出回路20にオフセット異常が発生した場合にも、同様の現象が生じるので、上記方法のみでは、電流検出回路10、20のいずれに異常が発生したかを判別することはできない。異常が発生した電流検出回路を判別する方法については、後で詳しく説明する。2ゲイン異常の場合図3は、ゲイン異常を説明するための電流検出回路の入出力特性を示している。横軸と縦軸については、図2と同じである。また、実線で示すA第1電流検出回路10の正常時の出力電圧と、実線で示すB第2電流検出回路20の正常時の出力電圧についても、図2と同じである。すなわち、出力電圧Bは、出力電圧Aを反転したものとなっており、正常時には、出力電圧Aと出力電圧Bとの和は、理論上、常に2×Vrefとなる。図2の破線B’は、第2電流検出回路20の故障により、出力電圧の特性が変化した状態を示している。すなわち、第2電流検出回路20の異常のため第2ゲインが増大した結果、出力電圧B’の傾きが正常時の出力電圧Bの傾きよりも大きくなっているゲイン異常。この状態では、実モータ電流がゼロより大きいときは、出力電圧Aと出力電圧B’との和は、2×Vrefよりも小さくなり、実モータ電流がゼロより小さいときは、出力電圧Aと出力電圧B’との和は、2×Vrefよりも大きくなる。したがって、いずれの場合も、電流検出回路10、20の各出力の加算値と2×Vrefとの差絶対値を閾値と比較し、この差が閾値以上であれば、電流検出回路に異常が発生したと判断することができる。但し、第2電流検出回路20が正常で、第1電流検出回路10にゲイン異常が発生した場合にも、同様の現象が生じるので、上記方法のみでは、電流検出回路10、20のいずれに異常が発生したかを判別することはできない。異常が発生した電流検出回路を判別する方法については、後で詳しく説明する。次に、図4のフローチャートを参照しながら、本発明における電流検出の手順を詳細に説明する。図4の各ステップは、制御部3を構成するCPUにより実行される。ステップS1では、制御部3が所定のタイミングで、第1電流検出回路10および第2電流検出回路20の各出力を読み込む。ステップS2では、ステップS1で読み込んだ各電流検出回路の出力に基づいて、モータ電流の検出値を算出する。すなわち、制御部3は、第1電流検出回路10の出力をA/D変換して、モータ電流の第1検出値を算出するとともに、第2電流検出回路20の出力をA/D変換して、モータ電流の第2検出値を算出する。ステップS3では、ステップS2で算出した第1検出値と第2検出値とを加算して、両者の和を演算するとともに、この和と2×Vrefとの差の絶対値以下、加算値偏差という。が、予め決められた閾値α未満であるか否かを判定する。このステップS3の判定内容は、本発明における第1の条件に相当する。判定の結果、加算値偏差がα未満であればステップS3;YES、ステップS4へ進む。なお、αの値は、ゼロより若干大きな値に設定されるが、ゼロであってもよい。α=0の場合は、ステップS3では、|第1検出値第2検出値-2Vref|=0であるか否かが判定される。ステップS4では、ステップS3で加算値偏差がα未満と判定されたことを受けて、電流検出回路10、20のいずれにも異常がないと判断し、第1検出値または第2検出値のいずれかをモータ電流の検出値として採用する。ステップS5では、ステップS4で採用した検出電流値を用いて、通常のフィードバック制御に従って、モータ4の制御を行う。一方、ステップS3において、加算値偏差がα以上であればステップS3;NO、ステップS6へ進む。ステップS6では、ステップS3で加算値偏差がα以上と判定されたことを受けて、電流検出回路10、20のいずれかに異常があると判断し、制御部3は警報を出力する。この警報は、例えば車室前方のダッシュボードに備わる表示器図示省略に表示される。続くステップS7~S10では、第1電流検出回路10と第2電流検出回路20のいずれに異常が発生したかが検証される。ステップS7では、第1検出値と前述の指令値との差の絶対値以下、第1乖離量という。が、予め決められた閾値β未満であるか否かを判定する。このステップS7の判定内容は、後述のステップS9の判定内容とともに、本発明における第2の条件に相当する。判定の結果、第1乖離量がβ未満であればステップS7;YES、ステップS8へ進む。なお、βの値は、ゼロより若干大きな値に設定されるが、ゼロであってもよい。β=0の場合は、ステップS7では、|第1検出値-指令値|=0であるか否かが判定される。ステップS8では、ステップS7で第1乖離量がβ未満と判定されたことを受けて、第1電流検出回路10が正常で、第2電流検出回路20に異常があると判断し、第1検出値をモータ電流の検出値として採用する。一方、ステップS7において、第1乖離量がβ以上であればステップS7;NO、ステップS9へ進む。ステップS9では、第2検出値と前述の指令値との差の絶対値以下、第2乖離量という。が、予め決められた閾値β未満であるか否かを判定する。そして、第2乖離量がβ未満であればステップS9;YES、ステップS10へ進む。なお、ステップS7と同様に、β=0の場合は、ステップS9では、|第2検出値-指令値|=0であるか否かが判定される。ステップS10では、ステップS9で第2乖離量がβ未満と判定されたことを受けて、第2電流検出回路20が正常で、第1電流検出回路10に異常があると判断し、第2検出値をモータ電流の検出値として採用する。ステップS11では、ステップS8で採用された第1検出値、またはステップS10で採用された第2検出値を用いて、一定の制限の下でモータ4の制御を実行する。ここで、一定の制限とは、例えば、モータ4に流れる電流を通常より少なくして、操舵補助力を制限することなどを意味する。このような制限を加えるのは、異常が発生しているにもかかわらず通常と同じ電流を流し続けると、異常がさらに助長される可能性があるためである。一方、ステップS9において、第2乖離量がβ以上であればステップS9;NO、ステップS12へ進む。ステップS12では、ステップS7、S9で第1乖離量と第2乖離量のいずれもがβ以上と判定されたことを受けて、第1電流検出回路10と第2電流検出回路20のいずれにも異常があると判断し、モータ4の制御を停止する。このようにするのは、双方の電流検出回路10、20に異常があれば、第1検出値と第2検出値にはいずれも信頼性がなく、これらの検出値に基づいてモータ4を正確に制御することができないためである。以上のように、本実施形態では、第1電流検出回路10と第2電流検出回路20とを設けて、電流検出回路を2重化している。このため、一方の電流検出回路が故障した場合でも、他方の電流検出回路によりモータ電流を検出することができ、電流検出の信頼性が向上する。なお、電流検出回路を2重化するにあたって、第1電流検出回路10と第2電流検出回路20のゲインを共に正のゲインとし、各電流検出回路10、20の出力の差に基づいて異常判定を行うことも考えられる。しかし、そのようにすると、基準電圧Vrefが故障した場合に、各電流検出回路10、20の出力に差が出ないため、正常と誤判定してしまう問題がある。これに対して、本実施形態では、第2電流検出回路20のゲインを、第1電流検出回路10のゲインを反転した負のゲインとし、第1検出値と第2検出値との和に基づいて電流検出回路の異常を判定するようにしている。このため、基準電圧Vrefが故障した場合には、各電流検出回路10、20の出力に差が発生するので、電流検出回路の異常を正確に検出することができる。さらに、外乱等に左右されずに異常を精度良く検出することができる。また、本実施形態では、第1検出値および第2検出値と指令値との比較結果に基づいて、電流検出回路10、20のうちのいずれが異常であるかを判断することができる。このため、異常の発生していない電流検出回路の出力から、正確な電流値を取得することができる。これによって、電流検出回路10、20の一方が故障しても、操舵システムの正常な動作を維持することができる。本発明では、以上述べた以外にも種々の実施形態を採用することができる。例えば、前記実施形態では、図4のステップS11において制限付きのモータ制御を行ったが、ステップS11では、ステップS12と同様に、モータ制御を停止してもよい。あるいは、ステップS11で、ステップS5と同様の通常のモータ制御を行ってもよい。また、前記実施形態では、図2でオフセット異常の場合を例に挙げ、図3でゲイン異常の場合を例に挙げたが、オフセット異常とゲイン異常が同時に発生した場合にも、本発明は有用である。また、前記実施形態では、図4のステップS3において、第1検出値第2検出値と2×Vrefとの差の絶対値を閾値αと比較したが、これに代えて、第1検出値第2検出値と2×Vrefとの比を、所定の閾値と比較してもよい。同様に、前記実施形態では、図4のステップS7、S9において、第1検出値または第2検出値と指令値との差を閾値βと比較したが、これに代えて、第1検出値または第2検出値と指令値との比を、所定の閾値と比較してもよい。また、前記実施形態では、インバータ回路1のスイッチング素子Q1~Q6としてFETを使用したが、IGBT絶縁ゲート型バイポーラモードトランジスタのような他のスイッチング素子を使用してもよい。また、前記実施形態では、モータ4として3相モータを例に挙げたが、本発明は、2相モータや、4相以上の多相モータを制御する場合にも適用することができる。また、前記実施形態では、モータ4としてブラシレスモータを例に挙げたが、本発明は、誘導モータや同期モータなどを制御する装置にも適用することができる。さらに、前記実施形態では、車両の電動パワーステアリング装置に本発明を適用した例を挙げたが、本発明は、電動パワーステアリング装置以外の装置にも適用することができる。