Table of Contents

French VersionDeutsche VersionEnglish Version

ZNF: Système de suivi FREMO

SommaireLes Centrales NumériquesProtocoles


Introduction à RR2ZNF

Le système de notification des numéros de train FREMO (ZNF) est utilisé pour simplifier les opérations et la communication entre les les unités d'exploitation. Le numéro de train est transmis d'une voie ZNF à l'autre. Cela se fait au moyen de télégrammes qui sont distribués à toutes les boîtes de signalisation via un serveur.

La tâche la plus importante du ZNF est d'informer: à savoir quand quel train se trouve où.

Le but est de concevoir la communication entre ZNF et Rocrail de telle sorte que: 1) les systèmes communiquent ensemble et se comporter de manière compatible dans les différentes situations de fonctionnement. 2) créer une implémentation Rocrail qui autorise les utilisateurs les moins expérimentés de Rocrail à exploiter leur centrale dans le cadre d'un accord FREMO-ZNF avec Rocrail.

La fonction de ZNF est représenté de manière compatible dans Rocrail avec une architecture qui diffère du prototype. La communication est faite selon la "Spezifikation Implementierung einer Zugnummern- Meldeanlage für eine FREMO-Betriebsstelle, Bodo Mertins, 17.11.2013." Cela décrit également la structure de base et le fonctionnement plus en détail d'un ZNF.

Interaction entre ZNF et RR

L'équivalent du champ de voie ZNF est le bloc Rocrail - les deux décrivent l'emplacement d'un train. Chaque champ ZNF possède un Numéro d'Identification du Champ de Voie (GBNR) qui, lorsqu’il est combiné avec le Numéro de Sous-station (UST), fourni l'adresse unique de chaque champ. Cependant, le GBNR est limité à six caractères numériques, contrairement à l'Identifiant de Bloc Rocrail. Par conséquent, le GBNR est stocké dans un attribut de bloc différent, à savoir le trackingID. Le trackingID est ainsi composé d'un numéro de sous-station à deux chiffres et d'un numéro de champ de voie à quatre chiffres, y compris les zéros non significatifs si nécessaire. Par exemple, voie 1 dans UST 15 obtient le trackingID 150001. Les blocs sans trackingID n'envoient pas de télégrammes au serveur ZNF. Donc numéro de champ de voie ZNF = trackingID du bloc RR

Les blocs à la transition vers un autre secteur imbriqué ont une fonction spécifique. A travers ces blocs de transition les trains peuvent entrer et quitter la zone RR d'un autre secteur imbriqué. Seuls ces trains peuvent être affectés et générés par le ZNF également dans les blocs RR. Les blocs de transfert ont également un numéro transferID de bloc en plus du numéro trackingID. Cela suit la même nomenclature que le trackingID et peut, mais cela ne doit pas être identique. Donc Transférez donc les blocs avec transferID uniquement à la frontière même du secteur imbriqué..

ZNF ne prend en charge aucune tâche de protection des trains. L'acheminement, la sélection d'itinéraire, l'enclenchement d'itinéraire, la protection de train, etc. ne sont pas pris en charge par le ZNF, mais exclusivement par l'enclenchement local dans la zone dans laquelle se trouve actuellement le train. Le numéro du train se transmet d'une voie à l'autre si certaines conditions sont rencontrées. Néanmoins, selon le ZNF, les changements de numéro de train sont possible de l'extérieur, par exemple si un train a été envoyé accidentellement avec un mauvais numéro. Par conséquent, le numéro de train doit être une propriété secondaire pour que le mode automatique RR continue de fonctionner.

Contrairement à ZNF, Rocrail gère également l'acheminement bloc à bloc dans un plan qui peut être utilisé en mode automatique. Donc, dans Rocrail il est clair depuis le début que l'on sait que tel train se trouve dans tel bloc et le message à ZNF peut être directement lié aux mouvements du train.

Même si les trains avec les numéros de train sont disponibles comme objets dans Rocrail, ils ont d'autres tâches et circulent dans RR selon l'horaire. Par conséquent le numéro de train ZNF est une propriété secondaire d'une locomotive. L'identifiant court (%lcshortid%) est utilisé à cette fin. L'identifiant court ne doit pas contenir des zéro non significatifs et au début et est destiné à être utilisé pour ZNF avec un maximum de 5 chiffres purement numérique. Donc numéro de train ZNF = identifiant court de locomotive RR.

Une locomotive se déplaçant en mode automatique ou semi-automatique dans un secteur interdépendant RR informe le serveur ZNF des mouvements de la locomotive au moyen d'un télégramme transmis. Ainsi les changements de statuts des blocs ou les changements d'occupation des blocs sont utilisés comme déclencheurs pour envoyer les télégrammes ZNF. Cette partie est appelée RR2ZNF.

Pour qu'un bloc puisse informer le serveur ZNF sur l'emplacement, le bloc doit obtenir une entrée en plus dans l'onglet Câblage CTC / Identifiant d'Interface et Affichage, le trackingID et si nécessaire un transferID. Le trackingID est utilisé comme adresse pour l'envoi, le transferID traite les télégrammes reçus. Seuls les mouvements de train sont reportés. Les blocs qui sont seulement utilisés pour les manœuvres n'obtiennent pas un trackingID. Une locomotive (manœuvrant) qui se déplace uniquement dans le secteur imbriqué n'a pas besoin d'un shortID.

Un train entrant dans le bloc de tranfert vers le secteur d'enclenchement RR depuis l'extérieur est reporté par le télégramme 05, 06 et/ou 02. Le numéro de train reporté est recherché comme un shortID dans la liste des locomotives et la locomotive correspondante est placée dans le bloc de transfert. Si aucun shortID approprié n'est disponible, une nouvelle locomotive est générée.

Parfois un numéro erroné doit être généré, par exemple si un train non reporté apparaît dans un bloc de transfert (message fantôme). La syntaxe du numéro d'erreur est FuuNN F = premier "F uu = deux chiffres UST NN = nombre à deux chiffres en augmentation continue, redémarre avec 00 après avoir atteint 99 par exemple shortID = F1501


Tableau de traduction du glossaire

Rocrail et ZNF parlent différents dialectes comme les termes sont utilisés différemment.

Rocrail ZNF Commentaires
BlockfieldUn bloc est une position ou un train doit s'arrêter. Un bloc doit seulement être occupé par un seul train à la fois.
trackingIDGBNRL'identifiant unique d'un bloc dans le système ZNF. Il est composé par les deux chiffres UST et un numéro à 6 chiffres.
Loco/enginetrainL'objet le plus générique pour représenter un train dans Rocrail est une locomotive.
Loco shortIDtrain numberLe numéro du train est stocké comme une valeur secondaire de la locomotive, le shortID.
TrackingZNF ZugnummernverfolgungLe système pour suivre la position du train à travers le réseau et de faire passer les trains d'un secteur imbriqué à un autre.
transfer block / ÜbergabeblockUn bloc qui est affiché sur deux systèmes d'enclenchement pour faire passer les trains. Typiquement un tronçon d'embranchement. Les blocs transférés sont les seuls blocs pour exécuter le télégramme ZNF entrant dans les actions RR (exception 21,30).
tracking messageZNF telegrammUn message envoyé via le système ZNF pour informer les autres centrales de la position et des changements des trains.
Loco automodeUne locomotive en mode automatique a un bloc de destination défini et sera dirigée tout du long du secteur imbriqué vers ce bloc. Dans un environnement pur RR, les commandes de vitesse sont également envoyées à la locomotive en mode automatique. Aussi avec un système FREMO le système de commande de conduite de locomotive est complètement séparé, ces commandes sont simplement non utilisées. Les utilisateurs RR connaissent l'opération commandée par le conducteur comme le mode semi automatique. Sur un système FREMO, il n'est pas nécessaire de mettre les locomotives en mode semi automatique mais le mode automatique suffira.


Contrôleur

znfdlg-en.jpg
Note: Le contrôleur ZNF doit être le dernier dans la liste.

Interface ID

Connexion 'Nom de la centrale' du ZN-Server. (Bahnhofsname)

Short IID

À droite du champ d'identifiant d'interface, est utilisé comme centrale acronyme lors de la connexion au ZN-Server. (Bahnhofskürzel)

UniqueID

Utilisé comme numéro de sous-station (UST). Contacter le forum Fremo "Signal" https://forum.fremo-net.eu/c/spezial/signal/ afin d'obtenir votre numéro de sous-station.
Rechercher assignation numéros de sous-station.

Hostname:Port

Si la Diffusion UDP n'est pas possible le ZN-Server IP:Port peut être défini de manière statique.
Le Port semble être 50100 par défaut.

Options

Suivi

Permet de suivre les événements vers les clients Rocrail.
Voir: Moniteur de suivi

Serveur

Active le ZN-Server local.

Find ZN-Server

Pour être capable de trouver le ZN-Server un paquet de diffusion UDP est envoyé à l'adresse IP:Port suivante: 255.255.255.255:57111
Assurez-vous que la diffusion UDP n'est pas bloquée.
Note: Aucune recherche ne sera émise si le nom d'hôte et le port sont définis.


Block

Tracking & Transfer ID


Tracking ID

Cet identifiant est utilisé pour publier les mouvements au ZN-Server. Les deux premiers chiffres du trackingID contiennent le numéro de sous-station (UST).

Transfer ID

Cet identifiant est utilisé pour l'arrivée des télégrammes du ZN-Server. Les deux premiers chiffres du transferID contiennent le numéro de sous-station (UST) du secteur voisin.
Le transferID est habituellement défini par le numéro de champ de l'embranchement de la station voisine et ainsi est modifié selon le réseau rencontré. Le transferID doit être réglé uniquement dans les blocs transférés (Übergabeblock) au bord du secteur.

+ Block enter side

Détermine la direction des locomotives nouvellement placées dans le bloc de transfert (Übergabeblock). Réglez l'attelage pour placer les locomotives dans la direction +.


CTC Display

block-wiring-ctc-tracking-en.jpg
L'affichage CTC doit être activé dans le contrôleur ZNF pour être capable de publier les mouvements au ZN-Server.

Interface ID

Le IID du contrôleur ZNF.

Display Nr.

Doit être supérieur à zéro pour être actif.

Text

L'Identifiant court de la locomotive.
Note: Les zéros non significatifs dans l'identifiant court doivent être évités.

Types de télégrammes supportés

Rocrail vers ZN (envoie de télégrammes)

L'identifiant court actuel de la locomotive est toujours utilisé dans le télégramme. Seuls les blocs avec un trackingID envoient des télégrammes ZNF. Pour les évènements qui sont déclenchés en réponse à un télégramme ZNF entrant, aucun télégramme n'est envoyé en réponse.

Évènement RR Type de télégramme ZNF envoyé Description Actions Rocrail supplémentaires use-cse
In 02Une locomotive atteint le bloc suivant, évènement entrant déclenché par le détecteur (bloc rouge) Informations régulières vers ZNF quand une locomotive continue son voyage et atteint le prochain bloc. Les déclenchements ZNF Gleisfeld ou ZNF Spiegelfeld avec identifiants correspondants.
In (seulement les blocs avec transferID) 02 Une locomotive atteint un bloc de transfert. évènement entrant déclenché par le détecteur (bloc rouge). Création d'un identifiant court si non défini. Défini shortID=Fehlernummer si l'identifiant court n'est pas défini Une locomotive quitte le secteur RR. Attribue Fehlernummer si un identifiant court n'est pas défini. Les déclenchements ZNF Gleisfeld ou ZNF Spiegelfeld avec identifiants correspondants.
Non utilisé 03 Train fantôme dans le bloc de transfert. Voir télégramme 10.
Non utilisé 04 Non existant
Réservé 05Un itinéraire est défini pour une locomotive vers le prochain bloc. Le bloc est réservé (bloc jaune) Annonce vers ZNF qu'une locomotive est en cours vers le bloc suivant. Les déclenchements ZNF Vormeldefelder avec seulement l'identifiant correspondant.
Enter 06 La locomotive est entrée dans le prochain bloc, l'évènement enter est déclenché par le détecteur (bloc bleu) Annonce vers ZNF qu'une locomotive est entrée dans le prochain bloc. Les déclenchements ZNF Vormeldefelder avec seulement l'identifiant correspondant.
Set block occ 10 Une locomotive est nouvellement définie Un train est démarré dans le secteur RR.
Block free → closed 10 Un bloc est mis hors service. VH=00000 (gesperrt) Annonce de fermeture du bloc.
Block Occupied → closed 10 Un bloc est mis hors service après qu'un train soit parti. VH=00000 (gesperrt) Annonce de fermeture du bloc.
Block Free → ghost (seulement le trackingID est défini) 10 Un train fantôme apparaît. VH 0F0F0 (belegt ohne Zugnummer) Annonce de fermeture du bloc.
Block closed→ open 20 Un bloc est mis en service Un bloc a été fermé et est de nouveau ouvert.
Block ghost→free 20 Un FANTÔME disparaît ou est remis un zéro par l'utilisateur. Annonce de la disponibilité de la voie.
Block ghost → closed 10 Un FANTÔME disparaît ou est remis un zéro par l'utilisateur dans un bloc fermé. VH 00000 (nicht verfügbar) Changement du bloc de "occupied by unknown train" à "not availabe"
Reset block occ 21 Une affectation loco2block est remise à zéro Un train se termine dans le secteur RR.
Reset Replace block occ 10 Une locomotive est placée dans un bloc occupé et remplace l'ancienne affectation du bloc. Une locomotive continue comme un autre train, par exemple changement de direction.
Loco shortID changed 30 La valeur de l'identifiant court est changée par l'utilisateur Corrige un mauvais numéro, par exemple Fehlernummer.
Xml Scripting 51 Script Xml Propose le train jusqu'à la prochaine gare
Xml Scrtipting 52 Script Xml Accepte le train à partir de la prochaine gare.
Xml Scripting 53 Script Xml Refuse le train de la gare suivante.
Rocrail startup 92 S'inscrire sur le serveur ZNF Établissement de la communication.

ZN vers Rocrail (télégrammes reçus)

Il y a des télégrammes ZNF, qui contiennent seulement un(des) numéro(s) de train et qui sont indépendant du bloc.

Il y a le type 21 "Delete train number" et le type 30 "Train number replace". Pour le numéro shortID=train il sera trouvé dans la liste des locomotives et le changement est seulement fait (!) sur l'identifiant court. Si le numéro de train n'est pas trouvé dans les identifiants courts, rien ne se passe.

Seuls les blocs avec un transfer ID écouteront les télégrammes ZNF et exécuteront les évènements.

Type de télégrammes reçu Action dans RR Description cas d'utilisation
21 Query shortID shortID = null Effacement du numéro de train Seulement pour compatibilité.
30 Query shortID shortID = new train number Remplace le numéro de train Le train est parti avec un mauvais numéro, par exemple Fehlernummer ou à cause d'une erreur humaine.

Tous les autres télégrammes arrivant sont seulement traités dans les blocs de transfert à la limite du secteur interdépendant. Les blocs de transfert ont un transferID défini. Les changements de l'affectation du bloc sont seulement acceptés si il n'y a pas de locomotive en mode automatique dedans.

Type de télégramme reçu Description Action dans RR cas d'utilisation
02 La locomotive est définie dans le bloc de transfert. Si le bloc est déjà réservé ou entré par le télégramme précédent 05 ou 06, évènement enter2In. Sinon cré une locomotive si l'identifiant court n'existe pas dans la liste des locomotive et défini l'affectation du bloc Un train est entré dans le secteur RR.
02 avec un trackingID d'un secteur différentUne locomotive est retirée de n'importe quel bloc de transfert Répète lclist pour %lcshortid%. Réinitialiser la locomotive trouvée à partir du bloc Un train a quitté le secteur RR et et serait arrivé dans le secteur voisin / a quitté le bloc de transfert
03 Une locomotive avec Fehlernummer est créée et définie dans le bloc de transfert. Création d'une locomotive avec shortID=Fehlernummer et définition du bloc assigné. Traiter comme 02 avec train Fxxx Un train portant un Fehlernummer est entré dans le secteur RR.
04 Un train entre dans le bloc de transfert (Übergabeblock) pendant que le bloc est occupé par un autre train non supporté non supporté
05 Un bloc de transfert est réservé pour la locomotive. Crée la locomotive si l'identifiant court n'existe pas. Réserve le bloc pour la locomotive Un train est pré-annoncé pour entrer dans le secteur RR.
06 La locomotive entre dans le bloc de transfert. Allume enter-Event dans le bloc de transfert Un train pré-annoncé est en cours dans le secteur RR.
10 avec numéro du train Une locomotive est définie dans le bloc de transfert. Création d'une locomotive si l'identifiant court n'existe pas dans loclist. Définie le bloc assigné Un train est entré dans le secteur RR.
10 avec Verfügbarkeitshinweis entre 00000 et 0F0F0 Ferme le bloc de transfert Mettre le bloc de transfert hors service Le bloc de transfert a l'annonce bloquée/non disponible par une autre station.
10 avec Verfügbarkeitshinweis FFFFF Le bloc de transfert n'est pas disponible pour la traction électrique. non supporté non supporté
20 avec Verfügbarkeitshinweis FFFFF Le bloc de transfert est disponible pour la traction électrique. non supporté non supporté
20 avec Verfügbarkeitshinweis de 00000 à 0F0F0 Rouvrir le bloc de transfert précédemment fermé Mettre le bloc de transfert en service. Le bloc de transfert a été fermé et peut maintenant être ré-ouvert.
21 Retirer le numéro de train Voir au dessus
30 Renommer un train Voir au dessus
51 Script XmlLe train est proposé par la prochaine station.
52 Script XmlLe train est accepté par la prochaine station.
53 Script XmlLe train est accepté par la prochaine station.


Script XML

Le télégramme ZNF800 peut être envoyé en utilisant le nœud <tracking /> dans un script xml.

Exemple:

<tracking iid="Amsterdam-CS" cmd="10" id="4711" dir=" " location="42" currblock="430100"/>

Envoi un télégramme 4210 4711430100<cr><lf> au serveur ZNF800.

Cartographie
ZNF Script XML Rocrail
Telegramtyp cmd
LokNr id Loco shortID
BlockNr currblock Block trackingID
UST location UID
Lenkziffer dir


Actions d'événement

L'état de l'action du bloc: "tracking".

Cartographie
Script XML Variable ZNF
cmd %mode% Telegramtyp
id %lcid% LokNr
currblock %bkid% BlockNr
location %param% UST
dir %callertext% Lenkziffer


Liens

Documents


Utilisation du moniteur pour suivre les télégrammes

Pour le débogage et le suivi des télégrammes ZNF, un Moniteur de suivi est disponible sous contrôle → suivi. C'est la séquence du télégramme pour un train entrant du secteur 98 vers le secteur 96 avec l'identifiant court 1234.


Erreurs fréquentes

Chaque bloc nécessite d'avoir plusieurs entrées pour interagir avec ZNF:

Chaque locomotive doit avoir un identifiant court (max 5 chiffres) défini.


Pas à Pas d'un plan standard rocrail vers un interverrouillage compatible ZNF

La condition préalable est un plan Rocrail fonctionnant et sain. Le plan doit être capable de faire fonctionner les trains en mode automatique ou, plus précisément en mode semi-automatique. Le plus important, les blocs, les itinéraires connectés et les détecteurs nécessitent d'être définis et assignés. Si vous n'avez pas de détecteurs physiques sur votre plan, vous pouvez toujours les activer manuellement sur votre plan Rocrail.

Étape 1: Définir l'interface

Ouvrir les Propriétés Rocrail et définir une nouvelle centrale numérique du type ZNF. Entrer l'identifiant d'interface et abréviation de la centrale. Entrer en contact avec le forum Signal FREMO et acquérir un numéro de sous-station (UST) à être entré. Typiquement, le nom d'hôte peut être laissé vide et ZN-Server décoché.

Étape 2: Identifier les blocs avec des mouvements de train et entrer les détails de traçage ZNF

Le traçage doit être activé partout où les trains circulent. Noter que les opérations de manœuvre n'ont pas besoin d'être suivies. Les voies d'évitement et les blocs qui sont désignés uniquement à des fins de manœuvre n'ont pas besoin d'être suivis.
Dans chaque définition de bloc, aller à l'onglet Câblage et entrer les valeurs pour l'identifiant d'interface du TCO / display nr / texte. Cela active la publication des mouvements du train en tant que tel à l'"affichage" ZNF. Penser juste que le ZNF est un grand tableau TCO avec beaucoup de champs de numéro de train.
Les valeurs dans la boite Tracking définissent l'adresse de ce champ d'affichage. Entrer un trackingID unique pour chaque bloc. Le trackingID est composé de son propre numéro de sous-station suivi de 5 chiffres du numéro de voie avec des zéros non significatifs. La voie 1 dans la sous-station 96 obtiendrait donc le trackingID 9600001.

répéter la saisie des détails pour chaque bloc!

Étape 3: Identifier les blocs de transfert et enter le transferID

Les blocs de transfert se situe à la frontière même de votre secteur interdépendant. Un bloc de transfert est habituellement un tronçon d'embranchement reliant deux stations. Ces tronçons sont modelés dans les deux systèmes de verrouillage adjacents, de chaque coté avec son propre trackingID. Les trains présents dans un bloc de transfert sont donc visibles dans les deux stations et sont habituellement passer d'un secteur à l'autre. Pour activer le transfert, vous devez enter le trackingID de vos blocs voisins dans le transferID de votre bloc. Donc si le voisin a une sous-station numéro 98 et que l'embranchement s'appelle 0400 sur ce système, vous entrez 980400 dans le transferID de votre bloc de transfert.
Au fur et à mesure que les réseaux changent de rencontres en rencontres FREMO et que donc les voisins changent, vous devrez ajuster le transferID en préparation de la rencontre. Notez qu'il est possible de se mettre d'accord sur un seul identifiant pour ce bloc. Dans ce cas, l'identifiant nécessite d'être entré à l'identique à la fois dans le trackingID et le transferID.

soyez sûr d'entrer le transferIDs dans tous vos blocs de transfert Les blocs de transfert sont les seuls blocs qui exécutent les actions RR en réponse pour un télégramme ZNF. Par exemple, une locomotive sera (créée et) définie dans le bloc de transfert avec un type de télégramme 02 arrivant pour ce bloc. Pour éviter les interférences, les actions résultantes sont bloquées si le bloc est déjà occupé avec une locomotive qui a des objectifs et un itinéraire définis (fonctionnant en mode automatique).

Étape 4: Entrer l'identifiant court de la locomotive

Si vous avez n'importe quelle locomotive listée dans votre liste de locomotive vous devrez ajouter un identifiant court afin que les mouvements des locomotives soient annoncés au système ZNF.
Les locomotives sans un identifiant court ne peuvent pas être suivies jusqu'à ce quelles atteignent un bloc de transfert et seulement lorsqu'elles récupèrent un identifiant court avec un numéro d'erreur à partir du système.
Vous pouvez mais vous n'avez pas besoin d'avoir une locomotive pré-définie pour chaque train entrant dans le secteur. Une locomotive entrant dans le secteur sera automatiquement créée si l'identifiant court n'est pas encore présent dans la liste des locomotives. Cependant, il peut être bénéfique de pré-définir les trains car vous pouvez ajouter des informations supplémentaires dans le locID. Par exemple, le train "901" entrant dans le secteur peut être présenté comme "EC901" si l'identifiant court a été pré-défini par "901".

Propositions de modifications supplémentaires du wiki

Centrales numériques supportées: ajout de la centrale ZNF
Détails: ajout de ZNF dans l'affichage de la description