martedì 12 marzo 2013

TAMAGOTCHI MANNARO

Con questo post voglio presentare uno dei miei droni meglio riusciti e più sfruttati in un contesto live: il Tamagotchi Mannaro
Il nome deriva da un personaggio creato da un mio amico scrittore e illustratore, Alberto Corradi, che gentilmente mi ha permesso di riprodurlo incidendolo nel rame e di usarlo come superficie di contatto. Questo strumento infatti è stato realizzato unendo due circuiti che ho già presentato su questo blog: la Cracklebox e l'Atari Punk Console.


I contatti della Cracklebox sono collegati a vari punti del corpo del personaggio, mentre tramite un interruttore è possibile anche inserire l'oscillatore dell'APC, controllabile sia tramite potenziometri che con punti di contatto. 
In genere a me piace aggiungere un riverbero e sperimentare anche con altri effetti, magari tramite il mio Mini Kaoss Pad, rendendo ancora più varia e articolata la performance live. Ecco un esempio:

sabato 9 marzo 2013

ATARI PUNK CONSOLE

Ecco un altro post dedicato a un dispositivo basilare per chi vuole sperimentare con l'elettronica nel contesto audio: l'Atari Punk Console (detta anche APC). 


La storia dell'APC è particolare perché non è nata in un ambito di musica sperimentale; essa ha fatto la sua prima comparsa come circuito didattico, lo "Stepped Tone Generator", descritto nel libro "Engineer's Mini-Notebook - 555 Circuits" di Forrest M. Mims III

Questo generatore è un semplice oscillatore a onda quadra del quale è possibile controllare la frequenza e la lunghezza dell'impulso.
 
Il circuito è stato in seguito modificato da Kaustic Machines aggiungendo un'uscita audio a -4db, e dopo essere stato ribattezzato col nome con cui è ora conosciuto, è diventato uno dei circuiti audio sperimentali più diffusi.


Come la Cracklebox precedentemente descritta, l'APC si basa su un circuito molto semplice e realizzabile da chiunque abbia quel minimo di manualità richiesta per fare una manciata di saldature. L'Atari Punk Console però non utilizza componenti di difficile reperibità, essa utilizza un NE556 (o due NE555) che è un componente economico e reperibile ovunque e che fa di questo circuito praticamente una tappa forzata per chi ama costruirsi i propri suoni ed effetti lo-fi. Ecco un esempio di Atari Punk Console che ho costruito:


Si può introdurre una variante utilizzando fotoresistenze al posto di uno o entrambi i potenziometri che controllano la frequenza e la larghezza dell'impulso. Ho utilizzato APC così modificate in un paio di progetti sperimentali, che descriverò nei miei prossimi post, dei quali vi lascio però qui un'anteprima.


venerdì 25 gennaio 2013

UN CARILLON AUTOGENERATIVO CON ARDUINO

Dopo anni passati a programmare microcontrollori Motorola 68HC11 o Microchip PIC per progetti di robotica o musicali, la scoperta di Arduino è stata come una ventata di ossigeno fresco.



Questo incredibile prodotto italiano è ormai un paradigma consolidato a livello mondiale per quanto riguarda l'hobbistica e la prototipizzazione di circuiti digitali. Il numero di progetti che lo utilizzano, le risorse disponibili in rete, i cloni e le varie espansioni disponibili (shield) ne sono la prova.

Dopo qualche prova per prendere confidenza con l'ambiente (non serve molto comunque) ho deciso di realizzare un progetto tutto mio, e partendo dall'idea di realizzare un giocattolo musicale per mia figlia, ho realizzato una buona base per sperimentare con algoritmi per musica autogenerativa ed è nato questo carillon autogenerativo.

Specifiche

Il carillon consiste di due voci (basso e melodia) generate casualmente sulla base di una scala pentatonica, anch'essa scelta casualmente.

La sequenza di base sono 4 battute da 4/4.

Il basso si muove sul quarto di nota, su un pattern di 2 battute ripetuto due volte.

La melodia è composta con ottavi di nota ed eventualmente pause, su un pattern completo di 4 battute. La melodia si muove ad almeno un'ottava sopra al basso.

Il primo giro di basso avviene senza la melodia, che entra in una delle seguenti battute, in base a una scelta casuale.

Dopo ogni giro completo di 4 battute, l'algoritmo decide se rigenerare le note del basso o della melodia o di entrambi.

La pressione di un pulsante esterno genera un interrupt che resetta l'algoritmo, impostando una nuova scala e un nuovo tempo.

Le scale pentatoniche memorizzate sono 24, 12 maggiori e 12 minori.

Il tempo di esecuzione può assumere uno dei valori preimpostati: 60, 90, 120, 180.


Dettagli Tecnici


All'avvio del software, il generatore casuale viene inizializzato con il valore presente nell'ingresso analogico 0 di Arduino. Se non vi è collegato nulla, il seme viene impostato casualmente in base al rumore, altrimenti è possibile impostare tramite un potenziometro uno specifico valore per il seme.

Uno switch software, da abilitare in fase di compilazione, aggiunge un ulteriore grado di variabilità, permettendo in fase di esecuzione l'alterazione momentanea di una nota della melodia di un semitono (viene eseguito il grado corrispondente della scala pentatonica immediatamente precedente o successiva a quella corrente).

La casualità delle variazioni nella struttura della melodia non è uniforme, ma è possibile impostare un peso per renderla più o meno variabile. Ad esempio mentre la scelta della scala e del tempo è equiprobabile, la probalitità che la melodia venga attivata dopo il primo giro di basso è del 75%, mentre la probabilità che una nota venga alterata di un semitono è del 10% (se l'alterazione è abilitata). Infine la probabilità che dopo un giro il basso o la melodia venga ricreata è del 50%. Tutti questi pesi sono costanti che possono essere impostate al momento della compilazione.

La generazione del suono avviene tramite due uscite PWM a ciu è collegato un trasduttore piezo. E' stata utilizzata la Tone Library by Rogue Robotics Open Source Code:

http://code.google.com/p/rogue-code/wiki/ToneLibraryDocumentation

Un'uscita digitale varia in base al tempo di esecuzione, potendo far lampeggiare dei LED a tempo di musica.

Tre uscite invece sono configurate per pilotare un LED RGB il cui colore continua a variare in base al tempo e la frequenza delle note suonate. 

Futuri Sviluppi Sperimentali

Sostituzione della generazione interna dei suoni con un'uscita MIDI in modo da utilizzare hardware musicale esterno.

Uscite digitali per pilotare solenoidi o servomotori a tempo di musica.

Implementazione di un approccio microtonale.





Scaricate il progetto qui: autocarillion_20160711.zip

IMPORTANTE: la Tone Library non è stata aggiornata per gli IDE Arduino successivi allo 0023. Per risolvere i problemi di compilazione negli ambienti di sviluppo più recenti basta editare il file Tone.cpp e sostituire l'import wiring.h con Arduino.h, come discusso anche nel forum Arduino qui. Oppure potete scaricare la mia versione già modificata qui

mercoledì 16 gennaio 2013

CRACKLEBOX

Con il termine Cracklebox (o Kraakdoos) si intende un tipo particolare di dispositivo audio sperimentale introdotto da Michel Waisvisz a metà degli anni 70. Michel Waisvisz insieme a Reed Ghazala può essere considerato a tutti gli effetti il pioniere del circuit bending e infatti la Cracklebox è un chiaro esempio applicativo di questa tecnica.
La particolarità di questo strumento consiste nel fatto che la generazione del suono dipende esclusivamente dall'interazione con il corpo umano, il quale è parte del circuito stesso. Non ci sono pericoli di rimanere fulminati in quanto questo dispositivo (come tutti quelli del contesto del circuit bending) è alimentato con una batteria. Dipendendo dalla conduttività locale della pelle umana, i rumori gracchianti e striduli (crackle) prodotti variano da persona a persona (e anche nel tempo), rendendo così le performance sempre uniche tra loro. Per un po' più di storia e per guardare meglio cosa c'è dentro consiglio di leggere qui e qui.


Crackle Box


Il cuore del circuito è uno dei primi amplificatori operazionali, il 709, e il suo funzionamento dipende proprio da questo specifico modello (ormai fuori produzione e di difficile reperibilità). Se si usa un operazionale attuale, anche compatibile al 100%, il circuito non può comunque funzionare come dovrebbe: tutti gli operazionali moderni hanno integrati dei sistemi di compensazione che li rendono troppo stabili e insensibili agli offset e derive di corrente causate dall'interazione col corpo umano, che amplificate producono proprio i rumori che vogliamo.



Se si riesce a recuperare un operazionale 709, gli altri componenti sono molto comuni e la realizzazione del circuito è abbastanza semplice e veloce.
Altrimenti avendo molti più soldi da spendere si può recuperare una Cracklebox usata degli anni 70 o una replica moderna attualmente ancora in vendita, aggiudicandosi così anche un oggetto da collezione. 

Ma non serve spendere molto per avere queste sonorità. Chi ha sperimentato con il circuit bending avrà già scoperto molti casi in cui il semplice tocco di alcuni contatti di un circuito stampato può causare variazioni di pitch, glitch o suoni striduli dovuti a loop di feedback, ingresso di correnti parassite o saturazioni.

Si possono anche progettare ad hoc circuiti di semplici amplificatori molto sensibili e oscillatori controllati in tensione e dotarli di contatti metallici in modo da interferire con essi toccandoli. Questo approccio è utilizzato ad esempio in alcuni prodotti di BugBrand





Io sono riuscito a reperire un paio di 709, con i quali ho realizzato due circuiti Cracklebox. Uno l'ho inserito nel mio sistema modulare sperimentale, The Sound Destruction Unit, mentre il secondo l'ho abbinato ad una Atari Punk Console creando il mio Tamagotchi Mannaro. Questi miei strumenti sperimentali e l'Atari Punk Console saranno descritti dettagliamente nei prossimi post, intanto vi lascio qualche anteprima.








Vi consiglio infine di leggere il mio precedente post sul circuit bending qui.