IFD:PhysicalComp2011/Patawat Phamuad

From Medien Wiki

Relieve Climate Synopsis

Problem

At the present day, people rely on personal comfort than responding to environment issue. As a result, using private vehicles:- cars, motorcycle not only make more air pollution than taking a train or rail-way system but also consume more energy and fuel respectively. Last but not least, traffic jam problem in a metropolis is accordingly caused by high increase rate of personal vehicles. Beside, main emission from fuel ignition are Carbon Dioxide gas which able to severely damage human respiratory system.

Project Objective

Mobility Management measures is a Pull, a new concept in a developed country is expected to effectively manage the growing amount of private car. The main idea is to give knowledge or publicity information related to travel through the cooperation between various departments. Along with the use of tools or measures to support or encourage motorists to change their attitudes and behavior on the trip (Voluntary Behavior Change).

Solution

Thus, to support the Mobility Management measure, Relieve Climate is the application for iOS devices:- iPad, iPhone, iPod touch which impulse smart phone users to get involve to public transportation focusing on a train or real-way usage. The application continuously keeps tracking user's public transportation trip in a data form, then, visualize the data to become tangible graphic on the device. Furthermore, the application allows users to earn sponsored prizes from public transportation provider by sending the data to server and compete with other users to win a big prize!.

Demonstration Phrase and Target Audience

  • For the alpha (prototype phrase), the application focuses integrating in public sky train in Bangkok , Thailand namely BTS(Bankok Mass Transit System) Sky Train.
  • The application focuses on iOS smart device holders, soon, on Android OS and etc.
  • The target application users mainly are people who rarely take BTS Sky Train. However, daily or repetitive passengers are also in target group.


Project Conclusion Presentation





Project References

Project Inquiries:

The German railway company Deutsche Bahn has released a beautiful educational video that explains the benefits of an environmentally conscious behaviour. In particular, the video suggests that travelling by train produces less CO2 than travelling by car or by plane.

<videoflash type=vimeo>30990475|437|236</videoflash> link to video source: here


Zxing for iOS, qr code decoder library. <videoflash>H8WjmDBHgw4</videoflash>


Referred document resources::

Bangkok Transit System (BTS) Fact sheets

Emissions of carbon dioxide per capital

Automotive Statistics

Zxing (Zebra-Crossing) site reference

Data Collecting Experiment

This section I would like to describe about my first experiment with data collecting. During Monday 14.11 to Sunday 20.11, I collected the data from roughly measurement distances between the places I had been in each day. After that, I jot down how far distances I travelled then calculated into amount of Carbon Dioxide, which I was able to save. Please look at the illustrators below:



When the datas were adequately collected. The datacollect.tsv was set up as in row and column as below:

DataCollect.png


I made a sketch which visualize the datas, which i collected. The sketch represented in bubble animation form using sin() function and each circles' color represents the day when I collected the informations. In addition, maximum size of growing circle informs how much Co2 rate, I could save. Lastly, the circles are randomly located by random() function with array[]. See my several visualized datas as pictures below:

visualized data#1 visualized data#2

dataCollectingCo2 sketch example code

/* data visualization :: How much I can save Co2 releasing in 1 week.
 * 
 * an experiment from collecting the data then visualize these datas to motion graphic.
 * 
 *
 * Patawat Phamuad 2011
 */

Table dataTable;
int numCircles=7;
int rowCount;
float rad = 20f;
float angle = 0.0f;
float speed = 0.01;

float[] xPositions = new float[numCircles];
float[] yPositions = new float[numCircles];

void setup() {
  size(300, 300);
  noStroke(); 
  smooth();

  dataTable = new Table("datacollect.tsv");
  rowCount = dataTable.getRowCount();

  for (int i=0; i< numCircles; i++) {
    xPositions[i] = random(0, width);
    yPositions[i] = random(0, height);
  }
}

void draw() {
  background(0);
  angle += speed;
  float diameter = sin(angle)*300;
  for (int row=0;row<rowCount;row++) {

    String date = dataTable.getString(row, 0);
    float distance = dataTable.getFloat(row, 1);
    float co2 = dataTable.getFloat(row, 2);

    if (row==0) {
      fill(255, 255, 0, 155);
      ellipse(xPositions[row], yPositions[row], diameter*co2, diameter*co2);
    }
    else if (row==1) {
      fill(234, 114, 234, 155);
      ellipse(xPositions[row], yPositions[row], diameter*co2, diameter*co2);
    }
    else if (row==2) {
      fill(42, 165, 27, 155);
      ellipse(xPositions[row], yPositions[row], diameter*co2, diameter*co2);
    }
    else if (row==3) {
      fill(232, 84, 26, 155);
      ellipse(xPositions[row], yPositions[row], diameter*co2, diameter*co2);
    }
    else if (row==4) {
      fill(15, 8, 255, 155);
      ellipse(xPositions[row], yPositions[row], diameter*co2, diameter*co2);
    }
    else if (row==5) {
      fill(121, 13, 180, 155);
      ellipse(xPositions[row], yPositions[row], diameter*co2, diameter*co2);
    }
    else if (row==6) {
      fill(255, 0, 0, 155);
      ellipse(xPositions[row], yPositions[row], diameter*co2, diameter*co2);
    }
    println("Date:" +date+ " Total distance:" +distance+" km."+ " Co2 Safe:"+co2 +" kg.");
  } 

  println("========");
  println(rowCount);
}



to download example sketches click link below: Media:dataCollectingCo2.zip