Auteur Sujet: Projet partagé d'un gestionnaire de réseau  (Lu 312064 fois)

DDEFF

  • Hero Member
  • *****
  • Messages: 812
    • Voir le profil
Re : Projet partagé d'un gestionnaire de réseau
« Réponse #555 le: avril 18, 2025, 06:13:30 pm »
Pour les super_appareils, l'explication est dans le lexique : comme on regroupe les fils des moteurs d'aiguille pour les commander, on a moins de fils de commande, globalement.
Et ça simplifie le câblage et le gestionnaire.

Les bretelles, elles étaient dans ton JSON et c'est le plus simple des super_appareils : 2 positions pour 2 appareils au lieu de 4.
"Ce n'est pas le puits qui est trop profond, c'est ta corde qui est trop courte" (proverbe chinois)

DDEFF

  • Hero Member
  • *****
  • Messages: 812
    • Voir le profil
Re : Projet partagé d'un gestionnaire de réseau
« Réponse #556 le: avril 18, 2025, 08:16:59 pm »
Pour moi, un super appareil, c'est pour diminuer le nombre d'aiguillages vu du gestionnaire.
Moins d'appareils, c'est une gestion plus rapide.
Sans changer les possibilités du réseau. On retire simplement les configurations de lames qui ne servent pas et qui nuisent à la sécurité.

Denis :P
« Modifié: avril 18, 2025, 08:23:44 pm par DDEFF »
"Ce n'est pas le puits qui est trop profond, c'est ta corde qui est trop courte" (proverbe chinois)

DDEFF

  • Hero Member
  • *****
  • Messages: 812
    • Voir le profil
Re : Projet partagé d'un gestionnaire de réseau
« Réponse #557 le: avril 20, 2025, 04:41:47 pm »
En fait, en analysant mieux les problèmes, je propose de diminuer le nombre d'objets dans le gestionnaire, ce qui diminue la taille du JSON, par voie de conséquence.

Qu'est ce qu'un "super-appareil" ?

C'est une liste de positions de lames d'appareils de voie.
Cette liste est optimisée, réduite aux seules positions constructives et améliorant la sécurité.
Cette liste peut concerner plusieurs appareils de voie simples.
Une position correspond à un bouton sur le TCO.
Je noterai SU le super-appareil, pour plus de simplicité d'écriture.

1°) Aiguillage :
C'est le SU le plus simple, avec seulement 2 positions : gauche et droite.
2°) Traversée simple :
Lui aussi a 2 positions, virtuelles (tout droit 1 et tout droit 2)
3°) TJS :
SU à 3 positions (tout droit 1, tout droit 2 et dévié).
Cela correspond au câblage où 3 boutons suffisent (avec des diodes)
4°) TJD :
SU à 4 positions.
5°) Triple
SU à 3 positions
6°) Bretelle simple :
SU à 2 positions, concernant 2 aiguillages. Il n'y a même pas besoin de diodes.
7°) Bretelle double :
SU à 3 positions, concernant 4 aiguillages
8°) Triple + bretelle :
Qu'il y ait une ou 2 bretelles simples impliquant un triple, il n'y a que 3 positions.

Ma proposition est la suivante :

1°) On renomme la partie "appareils" en "moteurs" : c'est la liste des moteurs d'aiguille
2°) On supprime la partie "bretelles"
3°) Dans la partie "zones", on définit les VoisP et VoisI en indiquant la position du SU correspondant
4°) Dans la partie "Super-appareils", on définit une liste de positions possibles.
Exemples d'applications sur le réseau de test :
---------------------------------------------------------------------------------
Z24 avant :
            "Z24" : {
                    "nom" : "Z24",
                    "voisP" : "Z25",
                    "voisI" : [["Z220","a18","gauche","999"],["Z230","a18","droite","999"]],
                    "no" : 22
            },
Z24 après :
            "Z24" : {
                    "nom" : "Z24",
                    "voisP" : "Z25",
                    "voisI" : [["Z220","Su18","0","999"],["Z230","Su18","1","999"]],
                    "no" : 22
            },
Quasiment pas de changement pour une aiguille isolée. J'ai pris Su18 au pif, pour l'exemple.
"Su18" : {
"nom" : "Su18",
"positions" : [["a18", "gauche"], ["a18", "droite"]],
"no", 28
},
----------------------------------------------------------------------------------------------
Z2, Z6, Z39 avant :
            "Z2" : {
                    "nom" : "Z2",
                    "voisP" : "Z3",
                    "voisI" : [["Z1","a15","droite","999"],["Z6","a15","gauche","999"]],
                    "no" : 2
            },
            "Z6" : {
                    "nom" : "Z6",
                    "voisP" : "Z400",
                    "voisI" : [["Z39","a16","droite","999"],["Z2","a16","gauche","999"]],
                    "no" : 6
            },
            "Z39" : {
                    "nom" : "Z39",
                    "voisP" : "Z7",
                    "voisI" : [["Z500","a13","gauche","999"],["Z6","a13","droite","999"]],
                    "no" : 37
            },
Et ça devient :
            "Z2" : {
                    "nom" : "Z2",
                    "voisP" : "Z3",
                    "voisI" : [["Z1","Su19","1","999"],["Z400","Su19","2","999"]],
                    "no" : 2
            },
            "Z6" : {
                    "nom" : "Z6",
                    "voisP" : "Z400",
                    "voisI" : [["Z7","Su19","2","999"],["Z3","Su19","3","999"]],
                    "no" : 6
            },
            "Z39" : {
                    "nom" : "Z39",
                    "voisP" : "Z7",
                    "voisI" : [["Z500","Su19","0","999"],["Z4","Su19","3","999"]],
                    "no" : 37
            },
Avec :
"Su19" : {
"nom" : "Su19",
"positions" : [["a13", "gauche"],["a15", "droite"],
                      [["a13", "gauche"],["a15", "gauche"],["a16", "gauche"]],
                      [["a13", "droite"],["a15", "droite"],["a16", "droite"]]]
"no", 28
},
On pourrait trouver ça un peu compliqué, mais on passe de 3 aiguilles (a13, a15 et a16) à un seul SU (Su19) à 4 positions. Notez que les zones voisines ont changé.
Un seul SU, mais 3 zones. Et plus de bretelles.

Denis :P
"Ce n'est pas le puits qui est trop profond, c'est ta corde qui est trop courte" (proverbe chinois)

Pierre59

  • Sr. Member
  • ****
  • Messages: 374
    • Voir le profil
Re : Projet partagé d'un gestionnaire de réseau
« Réponse #558 le: avril 20, 2025, 05:02:21 pm »
Faut que je regarde plus sérieusement pour les su, les numéros ne me disent rien.

Sinon il faut que l'on commence à écrire le gestionnaire, pour l'instant on a quasiment rien. On pourrait commencer à instancer les zones, sans vouloir tout de suite mettre dedans tous les paramètres.

Pierre

DDEFF

  • Hero Member
  • *****
  • Messages: 812
    • Voir le profil
Re : Projet partagé d'un gestionnaire de réseau
« Réponse #559 le: avril 20, 2025, 07:05:53 pm »
Dans les exemples donnés, les zones ont les bons numéros, les bons paramètres, mais j'ai pris "au pif" des numéros de Su. C'est un exemple.

A part ça, je suis désolé : je ne sais pas instancier des zones en les remplissant à partir du JSON.

Denis :P
"Ce n'est pas le puits qui est trop profond, c'est ta corde qui est trop courte" (proverbe chinois)