JMRI: Les Noms et Désignations
Cette page explique comment les objets JMRI sont nommés, comment ces noms sont utilisés
pour référencer les objets (matériel et logiciel), et comment les noms lisibles par
l'utilisateur sont utilisés..
Qu'est-ce qu'un nom?
Pourquoi avons-nous besoin de noms pour tout, plutôt que simplement des références dans le code?
Il ya plusieurs utilisations importantes:
- Lorsque vous travaillez avec l'entrée utilisateur, par exemple, en saisissant un nombre dans un champ,
le code aura besoin de savoir comment caractériser les informations fournies par l'utilisateur
sur des objets. Parfois, l'utilisateur voudra nommer les objets
avec un nom d'utilisateur arbitraire, par exemple, "Aiguillage Lockport-Est".
Ceux-ci peuvent ne pas être connus avant que leur mise en correspondance avec du matériel n'aient été réalisées.
Mais d'autres fois ce seront de nouvelles identifications que le
code doit comprendre, par exemple, quelque chose qui signifie "LocoNet Aiguillage 23 .
- Nous imaginons que les configurations sont stockées dans des fichiers XML,
sous une forme symbolique. Les noms sont un moyen pratique de relier des objets
et des références d'objets dans ce genre de configuration.
Éléments avec des noms
Il y a un certain nombre de choses qui peuvent avoir besoin des noms:
- Aspects pour les signaux
- Cantons (segment de voies)
- Feu de signalisation
- Lumières(un type de sortie)
- Mémoires
- Sorties
- Alimentation districts et Alimentation sous-districts
- Itinéraires
- Entrée Capteurs
- Aiguillages
- logiX
Certains d'entre eux sont associés à un périphérique matériel spécifique, par exemple un aiguillage particulier. D'autres sont plus virtuels, par exemple, un itinéraire, qui est une série d'information de commandes
au sein du programme.
Noms Système et Utilisateur
JMRI utilisent à la fois les "noms système" et les "noms utilisateur " pour référencer des choses
Nous voulons que les utilisateurs puissent appeler les choses comme ils veulent.
Des noms tels que "p (24,23) *" ne sont pas utiles. Chaque élément nommé pourra donc
avoir un "nom utilisateur", qui est une chaîne entièrement libre. Vous pouvez mettre
ce que vous voulez dedans, tant que ce n'est pas un duplicata de nom
donné à autre chose. Par exemple, on pourrait appeler un Aiguillage "West yard lead"
ou "aiguillage 32 " ou "fil vert du contrôleur" ou autre chose.
Dans le même temps, nous avons besoin d'un nom raccourci, un identifiant vraiment unique,
pour nous parler des objets spécifiques. ça ne doit pas être commode, mais
nous devons avoir une caractéristiqu claire de nom pour l'objet et retour. Par exemple,
nous avons besoin d'une manière très spécifique pour identifier les "Aiguillage LocoNet 23. Nous appelons ceci
"noms de système". Le Code JMRI caractérisera ceux-ci vers et depuis toutes les informations
dont le matériel peut avoir besoin.
Format du Nom Système
Un nom système est formé d'un préfix court représentant le matériel du système,
suivie d'une seule lettre Majuscule indiquant le type,
suivi par une chaîne système type et spécifique.
La chaîne est censée être liée à l'adressage matériel, mais
c'est par ailleurs sans contrainte.
Exemples:
- LT23 - Loconet Turnout 23. ( Aiguillage LocoNet n°23 )
- CS12
- - Les 12 C/IRM SEnsor .( Capteur C/MRI n°12 )
Notez qu'il n'y a aucune hypothèse de modèle pour les noms, ils ne sont pas
affecter de façon monotone, ils ne sont pas limités à un seul système.
Préfix Matériel
À l'origine, le "préfix matériel" était une simple lettre majuscule
identifiant un simple système de connexion: L pour LocoNet, N pour NCE, etc.
Les lettres par défaut pour ceux-ci sont listées ci-dessous.
Ceci est encore de loin l'utilisation la plus courante; La plupart des réseaux miniatures ont une simple
connexion, et utilise juste la lettre par défaut.
Le code JMRI est beaucoup plus flexible que ça, cependant. Cela lui permet
de faire face à de multiples systèmes de connexions et des chevauchements de lettres ( Telles que les
multiples possibilités définies pour "M" ci-dessous ). Vous changez la lettre
associée avec un système de connexion dans les préférences par une autre
lettre majuscule. Vous pouvez appeler votre connexion NCE "P" si vous
le voulez. Si vous avez en avez deux, vous pouvez en appelez un "X" et
l'autre "Y". Vous pouvez aussi utiliser une lettre majuscule suivie
par des digits, ex: "N1" et "N2".
Lettres Système par Défaut
Notez que certaines d'entre elles sont des espaces réservés, et n'ont pas de mise en œuvre sous-jacente.
( Liens avec les pages JMRI pour plus d'informations )
Lettres Type Périphériques
Notez que certains d'entre eux sont des espaces réservés, et n'ont de mise en œuvre sous-jacente. Aussi,
il n'y a aucune garantie que tout système de matériel donné ne sera jamais mis en œuvre pour chacun d'eux.
- A Audio - un objet logiciel interne qui contient des informations sur un échantillon son
pour être placé à une position spécifique dans l'espace 3D
- B Bloc(Canton) - un objet logiciel qui permet de suivre le contenu d'un canton spécifique
de la voie
- D iDentité -Un objet logiciel qui contient des informations sur une plaque d'identité qui est,
généralement, attaché à un morceau de matériel roulant. Ces objets ne sont pas
spécifiques au système, mais sont des objets internes, donc ont des noms commençant par l'ID.
Le matériel sous-jacent va utiliser des objets Reporter pour communiquer avec JMRI quand un objet
identité spécifique a été vu
- F Mât Signalisation (F n'est pas particulièrement mnémonique, peut-être qu'un mât à deux feux
ressemble à un F vue de côté? Toutes les bonnes lettres ont été prises)
- H Feu de signalisation - Une partie d'un signal (qui peut avoir plusieurs feux).
Également interprété pour inclure des indicateurs sur les panneaux de commandes qui
agissent pour afficher les aspects des signaux
- M Mémoire - Pour l'instant, cela n'a pas vraiment d'équivalent dans le matériel de réseau,
mais est utilisé comme un endroit pour stocker temporairement des informations et un affichage sur panneaux, etc.
- L Light (Lumière) -une autre forme de sortie, par exemple, utilisé pour les voyants de contrôle sur un réseau
- P - Gestionnaire d'alimentation du réseau, à savoir, district, sous - district; tous les systèmes
ne font pas de distinction entre ceux-ci, de sorte que la lettre type d'appareil ne le fait pas non plus.
Par exemple, la partie du système spécifique pourrait être B pour la puissance du réseau
principale, par exemple LPB ou S42 pour 2 canaux sous-district sur la carte 4, par exemple LPS42.
- R Rapports - un mécanisme d'usage général pour la communication d'informations complexes
du réseau, par exemple, identification locomotive depuis certains matériels, Transpondeur,
Numéros des étiquettes RFID, etc.
- S Sensor (Capteurs) - en général les capteurs d'entrée ont un but qui est généralement
d'être ACTIF ou INACTIF. C'est le plus couramment utilisé pour le remplissage des
détecteurs de cantons.
- T Turnout (Aiguillage) - en fait une sortie à usage général sur le réseau
- X Logix - un ensemble d'équations logiques utilisées pour commander le réseau
Info-spécifiques Système
Chaque système matériel différent peut spécifier la "chaine " qui suit le système et la lettre type.
Généralement spécifique, ce sont de petits nombres, mais leur signification exacte est très spécifique au système.
Pour plus d'informations, s'il vous plaît voir les pages spécifiques pour
( Si vous constatez un oubli, SVP
Ajoutez une référence)
Les objets "internes" peuvent également être adressés et manipulés, mais ils n'ont pas de stricte
correspondance avec certains matériels sur le réseau. Par exemple, si un feu de signalisation
est mise en œuvre sur trois sorties différentes, LT1, LT2 et LT3, l'objet feu de signalisation
pourrait être appelé IH3.
Convention de Désignation pour un usage automatique
Certaines constructions de niveau supérieur créent leurs propres éléments. Par exemple, un
"Groupe Capteur"
C'est vraiment juste une collection d'Itinéraires
qui implémente la logique de groupe capteur, il n'y a pas d'objet spécifique dans le
programme qui met en œuvre le groupe de capteurs. Au lieu de cela, lorsque l'utilisateur
crée un groupe capteur "mon groupe", une série d'itinéraires avec des noms de système, comme:
CAPTEUR GROUPE: mon groupe: LS1
CAPTEUR GROUPE: mon groupe: LS2
sont créés qui met en œuvre le groupe. L'outil de groupe capteurs sait où regarder
pour les itinéraire de ce nom.
Pour ce faire, deux règles informelles sont utilisées:
- Les utilisateurs ne devront pas utiliser les caractères :, ASCII 0x3A),
" (double quote, ASCII 0x22),
ni
$ (dollar sign, ASCII 0x24 ) dans les noms de système ou utilisateur.
Les outils automatiques doivent utiliser au moins un de ceux-ci afin de s'assurer qu'ils n'entrent pas en collision
avec un nom choisi par l'utilisateur.
- Les outils qui utilisent cette méthode ont leur nom d'outil au début de tous les noms de système
qu'ils créent, comme "SENSOR GROUP" a été utilisée ci-dessus.
La liste des outils travaillant de cette manière:
- CAPTEUR GROUPE - jmri.jmrit.sensorgroup
- USS CTC - jmri.jmrit.ussctc
- Feux de Signalisation - particularièrement SE8C
- - Les 12 C/IRM SEnsor .
Notez qu'il n'y a aucune hypothèse de
modèle pour les noms, ils ne sont pas affecter de
façon monotone, ils ne sont pas limités
à un seul système.
Notes
- Certains appareils ne sont pas vraiment nommés.
Le programmateur DCC est le premier exemple, mais il peut y
en avoir d'autres.
- La convention nom système ne fournit pas un
moyen facile d'identifier plus d' un adaptateur d'un type
donné. Par exemple, si vous êtes
connecté à plus d'un LocoNet, ou à
plus d'une station de commande d'un seul type, qui
alimentent des parties distinctes d'un réseau
unique, comment adressez-vous ceci?
- De même, il n'y a aucune disposition pour un seul
programme pour faire face à plus d'un réseau.
Si c'est nécessaire, nous devons comprendre ce que
le programme tente de faire