Documentation of my Diplom
I am finished!
Jan and the lamp are slowly getting to know each other
Jan put on sunglases against the bright LED-light
checking the last cables
what happened until now
My final project at the University of Art and Design in Halle consists out of a robotic chandelier that has its own way of creating a constantly changing light-atmosphere. It does react to people and the general light condition surrounding it but always in different ways. It only works as long as it does not have to compete with other bright light. As every lamp should, it only works at night or in any other dark surrounding.
Basically it consists out of twelve arms that can individually move and direct a light-beam from their tip to any point at the room. The single arms move a bit like the tail of a cat and together with their ability to control the strength of their light and the sounds of 24 servo-motors it immediately creates the feeling of the presence of a living creature.
The main idea was to create a lamp that would remember the reactions of the people communicating with it. And use this knowledge to control the humans.
The theory is quite simple.
According to the movements or sounds the visitors make right after the lamp completed a distinctive act, it decides if whatever it was doing made an interesting impression onto its observer or not. This way a database of movements and choreographies of the different arms, slowly fills itself and will enable the lamp to have a base of acts it can fulfill to provoke certain reactions.
In the End the machine tries to control the human.
The praxis proved to be quite hard to accomplish.
So at the very beginning I patched a simple virtual prototype in v4 and realized that it would already be quite complicated to write a program that prevents the arms from constantly hitting each other.
But I decided to not think about any programming issues anymore and tried to solve the hardware problems first.
What material do I want to use? How should it actually look like? What and how many electronic components and Motors will I need? What Sensors do I want to use?
Building a robot obviously is not a simple thing and my time was short as always. But I thought I was smart and was sure that I have already found the solution.
THE MECHANICS OF THE ARMS
To move the Arms I decided to use a servo-motor with a coil at one end of the arm that pulls strings, which are attached on the other end of the arm. To hold them close to the arm on the rest of the way I wanted to use rings. If u use a flexible but stable material as bearing the outcome would look like a fishing-route that catches a really big fish.
Now, if you would use this concept of both sides of the bearing-material, the arm would be able to move into two directions. Like a bamboo-plant moving back and forth in the wind. Well the wind would have to be really strong and constantly changing.
On top of that I wanted to use a second robot-servo to turn the arm horizontally. Only that way each arm would be able to light up every spot in the room.
Finally sometimes in february I started drawing:
First sketch of a servo-motor and a led
top view of the whole lamp:
It was surprisingly hard to find a solution for the holding of the motors and the arm
To get a feeling for the proportions and to know how long my arms should be I decided to build a basic moke up out of cardboard:
Prototype number 1
One week after the first sketches I made a vector graphic for my first moving and programmed prototype out of laser cut feather-steal.
After quite some time of waiting I finally got this part two weeks later:
First very basic self-build coil on a servo-motor which is usually used for
small scaled models of sailing boats
Prototype number 2
When I came back from Shanghai where I had to stay for one month. Prototype number one still worked pretty good BUT the motor had to pull really hard and I simply did not like how it looked. Very technical, very much like a robot and not like a chandalier.
So I had the sudden Idea to use glass. To simulate balls of glass I used wood-balls that I stuck onto very thin peaces of transparent foil. I used the strongest foil I could find in downtown halle.
Prototype number 2 seemed to work very good at the beginning but after a while it proved to be very unstable and made a S-curve that was very hard to control.
Prototype number 3
Since I wanted to build a chandelier I decided to build the third prototype out of glas made especially for chandeliers. To hold the strings I used fishing-route-rings which were very suitable and the whole arm moved stable and was easy to control.
The difficult part was to drill the holes into the glas.
Even so it worked, the problem was its weight and I still did not like the rings. The string made itself too important and the whole thing still looked very technical.
So I decided to use pipes for my following prototypes in which I could hide the strings.
After almost two weeks of not knowing what to do, I decided to build one arm out of 16 different pipe-peaces out of acryl glass without any bearing-material at all. Basically it is just a chain.
To control all my prototypes I used this self-made remote control that consists out of two potentiometers and a very old peace of wood, never gave up on me and I am planing of using it for my presentation so people can play around with one of my prototypes:
I thought this would never work but it actually worked better than anything else so I decided do use this principle for my final arm and started to do the
After finishing the final prototype I put all the old ones onto my wall:
ELECTRONICS AND ARDUINO PROGRAMMING
I am using:
12 large Servo-motors (sailing-servos) which are able to turn 360 degrees
12 strong Robot-servos
12 power-leds (warm-white)
3 Arduino Megas
3 USB Cables
2 Firewire Cameras
1 power supply with 2A and 6-12V
50 meter of wires
For the last prototype I wanted to get the LED at the end of the arm to work. The problem was to conduct the electricity via the pulling strings. Gladly the resistance of the fishing-wire I am using is enough (but not too much) to directly use the 5v outputs of the Arduino. This is really great because now I do not have to build any circuit-boards!!!
Led directly connected to the PWM -output of the arduino
so I am able to dim the light with a potentiometer:
Controlling 12 Servos with one Arduino and vvvv via a serial-port connection
I am sending two values as string from vvvv to the Atmega processor on the Arduino.
The first one defines the position the Motor should go to (or the tensity of the LED-light)
The second one defines how fast it should go there (filter like a damper)
This way I do not have to filter the values in vvvv which saves me a lot of space on the serial connection so I wont get a data-traffic-jam.
I am using this principle for all three Arduinos.
the behavior of the lamp will be programmed in vvvv.
At leased until I found a way to replace the cameras with different sensors and after I know which behaviors a re most interesting. So far, for developing, vvvv is not replaceable.
I desperately wanted to implement a triangulation via three or more microphone inputs, but all the electric mics I tested were not precise enough and anything else seems to be way too expensive.
The second choice was to use a whole bunch of distance sensors, which actually proved to work incredibly good. It was almost a plug an play thing but to get a high enough resolution of where objects move around the lamp, I would have needed to buy something like 25 sensors which cost 25 Euros each. I was not willing to spend this amount of money for a solution I was not absolutely sure that it worked.
Now, again, I am going to do a camera-tracking probably consisting out of two unibrain firewire-cams since they are really great when you need to use more than one camera.
two electric mics and a sonar sensor:
I am planing on hanging four white curtains around my lamp and project the presentation pictures onto two sides. This way I can present my former mapping projects really nice since I have something like an architecture to project onto. After finishing the introduction and documentation part of the presentation, the curtains get pulled open, the light gets switched of and I interact with my lamp.
I need a name for that thing.
Photoshop-fake of the Volksparkgallerie with a construction to hold the curtains (which wont be this transparent)
With the great help of Jan I finaly planed the main holding which will be made out of black-finished steel. Should be finished on friday and hopefully I am also ready with all the 12 arms so I can attach the whole chandelier until the 6th of July.
Now we have the 11th and I still couldn't attach anything because my parts still did not arrive.
But the whole hanging construction is finished, I will upload a picture when I finaly take my camera to the studio.
The first complete setup-drawing of the whole chandalier with the final proportions, cabeling, ardunio and the tracking cameras on the ceiling
Some screenshots of my simulation I was working on while I waited for my plexi-glass tubes. The red lines are the calculated distances which I need for warning before the arms hit each other:
While I was programming Jan helped me to build the large steel-hanging part for the lamp.
This completly whelded peace of raw steel was later tensed up with steel-whire so that the hole construction was dynamik enought to damp all the movements of the arms without starting to vibrate itself. Just like a suspension bridge.
after putting it onto the ceiling
Putting together the Arms
Two days before I had to go to Essen for a large mapping performance, finaly my parts arrived one and a half month too late!!! They were not very precise and the difficult wholes were missing. The next two days and nights were very intense.
all my parts on my table
14 soldered LEDs
putting in the last LED
12 finished arms
Putting together the Chandelier
After returning from an unbelievable exhausting week in Essen I had to now time for relaxing and started to attach the arms in the night when returned.
After attaching the arms
Magnus is checking out what I am doing
After starting to get confused too often on which arm I was working on, I decided tht every arm should get a number
The studio at my university I am working in right now
Too many cables