Pd workshop log - Cairo 2010
- 1 Phase 1 : Pure Data : basic concepts and real-time processing
- 1.1 Day 1
- 1.2 Day 2
- 1.3 Day 3
- 1.4 Day 4
- 1.5 Phase 2 : Pure Data : sound processing and synthesis
- 1.6 Day 5
- 1.7 Day 6
- 1.8 Day 7
- 1.9 Phase 3 : Pure Data : extensions and specific processing : 3d, video processing, computer vision, physical modelling, ...
- 1.10 Day 8
- 1.11 Day 9
- 1.12 Day 10
- 1.13 Day 11
- 1.14 Day 12
- 1.15 Phase 4 : Electronics & Arduino: basic concepts, circuitry and programming...
- 1.16 Day 13
- 1.17 Day 14
- 1.18 Day 15
- 1.19 Day 16
- 1.20 Day 17
- 1.21 Phase 5 : Arduino & electronics : sensors, interfaces, extending arduino and advanced programming, ...
- 1.22 Day 18
- 1.23 Day 19
- 1.24 Day 20
- 1.25 Day 21
- 1.26 Day 22
Phase 1 : Pure Data : basic concepts and real-time processing
Duration : 4 days : 22-25/03
General presentation of real-time programs for art : history and difference between Max/MSP and Pure Data Introduction to objects and connections Review of types of units : objects, messages, numbers, symbols and list A special message : bang ! Time and event processing Start of the first example : a stop watch in pd using metro
Conditional processing Routing messages and process data First example complete : a stop watch in textual mode
Introduction to Gem library Transformation of the previous watch in a graphical mode Scaling data Second example : Stop watch in graphical mode
Explaining gem chains and spaces ( rotation, translation ) Introduction of sub-patches Building an interface that everybody ( think about your mother ) can use Third example : control interface for the stop watch
Phase 2 : Pure Data : sound processing and synthesis
Duration : 3 days : 27-29/03
Playing sound with tables ( tabxxx ) Recording sound Introduction of abstractions Start of fourth example : an 8 steps sound sequencer
Finishing an abstraction ( the $0 trick in pd ) Building an interface using Graph On Parent feature Basics of sound synthesis ( waveforms, additive synthesis, ... ) Example of sound design by obiwannabe Finishing fourth example : an 8 steps sound sequencer
Connecting sound processing to animations in Gem Creating a context in Gem Details about geometries and rendering Finishing fifth example : an animation connected with sound : the fish tank
Phase 3 : Pure Data : extensions and specific processing : 3d, video processing, computer vision, physical modelling, ...
Duration : 5 days : 31/03 :: 1,3-5/04
Using textures and models in Gem Using gemlists and separators to sequence processing Starting seventh example : using models in Gem
Mapping video on surfaces : curves3d, ... Using gemlists to create several models Finishing seventh example : a bowling game in pd
Combining Gem and PDP for video effects Simple tracking in pdp : pdp_shape... Video effects in Gem : colour keying, ...
Choosing video input in pd OpenCV introduction : tracking with pix_opencv_camshift Detection of contours and connection to a sound processing unit
OpenCV : motion detection OpenCV : filtering noise for better tracking Use of infra-red cameras for more precise tracking Introduction to OSC
Phase 4 : Electronics & Arduino: basic concepts, circuitry and programming...
Duration : 5 days : 7-8,10-12/04
Introduction to electricity. Static, current, voltage drop, intensity, resistance, Ohm's Law. Components: Resistor. Variable Resistor. Uses. Experiments. Components: Capacitor. Types. Uses. Experiments. Components: Coils. Transformers. Semiconductors. Silicon crystals. N and P Types. PN junction. Components: Diode. LED. Uses. Experiments. Components: Bipolar transistor. Transistor as a switch. Transistor as an amplifier. Experiments. Components: FET Transistor. MOSFET Transistor. Components: Integrated Circuits. Construction. Book : http://www.general-search.com/fileinfo/10996093
Introduction to the arduino platform Arduino Board, main parts, connectors. Arduino IDE, installation, configuration... Hello world, LED blink. Arduino sketches, parts, setup() and loop() functions. Variables, types. Digital logic levels, true and false, high and low, 1 and 0. Digital output. LED blink, two LED's. Digital input. Push button. Analog input. ADC, Voltage divider, reading the input. Using the serial monitor.
Sending data using the serial-usb port. Data as ascii and as raw bytes. Mapping ranges. Connecting Arduino to puredata, comport. Connecting Arduino to puredata, video mixer example. The amazing binary world. Introduction to binary numeral system. Introduction to binary arithmetics. Hexadecimal numeral system. More components. Motors: DC motors, servos and steppers.
Arduino Programming Language Functions. Defining functions, calling them. Operators. Arithmetic, logic. Conditions. Loops. While, do..until, for. Conditionals. If, if...else, switch.
Arduino Programming Language Control of RGB LEDS. Use of distance and/or pressure sensors to control LEDS.
Phase 5 : Arduino & electronics : sensors, interfaces, extending arduino and advanced programming, ...
Duration : 5 days : 14-15,17-19/04
Arduino Programming Language. Arduino Libraries, importing, creating instances of objects, using objects in libraries. Servo Motors, types. Interfacing. Servo Library. Control of servo motors using sensors.
Arduino Programming Language: Advanced digital output. Shifting bits. The 595 shift register. Pinout. Interfacing. LED Binary counter, a 595 example. 7 segments displays. Arrays.
7 segments circuit with a 595. Programming of the 7 segments display with arduino. Use of arrays to control the 7 segments display. Sensors. Ultrasonic. LDR's. PDuino & Firmata.
Treating sensor data : scaling. Mapping library in pd. XBee introduction : sending data from the computer.
Receiving sensor datas from Xbees. Use of an applicative protocol to distinguish sensors. Persistence Of Vision ( POV ) with Arduino and LEDS.