Généralités sur les scripts
Les scripts existent sous forme de fonctions, de déclencheurs et de minuteurs. Ils définissent une séquence de commandes simples qui sont exécutées lorsque l'action atteint un état spécifique.
Chaque action contient au moins un état dans lequel les commandes d'un état sont définies. Les commandes possibles sont :
| Nom de la commande | Fonction | attributs possibles |
| setI0 | Définit une broche sur une valeur de broche spécifique | pinID, pinValue, varID, i, value |
| set | Définit une valeur | id, intVal, value, varID |
| call | Appelle une autre action | actionID, intVal, value, varID |
| if | Exécute les commandes sous "si" uniquement si un paramètre a une valeur spécifique. | id, intVal, value, varID |
| else | Exécute les commandes sous "sinon" uniquement si un paramètre a une valeur spécifique. | id, intVal, value, varID |
| delay | Attend un temps spécifique Attention bloque la boucle (obsolète) | ms, value, varID |
| on | Le train doit passer la balise XXX et éventuellement exécuter une commande - voir Chapitre 7.3 - Ordres de conduite |
L'évolution de l'état d'une action dépend du type d'action :
- Les fonctions et régulateurs de valeur sont modifiés par l'utilisateur via l'application CTC en appuyant sur un bouton ou en déplaçant un curseur.
- Les minuteurs sont déclenchés une fois après un temps déterminé ou à intervalles réguliers automatiquement par le module CTC.
- Les capteurs sont déclenchés par des interrupteurs. Ceux-ci peuvent être actionnés par une personne ou par une locomotive ou un wagon lors de son passage.
- Les déclencheurs sont déclenchés à la suite d'une autre action. Les déclencheurs peuvent être des fonctions, des régulateurs de valeur, des capteurs ou des identifiants lus par les locomotives.
Le niveau supérieur du script définit comment l'action doit réagir aux valeurs. Dans la configuration des valeurs, les actions possibles pour une fonction sont définies (elles font partie du fichier cfg.xml). Ainsi, par exemple, pour la lumière d'une locomotive, les quatre actions suivantes peuvent être définies :
- off
- on
- front
- back
Pour chaque action, il est possible de définir quelle sortie définie dans la configuration E/S doit être commutée. Cela est souvent une seule sortie, mais peut aussi être une séquence avec conditions, comme le montre l'exemple de dialogue pour l'action straight (tout droit) de l'4242aiguillage PI-Dev-LH54242.
Pour les aiguillages, il faut noter que l'4242icône4242 affichée dans la liste des aiguillages est déterminée par le nom de l'action . La position (0 à 2) indique la colonne dans la vue des aiguillages :
| Fonction | Nom de l'action | Caractère | Icône | Position recommandée |
| Aiguillage à gauche | left_left | l |
|
0 |
| left_straight | s |
|
1 | |
| Aiguillage à droite | right_straight | s |
|
1 |
| right_right | r |
|
2 | |
| Aiguillage à trois voies | three_left | l |
|
0 |
| three_straight | s |
|
1 | |
| three_right | r |
|
2 | |
| Aiguillage à croisement | cross_notcross | n |
|
0 |
| cross_cross | x |
|
1 | |
| Aiguillage à croisement 4 voies | cross_hor | h |
|
0 |
| cross_vert | v |
|
1 | |
| cross_left | l |
|
2 | |
| cross_right | r |
|
3 |
Commandes pour locomotives / signaux
Si une commande '@' (envoyer SSID/mot de passe WiFi) est définie sur une balise (à partir du firmware 20260105, application CTC 4.46), la configuration WiFi du module CTC est transmise au lieu de la commande normale, voir Chapitre 3.6 "WiFi temporaire" .
Les commandes suivantes peuvent être interprétées par les locomotives lorsqu'elles sont associées à une balise :
| Fonction | Caractère | Signification | Dist | Description |
| Arrêt (Hp0 / rouge) | 'H', 'h' | Indication d'un signal rouge à venir. | Distance | La locomotive ralentit et s'arrête devant ce signal. Si le signal redevient vert, la locomotive reprend sa marche et accélère jusqu'à la vitesse maximale autorisée selon l'indication du signal. |
| Marche (Hp1 / vert) | 'F', 'f' | Indication d'un signal vert. | Distance | Toute limitation de vitesse précédente est levée. En conduite manuelle, rien ne se passe, sinon la locomotive accélère jusqu'à sa vitesse maximale. |
| Marche lente (Hp2 / vert+jaune) | 'W', 'w' | Indication de marche lente. | Distance | Si la locomotive est trop rapide, elle ralentit à une vitesse réduite, par exemple pour ne pas dérailler sur un aiguillage divergent. |
| Limitation de vitesse | 'L', 'l' | Indication d'une limitation de vitesse. | Vitesse | Si la locomotive est trop rapide, elle ralentit à cette vitesse. La distance est multipliée par 10 et interprétée comme vitesse. |
| Vitesse minimale | 'M', 'm' | Indication d'un signal rouge à venir avec une deuxième balise pour l'arrêt définitif. | Distance | La locomotive ralentit à une vitesse de marche à pied. La deuxième balise avant le signal envoie alors un arrêt avec une distance de 0 cm ou un arrêt d'urgence. |
| Arrêt d'urgence / Emergency-Stop | 'E', 'e' | Arrêt d'urgence, par exemple juste avant la fin de voie ou un signal. | Distance | La locomotive s'arrête brusquement. Si le signal redevient vert, la locomotive reprend sa marche et accélère jusqu'à la vitesse maximale autorisée selon l'indication du signal. |
| Arrêt | 'S', 's' | Indication d'un arrêt selon l'horaire. | Pause en secondes | En mode automatique, la locomotive s'arrête, attend la durée de pause et reprend ensuite sa marche. À partir de l'application CTC 4.08 : en mode manuel, fonctionne comme un arrêt de protection avec une distance de 0. |
| Marche arrière | 'R', 'r' | Indication d'un arrêt à venir au point de rebroussement de l'horaire (train navette). | Pause en secondes | En mode automatique, la locomotive s'arrête, attend la durée de pause et reprend ensuite sa marche dans le sens inverse. À partir de l'application CTC 4.08 : en mode manuel, fonctionne comme un arrêt de protection avec une distance de 0. |
| Arrêt de protection (Sh2) | 'T', 't' | Indication de la fin de voie, par exemple heurtoir. | Distance | La locomotive ralentit et s'arrête devant ce panneau. |
Presque chaque commande est associée à une distance en cm à laquelle cette commande s'applique. La locomotive calcule sa distance de freinage en fonction de cette distance, par exemple, "Arrêt" avec une distance de "65" fait que la locomotive s'arrête après 65 cm.
Remarque : La condition préalable pour un freinage cible fonctionnel est un capteur moteur correctement calibré (voir Chapitre "Calibrer le capteur moteur" )
Les commandes peuvent être soit intégrées de manière fixe dans la balise, soit modifiées dynamiquement à l'aide de "déclencheurs". Il est ainsi possible de lier une balise à l'état d'un signal (voir Chapitre "Config - Lier les actions" ). C'est pourquoi il est recommandé d'utiliser les mêmes lettres pour les états de signal que pour la commande de locomotive correspondante.
Le scripting ou la programmation générale de la configuration est désormais possible directement dans l'application. Pour y accéder, il suffit d'appuyer sur le bouton "Actions". Vous pouvez ensuite choisir le produit et l'action que vous souhaitez ajouter. Vous avez le choix entre plusieurs actions.
Une fois que vous avez fait votre choix, vous accédez à la fenêtre de script correspondante pour y adapter le script.
Il est également possible de le faire en modifiant directement le fichier cfg.xml.
Attention
Il est fortement déconseillé de modifier le fichier cfg.xml, car cette méthode comporte un risque élevé d'endommager le fichier et de rendre le module inutilisable ("brické"), ce qui signifie que vous n'y aurez plus accès. Cela ne peut pas être vérifié.