工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

Arduino Unoで25kHz 4ピンPWMファンを制御 – 製作・コード・テスト

必要な部品と材料

使用するソフトウェア

プロジェクトの概要

手元にあった5つの4ピンPWMファンを制御したくて取り組んだプロジェクトです。周波数は125Hz〜8MHzの範囲で調整可能で、デューティサイクルも可変です。回路はタイマー1のOCR1A(ピン9)とICR1(ピン10)を使ったモード10(位相補正PWM)を利用しています。デバッグにはハンドヘルドオシロスコープを使用し、波形を目で確認しながら調整しました。

Arduino Unoで25kHz 4ピンPWMファンを制御 – 製作・コード・テスト
Arduino Unoで25kHz 4ピンPWMファンを制御 – 製作・コード・テスト

重要な注意点

注意: 別のタイマーを使って2台のファンを独立制御しようとしましたが、うまくいきません。2番目のタイマーは解像度が低い(16bit対8bit)ため、周波数とデューティの調整ステップが粗くなり、波形が歪みます。また、値の入力も直感的ではありません。

回路図

Arduino Unoで25kHz 4ピンPWMファンを制御 – 製作・コード・テスト

ソースコード

const byte OC1A_PIN = 9;
const byte OC1B_PIN = 10;
const word PWM_FREQ_HZ = 25000; // 周波数をHzで指定(現在25kHz)
const word TCNT1_TOP = 16000000 / (2 * PWM_FREQ_HZ);

void setup() {
  pinMode(OC1A_PIN, OUTPUT);
  // Timer1 レジスタクリア
  TCCR1A = 0;
  TCCR1B = 0;
  TCNT1 = 0;
  // Timer1 設定
  // COM1A(1:0) = 0b10 (出力A: 立上がりでクリア/立下がりでセット)
  // COM1B(1:0) = 0b00 (出力B: 通常動作)
  // WGM(13:10) = 0b1010 (位相補正PWM)
  // ICNC1 = 0 (入力キャプチャノイズキャンセラ無効)
  // ICES1 = 0 (入力キャプチャエッジ選択無効)
  // CS(12:10) = 0b001 (クロック分周なし)
  TCCR1A |= (1 << COM1A1) | (1 << WGM11);
  TCCR1B |= (1 << WGM13) | (1 << CS10);
  ICR1 = TCNT1_TOP;
}

void loop() {
  setPwmDuty(0);
  delay(5000);
  setPwmDuty(25); // 0-100でデューティサイクル調整
  delay(5000);
  // setPwmDuty(50); delay(20000);
  // setPwmDuty(75); delay(20000);
  // setPwmDuty(100); delay(20000);
}

void setPwmDuty(byte duty) {
  OCR1A = (word)(duty * TCNT1_TOP) / 100;
}

製造プロセス

  1. Arduino MegaでPWM制御:プッシュボタン付きLEDフェード制御チュートリアル
  2. Alexaでシーリングファンを音声制御:ステップバイステップガイド
  3. Arduino で作るイスラム教礼拝時刻付きリアルタイムクロック
  4. スマート貯金箱を作ろう:Arduino Nanoでコインアクセプターを制御
  5. ArduinoでBluetooth経由でLEDを制御 – シンプルDIYガイド
  6. Arduino Nanoとジョイスティックで2軸ステッピングモーターを制御:Visuinoで簡単プログラミング
  7. Arduino UNOで1.17インチTFT LCDに画像を表示する方法
  8. Arduino Unoで8×8 LEDマトリックスを制御:ステップバイステップガイド
  9. Arduino Unoと1Sheeldで作る4x4x4 LEDキューブ – インタラクティブLEDプロジェクト
  10. ThimbleKrox: Arduino MicroとMPU-6050を用いた指装着型マウス制御
  11. Arduinoでゴキブリ制御システムを自作 - 30ドル以下で構築