HS110 Hygrometer Humidity Sensitivity sensor

Based on a unique capacitive cell, these relative humidity sensors are designed for high volume, cost sensitive applications such as office automation, automotive cabin air control, home appliances, and industrial process control systems. They are also useful in all applications where humidity compensation is needed.

FEATURES

• Full interchangeability with no calibration
required in standard conditions
• Instantaneous desaturation after long periods in
saturation phase
• Compatible with automatized assembly
processes, including Pb free wave soldering
and reflow processes (1)
• Individual marking for compliance to stringent
traceability requirements
• Part may be washed with distilled water

SPECIFICATIONS

Accuracy:±2% RH
Humidity Range:1 ~ 99% RH
Mounting Type:Through Hole
Operating Temperature:-40°C ~ 140°C
Output:180pF @ 55%RH
Output Type:Capacitance
Packaging:Tube
Sensitivity:310nF/%RH
Sensor Type:Humidity
Voltage - Supply:10V

APPLICATIONS

• Home Appliance
• Automotive
• Printers
• Meteorology

Relative Humidity Measurement using the HS1101 Sensor
Connection with Arduino
The sensor is connected to the Arduino controller through a resistor/capacitor circuit, as the relative humidity changes, so does the capacitance of the device. This is measured by calculating the time it takes for the capacitor to charge through a circuit with a known resistance. The HS1101 is connected as shown below:
HS1101_Circuit_Diagram

Code for Arduino

int sensorPin = 4;                        // RC circuit with HS1101 sesnor connected to digital pin D4
long result = 0;
int const RHconstant = 12169;             // RH constant

void setup() {
   Serial.begin(9600);                   // Use Serial Monitor window at 9600 baud
   Serial.println("Humidiy reading start");
   Serial.print("RC delay");
   Serial.print("\t");
   Serial.println("Humidity");
}
void loop() {
   long RCdelay = RCTime(sensorPin);     // Take RC time reading of sensor
   Serial.print(RCdelay);                // Display RC time delay
   Serial.print("\t\t"); 
   
   RCdelay = RCdelay * 215;               // Calibation to RC time delay; experiment with literal value
   int humidity = (RCdelay - RHconstant) / 24;
   Serial.println(humidity / 100, DEC);  
   delay(500);                           // Wait 1/2 second for the next read
}

// Standard RC time function
long RCTime(int sensePin){
   long result = 0;
   pinMode(sensePin, OUTPUT);       // Make pin OUTPUT, and turn HIGH
   digitalWrite(sensePin, HIGH);    
   delay(1);                        // Wait 1 ms delay
   pinMode(sensePin, INPUT);        // Make sensor INPUT
   digitalWrite(sensePin, LOW);     // Turn off Arduino internal pullup resistor
   while(digitalRead(sensePin)){    // Loop until pin goes low
      result++;
   }
   return result;
}