JP2014108021A - Pwm出力装置 - Google Patents

Pwm出力装置 Download PDF

Info

Publication number
JP2014108021A
JP2014108021A JP2012261302A JP2012261302A JP2014108021A JP 2014108021 A JP2014108021 A JP 2014108021A JP 2012261302 A JP2012261302 A JP 2012261302A JP 2012261302 A JP2012261302 A JP 2012261302A JP 2014108021 A JP2014108021 A JP 2014108021A
Authority
JP
Japan
Prior art keywords
pwm
phase
signal
dead time
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012261302A
Other languages
English (en)
Inventor
Masahiro Minami
真寛 南
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2012261302A priority Critical patent/JP2014108021A/ja
Publication of JP2014108021A publication Critical patent/JP2014108021A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Control Of Ac Motors In General (AREA)
  • Inverter Devices (AREA)

Abstract

【課題】鋸波を用いデッドタイムを考慮した正相/逆相のPWM出力において、デッドタイム挿入と位相シフトを高い自由度で行う。
【解決手段】
入力されたPWMパルス幅の指令値に基づいて、正相及び逆相のPWM信号の各々について、オン状態にするセットタイミングと、オフ状態にするリセットタイミングとを設定する。パルス幅がデッドタイムに比べて小さい領域で、例えば正相のPWMをインアクティブ固定とするマスク処理を行う。その結果、逆相のPWMに余計なデッドタイムが挿入されず、クロックサイクル単位で細かい制御を行うことができる。更に、位相シフトも行うことができる。
【選択図】図1

Description

本発明は、モータ制御等に使用されるPWM(Pulse Width Modulation)出力装置に関する。本発明は特に、PWM搬送波として鋸波を採用したPWM出力装置に関する。
近年、世界規模で環境問題への対応が求められている。そのような状況下で、洗濯機、エアコン等の家電製品に対して省エネ要求が厳しくなってきている。これらの家電製品に搭載される三相モータを制御する為に、PWM出力装置を搭載したマイコンが広く用いられている。
三相モータは、PWM出力装置から出力されるPWM正相出力、PWM逆相出力の相補的(一方がONの時、もう一方はOFFとなる)な2つのPWM出力で制御される。三相モータを効率よく回転させる為には、三相モータを制御する正相および逆相のPWM出力のON/OFF期間を細かく調整しなければならない。しかしモータ機器に接続する配線遅延や温度ばらつきなどにより、効率の良い調整を行う事は非常に困難を極める。そこで、高精度で制御可能なPWM出力装置の実現が望まれている。
図13は、三相モータとその駆動回路の一例の模式図である。三相モータMは、駆動回路によって3個のコイルにU相、V相、W相の電流がそれぞれ流されることによって駆動される。駆動回路は、上アームA1と下アームA2とを備える。上アームA1は、バッテリBatの高電位側端子に並列に接続されるトランジスタTr1、Tr3、Tr5を備える。Tr1、Tr3、Tr5のゲートには、U相、V相、W相の正相のPWM信号U+、V+、W+がそれぞれ供給される。下アームA2は、高電位側が上アームA1のTr1、Tr3、Tr5とそれぞれ直列に接続され、低電位側がバッテリBatの低電位側端子に接続されるトランジスタTr2、Tr4、Tr6を備える。Tr2、Tr4、Tr6のゲートには、U相、V相、W相の逆相のPWM信号U−、V−、W−がそれぞれ供給される。
U相のトランジスタ対Tr1、Tr2の接続ノードに、三相モータMのU相端子が接続される。V相のトランジスタ対Tr3、Tr4の接続ノードに、三相モータMのV相端子が接続される。W相のトランジスタ対Tr5、Tr6の接続ノードに、三相モータMのW相端子が接続される。トランジスタTr1〜Tr6の各々のゲートにPWM信号を供給することにより、制御されたデューティ比で三相モータMを駆動することができる。
[デッドタイムの説明]
PWM正相出力とPWM逆相出力とは互いに相補的であり、基本的には一方がONの時、もう一方はOFFとなる。しかしながら、正相信号と逆相信号を完全に互いに逆(一方がONの時、他方がOFF)とする制御を採用した場合、マイコンに接続されるモータ機器の配線等の遅延や、その温度的な特性により、正相出力と逆相出力が同時にONする可能性がある。PWM正相出力とPWM逆相出力が同時にONした場合(例えば図13のTr1とTr2が同時にONした場合)、短絡によりモータ制御機器に貫通電流が流れてしまう。モータ機器の正常な動作を保証するために、このような現象を避けることが望まれる。
PWM正相出力とPWM逆相出力の同時ONを防ぐ為に、デッドタイムを設定する方法が知られている。デッドタイムとは、モータ制御用のPWM出力に対して、PWM正相出力と、PWM逆相出力との同時オンを防ぐように設定される期間である。この期間中は、PWM正相出力とPWM逆相出力との両方がオフ(インアクティブ)に設定される。このデッドタイムを設定する事を、以下においてデッドタイムを挿入すると称す。
図14は、デッドタイムの説明図である。図14(a)は、PWM搬送波である三角波TRIを示す。図14(b)は、デッドタイム挿入前のPWM信号の一例として、U相の正相(U+)と逆相(U−)のPWM信号を示す。図14(c)は、デッドタイム挿入後のU相の正相と逆相のPWM信号を示す。バス等を介して与えられたデューティ比の指令値に基づいて、図14(a)に示されるコンペア値が決定される。コンペア値が三角波TRIを下回る時刻t1から時刻t2までの期間、図14(b)に示すように、デッドタイム挿入前の正相のPWM信号がオン(アクティブ)状態となり、逆相のPWM信号がオフ(インアクティブ)状態となる。
正相と逆相の一方のPWM信号がオン状態であるとき、他方のPWM信号がその後一定期間オフ状態を保つように、デッドタイムが挿入される。図14(c)の例では、逆相PWM信号が時刻t1までオン状態であるため、正相PWM信号が時刻t1でオン状態とならず、時刻t1からデッドタイムDTが経過するまでオフ状態を保つようにデッドタイムが挿入される。同様に、正相PWM信号が時刻t2までオン状態であるため、逆相PWM信号が時刻t2でオン状態とならず、時刻t2からデッドタイムDTが経過するまでオフ状態を保つようにデッドタイムが挿入される。このようなデッドタイムを挿入したPWM信号によってモータMの駆動回路を制御することにより、信号の伝達時間等に多少のばらつきが発生しても、貫通電流を防ぐことができる。
[鋸歯状の搬送波の利点]
次に、PWM搬送波として鋸歯状の波を採用することの利点について説明する。PWM制御においては、スイッチング素子に対するオン/オフ指令信号を生成するために、搬送波として三角波又は鋸歯状波が用いられる。これらの搬送波の形状は、装置の用途に応じて使い分けられる。以下に、鋸歯状の搬送波の利点の一つについて説明する。
精密な制御を行うために、PWM信号の位相をずらす制御が行われる場合がある。図15は、その説明図である。図15(a)、図15(b)は、図14(a)、図14(b)と同じ三角波と、それを用いて生成されるPWM信号をそれぞれ示す。
三角波を用いた一般的な方法では、PWM信号のセット(オン状態への立ち上がり)は搬送波のカウントアップ期間(t0<t<t2)に、且つリセット(オフ状態への立ち下がり)は搬送波のカウントダウン期間(t2<t<t5)に設定される。例えばU+信号はカウントアップ期間にセットされ、カウントダウン期間にリセットされる。そのため、図15(b)に示される波形に対して位相シフトを行う場合、図15(c)に示される波形が位相シフト最大となる。図15(d)に示されるように、三角波のピーク(t=t2)を越えるような位相シフトを有するPWM信号は、生成することができない。
図16(a)〜図16(c)は、鋸歯状のPWM搬送波の説明図である。図16(a)は、PWM搬送波である鋸波SAWを示す。時刻t0からt4までの一周期の間、鋸波SAWのカウンタ値は線形に増加し続ける。そして一周期の最後の時刻t4において、カウンタ値が時刻t0の時と同じ値にリセットされる。このような鋸波SAWを採用する場合、PWM信号を生成するために、2つのコンペア値C1、C2が用意される。第1の小さい値のコンペア値C1がPWM信号の立ち上がりタイミングに対応する。第2の大きい値のコンペア値C2がPWM信号の立ち下がりタイミングに対応する。
図16(b)に示すように、PWM信号(デッドタイム挿入前)は、コンペア値C1が鋸波SAWを下回る時刻t1から、コンペア値C2が鋸波SAWを下回る時刻t2までの間、アクティブとされる。このような波形に対し、図14(c)と同様にデッドタイムを挿入することにより、図16(c)に示すPWM信号が生成される。
PWM搬送波として鋸波を採用した場合、図14(a)〜図14(c)で説明したような、三角波のカウントアップ期間とカウントダウン期間の区別が無い。そのため、鋸波においては、三角波の場合に比べて、位相シフトの制限が無く、より大きい幅でPWM信号を位相シフトすることができるという利点がある。
次に、デッドタイム挿入に関する先行技術文献について説明する。非特許文献1(FreeScale社マイコンUser Manual)に、デッドタイムを挿入する技術の一例が記載されている。このFreescale社のマイコンは、PWM出力ブロックとデッドタイム挿入ブロックとを搭載している。この技術においては、正相出力と逆相出力の同時オンを回避しつつ、PWMパルス幅調整の最小単位である1クロックサイクル幅の単位で細かく三相モータ制御を行う事が目的とされている。
図17A及び図17Bは、非特許文献1における鋸波(三角波)PWM出力装置の回路構成図である。この回路は、PWM出力生成ブロック1100、PWMの出力幅設定レジスタ1101、PWM出力生成ブロックが出力するPWM出力1102、デッドタイム挿入ブロック1103、デッドタイム設定レジスタ1104、デッドタイム挿入後のPWM出力1105を備える。PWM出力1102は6本の信号ラインを有する。これらの信号ラインにより、三相モータのU相、V相、W相のそれぞれについての正相と逆相の信号が伝送される。
図18に、参考技術として、上記回路による鋸波PWM出力装置のPWM出力生成ブロック1100からのPWM出力1102の出力波形の例を示す。PWM周期設定レジスタ1106に9、PWMの出力幅設定レジスタ1101にPWM出力幅(パルス幅)として4クロックサイクルを設定し、デッドタイム設定レジスタにデッドタイムとして2クロックサイクルを設定した時の波形が示されている。
タイマカウンタ1107は、0からカウントを開始し、クロックの立ち上がりでカウンタ値がインクリメント(値が+1足される)される。PWM周期設定レジスタ1106の値と一致した場合、カウンタ値はクリアされ0となる。PWM周期設定レジスタ1106に9を設定した場合、タイマカウンタ1007は0→1→2・・・・→7→8→9→0→1とクロックサイクルごとに動作しPWMの周期は10となる
デッドタイム挿入前のPWM出力1102の正相と逆相のPWM出力の波形が、それぞれPWM出力波形(正相)1201とPWM出力波形(逆相)1202として示されている。PWM出力波形(正相)1201は、タイマカウンタ1107が0の時にハイとなり、タイマカウンタ1107がPWM出力幅設定レジスタに設定した値の時にロウとなる。PWM出力波形(逆相)1202は逆に、タイマカウンタ1107が0の時にロウとなり、タイマカウンタ1107がPWM出力幅設定レジスタに設定した値の時にハイとなる。
この状態では、PWM出力の正相、逆相の同時オンは発生しない。しかし実デバイス上では、モータデバイスの配線容量による遅延等の影響により、正相と逆相のそれぞれに遅延が発生する可能性がある。従って、正相と逆相の同時オンを回避するために、デッドタイムが挿入される。
PWM出力波形(正相)1203は、PWM出力波形(正相)1201にデッドタイム期間1204を挿入した後の波形を示している。PWM出力生成ブロック1100が出力するPWM出力波形(正相)1201に比べて、ロウ・レベルからハイ・レベルになるタイミングが2クロックサイクル遅れる。同様に、PWM出力波形(逆相)1202は、PWM出力波形(逆相)1204にデッドタイム期間1205を挿入した後の波形を示している。PWM出力生成ブロック1100が出力するPWM出力波形(逆相)1201に比べて、ロウ・レベルからハイ・レベルになるタイミングが2クロックサイクル遅れる。このような制御により、信号伝達のばらつき等があった場合でも、正相PWM信号と逆相PWM信号の同時ONによる短絡を防ぐことができる。
[デッドタイム挿入における課題]
次に、デッドタイムを挿入する技術において発生する課題について説明する。上述したようなデッドタイム挿入においては、デッドタイム設定幅に係わらず、PWM出力生成ブロックからのPWM出力1102がデッドタイム挿入ブロック1103に入力される。その為、デッドタイム設定より短いPWM出力幅を設定した場合においても、デッドタイム挿入動作が発生する。その結果、PWM出力がアクティブ又はインアクティブ固定の状態から1クロックサイクル幅単位で順次にPWM出力を調整することができず、効率よくモータを制御できないという問題がある。
この問題について、図19A〜図19Fを用いて詳細に説明する。図19A〜図19Fは参考技術における鋸波(三角波)PWM出力装置による出力波形である。デッドタイム設定レジスタ1104に2クロックサイクルのデッドタイムを設定する。図19A〜図19Fは、PWMの出力幅設定レジスタ601にPWM出力幅として0(ゼロ)〜5の6種類のクロックサイクルの設定をした時の波形図をそれぞれ示す。各図では、デッドタイム挿入前のPWM出力波形とデッドタイム挿入後のPWM出力波形を上下に並べて示している。デッドタイム挿入後のPWM出力波形は、PWM出力装置から出力され、モータ制御等に用いられる。
図19Aは、PWMの出力幅設定レジスタ1101にPWM出力幅0(ゼロ)を設定した時のPWM出力波形を示している。この場合、デッドタイム挿入前のPWM波形1102については、正相がインアクティブに固定され、逆相がアクティブに固定される。正相、逆相ともに、デッドタイムが挿入されるイベント(アクティブからインアクティブへの変化)は発生しない。その為、デッドタイム挿入後のPWM波形1105も正相がインアクティブに固定され、逆相がアクティブに固定される。
図19Bは、PWMの出力幅設定レジスタ1101にPWM出力幅1を設定した時のPWM出力波形を示している。デッドタイム挿入前のPWM波形1102については、正相が1クロックサイクル間アクティブになり、逆相が1クロックサイクル間インアクティブとなる。デッドタイム挿入後のPWM波形1105については、正相がインアクティブに固定され、逆相が3クロックサイクル間インアクティブとなる。
図19Cは、PWMの出力幅設定レジスタ1101にPWM出力幅2を設定した時のPWM出力波形を示している。デッドタイム挿入前のPWM波形1102については、正相が2クロックサイクル間アクティブになり、逆相が2クロックサイクル間インアクティブとなる。デッドタイム挿入後のPWM波形1105については、正相がインアクティブ固定、逆相が4クロックサイクル間インアクティブとなる。
図19Dは、PWMの出力幅設定レジスタ1101にPWM出力幅3を設定した時のPWM出力波形を示している。デッドタイム挿入前のPWM波形1102については、正相が3クロックサイクル間アクティブになり、逆相が3クロックサイクル間インアクティブとなる。デッドタイム挿入後のPWM波形1105については、正相が1クロックアクティブとなり、逆相が5クロックサイクル間インアクティブとなる。
図19Eは、PWMの出力幅設定レジスタ1101にPWM出力幅4を設定した時のPWM出力波形を示している。デッドタイム挿入前のPWM波形1102については、正相が4クロックサイクル間アクティブになり、逆相が4クロックサイクル間インアクティブとなる。デッドタイム挿入後のPWM波形1105については、正相が2クロックアクティブとなり、逆相が6クロックサイクル間インアクティブとなる。
図19Fは、PWMの出力幅設定レジスタ1101にPWM出力幅5を設定した時のPWM出力波形を示している。デッドタイム挿入前のPWM波形1102については、正相が5クロックサイクル間アクティブになり、逆相が5クロックサイクル間インアクティブとなる。デッドタイム挿入後のPWM波形1105については、正相が3クロックアクティブとなり、逆相が7クロックサイクル間インアクティブとなる。
図19Aと、図19Bを比較すると、デッドタイム挿入後のPWM出力(逆相)が、アクティブ固定(図19A)から、いきなり3クロックのインアクティブ(図19B)に遷移ししている。モータを効率良く回転させるためには、アクティブ固定→1クロックのインアクティブ→2クロックのインアクティブ→3クロックのインアクティブと言うように、1クロックサイクル幅で順次に遷移させることが望ましい。しかしながら、従来技術ではそのように調整できていない。すなわち従来技術では、アクティブ固定(図19A)の状態から順次にPWM出力の幅を1クロック幅単位で制御できていない。
図20A、図20Bに、PWMの出力幅設定レジスタ1101にPWM出力幅0から10を設定した時のPWM出力波形を示す。PWM出力幅設定レジスタ1101に0を設定した時のデッドタイム挿入後のPWM波形1105、1を設定した時のデッドタイム挿入後のPWM波形1105の間で、1クロック幅単位で制御できていないこと(前述までの説明した内容)、またPWM出力幅設定レジスタ1101に9を設定した時のデッドタイム挿入後のPWM波形1105、10を設定した時のデッドタイム挿入後のPWM波形1105の間で、1クロック幅単位で制御できていないことが分かる。
"MC9S12E128,MC9S12E64,MC9S12E32 Data Sheet"(特に325頁)、[online]、2005年10月、FreeScale社、[2011年6月23日検索]、インターネット<URL:http://cache.freescale.com/files/microcontrollers/doc/data_sheet/MC9S12E128V1.pdf>
鋸波を用いデッドタイムを考慮した正相/逆相のPWM出力において、デッドタイム挿入と位相シフトを高い自由度で行う技術が望まれる。その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
一実施形態におけるPWM出力装置は、PWM(パルス幅変調)の周期が設定されるPWM周期設定レジスタと、入力したクロック信号に基づいて、その設定された周期を有するカウンタ値を出力するタイマカウンタとを備える。演算ユニットは、PWMパルス幅の指令値と、カウンタ値とに基づいて、正相PWM信号をオン状態にする正相セットタイミングと、正相PWM信号をオフ状態にする正相リセットタイミングと、逆相PWM信号をオン状態にする逆相セットタイミングと、逆相PWM信号をオフ状態にする逆相リセットタイミングとの各々を設定する。デッドタイム挿入前PWM信号出力部は、カウンタ値と正相セットタイミングとが一致したときに正相PWM信号をオン状態にすることを指令する正相PWMセット信号を出力し、カウンタ値と正相リセットタイミングとが一致したときに正相PWM信号をオフ状態にすることを指令する正相PWMリセット信号を出力し、カウンタ値と逆相セットタイミングとが一致したときに逆相PWM信号をオン状態にすることを指令する逆相PWMセット信号を出力し、カウンタ値と逆相リセットタイミングとが一致したときに逆相PWM信号をオフ状態にすることを指令する逆相PWMリセット信号を出力する。デッドタイム挿入ユニットは、正相PWMセット信号、正相PWMリセット信号、逆相PWMセット信号、及び逆相PWMリセット信号に対して、設定されたクロックサイクルのデッドタイムを挿入する。
鋸波を用いデッドタイムを考慮した正相/逆相のPWM出力において、デッドタイム挿入と位相シフトを高い自由度で行う技術が提供される。
図1は、第1実施形態の鋸波PWM出力装置の回路構成図である。 図2は、第1実施形態の演算アルゴリズムである。 図3は、第1実施形態の演算アルゴリズムによる演算例である。 図4Aは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図4Bは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図4Cは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図4Dは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図4Eは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図4Fは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図5Aは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図5Bは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図5Cは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図5Dは、第1実施形態による鋸波PWM出力装置の出力波形を示す。 図6は、第1実施形態の変形例における鋸波PWM出力装置の回路構成図である。 図7Aは、第1実施形態の変形例における鋸波PWM出力装置の出力波形を示す。 図7Bは、第1実施形態の変形例における鋸波PWM出力装置の出力波形を示す。 図8は、第2実施形態の鋸波PWM出力装置の回路構成図である。 図9は、第2実施形態の演算アルゴリズムである。 図10は、第2実施形態の演算アルゴリズムによる演算例である。 図11Aは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図11Bは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図11Cは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図11Dは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図11Eは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図11Fは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図12Aは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図12Bは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図12Cは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図12Dは、第2実施形態による鋸波PWM出力装置の出力波形を示す図である。 図13は、三相モータの駆動回路の一例を示す。 図14は、三角波に基づくPWM信号の説明図である。 図15は、三角波に基づくPWM信号の位相シフトの説明図である。 図16は、鋸波に基づくPWM信号の説明図である。 図17Aは、参考技術における鋸波PWM出力装置の構成図である。 図17Bは、参考技術における鋸波PWM出力装置の構成図である。 図18は、参考技術による鋸波PWM出力装置の出力波形を示す図である。 図19Aは、参考技術による鋸波PWM出力装置の出力波形を示す図である。 図19Bは、参考技術による鋸波PWM出力装置の出力波形を示す図である。 図19Cは、参考技術による鋸波PWM出力装置の出力波形を示す図である。 図19Dは、参考技術による鋸波PWM出力装置の出力波形を示す図である。 図19Eは、参考技術による鋸波PWM出力装置の出力波形を示す図である。 図19Fは、参考技術による鋸波PWM出力装置の出力波形を示す図である。 図20Aは、参考技術におけるPWM出力波形を示す。 図20Bは、参考技術におけるPWM出力波形を示す。
以下、添付図面を参照して、幾つかの実施形態を説明する。
[第1実施形態]
図1は、第1実施形態におけるPWM出力装置の構成を示す。このPWM出力装置は、例えば三相モータのU相、V相、W相の各々を制御するための正相及び逆相のPWM信号を生成するために用いることができる。
タイマカウンタ100は、比較器103からの一致信号を入力とし、カウンタ値を比較器109〜112に出力する。これらの比較器103、109〜112の各々は、一般的な比較回路によって構成できるが、入力した複数のデジタル信号が示す値が互いに一致しているか不一致であるか判別する一致判定機能を有すればよい。
PWM周期設定レジスタ101は、バスにより(すなわち、外部機器等からバスを介して)設定された設定値を格納し、その設定値を比較器103に出力する。デッドタイム設定レジスタ102は、同様にバスにより設定された設定値を格納し、その設定値を演算ユニット104と、デッドタイム挿入ユニット117に出力する。比較器103には、タイマカウンタ100のカウンタ値と、PWM周期設定レジスタ101の値とが入力される。比較器は、それらの値が互いに一致したとき、一致信号をタイマカウンタ100に出力する。
演算ユニット104には、デッドタイム設定レジスタ102の値、PWM周期設定レジスタ101に格納されたPWM周期の値、バスから書き込まれたデータ(外部機器等から入力するPWMパルス幅の指令値など)が入力される。演算ユニット104は、後述する演算アルゴリズムに従って演算を行い、演算結果をPWM正相セットレジスタ105、PWM正相リセットレジスタ106、PWM逆相セットレジスタ107、PWM逆相リセットレジスタ108に出力する。
PWM正相セットレジスタ105、PWM正相リセットレジスタ106、PWM逆相セットレジスタ107、PWM逆相リセットレジスタ108、及び4つの比較器109〜112は、デッドタイム挿入前のPWM信号を出力するデッドタイム挿入前PWM信号出力部として機能する。
PWM正相セットレジスタ105には、演算ユニット104の演算結果である正相セットタイミングの設定値が入力される。その設定値は、比較器109に出力される。PWM正相リセットレジスタ106には、演算ユニット104の演算結果である正相リセットタイミングの設定値が入力される。その設定値は、比較器110に出力される。PWM逆相セットレジスタ107には、演算ユニット104の演算結果である逆相セットタイミングの設定値が入力される。その設定値は、比較器111に出力される。PWM逆相リセットレジスタ108には、演算ユニット104の演算結果である逆相リセットタイミングの設定値が入力される。その設定値は、比較器112に出力される。
比較器109は、タイマカウンタ100(正確には、タイマカウンタ100がクロックサイクル毎にカウントアップし、PWM周期毎にリセットすることによって生成するカウンタ値)と、PWM正相セットレジスタ105の設定値を入力する。比較器109は、それらの値が互いに一致したとき、一致信号をPWM正相出力レジスタ113に出力する。比較器110は、タイマカウンタ100と、PWM正相リセットレジスタ106の設定値を入力する。比較器110は、それらの値が互いに一致したとき、一致信号をPWM正相出力レジスタ113に出力する。
比較器111は、タイマカウンタ100と、PWM逆相セットレジスタ107の設定値とを入力する。比較器111は、それらの値が互いに一致したとき、一致信号をPWM逆相出力レジスタ114に出力する。比較器112は、タイマカウンタ100と、PWM逆相リセットレジスタ108の値とを入力する。比較器112は、それらの値が互いに一致したとき、一致信号をPWM逆相出力レジスタ114に出力する。
PWM正相出力レジスタ113は、比較器109、110からの一致信号を入力し、デッドタイム挿入前PWM正相出力115を出力する。PWM逆相出力レジスタ114は、比較器111、112からの一致信号を入力し、デッドタイム挿入前PWM逆相出力116を出力する。デッドタイム挿入ユニット117は、デッドタイム設定レジスタ102からデッドタイム設定値(デッドタイムの長さをクロックサイクル単位で示した値)を入力する。デッドタイム挿入ユニット117は、デッドタイム挿入前PWM正相出力115と、デッドタイム挿入前PWM逆相出力116とに対して、デッドタイム設定値を付加し、デッドタイム挿入後PWM正相出力118と、デッドタイム挿入後PWM逆相出力119として出力する。
次に、図1に示したPWM出力装置の動作について説明する。タイマカウンタ100は、カウンタ値のカウントアップ動作により、PWM周期設定レジスタ101に設定された周期を有する鋸歯状のPWM搬送波を生成する。タイマカウンタ100は、図示しないクロック信号(正確には、その信号の立ち上がり端)が入力される毎に、カウンタ値を+1ずつインクリメントする。そのカウンタ値は、PWM周期設定レジスタ101に設定された周期と一致するタイミングで、比較器103から出力される一致信号によりクリアされる。その為、例えばPWM周期設定レジスタ101に9を設定した場合、タイマカウンタ100は0→1→2・・・・→7→8→9→0→1とクロックサイクルごとに動作し、PWMの周期は10となる。タイマカウンタ100のカウンタ値は、比較器109〜112に出力される。
PWM周期設定レジスタ101と、デッドタイム設定レジスタ102とに、本実施形態におけるPWM出力装置が使用される環境に合わせて、バスより(外部機器等からバスを介して)任意の値が書き込まれる。演算ユニット104には、本PWM出力装置が接続されるモータの回転位置、回転速度に応じて、バスより任意の値(PWM出力幅、ディーティ比)が書き込まれる。演算ユニット104には、PWM周期設定レジスタ101の値と、デッドタイム設定レジスタの値と、バスより書き込まれた値とが入力される。演算ユニット104は、それらの入力値に基づいて、図2のアルゴリズムに従い演算を行い、演算結果をPWM正相セットレジスタ105、PWM正相リセットレジスタ106、PWM逆相セットレジスタ107、PWM逆相リセットレジスタ108に出力する。
演算ユニット104に書き込むPWM出力幅の範囲は、デッドタイムを考慮しなければ0〜PWMの周期(PWM周期設定レジスタ101の値+1)である。しかしデッドタイムを考慮すると、正相と逆相のPWM信号を補完する必要がある。その為、PWM出力幅の範囲は、0〜PWMの周期+デッドタイム設定×2+1(PWM周期設定レジスタ101の値+1+デッドタイム設定レジスタ102の値×2)となる。
PWM正相セットレジスタ105、PWM正相リセットレジスタ106、PWM逆相セットレジスタ107、PWM逆相リセットレジスタ108には、演算ユニット104の演算結果が格納される。PWM正相セットレジスタ105と、タイマカウンタ100の値は比較器109で比較され、一致した場合、PWM正相出力レジスタ113がセットされる。PWM正相リセットレジスタ106と、タイマカウンタと100の値は比較器110で比較され、一致した場合、PWM正相出力レジスタ113がリセットされる。PWM正相セットレジスタ105と、PWM正相リセットレジスタ106に同じ値が設定され、タイマカウンタ100と同時に一致した場合は、リセットが優先されPWM正相出力レジスタ113はリセットされる。
PWM逆相セットレジスタ107と、PWM逆相リセットレジスタ108、PWM逆相セットレジスタ107とタイマカウンタ100の比較器111、PWM逆相リセットレジスタ108とタイマカウンタ100の比較器112、PWM逆相出力レジスタ114も、PWM正相と同様の動作を行う。
デッドタイム挿入ユニット117は従来例と同様の動作を行い、デッドタイム挿入前PWM正相出力115、デッドタイム挿入前PWM逆相出力116に対して、デッドタイム設定レジスタ102に設定したクロックサイクル分デッドタイムを挿入し、デッドタイム挿入後PWM正相出力118、デッドタイム挿入後PWM逆相出力119を出力する。
図2は、本実施形態における演算ユニットの演算アルゴリズムを記載する。図中の“DU”は、演算ユニット104へのバスからの書き込み値(デッドタイム挿入前のPWMアクティブ信号の出力幅をクロックサイクル単位で示した値)、“PE”はPWM周期設定レジスタ101の設定値(PWM周期)、“DT”はデッドタイム設定レジスタ102の設定値(デッドタイムの長さ)を示す。
“正PWMS”は、演算ユニット104へDUの値を書き込んだ時の、演算ユニット104から、PWM正相セットレジスタ105への出力値を示す。
“正PWMC”は、演算ユニット104へDUの値を書き込んだ時の、演算ユニット104から、PWM正相リセットレジスタ106への出力値を示す。
“逆PWMS”は、演算ユニット104へDUの値を書き込んだ時の、演算ユニット104から、PWM逆相セットレジスタ107への出力値を示す。
“逆PWMC”は、演算ユニット104へDUの値を書き込んだ時の、演算ユニット104から、PWM逆相リセットレジスタ108への出力値を示す。
図2のように演算ユニット104がPWM正相、逆相のセット、リセットタイミングを演算することにより、以下のような処理が可能となる。演算ユニットは、PWMパルス幅の指令値(バスからの書き込み値)が、設定されたクロックサイクルのデッドタイム(DT)に応じて設定される所定の基準期間に比べて小さい場合、正相PWM信号がオン状態とならないように正相セットタイミングの設定を行う。図2の例では、所定の基準期間は、前記設定されたクロックサイクルのデッドタイムの2倍である。図2では、0<DU≦DT×2の期間は、PWM正相セットレジスタ106に0が出力され、正相PWM信号がオンされない。
図3は、PWM正相セットレジスタ105、PWM正相リセットレジスタ106、PWM逆相セットレジスタ107、及びPWM逆相リセットレジスタ108に出力される演算ユニット104の演算結果を示す。PWM周期設定レジスタ101に格納されるPWM周期は9、デッドタイム設定レジスタ102に格納されるデッドタイム長さは2に設定され、演算ユニット104に0から14の値(PWM幅を示す)をバスから書き込んだものとする。これらの長さはいずれも、クロックサイクルを単位とする。
図4Aは、図3と同じ条件で、演算ユニット104に0を書き込んだ時のPWM出力波形を示している。この場合、図2に示す演算ユニット104の演算アルゴリズムに従い、PWM正相セットレジスタ105には0、PWM正相リセットレジスタ106にも0が設定される。またPWM逆相セットレジスタ107には0、PWM逆相リセットレジスタ108には10(PWM周期設定レジスタ101の値+1)が設定される。
PWM正相セットレジスタ105には0が設定されている為、タイマカウンタ100が0の時に正相セット信号がアクティブとなる。PWM正相リセットレジスタ106には0が設定されており、タイマカウンタ100が0の時に正相リセット信号もアクティブとなり、正相リセット信号が優先され、デッドタイム挿入前PWM正相出力115はインアクティブ固定となる。
PWM逆相セットレジスタ107には0が設定されている為、タイマカウンタ100が0の時に逆相セット信号がアクティブとなる。PWM逆相リセットレジスタ108には10が設定されており、タイマカウンタ100は0〜9の値しか取りえない為、逆相リセット信号はインアクティブ固定となる。デッドタイム挿入前PWM逆相出力116はセット信号しかアクティブにならない為、アクティブ固定となる。
デッドタイム挿入後PWM正相出力118の波形はインアクティブに固定される。デッドタイム挿入後PWM逆相出力119の波形は、デッドタイム挿入前PWM正相出力115がマスクされている(インアクティブに固定されている)為、デッドタイムは挿入されずアクティブ固定となる。(すなわち、デッドタイム挿入後のPWM波形はデッドタイム挿入前と同じになる。)
図4Bは、図3と同じ条件で、演算ユニット104に1を書き込んだ時のPWM出力波形を示している。この場合、図2に示す演算ユニットの演算アルゴリズムに従い、PWM正相セットレジスタ105には0、PWM正相リセットレジスタ106にも0が設定される。またPWM逆相セットレジスタ107には1、PWM逆相リセットレジスタ108には0が設定される。
PWM正相セットレジスタ105には0が設定されている為、タイマカウンタ100が0の時に正相セット信号がアクティブとなる。PWM正相リセットレジスタ106には0が設定されており、タイマカウンタ100が0の時に正相リセット信号もアクティブとなり、正相リセット信号が優先され、デッドタイム挿入前PWM正相出力115はインアクティブ固定となる。
PWM逆相セットレジスタ107には1が設定されている為、タイマカウンタ100が1の時に逆相セット信号がアクティブとなる。PWM逆相リセットレジスタ108には0が設定されており、タイマカウンタ100が0の時に逆相リセット信号がアクティブとなる。その為、デッドタイム挿入前PWM逆相出力116は、タイマカウンタ100の一周期あたり1クロックサイクル分インアクティブとなる。
デッドタイム挿入後PWM正相出力118の波形はインアクティブに固定される。デッドタイム挿入後PWM逆相出力119の波形は、デッドタイム挿入前PWM正相出力115がインアクティブ固定の為、デッドタイムは挿入されずタイマカウンタ100の一周期あたり1クロックサイクル分インアクティブとなる。(すなわち、デッドタイム挿入後のPWM波形はデッドタイム挿入前と同じになる。)
図4Cは、図3と同じ条件で、演算ユニット104に2を書き込んだ時のPWM出力波形を示している。この場合、図2に示す演算ユニットの演算アルゴリズムに従いPWM正相セットレジスタ105には0、PWM正相リセットレジスタ106にも0が設定される。またPWM逆相セットレジスタ107には2、PWM逆相リセットレジスタ108には0が設定される。
PWM正相セットレジスタ105には0が設定されている為、タイマカウンタ100が0の時に正相セット信号がアクティブとなる。PWM正相リセットレジスタ106には0が設定されており、タイマカウンタ100が0の時に正相リセット信号もアクティブとなり、正相リセット信号が優先され、デッドタイム挿入前PWM正相出力115はインアクティブ固定となる。
PWM逆相セットレジスタ107には2が設定されている為、タイマカウンタ100が2の時に逆相セット信号がアクティブとなる。PWM逆相リセットレジスタ108には0が設定されており、タイマカウンタ100が0の時に逆相セット信号がアクティブとなる。その為、デッドタイム挿入前PWM逆相出力116は、タイマカウンタ100の一周期あたり2クロックサイクル分インアクティブとなる。
デッドタイム挿入後PWM正相出力118の波形はインアクティブに固定される。デッドタイム挿入後PWM逆相出力119の波形は、デッドタイム挿入前PWM正相出力115がインアクティブ固定の為、デッドタイムは挿入されずタイマカウンタ100の一周期あたり2クロックサイクル分インアクティブとなる。(すなわち、デッドタイム挿入後のPWM波形は、デッドタイム挿入前と同じになる。)
図4Dは、図3と同じ条件で、演算ユニット104に3を書き込んだ時のPWM出力波形を示している。この場合、図2に示す演算ユニットの演算アルゴリズムに従って、PWM正相セットレジスタ105には0、PWM正相リセットレジスタ106にも0が設定される。またPWM逆相セットレジスタ107には3、PWM逆相リセットレジスタ108には0が設定される。
PWM正相セットレジスタ105には0が設定されている為、タイマカウンタ100が0の時に正相セット信号がアクティブとなる。PWM正相リセットレジスタ106には0が設定されており、タイマカウンタ100が0の時に正相リセット信号もアクティブとなり、正相リセット信号が優先され、デッドタイム挿入前PWM正相出力115はインアクティブ固定となる。
PWM逆相セットレジスタ107には3が設定されている為、タイマカウンタ100が3の時に逆相セット信号がアクティブとなる。PWM逆相リセットレジスタ108には0が設定されており、タイマカウンタ100が0の時に逆相セット信号がアクティブとなる。その為、デッドタイム挿入前PWM逆相出力116は、タイマカウンタ100の一周期あたり3クロックサイクル分インアクティブとなる。
デッドタイム挿入後PWM正相出力118の波形はインアクティブに固定される。デッドタイム挿入後PWM逆相出力119の波形は、デッドタイム挿入前PWM正相出力115がインアクティブ固定の為、デッドタイムは挿入されずタイマカウンタ100の一周期あたり3クロックサイクル分インアクティブとなる。(すなわち、デッドタイム挿入後のPWM波形はデッドタイム挿入前と同じになる。)
図4Eは、図3と同じ条件で、演算ユニット104に4を書き込んだ時のPWM出力波形を示している。この場合、図2に示す演算ユニットの演算アルゴリズムに従って、PWM正相セットレジスタ105には0、PWM正相リセットレジスタ106にも0が設定される。またPWM逆相セットレジスタ107には4、PWM逆相リセットレジスタ108には0が設定される。
PWM正相セットレジスタ105には0が設定されている為、タイマカウンタ100が0の時に正相セット信号がアクティブとなる。PWM逆相リセットレジスタ108には0が設定されており、タイマカウンタ100が0の時に正相リセット信号もアクティブとなり、正相リセット信号が優先され、デッドタイム挿入前PWM正相出力115はインアクティブ固定となる。
PWM逆相セットレジスタ107には4が設定されている為、タイマカウンタ100が4の時に逆相セット信号がアクティブとなる。PWM逆相リセットレジスタ108には0が設定されており、タイマカウンタ100が0の時に逆相セット信号がアクティブとなる。その為、デッドタイム挿入前PWM逆相出力116は、タイマカウンタ100の一周期あたり4クロックサイクル分インアクティブとなる。
デッドタイム挿入後PWM正相出力118の波形はインアクティブに固定される。デッドタイム挿入後PWM逆相出力119の波形は、デッドタイム挿入前PWM正相出力115がインアクティブ固定の為、デッドタイムは挿入されずタイマカウンタ100の一周期あたり4クロックサイクル分インアクティブとなる。(すなわちデッドタイム挿入後のPWM波形は、デッドタイム挿入前と同じになる。)
図4Fは、図3と同じ条件で、演算ユニット104に5を書き込んだ時のPWM出力波形を示している。この場合、図2に示す演算ユニットの演算アルゴリズムに従いPWM正相セットレジスタ105には0、PWM正相リセットレジスタ106には3が設定される。またPWM逆相セットレジスタ107には3、PWM逆相リセットレジスタ108には0が設定される。
PWM正相セットレジスタ105には0が設定されている為、タイマカウンタ100が0の時に正相セット信号がアクティブとなる。PWM正相リセットレジスタ106には3が設定されており、タイマカウンタ100が3の時に正相リセット信号はアクティブとなる。その為、デッドタイム挿入前PWM正相出力115はタイマカウンタ100の一周期あたり3クロックサイクル分アクティブとなる。
PWM逆相セットレジスタ107には3が設定されている為、タイマカウンタ100が3の時に逆相セット信号がアクティブとなる。PWM逆相リセットレジスタ108には0が設定されており、タイマカウンタ100が0の時に逆相セット信号がアクティブとなる。その為、デッドタイム挿入前PWM逆相出力116は、タイマカウンタ100の一周期あたり3クロックサイクル分インアクティブとなる。
デッドタイム挿入後PWM正相出力118の波形、デッドタイム挿入後PWM逆相出力119の波形は、デッドタイム設定レジスタ102に2が設定されている為、アクティブになるタイミングで2クロックサイクル分のデッドタイム期間が挿入され、図4Fのような波形となる。
図4Aと、図4Bを比較すると、従来例と異なり、デッドタイム挿入後のPWM出力(逆相)が、アクティブ固定(図4A)から、1クロックサイクルのインアクティブ(図4B)に遷移ししている。又、図4A〜図4Fでデッドタイム挿入後のPWM出力(逆相)が、アクティブ固定(図4A)から、1クロックサイクルのインアクティブ(図4B)、2クロックサイクルのインアクティブ(図4C)、3クロックサイクルのインアクティブ(図4C)、4クロックサイクルのインアクティブ(図4D)、5クロックサイクルのインアクティブ(図4F)と遷移しているのが分かる。すなわち、バスから入力されたPWM幅の指令値の増加に伴って、デッドタイム挿入後のPWM信号の幅が、1クロックサイクル単位で順次、増加している。
[第1実施形態のメカニズムおよび効果]
本実施形態によれば、鋸波を搬送波とするPWM制御において、正相及び逆相のPWM出力がそれぞれアクティブ及びインアクティブ固定の状態から順次出力されるPWM出力の幅を1クロックサイクル幅で調整することができ、モータを精度よく制御することができるという効果がある。
すなわち、演算ユニット104が図2に例示される適切なアルゴリズムで演算を行うことにより、1クロックサイクルを単位として所望のパルス幅で正相PWM信号及び逆相PWM信号を出力することが可能である。
その理由は、以下の通りである。デッドタイムの設定値を加味し、PWMの周期設定、PWMの出力幅を元に、PWMのセット、リセットタイミングを演算する。デッドタイム挿入ブロックへ出力するPWM正相出力をインアクティブ固定にすることで、PWM逆相出力にはデッドタイムの挿入が発生しないように制御する。その結果、PWM出力幅を1クロックサイクル幅で調整できる。同様に、デッドタイム挿入ブロックへ出力するPWM逆相出力をインアクティブ固定にすることで、PWM正相出力にはデッドタイムの挿入が発生しないように制御される。その結果、PWM正相出力も、順次1クロックサイクル幅でPWM出力を制御することが可能となる。
図5に、演算ユニット104のPWM出力幅設定レジスタにPWM出力幅0から14を設定した時のPWM出力波形を示す。演算ユニット104に0を設定した時のデッドタイム挿入後のPWM波形から、15を設定した時のデッドタイム挿入後のPWM波形まで、1クロック幅単位で制御ができており、図20A、図20Bの参考技術において説明した問題を改善出来ている事が分かる。
言い換えれば、本実施形態においては、外部機器等から入力されるPWM信号の出力幅の指令値が小さい場合は、例えば正相のPWM信号をインアクティブに固定してマスクする。その結果、デッドタイム挿入後の逆相のPWM信号に余計なデッドタイムが挿入されず、1クロックサイクル単位で、入力した指令値に追従する制御を実行することができる。
具体的には、デッドタイム挿入前のPWM信号の出力幅(バスからの指令値)と、所定の基準期間(デッドタイム期間よりも大きく設定される)との大小関係に基づいて、異なる処理を適用する。基準期間よりも出力幅の指令値が大きい場合は、通常のデッドタイム挿入が適用される。基準期間よりも出力幅の指令値が小さい場合は、PWM信号(指令値)に対して、正相のPWM信号をインアクティブとする補正を行って、補正PWM信号として出力する。その補正PWM信号に対して、正相と逆相の信号が同時にオンすることを防ぐようにデッドタイムを挿入する。その結果、1クロックサイクル単位で指令値に追従する制御が可能となる。
[第1実施形態の変形例]
図6は、第1実施形態の変形例を示す。この変形例においては、PWM正相セットレジスタ105、PWM正相リセットレジスタ106、PWM逆相セットレジスタ107、及びPWM逆相リセットレジスタ108の各々に対して、バスから直接に設定値が入力され、設定される。特に制御の自由度を上げることが要求される場合には、このような外部からのセット/リセット(クリア)タイミングの制御が行われる。
このような変形例においては、正相セット信号、正相リセット信号、逆相セット信号、逆相リセット信号を外部機器等から所望のタイミングで制御することができる。その結果、図7Aの「任意波形」と記載された下2段に示されるように、正相と逆相のPWM信号(デッドタイム挿入前)として所望の波形を設定することができる。デッドタイム挿入ユニット617は、その波形にデッドタイムを挿入することにより、図7Bの「任意波形」と記載された下2段のような波形をPWM信号としてモータ等の負荷に出力する。
[第2実施形態]
図8に、第2実施形態におけるPWM出力装置の構成を示す。PWMセットタイミング設定レジスタ620は、バスにより(外部機器等からバスを介して)設定された設定値を格納し、その設定値を演算ユニット604に出力する。演算ユニット604には、タイマカウンタ600のカウンタ値、PWM周期設定レジスタ601に格納されたPWM周期の値、PWMセットタイミング設定レジスタ620に格納された値、及びバスからの書き込みデータ(デューティ比など)が入力される。演算ユニット604は、図9の演算アルゴリズムに従って演算を行い、演算結果をPWM正相セットレジスタ605、PWM正相リセットレジスタ606、PWM逆相セットレジスタ607、PWM逆相リセットレジスタ608に出力する。PWMセットタイミング設定レジスタ620、演算ユニット604以外の構成は、第1実施形態と同等である。
本実施形態においては、第1実施形態の構成に、PWMセットタイミング設定レジスタ620を追加する。その結果、第1実施形態の演算アルゴリズムに対して、比較的小規模の回路追加により、PWM出力をセットするタイミングを変更可能である。
次に、本実施形態におけるPWM出力装置の動作について説明する。PWM周期設定レジスタ601、デッドタイム設定レジスタ602、PWMセットタイミング設定レジスタ620には、本PWM出力装置が使用される環境に合わせて、外部機器等からバスを介して任意の値が書き込まれる。演算ユニット604には、PWM出力装置が接続されるモータの回転位置、回転速度に応じて、バスより任意の値(PWM出力幅、デューティ比)が書き込まれる。演算ユニット604には、PWM周期設定レジスタ601に格納されたPWM周期の値と、デッドタイム設定レジスタ602に格納されたデッドタイムの長さを示す値、PWMセットタイミング設定レジスタ620に格納された値、及びバスより書き込まれたデータ(外部機器から入力するPWMパルス幅の指令値など)が入力される。演算ユニット604は、図9のアルゴリズムに従って演算を行い、演算結果をPWM正相セットレジスタ605、PWM正相リセットレジスタ606、PWM逆相セットレジスタ607、PWM逆相リセットレジスタ608に出力する。それ以外の動作は、第1実施形態と同じである。
図9に演算ユニット604の第2実施形態の演算アルゴリズムを記載する。図中の“DU”は、演算ユニット604へのバスからの書き込み値、“PE”はPWM周期設定レジスタ601の設定値、“DT”はデッドタイム設定レジスタ602の設定値を示す。
“正PWMS”は、演算ユニット604へDUの値を書き込んだ時の、演算ユニット604から、PWM正相セットレジスタ605への出力値を示す。
“正PWMC”は、演算ユニット604へDUの値を書き込んだ時の、演算ユニット604から、PWM正相リセットレジスタ606への出力値を示す。
“逆PWMS”は、演算ユニット604へDUの値を書き込んだ時の、演算ユニット604から、PWM逆相セットレジスタ607への出力値を示す。
“逆PWMC”は、演算ユニット604へDUの値を書き込んだ時の、演算ユニット604から、PWM逆相リセットレジスタ608への出力値を示す。
“PS”はPWMセットタイミング設定レジスタ620の設定値を示す。
図9のアルゴリズムにおいては、PWMセットタイミング設定レジスタ620に設定された位相シフト値に応じて、正相PWMセット信号、正相PWMリセット信号、逆相PWMセット信号、及び逆相PWMリセット信号の位相がシフトされる。
図12A、図12Bに、演算ユニット604がPWM正相セットレジスタ605、PWM正相リセットレジスタ606、PWM逆相セットレジスタ607、PWM逆相リセットレジスタ608に出力する値の一例を記載する。この例では、PWM周期設定レジスタ601に9、デッドタイム設定レジスタ602には2、PWMセットタイミング設定レジスタ620には5を設定し、演算ユニット604に0から14の値をバスから書き込んだものとする。
演算ユニット604に書き込まれるPWM出力幅の範囲は第1実施形態と同じである。PWMセットタイミング設定レジスタ620は、PWMのセットタイミングが設定されるレジスタである。PWM出力として、シフト可能なPWM出力の最大値は、クロックサイクル単位でPWM周期−1となる。その為、PWMセットタイミング設定レジスタ620の設定範囲は、0〜PWM周期設定レジスタ601の値となる。(PWM出力のセットタイミングをPWM周期分シフトすると全く同じ波形となってしまう為)。
図11Aは、図9と同じ条件で、演算ユニット604に0を書き込んだ時のPWM出力波形を示している。この場合、図9に示した演算ユニットの演算アルゴリズムに従って、PWM正相セットレジスタ605には0、PWM正相リセットレジスタ606にも0が設定される。またPWM逆相セットレジスタ607には0、PWM逆相リセットレジスタ608には10(PWM周期設定レジスタ601の値+1)が設定される。
PWM正相セットレジスタ605には0が設定されている為、タイマカウンタ600のカウンタ値が0の時に正相セット信号がアクティブとなる。PWM正相リセットレジスタ606には0が設定されており、タイマカウンタ600が0の時に正相リセット信号もアクティブとなり、正相リセット信号が優先され、デッドタイム挿入前PWM正相出力615はインアクティブ固定となる。
PWM逆相セットレジスタ609には0が設定されている為、タイマカウンタ600が0の時に逆相セット信号がアクティブとなる。PWM逆相リセットレジスタ608には10が設定されており、タイマカウンタ600は0〜9の値しか取りえない為、逆相リセット信号はインアクティブ固定となる。デッドタイム挿入前PWM逆相出力616はセット信号しかアクティブにならない為、アクティブ固定となる。
デッドタイム挿入後の正相PWM波形618はインアクティブに固定される。デッドタイム挿入後の逆相PWM波形619は、デッドタイム挿入前PWM正相出力615がインアクティブ固定の為、デッドタイムは挿入されずアクティブ固定となる。(第1実施形態と同じ波形)
図11Bは、図10と同じ条件で、演算ユニット604に1を書き込んだ時のPWM出力波形を示している。この場合、図9に示した演算ユニットの演算アルゴリズムに従いPWM正相セットレジスタ605には0、PWM正相リセットレジスタ606にも0が設定される。またPWM逆相セットレジスタ607、PWM逆相リセットレジスタ608には、第1実施形態に対して、PWMセットタイミング設定レジスタ620の値が加算され、それぞれ6と5が設定される。
PWM正相セットレジスタ605には0が設定されている為、タイマカウンタ600が0の時に正相セット信号がアクティブとなる。PWM正相リセットレジスタ606には0が設定されており、タイマカウンタ600が0の時に正相リセット信号もアクティブとなり、正相リセット信号が優先され、デッドタイム挿入前PWM正相出力615はインアクティブ固定となる。
PWM逆相セットレジスタ607には6が設定されている為、タイマカウンタ600が6の時に逆相セット信号がアクティブとなる。PWM逆相リセットレジスタ608には5が設定されており、タイマカウンタ600が5の時に逆相リセット信号がアクティブとなる。その為、デッドタイム挿入前PWM逆相出力616は、タイマカウンタ600の一周期あたり1クロックサイクル分インアクティブとなる。
デッドタイム挿入後の正相PWM波形618はインアクティブに固定される。デッドタイム挿入後の逆相PWM波形619は、デッドタイム挿入前の逆相PWM616がインアクティブ固定の為、デッドタイムは挿入されずタイマカウンタ600の一周期あたり1クロックサイクル分インアクティブとなる。また、PWMのセットタイミングは第1実施形態と比較して、PWMセットタイミング設定レジスタ620に設定した値分右にシフトする。図11C〜図11Fも同様に、第1実施形態と比較して、PWMセットタイミング設定レジスタ620に設定した値分右にシフトする。
図12A〜図12Dに、PWMセットタイミング設定レジスタ620に5を設定し、演算ユニット604のPWM出力幅設定レジスタにPWM出力幅0から14を設定した時のPWM出力波形を示す。図12Aと図12Bがデッドタイム挿入前、図12Cと図12Dがデッドタイム挿入後のPWM出力波形である。PWM出力幅設定レジスタに0を設定した時のデッドタイム挿入後のPWM波形から、15を設定した時のデッドタイム挿入後のPWM波形まで、1クロック幅単位で制御ができており、また第1実施形態の出力波形と比較して、PWMのセットタイミングが5クロックサイクル右にシフトできていることが分かる。
[第2実施形態のメカニズムおよび効果]
以上、説明した第2実施形態においては、PWM出力の幅を1クロックサイクル幅で調整すること(第1実施形態)ができ、且つPWMのセット、リセットタイミングを自由にシフトすることにより、モータをさらに精度よく制御することができるという効果がある。
その理由は、第1実施形態の構成に対して、PWMのセットタイミングを設定するレジスタを設けて、このレジスタの値を加算し、且つ、PWMの周期設定を超えた場合は、“PWM周期設定値+1”の値を引くことで、PWMのセット、リセットタイミングを自由にシフトできるようにした為である。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば本発明の各実施形態を矛盾の無い範囲で組み合わせることが可能である。
100 タイマカウンタ
101 PWM周期設定レジスタ
102 デッドタイム設定レジスタ
103 比較器
104 演算ユニット
105 PWM正相セットレジスタ
106 PWM正相リセットレジスタ
107 PWM逆相セットレジスタ
108 PWM逆相リセットレジスタ
109 比較器
110 比較器
111 比較器
112 比較器
113 PWM正相出力レジスタ
114 PWM逆相出力レジスタ
115 デッドタイム挿入前PWM正相出力
116 デッドタイム挿入前PWM逆相出力
117 デッドタイム挿入ユニット
118 デッドタイム挿入後PWM正相出力
119 デッドタイム挿入後PWM逆相出力
600 タイマカウンタ
601 PWM周期設定レジスタ
602 デッドタイム設定レジスタ
603 比較器
604 演算ユニット
605 PWM正相セットレジスタ
606 PWM正相リセットレジスタ
607 PWM逆相セットレジスタ
608 PWM逆相リセットレジスタ
609 比較器
610 比較器
611 比較器
612 比較器
613 PWM正相出力レジスタ
614 PWM逆相出力レジスタ
615 デッドタイム挿入前PWM正相出力
616 デッドタイム挿入前PWM逆相出力
617 デッドタイム挿入ユニット
618 デッドタイム挿入後PWM正相出力
619 デッドタイム挿入後PWM逆相出力
620 PWMセットタイミング設定レジスタ
1100 PWM出力生成ブロック
1101 PWM出力幅設定レジスタ
1102 PWM出力
1103 デッドタイム挿入ブロック
1104 デッドタイム設定レジスタ
1105 デッドタイム挿入後のPWM出力
1106 PWM周期設定レジスタ
1107 タイマカウンタ
1200 デッドタイム挿入前のPWM出力波形(正相)
1201 デッドタイム挿入前のPWM出力波形(逆相)
1202 デッドタイム挿入後のPWM出力波形(正相)
1203 デッドタイム挿入後のPWM出力波形(逆相)
1204 デッドタイム範囲
1205 デッドタイム範囲

Claims (6)

  1. PWM(パルス幅変調)の周期が設定されるPWM周期設定レジスタと、
    入力したクロック信号に基づいて前記周期を有するカウンタ値を出力するタイマカウンタと、
    PWMパルス幅の指令値と、前記カウンタ値とに基づいて、正相PWM信号をオン状態にする正相セットタイミングと、前記正相PWM信号をオフ状態にする正相リセットタイミングと、逆相PWM信号をオン状態にする逆相セットタイミングと、前記逆相PWM信号をオフ状態にする逆相リセットタイミングとの各々を設定する演算ユニットと、
    前記カウンタ値と前記正相セットタイミングとが一致したときに前記正相PWM信号をオン状態にすることを指令する正相PWMセット信号を出力し、前記カウンタ値と前記正相リセットタイミングとが一致したときに前記正相PWM信号をオフ状態にすることを指令する正相PWMリセット信号を出力し、前記カウンタ値と前記逆相セットタイミングとが一致したときに前記逆相PWM信号をオン状態にすることを指令する逆相PWMセット信号を出力し、前記カウンタ値と前記逆相リセットタイミングとが一致したときに前記逆相PWM信号をオフ状態にすることを指令する逆相PWMリセット信号を出力するデッドタイム挿入前PWM信号出力部と、
    前記正相PWMセット信号、前記正相PWMリセット信号、前記逆相PWMセット信号、及び前記逆相PWMリセット信号に対して、設定されたクロックサイクルのデッドタイムを挿入するデッドタイム挿入ユニットとを具備する
    PWM出力装置。
  2. 前記タイマカウンタは、入力したクロック信号に基づいて前記カウンタ値のカウントアップを行い、前記周期ごとに前記カウンタ値のリセットを行うことによって前記所定の波形を生成する
    請求項1記載のPWM出力装置。
  3. 更に、位相シフト値が設定されるPWMセットタイミング設定レジスタを具備し、
    前記演算ユニットは、前記位相シフト値に応じて前記正相PWMセット信号、前記正相PWMリセット信号、前記逆相PWMセット信号、及び前記逆相PWMリセット信号の位相をシフトする
    請求項1記載のPWM出力装置。
  4. 前記タイマカウンタは、入力したクロック信号の1クロックサイクル毎に前記カウンタ値を1ずつカウントアップし、前記周期ごとに前記カウンタ値のリセットを行うことによって前記所定の波形を生成し、
    前記演算ユニットは、前記1クロックサイクルを単位として所望のパルス幅で前記正相PWM信号及び前記逆相PWM信号を出力することが可能である
    請求項1記載のPWM出力装置。
  5. 前記演算ユニットは、前記PWMパルス幅の指令値が、前記設定されたクロックサイクルのデッドタイムに応じて設定される所定の基準期間に比べて小さい場合、前記正相PWM信号がオン状態とならないように前記正相セットタイミングの設定を行う
    請求項1から4のいずれかに記載のPWM出力装置。
  6. 前記所定の基準期間は、前記設定されたクロックサイクルのデッドタイムの2倍である
    請求項5記載のPWM出力装置。
JP2012261302A 2012-11-29 2012-11-29 Pwm出力装置 Pending JP2014108021A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012261302A JP2014108021A (ja) 2012-11-29 2012-11-29 Pwm出力装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012261302A JP2014108021A (ja) 2012-11-29 2012-11-29 Pwm出力装置

Publications (1)

Publication Number Publication Date
JP2014108021A true JP2014108021A (ja) 2014-06-09

Family

ID=51029061

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012261302A Pending JP2014108021A (ja) 2012-11-29 2012-11-29 Pwm出力装置

Country Status (1)

Country Link
JP (1) JP2014108021A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111988021A (zh) * 2019-05-24 2020-11-24 北京车和家信息技术有限公司 一种pwm生成方法、装置、电机控制器及车辆
WO2022181037A1 (ja) * 2021-02-25 2022-09-01 日本電産株式会社 インバータ制御装置、インバータ回路、モータモジュールおよびインバータ制御方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11122938A (ja) * 1997-07-29 1999-04-30 Hitachi Ltd Pwmパルス生成回路とそれを用いた制御システム
JP2008206350A (ja) * 2007-02-21 2008-09-04 Toshiba Corp インバータ制御用半導体装置及びそれを用いたデッドタイム生成方法
JP2009296849A (ja) * 2008-06-09 2009-12-17 Calsonic Kansei Corp Pwm回路

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11122938A (ja) * 1997-07-29 1999-04-30 Hitachi Ltd Pwmパルス生成回路とそれを用いた制御システム
JP2008206350A (ja) * 2007-02-21 2008-09-04 Toshiba Corp インバータ制御用半導体装置及びそれを用いたデッドタイム生成方法
JP2009296849A (ja) * 2008-06-09 2009-12-17 Calsonic Kansei Corp Pwm回路

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111988021A (zh) * 2019-05-24 2020-11-24 北京车和家信息技术有限公司 一种pwm生成方法、装置、电机控制器及车辆
CN111988021B (zh) * 2019-05-24 2024-05-03 北京车和家信息技术有限公司 一种pwm生成方法、装置、电机控制器及车辆
WO2022181037A1 (ja) * 2021-02-25 2022-09-01 日本電産株式会社 インバータ制御装置、インバータ回路、モータモジュールおよびインバータ制御方法

Similar Documents

Publication Publication Date Title
JP5901926B2 (ja) Pwm出力装置及びモータ駆動装置
US7449854B2 (en) PWM signal generation apparatus and method thereof and motor control apparatus and method thereof
US8810183B2 (en) PWM signal output circuit
US9448581B2 (en) Timer unit circuit having plurality of output modes and method of using the same
US8653870B2 (en) PWM signal output circuit
JP2008028854A (ja) クロック生成装置
JP2005117839A (ja) パルス幅変調波形生成方法及び装置
JP2009268351A (ja) 負荷に電力を供給するコンバータを制御するシステムおよび方法
CN103828237A (zh) 维持脉冲宽度调制数据集相干性
JP5885977B2 (ja) Pwm信号出力回路とpwm信号出力制御方法およびプログラム
JP3677497B2 (ja) パルス幅変調波形発生装置及び3相パルス幅変調波形発生装置
KR101561372B1 (ko) Pwm 신호 생성 회로, 프린터, 및 pwm 신호 생성 방법
JP4760955B2 (ja) 負荷駆動装置及び負荷駆動装置の制御システム
JP2014108021A (ja) Pwm出力装置
TWI425761B (zh) Adjustable delay time control system for motors
CN116015253B (zh) 自校正延迟电路、微处理芯片和电机控制系统
US7327300B1 (en) System and method for generating a pulse width modulated signal having variable duty cycle resolution
WO2016145284A1 (en) Combinatorial/sequential pulse width modulation
JP2010068415A (ja) パルス幅変調波形発生装置
JP2008244841A (ja) Pwm信号生成回路
US9762174B2 (en) Increasing PWM resolution for digitally controlled motor control applications
EP1678827A2 (en) Method and apparatus for generating a distortionless pulse width modulated waveform
JP2004187492A (ja) 半導体装置および制御方法
JP2013211682A (ja) パルス信号生成回路、パルス信号生成方法
JP2013143683A (ja) クロック信号出力回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150821

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160524

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20161207