Projet Chorduino

Introduction :

Bonjour, nous sommes Pierre PORTRON et Yohann CONANEC, tous les deux étudiants en PEIP2-A à Polytech Angers.

Le but de ce projet était de créer un système permettant d’accompagner un musicien en jouant une série d’accords sur un synthétiseur. Pour cela nous avions à notre disposition une carte Arduino UNO, muni de boutons poussoirs et d’un écran LCD, une pédale, un câble MIDI-USB et un câble Arduino-USB

Travail réalisé :

1-Le codage des accords :

Un accord est un ensemble de notes joué simultanément, ils sont définis par le type d’accords ainsi que la note fondamentale, qui est la première note jouée.

Pour coder les types d’accords nous créons un tableau pour chaque type, contenant dans l’ordre, le nombre de notes, l’écart entre les prochaines notes et la note fondamentale.

tab acc

Afin de coder l’accord en lui-même nous avons numéroté chaque notes de 0 à 11 et chaque types d’accords de 0 à 19 que l’on multipliait par 12.
pour chaque accords on additionne la valeure de la note fondamentale et du type d’accord

exemple : type accord n7 : 2 * 12 = 24
note fondamentale D : 5
accords = 24 + 5 = 29

image_2021-06-16_165859

Afin de décoder l’accord lorsque l’on souhaite le jouer on trouve la note fondamentale en appliquant un modulo 12 à la valeur de l’accord et ont la divise par 12 pour trouver le type d’accord

Exemple :
Accords = 29
Note fondamentale= 29 % 12 = 5 = D
Type d’accord = 29 / 12 = 2 = n7

image_2021-06-16_170010

2-Jouer l’accord :

Pour jouer l’accord on le décode comme vu précédemment pour obtenir le type d’accord et la note fondamentale. Puis on utilise la fonction MIDI.sendNoteOn(note, volume) en additionnant à chaque fois la note fondamentale de la valeur noté dans le tableau du type d’accord.

image_2021-06-16_171125

3-Les grilles d’accords

Les grilles d’accords sont des tableaux d’accords ce qui nous permet de jouer plusieurs accords à la suite.

grille

Pour cela on regarde la valeur envoyée par la pédale (plus on appuie plus la valeur augmente)
Lorsque cette valeur dépasse 400 on joue le premier accord puis quand on la relâche on passe à l’accord suivant.

jouergrille

4-La liaison série

Pour entrer une grille manuellement, on utilise la liaison série Arduino présent sur l’IDE Arduino. On reçoit la nouvelle grille sous forme d’une chaîne de caractères que l’on transforme en un tableau d’entiers représentant les accords.

image_2021-06-16_173809

moniteur

Vidéos montrant le projet en fonctionnement :

drive.google.com/file/d/1ohHWEjFQPqnQ6lgYgXIuU3x8RuiLttEy/view?usp=sharing
https://drive.google.com/file/d/1pDgMJ5z21NYXAhiWjoK8Dx4-1u30MCZR/view?usp=sharing
https://drive.google.com/file/d/1osvTKHlHw0p1z_huiWoCOzXzyjFL0QGX/view?usp=sharing

Conclusion :

Ce projet nous aura finalement beaucoup apporté, notamment au niveau du travail de groupe sur un projet de cette durée.

Nous sommes très fiers du résultat même si plusieurs points pourraient être améliorés.

Merci beaucoup à M COTTENCEAU pour son aide.