Date post: | 30-May-2015 |
Category: |
Education |
Upload: | mogens-jacobsen |
View: | 1,307 times |
Download: | 3 times |
The plan (interim)
Day 1: Getting it
• Introduction to concept
• Visit to junk-market. Shopping for noise-makers
• Taking the devices apart
• Circuit bending: Trying to produce interesting sound
Day 2: Building it
• Introduction to the interface
• Building control electronics.
• Setting up the installation of noisemakers at PiST
Day 3: Coding it
• Connect the noisemakers to the web.
• Program a simple visual interface I HTML (webpage).
• “Rehearsal”
Evening/Performance : Doing it (Tuesday 20:15)
The participants will perform a short piece by controlling the installation from the web.
Afterwards everybody is invited to use the installation - so bring friend, smartphones and laptops.
PiST will supply an open WIFI-network for this evening.
Workshop – Not lecture
Where the idea came from
Bamboo Grove, Beijing 2010Mogens Jacobsen, David Garcia, Jakob S. Remin and Morten Riis
Where the idea came from
Where the idea came from
Mechanical soundmakers
Where the idea came from
The controller: Arduino + custom electronics
Where the idea came from
Performance: Jakob S. Remin, Morten Riis, MJ
The (new) concept: Internet control
laptops
smartphones
webserver controller
(arduino)
custom
electronics
modified
trashHTML interface
via WiFi
usb
The webserver
My slow netbook
XAMPPP freeware webserver
(Apache based supporting PHP)
www.apachefriends.org
The usb controller
The Arduino Board
Small computer
Cheap (65 TLR)
OpenSource (hardware)
The Arduino (i/o)
14 digital input/output
(6 analog inputs)
USB
We share one
Use it as USB-controller
Custom Electronics
”Pinkie”: (almost) all-in-one alternative
BURAK ARIKAN
To do
custom
electronics
modified
trashHTML interface
usb
Modified trash
Should be able to make sound
(electronically, mechanicaly..)
Modifiable: Easy to open
Cheap: We will break it
Fun
Battery-operated (safety!)
Getting it:
Let’s go hunting
for good trash
Modify it!
Open it and explorethe audio possibilities
Using 1 wire (on/off)
The MOSFET (IRF520 or IRF510)
3 different pins!
Building it
Simple
3 parts
Cheap (2 TLR)
Not to fast…
”mechanical” switch
controlled by the
Arduino (which again is
controlled by USB)
Custom Electronics: Diagram
MOSFET
IRF510
Resistor
2,2K Ohm
Relay
+9V
GND (-9V)
On/off
Data in
The MOSFET
Sensitive to static electricity
Sensitive to heat
The Relay (mechanical switch)
Control
Control
Control
Control
The Resistor
Value: Between 2000 and 10000 Ohm (2,2KOhm)
Value is color-coded (2,2KOhm = red/red/red)
No polarity (does not matter which way you turn it)
Building it
MOSFET IRF510
RESISTOR
RELAY
TO GND
TO +9V
TO USB
Connecting your trash thing
Add long wires to these
relay
Coding it
HTML page as
interface
Control ”orchestra”
from browser
Simple:
Toggle on/off
Prepare the visuals
• 10 images on a webpage
drawings, photos, ?
• Clicking an image toggles a piece of trash
• Small images (all has to fit within a webpage)
HTML: Structure of a page
<html>
<head>
</head>
<body>
CONTENT GOES HERE
</body>
</html>
Save file as: [YOURNAME].html
Our advanced HTML page (1)<html>
<head>
</head>
<body>
<a href="#" onclick="ajaxtest(‘E');"><img src="images/name/1.jpg" border="0" /></a>
…
<a href="#" onclick="ajaxtest(‘N');"><img src="images/name/10.jpg" border="0" /></a>
</body>
</html>
Your name
10 numbered images 10 different links
”E” to ”N”
Our advanced HTML page (2)<html>
<head>
<script language="JavaScript" type="text/JavaScript" src="stayonpage.js"></script>
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
</head>
<body>
<a href="#" onclick="ajaxtest(‘E');"><img src="images/name/1.jpg" border="0" /></a>
<a href="#" onclick="ajaxtest(‘N');"><img src="images/name/10.jpg" border="0" /></a>
</body>
</html>
To force (most)
browsers to refresh
Script to stay on page
Cheating: Download template
http://bit.ly/nIrU0V
zero
When ready:
• Put the HTML-file and images into a folder
• Name the folder by your (first) name
• Copy it to the USB-stick
• Give the stick to me
• Together we will put it on the server
• We will test it
Running a webserver
Open-source web server
Server-side scripting language+
http://www.apachefriends.org/en/xampp.html
On the webserver
Other ways of controlling orchestra?
Arduino only (no laptop/server):
Random play
Other ways of controlling orchestra?
Arduino only (no laptop/server):
Control using flashlights and light-sensitive
resistors (LDR)
6 x analogue inputs
Other ways of controlling orchestra?
No Arduino (no laptop/server):
Mechanical sequencer (”automata”)
The orchestra
• Set up in PiST/// space
• Connect things
• Publish access-info on signNetwork, username, passwordAddress of the server (IP-number)
• Test it
• Correct errors!
Connecting it all (Can get messy)
All blue connected together (& Arduino & -9V)
All red connected
together and to
to +9V
White (resistor)
connected to one
of white on Arduino
Links
• All material: http://bit.ly/o0TclL
– (lower case ”o”, Zero, Tc, uppercase ”i” and L)
• My email: [email protected]