RADP elective
-
Upload
zhou-shuying -
Category
Documents
-
view
239 -
download
2
description
Transcript of RADP elective
![Page 1: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/1.jpg)
ResponsiveAnalogueAndDigital Prototyping
Tutor:Flora SalimZhou Shuying
Elective Pamphlets
![Page 2: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/2.jpg)
RAD-P: Responsive Analogue and Digital Prototyping
Information is ubiquitous. There is an unprecedented volume of information in
our physical and socially networked world that can be used to inform our design
problems and the way we design. What happens if we get our digital models to
respond to our physical environment? What are the possibilities for design if we
are able to get our analogue models to converse with our digital models? How do
we design an architectural model that responds to, interacts with, and adapts to
the ambient environment, physical stimuli, or online social networks?
These questions are the subject of experiments in projects which explore the
potential of new types of physical and sensor-driven input to create responsive
analogue and digital design models.
![Page 3: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/3.jpg)
1
Schedule
System
Send data from serial
Write data to servo
![Page 4: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/4.jpg)
2
There is an unprecedented volume of information in our physical and socially networked world that can be used to inform our way of design.
![Page 5: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/5.jpg)
3
Structure
![Page 6: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/6.jpg)
4
Inspiration
Aplication Research
Abstract shapes are created in the areas where the leaves overlap and light and shadow blend to create changes in translucency and shape.
Sulpture|Ceiling|Window|Wall|Floor|Shelter
![Page 7: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/7.jpg)
5
roate vertically along axis
Four semitransparent plates form a unit. Inside a unit each plate can rotate around the axis clockwise/anti-clockwise within the angle 0~90 degree.
![Page 8: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/8.jpg)
6
roate horizontally around center
Subtractive primaries are those obtained by the subtraction of light: cyan, magenta and yellow. They combine to form black.We can change the hue, saturation and brightness to get more possibilities.
![Page 9: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/9.jpg)
7
Digital Model
The range 0-1023 of the slinder shows the light value range in the environment. The slinder which controls the rotation of digital model can be replaced by changing data read (0-1023)from the analogue pin.
![Page 10: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/10.jpg)
8
#include <Servo.h> //attach Servo library *disables PWM on pins 9 and 10#define BAUDRATE 9600 //Set the Baud Rate to an appropriate speed, 9600 is recommended#define BUFFSIZE 128 // buffer one command at a time, 12 bytes is longer than the max lengthchar buffer[BUFFSIZE]; // this is the double bufferuint8_t bufferidx = 0; // a type of unsigned integer of length 8,16, or 32 bitsuint16_t DPin13, DPin12, PWM11, PWM10, PWM9, DPin8, PWM6, PWM5, PWM3; //control Servos and Digital Outs int readCounter = 0;/*============================================================================== * GLOBAL VARIABLES *============================================================================*/char *parseptr;char buffidx;int APin0 = 0; //declare all Analog In pinsint APin1 = 0;int APin2 = 0;int APin3 = 0;int APin4 = 0;int APin5 = 0;int DPin2 = 0; //declare all Digital In pinsint DPin4 = 0;int DPin7 = 0;Servo Servo1; // declare all Servo (PWM)Servo Servo2;Servo Servo3;int writecounter = 0; //declare the write counter
int lowVal=500;int highVal=700;int currVal = 0;int mapX;int tempt;
/*============================================================================== * SETUP() This code runs once *============================================================================*/void setup(){ pinMode(2, INPUT); // sets Digital In pin mode to INPUT (for on/off buttons) pinMode(4, INPUT); // sets Digital In pin mode to INPUT (for on/off buttons) pinMode(7, INPUT); // sets Digital In pin mode to INPUT (for on/off buttons) pinMode(9, OUTPUT); pinMode(8, OUTPUT); // sets the pin for digital output (for on/off LEDS) pinMode(12, OUTPUT); // sets the pin digital output (for on/off LEDS) pinMode(13, OUTPUT); // sets the pin digital output (for on/off LEDS) Serial.begin(BAUDRATE); // Start serial communication //blink LED when start calibrating digitalWrite(9, HIGH); delay(100); digitalWrite(9, LOW); delay(100); //calibrating light sensor - while calibrating cover and open the light sensor a few times for (int i = 0; i <200; i++) { digitalWrite(9, HIGH); int lightlevel = analogRead(0); Serial.println(lightlevel); if (lightlevel < lowVal) { lowVal = lightlevel; } if (lightlevel > highVal) { highVal = lightlevel; } delay(30); digitalWrite(9, LOW); } digitalWrite(9, HIGH); delay(50); lowVal = lowVal - 50; highVal = highVal + 50; Serial.print(“low level threshold: “); Serial.println(lowVal); Serial.print(“high level threshold: “); Serial.println(highVal); Servo1.attach(6);//attaching servo to pin 6}/*============================================================================== * LOOP() This code loops *============================================================================*/void loop(){ //serialread(); // Call the Serial Write function //if (writecounter == 1500){ // Wait every 1500th loop to then call the Serial Write function //writecounter = 0; serialwrite(); //} // writecounter = writecounter +1; }
/*============================================================================== * WRITE FUNCTION() *============================================================================*/void serialwrite(){ // READ SENSORS + BUTTONS FROM ARDUINO APin0 = analogRead(0); // Read analog input pin
APin0= constrain(APin0, lowVal,highVal); mapX = map(APin0,lowVal,highVal,1,90); if (mapX > currVal) { if ((mapX - currVal) > 5) { currVal = mapX; } } else if (mapX < currVal) { if ((currVal - mapX) > 5) { currVal = mapX; } } else { currVal = mapX; } Servo1.write(currVal);
int ledPin=9;
if (currVal > 45) { digitalWrite(ledPin,HIGH); } else { digitalWrite(ledPin,LOW); }
Serial.print(currVal); Serial.print(“,”); // Send the value and a comma
Serial.print(APin1); Serial.print(“,”); // Send the value and a comma Serial.print(APin2); Serial.print(“,”); // Send the value and a comma Serial.print(APin3); Serial.print(“,”); // Send the value and a comma Serial.print(APin4); Serial.print(“,”); // Send the value and a comma Serial.print(APin5); Serial.print(“,”); // Send the value and a comma Serial.print(DPin2); Serial.print(“,”); // Send the value and a comma Serial.print(DPin4); Serial.print(“,”); // Send the value and a comma Serial.print(DPin7); Serial.print(“,”); // Send the value and a comma Serial.println(“eol”);}///*==============================================================================// * READ FUNCTION()// *============================================================================*/
uint32_t parsedecimal(char *str){ uint32_t d = 0; while (str[0] != 0) { if ((str[0] > ‘50’) || (str[0] < ‘0’)) return d; d *= 10; d += str[0] - ‘0’; str++; } return d;}
Hardware
The light sensor of Arduino measures the external environmental conditions. Arduino exists in both digital and physical world. It passes this information to digital model and physical model and put them into effect.
![Page 11: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/11.jpg)
9
Prototyping Model
Inspiration :Abstract shapes are created in the areas where the leaves overlap
and light and shadow blend to create changes in translucency and shape.
Prototyping Model
![Page 12: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/12.jpg)
10
![Page 13: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/13.jpg)
11
![Page 14: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/14.jpg)
12
![Page 15: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/15.jpg)
With thanks to
tutorsreviewersclassmates
![Page 16: RADP elective](https://reader031.fdocuments.in/reader031/viewer/2022020209/568bd75a1a28ab20349f6991/html5/thumbnails/16.jpg)
Title: Responsive Analogue and Digital PrototypingTutor: Flora Salim, Jane Burry, Daniel DavisPole: Expanded FieldDate: Semester 2, 2010
This and other documented examples of elective subjects run as part of the RMIT University Architecture program can be found on issuu.com
Elective Pamphlets