電源からソレノイドに対する給電経路に直列に介在するスイッチング素子をPWM駆動して前記ソレノイドに流れる電流をフィードバック制御するソレノイド駆動装置であって、前記ソレノイドに流れる電流を検出する電流検出部と、前記ソレノイドに流す電流の目標値に応じたデューティ比を持つパルス信号を出力するパルス信号出力部と、前記電流検出部により検出される電流値が前記目標値に一致するように前記パルス信号のパルス幅を増減し、その増減した後の信号を駆動信号として前記主トランジスタに出力するパルス幅増減部と、前記電源の電源電圧が高くなるほど前記パルス信号の周波数を高くするように切り替え、前記電源電圧が低くなるほど前記パルス信号の周波数を低くするように切り替える周波数切替部と、を備えていることを特徴とするソレノイド駆動装置。前記周波数切替部は、前記電源電圧に応じて前記パルス信号の周波数を段階的に切り替えることを特徴とする請求項1に記載のソレノイド駆動装置。前記周波数切替部は、前記電源電圧に応じて前記パルス信号の周波数を2段階に切り替えることを特徴とする請求項1または2に記載のソレノイド駆動装置。前記電源電圧を検出する電圧検出部を備え、前記周波数切替部は、前記電圧検出部により検出される電圧値に基づいて前記パルス信号の周波数を切り替えることを特徴とする請求項1~3のいずれか一つに記載のソレノイド駆動装置。前記電源電圧の値と前記パルス信号の周波数の値とが予め対応付けられたデータテーブルが記憶される記憶部を備え、前記周波数切替部は、前記電源電圧および前記データテーブルに基づいて前記パルス信号の周波数を切り替えることを特徴とする請求項1~3のいずれか一つに記載のソレノイド駆動装置。上記従来技術において、ソレノイドに流れる電流は、PWM駆動される関係上、完全に一定ではなく脈動している。すなわち、ソレノイドに流れる電流はリップル成分を含んでいる。そのような脈動する電流により駆動されるソレノイド、ひいては電磁弁は、上記リップルに応じて摺動する。従って、ソレノイドに流れる電流のリップルの振幅が小さいほど、摺動が少なくなり、電磁弁の可動部分の磨耗が抑制され、電磁弁を長期間使用することが可能となる。また、リップルの振幅が小さいほど、電流-デューティI-DUTY特性の直線性が高まり、制御の安定性が向上する。一方、流量の目標値電磁弁の開度の目標値、つまりソレノイドに流す目標電流値が変化する際には、リップル成分が大きいほど電磁弁の過渡応答性が向上する。これは、リップルの振幅が大きいほど、上記摺動が大きくなり、その大きな摺動の勢いを利用して電磁弁の開度が素早く変化するためである。このようなことから、ソレノイドに流れる電流は、適度な振幅のリップル成分を含んでいることが望ましい。リップルの振幅は、使用するソレノイドの各種特性、電源電圧、PWM駆動信号の周波数などにより定まる。そのため、使用するソレノイドの特性および電源電圧の定格値に応じて、制御安定性および過渡応答性が両立するような一定の駆動周波数でもってPWM制御が行われるようになっている。しかし、そのような制御において、電源電圧が大きく変化した場合、リップルの振幅も同様に大きく変化する。リップルの振幅が当初想定していたものから変化すると、制御安定性または過渡応答性が低下するおそれがある。本発明は上記事情に鑑みてなされたものであり、その目的は、電源電圧の変動の影響を受けることなく、制御安定性および過渡応答性を両立することができるソレノイド駆動装置を提供することにある。請求項1に記載の手段によれば、電源からソレノイドに対する給電経路に直列に介在するスイッチング素子をPWM駆動するものであり、電流検出部、パルス信号出力部、パルス幅増減部および周波数切替部を備えている。パルス信号出力部は、ソレノイドに流す電流の目標値に応じたデューティ比を持つパルス信号を出力する。そして、パルス幅増減部は、電流検出部により検出されるソレノイドに流れる電流値が目標値に一致するようにパルス信号のパルス幅を増減し、その増減した後の信号を駆動信号としてスイッチング素子に出力する。これにより、ソレノイドに流れる電流が目標値に一致するようにスイッチング素子の駆動がフィードバック制御される電流フィードバック制御。このような構成においては、パルス信号に従ってスイッチング素子が駆動されるためPWM駆動、ソレノイドに流れる電流はリップル成分を含む。従来技術にて述べたように、そのリップルの振幅は、制御安定性と、ソレノイドにより駆動される可動部分例えば、電磁弁の弁体の過渡応答性とについて、所望する性能が得られる範囲の大きさであることが望ましい。そのため、使用するソレノイドの特性に応じて、上記制御安定性および過渡応答性が両立するようなリップルとなるようにパルス信号の周波数が設定されることになる。電源の電圧電源電圧が一定であれば、基本的にはソレノイドに流れる電流のリップルの振幅が大きく変化することはない。しかし、電源電圧が変化すると、リップルの振幅も同様に変化する。そのため、電源電圧が大きく変動した場合、リップルの振幅が大きく変動し、制御安定性または過渡応答性について所望の性能が得られなくなる問題が生じる可能性がある。電源電圧およびリップルは、電源電圧が高くなるほどリップルの振幅が大きくなり、電源電圧が低くなるほどリップルの振幅が小さくなる、という関係にある。一方、パルス信号の周波数およびリップルは、パルス信号の周波数が低くなるほどリップルの振幅が大きくなり、パルス信号の周波数が高くなるほどリップルの振幅が小さくなる、という関係にある。本手段では、それらの関係に着目し、次のようにして上記問題の発生を抑制している。すなわち、周波数切替部は、電源電圧に応じてパルス信号の周波数を切り替える。具体的には、周波数切替部は、電源電圧が高くなるほどパルス信号の周波数を高くするように切り替え、電源電圧が低くなるほどパルス信号の周波数を低くするように切り替える。従って、電源電圧が変化することによりリップルの振幅が増減しても、周波数切替部が上記したようにパルス信号の周波数を切り替えることにより、その振幅の増減が相殺される。つまり、本手段によれば、電源電圧が変化した場合であっても、ソレノイドに流れる電流のリップルの振幅は、制御安定性および過渡応答性について所望の性能が得られるような大きさつまり、元々想定された範囲内の大きさに維持される。従って、本手段によれば、電源電圧の変動に影響を受けることなく、制御安定性および過渡応答性を両立することができる。なお、ここで言う相殺とは、電源電圧の変動に伴うリップルの増減が完全にキャンセルされる場合だけでなく、その増減の程度が小さくなる緩和される場合も含まれるものとする。請求項2に記載の手段によれば、周波数切替部は、電源電圧に応じてパルス信号の周波数を段階的に切り替える。このようにすれば、電源電圧に対応する複数のしきい値を設け、それらしきい値を境にパルス信号の周波数を切り替えればよい。一方、電源電圧に応じてパルス信号の周波数をリニアに切り替える場合、電源電圧および周波数の関係式を用意する必要がある。本手段によれば、そのような関係式を用意することなく、容易に電源電圧の変動に応じたパルス信号の周波数切替を行うことができる。また、本手段によれば、周波数切替部がソフトウェアにより実現される場合、リニアに切り替える手法に比べて処理負荷を軽減することができるという効果も得られる。請求項3に記載の手段によれば、周波数切替部は、電源電圧に応じてパルス信号の周波数を2段階に切り替える。このようにすれば、請求項2に記載した手段と同様の作用および効果が得られる。また、例えば、車両に搭載される用途車載用途を想定すると、電源電圧車載バッテリの電圧が12V系のシステムと24V系のシステムとの2種類のシステムが考えられる。本手段によれば、それら2種類のシステムのいずれに用いられる場合であっても、同一の回路構成のまま、2種類の電源電圧のそれぞれについてリップルの振幅が最適となるようにパルス信号の周波数切替を行うことが可能であるため、制御安定性および過渡応答性を両立することができる。請求項4に記載の手段によれば、電源電圧を検出する電圧検出部を備えている。そして、周波数切替部は、電圧検出部により検出される電圧値に基づいてパルス信号の周波数を切り替える。このように、実際に検出された電圧値に応じてパルス信号の周波数が切り替えられるため、電源電圧の変動に伴うリップルの増減を、周波数切替によるリップルの増減により、精度よく相殺することが可能となる。すなわち、電源電圧の変動に影響を受けることなく、最適なリップルの振幅が維持される精度が高まるという効果が得られる。請求項5に記載の手段によれば、電源電圧の値とパルス信号の周波数の値とが予め対応付けられたデータテーブルが記憶される記憶部を備えている。そして、周波数切替部は、電源電圧およびデータテーブルに基づいてパルス信号の周波数を切り替える。このようにすれば、使用するソレノイドの各種特性に応じたデータテーブルを準備しておくことにより、様々な種類のソレノイドを駆動するための装置を、同一の回路構成で実現することができる。第1の実施形態以下、本発明の第1の実施形態について図1~図6を参照しながら説明する。図1は、車両に搭載される燃料ポンプ装置に用いられる電磁弁のソレノイドを駆動するソレノイド駆動装置の概略的な構成を示している。ソレノイド駆動装置1は、主トランジスタT1、ダイオードD1、シャント抵抗R1、制御回路2、電圧検出回路3、パルス幅増減回路4、差動増幅回路5などを備えている。ソレノイド駆動装置1は、主トランジスタT1をPWM駆動してソレノイド6に流れる電流をフィードバック制御する。このように、ソレノイド6に対する通電が制御されることにより、電磁弁の開度、ひいては燃料の流量が所望の目標値に制御されるようになっている。また、ソレノイド駆動装置1は、図示しない車載バッテリ電源に相当から一対の電源線7、8を介して供給される電源電圧VBによりソレノイド6に対する通電を行うようになっている。詳細は後述するが、ソレノイド駆動装置1は、車載バッテリとして10~16Vの範囲の電源電圧VBを使用する12V系システム、および、車載バッテリとして16~32Vの範囲の電源電圧VBを使用する24V系システムのいずれにも同一の回路構成により適用可能となっている。主トランジスタT1スイッチング素子に相当は、Pチャネル型のMOSFETである。主トランジスタT1は、図示しない車載バッテリから電源電圧VBを供給するための一対の電源線7、8間に、ソレノイド6およびシャント抵抗R1とともに直列に接続される。ダイオードD1は、還流ダイオードであり、ソレノイド6が断電された際に生じる逆起電力によるサージを抑制する。ダイオードD1は、主トランジスタT1およびソレノイド6の相互接続点主トランジスタT1のドレインと電源線8との間に、電源線8側をアノードとして接続されている。制御回路2パルス信号出力部および周波数切替部に相当は、例えばマイクロコンピュータを主体として構成されている。制御回路2には、燃料ポンプ装置における燃料の流量を制御する外部の制御装置図示せずから出力される目標流量値が入力される。制御回路2は、その目標流量値に基づいてソレノイド6に流す電流の目標値を演算する。制御回路2は、演算した電流の目標値に応じたデューティ比を持つパルス信号VEを、パルス幅増減回路4に対して出力する。詳細は後述するが、パルス信号VEの周波数は、電圧検出回路3から与えられる検出電圧Vdに応じて決定される。電圧検出回路3電圧検出部に相当は、電源電圧VBの電圧値を検出するものである。電圧検出回路3は、図示しないが、例えば電源線7、8間に設けられた分圧回路などにより構成される。電圧検出回路3は、電源電圧VBに応じた検出電圧Vdを制御回路2に出力する。なお、このような構成の場合、検出電圧Vdが制御回路2に入力可能な範囲となるように分圧回路の分圧比を設定すればよい。パルス幅増減回路4パルス幅増減部に相当は、制御回路2から出力されるパルス信号VEのパルス幅を差動増幅回路5から出力される電圧VOPに応じて増減し、その増減後の信号を駆動信号VGとして出力するものである。パルス幅増減回路4は、トランジスタT2、コンパレータ9、抵抗R2~R5、コンデンサC1およびインバータ10により構成されている。トランジスタT2は、PNP形のバイポーラトランジスタである。トランジスタT2のベースには、制御回路2から出力されるパルス信号VEが与えられる。トランジスタ2のエミッタは、制御用の電源電圧VC例えば5Vを供給するための電源線11に接続されている。トランジスタT2のコレクタは、抵抗R2、R3を介して電源線8に接続されている。抵抗R2、R3の相互接続点であるノードN1は、抵抗R4を介してコンパレータ9の非反転入力端子に接続されている。コンデンサC1は、コンパレータ9の各入力端子間に接続されている。コンパレータ9の反転入力端子には、抵抗R5を介して、差動増幅回路5から出力される電圧VOPが与えられる。コンパレータ9およびインバータ10は、電源線7、8を介して電源電圧VBの供給を受けて動作する。コンパレータ9の出力端子は、インバータ10の入力端子に接続されている。インバータ10は、コンパレータ9の出力信号を反転し、その反転した信号を駆動信号VGとして主トランジスタT1のゲートに出力する。なお、本実施形態では、抵抗R4およびコンデンサC1により偏差積分回路12が構成されている。偏差積分回路12は、差動増幅回路5から与えられる電圧VOPおよび制御回路2から与えられるパルス信号VEに基づいて充放電する。また、抵抗R4の抵抗値およびコンデンサC1の静電容量値は、偏差積分回路12における時定数が、パルス信号VEの周期よりも長くなるように設定されている。差動増幅回路5は、シャント抵抗R1の各端子電圧を入力し、それら各端子電圧の差を増幅して出力するものである。差動増幅回路5は、抵抗R6~R9およびオペアンプ13により構成されている。シャント抵抗R1の各端子は、それぞれ抵抗R6、R7を介して、オペアンプ13の各入力端子に接続されている。抵抗R8は、オペアンプ13の非反転入力端子と電源線8との間に接続されている。抵抗R9は、オペアンプ13の出力端子と反転入力端子との間に接続されている。オペアンプ13は、電源線7、8を介して電源電圧VBの供給を受けて動作する。オペアンプ13の出力電圧VOPは、パルス幅増減回路4に与えられる。本実施形態では、シャント抵抗R1および差動増幅回路5により、ソレノイド6に流れる電流iLを検出する電流検出部14が構成されている。上記構成のソレノイド駆動装置1の概略的な動作は次のとおりである。すなわち、制御回路2は、ソレノイド6に流す電流の目標値に応じたデューティ比を持つとともに、検出電圧Vdに応じた周波数を持つパルス信号VEをパルス幅増減回路4に出力する。パルス幅増減回路4は、差動増幅回路5から与えられるソレノイド6に流れる電流iLに応じた電圧VOPに基づいて、ソレノイド6に流れる電流値が目標値に一致するようにパルス信号VEのパルス幅を増減する。そして、パルス幅増減回路4は、その増減した後の信号を駆動信号VGとして出力する。主トランジスタT1は、その駆動信号VGにより駆動される。このようにして、ソレノイド6に流れる電流iLが目標値に一致するように主トランジスタT1がPWM駆動される。続いて、上記構成の詳細な動作について図2を参照しながら説明する。図2は、ソレノイド駆動装置1の各部の信号波形を示している。図2中、aはパルス信号VE、bはコンパレータ9の各入力電圧、cは駆動信号VG、dはソレノイド6に流れる電流iLを示している。主トランジスタT1は、駆動信号VGがLレベル電源線8の電圧レベル=例えば0Vの期間図2のc参照にオンする。主トランジスタT1がオンすると、電源線7、8を通じてソレノイド6に電流iLが流れる。また、主トランジスタT1は、駆動信号VGがHレベル電源線7の電圧レベル=例えば16Vの期間図2のc参照にオフする。主トランジスタT1がオフすると、電源線7、8を通じたソレノイド6への通電が遮断され、ソレノイド6に蓄積された電磁エネルギーによりダイオードD1を通じて還流電流が流れる。このように、パルス状の信号である駆動信号VGにより主トランジスタT1が駆動されるPWM駆動されるため、ソレノイド6に流れる電流iLは一定ではなく、リップル成分を含む脈動波形となる図2のd参照。電流iLのリップル成分の周期は、駆動信号VG、ひいてはパルス信号VEの周期と同じである。ソレノイド6に流れる電流iLは、シャント抵抗R1により電圧に変換され、差動増幅回路5により増幅された電圧VOPとしてパルス幅増減回路4に与えられる図2のb参照。一方、パルス幅増減回路4において、トランジスタT2は、制御回路2から与えられるパルス信号VEに応じて駆動される。すなわち、トランジスタT2は、パルス信号VEがLレベル電源線8の電圧レベル=例えば0Vの期間にオンし、Hレベル電源線11の電圧レベル=例えば5Vの期間にオフする図2のa参照。トランジスタT2がオンしている期間、ノードN1の電圧Vnは、電源電圧VCを抵抗R2、R3により分圧した値となる。一方、トランジスタT2がオフしている期間、電圧Vnは、電源線8の電圧=0Vとなる。つまり、電圧Vnは、パルス信号VEを反転させたパルス状の波形となる。このような電圧Vnが偏差積分回路12を構成する抵抗R4の一端に印加される。偏差積分回路12は、電圧Vnパルス信号VEおよび電圧VOPに基づいて充放電動作する。そして、偏差積分回路12のコンデンサC1の充放電の極性は、パルス信号VEと同じ周期で反転するとともに、そのデューティ比は、電流iLの目標値および検出値の差に対応した値となる。このようなコンデンサC1の充電電圧の極性に応じてコンパレータ9の出力信号は次のように変化する。すなわち、コンデンサC1の抵抗R4側の端子電圧=コンパレータ9の非反転入力端子の電圧VCPが、コンデンサC1の抵抗R5側の端子電圧=コンパレータ9の反転入力端子の電圧よりも高い期間図2のb参照には、コンパレータ9の出力はHレベル電源線7の電圧レベル=例えば16Vとなる。一方、コンデンサC1の抵抗R4側の端子電圧が、抵抗R5側の端子電圧よりも低い期間図2のb参照には、コンパレータ9の出力はLレベル電源線8の電圧レベル=0Vとなる。このように変化するコンパレータ9の出力信号が反転された駆動信号VGにより、主トランジスタT1がオン/オフ制御スイッチング制御されることにより、ソレノイド6に流れる電流iLがパルス信号VEのデューティ比に応じた目標値に制御される。なお、この場合、電流iLはリップル成分を含むため、電流iLの平均値実効電流が目標値例えば1.1Aとなるように制御される。具体的に説明すると、電流iLの検出値を示す電圧VOPが、電流iLの目標値を示す電圧Vnより小さくなると、ソレノイド6のインダクタンス成分および偏差積分回路12の時定数に応じた遅延時間経過後に、コンデンサC1の端子電圧は、コンパレータ9の非反転入力端子側が反転入力端子側よりも高くなる。これにより、コンパレータ9の出力がHレベルとなり、駆動信号VGがLレベルとなる。すると、主トランジスタT1がオンし、ソレノイド6に流れる電流iLが増加して電圧VOPも増加する。電圧VOPが電圧Vnより大きくなると、ソレノイド6のインダクタンス成分および偏差積分回路12の時定数に応じた遅延時間経過後に、コンデンサC1の端子電圧は、コンパレータ9の非反転入力端子側が反転入力端子側よりも低くなる。これにより、コンパレータ9の出力がLレベルとなり、駆動信号VGがHレベルとなる。すると、主トランジスタT1がオフし、ソレノイド6に流れる電流iLが減少して電圧VOPも減少する。上記した各動作が繰り返されることにより、ソレノイド6に対する通電電流がパルス信号VEのデューティ比に対応した目標値にフィードバック制御される。さらに、偏差積分回路12の充放電時定数がパルス信号VEの周期よりも長く設定されているため、偏差積分回路12の充電電圧が飽和することがない。そのため、電源電圧VBが変動しても、パルス信号VEのデューティ比に応じた高精度の電流フィードバック制御が行われる。図3は、電源電圧VBが16Vであるときの駆動信号VGおよび電流iLの波形を示している。また、図4は、電源電圧VBが10Vであるときの駆動信号VGおよび電流iLの波形を示している。図3および図4に示すように、本実施形態の構成においては、電源電圧VBの電圧値に応じて、ソレノイド6に流れる電流iLのリップル成分の振幅が変化する。具体的には、電源電圧VBが高くなるほど、電流iLの振幅最大値および最小値の差は大きくなる。図3に示すように、電源電圧VBが16Vの場合、電流iL振幅は0.8A程度となる。一方、電源電圧VBが低くなるほど、電流iLの振幅は小さくなる。図4に示すように、電源電圧VBが10Vの場合、電流iL振幅は0.6A程度となる。ただし、電源電圧VBが高くなるほど主トランジスタT1がオンする期間=駆動信号VGがLレベルの期間が短くなり、電源電圧VBが低くなるほど主トランジスタT1がオンする期間が長くなる。そのため、電源電圧VBが変動したとしても、ソレノイド6に流れる電流iLの平均値実効電流は変化しない。図3および図4に示すように、電源電圧VBが16Vおよび10Vのいずれの場合にも、電流iLの平均値実行電流が目標値である1.1A程度となっていることが分かる。図5は、パルス信号VEの周波数駆動周波数が異なる2種類の電流iLの波形を例示している。図5中、実線は駆動周波数が250Hzの場合であり、一点鎖線は駆動周波数が500Hzの場合である。図5に示すように、駆動周波数が250Hzの場合における電流iLの振幅は、駆動周波数が500Hzの場合における電流iLの振幅に比べ、概ね2倍程度と大きくなっている。すなわち、駆動周波数および電流iLのリップル成分の振幅は、駆動周波数が低くなるほど振幅が大きくなり、駆動周波数が高くなるほど振幅が小さくなるという関係を有することが分かる。本実施形態では、上記した電源電圧VBおよびリップルの振幅の関係と、駆動周波数およびリップルの振幅の関係とを考慮した上で、パルス信号VEの周波数の設定を行っている。すなわち、制御回路2は、電源電圧VBの検出値を示す検出電圧Vdに応じて、電源電圧VBが高くなるほどパルス信号VEの周波数を高くするように切り替え、電源電圧VBが低くなるほどパルス信号VEの周波数を低くするように切り替える。具体的には、図6に示すように、制御回路2は、電源電圧VBがしきい値Vth以下の場合、パルス信号VEの周波数を第1の周波数250Hzに設定する。一方、電源電圧VBがしきい値Vthを超える場合、パルス信号VEの周波数を第2の周波数300Hzに設定する。なお、本実施形態において、上記しきい値Vthは16Vに設定されている。このしきい値Vthの値16Vは、ソレノイド駆動装置1が12V系システムに適用される場合における電源電圧VBの最大値であり、24V系システムに適用される場合における電源電圧VBの最小値である。従って、制御回路2は、12V系システムに適用される場合にはパルス信号VEの周波数を第1の周波数に設定し、24V系システムに適用される場合にはパルス信号VEの周波数を第2の周波数に設定するように周波数の切替動作を行う。なお、上記した最大値および最小値は、何らかの異常に伴って電源電圧VBが急激に上昇または低下するケースを考慮しない値である。なお、上記第1の周波数の値は、電源電圧VBが10~16Vの範囲において、電流iLのリップル成分の振幅が、制御安定性と、ソレノイド6により駆動される可動部分例えば、電磁弁の弁体の過渡応答性とについて、所望する性能が得られる範囲の大きさとなる値例えば250Hzに設定されている。また、上記第2の周波数の値は、電源電圧VBが16~32Vの範囲において、電流iLのリップル成分の振幅が、制御安定性と過渡応答性とについて所望する性能が得られる範囲の大きさとなる値例えば300Hzに設定されている。また、上記各周波数の値については、使用されるソレノイド6の各種特性をも考慮して決定されている。すなわち、周波数切替部は、電源電圧に応じてパルス信号の周波数を切り替える。具体的には、周波数切替部は、電源電圧が高くなるほどパルス信号の周波数を高くするように切り替え、電源電圧が低くなるほどパルス信号の周波数を低くするように切り替える。従って、電源電圧が変化することによりリップルの振幅が増減しても、周波数切替部が上記したようにパルス信号の周波数を切り替えることにより、その振幅の増減が相殺される。つまり、本手段によれば、電源電圧が変化した場合であっても、ソレノイドに流れる電流のリップルの振幅は、制御安定性および過渡応答性について所望の性能が得られるような大きさつまり、元々想定された範囲内の大きさに維持される。従って、本手段によれば、電源電圧の変動に影響を受けることなく、制御安定性および過渡応答性を両立することができる。なお、ここで言う相殺とは、電源電圧の変動に伴うリップルの増減が完全にキャンセルされる場合だけでなく、その増減の程度が小さくなる緩和される場合も含まれるものとする。以上説明した本実施形態によれば、次のような効果が得られる。ソレノイド駆動装置1は、電源電圧VBに応じてパルス信号VEの周波数を切り替える制御回路2を備えている。制御回路2は、電源電圧VBが高くなるほどパルス信号VEの周波数を高くし、電源電圧VBが低くなるほどパルス信号VEの周波数を低くするように周波数の切替動作を行う。従って、電源電圧VBが変化することにより、ソレノイド6に流れる電流iLのリップルの振幅が増減しても、制御回路2により上記周波数切替動作が行われることにより、その振幅の増減が相殺される。すなわち、本実施形態によれば、同一のソレノイド6を同一のソレノイド駆動装置1により駆動する際、電源電圧VBが変化した場合でも、電流iLのリップルの振幅は、制御安定性および過渡応答性について所望の性能が得られるような大きさに維持される。このように、本実施形態のソレノイド駆動装置1は、電源電圧VBの変動の影響を受けることなく、制御安定性および過渡応答性を両立することができる。なお、ここで言う相殺とは、電源電圧VBの変動に伴うリップルの振幅の増減が完全にキャンセルされる場合だけでなく、その増減の程度が小さくなる緩和される場合も含まれる。具体的には、制御回路2は、電源電圧VBがしきい値Vth16V以下である場合には駆動周波数を第1の周波数に切り替え、しきい値Vthを超える場合には駆動周波数を第2の周波数に切り替える。そして、第1の周波数の値および第2の周波数の値は、それぞれ12V系システムおよび24V系システムにおいてリップルの振幅が、制御安定性および過渡応答性について所望する性能が得られる範囲の大きさとなる値に設定されている。つまり、本実施形態のソレノイド駆動装置1は、12V系のシステムおよび24V系のシステムのうち、いずれのシステムに適用される場合であっても、互いに特性の異なる2つの回路を実装することなく、同一の回路構成ハードウェアを用いて、同一のソレノイド6に流れる電流iLのリップルの振幅が最適となるようにパルス信号の周波数が切り替えられ、制御安定性および過渡応答性を両立することができる。制御回路2は、電圧検出回路3から出力される電源電圧VBの検出値を示す検出電圧Vdに基づいてパルス信号VEの周波数を切り替える。つまり、制御回路2は、実際に検出される電圧値に応じてパルス信号VEの周波数を切り替える。このようにすれば、電源電圧VBの変動に伴うリップルの振幅の増減を、周波数切替によるリップルの振幅の増減により、精度よく相殺することが可能となる。すなわち、電源電圧VBの変動に影響を受けることなく、最適なリップルの振幅が維持される精度が高まるという効果が得られる。第2の実施形態以下、本発明の第2の実施形態について図7を参照しながら上記実施形態と異なる点を主端に説明する。第1の実施形態では、適用する電源システム12V系/24V系に応じて、パルス信号VEの周波数が2段階に切り替えられるようになっていた。この場合、電源電圧VBが一定であれば、基本的にはソレノイド6に流れる電流iLのリップルの振幅が大きく変化することはない。しかし、同じ電源システムであっても電源電圧VBは一定であるとは限らない。例えば、車両が走行を開始した直後始動直後における電源電圧VBの電圧値と、車両が長時間走行した後通常時における電源電圧VBの電圧値とでは大きく異なる。このような電源電圧VBの大きな変化に伴い、リップルの振幅も大きく変化する。本実施形態では、以下に示すように、このようなケースにおけるリップルの振幅の変化に対応することが可能となっている。図7は、第1の実施形態における図6相当図であり、電源電圧VBとパルス信号VEの周波数駆動周波数の設定値との関係を示している。本実施形態では、電源電圧VBに応じて駆動周波数をリニア連続的に切り替える手法図6に実線で示すと、電源電圧VBに応じて駆動周波数を段階的に切り替える手法図6に一点鎖線で示すとについて説明する。まず、電源電圧VBに応じて駆動周波数をリニアに切り替える手法について説明する。この場合、例えば、下記1式に示すような電源電圧VBおよび駆動周波数の関係式を準備する必要がある。ただし、Fは駆動周波数を示し、αは図6における直線の傾きを決定する定数を示し、βは駆動周波数の最小値を決定する定数を示している。F=αVBβ...1このように、電源電圧VBに応じて駆動周波数をリニアに切り替えれば、電源電圧VBが変動した場合、その変動によるリップルの振幅の増減を精度よく相殺するように、駆動周波数を変化させることが可能となる。つまり、電源電圧VBの変動に影響を受けることなく、最適なリップルの振幅が維持される精度が一層高まるという効果が得られる。続いて、電源電圧VBに応じて駆動周波数を段階的に切り替える手法について説明する。この場合、電源電圧VBに対応する3つのしきい値Vth1例えば7V、しきい値Vth2例えば21Vおよびしきい値Vth3例えば35Vを設ける。そして、電源電圧VBがしきい値Vth1以下である場合、駆動周波数を第1の周波数例えば200Hzに設定する。電源電圧VBがしきい値Vth1を超え且つしきい値Vth2以下である場合、駆動周波数を第2の周波数例えば250Hzに設定する。しきい値Vth2を超え且つしきい値Vth3以下である場合、駆動周波数を第3の周波数例えば300Hzに設定する。電源電圧VBがしきい値電圧Vth3を超える場合、駆動周波数を第4の周波数例えば350Hzに設定する。このように、電源電圧VBに応じて駆動周波数を段階的に切り替えれば、リニアに切り替える手法に比べ、上記した精度は若干低下するものの、上記1式に示したような電源電圧VBおよび駆動周波数の関係式を準備する必要がないため、容易に電源電圧VBに応じた周波数切替動作を行うことができる。そのため、リニアに切り替える手法に比べ、制御回路2における処理負荷が軽減されるという効果が得られる。また、電源電圧VBに応じて駆動周波数を段階的に切り替える手法によれば、電源電圧VBおよび駆動周波数の関係が一定の式により表せないような場合であっても対応することが可能となる。第3の実施形態以下、本発明の第3の実施形態について図8を参照しながら上記各実施形態と異なる点を主体に説明する。図8は、第1の実施形態における図1相当図であり、本実施形態のソレノイド駆動装置の構成を示している。図8に示す本実施形態のソレノイド駆動装置21は、図1に示したソレノイド駆動装置1に対し、電圧検出回路3が省かれている点と、制御回路2に代えて制御回路22を備えている点とが異なっている。制御回路22パルス信号出力部および周波数切替部に相当は、マイクロコンピュータを主体として構成されており、基本的な構成は図1に示した制御回路2と同様である。ただし、制御回路22は、データテーブルが記憶される記憶部23を備えている。記憶部23は、例えばEEPROMなどのメモリにより構成される。データテーブルは、電源電圧VBの電圧値とパルス信号VEの周波数駆動周波数の値とが対応付けられたものである。そのデータテーブルは、使用するソレノイド6の各種特性、電源電圧VB、制御安定性、過渡応答性などの仕様に合わせて予め作成されている。制御回路22には、ソレノイド駆動装置21が適用される電源システム12V系/24V系を示す信号Saが与えられている。制御回路22は、その信号Saにより適用される電源システムつまり、電源電圧VBの使用範囲を判断する。制御回路22は、電源電圧VBの使用範囲と、記憶部23に記憶されたデータテーブルとに基づいてパルス信号VEの周波数を設定する。このようにすれば、使用するソレノイド6の各種特性に応じたデータテーブルを準備しておくことにより、様々な種類のソレノイドを駆動するためのソレノイド駆動装置を、複数の特性の異なる回路を実装することなく、同一の回路構成によって実現することが可能となる。さらに、制御回路22を構成するマイクロコンピュータのプログラムを共通化することが可能となり、製造工場におけるソフトウェア管理費用を低減することができる。その他の実施形態なお、本発明は上記し且つ図面に記載した各実施形態に限定されるものではなく、次のような変形または拡張が可能である。電流検出部としては、図1および図8に示した電流検出部14のような構成に限らずともよい。また、パルス幅増減部としては、図1および図8に示したパルス幅増減回路4のような構成に限らずともよい。すなわち、本発明のソレノイド駆動装置は、パルス信号VEを電圧信号に変換するD/V変換回路と、D/V変換回路から出力される電圧信号と電流検出部から出力される電流iLの検出値に相当する電圧信号との差分信号を出力する指令電圧生成回路と、上記差分信号と三角波発生回路により出力されるPWM制御の搬送波である三角波信号とを比較してPWM信号を生成するV/D変換回路とを備えた構成などであってもよい。第1の実施形態において、電源電圧VBがしきい値Vth以下である場合にパルス信号VEの周波数駆動周波数を第1の周波数に切り替え、しきい値Vthを超える場合に駆動周波数を第2の周波数に切り替えていたが、これに代えて、電源電圧VBがしきい値Vth未満である場合に駆動周波数を第1の周波数に切り替え、しきい値Vth以上である場合に駆動周波数を第2の周波数に切り替えてもよい。また、第2の実施形態における駆動周波数を段階的に切り替える手法においても、上記同様に以下および超えるの部分を、それぞれ未満および以上に置き換えることが可能である。また、第2の実施形態におけるしきい値は3つに限らずともよく、4つ以上設けてもよい。第2の実施形態における駆動周波数をリニアに切り替える手法で用いる電源電圧VBおよび駆動周波数の関係式は、上記した1式のような1次式に限らず、例えば2次式など適宜変更可能である。要するに、上記関係式は、使用するソレノイド6の各種特性、電源電圧VB、制御安定性、過渡応答性などの仕様に合わせて適宜作成すればよい。