Documentation for Recitation 8 – Kenan Gu – Maecela

Exercise 1:

  1. Components:
    1) an Arduino
    2) a board
    3) wires
    4) two potentiometers
  2. Diagram:
  3. Codes:
    1) Processing:
    import processing.serial.*;String myString = null;Serial myPort;

    int NUM_OF_VALUES = 2;  

    int[] sensorValues;      

    void setup() {

     size(500, 500);

     background(0);

     setupSerial();

    }

    void draw() {

     updateSerial();

     printArray(sensorValues);

     background(0);

     fill(255);

     ellipse(sensorValues[1], sensorValues[0],50,50);

    }

    void setupSerial() {

     printArray(Serial.list());

     myPort = new Serial(this, Serial.list()[ 9 ], 9600);

     

     myPort.clear();

     // Throw out the first reading,

     myString = myPort.readStringUntil( 10 );  

     myString = null;

     sensorValues = new int[2];

    }

    void updateSerial() {

     while (myPort.available() > 0) {

       myString = myPort.readStringUntil( 10 );

       if (myString != null) {

         String[] serialInArray = split(trim(myString), “,”);

         if (serialInArray.length == NUM_OF_VALUES) {

           for (int i=0; i<serialInArray.length; i++) {

             sensorValues[i] = int(serialInArray[i]);

           }

         }

       }

     }

    }

    2) Arduino:

    void setup() {

     Serial.begin(9600);

    }

    void loop() {

     int sensor1 = analogRead(A0);

     int sensor2 = analogRead(A1);

     

     // keep this format

     Serial.print(sensor1);

     Serial.print(“,”);  

     Serial.print(sensor2);

     Serial.println();

     delay(100);

    }

  4. Video of completed circuit:
  5. Reflections on the interaction: For this exercise, I use the potentiometers to control the movements of the ellipse. I think the interaction is a fairly good one since it breaks down the boundaries between the digital and physical world. I can see the huge potential of this basic interaction and how it can serve as a foundation for some high-quality interaction we are using in the contemporary world like those video games. Maybe this can be one inspiration for my final project.

Exercise 2

  1.  Components:
    1) an Arduino
    2) a board
    3) wires
    4) a buzzer
  2. Diagram:
     
  3. Codes:
    1) Processing:
    import processing.serial.*;int NUM_OF_VALUES = 2;  

    Serial myPort;

    String myString;

    int values[] = new int[NUM_OF_VALUES];

    void setup() {

     size(500, 500);

     background(0);

     printArray(Serial.list());

     myPort = new Serial(this, Serial.list()[9], 9600);

     

     myPort.clear();

     

     myString = myPort.readStringUntil( 10 );

     myString = null;

    }

    void draw() {

     {

     background(0);

     values[0] = mouseX;

     values[1] = mouseY;

    }

     

     

     sendSerialData();

     echoSerialData(200);

    }

    void sendSerialData() {

     String data = “”;

     for (int i=0; i<values.length; i++) {

       data += values[i];

       

       if (i < values.length-1) {

         data += “,”;

       }

       

       else {

         data += “n”;

       }

     }

     

     myPort.write(data);

    }

    void echoSerialData(int frequency) {

     

     if (frameCount % frequency == 0) myPort.write(‘e’);

     String incomingBytes = “”;

     while (myPort.available() > 0) {

      

       incomingBytes += char(myPort.read());

     }

     print( incomingBytes );

    }

    2) Arduino:

    #define NUM_OF_VALUES 2    

    int tempValue = 0;

    int valueIndex = 0;

     

    int values[NUM_OF_VALUES];

    void setup() {

     Serial.begin(9600);

     pinMode(9, OUTPUT);

    }

     

    void loop() {

     getSerialData();

     tone(9, values[0], values[1]);

    }

    void getSerialData() {

     if (Serial.available()) {

       char c = Serial.read();

     

       switch (c) {

         

         case ‘0’…’9′:

           

           tempValue = tempValue * 10 + c – ‘0’;

           break;

         

         case ‘,’:

           values[valueIndex] = tempValue;

           

           tempValue = 0;

           

           valueIndex++;

           break;

         

        

           values[valueIndex] = tempValue;

           

           tempValue = 0;

           valueIndex = 0;

           break;

         

           for (int i = 0; i < NUM_OF_VALUES; i++) {

             Serial.print(values[i]);

             if (i < NUM_OF_VALUES – 1) {

               Serial.print(‘,’);

             }

             else {

               Serial.println();

             }

           }

           break;

       }

     }

    }

  4. Videos of the completed circuit:
  5. Reflection on the interaction: the interaction of exercise 2 is in an opposite way of exercise 1, where the instructions of the digital world are the controller. When I was trying to write the proper code to achieve the requirement, I found out exercise 2 was more complicated than one even though the major difference between the two is simply the direction of the command. Thus, I understand the explicit distinction between the digital language and physical language. Digital language is made up by tons of logically organized and abstract short answers but physical language consists of a detailed continuity of descriptive sentences. Thus, the effective transformations require us to put a lot of effort.

Preparatory Research and Analysis Assignment – Kenan Gu – Marcela

     In the blog post of my group project, I defined the “interaction” as “a complicated and creative procedure of “input-process-output” between two actors”. After weeks of learning as well as the engagement of various activities in this class, The essence of my definition has been consistent. However, the approach I chose to define “interaction” at the beginning of this course emphasized on the objectively behavioral perspective. Interaction is defined as a procedure conducted between two actors. This definition is generally proper but lacks the diversity of dimensions. Thus, in this post, I would add a new subjective and motivational dimension to the definition that qualified interaction should appeal to the relevant actors’ motivations to engage in the “mutual communication” processes illustrated in my initial definition.

    This new dimension about the the “attractiveness” of the interaction was firstly inspired by my midterm project experience. At the beginning of the process of constructing and polishing my midterm project with my partner, we discussed which kind of interaction format we would like to use to make our interaction more appealing. Eventually, we decided to generate a game since it is a representative form of interaction in the contemporary world, which includes not only the essential “mutual communication” part but also the characteristic of entertaining by its definition. This consideration originates from our belief that a “qualified interactive project” must be attractive to their target audience simply with their interaction itself. Game is designed to initially be an entertainment for people to relax. According to some psychological findings, people are internally motivated to seek entertaining and relaxing stuffs to fulfill their mental desire. Thus, a good design of games will be motivational to the users. This has been proved in the in-class presentation session of the midterm projects. In that session, almost every project matches with my initial definition of interaction with the relatively complicated procedure of “input-process-output” and some of them are creative. However, when compared with those highly-praised interactive projects or the interpersonal interactions, our project along with others’ seemed incomplete in a way that they lacked the characteristics to motivate others to be involved in the interactions over and over again. In the presentation of called “Interactive art” by Zach Lieberman, he mentioned the “open mouth” phenomenon which indicates that a good interactive project should be surprising and appealing to the users.

    The first interactive project that I think aligns with my new version of definition of interaction is the popular “responding trash bins” in some Disney amusement parks around the globe. Those trash bins are not placed in a fixed location as they usually do, instead they are designed with the appearance of robot and moving around the park. During the process, they will continuously remind the tourists that they should leave their trash into the bins with sound. Moreover, the tourists can chat with the trash bins to obtain some knowledge with regard to trash classifications or simply just for fun. The different features of the trash can also lead to different corresponding reactions. The interaction not only contains complicated process of mutual communications between the trash bins and tourists, but also surprises the tourists with their innovative experience of trash bins usage. Many people are attractive by these trash bins and enjoy their interactions while at the same time gain the motivations to put their trashes into the bins. To sum up, this interactive project motivates the target audience to communicate with them and eventually achieve their goals of operating this interaction process.

    The second interactive project I examined is the scalable shoes shown in the introduction class of this course. The shoes can be controlled by the remote controllers. It can move up and down based on your demands and the current situations. This interactive project has the essential and relatively complicated procedure of “input-processing-output”. The commands you send with the controllers are the input, the identification and management of information and commands within the microcomputers of the shoes are the processing, and the relevant movements are the output. Based on my initial definition, this interactive project can be considered as a good one. However, it lacks the characteristics of stimulating the users motivations to use it. This interaction in my opinion is unnecessary and even on several occasions embarrassing in terms of the uniqueness of its usage. The surprise and innovation of this interactive project are obvious but this innovation is not able to be transformed into the motivational incentives of the users. In conclusion, this project should not be seen as a good one since it doesn’t align with my evolved definition of interaction.

Spaceship Memory Game – Kenan Gu – Marcela

    For the group project, our group designed a glove for people with speaking disability. This intellectual glove can identify the movements of the users and transform the sign language into verbal languages. For me, I think interaction is a complicated and creative procedure of “input-process-output” between various actors. The glove receives the information from its users as input, translates based on its own understanding and intellectuality as processing and speaks verbal languages as its output. The group project makes me realize that high-quality interaction should be able to stimulate all the engaging actors’ inspiration. Thus, my partner and I designed a memory game for our midterm project. This memory game is called “the spaceship”. Basically, the player should memorize the movements (a random sequence of left and right) of the spaceship and copy the movements by pressing the left and right buttons. Each player has three lives which are suggested by the three LEDs and there are overall ten rounds. Everytime when the player wins, loses and operates the movements, there will be corresponding sound as output and active feedback. There are two points of why I think my project has a significant value. Firstly, this memory game can stimulate the players’ awareness of the way they memory things. In a contemporary world where human’s memory loses its initial importance and faces the potential risk of being replaced by digital device, the game is designed to remind us that using our human intelligence is still a challenging and interesting thing. Secondly, we think game as a representative way of interaction can be qualified as a challenging and rewarding form of the midterm projects. Game itself is a high-quality interaction in my perspective. In a game, you have to concentrate on the your interaction with the equipments so that you can fully participate and enjoy the game. During this process, the information exchanges and active feedbacks among the various interactive entities are supposed to be complicated. My partner and I think the potential hardness we may face in creating a game may be a rewarding chance for us improve our capabilities of creating interactive projects and enhance our understandings of this course. The target audience of our project will be those people who want to challenge themselves and enjoy the experience of using their intelligence. We want to use a game to make this self-exploration and self-evaluation process more entertaining and user friendly.

    In our memory game, as I have mentioned in the last paragraph, we inserted several LEDs and buttons as the fundamental elements of interaction. The left and right buttons with red and yellow colors are designed as the major input of this game. The three LEDs in the middle of the joystick suggests how many lives the player has. The two LEDs located in the left and right side of the joystick is to remind the player what they should do right now, either memorization or operation. Besides these visual factors, we also take the sound into consideration. Different clips of music will be displayed in order to suggest different status. For instance, there will be up tunes for suggesting wins and down tunes for indicating failure. Also, everytime the operations are identified by the project as wrong, there will be warning sound. The movements of the spaceship, either conducted by the project or the players, are along with the sound to ensure the effectiveness of the interaction. So in response to the question, I would say that my group expects the users to interact with our project by easily getting familiar with the operation of this game and enjoy the feeling of challenging themselves. The materials we use for constructing our project, except the circuits, are mainly cupboards and papers. Since the coding and circuits in our project are really complicated, we want to design a box that is able to cover the messy circuits but at the same time keep the whole project sophisticated and portable. Thus, we select some light materials like cupboards and paper to construct our project. Besides, we also use the the laser cutter to cut the spaceship so that it looks more beautiful. Actually at the very beginning, we think of 3D printing the whole box because it will be more accurate and sophisticated. However, we found out later that this box should be easy to tear down and reconstruct since we are likely to revise our circuits over and over again. In order to achieve this goal,we gave up the idea of 3D printing.

    The most difficult part of our project is coding. Since the games we designed should have distinct responses towards the various input of the players, the coding includes a lot of loops and built-in models. My partner, as a potential computer science major, took in charge of this hard work. Although there were times when our expected instructions can not be achieved by the coding, we solved all of them and achieve all of functions eventually. Another major difficulty we encountered are about the buttons.The buttons we borrowed had some connection issues and were too sensitive. After careful examination, we realized that the linkage part between the wires and the buttons were the origin of the unstable connections. Due to the narrow space we reserved for the circuits, there would be unconscious touch between the linkage parts and the boxes, which lead to the chaos of inputting. We addressed this issue by changing the structure of the boxes to reduce the possibility of the unnecessary touches. In our user text section, the main issue we encountered was that most of the players were confused about what they should do to participate in this game. Even though they were told that this was a memory game, they usually didn’t understand they should memorize the movements of the spaceship. Later on from their comments, my partner and I realized that it was the labels of LED that kept confusing them. Initially, the “memorize” and “ready” labels in the left and right side of the joystick were actually “Alien” and “You”. These initial two labels were confusing cause it didn’t state out what the players should do when this two LEDs lighted in turn. The adaption of revising the labels was proved to be effective. Our goal of creating this game is to bring joy and relax the players, while at the same time stimulate their interest in using their own intelligence. Thus, our project is designed based on the demand of the users. We particularly focused on the interactive design. As I have mentioned, we insert not only visual signals(like LEDs), but also sound signals, to help the player identify their current situation in the game.

     Our goal of the midterm project is that we want to create a high-quality interactive project that can relax and entertain the users, make them involved in, and also stimulate their motivation and interest in using their own intelligence. I think our project successfully relaxes and pleases the players. In the user testing session, a lot of people found the game extremely challenging when the movements they should memorize increased, and that was exactly what we expect. The feeling of challenging will help the players reflect on the way they memorize things and came up with better strategies in order to win this game. However, we are kind of unsatisfied with the interactive designs of our project. The major form of input in out project is the buttons. The users are gonna press the buttons to copy the movements. This form of interaction is a typical one but lack of creativity and innovation, thus seems too simple. After the final presentation, my partner and I talked about the possible improving plans, and we both agreed that we should create a more creative way of interaction. On a personal note, I think we can use some sensors to revise our interactive design. For instance, we can use the light or distance sensor to identify the players’ relative direction compared to the equipment, which means that they have to copy the movements with their whole bodies rather than only hands. We are really happy that we eventually made a mature project with comprehensive functions. I gradually understand that designing a interactive project is a really difficult thing. You have to revise over and over again and you may encounter unexpected failure and issues along the way. Thus, you have to be really familiar with your projects and any specific components of it so that you can address various issues.

    The importance of our project is that you can reflect on your own behaviors and realize the interest of using human intelligence when you are interacting. During the whole project experiences, I gradually learn two things. The first is that a successful project needs comprehensive considerations. To achieve the goal of your core interactive design, you need to consider what components you have to use, what kind of coding you need to write and what the eventual results would be. This is not a single-track task. You should always be prepared to think of a backup plan if your first choice lacks empirical supports. And even a simple interactive design that seems to be natural and basic with human bodies can be extremely difficult to achieve in the digital world. Secondly, the most important lesson the project has taught me is that we should always put human into the center of our innovative projects. In another words, no matter how advanced the technology is, they should always respect humanitarianism. Only when you have this kind of experience of trying to make those basic human interactions available with digital devices that you can understand what a masterpiece our human body is. We as a human can operate a much more complicated interactions than the computer and any advanced technology so far. Thus, I realized that the innovation of technology and interactive design should always consider our human body as a treasurous sources to gain inspirations.

Recitation 006: Documentation 5 for Interaction lab by Kenan(Arthur) Gu

  1. The motif I chose for this section is the “Several Circle” created by Vasily Kandinsky during World War I. This painting is consists of various circles with diverse colors and sizes. The circles are randomly distributed in the painting and their overlaps and arrangements possess tremendous senses of beauty and mysteriousness, which makes me to think of the endless universe and all the asters within it. Also, I think the painting will be good for me to practice drawing with Processing because the fundamental components of it are simple figures like ellipses and lines. 
  2. So with Processing, I want to draw a simplified version of the motif. I calculated the location of the various circles and drew them with codings. My final work looks similar to the motif but much more simplified.
  3. I don’t think Processing is an effective tool to achieve my goal. Cause the functions of Processing in drawing are still too narrow for expressing the real paintings. For instance, it is hard to make the colors of two overlapping circles integrate with each other and produce a new mixing color in terms of the natural rules with coding.  The way those colors are being identified lacks of diversity too with Processing, it can’t show visual textures of the real motif and a painting created by pigments. Another issue is that the codings will be more troublesome in drawing compared to other softwares like illustrator. 
  4. My coding is:size(800,800);

    background(0,0);

    stroke(255);

    strokeWeight(10);

    fill(15,4,80);

    ellipse(300,250,300,300);

    noStroke();

    fill(0,0,0);

    ellipse(270,220,200,200);

    noStroke();

    fill(146,98,170);

    ellipse(355,145,100,100);

    noStroke();

    fill(42,131,98);

    ellipse(360,300,60,60);

    noStroke();

    fill(222,163,36);

    ellipse(395,355,105,105);

    noStroke();

    fill(222,163,70);

    ellipse(325,355,65,65);

    noStroke();

    fill(4,75,60);

    ellipse(480,220,115,115);

    noStroke();

    fill(0,0,0);

    ellipse(480,220,25,25);

    noStroke();

    fill(188,142,168);

    ellipse(660,600,140,140);

    stroke(183,166,111);

    strokeWeight(10);

    fill(28,160,185);

    ellipse(630,590,50,50);

    noStroke();

    fill(188,142,168);

    ellipse(100,400,70,70);

    noStroke();

    fill(0,0,0);

    ellipse(111,385,25,25);

    noStroke();

    fill(175,7,27);

    ellipse(200,470,70,70);

    noStroke();

    fill(232,210,9);

    ellipse(170,460,70,70);

    noStroke();

    fill(95,68,12);

    ellipse(230,480,70,70);

  5.  

    My drawing in Processing:
     

Recitation 006: Documentation 4 for Interaction lab by Kenan(Arthur) Gu

Step 1

  1. components: 1 * 42STH33-0404AC stepper motor
                                 1 * SN754410NE ic chip
                                 1 * power jack
                                 1 * 12 VDC power supply
                                 1 * Arduino kit and its contents
  2. diagram:H-bridge circuit diagram

3. Pictures of Completed Circuit:

Step 2

  1. components: 1 * 42STH33-0404AC stepper motor
                                 1 * SN754410NE ic chip
                                 1 * power jack
                                 1 * 12 VDC power supply
                                 1 * Arduino kit and its contents
  2. diagram: H-bridge circuit diagram

3. Pictures of completed circuit:

Step 3

  1. components: 1 * 42STH33-0404AC stepper motor
                                 1 * SN754410NE ic chip
                                 1 * power jack
                                 1 * 12 VDC power supply
                                 1 * Arduino kit and its contents

                             2 * Laser-cut short arms
                             2 * Laser-cut long arms
                             1* Laser-cut motor holder
                            2 * 3D printed motor coupling
                            5 * Paper Fasteners
                             1 * Pen that fits the laser-cut mechanisms
                             Paper

2. Pictures and videos of completed circuit:

Question:

  1. I think I would be interested in building a machine that can deliver things and people in a short time. I think the use of actuators are the foundation of interactive design. It can visualize the output of certain devices and also identifying the people they are interacting with. The process of creating an interactive devices with logical coding and different components is really impressive. This process inspired me to understand the organism of the movements of our body and deep essence of “interaction”, which can be considered as one of the most important parts of human civilization.
  2. One project that impresses me is “The Table” created by Raffaello D’Andrea, Max Dean and Matt Donavan in 2001. Since the table will chase the target people once it identified the people as its viewer, that should be a motor and a distance sensor. I think this project is good because the interaction is complicated and creative. The table actually recognized people and try to appeal to people’s incentive to interact with it. I think the major distinction between this project and the drawing machine I did in the recitation session is the degree of human intervention. This table interacted with human by its own while the drawing machine still needs some information input by human beings.