<Flex>

Godfried-Willem RAES

2002/2016

[Nederlandstalige versie]

 

Robot: 'Flex'

This musical robot consists of an assembly of singing saw or flexatone like soundsources: two blades of hardened stainless steel struck by solenoid driven beaters and bend by a system of heavy duty stepping motors. In this respect it may be considered a realization of Russolo's fifth category in noise makers (intonarumori): sound of metals, stone etc. The lenghts of the singing blades relate to each other as Pi to e, the two most infamous irrational numbers both in physics and mathematics. With the bowing mechanism provided, it constitutes a double singing saw. With the beaters, it's rather a super large flexatone.
The building of this robot was started in 2002 and in its first version, was controlled through a printerport on a laptop computer. Details on the original design, which we had to abandon as printer ports on PC's became obsolete, can be found on the archival webpage for this robot. In 2016 we undertook a complete rebuild of the robot, preserving all possibilities of the first version and adding quite a bit more. All newly added mechanical parts are made off stainless steel now.

The circuitry used is very similar to that developed for our <Rotomoton> robot, although we used a different kind of stepping motor (4-phase, 0.45 Ohm coil resistance, 1.2mH inductance), requiring a much higher current of up to 4.5A per winding. Two stepping motors are use for bending the steel blades and two more steppers for the bow motion. The bows, 70cm in length, are mounted verticaly, facing each other on the central tube of the robot. Here we made use of V-belts with rosin on the flat outside. The belts run over 10 cm diameter aluminium wheels. Positioning of the bows against the blades is achieved with two bi-directional solenoids, PWM-controlled by the bowing PIC-microprocessors. Thus bowing speed as well as bow pressure can be user controlled as separate parameters. Since motor speed can be controlled by the software in the range of 0.5 Hz to 5 Hz, the bowing speed ranges from 160cm/s to 1.57m/s.

The individual beaters for the steel blades are driven by strong solenoids. Musical dynamics are implemented by applying pulse width modulation techniques in the driver circuits. However, the dynamic range is different from blade to blade and also depends on the amount of bending applied by the stepping motors.

<Flex> uses five microprocessors, all of them Microchip PIC type 18F2525. Two processors are used for the bows, two for the trapezoidal threads and one for the beaters and lights.
The instrument is mounted in a TIG-welded triangular structure with three large and sturdy wheels, 40 cm in diameter each. The instrumental part is mounted on the wheel base with springs.

The pictures below are taken by Moniek Darge, during the first construction in our workshop, 2002. They are arranged in chronological order such that you can follow the process of the making visually.

These are some pictures taken during the rebuild in 2016:

Midi implementation (Version 2.0):

Flex listens to midi channel 12 (0-16) [13 if counting 1-16]

Note numbers

BEATERS

function velocity

 

72 beater on inside of front of Pi Saw 1-127  
73 beater on outside of front of Pi Saw 1-127  
74 beater on inside of backside of Pi Saw 1-127  
75 beater on outside of backside of Pi Saw 1-127  
76 beater on inside of front of e-Saw 1-127  
77 beater on outside of front of e-Saw 1-127  
78 beater on inside of back of e-Saw 1-127  
79 beater on outside of back of e-Saw 1-127  
BOW PUSHERS      
60 pulse and hold pushers moving frontbow to Pi-Saw 1-127  
  release pusher, holding bow in a central position 0 sets bow pressure to 0
61 pulse and hold pushers moving frontbow to e-Saw 1-127  
  release pusher, holding bow in a central position 0 sets bow pressure to 0
62 pulse and hold pushers moving backbow to Pi-Saw 1-127  
  release pusher, holding bow in a central position 0 sets bow pressure to 0
63 pulse and hold pushers moving backbow to e-Saw 1-127  
  release pusher, holding bow in a central position 0 sets bow pressure to 0
64 center frontbow such that it does not touch any saw blade 0  
65 center backbow such that it does not touch any saw blade 0  
BOWS      
48 frontbow motor, turn clockwize 1-127 velocity controls motor speed
  frontbow motor, stop turning 0  
49 frontbow motor, turn counterclockwize 1-127 velocity controls motor speed
  frontbow motor, stop turning 0  
50 backbow motor, turn clockwize 1-127 velocity controls motor speed
  backbow, stop turning 0  
51 backbow motor, turn counterclockwize 1-127 velocity controls motor speed
  backbow, stop turning 0  
KEY PRESSURE      
48,49   0-127 controls the bow pressure for the front bow
50,51   0-127 controls the bow pressure for the back bow
       
       

BENDING MOTORS

midi controller nr

  parameter  
1

bending controller for position of Pi-Saw thread motor

0= fully stretched (lowest pitch)

100 = fully bent (highest pitch)

0-100

will be changed to use msb, lsb
2

bending controller for position of e-Saw thread motor

0 = fully stretched (lowest pitch)

100 = fully bent (highest pitch)

0-100  
3 speed of rotation for the Pi motor    
4 speed of rotation for the e motor    
20 msb Pi-saw position    
21 msb e-saw position    
52 lsb Pi-saw position    
53 lsb e-saw position    
Program change not implemented    
Pitch bend not implemented    

 

Back to Logos-Projects page : projects.html Back to Main Logos page:index.html To Godfried-Willem Raes personal homepage... To Instrument catalogue Pictures from M&M performances using Flex

Nederlands:

Robot: <FLEX>

<Flex> behoort tot de kategorie robots met niet precies bepaalbare, of -preciezer gesteld- voorspelbare, toonhoogte. Het klankopwekkingsprincipe is hetzelfde als dat wat ten grondslag ligt aan zowel de zingende zaag als aan de flexatone: gebogen veerstalen platen die gestreken (zingende zaag) of aangeslagen (flexatone) worden, waarbij de toonhoogte afhangt van de mate van buiging van de platen. Roestvast staal of veerstaal is hiervoor, vanwege de grote hardheid, het meest geschikte materiaal. Net zoals <ThunderWood> kan ook deze robot gezien worden als een realisatie van een geluidskategorie in de reeks intonarumori van Luigi Russolo, met name in dit geval de 5e groep (metaalgeluiden).

De beide uit roestvast staal gemaakte klankbladen waarmee <Flex> is opgebouwd, kunnen zowel worden aangeslagen als gestreken. Daartoe wordt elk zaagblad uitgerust met niet minder dan 4 elektromagnetische kloppers en van een motorgestuurd aanstrijkmechanisme. De strijksnelheid zowel als de ritmiek kunnen perfekt worden gestuurd. Voor de strijkstokken gebruikten we stappenmotoren voorzien van een loopwiel met een diameter van 100 mm. De motorsnelheid kan gestuurd worden tussen 0.5 en 5 omwentelingen per sekonde. Dat brengt een regelbare boogsnelheid met zich van 0.16m/s tot 1.57m/s. De beweging van de boog wordt gestuurd met per boog een enkele zware bidirektionele elektromagneet. Hierdoor kan elke boog zowel tegen het Pi- als tegen het E-blad worden gedrukt en gestreken. Worden beide magneethelften geaktiveerd, dan keert de boog terug naar de middenstand en raakt hij geen van beide bladveren. Aangezien we twee strijkstokmechanismen voorzagen, is het perfekt mogelijk beide bladen tegelijkertijd aan te strijken, maar ook, om eenzelfde zaagblad met twee bogen tegelijkertijd te strijken, wat vaak de produktie van multiphonics voor gevolg heeft, ook al is het resultaat in dit geval niet helemaal voorspelbaar noch betrouwbaar.

De voedingen voor flex zijn erg uitgebreid, vooral vanwege de grote vermogens nodig voor de aansturing van de stappenmotoren. In totaal omvat de voeding 5 boards. Een eerste board verzorgt de voeding van de on-board logika: 3 afzonderlijk geregelde 5V spanningen. Een tweede, zorgt voor een negatieve, een derde voor een positieve spanning voor de kloppers en de pushers. Deze twee spanningen worden uit een enkele transformator betrokken. Het vierde en vijfde board, identiek van opbouw, zijn voor de voeding van de stappenmotoren.

Voor de bipolaire spanning van de pushers en de beaters, bouwden we voor de positieve spanning volgende op zich weinig originele 10 Ampere voeding op:

 

 

Bouwdagboek (vanaf 2016 in het engels):

Omdat ons vaak wordt gevraagd hoeveel werk en tijd kruipt in, en nodig is voor, het bouwen van een muzikale robot, hebben we -zoals we het eerder deden voor <Belly>, ook voor <Flex> een beknopt bouwdagboek bijgehouden. De ervaring met Belly leerde ons bovendien dat het bijhouden van zo'n dagboek ook erg nuttig is wanneer naderhand bepaalde details moeten worden bijgesteld of onderdelen vervangen.

 

Afmetingen & andere technische specifikaties: (voorlopig)

Design en konstruktie: dr.Godfried-Willem Raes

Atelier medewerkers:

Music Composed for <Flex>:


(Terug) Naar logos-projekten:

projects.html

(Terug) Naar Logos' index-pagina:

index.html

Naar Godfried-Willem Raes official web page... Naar katalogus instrumenten

gebouwd door

Godfried-Willem Raes

Pictures from M&M performances using Flex

Robody Picture with <Flex>:

Emilie De Vlam en Godfried-Willem Raes (foto Bart Gabriel), Flex version 1.0, 2002.

Some pictures from performances with Flex version 1.0.

 

Last update: 2016-04-26 by Godfried-Willem Raes


Service manual:

Flex can be taken apart for servicing into following modules:

1.- Overview:

 

2.- Wiring diagram for adressing of flex components:

Source code for the front bow PIC controller

Source code for the back bow PIC controller

Source code for the Pi-blade PIC controller

Source code for the e-blade PIC controller

Circuit diagram for the motor control boards: (<Flex> uses four of these boards)

These are the boards for the movement of the Pi and e blades:

These are the boards for the two bow motors:

3. Calculations for trapezoidal threads:

Thread length: 100 cm, diameter 12 mm. Material: Stainless Steel.

Total number of revolutions: 335 (thread speed), or 67000 stepping motor full steps.

Usefull length in <Flex> = 70 cm or 234 revolutions. (= 46800 stepping motor steps)

So, at 5 Hz rotation speed (= 5x60=300 rpm), we have a linear displacement velocity of 1.5 cm/s. In order to get a speed of 1 second for the full 70 cm traject, we would need a rotational speed of 234 Hz (= 14000 rpm). However, the maximum motor-speed will be ca. 1500 rpm, so the linear movement will be limited to 7.5 cm /s.

4. Solenoid data:

Bidirectional solenoids: August Laukhuff, trakturmagnet 24V, Force 24N.

5. Bow belts: GATES QPIII XPZ 1800

6. Stepping motors: MAE HY200 3424 470 A8. Current: 4,7A/phase, 8-wires. Holding force: 193Ncm. In full-step mode the motor does 200-steps/rotation Hence, for 60 rpm we need a clock frequency of 200 Hz. For 1500 rpm we need a clock frequency of 5000 Hz

7. Power supply modules: 4 x Elipse CP10.481. 5 A / 260 W each. (total cost: 673 Euro). Datasheet.