A- What are the possibilities for interaction that you can envision?
For me, and probably everyone else, interaction with humans and technology on a daily basis is normal, such as typing on a keyboard. However, I think that in the near future, there will be technology or AI that can focus on more abstract things you can’t really sense (like emotions, meaning behind words) and will focus on interacting with that. This could be having a conversation with you or changing to react to your emotions.
B- What are some of the benefits of controlling physical elements with computational media and of controlling screen-based computational media through physical interaction?
Controlling physical elements with computational media allows for greater accuracy and makes you seem more professional (if your job allows). On the other hand, controlling screens based on physical interaction is fun for people to experience something they can’t physically, it also relates our world to the digital one.
C- Can you think of real world applications that take advantage of communication between the physical and screen-based computational media?
The Nintendo Switch has a remote which when you press buttons or turn it physically, your character on the screen reacts in a certain way. The same reasoning can be used for TV controls.
arduino code video 2
// Sample code for sending multiple values from Arduino to Processing
void setup() {
Serial.begin(9600);
}
void loop() {
int sensor1 = analogRead(A5);
int sensor2 = analogRead(A4);
// keep this format
Serial.print(sensor1);
Serial.print(“,”); // put comma between sensor values
Serial.print(sensor2);
Serial.println(); // add linefeed after sending the last sensor value
// too fast communication might cause some latency in Processing
// this delay resolves the issue.
delay(100);
}
video 2 processing code
// allows for serial comms from/to Processing
import processing.serial.*;
Serial myPort; // The serial port
// a variable to store the incoming serial data to
int inByte1 = 0;
int inByte2 = 0;
// keep track of old line positions
float lastX = 0;
float lastY = 0;
void setup() {
// 3d in case we want to add a third pot…
size(500,500);
// List all the available serial ports
printArray(Serial.list());
// FIGURE OUT WHAT PORT YOU NEED TO USE,
// REPLACE THE VALUE IN THE [BRACKETS]
// Open the port you are using at the rate you want:
myPort = new Serial(this, Serial.list()[3], 9600);
// start w black bg
background(0);
stroke(255); // white stroke
strokeWeight(2); // a little thicker
}
void draw() {
// are there at least 2 bytes avaiable? (2 pots)
while (myPort.available () > 1) {
// read in the last byte sent from arduino (pot 2)
inByte1 = myPort.read();
// and the next byte (first one was discarded)
inByte2 = myPort.read();
}
// map these values so they are scaled to the sketch
float x = map(inByte1, 0, 255, 0, width);
float y = map(inByte2, 0, 255, 0, height);
// draw a line
line(x, y, lastX, lastY);
// reset the lastX and Y
lastX = x;
lastY = y;
}
void keyPressed() {
background(0);
}
The first two took me a pretty long time so I couldn’t finish exercise 2
Leave a Reply
You must be logged in to post a comment.