図3は、小型マイコンボード「Arduino」でPWMを発生させてSTP75NF75を制御して、シャー芯に灯をともす回路図です。PWMのデューティ比は、ArduinoのアナログピンA1に接続した可変抵抗を使って制御します。ArduinoからのPWMの出力である9番ピンは、STP75NF75のゲートに接続します。負荷であるシャー芯は端の一方を+電源に、そしてもう一方をSTP75NF75のドレインに接続します。ソースはグランドに接続します。
リスト1はArduinoでPWMを出力するプログラムです。
int pwm_pin = 9; int analogPin = 1; int val = 0; void setup() { } void loop() { val = analogRead(analogPin); analogWrite(pwm_pin, val / 8); }
Arduinoの開発環境である「Arduino IDE」を用いてこのプログラムをコンパイルして、ターゲットのArduinoモジュールに書きこみます。筆者の場合は「Atmega168」が搭載されている「Arduino nano」を用いました。PWMのパルス周波数は490Hzです。A1ピンに入力された電圧は、A-Dコンバーターにより10ビットの分解能で量子化され、0から1023の値を取ります。これを8で割った値をanalogWriteでPWM信号として出力します。analogWriteの分解能は256なので、4で割ればPWMのデューティ比は0から100%になるのですが、今回の実験では0から50%のPWM信号が必要なので8で割ることにしました。
図4は、実際にシャー芯に灯をともした状態です。上はシャー芯が赤くなりはじめたところの写真です。
図5はいよいよクライマックスを向かえる場面です。この直後にシャー芯は断線してしまいました。電圧は10V、電流は2Aを少し超えたところでしょうか。撮影した写真データのタイムスタンプを見てみると1分以上は灯がともっていたようです。
今回はパワーMOSFETを駆動するためにArduinoでPWMを発生させる方法を紹介しました。ドライブする負荷としてシャー芯を用いました。シャー芯の灯のともり具合を見ながら、可変抵抗のノブを調整できるところが特徴です。シャー芯が燃え尽きる前に電力の供給を止めて、何度も同じシャー芯が使えないかといろいろと試してみましたが筆者は成功していません。読者の皆さんもいろいろチャレンジしてみてください。そして最後に、くれぐれも火の始末だけはご注意ください。
Copyright © ITmedia, Inc. All Rights Reserved.