Table des matières:

Polyflûte : 8 étapes
Polyflûte : 8 étapes

Vidéo: Polyflûte : 8 étapes

Vidéo: Polyflûte : 8 étapes
Vidéo: Расслабляющая Музыка Флейта, Музыка для снятия стресса, Музыка Медитации, Нежная Музыка, ☯2089 2024, Décembre
Anonim
Polyflûte
Polyflûte

Le projet Polyflûte consiste à réaliser un instrument de musiquenumérique.

Le but est de créer un instrument de musique respectant des conditions particulières; Cet instrument doit être:

-Autonome et portable (Batterie, pile…)

-Autodidacte (Enseigner à l'utilisateur à partir d'un site internet, le fonctionnement et la construction de l'appareil)

-Auto tune (Produire un son musical à partir d'une fréquence dans l'environnement -alentour)

Le but est donc de réussir à convertir une onde vibratoire, oscillante de la vie courante ou issue d'objets du quotidien en onde sonore et musicale.

Étape 1: Création Du Circuit Analogique

Création Du Circuit Analogique
Création Du Circuit Analogique

Notre système se base sur le principe de la détection delumière: On place une LED et photodiode face à face séparé par une hélice propulsée en roue libre par un ventilateur. Ainsi le passage d'une pâle devant la photodiode créera un signal de type T. O. R (plutôt proche du sinusoïdale en prenant en compte le temps de réception de la lumière).

Le capteur constitue le cœur de la partie analogique. Nous avons donc décidé de distinguer un circuit d'émission et un circuit de réception. Le circuit est alimenté par 6 piles rechargeables de 1.2 V soit au total 7.2V. Le circuit d'émission est constitué d'une LED et d'un moteur branché en parallèle (une diode de protection a également été placée pour éviter les retours de courants). Le circuit d'émission se constitue d'une photodiode dont le signal est amplifié par un AOP; ainsi que de 2 filtres passe bas d'ordre 1 filtrant à environ 80 Hz (fréquence maximale de rotation de l'hélice).

Étape 2: Choix des composants

Une fois le circuit théorique, on choisit les composants les plus adaptés au montage.

Vous retrouverez ci-dessous les références et valeurs des différents composants (en se basant sur le schéma électronique précédent):

DEL: SFH 4550

Ventilateur: MB40200V1 (5V)

Diode: 1N4001

Photodiode: SFH 203

AOP: LM358N

CAN: MCP3008

Résistance R1 (LED): 47 Ohms

Résistance R2 (Filtre 1): 220 Ohms

Résistance R3 (Filtre 2):220 Ohms

Résistance R4 (Filtre en sortie de Vref): 1 kOhms

Condensateur C1 (Filtre): 10nF

Condensateur C2(Filtre): 10nF

Condensateur C3(Filtre en sortie de Vref): 5µF

Régulateur: 0J7031 reg09b

Connecteur 40 broches

Raspberry PI 2 modèle B

Hélice d'hélicoptère de 3, 8 cm

6 piles rechargeables 1,2 V

Étape 3: Réalisation Du PCB

Réalisation Du PCB
Réalisation Du PCB
Réalisation Du PCB
Réalisation Du PCB

La réalisation du PCB (Printed Circuit Board) s'est effectuée en plusieurs étapes:

- Le dessin de la carte (Agencement des composants)

- Le routage des composants sur la carte et Impression de la carte

- Soudage des composants

Le dessin et le routage de la carte ont été faits sur le logiciel ALTIUM Designer (logiciel utilisé en entreprise pour le routage de PCB). Nous avons donc dû nous initier au logiciel. Les composants ont été disposés de manière à réduire la taille de la carte (9 cm de long, 5 cm de large). Le routage fut la partie la plus délicate, car la carte étant imprimée en double couche nous devions décidés de la disposition des connexions en couche Top ou Bottom. Une fois la carte imprimée, nous avons soudé les composants sur des supports afin de pouvoir supprimer les composants en cas de défaillances ou de changements de composants. Nous avons également dû placer sur la carte le connecteur dépendant du PCB et de la Rasberry. Nous avons pour cela dû identifier les ports SPI de la Rasberry et faire la bonne correspondance avec le PCB.

Vous trouverez les fichiers Gerber (fichier Altium Designer).

Étape 4: Réalisation De La Partie Mécanique (support Et Instrument)

Réalisation De La Partie Mécanique (support Et Instrument)
Réalisation De La Partie Mécanique (support Et Instrument)
Réalisation De La Partie Mécanique (support Et Instrument)
Réalisation De La Partie Mécanique (support Et Instrument)
Réalisation De La Partie Mécanique (support Et Instrument)
Réalisation De La Partie Mécanique (support Et Instrument)

Le tube constituant la flûte est un tube en PVC (plomberie) qui a été coupé a une longueur de 15 cm et 4, 1 cm de diamètre. On retrouve 4 trous de 1 cm de diamètre espacé chacun de 2 cm. A l'intérieur on retrouve une hélice soutenue par une tige en plastique de 2 cm. Le PCB et le tube sont fixés sur une plaque en bois à fixé l'aide d'entretoises et de vis. Sur la partie gauche du tube on a fixé le ventilateur à l'aide d'un scotch de câble électrique. De l'autre côté, le tube est bouché par un morceau de carton.

- tube en PVC

- plaque en bois d'environ 30 cm x 30 cm

- 4 entretoises de 3, 5 cm

- 4 écrous

- Un interrupteur 2 positions classique

- Support de pile

-Carton

Étape 5: Connexion MCP-Framboise

Connexion MCP-Framboise
Connexion MCP-Framboise
Connexion MCP-Framboise
Connexion MCP-Framboise
Connexion MCP-Framboise
Connexion MCP-Framboise

La connexion MCP-3008/Rasberry est essentielle pour la communication, réception transmission des données.

La connexion Raspberry/MCP est détaillée dans les images.

La connexion s'effectue en bus SPI, le code d'initialisation du bus est joint dans les fichiers.

Étape 6: Acquisition des données

Une fois la Raspberry connectée à un convertisseur analogique/numérique de type MCP3008 à l'aide d'un bus SPI, il faut maintenant acquérir les données souhaitées. Nous ne relevons qu'un type de valeur, l'amplitude de notre signal fréquentielle, sur la chaîne 1 du MCP3008. Ces valeurs sont stockées dans un tableau de taille 512: on choisit une puissance de 2 pour accélérer les algorithmes de transformation de Fourier à venir, et plus le nombre de points est élevé plus le signal discret sera précis.

L'acquisition des données ne peut cependant pas se faire de manière aléatoire, en effet la fréquence d'acquisition et donc la fréquence d'échantillonnage est primordiale. Nous avons déterminé empiriquement que notre signal n'atteignait jamais des fréquences supérieures à 80Hz. Pour respecter Shannon notre fréquence d'échantillonnage doit être supérieure à 160Hz, nous avons choisi une Fe à 250Hz.

Afin d'acquérir les données à cette fréquence, nous avons créé un temporisateur qui fait appel à notre fonction d'acquisition de toutes les 4ms (Te = 1/Fe = 4ms). Le premier thread de notre programme contient donc la fonction du timer qui effectue l'acquisition des données.

Étape 7: FFT

Une fois le fichier de données d'acquisition rempli, on peut effectuer le transformateur de Fourier discret pour retrouver la fréquence du signal.

On use pour cela la bibliothèque GSL qui permet à partir d'un tableau de données, d'avoir le tableau d'amplitude des raies fréquentielles composant ce signal. En écartant la première case du tableau contenant l'amplitude des diviseurs continue, on peut retrouver l'indice i de la fréquence qui a la plus forte amplitude à l'aide de la formule suivante: Freq = i*Fe/(2*Nb_Points).

Notre fréquence d'échantillonnage étant 250Hz et le nombre de points acquis étant 512.

Étape 8: Génération Du Son

Maintenant que l'on a récupéré la fréquence du signal il suffit de générer un sinus pour avoir un son. Deux solutions se sont ouvertes à nous: Émettre sinus directement à partir des fréquences acquises en les multipliant pour les rendre audibles, ou bien s'associer à des fréquences précises aux plages des différentes notes de notre prototype.

Nous avons testé les deux méthodes et nous avons finalement retenu la seconde plus concluante. Les notes jouées sont celle de la gamme 4, cependant les contraintes de notre système nous permet seulement d'avoir 8 plages distinctes et ainsi de jouer 8 notes différentes: Do, Ré, Mi, Fa, Sol, Sol bémol, La et Si.

Enfin vous trouverez les codes complets des deux solutions citées au-dessus.

Conseillé: