2018年4月2日 星期一

空氣清淨機自動化(接收器)


                風機自動控制後,現在空氣清淨機也來自動一下(原本只有我改造的定時功能),現在加了RF接收能力



使用NANO板搭配RF接收器來控制,2SC1815來控制開關做動,因為空氣清淨機內的的機板的5V是用積納二極體做的,輸出電流不夠驅動NANO,做動時會跳掉關機,所以只好用USB線直接插NANO板供應5V,GND和機板的GND接一起,5VUSB,這樣就可正常作動

這大概是全台灣唯一一台可接收RF信號來控制的honeywell 17000 吧XD



這是我使用的RF程式庫網站,裡面有載點
http://www.airspayce.com/mikem/arduino/RadioHead/index.html


這是程式碼:

#include <RH_ASK.h> //rf程式庫
#include <SPI.h> 
    RH_ASK driver;
    uint8_t buf[RH_ASK_MAX_MESSAGE_LEN]; //接收資料用
    uint8_t buflen = sizeof(buf); 
int off=0;//累積>3關機
int mi=0; //紀錄上次切換分鐘,利用這變數來限制空氣清淨機每分鐘只能切換轉速檔位1,避免太頻繁開關
int pm=0;//pm數值
void setup(void)
{
 

  driver.init();
   pinMode(13, OUTPUT);
   pinMode(6, OUTPUT);//高速
   pinMode(5, OUTPUT);//低速
   pinMode(4, OUTPUT);//中速
   pinMode(9, OUTPUT);//off
  digitalWrite(6, LOW);
  digitalWrite(5, LOW);
  digitalWrite(4, LOW);
  digitalWrite(9, LOW);
Serial.begin(9600);
}

void loop(void)
{

     if(driver.recv(buf, &buflen)) //RF收到訊號時   
  {
    if(buflen>6)//如果信號長度大於6
    {
    Serial.println(buf[0]); //開頭
    Serial.println(buf[1]);//發射器輸出的PM1.0數值
    Serial.println(buf[2]);//發射器輸出的PM2.5數值
    Serial.println(buf[3]);//發射器輸出的PM10數值
    Serial.println(buf[4]);//發射器輸出的時
    Serial.println(buf[5]);//發射器輸出的分
    Serial.println(buf[6]);//發射器輸出的秒  
     pm=buf[2]; 
      if(buf[5]!=mi)//
    {
    digitalWrite(13, LOW);
    delay(500);
      if (pm>25) //PM2.5 > 25ug/m3
    {
      mi=buf[5];
      digitalWrite(6, HIGH); //高速檔開啟
      delay(1000);
      digitalWrite(6, LOW);
     delay(1000);
      off=0;
    } 
     if (pm>15 && pm<=25) //PM2.5 介於1525之間時
    {
      mi=buf[5];
      digitalWrite(4, HIGH); //中速檔開啟
      delay(1000);
      digitalWrite(4, LOW);
       delay(1000);
      off=0;
    }
    if (pm>10 && pm<=15) //PM2.5 介於1015之間時
    {
      mi=buf[5];
      digitalWrite(5, HIGH);//低速檔開啟
      delay(1000);
      digitalWrite(5, LOW);
      delay(1000);
      off=0;
    }   
   if (pm<7) //PM2.5 小於7
    {
      off=off+1; //累計一次
    }
     }
   else
   {
    digitalWrite(13, HIGH);
    delay(2000);
   }
       
   if (off>3) //當累積大於3次時
    {
      off=0;   
      digitalWrite(9, HIGH); //關閉空氣清淨機
      delay(1000);
      digitalWrite(9, LOW);
      delay(1000);
    }
     

   
     }
  }

  
}






















1 則留言:

大青蛙婚攝 提到...

17200 最討厭就是電子開關~
您這樣改真厲害

自製簡易新風系統

                   最近空氣品質很糟糕 , 家裡的空氣清淨機開全速壓制 , 只能壓到室內 30~40ug/m3 , 而且要關窗才有效 , 長時間關窗會有二氧化碳的問題 , 後來看網路的文章看多了 , 發現有種東西叫 全熱交換器 , 在裡面...