| kro — 2009-12-02 19:54:14 |
je fabrique un instrument de musique un genre de basse électronique percussive
je compte mettre 2 piezos (percussion main droite) et 3 capteurs de position (mélodie sur le manche, main gauche)
ça ferait 7 câbles à tirer jusqu'à l'arduino du coup (1 5v, 1 masse, 2 piezo et 3 cv) ça fait un câble de + qu'un câble midi, dommage (j'avais prévu le coup comme ça à la base avec un boitier arduino + carte son externe) je pensais utiliser 2 entrées de ma carte son pour les piezos et 3 analog in arduino pour les capteurs
traitement sonore dans max msp
l'alternative à laquelle je pense serait d'utiliser un arduino bluetooth intégré dans le corps de l'instrument comme ça pas de galère de câble
quelqu'un à testé bluetooth ? temps de latence ? stabilité ? portée ?
du coup je connecte logiquement mes piezos direct à l'arduino mais les tests que j'ai effectué avec duemilanove donne pas grand chose via maxuino les valeur d'analog in sont justes étranges je trouve pas trop d'info sur maxuino + piezo en fait
si quelqu'un à une idée, c'est merci
|
| kro — 2009-12-02 23:30:16 |
la gueule de la bête :

c'est plus serré que ça en a l'air je vais peut-être réduire mes ambitions et me contenter de 2 capteurs de position et d'un câble midi ça serait plus simple à tous les niveaux ...
|
| kro — 2009-12-05 01:56:52 |
je vais rester sur une idée d'ukulélé wireless :cool: en plus d'être sexy ça m'offre plus de possibilités
je pense quand même qu'arduino bluetooth est relativement fait pour ça, mais sinon on m'a conseillé xbee je capte pas tout sur le site mais ça a l'air un poil plus cher quand même
quel serait l'intérêt par rapport à un arduino bt ?
|
| emoc — 2009-12-05 11:32:28 |
Hello,
Je crois que le xbee revient moins cher avec arduino bluetooth, il te faut : un arduino bt + 1 clé usb bluetooth : 160$ avec le xbee : 2 modules xbee, 1 kit adaptateur xbee pour arduino, 1 cable usb/ttl, 1 arduino = 2 x 23 + 10 + 20 + 30 : 106$
arduino bluetooth : http://www.sparkfun.com/commerce/produc … ts_id=8255
xbee module : http://www.adafruit.com/index.php?main_ … cts_id=128 xbee adapter kit : http://www.adafruit.com/index.php?main_ … cts_id=126 usb ttl 232 cable : http://www.adafruit.com/index.php?main_ … ucts_id=70 arduino atmega : http://www.adafruit.com/index.php?main_ … ucts_id=50
Sur l'utilisation du xbee avec arduino, pas mal de choses ici : http://www.ladyada.net/make/xbee/
En pièce jointe un article de Tom Igoe sur l'utilisation de xbee (sans arduino!)
|
| kro — 2009-12-05 17:57:15 |
merci pour cette réponse
j'ai déjà du bluetooth côté ordi en fait
ce que je comprends avec xbee : dans mon ukulélé j'aurais besoin de glisser un arduino duemilanove + un arduino xbee shield + un xbee module et côté ordi un xbee adapter kit + un usb ttl 232 cable + un autre xbee module
j'ai bon ?
ça me simplifie pas le schmilblick j'ai l'impression je pensais pouvoir gagner en consommation électrique mais vu que j'aurais quand même un arduino dans l'ukulélé ça doit consommer presque autant au final et surtout j'ai pas trop de place dans l'instrument, j'ai déjà façonné le corps en bois
du coup je vais quand même faire simple et commander le bt je crois
|
| kro — 2009-12-05 18:12:44 |
quoique si je me réfère au scéma de la 2e page de l'article d'Igoe, j'ai l'impression qu'il branche direct l'accéléromètre au module xbee
donc quid de l'utilité d'un arduino dans ce cas ?
je pourrais brancher direct capteurs de positions et piezzi au module xbee et alimenter avec 2 piles, ça me ferais moins de bordel embarqué et moins de conso électrique ?
|
| emoc — 2009-12-05 18:53:33 |
kro a écrit:et côté ordi un xbee adapter kit + un usb ttl 232 cable + un autre xbee module
Ah oui, j'avais oublié cet adapter... Ce qui revient à 116$ + quelques composants
Le xbee shield n'est pas obligatoire, tu peux relier l'adaptateur directement (d'après http://www.ladyada.net/make/xbee/arduino.html ):

Sinon comme shield, il y aussi ces kits : http://www.nkcelectronics.com/freeduino … d-kit.html
Bon c'est vrai qu'en fin de compte, ça fait pas mal de bricole...
kro a écrit:j'ai l'impression qu'il branche direct l'accéléromètre au module xbee
Oui, je suppose que l'accéléromètre fournit des signaux adaptés au xbee, à priori les xbee ont "9 input/output lines for analog and digital IO" ce qui permet de relier directement pas mal de choses, si ça te suffit pas besoin d'arduino (voir http://www.makingthings.com/documentati … -all-pages )
|
| matohawk — 2009-12-06 11:05:25 |
Le xbee n'a pas des meilleures propriétés par rapport au bluetouth : genre portée du signal, débit plus constant...
|
| kro — 2009-12-06 15:29:04 |
lecture instructive !
ça m'aurait l'air de fonctionner sans arduino du coup merci emoc
mais je vais utiliser le bt quand même, parce que j'ai plus l'habitude d'arduino et que j'aurais pas besoin de boitier supplémentaire (la mobilité et la disponibilité des ports usb est un point important vu le bordel que je me trimbale à chaque live)
merci à vous je commande le bt pour le moment puis je vous tiens au jus
|
| kro — 2010-02-02 04:51:42 |
argh
ça y est j'ai tout construit
je fais des essais depuis hier mais les piezos capteurs de chocs me donnent du fil à retordre.
schéma :

j'ai trouvé deux sortes de codes pour gérer les piezo knock sensors
http://arduino.cc/en/Tutorial/Knock
et
http://todbot.com/blog/2006/10/29/spook … l-arduino/
là il s'agit d'estimer la force de frappe en fonction du temps que met l'onde à redescendre
 ce que je trouve peu logique car on aura plutôt une notion de la fréquence que de la vélocité d'ailleurs dans mes tests c'est vraiment pas convainquant
du coup je suis pour l'instant sur le premier système : je crois que le problème vient surtout d'un manque de sensibilité (la vitesse de communication serial ne permet pas une analyse externe du signal, je loupe 3 knocks sur 4) sur le duemilanove en ne branchant qu'un piezo avec sa résistance les chocs électriques que j'envoie oscillent entre 1 et 20 (sur 1024) et ça fonctionne mais sur le bluetooth j'ai un gros buzz (même en débranchant les capteurs de positions) et toujours des valeurs entre 0 et 10 ce qui m'empêche de réduire le threshold en dessous de 10, du coup très peu de sensibilité (pourtant en branchant en même temps le piezo à l'entrée de ma table de mix le buzz n'est pas si énorme, à moins qu'il ne soit pas dans les fréquences audibles)
je me demande si il y aurait un méthode pour réduire ce buzz que je n'ai pas sur le duemilanove (par ex relier la masse qui alimente l'arduino avec celle que sort l'arduino serait une très mauvaise idée ? je m'y connais pas tant en électricité)
|
| kro — 2010-02-02 15:35:42 |
kro a écrit:pourtant en branchant en même temps le piezo à l'entrée de ma table de mix le buzz n'est pas si énorme, à moins qu'il ne soit pas dans les fréquences audibles
après enregistrement et analyse du signal (en audio) j'ai bien un gros buzz de 50 hz voilà un impact typique de piezo noyé dans le buzz :

pas si gros le buzz en fait : le volume est augmenté 16x à peu prés
ce buzz est présent même avec l'arduino éteint et les capteurs de position débranchés et augmente quand je m'approche de la bécane :|
|
| Staross — 2010-02-02 22:30:07 |
Hu, j'ai toujours voulu faire la même chose, mais je me suis jamais lancé...
Tu veux utiliser quoi comme capteurs de position ?
Sinon pour le buzz à 50Hz c'est probablement un problème de terre mais je peux pas t'en dire plus. Par contre ce que tu peux faire c'est filtrer ton signal, soit avec un band-stop centré à 50 Hz soit avec un passe-bas.
Ici (http://www.cannibalcaniche.com/forum/do … hp?id=5317) j'avais utilisé un capteur piezo, mais directement branché à la carte son. Et je n'utilisai pas de détection de pique mais directement le son de la frappe comme entrée dans un synthé à base de modélisation physique.
|
| kro — 2010-02-02 23:09:21 |
Staross a écrit:Tu veux utiliser quoi comme capteurs de position ?
http://www.interface-z.com/produits/cs1 … souple.htm
Staross a écrit:Sinon pour le buzz à 50Hz c'est probablement un problème de terre mais je peux pas t'en dire plus. Par contre ce que tu peux faire c'est filtrer ton signal, soit avec un band-stop centré à 50 Hz soit avec un passe-bas.
ya pas de terre c'est un truc à pile (3x LR6)
le truc c'est que je pense pas que le buzz soit généré par le piezo mais carrément par l'arduino genre j'ai le buzz même en branchant seulement une résistance entre la masse et l'analog in (des valeurs jusqu'à 8 en tout cas)
du coup je pense pas pouvoir filtrer ça
j'ai l'impression d'être mal barré là...
peut-etre en amplifiant un chuia le signal avant d'entrer plutôt mais j'ai pas trop de place physiquement c'est très serré et j'ai que mon alim de 3 piles je vais chercher un plan de mini preamp
sinon au pire je prend le duemilanove et je tire un usb de 5m :/
|
| Staross — 2010-02-02 23:54:45 |
Le problème est certainement l'absence de terre quelque part, mais je pige pas très bien ces trucs :
http://en.wikipedia.org/wiki/Ground_loop_(electricity)
Si c'est un buzz à 50Hz ça vient certainement du réseau éléctrique. Comment est-ce que tu branche l'arduino à ton ordi pour enregistrer le signal que tu montre au dessus ?
Le filtrage, tu peux le faire numériquement sur l'ordi, le signal au dessus est certainement utilisable tel quel.
|
| kro — 2010-02-02 23:55:16 |

j'ai peut-être trouvé mon bonheur faut encore que je trouve 4 condos et 2 transistors et que j'arrive à faire rentrée tout ce monde dans 5 cm²
|
| kro — 2010-02-03 00:04:00 |
Staross a écrit:Le problème est certainement l'absence de terre quelque part
peut-etre un appareil dans ma chambre alors, mais c'est pas de ce côté qu'il faut corriger le problème
Staross a écrit:Si c'est un buzz à 50Hz ça vient certainement du réseau éléctrique. Comment est-ce que tu branche l'arduino à ton ordi pour enregistrer le signal que tu montre au dessus ?
arduino bt = bluetooth ça me botte bien un truc wireless, je pensais pas que ça serait plus galère mais arduino bt a l'air un peu sujet aux parasites ambiants on dirait (le buzz augmente quand j'approche mon bras genre - je dois être branché à la terre :o)
Staross a écrit:Le filtrage, tu peux le faire numériquement sur l'ordi, le signal au dessus est certainement utilisable tel quel.
en fait non, le débit serial est pas suffisant pour passer un signal audio :/ si j'envoie toute les valeurs que je peux je loupe déjà 3 frappes sur 4, donc de là à traiter de l'audio d'après ce que je comprends (faut me corriger sinon) arduino peut lire plus de valeurs si il est pas occupé à les envoyer à l'ordi, du coup le traitement doit plutôt se faire en interne et j'envoie seulement les valeurs qui m'intéresse à l'ordi (via serial - bluetooth)
|
| kro — 2010-02-03 00:16:09 |
Staross a écrit:Si c'est un buzz à 50Hz ça vient certainement du réseau éléctrique. Comment est-ce que tu branche l'arduino à ton ordi pour enregistrer le signal que tu montre au dessus ?
j'avais pas bien lu ta question
avec des pince crocos j'ai branché le piezo à un jack en entrée micro en + de l'arduino le buzz pourrait etre dû à la carte son mais en fait si je branche juste le piezo à la carte (en débranchant de l'arduino donc) le buzz et 10x plus faible cqfd
en plus que l'arduino soit alimenté ou pas ne change rien, c'est peut être l'antenne bluetooth qui pourrait être mal isolée ou un truc du genre
|
| Staross — 2010-02-03 11:12:46 |
Ok, merci des reponses, si je me lance dans un truc similaire je prendrai un arduino usb pour voir si ca va mieux...
|
| kro — 2011-02-04 18:11:23 |
j'ai à peu près terminé ce projet maintenant je colle des sons là dessus
mais j'ai laissé tomber le bluetooth (usb now) si c'était à refaire j'essaierai avec des xbee
j'ai pas mal galéré pour fabriquer un preamp à knock qui marche (preamp + redressement + lissage) voila ce que donne le schéma :
 il faut adapter les resistance 1 et 2 en fonction de la sensibilité recherchée
un arduino shield pour 2 piezos (attention le shield est à l'envers pour gain de place, composants en dessous, contre ceux du arduino)

le code donne un truc dans ce goût là pas celui que j'utilise : l'évitement du crosstrigger est géré de manière assez tordues dans mon cas (vu que les piezos collés au même élément) pour un piezo individuel c'est plus simple :
|