Tutorial Arduino MaxMSP #3 – Arduino MaxMSP Play Sound
Per vedere tutti i tutorial: www.marcopucci.it/category/maxmsp-arduino/
Segui la pagina Tutorial Arduino su Facebook
Materiale utilizzato – Arduino Uno, sensore (uno qualsiasi)
Questo tutorial è stato realizzato in collaborazione con www.robotics-3d.com
Clicca qui per scaricare tutti gli sketch utilizzati nel tutorial Arduino MaxMSP
In questo tutorial mettiamo in play un suono in base al valore di un sensore di Arduino. Questa patch, con alcune modifiche, sarà utilizzata nei prossimi tutorial per realizzare diversi progetti.
Arduino
Colleghiamo un qualsiasi sensore al pin0 di Arduino. Nel mio esempio utilizzerò un sensore di distanza Sharp per far partire un suono in base alla distanza della mano dal sensore.
Aprite e uplodate il file Arduino_invia_dato_a_MaxMSP.ino
ATTENZIONE: se non avete letto i primi due tutorial di Arduino/MaxMSP cliccate su questo link.
MaxMSP
Apriamo il file Max play sound_vuoto.maxpat
Questo file ha al suo interno solamente la parte di comunicazione tra Arduino e MaxMSP.
Inserendo diversi blocchi costruiremo insieme la parte riguardante l’audio.
Se volete tutta la patch completa aprite il file (Max play sound_ok.maxpat).
Prima di iniziare verifichiamo se Arduino e MaxMSP stanno comunicando.
Ripetete tutte le operazioni del secondo tutorial fino a far apparire il valore del sensore di Arduino (clicca qui per leggere il tutorial Arduino invia un dato a MaxMSP.
Sblocchiamo la patch.
Inseriamo il blocco dell’audio (playlist). Click sull’icona a forma di nota musicale sulla sinistra. Si apre una nuova finestra con una libreria di suoni (cliccando sull’icona Play potete sentire i diversi suoni).
Selezioniamo drumLoop e trasciniamolo all’interno di Max.
N.B: Se nella vostra versione di MaxMSP non sono presenti gli esempi musicali trascinate un qualunque file mp3 all’interno del blocco playlist.
Per poter ascoltare il suono dobbiamo collegare questo blocco a un’uscita audio, ovvero le casse.
Click con il tasto destro del mouse sul blocco drumLoop e poi click sulla prima voce in alto Help. MaxMSP aprirà una schermata di aiuto che spiega il funzionamento di ogni singolo blocco.
In questo esempio dobbiamo copiare e incollare nella nostra patch la cassa presente all’interno dell’Help.
Sblocchiamo la patch dell’Help.
Clicchiamo sulla cassa in fondo a sinistra e copiamola nella nostra patch.
Qui sotto la patch dopo aver copiato le casse.
N.B: Eseguite tutti questi passaggi per iniziare a prendere confidenza con MAxMSP.
Nei prossimi tutorial le patch saranno già pronte e potrete modificarle a vostro piacimento.
Colleghiamo le casse.
In modalità sbloccata clicchiamo sul primo pin sotto drumLoop.
Trascinando il mouse si crea un cavo di collegamento che deve essere inserito nel primo pin in alto della cassa.
Max funziona così: i pin sopra i blocchi sono di Input, quelli sotto di Output.
E’ chiaro in questo modo che l’Output del blocco audio deve essere inserito con l’ingresso nelle casse.
Mettiamo in Play.
Blocchiamo la patch e clicchiamo sulla cassa per attivarla (deve diventare blu).
Se clicchiamo su Play del blocco drumLoop il suono parte.
Se clicchiamo sull’icona loop (vicino a Play) il suono andrà in loop.
Se con il mouse clicco e trascino all’interno del blocco creo una selezione (evidenziata in giallo). In questo modo posso ascoltare solamente la parte di audio selezionata.
Inseriamo un interruttore (TOOGLE).
Clicchiamo e trasciniamo dal menù in alto a sinistra il componente Toogle.
Colleghiamo l’interruttore al blocco drumLoop.
Blocchiamo la patch e clicchiamo sul bottone.
Il suono parte e si interrompe al nostro click.
Inseriamo un Object all’interno dell’area di lavoro.
Gli oggetti sono dei componenti che ci aiutano a realizzare le nostre patch. In questo caso dobbiamo scrivere al suo interno il comando che vogliamo fargli eseguire.
Scriviamo nell’oggetto appena inserito > 300 . Stiamo costruendo un controllo sul numero del sensore di Arduino.
Colleghiamo il valore del number di Arduino con questo blocco e la sua uscita con un nuovo Toogle.
Quando il valore del sensore supera la soglia 300 l’interruttore si accende.
Vediamo cosa succede se colleghiamo questo interruttore con quello precedentemente inserito sopra il blocco drumLoop.
Quando il valore del sensore supera il numero 300 si attiva l’interruttore ma la riproduzione dell’audio impazzisce perchè continua ad arrivare un segnale di attivo dal Toogle.
Dobbiamo inserire un blocco che si attiva solamente UNA VOLTA SOLA anche se il valore continua ad essere maggiore di 300.
Inseriamo un altro blocco Object e questa volta scriviamo al suo interno togedge.
Colleghiamolo all’uscita del blocco > 300 e sotto inseriamo due Toogle.
Se il valore del sensore supera la soglia di 300 si accende il primo interruttore, quando il valore diventa più piccolo di 300 si accende il secondo.
Dopo aver provato i funzionamento del blocco togedge eliminiamo i due interruttori sotto.
Colleghiamo le due uscite del togedge all’interruttore che attiva il blocco drumLoop.
In questo modo il suono parte quando la mia mano si posiziona davanti al sensore Sharp (valore del sensore > 300).
Quando tolgo la mano (valore < 300) il togedge disattiva il blocco del suono drumLoop.
I tutorial sono liberamente scaricabili e condivisibili sotto l’etichetta Creative Commons (non è possibile commercializzarli e modificarli)
Scarica il Pdf del tutorial “Play Sound“ |
Ti è piaciuto il tutorial? Se ti va offrimi un caffè… [paypal-donation] |