栽培環境構築関連

PICを使用した温室・フレーム用ファンコントローラの製作

温室温度 栽培環境構築関連
スポンサーリンク



以前にもサボテンフレーム用ファンコントローラをPIC12F683を使用して作ったのですが(サボテン用フレームが30℃を超えたらファンが回るようにするぞ!を参照のこと)、今回もう一度作ります。

サボテン用フレームが30℃を超えたら換気用ファンが回るようにするぞ!
重要!PICを使用したファンコントローラの製作で記事を書き直しています(2014/11/16) 概要 PIC(PIC12F683)を使用して、温度をトリガーにPWMでファンコントロールする。対象の温室は、衣装ケースで制作。温度の測定にはLM...

というのも新しいサボテンフレームのために、以前のファンコントロール回路を久しぶりに動かそうとしたのですが、マイコンを5Vで駆動しなければいけないところを、ファンの駆動電圧である12Vをかけてしまいぶっ壊したからです(マイコンだけでなく温度センサとMOSFETも壊れました)。

そんでもって、前回の自分で書いた記事を参考に、もう一度同じものをつくろうと思ったのですが、読み返してもさっぱりわからなかったため、今回、一からまとめ直します。

という訳で今回の投稿はほぼ自分用のメモです。

用意するソフトウェア

 

 

使用する部品とか

 

  • 温度センサ/LM35DZ
  • マイコン/PIC12F683
  • NchパワーMOSFET/2SK2232
  • 抵抗120Ω
  • 積セラコンデンサ0.1μF  * 2個
  • 5VのACアダプタ
  • 5Vのファン  

工程

・mikroCでプログラムを書き、BuildしてHEXファイルを生成する。

・PICkit3 ProgrammerでHEXファイルをPIC書き込む。

・ファン回路に導入。

サボテンうっとり。

(゚д゚)ウマー

mikroCのコンフィギュアワードは以下のとおりです(重要)。


mikroCのプログラムは以下のとおりです。30℃から段階的にファンが強く回っていきます。

void main() {
     unsigned int ad1, ad2, ad3;
     unsigned int level;

     OSCCON = 0b01110000;        // 8MHz internal clock
     ANSEL = 0b01011000;         // AN3 and Fosc /16
     ADCON0 = 0b10001101;        // AD control CHS=11(AN3)
     CMCON0 = 0b00000111;        // Comperator not select

     PWM1_Init(8000);            // PWM initial 8KHz
     PWM1_Start();               // PWM start

     do {
        ad1 = Adc_Read(3);            // Read AN3
        Delay_ms(5);
        ad2 = Adc_Read(3);            // Read AN3
        Delay_ms(5);
        ad3 = Adc_Read(3);            // Read AN3
        level = (int)((ad1 + ad2 + ad3) / 3); // Avg. AN3

        if(level < 50) {                // -25
               PWM1_Set_Duty(0);
        } else if(level > 61 && level < 70) {  // 30-35
               PWM1_Set_Duty(200);
        } else if(level > 71 && level < 80) {  // 35-40
               PWM1_Set_Duty(225);
        } else if(level > 81 && level < 90) {  // 40-45
               PWM1_Set_Duty(255);
        } else if(level > 91 && level < 100) { // 45-50
               PWM1_Set_Duty(255);
        } else if(level > 101) {               // 50-
               PWM1_Set_Duty(255);
        }
    } while(1);
}



PICkit3とライターのつなぎ方は以下のとおりです。

回路図。


配線写真。


ファン駆動回路は以下のとおりです。

回路図。


表面。


裏面。半田が汚い。


ファンとつなげたところ。


ストーブで動作を確認。


サボテンフレームの側面にファンを取り付けるためにアクリルに穴を開けます。


四角く空きました。


アクリルの穴あけは気がゆるむとすぐ割れてしまいます。というわけで割れました。ビニールテープで補修。透明でわかりづらいです。


アクリルが透明なので、どういうことになっているのか写真ではまったくわかりませんが、アクリル板にファンがネジ止めされています。


フレームの側面にセットしたところ。アクリル板のフレーム側面へのセットは、アクリルにネジ止めしたイレクタージョイントでフレーム側のパイプに止めました(手で着脱可能です)。


奥のピンク色のタッパーが温度センサー部分です。

温室温度計測


というわけで、ここまで苦労して作ったのですが、よくよく検索してみるとサーモスタットICなるものが100円未満で売っていることに気付きました。たとえばサーモスタットIC TC622EPA -40℃~85℃とか。こういうのを使えば、そもそもプログラミングなんて必要なかったですね。というわけで次回からはそうしたいと思います。


参考:

コメント

タイトルとURLをコピーしました