スマートファン

このArduinoプロジェクトでは、ファンの速度が自動的に調整され、温度を適切な範囲内に保ちます。 また、ユーザーはボタンを通じて手動モードに入り、ファンを最大速度で操作できます。

必要なコンポーネント

このプロジェクトには以下のコンポーネントが必要です。

全体のキットを購入すると便利です。こちらがリンクです:

名称

このキットのアイテム数

リンク

Elite Explorer Kit

300+

Elite Explorer Kit

以下のリンクから別々に購入することもできます。

コンポーネント紹介

購入リンク

Arduino Uno R4 WiFi

-

ブレッドボード

BUY

ジャンパーワイヤー

BUY

抵抗器

BUY

LED

BUY

ボタン

BUY

サーミスター

BUY

DCモーター

BUY

TA6586 - モータードライバーIC

-

電源モジュール

-

配線図

../_images/06_smart_fan_bb.png

回路図

../_images/06_smart_fan_schematic.png

コード

注釈

  • ファイル 06_smart_fan.inoelite-explorer-kit-main\fun_project\06_smart_fan のパスから直接開くことができます。

  • または、このコードをArduino IDEにコピーしてください。

どのように動作しますか?

以下はコードのステップバイステップの説明です:

  1. 定数と変数の定義:

    様々なハードウェア接続用のピンを定義するために #define を使用します。 TEMP_THRESHOLD は25°Cと定義され、これはファンを起動する温度のしきい値です。 manualMode:手動モードかどうかを示すブール変数。

  2. setup()

    関連するピンのモード(出力、入力、プルアップ付き入力)を設定します。 初期状態は自動モードなので、 LED_AUTO が点灯し、 LED_MANUAL は消灯しています。

  3. loop()

    ボタンの状態を監視します。ボタンが押されると、モードが切り替わり、LEDの状態が変わります。 手動モードでは、ファンは最大速度で稼働します。 自動モードでは、まず温度センサーからの電圧値を読み取り、それを温度値に変換します。 温度がしきい値を超えると、ファンの速度は温度に基づいて調整されます。

  4. voltageToTemperature()

    温度センサーからの電圧値を摂氏の温度値に変換するための補助関数です。 この関数は、サーミスタの標準式を使用して温度を推定します。 戻り値は摂氏です。