<Dripper>

an automated and programmable rainer

2002-2005

by Godfried-Willem Raes


Dripper

This automaton is a computer controlled rain machine, whereby each individual drip can be precisely controlled: drip size, dripping frequency etc... Although it is a completely new design, we recognize the fact that our friend and colleague Trimpin, also made a dripping automate around 1993. This dripping robot however, evolved from the single dripping device the author needed for the realization of act 2 (Lithos) of his music-theatre production "TechnoFaustus". Of course, calling it a rainer is pushing truth a bit. The automaton can produce at the most 16 independent drips at the same time and that's not quite rain. However, it can do this very fast and extremely well controlled.

The dripping mechanism makes use of solenoid valves (M&M type C249DBL range 0-1Bar, 24V/10VA coils. These valves unfortunately are a bit loud and need some special treatment by insertion of a small Buna ring to become silent) controlled by a PIC controller. In the first hardware version we used the classic Intel 82C54 timers, since these chips have 3 timers on board. These timers, driven with a 1MHz crystal clock, were programmed to output precise pulses in a range between 2 microseconds and 64 milliseconds. People interested in the earlier designs can click this link. Due to the recent availability of PIC microcontrollers we changed the entire hardware design for this automaton. However, both in the PIC version as in the intel timer-chip version, only the range between 256 microseconds and 64 milliseconds, in increments of 256 microseconds (the values depend on the liquid used) is of practical usage in this automaton. The physics of drips determine the practical range. Below a certain opening time of the valves, the liquid contributes only a bit to the volume of the drip without it falling down. So, below this point, the repetition rate of the solenoids does not follow that of the dripping. At the other extreme, as soon as the volume of liquid passed by the valve exceeds the surface tension of a single drip, a jet or stream is caused. Again, the repetition rate cannot be controlled by the valve. Between these extremes however, the design allows for perfect control of the dripping. When the valves are opened, or when the repetition rate is very high, the liquid stream is limited by the size of the inner diameter of the outlet nipples, that is 3 mm.

Dripper can be used as a display device as well: all characters from the alphabet can be placed in a lookup table and used to display falling characters by precisely steering the valves according to the required dot/drip patterns. Different fonts are possible, but with the 16 drippers available here, horizontal resoluition is limited to 16 dots. Vertical resolution is limited by the repetition speed of the valves. An extended version using 160 valves is under construction since 2016.

The entire electronic part of the robot fits in an attaché case.

<Dripper> consists of three to four modules, each with its own reservoir and with four solenoid valves. The modules can be placed on high boom stands, or simply suspended. They connect to the circuit boards with special 5-wire conductor cables and connectors. All structural elements that can come in contact with the liquid used are made of copper or brass. Thus no rusting can occur. The liquid filling hole, on top of each module, is equipped with a standard 1/2" gastube thread. Thus, if required, extra liquid can easily be fed into the reservoirs.

<Drippers> can be installed and used as such, but can also be integrated in different kinds of audio installations: one can consider letting its drips fall on or into cans of different sizes (thus producing a scale of pitches), on small drums with mylar skins. Keep in mind that the striking force of the drips is a function of suspension height. Falling time can be calculated using t = SQR(height/ 9.81).

For the Ghent premiere of <Dripper>, we suspended all three modules, mounted in line on a single row, high up in the logos tetrahedron. The drips falling from about 9 meters height, were striking thin aluminum membranes mounted on a set of 12 tube resonators as can be seen on the picture below: The PVC 6/4" tubes were tuned in a scale of equal temperament based on the duodecimo interval divided in 12 equally tempered intervals. (1 semitone = 3 ^ (1/12) )

The automaton is controlled by its midi input port directly.

<Dripper> made its first public appearance at the occasion of the Krakow Audio Art Festival, on November 2nd and 3rd of 2002. It was displayed and functioning again in France in the townhall of Lille on November 6th. On November 19th it made its first appearance in the Logos Tetrahedron in Ghent. At that occasion one could also see and hear the <Dripper> controlled by human gesture. In also participated in further M&M concerts in December and January 2003. It appeared in the "Festival in de Branding" (12/2003) and "Adventures Festival" (01.2004) in The Hague (Netherlands). In march 2005 the hardware was revised entirely such that the automaton now listens to midi command directly. The microcode for the PIC was translated from the original GMT coding to PIC assembly, by Johannes Taelman. The microprocessor used was a Microchip 18F252 processor. Since 03.2005, <Dripper> became a midi controlled robot. In 2015 we rewrote the entire firmware using an improved 18F2525 processor. The midi note mapping is:

Back to Godfried-Willem Raes index-page


Dripper

Toegegeven, 12 druppels vormen nog geen regen..., maar levend in een regenland en geinspireerd door heel wat recente opdrachten waar telkens water bij kwam kijken (Raindrums, Tip Tap Tubes, op Kling Klang in Rijsel o.m.) moest het er wel ooit eens van komen. Een voorproefje van deze automaat hadden we trouwens al nodig gehad en ook gebouwd voor de teatrale realisatie van 'Lithos', akt 2 uit mijn in de steigers staande Technofaustus opera. Daar worden levensvochten in de humunkulus navel gedruppeld, tot die tot leven komt. De <Dripper>-automaat echter, is uitgegroeid tot een volledig komputergestuurde druppelmachine. Elke druppel kan zowel in volume als in frekwentie uiterst nauwkeurig worden gestuurd. Uiteraard binnen de grenzen van wat terzake in de fysika geldt: wanneer de vloeistoftoevoer per impuls te klein wordt, dan groeit het druppeltje aan tot het zwaar genoeg is om vanzelf naar beneden te vallen. Aan de andere kant, wanneer de impulsduur groter wordt zodat het watervolume groter is dan wat op grond van de oppervlaktespanning in een druppel kan worden samengebald, dan ontstaat een straaltje. Het maximale debiet van dat straaltje is tevens een funktie van de grootte van de uitlaatnippel (3mm diameter).

De druppel-automaat werd opgebouwd als een makkelijk verplaatsbare installatie: hij past geheel in een attachekoffertje. <Dripper> bestaat uit drie afzonderlijk opstel- of ophangbare modules, elk voorzien van een vloeistofreservoir en vier elektrische ventielen (M&M ventielen, met een doorlaat van 4mm en 24V/ 10VA elektromagneten. Type nummer: C249DBL, 0-1Bar). Het reservoir werd vervaardigd uit vierkante messing buis (40x40mm) waarvan de zijkanten met rood koperen plaatjes werden dichtgesoldeerd. De nippels met schroefdraad voor de elektrische ventielen werden met zilversoldeer op het reservoir gesoldeerd. Aan de bovenzijde is een vulgat voorzien met een schroefdraadaansluiting met 1/2" gasdraad. Alle met vloeistof in kontakt staande delen werden uit koper of messing gemaakt zodat korrosie niet te vrezen is. Aan de uitstroomkant werden de ventielen voorzien van konische spuitstukken (nippels) met een uitlaatdiameter van 4mm, waaraan zich de druppels gemakkelijk kunnen vormen.

De openingstijd van de ventielen kan via midi kommandos worden geregeld van 256 microsekonden tot 64 millisekonden. .

Tussen het moment waarop de druppel valt en het moment waarop hij de bodem (of erondergeplaatst obstakel) bereikt verloopt een tijd die eenvoudig kan worden berekend uit: t = SQR(hoogte / 9.81). Willen we dat de druppeltjes precies 1 sekonde doen over hun valtrajekt, dan moeten we de dripper-modules op een hoogte van 9.81meter ophangen. Voor 500ms, wordt dit 2.45 meter. De kracht van de botsing is uiteraard een funktie van de valtijd of hoogte. Het is van belang dit goed voor ogen te houden wanneer de druppels worden gebruikt voor het bespelen van blikjes of trommeltjes bijvoorbeeld. Rekening moet wel gehouden met het typische niet lineaire gedrag van vallende druppels in een bepaald gebied van toevoer: Wanneer de openingtijd van de ventielen heel klein wordt genomen, zijn meerdere openingspulsen nodig vooraleer een hele druppel gevormd kan worden. Vanaf een bepaalde openingstijd wordt het druppelen regelmatig, maar vanzodra de openingstijd weer groter wordt verdwijnt de regelmaat weer. Wanneer de openingstijd groot wordt gemaakt en de herhalingsfrekwentie hoog genoeg is, verschijnt er een lopend straaltje.

Als trommelobjekten zijn de aluminium potjes waarin waxine teelichtjes worden verkocht goed geschikt. De resonatoren kunnen worden gemaakt uit 6/4" PVC installatiebuis voor elektriciteit. Een dergelijke assemblage bouwden we voor de Gentse premiere van <Dripper> op 19 november 2002:

De <Dripper> automaat kan worden gebruikt voor audio art installaties, voor muziekteatervoorstellingen en zal uiteraard zijn vaste stek verwerven binnen het <M&M> ensemble. Zijn eerste publieke optreden ging door op het audio-art festival in Krakow, Polen, op 2 en 3november 2002. Daarna trok <Dripper> naar het noordfranse Rijsel. In Gent werd hij, 9 meter hoog opgehangen in de Tetraeder, voorgesteld op 19 november 2002. Sedertdien maakt <Dripper> vast deel uit van het M&M ensemble en het robotorkest. In december 2003 verscheen hij ten tonele op het festival De Branding in Den Haag, een maand later, januari 2004, op het Adventures Festival, in het Korzo Teater eveneens in Den Haag. In februari 2004 trok het M&M enssemble met <Dripper> en de <player piano> naar Madrid en Aielo de Malferit (Valencia).

In april 2004 werd gestart met het ontwerpen van een rechtstreekse midi sturing voor <Dripper>. Deze maakt gebruik van een PIC controller. De firmware hiervoor werd geschreven door Johannes Taelman. De midi versie werd operationeel in maart 2005. Alle bestaande kode in GMT werd aangepast. Dripper luistert via midi naar Note ON + velo, voor de noten 0 - 15 (note off is niet nodig). De mapping ziet eruit als:

In 2015 herschreven we zelf de gehele firmware voor de processor (nu een 18F2525 type) , gebruik makend van de Proton+ compiler en MPLAB.

 

dr.Godfried-Willem RAES


 

Technical specs (for organizers):

  • Weight: ca. 11kg , including case and cabling.
  • Packed size: 420mm x 160mm x 320mm (mimimum, a case holding the assembled drippers als also available)
  • Height: the dripper can be mounted at any height, provided the connecting cables are long enough.
  • The instrument should be transported in its protective case.
  • Insurance value: 3800 Euro
  • A complete midi implementation table is available.
  • Midi implementation: The automat responds to note-on commands (it does not need note-offs, since the solenoids receive pulses only) with velocity bytes. The note range is 0-15. The default listening channel for this automat is 14 (offset 0), or 15 (offset 1).
  • Electrical connection: 230V ac, 33Watt. Current consumption at rest (no solenoid valves activated) is less than 15mW.

Compositions for <Dripper>

Compositions where <Dripper> is part of the orchestra:

Technical details & circuit drawings:

The physical assembly of the two printed circuit boards, the power supply and the connectors for mains, midi and dripper modules looks like:


Back to Godfried-Willem Raes index-page Go to Godfried-Willem Raes' homepage

To Composers Manual to the Robot Orchestra

Back to Logos main index page To Instrument Catalogue Godfried-Willem Raes

Logbook on construction, maintenance and repair:

2002: Version 1.0 ready. A laptop PC is required for the control of the robot. Here is the original webpage on this design. This version presented on the Krakau Audio Art Festival.

2005: Version 1.1: using a PIC microcontroller with firmware written by Johannes Taelman. Here is the hex dump for the firmware.
27.07-17.08.2011: Design copied for Laura Maes, to be used in her 'Ijspaleis' audio-art project. Buna rings inserted in the valves for silencing. This operation changes the velocity scalings considerably.
18.08.2011: dripper assembly made for Technofaustus silenced with a small Buna ring to make it click-free. Suspended 7 m high in the tetrahedron for use in the old music concert by Xavier Verhelst. Fall time: ca., 844ms.

15.07.2015: Dripper removed from the tetrahedron and mounted in the Logos Lodge for the 'Onmogelijk' production. At first testing, nothing seemed to work anymore... stuck anchors? It came out the PIC (an 18F252) became shaky and didn't run the firmware anymore. Flash memory failure? Thus we decided to rewrite the firmware completely anew, using the Proton Compiler and an 18F2525 chip. Coding could start from the model developed for <Temblo>, taking into account this robot uses the same board. Velocity range aimed at 256us to 32ms for the 1 to 127 midi range. Here is a link to the source code, and here a link to the interrupt handler. As we had trouble again with the dword bug in the Proton Compiler, we based the code on priority timers and a 32-bit loopcounter. We did this before on <Bello>. Timing resolution is now ca. 5 microseconds (loopspeed). For now the velocities are scaled on the range 1 ms to 17.5 ms.

16.07.2015: Extensive testing. Shaky midi observed. Replacing the 4N27 optocoupler with a CNY17-4 type cured the problem. Green MIDI-activity LED added on the input board. Once again we ran into the problem of wear of optocouplers.

23.07.2015: Dripper performed flawless in our 'Onmogelijk' production. However there is a small leak on one of the valves. The buna ring needs replacement.

20.04.2016: Start of the construction of a new case for dripper, such that it can be transported as a whole, without dissassembly. Obviously this is going to be a lot larger and heavier than the attache case we used hitherto.

17.10.2016: Dripper hooked up again, for the performance of 'Lithos' (Technofaustus, act2) with Emilie De Vlam

18.10.2016: There seems to be a problem with the module.. PIC became shaky for some reason.. Midi opto coupler found defective. Needs a revision of the input circuitry. New PIC programmed.

19.10.2016: Made to work for the 'Nat' production, with some temporary patches... It worked!

21.10.2016: Definitive repair performed. Optocoupler changed for a 6N137. Input series resistor now 220 Ohm and pull-up on the output 330 Ohm. Considering to build a new extended version, with many more drips, patterns and autorepeats... The wiring could be simplified a lot by combining the drippers with the microprocessor board. Lights could be added as well.

13.08.2017: Dripper installed on a large tripod for the performance of Godfried-Willem Raes' Third Symphony. Flightcase for <Dripper> painted. Green.., not a choice but we simply had a jar of green in stock and no more money for a much nicer looking RAL5012 blue or so....

15.08.2017: 10 of the 12 anchors found to be frozen. Disassembling the valves and cleaning the anchors (takes about 15 minutes for each valve) from all traces of corrosion, solves the problem. Only on the second dripper valve, we had to replace the complete anchor as a large chunk of metal was rusted away on the side of the valve seating. .Of course if <Dripper> would be used more often, this would not happen. If we would always have used distilled water, chances are that the corrosion problem would not have risen. Maybe we should add a few drops of brass-instrument valve oil to the water. A question though: why did we mount the solenoids with their wires pointing to the underside? Now we turned them 90 degrees. thus making the nipples much better visible. <Dripper> could be improved by mounting small white LED lights close the the orifices and let them flash with the solenoid pulses.

 

Portmapping for the Dripper robot:

  MIDI note PIC port  
Drip 1 0 RA2 module 1
Drip 2 1 RA1 module 1
Drip 3 2 RA0 module 1
Drip 4 3 RA3 module 1
Drip 5 4 RA4 module 2
Drip 6 5 RA5 module 2
Drip 7 6 RB7 module 2
Drip 8 7 RB6 module 2
Drip 9 8 RB5 module 3
Drip 10 9 RB4 module 3
Drip 11 10 RB3 module 3
Drip 12 11 RB2 module 3
Drip 13 12 RB1 solo drip 1 (big can)
Drip 14 13 RB0 uncommitted
Drip 15 14 RC5 uncommitted
Drip 16 15 RC4 uncommitted
Red LED - RC0 watchdog
  - RC3 loopspeed measurement pin
    RC1 pwm output, not used
    RC2 pwm output, not used

 


First published on the web October 19th 2002 by Godfried-Willem Raes

Last update: 2018-01-22