Rotabili Italiani

Effettua l'accesso o una nuova registrazione.

Inserisci il nome utente, la password e la durata della sessione.
Ricerca avanzata  

News:

Autore Topic: Problematiche legate allo scripting dei segnali  (Letto 10394 volte)

RBendo

  • Nuovo arrivato
  • *
  • Offline Offline
  • Post: 27
    • Mostra profilo
Problematiche legate allo scripting dei segnali
« il: 14 Aprile 2017 - 13:41:45 »

Ciao a tutti,
E' da un po' che ci pensavo a dire il vero, e così mi sono deciso a dedicarmi allo scripting che gestisce il segnalamento. Mi stò documentando con il materiale che si trova nel Developer Docs di TS, più o meno ho capito la logica che regola la gestione degli aspetti grafici del segnalamento, e anche quella inerente la gestione del traffico. Certo sto leggiucchiando anche scripts di qualche tratta tedesca e inglese sempre allo scopo di documentarmi meglio, ma ci sono ancora alcune cose che non mi sono ben chiare. Così vorrei aprire questo thread per esprimere i miei dubbi

Per esempio la guida nel DevDocs descrive un metodo per tracciare lo stato di occupazione di una tratta  che sia compresa tra due segnali, la logica di base è sfruttare il passaggio dei convogli sui link, per aggiornare i rispettivi indicatori di occupazione. Tuttavia a scenario appena caricato, se ho un convoglio parcheggiato su di un binario pronto a partire, come fanno i segnali che governano quel binario a stabilire che è occupato dal momento che appena caricato lo scenario, non si è mosso ancora nessun rotabile? A riguardo Railworks non implementa nessuna chiamata a sistema per dare questo tipo di informazione, forse esiste, ma la documentazione non mi permette di appurarlo. L'unico modo che mi sembra sensato è quello di implementare un sistema di messaggistica che interagisca con i rotabili, ma questo richiederebbe che anche il rotabile abbia uno script dedicato, cosa che non è mai garantita nel caso più generale. A riguardo sarei tentato di eliminare questo aspetto della gestione del segnalamento, e limitarla ai soli segnali di blocco per i quali è necessaria, anche se questo non risolve il problema di cui sopra.

Sempre dal manuale sullo scripting dei segnali, da quel che ho capito vengono descritti due soli tipi di messaggio che il motore del simulatore propaga in automatico lungo la linea, cioè RESET_SIGNAL_STATE, e JUNCTION_STATE_CHANGE; in giro per la rete non ho trovato altro e mi sembra strano che non ci siano altri tipi di messaggi a carico del simulatore. Nella guida viene accennato ad una sezione riguardante i tipi di messaggi, ma non l'ho trovata. Oltretutto all'atto del caricamento dello scenario, viene consigliato di implementare l'inizializzazione del segnale, effettuando una verifica sullo stato del deviatoio che è protetto dal segnale, questo mi dice che lungo la route, tutti i deviatori che lo consento dovrebbero in qualche maniera presentare segnali con aspetti di via libera, cosa che invece non vedo perché la maggior parte dei segnali rimangono a via impedita, tranne quelli che regolano la tratta aperta sul convoglio del giocatore, questo mi dice che il simulatore comunica in qualche modo la presenza di un convoglio sulla linea.

Ho visto poi che viene fornita una chiamata a sistema che permette di determinare la distanza del successivo segnale a via impedita, solamente che la cosa è limitata agli script delle loco, la cosa è molto utile da implementare per gli aspetti dei segnali legati alla distanza ridotta tra gli stessi, ma vabbè nel caso se ne può fare a meno.

Ho messo in questo thread diverse questioni, non mi aspetto tanto di trovare una specifica risposta anche perché non nego che talune siano state poste in maniera frettolosa senza porre maggiore attenzione alla documentazione, come non nego che l'argomento sia piuttosto specializzato. Chiaramente dovrò lavorarci su ma se qualcuno ha magari qualche consiglio da dare a riguardo, ne sarei grato.

Connesso
Riccardo

Littorino

  • Admin
  • Utente storico
  • *****
  • Offline Offline
  • Post: 3.891
  • Router e Scenarista RI Gestore Area Download
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #1 il: 15 Aprile 2017 - 13:51:16 »

Premetto che sono sinceramente contento per questa tua nuova iniziativa  :pollicesu e che le mie conoscenze al riguardo valgono molto meno di una cicca.  :asd

Detto questo penso sia essenziale conoscere i meccanismi di base del segnalamento onde capire meglio alcune anomalie che per i piu' sono incomprensibili o catalogate come i mitici "bug" del sistema.

Nella mia beata ignoranza mi pare pero' che le funzioni di dialogo tra rete e macchina siano piu' di competenza del linguaggio LUA..a meno che forse stiamo intendendo la stessa cosa.  :confuso
Connesso
-Marco Paterna-
E' meglio dare l'impressione di essere stupidi stando zitti piuttosto che aprir bocca e fugare ogni dubbio. (MdG)
-Nei miei lavori non si fa uso di materiale pay-

Il mio canale Youtube: https://www.youtube.com/channel/UCuBeEed2P2ggD8Cj6pL2Pwg

Andrea66

  • Staff
  • Utente storico
  • ****
  • Offline Offline
  • Post: 1.854
  • Decresciamo felicemente
    • Mostra profilo
    • codadeltreno
Re:Problematiche legate allo scripting dei segnali
« Risposta #2 il: 15 Aprile 2017 - 19:13:30 »

Allora, premetto che anche io avevo avuto voglia di guardarci, poi di fronte alla necesssità di imparare un nuovo linguaggio di scripting (lua) ho davvero lasciato perdere, soprattutto quando si cominciava a vociferare del TSW, e del relativo abbandono di questo linguaggio.

Però posso dirti che in rete avevo trovato un bel pdf in francese (abbastanza comprensibile anche a chi non sa il francese come me). riguardo ai segnali e a come redigere uno script.

Sono riuscito a ritrovarlo e te lo metto in mia DB nella cartella "Segnali e LUA".

Magari ti aiuta. Se invece è tutto chiaro ma ti serve qualche risposta specifica, credo che solo Marco70 possa aiutarti tra di noi...

Connesso
Andrea
codadeltreno.com

RBendo

  • Nuovo arrivato
  • *
  • Offline Offline
  • Post: 27
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #3 il: 17 Aprile 2017 - 13:58:27 »

Sì si state proprio parlando di LUA, ma non c'è nulla di difficile da capire, il linguaggio è una via di mezzo tra C e Basic, in realtà si distingue tra i due poiché ha una gestione dei tipi ancora più flessibile, non è il massimo per scrivere un programma da zero, anche se ci sono validi esempi in giro, tuttavia è utilizzatissimo per lo scripting di una grande varietà di applicazioni, e non parlo solo di
giochi, ma anche di suite per la gestione di testi, grafica ecc... è molto utile per automatizzare una serie di operazioni.
Di mio ho già cominciato a stendere un po' di righe di codice, e a strutturare la logica dello script; per eventuali errori di esecuzione e di specifica, se si ha conoscenza del codice che si è scritto sono quasi sempre risolvibili; l'unico limite è costituito dalle possibilità di gestione che offre il simulatore tramite questo mezzo, e che a spulciare tra i vari file sono anche piuttosto avanzate, dato che consentono di intervenire proprio sugli aspetti grafici di ciascun oggetto che popola lo scenario, ma non ho approfondito la cosa più di tanto, oltre a quel che riguarda il segnalamento, anche perché la
documentazione non è delle migliori, nel senso che pecca di frammentazione e incompletezza.
Connesso
Riccardo

RBendo

  • Nuovo arrivato
  • *
  • Offline Offline
  • Post: 27
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #4 il: 17 Aprile 2017 - 14:06:33 »

Grazie mille Andrea66, l'ho scaricato e ci sto dando un occhiata, grazie ancora.
Connesso
Riccardo

RBendo

  • Nuovo arrivato
  • *
  • Offline Offline
  • Post: 27
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #5 il: 23 Aprile 2017 - 22:06:59 »

Ciao a tutti
Avrei bisogno di capire alcuni dettagli circa il funzionamento dei segnali, la questione ovviamente non è legata direttamente all'argomento del thread, ma volevo evitare di aprire un altro thread, dato che gli stessi dubbi nascono proprio dalla mia idea di mettere mano allo scripting dei segnali.

- Nei segnali di blocco mi sembra di capire che lo spegnimento degli stessi adibiti alla circolazione su binario illegale, sia la norma, mentre la relativa attivazione avviene in casi eccezionali su
  precisa richiesta degli addetti, è così? O invece gli stessi si attivano in modo automatico su precisi input da parte della linea?

- Leggendo le norme sui segnali, cito "Il segnale di «prosecuzione di itinerario» può essere applicato anche ad un segnale ripetitore di partenza", significa che si trova anche su segnali di prima
  categoria ordinari? Da quel che ho capito questo indicatore consente il supero di un segnale disposto a via impedita, purchè questo sia di sussidio ad un successivo segnale di partenza posto a via
  impedita, anche questo indicatore è attivato su richiesta esplicita o è un aspetto automatizzato della linea? Si accende sempre quando il successivo segnale è bloccato o solo in taluni casi?

- un ripetitore può essere accompagnato da una marmotta?

Mi scuso ancora per l'OT, ho provato a fugare questi e altri dubbi, alcune cose credo di averle capite, ma il materiale a riguardo non mi è sempre chiaro.
Connesso
Riccardo

Obelix73

  • Utente storico
  • *****
  • Offline Offline
  • Post: 1.423
  • "Lunga vita e Prosperità"
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #6 il: 23 Aprile 2017 - 22:26:59 »

Ma tu parli della realtà o della simulazione ?
Connesso
Andrea Irato

RBendo

  • Nuovo arrivato
  • *
  • Offline Offline
  • Post: 27
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #7 il: 24 Aprile 2017 - 09:05:40 »

Innanzitutto volevo capire a livello reale come funziona
Connesso
Riccardo

Obelix73

  • Utente storico
  • *****
  • Offline Offline
  • Post: 1.423
  • "Lunga vita e Prosperità"
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #8 il: 24 Aprile 2017 - 10:46:43 »

Ok, a livello reale abbiamo:

1) non parlare di binario illegale, ma di marcia a destra; nei casi di marcia a destra il dirigente che governa la linea inverte il blocco della sezione, così facendo si "accendono" i segnali per la marcia a destra

2) Il segnale sussidiario di prosecuzione di itinerario si trova in quegli impianti dove, per necessità, potrebbe essere necessario far proseguire un treno oltre il normale punto di arresto (protetto dal segnale) sino al successivo segnale di partenza; ovviamente vale solo in particolari condizioni di impianto e solo per i segnali di partenza; è sempre comandato dal dirigente tramite comandi specifici del banco a sua disposizione

3) formalmente si.
Connesso
Andrea Irato

RBendo

  • Nuovo arrivato
  • *
  • Offline Offline
  • Post: 27
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #9 il: 24 Aprile 2017 - 11:37:03 »

Grazie mille, già questo mi chiarisce diversi dubbi, perché poi l'implementazione nel simulatore mi obbliga invece ad automatizzare tali situazioni sulla base degli eventi prodotti in fase di svolgimento
dello scenario. Gli eventi in questione sono nella sostanza di due tipi, ovvero la formazione di un instradamento mediante la manovra dei deviatoi, e il passaggio dei convogli sui link di segnale.
In pratica sto cercando di stabilire con quale evento comandare lo spegnimento dei segnali di blocco. Per ciò che concerne l'indicatore invece, ho constatato che c'è la possibilità di accenderlo su segnali di prima categoria, e non solo sul segnale ripetitore di partenza, tuttavia non è un aspetto legato tanto all'instradamento selezionato, quanto piuttosto all'aspetto assunto dal segnale successivo che viene sussidiato. Il problema nasce proprio qui, perchè leggendo la documentazione dei segnali, viene spiegato che tale indicatore viene a trovarsi in alcuni casi sui soli segnali sussidiari di partenza, cioè segnali che sussidiano altri segnali di partenza comuni a più binari. Ora per quel che ne sò io di segnali di questo tipo nel simulatore conosco solo indicatori bassi di partenza, marmotte con tale funzione, e segnali ripetitori di partenza. Al di fuori di questi casi, nell'ambito reale esistono altri tipi di segnali sussidiari?
Connesso
Riccardo

Obelix73

  • Utente storico
  • *****
  • Offline Offline
  • Post: 1.423
  • "Lunga vita e Prosperità"
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #10 il: 24 Aprile 2017 - 17:31:09 »

Sussidiari alla partenza, no
Connesso
Andrea Irato

RBendo

  • Nuovo arrivato
  • *
  • Offline Offline
  • Post: 27
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #11 il: 24 Aprile 2017 - 17:41:14 »

Pertanto nel simulatore l'unico segnale che ammetta tale indicatore è il ripetitore. Avrebbe senso attivarlo in automatico ogni volta che il segnale successivo si dispone a manovra?
« Ultima modifica: 24 Aprile 2017 - 17:42:57 da RBendo »
Connesso
Riccardo

fabiot

  • Admin
  • Utente storico
  • *****
  • Offline Offline
  • Post: 2.612
  • Router, creatore 3d
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #12 il: 24 Aprile 2017 - 19:10:33 »

Sussidiari alla partenza, no

forse ti sei dimenticato i segnali alti di manovra  :uhm :uhm
Connesso
Fabio Torchia


Intel Dual Core E8500 3,16 GHz, Scheda Madre Asus P5QL-E, 4GB RAM DDR2, Nvidia GTX 640 2GB DDR3, Windows 10 Pro, 1TB HD

Intel i7 7740X LGA 2066, scheda madre MSI X299M A PRO, 16GB RAM DDR4, Scheda Video ZOTAC NVIDIA GTX 1080 8GB GDDR5, Windows 10 PRO, 500 GB SDD, 2TB HD

Obelix73

  • Utente storico
  • *****
  • Offline Offline
  • Post: 1.423
  • "Lunga vita e Prosperità"
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #13 il: 24 Aprile 2017 - 19:20:21 »

Hai ragione Fabio  :shootme

@ Riccardo, il segnale di prosecuzione itinerario è legato ai segnali di 1° categoria non a quelli di manovra  :occhiolino
Connesso
Andrea Irato

fabiot

  • Admin
  • Utente storico
  • *****
  • Offline Offline
  • Post: 2.612
  • Router, creatore 3d
    • Mostra profilo
Re:Problematiche legate allo scripting dei segnali
« Risposta #14 il: 24 Aprile 2017 - 19:46:49 »

Poi se vogliamo aggiungere ci sono se non erro, segnali di avanzamento / avvio, poi dovrebbe esserci i segnali di prova freno ma questi li escluderei per i limiti del simulatore.

Preciso i segnali di prova freno, sono presenti solo in grandi stazioni, nella realtá il macchinista pur avendo via libera, non può partire finché te segnale non.mostra aspetto di prova freno conclusa.
Connesso
Fabio Torchia


Intel Dual Core E8500 3,16 GHz, Scheda Madre Asus P5QL-E, 4GB RAM DDR2, Nvidia GTX 640 2GB DDR3, Windows 10 Pro, 1TB HD

Intel i7 7740X LGA 2066, scheda madre MSI X299M A PRO, 16GB RAM DDR4, Scheda Video ZOTAC NVIDIA GTX 1080 8GB GDDR5, Windows 10 PRO, 500 GB SDD, 2TB HD