Brevet FR2657990A1 — publié le 19910809

PROCEDE DE SIMULATION DE SON D'ORIGINE MARINE La présente invention se rapporte aux procédés qui permettent de simuler des sons d'origine marine, plus particulièrement sous-marine, en vue notamment d'entraîner les opérateurs sonars. On utilise de plus en plus souvent dans de nombreux domaines des simulateurs qui permettent d'entraîner le personnel en dehors des conditions réelles de fonctionnement et avec un matériel qui n'est pas le matériel réel. Cet usage de la simulation s'est d'abord imposé dans le domaine de l'aéronautique pour des questions de coût et de sécurité, et les avantages qui en découlent amènent maintenant à l'utiliser un peut partout. I1 est bien clair qu'il est beaucoup plus pratique et moins coûteux d'entraîner un opérateur sonar sur une machine de simulation plutôt que de ltembarquer sur un sous-marin et de faire évoluer autour de ce dernier différents bâtiments, voire même d'attaquer le sous-marin à la grenade ou à la torpille. Les diverses méthodes de simulation actuellement utilisées utilisent soit des machines spécifiques de génération de son, soit des calculateurs banalisés de puissance suffisante pour pouvoir générer ces sons par programme. Dans le cas des machines spécifiques celles-ci sont produites en nombre restreint et sont donc coûteuses. Par ailleurs, elles sont relativement figées et s'adaptent mal aux évolutions technologiques. Dans le cas des calculateurs banalisés, il faut, pour obtenir un résultat qui est somme toute assez banal, utiliser une puissance de calcul tout à fait disproportionnée avec ce résultat. I1 est par ailleurs connu dans le domaine musical d'utiliser des appareils, dits synthétiseurs, qui permettent de reproduire une grande variété de signaux sonores, en principe les notes des différents instruments de musique. Pour faciliter l'usage de ces synthétiseurs, et particulièrement l'usage simultané d'un certain nombre d'entre eux, on a normallsé une liaison informatique dite MIDI caractérisée par un connecteur et des signaux attachés à chacune des broches de ce connecteur. Ceci permet de commander le synthétiseur à partir d'un microordinateur. Un même ordinateur peut piloter un grand nombre de synthétiseurs, ce qui permet de reproduire la musique d'un orchestre complet à partir d'une partition traduite en programme de cet ordinateur. Pour pallier les difficultés posées par la simulation des sons acoustiques sous-marins à l'aide des machines connues, l'invention propose un procédé de simulation de sons d'origine marine, caractérisé en ce que l'on programme un synthétiseur musical par l'intermédiaire d'une liaison de type MIDI pour obtenir sur une partie au moins du "clavier" d'un canal du synthétiseur un son dont le spectre est celui du son que l'on veut simuler, puis que l'on commande le synthétiseur à partir de la liaison MIDI pour obtenir les notes correspondant à ce son. D'autres particularités et avantages de l'invention apparaîtront clairement dans la description suivante présentée à titre d'exemple non limitatif en regard des figures annexées qui représentent - la figure 1, une structure informatique permettant de mettre en oeuvre le procédé selon l'invention ; et - la figure 2, une variante de la structure de la figure 1. Dans le dispositif permettant de mettre en oeuvre l'invention représenté sur la figure 1, un microordinateur 1 est muni de son clavier de commande 2 et d'une souris 3 permettant d'entrer des commandes par l'intermédiaire de l'écran selon une technique connue. Ce microordinateur est relié à un synthétiseur de sons 5 à l'aide d'une interface du type midi 4. Les sons délivrés par le synthétiseur 5 sous la forme de signaux électriques sont appliqués à un haut-parleur 6. Le cas échéant on peut utiliser un amplificateur intermédiaire entre le synthétiseur et le haut-parleur, ou un convertisseur numérique/analogique si le synthétiseur est muni d'une sortie de type numérique. Dans son utilisation classique le synthétiseur 5 permet de délivrer sur sa sortie une ou plusieurs notes simultanées sélectionnées à partir d'un clavier semblable à celui d'un piano. La tonalité de ces notes, c'est-à-dire en fait le nombre d'harmoniques répartis sur les différentes octaves de l'instrument, est déterminée par des commutateurs qui permettent de sélectionner les timbres de différents instruments de musique, par exemple le violon, le piano ou le saxophone. Chacun de ces instruments correspond à un canal déterminé et des potentiomètres permettent de régler le volume des différents canaux. Ces différents paramètres sont en outre sélectionnables à partir de l'interface MIDI qui donne accès à deux possibilités de programmation, l'une concernant la tonalité de chaque canal, et l'autre les notes jouées sur les canaux sélectionnés. Selon l'invention, dans un premier temps on reprogramme les canaux du synthétiseur pour obtenir, non pas le son d'un instrument de musique, mais les sons que l'on désire simuler, par exemple le bruit des hélices ou le bruit des moteurs d'un sous-marin, ou les émissions d'un sonar, que ce dernier soit de type continu ou par impulsions. Cette reprogrammation s'effectue par l'intermédiaire de la liaison MIDI 4 à partir du microordinateur. Les caractéristique des spectres sont par exemple répertoriés sur le disque dur du microordinateur 1 et le chargement de ces caractéristiques dans le synthétiseur est commandé à partir du clavier 2, ou éventuellement de la souris 3 si l'on utilise un système de type menu apparaissant sur l'écran du microordinateur. On rappelle que, selon les normes MIDI, le nombre de canaux pour un synthétiseur est limité à 16. Ce nombre est généralement suffisant dans la pratique mais le cas échéant on pourra utiliser plusieurs synthétiseurs tels que 5 multiplexés sur la liaison MIDI avec le microordinateur, ce qui est tout à fait prévu par la norme MIDI. Dans un deuxième temps, correspondant à la simulation proprement dite, on commande le synthétiseur à partir du microordinateur pour lui faire émettre les sons désirés, aussi bien à la fréquence qu au niveau et au rythme nécessaires. On rappelle pour cela que la liaison de type MIDI permet de commander pour chaque canal, par l'intermédiaire de mots binaires délivrés à une cadence de 31,25 Kilobits par seconde, les fonctions suivantes - la note au sens de la gamme musicale, c'est-à-dire la valeur du fondamental du canal sélectionné ; cette commande s'effectue par mise en route ou arrêt du type "ON/OFF" ; à cette fonction est associée une "vélocité", qui correspond à l'intensité de la note codée de 1 à 127 ; cette vélocité est déterminée lors de l'émission de la note et ne peut pas évoluer en principe pendant cette émission - une variation de la valeur de la note par rapport à sa valeur théorique dans la gamme musicale ; cette variation est connue sous le nom de "PITCH BENDER" et nous l'appellerons "glissement" dans la suite de ce texte ; elle est codée par un nombre variant de 1 à 127 - l'intensité du son fournie, connue sous le terme n Control Change Volume" ; cette intensité est codée par un nombre variant de 1 à 127 et elle peut évoluer pendant l'émission de la note, ce qui la distingue de la vélocité citée plus haut. Dans l'utilisation courante du synthétiseur par la prise MIDI, et même par son clavier, on ne pourrait pas simuler des bruits sous-marins, même après avoir reprogrammé chaque canal comme décrit précédemment, parce que d'une part le pilotage se fait au travers de demande de notes musicales dont les fréquences correspondantes sont discontinues, et parce que d'autre part le volume en sortie est normalement déterminé à partir de la vélocité de la note, comme c'est le cas lorsque l'on frappe plus ou moins fort sur la touche d'un piano, alors que le "Control Change Volume" sert normalement à régler le rapport respectif entre les instruments correspondant à l'harmonisation au sein d'un orchestre. Or, pour synthétiser des sons sous-marins, il faut pouvoir piloter la fréquence et le niveau des signaux de manière continue pour simuler par exemple la variation de régime d'un moteur ou le rapprochement d'une cible. Selon l'invention, on commence par attribuer, comme décrit plus haut, un son particulier à chaque canal du synthétiseur. Ensuite, par un premier moyen, on s'impose de ne pas utiliser la vélocité associée à chaque note, mais le volume relatif à chaque canal. Pour cela on fige systématiquement la vélocité de toutes les notes à une valeur déterminée à l'avance, de préférence la valeur maximale correspondant au nombre 127. Dans ces conditions, on fait varier le niveau de sortie de chaque canal à l'aide de la commande d'intensité, ce qui permet par exemple en faisant augmenter progressivement le volume du canal correspondant au bruit des moteurs de simuler l'approche d'un bateau. Bien entendu on fait varier le volume des autres canaux en rapport avec cette variation lorsqu'il y a un lien entre eux, par exemple celui correspondant au bruit de hélices, qui doit en principe augmenter en même temps que le bruit des moteurs. Le second moyen consiste à utiliser la fonction glissement pour lier les notes entre elles, afin d'eviter toute discontinuité de fréquence. Pour cela, on commence par programmer la dynamique du glissement, au moment où Iton programme les canaux, de manière à satisfaire aux deux exigences suivantes - obtenir une précision en fréquence suffisante, compte tenu de ce que le glissement s'effectue d'une manière quantifiée sur 127 pas et que donc la variation de fréquence correspondant à un pas doit être inférieur ou égale à la précision souhaitée sur la fréquence - minimiser l'intervalle entre les changements de notes. En effet, chaque changement de note se traduit par un arrêt de la note en cours et une mise en route de la note suivante lorsque l'excursion maximale autorisée par le glissement est obtenue. Ceci provoque généralement une discontinuité de phase entre les deux notes qui se suivent, même si, compte tenu du glissement maximal inférieur pour la note précédente et du glissement de phase maximal supérieur pour la note suivante, les fréquences successives sont les mêmes. Ce changement de phase provoque un claquement qui est tout à fait irréaliste et perturbateur s'il intervient trop fréquemment et trop régulièrement. Dans la pratique il faut que dans tous les cas ce changement de notes ne se produise pas plus souvent que toutes les secondes. L'expérience a montré que fort heureusement ces deux critères ne s'excluaient pas mais se complétaient. Ainsi, pour prendre deux cas pratiques, pour simuler un moteur diesel, pour lequel il faut une forte précision sur la fréquence, on prend une dynamique de glissement étroite, qui ne nécessite pas un changement de note fréquent puisque les variations de régime d'un tel moteur, et donc les variations du fondamental correspondantes, se font sur une plage faible. Par contre, pour simuler l'émission d'un sonar modulé en frequence, pour lequel l'excursion de fréquence est grande, il faut, afin d'éviter les changements fréquents de notes, prendre une dynamique de glissement large qui amène à une précision faible sur la fréquence ; cette précision n'étant justement pas nécessaire dans un tel cas. Les notes d'un synthétiseur sont déterminées de manière connue comme étant de l'une à l'autre dans un rapport 12r \/ 2, puisqu'il y a 12 notes dans une octave. La fréquence de référence est le La3 à 440Hz. Un tel coefficient multiplicatif 1 correspond à une variation de + ton. Comme la dynamique minimale du glissement est elle-même égale à + i ton, ceci permet bien de passer d'un ton inférieur à un ton supérieur de manière continue. La détermination dans le microordinateur de la valeur de la note et du glissement s'effectue de la manière suivante - on calcule tout d'abord un paramètre X par la formule X=12 x log2 (fréquence désirée/fréquence de référence) - à partir de la valeur de ce paramètre X on détermine alors la note à sélectionner et la valeur du glissement par les formules suivantes note = note de référence + entier le plus proche de X glissement = dynamique du glissement x partie fractionnaire de X + centrage Lorsque la valeur de la fréquence à obtenir varie, on calcule la valeur du glissement pour obtenir la nouvelle valeur de la fréquence et, si on obtient une valeur du glissement située dans l'intervalle 1/127 disponible, on envoie cette valeur au générateur. Dans le cas contraire on calcule une nouvelle note et un nouveau glissement par la méthode décrite ci-dessus. On envoie ensuite au synthétiseur un ordre d'arrêt de la note en cours, la valeur de la nouvelle note et la valeur du nouveau glissement, puis d'un ordre de mise en route de cette nouvelle note. Compte tenu de la méthode utilisez, on constate bien que la valeur du glissement obtenue est la plus proche possible du nouveau centrage. On rappelle que le centrage consiste à affecter la valeur 64 au glissement quand la fréquence correspond à la note juste. La fréquence délivrée par le synthétiseur varie de manière sensiblement continue, compte tenu de l'incrément du glissement, et on minimise ainsi la fréquence du changement de note. Afin de permettre de disposer de plus de sons sous-marins simulés qu'il n'existe de canaux, en principe 16, dans le synthétiseur, on peut, à titre de variante, au moment de la programmation de ces canaux profiter d'une possibilité offerte par la norme MIDI, qui consiste à découper le "clavier" affecté à un canal en plusieurs parties. Le terme clavier correspond à l'étendue de la gamme disponible sur un canal, soit par exemple 5 ou 6 octaves. On affectera alors à chaque partie de la partition du clavier un son sous-marin que l'on souhaite simuler en s'arrangeant pour qu'on n'affecte à un même clavier que des sons exclusifs l'un de l'autre. Par exemple, on affectera à un même clavier plusieurs types de cavitations, puisque les phénomènes de cavitation sont uniques à un moment, et que lorsque l'on passe à un nouveau type de cavitation l'ancien disparaît. Bien entendu cette répartition tiendra compte des limitations en fréquence déterminées par le fondamental et le spectre, de manière à ce que la simulation soit complète dans chaque partie du clavier et que l'on n'empiète pas d'une partie sur l'autre. Par exemple, on pourra placer sur un même clavier la simulation d'un moteur électrique de propulsion, dont le régime peut varier sur une large plage, et un moteur diesel de recharge dont le régime ne présente qu'une variation faible, puisque bien entendu lorsque l'un de ces deux moteurs est en fonctionnement l'autre ne l'est pas. Lorsque, même compte tenu de cette variante, on a besoin de simuler un plus grand nombre de sons sous-marins, on peut, comme représenté sur la figure 2, utiliser plusieurs synthétiseurs 51 et 52 en les commandant à partir du microoordinateur 1 par une liaison MIDI à haut débit 40 démultiplexée sur les synthétiseurs 51 et 52 à l'aide d'une carte multilignes 7 raccordée aux synthétiseurs par des liaisons MIDI 41 et 42. Les sorties des synthétiseurs sont alors connectées soit à un haut-parleur commun 6 par un organe de raccordement connu, soit éventuellement chacune à un haut-parleur distinct. L'application principale d'un tel dispositif est la simulation des bruits sous-marins pour former les opérateurs sonars. A titre d'exemple, on a réalisé un tel poste de simulation en utilisant un microordinateur Atari réuni à un synthétiseur Yamaha TX16W muni en sortie d'un casque audio. Un tel poste est d'un coût très faible, ne dépassant pas quelques dizaines de milliers de francs. On remarque d'ailleurs qu'il est extrèmement aisé de le transformer en poste multiopérateurs en utilisant un certain nombre de casques audio en parallèle. L'instructeur peut, à l'aide du clavier ou de la souris, isoler les critères audio élémentaires, les mixer, former des signatures de bruiteurs, fabriquer et exécuter des scénarios. Le logiciel permet une gestion dynamique des ressources sonores du générateur musical pour optimiser ainsi l'allocation des sons simultanés afin d'obtenir un excellent réalisme. En représentant sur l'écran du microordinateur des images de bateaux et un menu, on peut sélectionner les bruits souhaités ainsi que les mouvements des bateaux correspondant à des modifications de ces bruits à l'aide de la souris dont on déplace le pointeur sur les endroits d'où proviennent les bruits. Un menu permet d'apporter des modifications supplémentaires, toujours à l'aide de la souris. Une autre application consiste à générer des critères audio étalons pour aider à la classification des bruits réels par comparaison. Ce dispositif peut être utilisé dans un centre d'analyse, ou même à bord d'un bâtiment sur lequel il est embarqué. Enfin, on peut aussi utiliser un tel matériel pour générer des signaux complexes afin de procéder à des essais de sonar en injectant les signaux obtenus sur les hydrophones d'un sonar ou même en les émettant au sein du milieu marin. Une variante de cette application consiste à générer de fausses signatures pour pouvoir dérouter les opérateurs des sonars hostiles. REVENDICATIONS 1. Procédé de simulation de sons d'origine marine, caractérisé en ce que l'on programme un synthétiseur musical (5) par l'intermédiaire d'une liaison de type MIDI pour obtenir sur une partie au moins du "clavier" d'un canal du synthétiseur un son dont le spectre est celui du son que l'on veut simuler, puis que l'on commande le synthétiseur à partir de la liaison MIDI pour obtenir les notes correspondant à ce son. 2. Procédé selon la revendication 1, caractérisé en ce que l'on bloque la vélocité de chaque note à une valeur fixe. 3. Procédé selon la revendication 2, caractérisé en ce que l'on bloque cette vélocité à sa valeur maximale. 4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que l'on utilise la fonction glissement de chaque note pour faire varier de manière continue la hauteur du son obtenu, en minimisant les changements de notes. 5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que l'on affecte un canal en entier à un son déterminé. 6. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que l'on fait une partition du "clavier" d'au moins un canal pour obtenir plusieurs sons distincts sur ce canal. 7. Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que l'on utilise plusieurs synthétiseurs (51,52) en les programmant conjointement à partir d'une carte multilignes MIDI (7).