マイコンで使うパルスについて【制御系では必須】
ハードウェアとパルス
パルスはハードウェアの回路に密着した技術といえます。組み込みエンジニアで制御系を扱う場合は特にパルス信号を扱う機会が多いために、トランジスタ等ハードウェア回路がどのようにしてパルスの発生させるかの仕組みを理解することが大切です。
パルスは典型的なデジタル信号で振幅は一定で時間軸のON/OFF期間が固定であったり、可変であったりするものです。外部スイッチのON/OFF入力も、外部へのON/OFF出力もマイコンからみるとパルスなのです。
パルスを自由に使いこなすことは制御系のプログラムの場合はある程度ものにできているといえるでしょう。通信で扱う信号も広義の意味ではパルスです。ただし、これはフォーマットにしたがって専用回路がすべてを作成しますのでパルスそのものを意識することはありません。
パルスの種類
パルスはデジタル信号の一種でマイコンではアナログ信号に対して、ON/OFFの状態で示されます。
アナログ信号は時間経過につれて信号レベルの振幅が連続で変動するものでデジタル信号の振幅は常に一定です。
マイコンではクロックとよばれる基本パルスが水晶振動子などのパルス発振器から与えられ各処理をすすめるタイミング信号となります。クロックは心臓の鼓動と同じく止まってしまえば機能も停止してしまうマイコンの大事な基準信号です。
1サイクル1クロックで、例えば1MHzのクロック周波数の場合、1サイクルは1usなので1秒間に1,000,000個のパルスが発生しています。
信号といっても、電圧を伴わない信号、すなわち電気回路としてスイッチがON/OFFしているだけの信号を無電圧パルス信号といい、電圧を伴う信号を有電圧パルス信号といいます。
パルスの概念は、デジタルシステムであるマイコンの入出力およびマイコン内部の処理を理解するうえでとても大事ですので十分理解しておいてください。
これまで扱ってきた回路でも、例えば入力回路ではプルアップ・プルダウン抵抗などは無電圧信号を有電圧パルス信号に変換するためのものであり、出力回路ではプッシュプル出力は有電圧パルス信号、オープンドレイン出力は無電圧パルス信号を出力するものです。
無電圧信号は操作スイッチ、リレーなどによる接点信号やトンジスタによるオープンコレクタまたはMOSFETによるオープンドレインで出力される信号で、信号源が接点の場合、ドライ接点と呼ばれます。パルス信号として使用するにはその信号回路に電圧をかけて負荷に電流をながすことではじめて電気のパルス信号となります。
センサーの出力、制御機器の信号出力などにトランジスタオープンコレクタ形式がよく使用されます。
日本国内ではNPNトランジスタによるシンク出力が一般的で、海外ではPNPトランジスタによるソース出力の製品が多いです。
無電圧信号の特徴は信号を受ける側(入力側)で電源を自由に選択できることです。つまり、出力側とは別電源を使用できるのが特徴です。この場合グランドを分離できるため、ノイズ対策にも有効です。
マイコンの入力に無電圧信号を使用する場合はマイコンに1(High)か0(Low)の電圧信号を与えるために、先に紹介したプルアップ抵抗やプルダウン抵抗を外部に追加接続する必要があります。マイコンによりプルアップ抵抗やプルダウン抵抗を内蔵しているものもあります。
有電圧信号はその名のとおり、電圧パルスです。ロジックICで組まれた回路で発生したパルスは有電圧信号です。
電圧レベルは固定されていて代表的なものにTTL規格とCMOS規格がありますので仕様にあわせて使用します。TTL規格はバイポーラトランジスタで構成したロジック回路のことをいいますが単に5V信号電圧のことを指していうことも多いです。
TTL規格
■ TTLの一般的な1(High)/0(Low)レベル
VIH(Highとみなす最低電圧)約2.0V
VIL(Lowとみなす最大電圧)約0.8V
つまり、2.0V以上で1(High)、0.8V以下で0(Low)のロジックです。
CMOS規格
■ CMOSの一般的の1(High)/0(Low)レベル
VIH(Highとみなす最低電圧)0.5-0.7 x Vdd (Vdd=3.3の時は1.65-2.3V )
VIL(Lowとみなす最大電圧)0.2 x Vdd (Vdd=3.3の時は0.66V )
電源電圧Vddにより1(High)/0(Low)レベルのしきい値が変わるので注意が必要です。
現在のマイコン電圧Vddは3.3Vが主流ですが1.8V, 0.9Vと低電圧のものがでてきています。
仕様電圧レベルを超えたものを与えると壊れる危険性があるため、よく理解して使用する必要があります。
ラインドライバとは伝送ノイズの影響を避けるために使われる平衡信号(差動信号)のことで互いに逆の極性のロジック信号を出力します。信号入力側には平衡型入力回路が必要ですが比較的長い距離でも安定して動作するのが特徴です。制御機器にはよく使われる仕様ですが、ラインドライバパルスはマイコンの入出力で直接つかうものではなく専用ラインドライバICで使えるようにすればよいのでここでは割愛します。
有電圧信号のうちトランジスタ素子をスイッチとした有電圧パルスはマイコンでよく使われます。
オープンコレクタ方式の無電圧信号にプルアップ抵抗やプルダウン抵抗で電圧パルスに変換するのは前述したとおりです。
パルス幅変調(PWM:Pulse Width Modulation)
パルス幅変調はパルスの幅(パルスがON/OFFの期間:デューティ比)を長くしたり、短くしたりして事実上の平均値を調整するものです。
例えばDCモータの速度コントロールはモータ電源電圧を調整すると電圧に比例して速度も調整できるのですが、電圧を変更するのに負荷に可変抵抗を直列につなぎ、抵抗値を変更するのが最も簡単な方法です。
この方法では可変抵抗を変更することでモータ電流もかわるのですが、抵抗器Rと電流Iとで大きな損失(=I2R)が発生してしまいます。
これに対して、PWMとよばれるパルス幅変調方式では抵抗値により電圧値(振幅)を変更するのではなく、電圧の振幅は一定でON・OFFしている期間つまりパルス幅を調整することで平均値を調整することになるのです。したがって、抵抗器Rによる電圧制御に比べて損失が小さいのが特徴です。
スイッチング回路と呼ばれるパワーエレクトロニクス回路により入力電圧をスイッチ、つまりON/OFFをコントロールすることで所望の出力電圧が得られます。よく耳にするインバータはPWMの応用です。
スイッチング回路に使われる半導体デバイスにはサイリスタ、GTO、パワートランジスタ、MOSFET、IGBTなどがあり使用する電力の大きさやスイッチング速度などにより使い分けられます。最近、次世代のデバイスとしてこれまでのシリコンベースデバイスからSiC(シリコンカーバイド)やGaN(ガリウムナイトライド)といったものが登場してきています。