(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、パルス幅変調で出力されるパルスのデューティー比の精度は、出力されるパルスのデューティー比を定めるビット数に依存する。すなわち、パルス発生回路から出力させるパルスのデューティー比を制御する制御信号のビット数が、パルス発生回路が出力するパルスのビット数よりも大きい場合には、パルス発生回路が出力するパルスは、制御信号により示されるデューティー比の精度を有しないこととなる。
【0005】
本発明は、このような事情に鑑みてなされたものであって、出力するパルスのデューティー比を定めるビット数よりも、高い精度のデューティー比を示すPWM波形を出力することができる、パルス発生装置及びパルス発生方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明のパルス発生装置及びパルス発生方法は以下の手段を採用する。
【0007】
すなわち、本発明の第一態様に係るパルス発生装置は、一つのパルスが第1ビット数で定められるデューティー比のPWM波形を出力するPWM波形出力手段と、前記第1ビット数よりも大きい第2ビット数で定められたデューティー比を示す制御信号が入力される入力手段と、前記入力手段に入力された前記制御信号に基づいて、前記第2ビット数に応じて連続した複数の前記パルスから構成される組を1周期とするように、前記PWM波形出力手段から出力させる前記PWM波形を設定する設定手段と、を備える。
【0008】
上記構成によれば、PWM波形出力手段によって、一つのパルスが第1ビット数で定められるデューティー比のPWM波形が出力される。ところが、入力手段によって入力されるデューティー比を示す制御信号は、第1ビット数よりも大きい第2ビット数で定められている。すなわち、PWM波形出力手段から出力される一つのパルスは、上記第2ビット数で定められるデューティー比の精度を有しない。
そこで、設定手段によって、入力手段に入力された制御信号に基づいて、第2ビット数に応じて連続した複数のパルスから構成される組を1周期とするように、PWM波形出力手段から出力させるPWM波形が設定される。すなわち、第1ビット数で定められるパルス一つでは、第2ビット数で定められたデューティー比の精度を得ることはできないため、連続した複数のパルスを組み合わせ、これを1周期とすることによって、第2ビット数で定められたデューティー比の精度を得る。
【0009】
例えば、第1ビット数を6ビットとし、一つのパルスを1周期とした場合のデューティー比の解像度(精度)は、1周期当たり63であり、約1.6%刻みでデューティー比は設定可能とされる。一方、第2ビット数を7ビットとすると、6ビットのパルス2つから構成される組を1周期としたPWM波形を出力する。これにより、仮想的に7ビット(6ビット×2)で定められるデューティー比のPWM波形が出力されることとなる。この場合のデューティー比の解像度は、1周期当たり126であり、約0.8%刻みでデューティー比は設定可能となる。
【0010】
従って、本構成によれば、出力するパルスのデューティー比を定めるビット数よりも、高い精度のデューティー比を示すPWM波形を出力することができる。
【0011】
上記第一態様では、前記組を構成する複数の前記パルスの数を、前記第2ビット数と前記第1ビット数の差をnとした場合に、2
n個とすることが好ましい。
【0012】
上記構成によれば、第2ビット数と第1ビット数の差を算出するだけで、組を構成する第1ビット数のパルスの数を簡易に求めることができる。
【0013】
上記第一態様では、前記設定手段が、前記第2ビットで示される前記制御信号のうち、前記第1ビット数に相当する上位ビットを前記第1ビット数で定められる一つの前記パルスで表わし、残りのビットを2
n−1個(nは前記第2ビット数と前記第1ビット数の差)の前記パルスで表わすように設定することが好ましい。
【0014】
上記構成によれば、例えば、第1ビット数が6ビットであり、第2ビット数が7ビットである場合、6ビットのパルス2つから構成される組を1周期としたPWM波形が出力されるので、7ビットで示される制御信号のうち、上位6ビットの制御信号が一方のパルスで表わされ、残りが他方のパルスで表わされることとなる。また。例えば、第1ビット数が6ビットであり、第2ビット数が8ビットである場合、6ビットのパルス4つから構成される組を1周期としたPWM波形が出力されるので、8ビットで示される制御信号のうち、上位6ビットの制御信号が一つのパルスで表わされ、残りが3つのパルスで表わされることとなる。従って、本構成は、組を構成する複数のパルスを簡易に生成することができる。
【0015】
上記第一態様では、前記設定手段が、前記残りのビットを、上位から桁が一つ増加する毎に、前の桁の2倍の数の前記パルスで表わすように設定することが好ましい。
【0016】
上記構成によれば、例えば、第1ビット数が6ビットであり、第2ビット数が9ビットである場合、制御信号の上位1ビットから6ビットが一つのパルスで表わされ、制御信号の7ビット目が一つのパルスで表わされ、制御信号の8ビット目が7ビット目の2倍の数のパルスである2つのパルスで表わされ、制御信号の9ビット目が8ビット目の2倍の数のパルスである4つのパルスで表わされることとなる。従って、本構成は、制御信号を構成する各ビットを表わすパルスを簡易に生成することができる。
【0017】
一方、本発明の第二態様に係るパルス発生方法は、一つのパルスが第1ビット数で定められるデューティー比のPWM波形を出力するパルス発生方法であって、前記第1ビット数よりも大きい第2ビット数で定められたデューティー比を示す制御信号が入力される第1工程と、前記制御信号に基づいて、前記第2ビット数に応じて連続した複数の前記パルスから構成される組を1周期とするように設定する第2工程と、前記第2工程によって設定された前記組を1周期としてPWM波形を出力する第3工程と、を含む。
【発明の効果】
【0018】
本発明によれば、出力するパルスのデューティー比を定めるビット数よりも、高い精度のデューティー比を示すPWM波形を出力することができる、という優れた効果を有する。
【発明を実施するための形態】
【0020】
以下に、本発明に係るパルス発生装置及びパルス幅変調方法の一実施形態について、図面を参照して説明する。
【0021】
図1は、本実施形態に係る駆動回路10の構成を示すブロック図である。
駆動回路10は、パルス発生回路12、絶縁トランス14、整流回路16、被駆動体18を備える。なお、絶縁トランス14の1次側を流れる電流は、不図示の電流測定装置で測定するものとする。
【0022】
本実施形態に係る駆動回路10は、絶縁トランス14の1次側に電力をパルス電圧として出力するパルス発生回路12を備え、2次側に計測、駆動、及び制御のいずれかを行う被駆動体18が整流回路16を介して接続されている。そして、駆動回路10は、2次側に接続された被駆動体18によって電力が消費されることで生じる1次側の電流の変化を測定して、計測手段による計測、及び、駆動、制御などの手段による駆動または制御、並びに対象回路における断線や短絡などの有無や信号状態の診断、すなわち健全性診断を行う。
【0023】
図2は、本実施形態に係るパルス発生回路12の機能を示す機能ブロック図である。パルス発生回路12は、一つのパルスが第1ビット数で定められるデューティー比のPWM(Pulse Width Modulation)波形を出力するPWM波形出力部20、第1ビット数よりも大きい第2ビット数で定められたデューティー比を示す制御信号が入力される入力コネクタ22を備える。
【0024】
なお、本実施形態に係るパルス発生回路12は、一例として
図3に示されるように、10ns(100MHz)の微小パルスが0から63個の何れかで並ぶ波形を繰り返すことで6ビット、つまり解像度(精度)が63のPWMパルスを630ns(100/63=1.58MHz)周期で出力する。すなわち、パルス発生回路12は、第1ビット数が6ビットであり、約1.6%刻みでPWMパルスのデューティー比を設定可能とする。
一方、パルス発生回路12に入力される制御信号の第2ビット数は、一例として20ビットとされる。このため、6ビットのPWMパルスそのものだけでは、20ビットの制御信号の解像度1032192を実現できない。
【0025】
そこで、パルス発生回路12は、入力コネクタ22に入力された制御信号に基づいて、第2ビット数に応じて連続した複数のPWMパルスから構成される組を1周期とするように、PWM波形出力部20から出力させるPWM波形を設定する設定部24を備える。
すなわち、6ビットのPWMパルス一つでは、20ビットの制御信号で定められたデューティー比の精度を得ることはできないため、連続した複数の6ビットのPWMパルスを組み合わせることによって、20ビットで定められたデューティー比の精度を得る。
【0026】
次に、6ビットのPWMパルスを複数用いて、仮想的に7ビット以上のPWMパルスを出力する場合の具体的に説明する。以下の説明において、6ビットのPWMパルスをリニアPWMパルスといい、7ビット以上のPWMパルスを単にPWMパルスという。
【0027】
図4は、設定部24による6ビットのリニアPWMパルスを用いて、仮想的に7ビットのPWMパルスを出力する場合における設定の一例を示した図である。なお、7ビットのPWMパルスでは、約0.8%刻みでデューティー比が設定可能となる。
解像度63の6ビットのリニアPWMパルスを用いて解像度126の7ビットのPWMパルスを出力する場合は、6ビットのリニアPWMパルスが2周期組み合わされることで実現される。そして、このように設定された7ビットのPWMパルスが連続して出力されることで、PWM波形となる。
図4の例では、デューティー比50.8%(32/63≒50.8)のリニアPWMパルスAとデューティー比49.2%(31/63≒49.2)のリニアPWMパルスA’が一組とされ、繰り返し出力されることで、50%(63/126=50)のデューティー比である7ビット(6ビット×2=7ビット)のPWMパルスBによるPWM波形が仮想的に実現されることとなる。なお、7ビットのPWMパルスBは、6ビットのリニアPWMパルスが2つ組み合わされて実現されているため、周期が1.26μs(790kHz)となる。
【0028】
図5は、設定部24による6ビットのリニアPWMパルスを用いて仮想的に8ビットのPWMパルスを出力する場合における設定の一例を示した図である。なお、8ビットのPWMパルスでは、約0.4%刻みでデューティー比が設定可能となる。
6ビットのリニアPWMパルスを用いて解像度252の8ビットのPWMパルスを出力する場合は、7ビットのPWMパルスを2周期、すなわち6ビットのリニアPWMパルスが4周期組み合わされることで実現される。
図5の例では、デューティー比50.8%(32/63≒50.8)のリニアPWMパルスAを2周期一組として7ビットのPWMパルスBとし、デューティー比50.8%(32/63≒50.8)のリニアPWMパルスAとデューティー比49.2%(31/63≒49.2)のリニアPWMパルスA’を一組として7ビットのPWMパルスB’とする。そして、7ビットのPWMパルスBとPWMパルスB’が一組とされ、繰り返し出力されることで、50.4%(127/252=50.4)のデューティー比である8ビットのPWMパルスCによるPWM波形が仮想的に実現されることとなる。なお、8ビットのPWMパルスCは、リニアPWMパルスが4つ組み合わされて実現されているため、周期が2.52μs(395kHz)となる。
【0029】
以下、同様に、設定部24は、組み合わせるリニアPWMパルスの数を増加させることによって、仮想的に20ビットのPWMパルスを設定する。なお、20ビットのPWMパルスは、19ビットのPWMパルスを2周期、すなわちリニアPWMパルスを16384個組み合わせることによって実現される。これにより、6ビットのリニアPWMパルスでは実現ができなかった、解像度1032192のPWMパルスによるPWM波形が実現されることとなる。なお、20ビットのPWMパルスは、周期が10.3ms(96.5Hz)となる。
【0030】
このように、パルス発生回路12は、設定部24の設定によって、リニアPWMパルスのデューティー比を時間的に変化させることによって、リニアPWMパルスのデューティー比を定めるビット数よりも、高い精度のデューティー比を示すPWM波形を出力する。換言すると、パルス発生回路12はPWMとPDM(Pulse Density Modulation:パルス密度変調)とを組み合わせてパルスを発生させる。
【0031】
また、組を構成する複数のリニアPWMパルスの数は、第1ビット数が6ビットであり第2ビット数が7ビットの場合では2つ、第1ビット数が6ビットであり第2ビット数が8ビットの場合では4つ、第1ビット数が6ビットであり第2ビット数が9ビットの場合では8つ、第1ビット数が6ビットであり第2ビット数が20ビットの場合では16384個というように、第2ビット数と第1ビット数の差(以下、「ビット差」という。)をnとした場合に、2
n個となる。そこで、設定部24は、第2ビット数と第1ビット数の差を算出することによって、簡易に第2ビット数となるPWMパルスを構成するリニアPWMパルスの数を求めることができる。
【0032】
次に、第2ビット数のPWMパルスを構成するリニアPWMパルス各々のデューティー比の決定方法について説明する。
【0033】
上述したように、第2ビット数のPWMパルスは、複数のリニアPWMパルスから構成される組を1周期として実現される。すなわち、複数のリニアPWMパルスで構成される第2ビット数のPWMパルスのデューティー比が、制御信号により示されるデューティー比に合致していれば、組を構成するリニアPWMパルス各々のデューティー比は何れでも構わない。
しかしながら、パルス発生回路12に設定部24の機能を実装(プログラミング)するためには、組を構成するリニアPWMパルス各々のデューティー比の決定に規則性を持たせる方が好ましい。
【0034】
そこで、本実施形態に係る設定部24は、第2ビットで示される制御信号のうち、第1ビット数に相当する上位ビットを一つのリニアPWMパルスで表わし、残りのビットを2
n−1個のリニアPWMパルスで表わすように設定する。nは、ビット差である。また、第1ビット数に相当する上位ビットとは、第1ビット数と同数の上位ビットのことであり、第1ビット数が6ビットの場合は、上位ビットとは上位6ビットのことをいう。
【0035】
図6は、設定部24による設定の具体例であり、第1ビット数が6ビットで第2ビット数が7ビットであり、制御信号が“0101011”(=43)の場合において出力されるPWM波形である。この場合、ビット差nは7−6=1となる。そして、
図6に示されるように、7ビットの制御信号のうち、第1ビット数である6ビットに相当する上位6ビット“010101”(=21)が一つのリニアPWMパルスで表わされ、残りとなる下位1ビットである7ビット目“010101+000001”(=21+1=22)が一つ(2
1−1=1)のリニアPWMパルスで表わされる。
【0036】
図7は、制御信号が8ビットの“01010101”(=85)の場合におけるPWM波形である。この場合、ビット差nは8−6=2となる。そして、
図8に示されるように、制御信号のうち、第1ビット数である6ビットに相当する上位ビット“010101”(=21)がリニアPWMパルスで表わされ、残りとなる下位2ビットが3つ(2
2−1=3)のリニアPWMパルスで表わされる。そして、
図7の例では、制御信号の7ビット目が一つのリニアPWMパルスで表わされ、8ビット目が二つのリニアPWMパルスで表わされる。具体的には、7ビット目のリニアPWMパルスが“010101+000000”(=21+0=21)を表わし、8ビット目の2つのリニアPWMパルスが各々“010101+000001”(=21+2=22)と“010101+000000”(=21+0=21)を表わす。
【0037】
図8は、制御信号が8ビットの“01010110”(=86)の場合におけるPWM波形である。
図8に示されるように、制御信号のうち、第1ビット数である6ビットに相当する上位ビット“010101”(=21)が一つのリニアPWMパルスで表わされ、
図7の例と同様に残りとなる7ビット目が一つのリニアPWMパルスで表わされ、8ビット目が二つのリニアPWMパルスで表わされる。
図8の例では、7ビット目のリニアPWMパルスが“010101+000001”(=21+1=22)を表わし、8ビット目のリニアPWMパルスが各々“010101+000000”(=21+0=21)と“010101+000001”(=21+1=22)を表わす。
【0038】
さらに、制御信号が例えば10ビットの場合は、制御信号のうち、第1ビット数である6ビットに相当する上位6ビットが一つのリニアPWMパルスで表わされ、残りとなる下位4ビットが15個(2
4−1=15)のリニアPWMパルスで表わされる。具体的には、7ビット目が1つのリニアPWMパルスで表わされ、8ビット目が2つのリニアPWMパルスで表わされ、9ビット目が4つのリニアPWMパルスで表わされ、10ビット目が8つのリニアPWMパルスで表わされる。
すなわち、制御信号のうち第1ビット数に相当する上位ビットを除いた残りのビットは、上位から桁が一つ増加する毎に、前の桁の2倍のリニアPWMパルスで表わされる。
【0039】
このことを利用して、設定部24は、制御信号のうち第1ビット数に相当する上位ビットを除いた残りのビットを、上位から桁が一つ増加する毎に、前の桁の2倍のリニアPWMパルスで表わすように設定する。
【0040】
さらに、上述しているように、6ビットのリニアPWMパルスの1周期を1単位として考えると、7ビットのPWMパルスはリニアPWMパルス2周期で表わされ、8ビットのPWMパルスはリニアPWMパルス4周期で表わされ、9ビットのPWMパルスはリニアPWMパルス8周期で表わされ、以下同様にビットの桁が一つ上がる毎に、リニアPWMパルスの周期が2倍ずつ増加する。表現を変えると、パルス発生回路12から出力されるPWM波形において、制御信号の7ビット目を表わすビットは2周期に1回足され、制御信号の8ビット目を表わすビットは4周期に1回足され、制御信号の9ビット目を表わすビットは8周期に1回足され、以下同様に制御信号の各ビット目を表わすビットは、2
n(nはビット差)周期に1回足されるという、桁上がりと同じ再帰関係となる規則性が見出される。
【0041】
この規則性を、
図9を参照して説明する。
図9において、リニアは制御信号の最上位の1ビット目から6ビット目の値を表わし、TYPE_Aは制御信号の7ビット目の値を表わし、TYPE_Bは制御信号の8ビット目の値を表わし、TYPE_Cは制御信号の9ビット目の値を表わし、TYPE_Dは制御信号の10ビット目の値を表わし、TYPE_Eは制御信号の11ビット目の値を表わす。なお、以下同様に続き、制御信号が20ビットで示されている場合は、TYPE_Nが制御信号の20ビット目の値を表わすこととなる。
【0042】
具体的には、設定部24は、制御信号が6ビットの場合では一つのリニアPWMパルスを設定し、制御信号が7ビットの場合ではリニアPWMパルスと制御信号の7ビット目であるTYPE_Aを表わすリニアPWMパルスとを設定し、制御信号が8ビットの場合ではリニアPWMパルスと制御信号の7ビット目であるTYPE_Aを表わすリニアPWMパルスに加え、制御信号の8ビット目であるTYPE_Bを表わすリニアPWMパルスと制御信号の7ビット目であるTYPE_Aを表わすリニアPWMパルスが連続した組として出力されるように設定する。
また、設定部24は、制御信号が9ビットの場合では、リニアPWMパルス、制御信号の7ビット目であるTYPE_Aを表わすリニアPWMパルス、制御信号の8ビット目であるTYPE_Bを表わすリニアPWMパルス及び制御信号の7ビット目であるTYPE_Aを表わすリニアPWMパルスに加え、制御信号の9ビット目であるTYPE_Cを表わすリニアPWMパルス、制御信号の7ビット目であるTYPE_Aを表わすリニアPWMパルス、制御信号の8ビット目であるTYPE_Bを表わすリニアPWMパルス、及び制御信号の7ビット目であるTYPE_Aを表わすリニアPWMパルスが連続した組として出力されるように設定する。
【0043】
以下、同様に、設定部24は、制御信号が10ビットの場合では、制御信号の10ビット目を示すTYPE_Dを表わすリニアPWMパルスを含む8つのリニアPWMパルスがさらに加えられ、制御信号が11ビットの場合では、制御信号の11ビット目を示すTYPE_Eを表わすリニアPWMパルスを含む16個のリニアPWMパルスがさらに加えられる。
【0044】
ここで、
図9に示される例のPWM波形を出力させるためのコンピュータプログラムの一例を説明する。
【0045】
リニアPWMパルスの周期のカウントをblkcntと表わし、出力したい20ビットの値をPWM_DATA[19:0]と表わすと各TYPEは下記表1のような関係となる。
【表1】
なお、PWM値とは、リニアPWMパルスに含まれるデューティー比を示すこととなる微小パルスの数であり、PWM値を示す式における右辺の第1項は制御信号の上位6ビットまでの値を示している。一方、右辺の第2項は制御信号の上位7ビット目以降([]内の値から20を引いたビット目)を示している。
【0046】
さらに、第1ビット数をMとすると共に第2ビット数をNとして、表1に示される式を一般化した式が下記(1)式である。下記(1)式において、“1<<r”は1をrビット(0≦r≦N−M-1)だけ左シフトした状態を示す。また、“LINEAR_DATA”はMビットのPWMパルスの値を示し、“TARGET_DATA”はNビットの制御信号の設定値を示す。すなわち、LINEAR_DATAは表1に示される式のPWM値に対応し、TARGET_DATA[N-1:N-M]は右辺の第1項に対応し、TARGET_DATA[N-M-1-r]は右辺の第2項に対応する。
if(blkcnt[r:0]=="1<<r"){LINEAR_DATA=TARGET_DATA[N-1:N-M]+TARGET_DATA[N-M-1-r];}・・・(1)
【0047】
パルス発生回路12は、上記表1又は(1)式に示される関係式を用いたプログラムを設定部24として実装されることにより、組を構成する複数のリニアPWMパルスを簡易に設定することができることとなる。
【0048】
以上説明したように、本実施形態に係るパルス発生回路12は、第1ビット数よりも大きい第2ビット数で定められたデューティー比を示す制御信号が入力され、制御信号に基づいて、第2ビット数に応じて連続した複数のリニアPWMパルスから構成される組を1周期とするように設定し、設定した組を1周期としてPWM波形を出力する。
従って、パルス発生回路12は、出力するリニアPWMパルスのデューティー比を定めるビット数よりも、高い精度のデューティー比を示すPWM波形を出力することができる。
【0049】
また、従来の技術では、デューティー比の精度を上げるために、パルス発生回路が出力するパルスを定めるビット数(本実施形態でいう第1ビット数)を単純に大きくすることが考えられる。この場合、1ビットに相当する時間が一定であると、出力されるパルスの周期が長くなる。すなわち、低い精度で十分な場合であっても、パルス発生回路からは周期の長いパルスが出力される。
しかしながら、本実施形態に係るパルス発生回路12では、デューティー比の精度が低い精度で十分な場合、制御信号を示す第2ビット数を小さくすることで、パルス発生回路12からは、該低い精度に応じた少ない数のリニアPWMパルスの組を1周期としたPWM波形が出力されることとなる。そのため、本実施形態に係るパルス発生回路12は、低い精度のデューティー比のPWM波形を短い周期(短い時間)で出力することができる。
【0050】
また、本実施形態に係る設定部24は、組を構成する複数のリニアPWMパルスの数を、第2ビット数と第1ビット数の差をnとした場合に、2
n個に設定する。従って、パルス発生回路12は、組を構成する第1ビット数のリニアPWMパルスの数を簡易に求めることができる。
【0051】
また、本実施形態に係る設定部24は、第2ビットで示される制御信号のうち、第1ビット数に相当する上位ビットを第1ビット数で定められる一つのリニアPWMパルスで表わし、残りのビットを2
n−1個のリニアPWMパルスで表わすように設定する。従って、パルス発生回路12は、組を構成する複数のPWMパルスを簡易に生成することができる。
【0052】
さらに、本実施形態に係る設定部24は、制御信号のうち第1ビット数に相当する上位ビットを除いた残りのビットを、上位から桁が一つ増加する毎に前の桁の2倍の数のリニアPWMパルスで表わすように設定する。従って、パルス発生回路12は、制御信号を構成する各ビットを表わすPWMパルスを簡易に生成することができる。
【0053】
以上、本発明を、上記実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記実施形態に多様な変更または改良を加えることができ、該変更または改良を加えた形態も本発明の技術的範囲に含まれる。
【0054】
例えば、上記実施形態では、パルス発生回路12を
図1に示す駆動回路10に用いられる形態について説明したが、本発明は、これに限定されるものではなく、PWM波形を必要とする様々な回路に用いられる形態としてもよい。
【0055】
また、上記実施形態で説明したパルス発生回路12に実装されるプログラムに用いる表1又は(1)式に示される関係式も一例であり、プログラムとして他の関係式を用いてもよい。