Recitation 5: Leander’s Report

In today’s class, we made a workout circuit based on the tilt switch. We applied the instruction to building and tested the circuits to let them fit our demand situation. We try to use the special function of the tilt switch to count our movement. The process was separated into three different parts

Step 1: Detecting transition

we use the workout circuits to count the number of our movements. At the time we rolled the tilt switch, the program will detect it and plus one based on 1 for each time. IMG_0101

const int SENSOR_PIN = 6;  
  
int tiltVal;

void setup() {
  pinMode(SENSOR_PIN, INPUT);    // Set sensor pin as an INPUT pin
  Serial.begin(9600);
}

void loop() {
  // read the state of the sensor
  tiltVal = digitalRead(SENSOR_PIN);
  Serial.println(tiltVal);
  delay(10);
}

Step 2: Serial Plotter

We used the graph instead of the number in the serial monitor so that we can view the changes in the way we move the tilt sensor more obviously. 

const int SENSOR_PIN = 6;
int tiltVal;
int prevTiltVal;
void setup() {
 pinMode(SENSOR_PIN, INPUT);    // Set sensor pin as an INPUT pin
 Serial.begin(9600);
}

void loop() {
 // read the state of the sensor
 tiltVal = digitalRead(SENSOR_PIN);

 // if the tilt sensor value changed, print the new value
 if (tiltVal != prevTiltVal) {
   Serial.println(tiltVal);
 }
 prevTiltVal = tiltVal;

 // for Serial Plotter use
 //Serial.println(tiltVal);

 delay(10);
} 

IMG_0102

Step 3/4: Workout

 

const int buttonPin = 6; 
int buttonState;             // the current reading from the input pin
int lastButtonState;
int haha=0;
// the previous reading from the input pin

// the following variables are unsigned longs because the time, measured in
// milliseconds, will quickly become a bigger number than can be stored in an int.
unsigned long lastDebounceTime = 0;  // the last time the output pin was toggled
unsigned long debounceDelay = 0;    // the debounce time; increase if the output flickers

void setup() {
  pinMode(buttonPin, INPUT);
  Serial.begin(9600);
  Serial.println("Start your workout");
}

void loop() {


   debounceDelay=millis()-lastDebounceTime;
   
  // read the state of the switch into a local variable:
  int reading = digitalRead(buttonPin);
  
//  // If the switch changed, due to noise or pressing:
//  if (reading != lastButtonState) {
//    // reset the debouncing timer
//    lastDebounceTime = millis();
//  }
if (debounceDelay<=20000){
  if ( reading != buttonState) {
    // whatever the reading is at, it's been there for longer than the debounce
    // delay, so take it as the actual current state:
      buttonState = reading;
      haha++;
     Serial.print("You've down curls for ");
      Serial.print(haha);
      Serial.println(" times.");
  }
}
  else {
    lastDebounceTime=millis();
    Serial.println("Stop, your time is up!");
  }
  // save the reading. Next time through the loop, it'll be the lastButtonState:
  lastButtonState = reading;

 //if you want to use Serial Plotter, add these two lines:
  //Serial.println(buttonState);
  //delay(1);
}
 
Exercise 1:Biceps Curls

  IMG_0257

Exercise 2: Jumping  Jacks IMG_0258

Below is my illustration sketch:

Recitation 4- Documentation by Leander

Question 1: What kind of machines would you be interested in building? Add a reflection about the use of actuators, the digital manipulation of art, and the creative process to your blog post.

I wanted to create a machine that could implement virtual reality like “Ready player one”. Through the real-world supporting facilities, the player can get the same touch feeling during the game as the same as realities. With the continuous development of science and technology in the future, the replacement rate of machines for workers will gradually increase. People will spend more time having fun than going to the office. In this case, virtual reality will help people get the best entertainment experience at the lowest cost.

 

 

 

Question 2: Choose an art installation mentioned in the reading ART + Science NOW, Stephen Wilson (Kinetics chapter). Post your thoughts about it and make a comparison with the work you did during this recitation. How do you think that the artist selected those specific actuators for his project?

I’m impressed by the Matt Heckert, Centripetal Sound Machines, 2004. Which is a device contained by the striker and motor that can lift the metal track goes up and down to make the sounds. The author said that he want to build the project to make the audience feel inside the system. The difference is that my writer can’t write automatically. We need to turn the resistor to give the program a signal to rotate the arm. His product gives the viewer a more immersive experience, whereas ours simply changes the position of the nib by turning the photoresistor to create a writing effect. At the same time, because of manual control, our finished products are not very beautiful, or even can not accurately draw the works we want to express. Firstly, we apply the diagram to build the circuits which contained the motor used to move the mechanical arm. Each circuit is just half part of the final project. I and Rena formed as partners
 to combine our circuits.

BDD528A2-B3A2-4EF0-810D-3310EDFDF02F

Step 4: Reflect

Idea:

Our project comes from the story “the winter market”. The heroine in the story asks “me” to record her dream which inspired us to think about designing a project about dream recording. After we have a brief talk with our teammates, soon had a final idea that was made up of parts of each person’s ideas. The project basically contains the main brain and four helmets which are connected by the channels. We want to use the main brain to store and transmit emotions. We hope that through this form, people with different ideas can understand each other. Reduce conflict and misunderstanding. It’s like today’s world where countries are divided by race, language, and religion. But when people have more cultural exchanges, more consensus, and less misunderstanding, there will be fewer wars in the world.

Process:

Miranda and I made several prototypes to help people choose which products are more in line with our ideas more straight. After we decide on our final product, we start to work on it. Because I like manual activities very much, I have been helping my teammates to cut cardboard and paste cardboard with glue guns. When making the final brains, we wanted to make the brains look more creative, so we just randomly pasted colored stickers on the board to make the brains look more sci-fi. I really like the vibe of our team when we work together, people were willing to take advice from others before we get a consensus. That’s how our project came out, with an insane brainstorm.

For the improvement, I think that after viewing the project from other groups, I thought that we should add more plots in our final presentation. What we did are just present the basic functions of the devices instead of a complete story background,

 

 

I really love the sponge bob group! First of all, Using SpongeBob Squarepants as a backdrop is a very creative idea. And their project that using gloves to detect whether the workers are felt a lot of pressure and anxiety or not due to the overload work is also a really meaningful project. Nowadays, employers are used to exploiting their employees and seem that is their duty to occupy their leisure time of overtime working. Their project really revealed this social phenomenon and want to use this way to inspire people to enjoy more life for themselves.

Recitation-3

The Circuits:

 

circuits code:

#include “pitches.h”

// notes in the melody:
int melody[] = {
NOTE_C4, NOTE_G3, NOTE_G3, NOTE_A3, NOTE_G3, 0, NOTE_B3, NOTE_C4
};

// note durations: 4 = quarter note, 8 = eighth note, etc.:
int noteDurations[] = {
4, 8, 8, 4, 4, 4, 4, 4
};

int sensorPin = A1; // select the input pin for the potentiometer
int buzzerPin = 8; // select the pin for the LED
int sensorValue = 0; // variable to store the value coming from the sensor

void setup() {
Serial.begin (9600);
pinMode(sensorPin, INPUT);
pinMode(buzzerPin, OUTPUT);
}

void loop() {
// read the value from the sensor:
uint16_t value = analogRead (sensorPin);
double distance = get_IR (value); //Convert the analog voltage to the distance
//Serial.println (value); //Print the data to the arduino serial monitor
Serial.print (distance);
Serial.println (” cm”);
Serial.println ();

if (distance < 10) {
tone(8, NOTE_A3);
}
if (distance >= 10 && distance < 30) {
tone(8, NOTE_G3);
}
if (distance >= 30 && distance < 50) {
tone(8, NOTE_G3);
}
if (distance >= 50 && distance< 70 ) {
tone(8, NOTE_C4);
}

if (distance >= 70) {
noTone(8);
}

Serial.println (distance);
delay(500);

}
//return distance (cm)
double get_IR (uint16_t value) {
if (value < 16) value = 16;
return 2076.0 / (value – 11.0);
}

Question 1: What did you intend to assemble in the recitation exercise? If your sensor/actuator combination were to be used for pragmatic purposes, who would use it, why would they use it, and how could it be used?

We are going to make an Infrared Distance Sensor with a different melody. The buzzer will play the songs with different tones. We use the data of the sensor as an input and the buzzer as an output. Then the range of code on Arduino will receive the data from the sensor which will stimulate the different tones by the distance of hand. Different tones depend on the distance your hand with the sensor. The notes in these different tones add up to something like a complete piece of music. We can even create beautiful music by varying the distance between the hand and the sensor. I think it’s a really interesting design. When my partner and I were discussing how to add some fancy functions to the sensor, she suddenly suggested adding more musical elements to the code. Although it wasn’t easy, we asked Andy for help. I think that this product can be used as an electronic instrument which can use in the future in the band. In this play pattern, the performer can combine dance with play behavior. 

Question 2: Code is often compared to following a recipe or tutorial.  Why do you think that is?

I think recipes and coding, help us do our projects better. Coding is like recipes, containing opponents, procedures, and goals to achieve. Firstly, the recipe contains ingredients and processes of cooking. You can follow every step from the recipe to cooking food. Same as the code that code will represent a standard for input stuff which will stimulate it to do the next step.  Same that the behavior of input stuff is according to the code.

 

Question 3: In The Language of New Media, Manovich describes the influence of computers on new media. In what ways do you believe the computer influences our human behaviors?

I think in the era before computers, people often spend a lot of time on manual recording, calculation. This would take a lot of time and be inefficient. Computers helped people solve these problems soon after they appeared. Computers can improve human productivity more efficiently. For example, the analysis and processing of a lot of big data will make it easier for human beings to summarize rules and help them better complete some complex tasks. At the same time, human beings can put more energy into the innovation research of products rather than memorizing data and information. Moreover, computers can also help humans better simulate the virtual environment. Some product designs and experimental ideas of humans can be simulated on the computer first, which can reduce the number of mistakes and help to achieve better success.