Innehållsförteckning:
- Steg 1: Création Du Circuit Analogique
- Steg 2: Choix Des Composants
- Steg 3: Realisering Du PCB
- Steg 4: Réalisation De La Partie Mécanique (support Et Instrument)
- Steg 5: Anslut MCP-Hallon
- Steg 6: Acquisition Des Données
- Steg 7: FFT
- Steg 8: Génération Du Son
Video: Polyflûte: 8 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:38
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 och bärbar (batteri, hög …)
-Autodidacte (Enseigner à l’utilisateur à partir d’un site internet, le fonctionnement et la construction de l’appareil)
-Auto tune (Produire un son musical à partir une fréquence relevanté 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.
Steg 1: Création Du Circuit Analogique
Notre système se base sur le principe de la détection delumière: On place une LED and photodiode face à face séparé par une hélice propulsé 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é för 6 högar laddningsbara på 1,2 V för totalt 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 filter passe bas d’ordre 1 filtrant à environment 80 Hz (fréquence maximale de rotation de l'hélice).
Steg 2: Choix Des Composants
Une fois le circuit théorique établit, 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):
LED: SFH 4550
Ventilatör: MB40200V1 (5V)
Diod: 1N4001
Fotodiod: SFH 203
AOP: LM358N
KAN: MCP3008
Motstånd R1 (LED): 47 Ohm
Motstånd R2 (Filtre 1): 220 Ohm
Motstånd R3 (Filtre 2): 220 Ohm
Resistans R4 (Filtre en sortie de Vref): 1 kOhms
Kondensatör C1 (Filtre): 10nF
Kondensatör C2 (Filtre): 10nF
Kondensatör C3 (Filtre en sortie de Vref): 5µF
Reglering: 0J7031 reg09b
Anslutare 40 stift
Hallon PI 2 Modell B
Hélice d'hélicoptère de 3, 8 cm
6 högar laddningsbara 1,2 V
Steg 3: Realisering 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 on é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 lång, 5 cm stor). Le routage fut la partie la plus délicate, car la carte étant imprimé en double couche nous devions décidés de la disposition des connections en couche Top ou Bottom. Une fois la carte imprimée, nous avons soudés les composants sur des supports afin de pouvoir enlever les composants en cas de défaillances ou de changements de composants. Nous avons également dû placer sur la carte le connecteur reliant le PCB et 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).
Steg 4: Réalisation De La Partie Mécanique (support Et Instrument)
Röret består av en flaska som är en rör en PVC (plomberie) qui a été coupé a une longueur de 15 cm och 4, 1 cm de diamètre. På retrouve 4 trous de 1 cm de diamètre espacé chacun de 2 cm. A l'intérieur on retrouve une hélice soutenu 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 på en 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.
- rör en PVC
- plack en bois d'environ 30 cm x 30 cm
- 4 entretoises de 3, 5 cm
- 4 st
- Un interrupteur 2 positioner classique
- Support de pile
- Kartong
Steg 5: Anslut MCP-Hallon
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.
Steg 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 faciliter les algorithmes de transformé 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. Häll 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 timer qui fait appel à notre fonction d'acquisition toutes les 4ms (Te = 1/Fe = 4ms). Le premier thread de notre program contient donc la fonction du timer qui effectue l'acquisition des données.
Steg 7: FFT
Une fois le tableau de données d'acquisition rempli, on peut effectuer la transformer de Fourier discrète pour retrouver la fréquence du signal.
På utnyttja 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 composantes fortsätter, på 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 och le nombre de points acquis étant 512.
Steg 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 un sinus directement à partir des fréquences förvärvar en les multipliant pour les rendre hörbar, ou bien 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 differes 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.
Rekommenderad:
Arduino Car Reverse Parking Alert System - Steg för steg: 4 steg
Arduino Car Reverse Parking Alert System | Steg för steg: I det här projektet kommer jag att utforma en enkel Arduino Car Reverse Parking Sensor Circuit med Arduino UNO och HC-SR04 Ultrasonic Sensor. Detta Arduino -baserade bilomvändningsvarningssystem kan användas för autonom navigering, robotavstånd och andra
Steg för steg PC -byggnad: 9 steg
Steg för steg PC -byggnad: Tillbehör: Hårdvara: ModerkortCPU & CPU -kylarePSU (strömförsörjningsenhet) Lagring (HDD/SSD) RAMGPU (krävs inte) CaseTools: Skruvmejsel ESD -armband/mathermisk pasta med applikator
Tre högtalarkretsar -- Steg-för-steg handledning: 3 steg
Tre högtalarkretsar || Steg-för-steg-handledning: Högtalarkretsen förstärker ljudsignalerna som tas emot från miljön till MIC och skickar den till högtalaren varifrån förstärkt ljud produceras. Här visar jag dig tre olika sätt att göra denna högtalarkrets med:
Steg-för-steg-utbildning i robotik med ett kit: 6 steg
Steg-för-steg-utbildning i robotik med ett kit: Efter ganska många månader av att bygga min egen robot (se alla dessa), och efter att två gånger ha misslyckats med delar, bestämde jag mig för att ta ett steg tillbaka och tänka om min strategi och riktning. De flera månaders erfarenhet var ibland mycket givande och
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)