Geidai Open Workshop 2009

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Geidai Open Workshop 2009 - Presentation Transcript

    1. 21 2009 8 8 9 1 2 3 3 1 2 3
    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 USB A-B A-miniB 1 SAD-01 1 SPP-100 SKS-140 330Ω 1 150Ω 2 10kΩ 1 10kΩ B 1 CdS 5mm 1 LED 1
    5. 2/2 KMX52-1050 1 LED OSTA71A1D-A 1 GP2Y0A21 1 RBSCGP 1 6mm 1
    6. • 1970 • 1993 2004 – – – • IAMAS 2004 – –
    7. GAINER GainerBook Labo 2007 2008
    8. Making Things Talk Arduino Tom Igoe 2008
    9. Make Volume 04 Sketch 2008
    10. Make Volume 05 Sketch / Prototype 2008
    11. Make Volume 06 Prototyping Lab: 2009
    12. Make Volume 07 Prototyping Lab: Jamming Gear 2009
    13. • • •
    14. • ITP*1 Tom Igoe • 1 • • 1 *1 Interactive Telecommunications Program
    15. • • LED • I/O PC
    16. 1 Mountain Guitar • • – – • I/O PC • IAMAS • CG
    17. 1 Mountain Guitar • Ars Electronica 2007 campus2.0 • IAMAS • 2007 • 11
    18. 2 Jamming Gear • × • – – • ×FIO×Max/MSP×PC • Ars Electronica 2009 Digital Music Honorary Mention
    19. 3 • • • ×XBee×Funnel×PC • Make: Tokyo Meeting 01-02 IAMAS Gangu Project
    20. • • • • • •
    21. • • • littleBits coffemaker*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; B C D
    29. PC Arduino Wiring program A a0]=ain.o; aout.1 = 255; B C D PC program a0]=ain.o; aout.1 = 255;
    30. Arduino SparkFun Electronics
    31. I/O PC Gainer Phidgets A B C D PC program a0]=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 8 130 • – – –
    39. • • • • • • • 2 3
    40. HELLO!! • 2007.12.22-23 • • 19 • • Processing×Funnel×Gainer I/O
    41. • • • • OK
    42. 2008
    43. • – 2 – GND – V
    44. • – – A
    45. • – – Ω
    46. • 1,000 1kΩ • 1,000,000 1MΩ • 1,000 1 1mA • 1,000,000 1 50µA
    47. • •
    48. +5V GND
    49. LED
    50. • • – – –
    51. • • •
    52. LED
    53. LED • LED 20mA • • •
    54. V =I ×R • V V • I A • R Ω
    55. − LED = LED ×R R − LED R= LED 5.0V LED 1.8V 10mA 5 − 1.8 3.2 R= = = 0.01 0.01
    56. LED
    57. • +5V • GND •
    58. LED NG
    59. LED
    60. LED 7
    61. physical × wonderfl • •
    62. wonderfl http://wonderfl.net • • Flash – – fork • 2008 12 9,000 28,000 AS3
    63. physical × wonderfl http://physical.wonderfl.net • IAMAS • wonderfl – Funnel – – GUI • 2009 7 24
    64. • wonderfl – – • IAMAS wxp – – hoonida-kim –
    65. physical × wonderfl • • •
    66. • • • •
    67. • • •
    68. physical × wonderfl • 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. Funnel Bill 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 1 var 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 2 var 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. UI 3 LED var gio:Gainer = new Gainer(); // gio.button.addEventListener(PRESS, function(e:Event):void { gio.led.blink(200, 1); // LED 200ms 1 }); // gio.button.addEventListener(LONG_PRESS, function(e:Event):void { gio.led.blink(200, 3); // LED 200ms 3 });
    83. Gainer I/O 2 • din 0 1 2 – – • ain 0 1 256 – –
    84. din 0
    85. din 0
    86. • • – rising edge – falling edge
    87. Funnel http://tinyurl.com/no7bvt 4 var gio:Gainer = new Gainer(); gio.digitalInput(0).addEventListener(RISING_EDGE, function(e:Event):void { // 0 1 }); gio.digitalInput(0).addEventListener(FALLING_EDGE, function(e:Event):void { // 1 0 });
    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 0 CdS http://tinyurl.com/mbh74x • • SignalScope • •
    94. Scaler http://tinyurl.com/ktt7w8 5 Scaler gio = 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 SetPoint gio = 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/nb6xto 7 Convolution gio = new Gainer(); gio.analogInput(0).filters = [new Convolution(Convolution.MOVING_AVERAGE)];
    112. 8 public 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/O 2 • dout 0 1 2 – LED – • aout 0 255 256 *3 – LED – *3 PWM
    114. 9 I/O LED public 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. 10 I/O LED LED button.fla public 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 • wonderfl • wonderfl • • fla •
    124. FIO 1 EIC-801 1 1 1 XBee 2 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 Barrag´n a IDII*4 Wiring • • IDE Arduino I/O *4 Interaction Design Institute Ivrea
    132. Wiring SparkFun Electronics
    133. Arduino Duemilanove SparkFun Electronics
    134. Arduino IDE
    135. • – – •
    136. LilyPad Arduino SparkFun Electronics
    137. Arduino Pro Mini SparkFun Electronics
    138. Arduino ProtoShield SparkFun Electronics
    139. Arduino XBee Shield SparkFun Electronics
    140. Arduino GND +5V GND
    141. Gainer I/O Arduino Gainer I/O Arduino Duemilanove 16 20 A/D 8 8bit 6 10bit PWM 8 8bit 6 8bit 1 0 LED 1 1 D13 Yes Yes No Yes
    142. Arduino • • • •
    143. Arduino LED 11 Arduino LED int ledPin = 13; void setup() { pinMode(ledPin, OUTPUT); } void loop() { digitalWrite(ledPin, HIGH); delay(1000); digitalWrite(ledPin, LOW); delay(1000); }
    144. C LED 12 C LED #include <avr/io.h> #include <avr/pgmspace.h> #include <avr/delay.h> #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. C LED 13 C LED void 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://firmata.org/ • Hans-Christoph Steiner • MIDI • Arduino 0012
    149. Firmata PC • Pd (aka Pure Data) • Processing • Funnel • Linux C++ • C++/openFrameworks
    150. 10G IEEE 802.11n 100M IEEE 802.11a/g 10M IEEE 802.11b Bluetooth 1M ANT 100k ZigBee/IEEE 802.15.4 10k 1k 0.1m 1m 10m 100m 1km BAN PAN LAN MAN
    151. Wi-Fi Bluetooth 802.15.4/ZigBee IEEE 802.11a/b/g/n 802.15.1 802.15.4 2.4GHz/5GHz 2.4GHz 866MHz/915MHz/2.4GHz 100m 100m 100m 2.4GHz 300Mbps 3Mbps 250kbps 2.4GHz 32 7 65535 LAN 1
    152. IEEE 802.15.4 • 1 •
    153. IEEE 802.15.4 Point to Point Star Point to Multi 802.15.4 Coordinator 802.15.4 End Device
    154. ZigBee • 1 • •
    155. ZigBee Mesh Coordinator Router End Device
    156. XBee • IEEE 802.15.4 ZigBee 2 *5 – XBee 802.15.4 – XBee ZB ZigBee PRO • 3500 • • *5
    157. XBee • 5V • UDP • 100kbps
    158. XBee XBee • hardware/fio/tool/XBeeConfigTool • • PAN ID • • MY ID • Configure
    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/fio/firmware/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 1 2 3 3 1 2 3

    + kotobukikotobuki, 3 months ago

    custom

    291 views, 0 favs, 1 embeds more stats

    Slides for the workshop at Tokyo Geidai in 2009

    More info about this document

    CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

    Go to text version

    • Total Views 291
      • 244 on SlideShare
      • 47 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 8
    Most viewed embeds
    • 47 views on http://funnel.cc

    more

    All embeds
    • 47 views on http://funnel.cc

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories