Il existe différents bruiteurs Diesel et différents
générateurs de fumée pour les modèles RC.
Pour les bruiteurs Diesel, seuls ceux utilisant des
enregistrements audios de vrais moteurs produisent un son très proche
des moteurs réels.
Pour les générateurs de fumée, seuls ceux basés sur un
atomiseur piézo produisent une fumée (blanche) exempt de dépôt gras:
il ne s'agit que d'eau vaporisée.
Partant de ce constat, il m'est venu l'idée de concevoir
un Module Son et Fumée qui combine les 2 fonctions. La fumée
produite sera évidemment proportionnelle aux gaz ou à l'accélération du
moteur.
En parallèle du bruit du moteur, des sons annexes pourront
être joués (ex: cri de mouette, corne de brume, alarme voie d'eau,
ambiance de travail, ou autre).
II. SCHEMA FONCTIONNEL
II.1. Schéma fonctionnel simplifié
II.2. Schéma fonctionnel détaillé
III. COMPOSITION MATERIELLE
Afin de réaliser ce Module Son et Fumée, les modules à bas coût suivants sont assemblés :
Convertisseur LM2596 DC/DC pour
convertir la tension batterie (de 7,2V à 30V) en une tension
stabilisée de 5V et capable de fournir 3A en pointe
Arduino Pro Micro (modèle 5V/16MHz)
Module carte SD pour Arduino ET sa carte SD
Module DF player mini ET sa carte SD
Disque céramique piézo 113 KHz pour brumisateur
IV. CARACTERISTIQUES
Ce Module Son et Fumée a les caractéristiques
suivantes:
Général:
Alimenté en LiPo 2S à 7S (de 7,2V à 30V)
Basé sur un Arduino Pro Micro (modèle 5V/16MHz)
1ère entrée RC connectée en parallèle sur
la voie RC du récepteur qui pilote le variateur de vitesse (ESC)
pour la gestion de la proportionnalité
Support des commandes des variateurs
bi-directionnels (marche arrière de 1500 µs à 1000 µs et marche
avant de 1500µs à 2000 µs)
Support des commandes des variateurs mono-directionnels (stop à 1000 µs, plein gaz à 2000 µs)
2nde entrée RC connectée sur une voie RC
libre du récepteur pour commander le volume
et les sons auxiliaires (optionnel)
Génération du bruit du moteur:
Sons de démarrage et de ralenti
(au format .wav) stockés sur une carte SD gérée par l'Arduino Pro
Micro
Possibilité de stocker plusieurs sons de
démarrage et de ralenti → choix possible du
type de moteur
Choix du moteur par le lien USB de l'Arduino
Pro Micro
Simulation du démarrage en jouant le son de démarrage
Simulation des accélérations/décélérations en jouant
le son de ralenti avec une fréquence d'échantillonnage proportionnelle aux Gaz moteur
Génération de la fumée:
Sortie de 90 à 110 KHz pour exciter l'atomiseur
piézo afin de produire une fumée proportionnelle aux Gaz ou à
l'accélération du moteur
Fréquence de l'atomiseur piézo proportionnelle
aux Gaz ou à l'accélération du
moteur
Définition des fréquences Min et Max par le lien USB de l'Arduino Pro
Micro afin de s'adapter aux tolérences en fréquence des atomiseurs piézos
Sons auxiliaires:
Basé sur un module DF player mini
Sons (au format .mp3) stockés
sur la carte SD du module DF player mini
14 sons auxiliaires pouvant être joués en parallèle
du son du moteur:
1er groupe de 8 sons
auxiliaires sélectionnables depuis l'émetteur
2nd groupe de 6 sons
auxiliaires sélectionnables directement en hardware
depuis 6 broches du Module Son et Fumée (Ex: alarme voie
d'eau)
Test des différents sons auxiliaires par le lien USB de l'Arduino Pro Micro
Mixage/Amplification
Son de génération du bruit du
moteur mélangé avec le son auxiliaire produit par le module DF
player mini et utilise l'amplificateur audio intégré au module
DF player mini
Volume du module
DF player mini réglable depuis l'émetteur
Si peu de puissance sonore est requise, l'amplificateur audio intégré (3W) pourra alimenter
directement un haut-parleur
Si beaucoup de puissance sonore est requise, une
sortie audio niveau "ligne" pour amplificateur externe est
disponible
Commande/sélection de chacun des 8 sons auxiliaires
et commande de volume depuis l'émetteur RC
Entrée auxiliaire connectée sur une sortie RC
auxiliaire du récepteur utilisant le protocole RCUL/Xany
(directement supporté par l'émetteur OpenAVRc)
Entrée auxiliaire connectée sur
une sortie RC auxiliaire du
récepteur utilisant le protocole EKMFA (supporté par tous les émetteurs RC → commande par coups de manches)
Le volume du son peut être ajusté depuis l'émetteur
quel que soit le protocole
utilisé (RCUL/Xany ou EKMFA).
Gestion de la priorité des sons auxiliaires
Un son est prioritaire
lorsqu'il peut interrompre un son déjà en cours.
3 niveaux de priorité:
Les 8 sons "lançables" depuis
l'émetteur → pas prioritaires: n'importe
quel son peut interrompre le son en cours
Les 6
sons "lançables"
en hardware depuis 6 broches du Module Son et Fumée
configurables en priorité:
Priorité moyenne: peut être interrompu par un son
configuré en priorité haute
Priorité haute: un son configuré en priorité
haute peut interrompre n'importe quel son en cours, sauf si
celui-ci est déjà en priorité haute
V. ORGANISATION DES FICHIERS SUR LES CARTES SD
V.1. Organisation des fichiers sur la carte SD de
l'Arduino
La carte SD de l'Arduino contient les sons de démarrage et
de ralenti des différents types de moteur.
Les fichiers sont obligatoirement:
stockés directement à la
racine de la carte SD
au format "wave" mono/16KHz: c'est le
seul format standard de fichier audio qu'est capable de lire
l'Arduino
avec des noms au format 8.3,
c'est-à-dire que le nom du fichier (à gauche du point) fait au maximum
8 lettres et l'extension (à droite du point) fait
au maximum 3 lettres
Par exemple, pour:
1) Le Moteur Diesel
CATERPILLAR C32 Marine:
Le fichier de démarrage s'appellera: CAT-C32.STA
(STA comme Start = démarrage)
Le fichier de ralenti
s'appellera: CAT-C32.IDL
(IDL comme Idle = ralenti)
2) Le Moteur Diesel SCANIA
250CV:
Le fichier de démarrage s'appellera: SCAN-250.STA
(STA comme Start = démarrage)
Le fichier de ralenti
s'appellera: SCAN-250.IDL (IDL
comme Idle = ralenti)
3) Le petit Moteur
Diesel:
Le fichier de démarrage s'appellera: DSL-LTL.STA
(STA comme Start = démarrage)
Le fichier de ralenti
s'appellera: DSL-LTL.IDL (IDL
comme Idle = ralenti)
→ Tous les
fichiers de démarrage auront l'extension: .STA.
→ Tous les
fichiers de ralenti auront l'extension: .IDL.
Cette règle d'appelation est obligatoire: c'est ce
qui permet au firmware de l'Arduino de déterminer les différents types
de moteur stockés sur la carte SD et ainsi d'afficher la liste des
moteurs disponibles lorsque l'utilisateur voudra sélectionner le (son
du) moteur qu'il veut utiliser avec le Module
Son et Fumée.
A l'aide d'un PC connecté sur le port USB de l'Arduino, il
est possible d'afficher la liste des moteurs disponibles sur la carte SD
à l'aide de la commande MOT.LISTE?:
MOT.LISTE?
MOT.LISTE=CAT-C32, SCAN-250, DSL-LTL
Pour afficher le moteur sélectionné, utiliser la commande
MOT.SEL?:
MOT.SEL?
MOT.SEL=SCAN-250
Pour sélectionner un autre moteur, utiliser la commande MOT.SEL=Nom_Moteur: (avec
Nom_Moteur = l'un des noms de moteur disponible dans la liste)
MOT.SEL=CAT-C32
MOT.SEL
Pour vérifier le moteur sélectionné, utiliser la commande MOT.SEL?:
MOT.SEL?
MOT.SEL=CAT-C32
V.2. Organisation
des fichiers sur la carte SD du module DF Player mini
La carte SD du module
DF player mini contient les 14 sons annexes (les 8
premiers sont "lançables" depuis l'émetteur RC + les 6 derniers qui sont
"lançables" depuis 6 broches de l'Arduino).
Les fichiers sont obligatoirement:
stockés
directement à la racine de la carte SD (par facilité)
au
format "mp3" (bien que les fichiers "wave" soient aussi supportés,
mais bien plus volumineux)
avec des noms commençant par un nombre à 4 digits de
0001 à 0014 et avec l'extension .mp3:
→
Tous les fichiers s'appeleront donc de 0001-NomFichier1.mp3 à 0014-NomFichier14.mp3
VI. MODIFICATIONS DU MODULE DF PLAYER MINI
Les modifications permettent d'ajouter au Module DF Player
mini:
Une entrée audio supplémentaire pour le son du moteur
généré par l'Arduino Pro Micro, son qui se mélangera avec les sons
issus du Module DF Player mini
Une sortie audio "ligne" pour un éventuel emploi d'un
amplificateur audio extérieur
Les étapes:
Désouder la résistance CMS de 15K située en face de la
broche IO_1
Désouder la résistance CMS de 24K située en face de la
broche IO_2
Souder une résistance classique de 4.7K tel que décrit
ci-dessus: cela transforme la broche IO_1 en entrée audio
additionnelle
Souder un bout de fil entre IO_2 et la
résistance de 4.7K tel que décrit ci-dessus:
cela transforme la broche IO_2 en sortie audio "ligne"
VII. LE DISQUE PIEZO ET SON ETAGE DE PUISSANCE
L'étage de puissance du disque piézo est composé d'un
transistor MOS canal N et d'un auto-transformateur élévateur.
Le disque piézo
ainsi que son étage de puissance proviennent d'un atomiseur
acheté sur un célèbre site de vente en ligne (Al*Expr*ss) et vendu sous
l'appellation: "Mini kits USB pour humidificateur".
Note: Il n'est pas possible d'utiliser directement
ce module pour notre application car il ne permet pas de faire varier la
quantité de fumée.
Cet atomiseur coûtant environ 2 à
3€ à l'écriture de ces lignes (port compris), il n'est pas intéressant
d'acheter à part:
- le disque piézo
- le transistor MOS canal N
- l'auto-transformateur
élévateur
- le connecteur 2 points au pas
de 2 mm.
Ces composants seront donc prélevés sur cette carte du
commerce: il s'agit du disque piézo et des 3 composants entourés en
rouge ci-dessous (Q1, L1 et CONT3):
VIII. SCHEMA DU MODULE SON ET FUMEE
IX. REALISATION
Un grand merci à Pierrot pour la réalisation du circuit
imprimé sous KiCad, pour sa
patience et la prise en compte des nombreuses contraintes d'intégration:
du travail de pro!
L'assemblage demande quelques heures, mais ne présente pas
de difficulté majeure.
Il faudra juste bien repérer la borne + de
l'auto-transformateur avant de le déssouder du
"Mini kits USB pour humidificateur". Ce + devant se retrouver côté
connecteur "Piezo".
Le Module Son et Fumée vu de
dessus:
L'ensemble fait: 75 mm x 45 mm x 21 mm
La carte se configure par le connecteur USB de
l'Arduino Pro Micro,
La carte SD du module DF Player contient les 14 sons
auxiliaires, les 8 premiers se pilotent depuis l'émetteur, les 6
derniers se pilotent depuis le connecteur P4 (A1 à A6).
Nous retrouvons le petit transistor MOS CMS,
l'auto-transformateur et le connecteur au pas de 2 mm du disque
piézo récupérés sur le "Mini kits USB pour
humidificateur".
Le Module Son et Fumée vu de côté:
le convertisseur DC/DC LM2596 est fixé sur la côté à
l'aide de tiges de laiton de 1,5 mm de diamètre,
Le module carte SD contenant les sons des différents
moteurs est connecté dessous la carte principale.
Le manuel utilisateur (Clic droit/enregistrer la
cible du lien sous... pour télécharger) détaille toutes les possibilités
de Sound&Smoke.
XI. VIDEOS
Vidéo du démarrage du moteur, de
l'accélération/décélération, génération de la fumée proportionnellement
aux gaz et arrêt automatique après 15 secondes au ralenti.
Cette vidéo a été réalisée avec la commande
SMOKE.MODE=PROP pour avoir une fumée proportionnelle aux Gaz.
Note importante:
Le principe de génération de fumée est l'atomisation de
l'eau en vapeur. Le disque piézo doit donc être impérativement en
contact avec de l'eau.
Dans les 2 vidéos présentées, pour les tests, le disque
piézo était juste posé sur la surface de l'eau contenue dans un bouchon
de bouteille d'eau minérale.
Vidéo du démarrage du moteur, de l'accélération, génération de la fumée proportionnellement aux
gaz, lancement de sons auxiliaires depuis l'émetteur, réglage
du volume du son auxiliaire et du son moteur depuis l'émetteur et arrêt
automatique après 15 secondes au ralenti. L'utilisation du système
X-Any/RCUL de l'émetteur OpenAVRc rend le tout très ergonomique.
Cette vidéo a été réalisée avec la commande SMOKE.MODE=PROP
pour avoir une fumée proportionnelle aux Gaz.