projet d'accordage automatique de guitare éléctrique

Bonsoir à tous! Voilà je suis étudiant en 2e année de CPGE et pour les concours, il y a une épreuve de Travaux d'Initiative Personnelle Encadrée ( en gros un projet qu'on doit présenter et expliquer en 10min ). J'ai choisi de travailler sur un accordeur automatique de guitare électrique. Ce sujet m'a été inspiré par la Robot Guitar de chez Gibson ( une démo ici: http://www.youtube.com/watch?v=atKD-lNB27U ). Ce que je vais produire sera évidemment moins abouti et sur une seule corde. Cela consistera en capter la fréquence de la corde grâce aux micros déjà dans la guitare et à faire s'actionner un moteur et un réducteur qui tournera la "clé" soit pour tendre soit pour détendre la corde afin d'arriver à la fréquence désirée. J'ai été voir dans un magasin de musique et c'est là qu'il mon dit que le système Arduino pouvait m'être utile pour "transformer" la fréquence reçue en un mouvement de rotation du moteur. Mais étant un plus-que-novice dans tout ce qui est programmation ou électronique, j'aurais besoin de votre aide, d'une pour choisir quelle carte correspondrait le mieux pour ce que je veux réaliser, et ensuite pour m'aider à comprendre comment l'utiliser ( même si ça doit être expliqué sur le site ). Si vous avez des questions, je suis tout ouï =)

En effet, vaut mieux être tout ouïe pour accorder ta guitare. Comment comptes-tu faire pour analyser la fréquence de la corde? Quel type de moteur? C'est intéressant.

ton projet TIPE peut être très intéressant, mais il te faut quand même quelque notions...

en gros, tu as juste à faire une mesure de fréquence, suivie par un asservissement de moteur...

Mais tu risques de te heurter à certaines contraintes (plage de fréquences valides, harmoniques, puissance moteur...) Je suppose que tu as déjà une bonne connaissance de la théorie des cordes, ça devrait t'aider à appréhender les pièges d'une corde de guitare (car il y en a)...

mesurer une fréquence n'est pas un souci pour l'arduino, la régulation d'un moteur non plus, le tout est de bien réfléchir sur les filtres dont tu auras besoin.

Premier indice : oublie les entrées analogiques, et réfléchis sur les timers et INTs...

Mais comme tu dis que tu es un super-novice en prog, je ne comprends pas trop pourquoi tu choisis un sujet autour d'un µP, car ça va te demander d'étudier lourdement le fonctionnement d'un µP...

Tout d'abord, merci pour vos réponses =) Je vais répondre à vos questions et ensuite j'essayerai d'éclaircir un peu plus ma pensée, de dire comment je vois les choses.

Comment comptes-tu faire pour analyser la fréquence de la corde?

Au début je pensais utiliser un accordeur électronique classique, mais je ne voyais pas ensuite comment traiter l'information reçue, c'est pour ça qu'un des vendeurs m'a aiguillé sur Arduino.

Quel type de moteur?

Je dispose d'un moteur à courant continu qui fonctionne de 6 a 24V, et qui a une puissance suffisante pour faire tourner les clés de ma guitare x) ( je pense mettre le système sur la corde de La, comme c'est la référence... )

en gros, tu as juste à faire une mesure de fréquence, suivie par un asservissement de moteur...

Oui c'est ce à quoi je pensais, théoriquement ça ne DEVRAIT pas poser de problème, c'est pratiquement que ça devient plus tendu ( sans mauvais jeu de mots ^^ )

Mais comme tu dis que tu es un super-novice en prog, je ne comprends pas trop pourquoi tu choisis un sujet autour d'un µP, car ça va te demander d'étudier lourdement le fonctionnement d'un µP...

Alors le thème officiel imposé cette année est "prévision" ( l'an dernier c'était "mobilités et mouvements" ), par conséquent il fallait trouver un sujet qui tournait un minimum autour de l'automatique/asservissement. Je ne trouvais pas vraiment de sujet qui sois à la fois original et que me branchait, jusqu'à ce que je me rappelle de cette fameuse "robot guitar" et comme je suis passionné de musique ( et de guitare en particulier ) et bien je me suis lancé là dedans, en me disant que c'était possible. J'insiste bien sur le fait que je ne rêve pas de mettre au point en 5 mois ce que Gibson a mis un certain nombre d'année à finaliser, mais simplement un système qui pourrait en garder le principe mais en beaucoup plus simple, sur une seule corde, et avec un résultat moins précis et plus encombrant. Je ne veux pas que ça soit parfait, je veux simplement que ça fonctionne à peu près ( en 5 mois on peu pas non plus faire des miracles, surtout avec la masse de travail restante ). Je vois les choses de cette façon: la sortie jack de la guitare est reliée à une entrée jack de l'arduino qui mesure la fréquence. Si la fréquence est inférieure ( ou supérieure ) à 440Hz alors l'arduino ordonne au moteur d'effectuer X tours dans le sens trigo ( ou sens horaire ), ensuite il reprend une mesure et refait le même processus jusqu'à arriver dans l'intervalle de tolérance de fréquence admises. C'est possible ?

Désolé pour le up de topic, mais j'ai vraiment besoin d'un peu d'aide s'il vous plaît, rien que pour savoir quel carte utiliser par exemple. Je compte sur votre compréhension, merci d'avance =)

N'importe quelle carte arduino peu convenir pour ton projet, pour des raisons d'encombrement une arduino mini ou nano me semble approprié. Ensuite un petit moteur pas à pas. A chaque boucle un pas dans un sens ou dans l'autre en fonction de la fréquence lu jusqu’à atteindre 440 hertz. Je ne peu pas beaucoup plus t'aider mais je te souhaite que ça relance un peu le sujet. A plus, Jacques.

Pour mesurer la fréquence: tu as ceci : http://interface.khm.de/index.php/lab/experiments/arduino-frequency-counter-library/ Moteur: Il faudrait que tu évalues le couple qu'il faut pour actionner le mécanisme. Il me semble que tu auras besoin d'un motoréducteur. Soft:

A chaque boucle un pas dans un sens ou dans l'autre en fonction de la fréquence

Mais comme tu vas sûrement vouloir que ta corde soit accordée sur un seul pincement, tu mutiplieras la différence des valeurs de fréquence désirée et mesurée par un facteur K que tu pourras déterminer expérimentalement.

Pas sur dans la mesure ou la note dure un certain temps et ou la boucle tourne... en boucle. Pas sur non plus que le rapport tension/fréquence soit linéaire, je ne suis pas guitariste. Dans tout les cas il faut faire des essais. Tu peux éventuellement déjà récupérer un moteur pas à pas dans une vielle imprimante HS pour faire des essais.

La partie mécanique ne me fait pas trop peur, c’est plutôt la partie réception et traitement de l’information.
En gros ma séquence de fonctionnement sera comme celle ci:
vibration de la corde captée par les micros de la guitare => transmission de la fréquence de la guitare vers l’arduino par l’intermédiaire d’un câble jack => mesure de la fréquence F par l’arduino => si 440-10% Hz < F < 440+10% alors rien, si F < 440-10% alors moteur tourne dans le sens 1, si F > 440+10% alors moteur tourne dans le sens 2 => boucle de retour.
D’après ce que vous dîtes, l’arduino Nano peut convenir pour faire ça, mais il n’y a pas d’entrée jack, je me la procure ou ? Ensuite vous pourriez me guider un peu, car j’ai toujours cette contrainte de temps et d’autres révisions à faire à côté x)

Encore désolé pour l’irrégularité de mes passages ainsi que pour les ups de topic qui y sont dus…