Project: Poetic Robot
Name: Sissy
Instructor: Margaret


CONTEXT AND SIGNIFICANCE
In my previous research project, I defined interaction as a mutual and reciprocal communication that involves two or more than two sides of participants. When one side made some actions, the other side can detect that action and give back a response, which lets the first knows that he is being understood and given feedback. So that when thinking about the idea of our midterm project, I think the two sides separately, considered the actions and response. The project that I analyzed in my research project: The lightwaves give me the inspiration of visualizing the user’s action so that the users can see their action being understood.
We import our idea of the critic of technology development nowadays, which is the significance of our project. Advanced technologies have significant values and make people’s life much easier, like the internet and smartphones. They interact with people in daily life and change people’s lifestyles greatly. We even take technology for granted every day. However, On the other hand, the evolving pace of technology gets faster and faster, the rapid evolution may let users find challenges to keep pace with it. Take elderly people as an example, most of them could only use technology by passively consuming it. Scientific progress may not really bring convenience to their life but rather confusions and high demands. In this way, it is not technology that gives service to humans but humans trying to understand technology.
CONCEPTION AND DESIGN:
To express our critic of technology development more vividly, we humanized overall scientific technologies into a robot that users can interact with. And a moisture sensor is used as an input and the robot will give responses to particular signals. However, users wouldn’t know what their actions mean to the robot. They can only guess the characteristics of the robot by observing the robot’s reactions.
We use cardboard to make the body and the head of the robot, and since the arms and legs are difficult to make with cardboard, we use 3D printing to make it. We were thinking about using 3D printing to make the robot’s head. But in consideration of the holding capacity of the servo, we used light cardboard and paper to make its head, which turned out to be cute.
To add more humanity to the robot, poems are the key to approaching this mysterious robot. Different poems represent different humidity. Before the user puts the sensor into the cans, they will first read the words on the cans and then reflect on what the poem is mainly about.
I also designed to put the sensor in the middle of the heart of the robot. This lets the users be aware of the sensor and gives them a sense of how it is used and what it is used for.
In contrast to the common sense of a metal sliver robot, the body of this robot was painted with the blue ocean, which is soft and powerful. It represents the resilience and power of technology and the robot’s preference–water.
FABRICATION AND PRODUCTION:
I think the most significant step that we took is decorating the cans with sponges with papers with poems on them. Because before that step, we had been struggling for a long time, thinking about what might be the point that triggers the users to interact with our robot. Additionally, since we only have two different moisture degrees, the result of a can is binary, which might be boring in terms of the interaction. To solve this problem, we decided to work on the storytelling of our project, to make it more engaging and interesting to the user. So that we wrote poems on the cans and add the scenario of guessing what the robot likes by reading the poems on the bottle as a hint. I think this step really helps us to make our project more engaging and gives the users a reason to use it. In this process, I mainly did the brainstorming part of deciding what is the theme of our project, what it is about, and how to make our project more engaging.
Our failure might be not choosing the inappropriate sensor. The reason why we decided to choose it at the beginning was that we think it is more accurate than other sensors when we use it during the recitation. However, reflecting on our project, I think the use of moisture sensor is inefficient, and the reasons are as follows. Firstly, the moister sensor reads analog values, yet the reaction of the robot is binary. So that the analog sensor is not necessary and can be replaced by a digital sensor. Secondly, though the moisture sensor reads the accurate value, it depends on how well the sensor contacted the sponge. When the sensor is not contacted well or it is in the process of being contacted well, then the sensor won’t give an acute value. Thirdly, the operability of the moisture sensor is weak. We need to prepare sponges and users need to put the sensor into the sponge to get the value. We also don’t have the specific answer of why we need to use the moisture sensor exactly. So that I think if I do it again, maybe I will choose a digital sensor instead.
During our group work process, we worked together on the brainstorming part. We first think of what input sensor can we use and how to make our output more appealing and give the user an interesting response. We also discussed what are the ideas that we want to express through our project and what is the theme of it. After having a general idea of what we are going to make, we work together to make the robot and did the 3D printing together. Additionally, to split up our work, I was mainly responsible for the circuit and coding while my partner worked on the scenarios and the poems. I think my efforts helps the robot works well and do the responses interactively, while my partner did well on improving the humanly and engagement of our project.
During the user testing session, we found many problems with our design and received some suggestions on how to improve it. The phenomenon that we detected of the user’s interaction with our robot, the problem behind it, and our corresponding improvements are listed as follows:
1). Phenomenon: Some users didn’t see the moisture sensor so that they don’t know what they can do to interact with the robot.
The Problem Behind: The moisture sensor and the robot seem to be separated, and the sensor seems not to be a part of the robot.
Improvement: We put a heart on the robot and let the moisture sensor stretch out from his heart. This design makes the moisture sensor and its function to test the cans more obvious to the users.
2). Phenomenon: Users are not willing to read the poems on the cans. The poems seem to be too long, and the users don’t want to read those English poems.
The Problem Behind: The poems are difficult to understand and too long for the passed-by users to read.
Improvement: We have thought about changing the poems into some pictures to make the users better grasp what we mean. However, we think that poems are better because users will have a diverse understanding of them. So that we shortened the poems into one sentence.
3). Phenomenon: Users are confused about the robot’s movement of happiness: they think that waving his hand may also mean feeling scared.
The Problem Behind: The expression of “happy” is not obvious.
Improvement: We changed the hand waving to the same side, while it was from different sides before, which may look strange. We also planned to add a heart-shaped LED to the robot, but we failed to do that because of the wrong weldIng of the LEDs
4). Phenomenon: Users don’t understand why the robot loves water.
The Problem Behind: The connection between robot, moisture, poems, and water is not clear.
Improvement: We painted the robot’s body blue, and it has ocean and rain on his body, which also indicated water.

CONCLUSIONS:
Our goal of the project is to create an interaction where users need to try to understand the robot and get to know it. We want to use the interaction between the user and the robot to criticize the nowadays relationship between rapidly developed technology and human.
My project results align with my definition of interaction in the way of creating communication between two sides. When the user gives the action of putting the sensor into the can, the robot can detect this reaction and give a corresponding response. The users can see its responses and understand them. This interaction creates communication between the user and the robot.
To improve my project in the future, I would like to add more responses of the robot to express the robot’s like or dislike more obvious to the users. For example, by adding eyes of the robot using the led screen, adding a led screen on the robot’s body to show its mood, and also adding a speaker to speak for the robot. The design sketch is as follows.

From this process, I discovered the power of cooperation and collective effort. We discussed a lot during our ideation process, and I found that many new ideas are generated from our collision of thought. I also learned to search and learn things online, and also seek help if I needed it.
Additionally, I feel like the project always needs to work iteratively, including brainstorming, ideation, coding, designing, and making process. For example, we changed a lot of our ideas during our making process, because of the operability of our ideas. We also worked iteratively on our coding, because it usually has some mistakes and we need to work on it again and again, check and revise it.
To wrap it up, our project mainly uses interaction to address the relationship between humans and technologies. We conclude it in a word of ‘reverse teaching’ because technologies are not only serving us but also asking people to understand it through trying and testing. This project is asking people to reflect on this issue and provide fun and entertainment at the same time.
Video:
Poster:


Poems:
(original version)
[like]
Swim:
I remember once while swimming with friend
Floating body, pressing water, moving forward
How nice to enjoy spattering, splashing sound!
Gesturing body, flapping wing, clapping hand.
Drink:
Wine comes in at the mouth
And love comes in at the eye;
That’s all we shall know for truth
Rain:
With thick strokes of ink the sky fills with rain.
Pretending to run for cover but secretly praying for more rain.
sweat:
I’m relatively new to jogging and to serious training.
Over the past several months I’ve been making steady progress,
and recently I’ve noticed that I’ve started sweating more.
That means I’m getting more fit.
[dislike]
Fire:
Fire burns the wood shavings,
reducing each to a pile of dust.
The silence when the world around you crumbles down,
kills you as much.
desert:
The sun beats down on the desert sand,
I plod tiredly on.
The heat of hell is on this land,
Its smoke shimmers sleepily.
Potassium:
Explosive and corrosive
It is element 19
(Revision)

Code:
#include <Servo.h> Servo myservo1; Servo myservo2; Servo myservo3;// create servo object to control a servo // twelve servo objects can be created on most boardsint pos = 0; // variable to store the servo position int sensorPin = A0; int count = 0; int counter1 = 0; int sensorValue = 0; int pos = 0; int a = 1; int pos1 = 180; int pos2 = 0; int pos3 = 0; int speed1 = 3; int speed2 = 3; int speed3 = 20; bool inWater = false; bool wave = true; void setup() { Serial.begin(9600); // put your setup code here, to run once: myservo1.attach(7); //gray arm myservo2.attach(8); //black arm myservo3.attach(9); //head myservo1.write(180); myservo2.write(0); } void loop() { sensorValue = analogRead(sensorPin); // Serial.print("Moisture = " ); // Serial.println(sensorValue); v_of(); // delay(5000); // Serial.print("Moisture = " ); // Serial.println(sensorValue); if (inWater) { testFunc(); } } void v_of() { if (sensorValue > 20 && inWater == false) { delay(100); inWater = true; myservo1.write(180); myservo2.write(0); myservo3.write(70); Serial.println(sensorValue); //return sensorValue; } else if (sensorValue <= 5 && inWater) { delay(100); inWater = false; myservo1.write(180); myservo2.write(0); myservo3.write(70); wave = false; Serial.println(sensorValue); //return sensorValue; } } void testFunc() { if (sensorValue > 200) { myservo3.write(70); Serial.println("大于200"); for (count = 0; count < 180; count += 1) { if (pos1 < 0 ) { a *= -1; counter1 += 1; } else if (pos1 > 180) { a *= -1; } if (pos1 == 50) { if (counter1 % 3 != 0) { a *= -1; } } pos1 = pos1 + a; pos2 = pos2 - a; Serial.print(pos1); Serial.print(" "); Serial.print(a); Serial.print(" "); Serial.println(wave); myservo1.write(pos1); myservo2.write(pos2); delay(1); } } else if (sensorValue > 20 && sensorValue < 200) { Serial.println("小于200"); delay(5); pos3 += speed3; myservo3.write(pos3); Serial.println(pos3); if (pos3 < 0 || pos3 >= 140) { speed3 *= -1; } } }
Leave a Reply