Midterm Project : Report
Project Title: Halloween Creepy Cat
Student Name: Rebecca Xiong
Instructor’s Name: Rodolfo Cossovich
Context and significance: In the previous research, we made an instant camera that interacted with people by printing photos that anticipated the future status of objects, and I learnt that interaction required constant input and output from the progress of taking and printing photos. My project is triggered by the brightness of the space, and works when the environment is dark. My project is intended to be a halloween decoration, and it can be especially enjoyable because it lights up when the light in the room is turned off and can scare people in the room.
Concept and design: My design is to let the device interact with the user in darn environment, so I use light sensor as the switch of the device. I want the device look creepy, so I decorate it with paint and use some LEDs. The cat can remove its head by the servo sticked to its arm. I also use MP3 player to play some halloweenb music to create a horrifying atmosphere. My criteria is to choose the material which is more accessible and can be operated easily. I chose DC motor to be the acuator at first, but it turned out that the working voltage was not enough, and servo was better at turning to a specific position.
Fabrication and production: I failed to find a partner to work on the project with me, so this project is mainly completed by me with the help of my instructor and the studio fellows. Before the user testing, I kind of underestimated the demand of the project, so my articraft was very simple and bad-designed. I took notes and learned from the advises everyone gave me during the user testing session. I refined my project by changing the buzzer into an MP3 player, adding more decoration and paint to the prototype and changed the code to let the tasks be done simultaneously. I’m very sorry that I mistakened the date of in-class presentation, so most of the re-production progress was done after that.
The first and second version with the sketch(very simple, and there are still many problems)
The refined version
The sketch of the decoration
The code for the MP3 player and servo:
#include <Arduino.h> #include "DYPlayerArduino.h" #include <SoftwareSerial.h> #include <Servo.h> int pos = 0; Servo myservo; SoftwareSerial SoftSerial(10, 11); //RX and TX from Arduino DY::Player player(&SoftSerial); //should connect them to io0 and io1 void setup() { Serial.begin(9600); Serial.println("Starting the Player..."); player.begin(); player.setPlayingDevice(DY::Device::Sd); //SD card, USB storage volume is player.setVolume(20); // 30 is 100% of Volume; with 15 you get 50% Volume // player.setCycleMode(DY::PlayMode::Repeat); // Play all and repeat. player.play(); myservo.attach(9, 500, 2500); } void loop() { int sensorValue = analogRead(A0); // Print the number of the sound that is playing. if(sensorValue > 1022){ for (pos = 0; pos <= 180; pos += 1) { myservo.write(pos); delay(15); } for (pos = 180; pos >= 0; pos -= 1) { myservo.write(pos); delay(15); } Serial.print("Playing Device: "); Serial.println((int16_t)player.checkPlayState()); //if you receive -1, it's fail // Print the number of the sound that is playing. Serial.print("Playing sound: "); Serial.println((int16_t)player.getPlayingSound()); delay(500); } } //mp3 player's code from:https://github.com/ima-nyush/interaction-lab/tree/main/DYplayer
The code for the LEDs:
void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); } // the loop function runs over and over again forever void loop() { int sensorValue = analogRead(A0); if(sensorValue >= 1022){ digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } } //sorce from:https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
Conclusions: My goal is to make a device that is activated by ambient light intensity. My audience interacted with my project by turning on and off the switch of the light in the room.I think my project results aligns with my goal well, but my goal itself is not interactive enough. It should include more interactive activities, like using infrared sensor to detect the distance between the device and the user and modify the volume and activities accordingly. If I had more time, I’d like to use more transmission mechanism to create more interactive activities. I learn from my setbacks that it is very important to learn by ourselves, as what provided in class is limited, and the method of interaction need to be well considered before the project ever begins.