Living Rooms Valley Community Workspace Community Science Project

Living Rooms

  • A community science project
  • How can we be warm and healthy in our homes, at an affordable price?
  • Observe our heating and ventilation practices, and
  • Contribute to international research and the community.
  • Funded by A Nation of Curious Minds - Central Govt grant

Our Goals

  • Help our community make data-driven decisions about home upgrade and maintenance
  • Make fun electronics
  • Quantitative data on how kiwis heat (room by room, rather than whole house)
  • Connect makers and scientists
  • Young people and technology

Govt Goals

  • A collaborative research project with scientific value that is important to the community
  • more science and technology competent learners
  • scientifically and technologically engaged public
  • publicly engaged science sector
  • skilled workforce and more responsive science and technology.

Community Questions

  • "What is thermal resistances of window film and drapes?"
  • (Higher R values mean less heat loss)
 
Type R [m2K/W] $ / window
Timber framed window, single glazed R0.2
Timber frame, single glazed, with drapes and pelmet R0.3 $0-$350
Timber frame, single glazed, with window film R0.4 $15
Alu frame, thermal break, double glazed, low-e R0.4  $1500
  Source: BRANZ, University of Otago

Indoor Weather Stations

  • Lets capture data with "Indoor Weather Stations"
    • Air Temperature  (in the shade)
    • Radiant/Globe Temperature, (take sun / radiant heating into account)
    • Humidity (moisture in house)
    • and eventually more .... Pressure, Lux, CO2, etc
  • Also capture Survey data with smartphone survey app. (know how to measure battery temp on smartphone?)
  • Observe how we keep ourselves comfortable, for example: Open a window, pull curtains, install window film or insulation, sit in the sun, light a fire, put on a jumper

Example Measurements

Black lines - hourly air temp (°C) in a Dunedin lounge, August Blue - average outside temp, Red - average inside temp

Why Collect Data?

  • Science - Study Adaptive Thermal Comfort - At what Air Temp, Activity Level and Clothing Level are kiwi's comfortable at home?
  • Personal Interest - Quantify home retrofit performance, when do we heat or produce moisture? identify possible upgrades and their likely effects on comfort and cost.  Will observed humidity level or swings likley to cause condensation leading to mould or rot?
  • Science and Personal Interest  - House energy efficiency

Prototype v0.1

  • MVP - Internet connected, SD backup, with display and mode button.  Measure AirT,RH
  • V0.1 - Uno + Ethernet/SD Shield W5100 + Energy Monitor Shield 1.0 w/ Nokia 5110 LCD + DHT22 T,RH sensor

Prototype v0.1 Problems

  • Wireless would be really nice.  Or option for WiFi / GPRS
  • Arduino Uno runs out of program space:
  • Read DHT22 - (17%) of program storage, (13%) of dynamic memory
  • Ethernet Client (with DHCP and DNS) - 46%/37%
  • LCD 8%/12%
  • DHT22 + LCD + SD R/W, 36%/46%
  • DHT22 + LCD + SD R/W + Ethernet - 118%/92% - TOO BIG!
  • Also, reliability? Power?

Example Arduino Code


// this method makes a HTTP connection to the server:
void httpRequest(float temp, float humid) {
  // close any connection before send a new request.
  // This will free the socket on the WiFi shield
  client.stop();

  // if there's a successful connection:
  if (client.connect(server, 80)) {
    Serial.println(F("connecting..."));
    // send the HTTP GET request:
    client.print(F("GET /updateweatherstation.php?action=updateraw&")); 
    client.print(F("ID=OTAGOTB12&PASSWORD=******&Name=Lounge&dateutc=now&indoortemp="));
    client.print(temp,1);
    client.print(F("&indoorhumidity="));
    client.print(humid,1);
    client.println(F("   HTTP/1.1"));
    client.println(F("Host: www.shac.org.nz"));
    client.println(F("User-Agent: indoor-wx-v0.1"));
    client.println(F("Connection: close"));
    client.println();

    // note the time that the connection was made:
    lastConnectionTime = millis();
  } else {
    // if you couldn't make a connection:
    Serial.println(F("connection failed"));
  }
}

THE END