Geidai Open Workshop 2009

download Geidai Open Workshop 2009

of 177

  • date post

    08-May-2015
  • Category

    Design

  • view

    1.167
  • download

    0

Embed Size (px)

description

Slides for the workshop at Tokyo Geidai in 2009

Transcript of Geidai Open Workshop 2009

  • 1.21 2009 8 8 9 12 3 3123

2. 1 10:00 11:00 11:00 12:00 Funnel 13:00 14:30 FIO 15:00 16:30 16:30 17:00 17:30 18:00 18:00 19:00 3. 2 10:00 12:00 13:00 16:00 16:30 18:00 18:00 19:00 4. 1/2 Gainer I/O 1 USBA-B A-miniB 1SAD-011SPP-100SKS-1403301150210k110k B1 CdS5mm 1 LED1 5. 2/2KMX52-10501LED OSTA71A1D-A 1GP2Y0A211RBSCGP16mm 1 6. 1970 1993 2004 IAMAS 2004 7. GAINER GainerBook Labo 2007 2008 8. Making Things Talk Arduino Tom Igoe 2008 9. MakeVolume 04Sketch 2008 10. Make Volume 05 Sketch / Prototype2008 11. Make Volume 06 Prototyping Lab:2009 12. MakeVolume 07 Prototyping Lab: Jamming Gear 2009 13. 14. ITP*1Tom Igoe1 1 *1 Interactive Telecommunications Program 15. LED I/O PC 16. 1 Mountain Guitar I/OPC IAMAS CG 17. 1 Mountain Guitar Ars Electronica 2007 campus2.0 IAMAS 2007 11 18. 2 Jamming Gear FIOMax/MSPPC Ars Electronica 2009 Digital Music Honorary Mention 19. 3 XBeeFunnelPC Make: Tokyo Meeting 01-02 IAMAS Gangu Project 20. 21. littleBits coemaker*2 *2 http://www.vimeo.com/1389390 22. 23. PC ASCII 1 bps 24. Alto (1973) http://toastytech.com/guis/ 25. ActionScript C C++ Java 26. 27. Flash Processing Max/MSP Gainer Arduino Phidgets 28. Arduino Wiring PIC program A a0]=ain.o; aout.1 = 255; BCD 29. PC Arduino WiringprogramAa0]=ain.o;aout.1 = 255;B C DPC program a0]=ain.o;aout.1 = 255; 30. Arduino SparkFun Electronics 31. I/O PCGainer Phidgets ABCDPCprograma0]=ain.o; aout.1 = 255; 32. Phidgets 33. Gainer I/O ActionScript 2/3 Processing Max/MSP 34. Gainer I/O 35. I/O 36. I/O 37. LED 38. 2008 8130 39. 2 3 40. HELLO!! 2007.12.22-23 19 ProcessingFunnelGainer I/O 41. OK 42. 2008 43. 2 GND V 44. A 45. 46. 1,0001k 1,000,0001M 1,000 1 1mA 1,000,000 150A 47. 48. +5V GND 49. LED 50. 51. 52. LED 53. LED LED 20mA 54. V =I R VV I A R 55. LED = LEDRR LED R= LED5.0V LED1.8V10mA 5 1.8 3.2 R= ==0.010.01 56. LED 57. +5V GND 58. LED NG 59. LED 60. LED7 61. physical wonder 62. wonder http://wonder.net Flash fork 2008 12 9,000 28,000AS3 63. physical wonder http://physical.wonder.net IAMAS wonder Funnel GUI 2009 7 24 64. wonder IAMAS wxphoonida-kim 65. physical wonder 66. 67. 68. physical wonder http://tinyurl.com/nbspoe http://tinyurl.com/nho2rx 69. Funnel Gainer Gainer 70. Funnel 71. Funnel 72. Funnel 73. Funnel Sketching User Experiences Getting the Design Right and the Right Design Bill Buxton Morgan Kaufmann Pub 2007 74. FunnelBill Buxton, Sketching User Experiences (2008) 75. Funnel Convolution SetPoint Scaler Osc I/O 76. Funnel 77. ActionScritpt 3 Processing ActionScript 3 Processing Java 78. 79. Gainer 1var lastState = -1; // var t = 127; // var h = 20; // var gio = new Gainer();function loop():void { var state = lastState; var val = gio.analogInput[0]; // 0 if (val < (t - h)) // state = 0; //0 else if (val > (t + h)) // state = 1; //1 if (lastState == 0 && state == 1) // 0 1 sound.start(); // lastState = state; // } 80. Funnel 2var gio = new Gainer();// gio.addFilter(new SetPoint(0.5, 0.1));// gio.addEventListener(RISING_EDGE, onButtonPress);// function onButtonPress(e:Event):void { sound.start(); // } 81. UI LED LED H 82. UI3 LEDvar gio:Gainer = new Gainer();// gio.button.addEventListener(PRESS, function(e:Event):void { gio.led.blink(200, 1); // LED 200ms1 });// gio.button.addEventListener(LONG_PRESS, function(e:Event):void { gio.led.blink(200, 3); // LED 200ms3 }); 83. Gainer I/O2 din 0 1 2 ain 0 1 256 84. din 0 85. din 0 86. rising edge falling edge 87. Funnel http://tinyurl.com/no7bvt4var gio:Gainer = new Gainer();gio.digitalInput(0).addEventListener(RISING_EDGE, function(e:Event):void { //01 });gio.digitalInput(0).addEventListener(FALLING_EDGE, function(e:Event):void { //10 }); 88. ain 0 89. ain 0 90. ain 0 SignalScope http://tinyurl.com/kovuvl ain 1 91. ain 0 CdS 92. ain 0 CdS 93. ain 0CdS http://tinyurl.com/mbh74x SignalScope 94. Scaler http://tinyurl.com/ktt7w85 Scalergio = new Gainer();gio.analogInput(0).filters = [new Scaler(0.2, 0.6, 0, 1, Scaler.LINEAR, true)]; 95. 96. SetPoint http://tinyurl.com/mku948 6 SetPointgio = new Gainer();gio.analogInput(0).filters = [new SetPoint([0.5, 0.1])]; gio.analogInput(0).addEventListener(RISING_EDGE, onRisingEdge); gio.analogInput(0).addEventListener(FALLING_EDGE, onFallingEdge); 97. ain 0 98. ain 0 99. ain 0 100. ain 0 PSD 101. ain 0 102. ain 0 103. ain 0 SoftPot 104. ain 0 SoftPot 105. ain 0 SoftPot 106. ain 107. ain 108. 109. http://tinyurl.com/l2ojfc -1+1 sin 110. LPF HPF 111. Convolution http://tinyurl.com/nb6xto7 Convolutiongio = new Gainer();gio.analogInput(0).filters = [new Convolution(Convolution.MOVING_AVERAGE)]; 112. 8public function GainerAccelerometer() { gio = new Gainer();board = new Shape(); ... this.addChild(board);var smoother:Convolution = new Convolution(Convolution.MOVING_AVERAGE); var scaler:Scaler = new Scaler(0.30, 0.70, -1, 1, Scaler.LINEAR, true); gio.analogInput(1).filters = [smoother, scaler];addEventListener(Event.ENTER_FRAME, loop); }private function loop(event:Event):void { board.rotation = Math.asin(gio.analogInput(1).value) / Math.PI * 180; } 113. Gainer I/O2 dout 0 1 2 LED aout 0 255 256 *3 LED *3PWM 114. 9 I/O LEDpublic function GainerLED() { ... var circle:Sprite = new Sprite(); ... this.addChild(circle);circle.addEventListener(MouseEvent.MOUSE_DOWN, mousePressed); circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); }private function mousePressed(e:MouseEvent):void { gio.led.value = 1; }private function mouseReleased(e:MouseEvent):void { gio.led.value = 0; } 115. 10I/O LEDLED button.apublic function GainerLED() { gio = new Gainer();gio.button.addEventListener(PinEvent.RISING_EDGE, buttonPressed); gio.button.addEventListener(PinEvent.FALLING_EDGE, buttonReleased); }private function buttonPressed(e:PinEvent):void { gio.led.value = 1; }private function buttonReleased(e:PinEvent):void { gio.led.value = 0; } 116. dout 0 LED 117. dout 0 LED 118. http://tinyurl.com/mtrq6f 119. aout 0 LED 120. aout 0 LED 121. http://tinyurl.com/nbspoe 122. Osc LED http://tinyurl.com/nh4287 123. Flash IDE wonder wonder a 124. FIO 1 EIC-801 1 1 1 XBee2 XBee Explorer USB 1 125. FIO (Funnel I/O) LilyPad Arduino v1.6 XBee 126. FIO (Funnel I/O) v1.3 127. FIO (Funnel I/O) v1.3 128. FIO (Funnel I/O) v1.3- + 129. FIO (Funnel I/O) v1.3 130. FIO v1.3 vs Funnel IO Remixed 131. Arduino Hernando BarragnaIDII*4 Wiring IDEArduino I/O *4 Interaction Design Institute Ivrea 132. WiringSparkFun Electronics 133. Arduino Duemilanove SparkFun Electronics 134. Arduino IDE 135. 136. LilyPad Arduino SparkFun Electronics 137. Arduino Pro MiniSparkFun Electronics 138. Arduino ProtoShieldSparkFun Electronics 139. Arduino XBee Shield SparkFun Electronics 140. Arduino GND +5V GND 141. Gainer I/OArduino Gainer I/O Arduino Duemilanove16 20 A/D8 8bit 6 10bitPWM 8 8bit 6 8bit10 LED11 D13YesYesNo Yes 142. Arduino 143. Arduino LED11 Arduino LEDint ledPin = 13;void setup() { pinMode(ledPin, OUTPUT); }void loop() { digitalWrite(ledPin, HIGH); delay(1000); digitalWrite(ledPin, LOW); delay(1000); } 144. C LED12 C LED#include #include #include #define CLK_CALIB_DATA (FLASHEND - 3)void init() { uint8_t osccal_data = pgm_read_byte(CLK_CALIB_DATA); if (osccal_data != 0xff) OSCCAL = osccal_data;DDRB = 0xff; DDRD = 0xff;return; } 145. CLED 13 CLEDvoid delay_ms(uint16_t t) { while (t--) _delay_ms(1); }int main(void) { init();for (; ;) { PORTB = 0xff; delay_ms(500); PORTB = 0x00; delay_ms(500); } return 0; } 146. Arduino C/C++ 147. Arduino PC USB Ethernet Bluetooth IEEE 802.15.4 / ZigBee 148. Firmata http://rmata.org/ Hans-Christoph Steiner MIDI Arduino 0012 149. FirmataPC Pd (aka Pure Data) Processing Funnel Linux C++ C++/openFrameworks 150. 10GIEEE 802.11n 100MIEEE 802.11a/g10MIEEE 802.11b Bluetooth1MANT100k ZigBee/IEEE 802.15.410k 1k 0.1m 1m 10m100m 1kmBANPANLANMAN 151. Wi-Fi Bluetooth 802.15.4/ZigBee IEEE 802.11a/b/g/n 802.15.1802.15.42.4GHz/5GHz 2.4GHz866MHz/915MHz/2.4GHz100m 100m 100m2.4GHz 300Mbps 3Mbps250kbps 2.4GHz32 765535LAN1 152. IEEE 802.15.4 1 153. IEEE 802.15.4Point to PointStar Point to Multi802.15.4 Coordinator802.15.4 End Device 154. ZigBee 1 155. ZigBeeMeshCoordinatorRouterEnd Device 156. XBee IEEE 802.15.4 ZigBee 2*5 XBee 802.15.4 XBee ZB ZigBee PRO 3500 *5 157. XBee 5V UDP100kbps 158. XBeeXBee hardware/o/tool/XBeeCongTool PAN ID MY ID Congure 159. FIO XBee Explorer USB PC Arduino 16 Tools Board Arduino Pro/ Pro Mini (8MHz) Tools Serial Port Open Examples Digital Blink Upload to I/O Board 160. FIO hardware/o/rmware/FioStandardFirmata Upload to I/O Board 161. FIO FIO XBee Explorer USB PC Funnel Server http://tinyurl.com/n4c7a5 http://tinyurl.com/kp7jqs 162. FIO LED 163. FIO 164. 21 2009 8 8 9 12 3 3123