Project tutorial
How to repair a Dehumidifier with Arduino Uno

How to repair a Dehumidifier with Arduino Uno © GPL3+

Make a controller to replace the control board of a dehumidifier that burned

  • 251 views
  • 0 comments
  • 0 respects

Components and supplies

A000066 iso both
Arduino UNO & Genuino UNO
×1
Power Supply 5VDC 2Amps
×1
Relay 5VDC 220/110VAC 10AMPS
×1
Mfr 25fbf52 2k21 sml
Resistor 2.21k ohm
×1

Necessary tools and machines

09507 01
Soldering iron (generic)

About this project

I have a old dehumidifier that was out due the control board was burned. As I was working with Arduino Uno in other projects I decided try to do a control board to the dehumidifier and reusing the components that were still good

Code

ArduinoDehumidifierArduino
Repair a old control board of a dehumudufiers
/*  Created by Mário Cordeiro, you can see the presentation in video  in the Youtube MA2COR channel Tecnologies
 *  https://www.youtube.com/channel/UC1UEzlX6C7bHL-PeAGvP-Kw
 *  This sketch controls a  dehumidifier, the ON, OFF , radiator temperature and water tank

 */

#define RelayFAN 2 //Controls  FAN
#define RelayCOMP 3 //Controls the compressor
#define Temperature A0 //measure the temperature in the compressor radiator by using the thermocouple from the dehumidifier


int value = 0;
int ledUnfreeze = 8; // unfreeze light indicator when the thermocouple read low temperature ice formation 
int ledON = 4; // ON - dehumidifier ON
int ledTank = 5; // warning light of full or out Water tank 
int inputPin = 6;   // Check if water tank is full or out
int Buzzer = 7;   //Buzzer ON/OFF/Water tank full or out
int flagH = 0;  //To run once
int flagM = 0;
int flagL = 0;

void setup()
{
  
  pinMode(RelayFAN,OUTPUT);
  digitalWrite(RelayFAN,LOW);
  pinMode(RelayCOMP,OUTPUT);
  digitalWrite(RelayCOMP,LOW);
  pinMode(Buzzer, OUTPUT);
  digitalWrite(Buzzer, LOW);  
  pinMode(inputPin, INPUT);
  digitalWrite(inputPin, LOW);  
  pinMode(ledON, OUTPUT);
  pinMode(ledTank, OUTPUT);
  pinMode(ledUnfreeze, OUTPUT);    
  Serial.begin(115200);
  delay(10);


}


void loop() {



 value = digitalRead(inputPin); // Check if tank is full or out (3V3- Digital 1 HIGH, 0V - digital 0 LOW)
     Serial.print("Tank: ");  
           Serial.println(value);
        delay(200);
        while (value == 0){
            digitalWrite(ledON, LOW);
            digitalWrite(ledUnfreeze, LOW);
            digitalWrite(RelayFAN,LOW);
            digitalWrite(RelayCOMP,LOW);
            digitalWrite(Buzzer, HIGH);
            tone(Buzzer, 1800, 500);
            delay(500);
            noTone(Buzzer);
              // if the LED is off turn it on and vice-versa:
              if (digitalRead(ledTank) == LOW) {
                digitalWrite(ledTank, HIGH);
                delay(500);
                } else {
                  digitalWrite(ledTank, LOW);
                  delay(500);
                        }
            value = digitalRead(inputPin); // Check inside de loop (3V3)                 
        }
              
             int Temp = analogRead(Temperature);     // Read de voltage in A0 and convert it to digital 0-1023
             Serial.print("ConvertedTemp: ");//I made some tests with the thermocouple in water at 0 degrees, 10, 20, 30, .... 80º and made conversion in 0-1023
             Serial.println(Temp);             
                if ((Temp > 700) && (flagH == 0)){     //Prevent ice formation, ICE in  evaporator, Unfreeze process
                digitalWrite(RelayCOMP,LOW);
                delay(100);
                digitalWrite(ledUnfreeze, HIGH);
                delay(100);
                digitalWrite(RelayFAN,HIGH);
                digitalWrite(ledTank, LOW);
                tone(Buzzer, 1800, 2000);
                delay(1000);
                noTone(Buzzer);                
                flagH = 1;
                flagM = 0;
                flagL = 0;noTone(Buzzer);
                }
                if ((Temp > 200) && (Temp < 701) && (flagM == 0)){ //Normal working
                digitalWrite(RelayFAN,HIGH);
                digitalWrite(RelayCOMP,HIGH);
                delay(100);
                digitalWrite(ledUnfreeze, LOW);
                delay(100);
                digitalWrite(RelayCOMP,HIGH);
                digitalWrite(ledTank, LOW);
                digitalWrite(ledON, HIGH);
                tone(Buzzer, 1800, 1000);
                delay(1000);
                noTone(Buzzer);                                
                flagH = 0;
                flagM = 1;
                flagL = 0;                
                }                
                 if ((Temp < 201) && (flagL == 0)){ // High temperature in evaporator. Prevents damage
                digitalWrite(RelayCOMP,LOW);
                delay(100);
                digitalWrite(ledUnfreeze, HIGH);
                delay(100);
                digitalWrite(RelayFAN,HIGH);
                digitalWrite(ledTank, LOW);
                digitalWrite(ledON, LOW);
                tone(Buzzer, 1800, 1000);
                delay(1000);
                tone(Buzzer, 1800, 1000);
                noTone(Buzzer);                                                        
                flagH = 0;
                flagM = 0;
                flagL = 1;   
                } 
        }

Schematics

SCHEME
Controlboard q3uxnnsvhq
Diagram
Diagram of new control board
Controlboard r7qhs96n2x

Comments

Similar projects you might like

Automated Dehumidifier Sump Pump

Project tutorial by Zachary J. Fields

  • 6,823 views
  • 10 comments
  • 23 respects

Home Automation with Arduino Uno and SmartEdge Agile

Project tutorial by AYUSHMAN SAHA

  • 2,404 views
  • 0 comments
  • 4 respects

Control Arduino Uno Using ESP8266 WiFi Module and Blynk App

Project tutorial by Adithya TG

  • 63,468 views
  • 16 comments
  • 59 respects

Arduino Uno + Electrical Device (Bulb) + Android Phone

Project tutorial by Stephen Simon

  • 11,566 views
  • 9 comments
  • 41 respects

RS-485 and Arduino Uno

Project tutorial by Alf81010

  • 10,500 views
  • 0 comments
  • 10 respects

ARDUINO UNO or TRINKET PRO 5V 6 Chasing LEDS with POT and PB

Project tutorial by MichDragstar

  • 2,671 views
  • 2 comments
  • 5 respects
Add projectSign up / Login