Introduction: Projet Siffleur
Le tutoriel suivant va vous permettre de réaliser en quelques étapes le Projet Siffleur. Cet appareil permet d'entendre via des écouteurs le son "électronique" du sifflement que vous aurez produit dans le micro.
Step 1: Matériel
Pour réaliser ce projet, vous aurez besoin de :
1x - Raspberry Pi 2B
1x - PCB réalisé sur Altium
1x - 1 microphone electret à 2 pattes
2x - AOP LM358N
1x - CAN MCP3008
1x - Régulateur de tension
1x - Support de piles
1x - Connecteur 40 broches
1x - Nappe de 40 broches
2x - Résistances de 22 kOhms
2x - Résistances de 2,2 kOhms
2x - Résistances de 1 kOhms
2x - Résistances de 75 kOhms
1x - Résistance de 18 kOhms
1x - Résistance de 4,7 kOhms
1x - Résistance de 47 kOhms
2x - Capacités de 10 nF
1x - Capacité de 1uF
1x - Diode
1x - Bouton d'interrupteur
Step 2: Schéma Du Montage Analogique
Lors de cette étape, nous allons réaliser le montage analogique sur Altium :
1 - Ce montage permet d'obtenir un offset. Le premier pont diviseur de tension permet d'avoir en entrée du montage suiveur une tension de 1,38 V. Le 2ème pont diviseur permet d'avoir 1,26 V comme valeur d'offset.
2 - Il s'agit du montage du microphone correspondant à l'acquisition du signal. Celui-ci est en réalité composé du capteur en lui-même et d'un transistor FET (non représenté sur le schéma). L'un des fils du microphone est branché à la masse tandis que l'autre sert à l'alimentation. La résistance R1 permet de polariser le transistor et le condensateur C1 permet de bloquer la tension continue fournie par R1 et ne laisser passer que le signal audio alternatif.
3 - Le signal obtenu après le microphone est centré en 0 V. Cette partie du montage va permettre d'ajouter la tension d'offset du (1) et ainsi avoir un signal centré en 1,26 V.
4 - C'est un amplificateur suiveur pour faire une adaptation d'impédance. Ceci est facultatif.
5 - Ce sont deux cellules RC que l'on a mis en cascade. C'est un filtre passe-bas avec une fréquence de coupure de 1 kHz. C'est notre filtre anti-repliement qui nous sera utile lors de l'échantillonnage.
6 - C'est le convertisseur analogique vers numérique qui relit l'ensemble du montage analogique à la Raspberry. On peut voir sur le schéma quelles broches du CAN sont reliées à la Raspberry.
7 - Il s'agit de l'alimentation. La diode s'allumera lorsque le système sera en marche.
Step 3: PCB
On passe ensuite à la réalisation du PCB. Les fichiers nécessaires sont téléchargeables ici :
Attachments
Step 4: Assemblage Et Soudure
Après l'impression du PCB, on soude tous les composants.
Step 5: Prise En Main De La Raspberry
La Raspberry Pi 2B est composée d'un processeur, d'une RAM, d'un lecteur de carte SD, d'un port USB, d'un port HDMI, de ports GPIO et d'une prise audio Jack.
- Branchement de la Raspberry à un PC
1- Utiliser directement un écran, un clavier et une souris
2- A travers un PC (en série)
Il faut taper la commande suivante sur le terminal du PC : "sudo screen/dev/ttyUSB0 11520". Le login de la Raspberry est par défaut : pi et le mot de passe est : raspberry.
3- En SSH sur un terminal linux
Il faut d'abord s'assurer que la Raspberry et le PC soient connectés à un même réseau. Ensuite, il s'agit de trouver l'adresse IP de la Raspberry grâce à la commande : "ifconfig" puis taper la commande "sudo ssh pi@adresseip". Le login et le mot de passe sont respectivement pi et raspberry.
- Connexion Raspberry-MCP3008
On connecte la Raspberry au CAN en suivant les indications du schéma.
Step 6: Mise En Place De La Nappe
Une alternative au branchement expliqué dans l'étape précédente est d'utiliser une nappe de 40 broches qui va relier le PCB à la Raspberry. Pour la suite de la réalisation de notre projet, nous avons choisi d'utiliser cette méthode. Il faut ajouter un connecteur 40 broches au PCB.
Step 7: Acquisition Du Signal Numérique
Ce fichier permet d'acquérir les valeurs numériques en sortie de MCP 3008. Nous utilisons la bibliothèque "WiringPi". Les valeurs sont ensuite copiées dans un fichier texte (présent dans le répertoire courant).
Nous conseillons d'effectuer cette étape afin de vérifier que le signal numérique obtenu est cohérent. Vous pouvez dessiner le signal, ou effectuer une FFT afin de vérifier votre acquisition.
Les étapes du code sont commentées.
Attachments
Step 8: FFT Du Signal Numérique
Ce fichier contient le code de la FFT (Fast Fourier Transform) des valeurs acquises à l'étape précédente.
Les valeurs après leur traitement sont affichées dans le terminal.
Attachments
Step 9: Génération D'un Son
C'est la bibliothèque "Alsa" qui va permettre de générer un son. Nous allons utiliser une fonction sinusoïdale qui va se répéter.
Le détail des différentes fonctions sont commentées dans le fichier.
Step 10: Code Complet
Le code complet comprend un main avec toutes les fonctions des étapes précédentes ainsi qu'un makefile pour faire compiler le tout. Il suffit de copier les fichiers sur la Raspberry.
Step 11: A Vous De Jouer !
- Activez l'interrupteur
- Branchez les écouteurs
- Sifflez dans le micro
- A la fin de votre utilisation, n'oubliez pas de désactiver l'interrupteur

Participated in the
Make Noise Challenge
Comments
6 years ago
Je viens de terminer mon premier système embarqué, grâce à votre aide. Et ça fonctionne à la perfection !
Vous êtes de véritables génies, merci beaucoup pour ce tuto, clair et précis! En attente de votre prochaine publication.