Simulateur de filtre JMLC
#1
Simulateur de filtre JMLC
Bonjour à tous

J'ai entrepris la transposition du tableur JMLC en PHP, pour une utilisation plus large par tout ceux qui n'ont pas de tableur sur leur PC.
L'autre but est une utilisation beaucoup plus large dans le site : Plus d'image à mettre à jour, chaque image sera calculée à chaque fois.
Enfin je souhaitais un tracé des courbes précis au niveau des graphiques.
D'autres évolutions sont prévues, mais faisons chaque chose en son temps.

La transposition s'est faites en plusieurs étapes :
- Tracer les courbes de réponse et des délais de phase et de groupe.
- Appliquer la correction pour entrer les filtres BESSEL comme dans le DCX.
- Appliquer la correction pour entrer les délais comme dans le DCX.

Le tracer des signaux carré n'est pas encore réalisé. Comme ils reprennent une partie du tracé des courbes de réponse, j'aimerai valider avec vous ce qui est déjà fait.

J'ai réalisé de mon coté un grand nombre de tests (et de correction de bugs) sur les exemples de mon site.
Sous les courbes, il y a des valeurs de contrôle calculées à 1000 Hz (ligne 21 du tableur de référence).
Ces valeurs sont appelées à disparaître.

Au niveau ergonomie, dans la partie choix du filtre, vous verrez apparaître "MUTE" et "OFF" qui fonctionnent comme dans un DCX.
La liste des filtres utilise une liste de choix pour éviter toute erreur.
Même approche pour les branchements "Normal" ou "Inverted" du DCX.

Au niveau tracé, les 3 premières valeurs des courbes délais sont certainement fausses, mais restent "dans l'épaisseur du trait".
Grosse simplification des calculs par contre.

Je remercie par avance ceux d'entre vous qui participeront aux tests finaux.
http://petoindominique.fr/php/filtrejmlc.php
Répondre
#2
RE: Simulateur de filtre JMLC
Beau et bon travail Dominique.... chapeau bas.
@mitiés, GéBé.

Raspberry PI5B 8Giga / AlloDigit / Volumio / DAC SMSL SU-1 / Super 30 w Hiraga classe A / Enceintes Baffles Plans DIY 3 voies

Thorens TD160 SME III S + Shure V15 IV / Préamp ART DjPRE II / Super 30 w Hiraga classe A / Enceintes Baffles Plans DIY 3 voies
Répondre
#3
RE: Simulateur de filtre JMLC
Le travail, c'est Jean-Michel qui l'a fait dans la version EXCEL.
Je n'ai fait qu'une conversion de format...
Répondre
#4
RE: Simulateur de filtre JMLC
Bonjour Dominique,

J'ai fait l'essai avec le filtre de mon système. J'ai eu un peu de mal à transcrire les délais possitifs et négatifs en delais uniquement négatif.

   
   
   

Cordialement.

Eric
Répondre
#5
RE: Simulateur de filtre JMLC
tonipe a écrit :Le tracer des signaux carré n'est pas encore réalisé. Comme ils reprennent une partie du tracé des courbes de réponse, j'aimerai valider avec vous ce qui est déjà fait.

Bonjour Dominique,

Le calcul d'un signal carré se fait par sommation de 30 sinus (fréquences : 100Hz, 300Hz, 500Hz, 700Hz...) dont amplitude et phase ont été auparavant calculés.

Je pense qu'une formulation telle que "le tracé des signaux carrés reprend une partie du tracé des courbes de réponse" n'est pas correct.

Cordiales salutations,

Jean-Michel Le Cléac'h
Répondre
#6
RE: Simulateur de filtre JMLC
Bonjour,

Dominique, amha, il serait préférable, comme sur la feuille de JMLC,
de pouvoir visualiser sur une même page l'entrée des variables et les courbes résultantes afin d'amener l'utilisateur à comprendre leurs interactions et ainsi affiner plus efficacement.
Les faibles variations de gain genre -0,5 dB n'apparaissent pas prises en compte.

crd
Répondre
#7
RE: Simulateur de filtre JMLC
Bonsoir à tous.

EBA :
J'ai entré délais tweeter = 231.6 mm, délais médium = 201.6 mm, délais grave = 0.
Cela correspond à ce que l'on rentre dans le DCX.
Le calcul se fait avec Délais tweeter = 0 mm, délais médium = 30 mm, délais grave = 231.6 mm
Cela correspond à votre simulation Délais tweeter = -30.6 mm, délais médium = 0 mm, délais grave = 201.6 mm avec une translation de 30 mm.
Le DCX accepte des valeurs de 2 mm en 2 mm.
Cela correspond t'il aux valeurs que vous avez entré dans le filtre actif ?

Jean Michel :
Ma formulation est maladroite.
Avant de me lancer dans le calcul et le tracé de signaux carré, je veux être sur du calcul de la réponse, car une partie des équations de ce calcul est réutilisé.
Je dois ajouter votre nom dans l'image calculée, c'est un oubli qui sera vite réparé.

Jimbee :
Je ne sais pas faire afficher sur la même page les valeurs a rentrer et le résultat calculé.
Je dois obligatoirement, avec mes connaissances informatique, passer par deux pages séparées.
La première page est un formulaire html, qui est envoyé à l'hébergeur du site, au serveur.
Le serveur calcule la réponse, l'image, et renvoie un résultat sous forme d'une page html.
Je peux effectivement afficher un tableau identique a celui du formulaire dans la page résultat.
Mais vous ne pourrez pas modifier le formulaire dans cette page.

Je ferai tout de même quelques tests, avec une page qui s'appelle elle même. Sait-on jamais...
Comment ça marche : http://petoindominique.fr/php/mysql_comment.php
Répondre
#8
RE: Simulateur de filtre JMLC
Bonjour Dominique,

Pour moi cela ne fonctionne pas comme cela et votre fichier non plus :

Sur la feuille de calcul à Jean-Michel :

Le grave est avancé ( + ) physiquement de 201,7 mm par rapport au médium.
Et le tweeter est reculé ( - ) de 30 ,6 mm par rapport au médium.

Le DCX inserre des retards donc des - mais pas des plus.
Il faut donc reculé le médium de 201,7 mm et le tweeter de 232,3 mm. C'est ce que j'ai rentré dans votre tableur et j'obtiens les mêmes courbes complètes que je viens de revérifier sur le tableur à Jean-Michel, phase et delais de groupe compris.

En réel, je suis en retard physique et en retard électronique. Donc j'ai aligné manuellement en faisant les calculs et ensuite j'ai aligné au CSD.

Cdt.

Eric
Répondre
#9
RE: Simulateur de filtre JMLC
Re Dominique,

Cela me fait pensé qu'il serait judicieux d'insérrer des cases de delais physiques en mm d'alignement des bobines des HP. Quand le système est composé de pavillons, les moteurs ne sont pas faicilement alignables, quand tout électronique ou en tout physique. Il est serait bien d'avoir dans le calculateur directement à partir d'un alignement physique X ( modifiable ) qui n'est pas zéro, les résultantes d'alignements électroniques complémentaires à inserrer dans un filtre ou une carte son qui seront forcément des retards.

Là, cela serait bien plus explicite pour tous.

Cordialement.

Ps pour les modérateurs : Supprimer le même poste sur alignement géométrique dans filtre.

Eric
Répondre
#10
RE: Simulateur de filtre JMLC
Bonjour à tous.

Au niveau des délais, ma démarche à été de rentrer les paramètres tel qu'on les rentre dans le DCX, et de corriger les valeurs à la simulation pour les faire correspondre a ce que demande le tableur.
Les valeurs du DCX sont ce que vous entrez dans la première page, et ce qui est affiché en haut des graphiques.
Les valeurs du tableur sont affichées dans la partie "Valeur calculées à 1000 Hz, pour la vérification".

EBA, il me semble, mais j'aimerai que vous me le confirmiez, que je calcule bien le décalage.

Lorsque vous simulez sous EXCEL : Grave +201.7 mm, Médium 0 mm, Tweeter -30.6 mm,
vous auriez aussi pu simuler avec Grave +232.3 mm, Médium +30.6 mm, Tweeter 0 mm ?
Et dans le DCX, c'est Grave 0 mm, Médium 201.7 mm, Tweeter 232.3 mm ?

Le calcul c'est donc chercher : le min(201.7 , 0 , -30.6)
Si min < 0 nous retranchons le min aux 3 valeurs, pour obtenir 233.1, 30.6, 0
Puis nous cherchons le max(233.1, 30.6, 0)
Nous retranchons le max au 3 valeurs pour obtenir 0, -202.5, -233.1
Et nous gardons la valeur absolue des 3 pour obtenir 0, 202.5 , 233.1
La solution marche t'elle dans tous les cas ?

Ce n'est pas ce que j'ai fait actuellement, et c'est beaucoup plus simple comme cela.
(Et s'il faut ajouter une 4eme voie de SUB, cela reste simple).

A 21H15, c'est cette méthode qui est programmée

A 21H30, Jimbee, vous allez avoir satisfaction, tout fonctionne dans la même page. (et j'aurai appris une méthode de plus en informatique...)
Laissez moi le temps de finir.

Dominique
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)