Ben arrivato! Fate login o registratevi per fruire di tutte le funzionalità del forum e del sito.
Se eri già registrato e non ti ricordi la password usa questo link per recuperare l'accesso
Sito e forum dedicati al fermodellismo a tre rotaie gestito da appassionati senza fini commerciali. Qui trovate notizie storiche e suggerimenti tecnici per i vostri modelli vintage e moderni. Il nostro hobby viene praticato in molte maniere diverse, tutte ugualmente valide: hai un plastico? oppure sei un collezionista? oppure un semplice appassionato? Non esitare a scrivere nel forum, tutti gli interventi sono benvenuti ... Postate foto e video del vostro plastico e chiedete aiuto per ogni problema o curiosità inerente al nostro hobby.

29 - Rocrail: azioni

suggerimenti sull'utilizzo del software Rocrail®
Messaggio
Autore
Avatar utente
LucioTS
Amministratore forum
Messaggi: 4315
Iscritto il: 19 settembre 2006, 17:11
Nome: Lucio Cavedali
Località: Friuli-Venezia Giulia, Trieste
Ha ringraziato: 0
Sei stato  ringraziato: 34 volte
Contatta:

29 - Rocrail: azioni

#1 Messaggio da LucioTS »

Prendendo spunto dal capitolo precedente iniziamo a vedere come usare le azioni in Rocrail.

Le azioni sono dei comandi che agiscono sugli oggetti in Rocrail. Locomotive, segnali, deviatoi, ecc. sono tutti oggtti quindi le azioni possono agire su quasi tutto.

Le azioni sono normalmente 'attivate' dai sensori ma possono essere comandate anche 'manualmente' tramite pulsanti o altri oggetti.

Le azioni possono 'comandare' sia singoli oggetti specifici (ad esempio una specifica locomotiva) oppure possono comandare oggetti multipli (ad esempio accedere le luci di ogni locomotiva che attivi il sensore).

Le azioni possono anche comandare l'intero sistema di Rocrail coma ad esempio dare o togliere corrente ai binari. In questo caso si parla di azioni di sistema.

Quando si usano le azioni è bene capire come procedere:
1 - definire l'azione
2 - applicare l'azione
3 - eseguire l'azione

La prima cosa da fare è individuare cosa vogliamo fare e costruire l'azione di conseguenza, verificando se è possibile ottenere quanto ci aspettiamo.
Ad esempio , se volgiamo far fischiare una locomotiva in un tratto dove non ci sono sensori, sarà difficile (non impossibile) ottenere l'effetto voluto.
Una volta costruita l'azione dobbiamo applicarla a l'oggetto che la farà attivre: un sensore, un blocco, un pulsante, ecc..
Infine dobbiamo far eseguire l'azione quando lo volgiamo, eventualmente applicando dei paramteri aggiuntivi.

Il pannello delle azioni si apre dal menù 'Pannelli':
Screenshot 2025-01-03 114305.png
Screenshot 2025-01-03 114523.png

Nel pannello delle azioni troveremo (ora è ovviamente vuoto) tutte le nostre azioni.
Ci sono diverse schede ma praticamente si utilizzano solo quella 'Indice' (quella visualizzata) e la scheda 'Generale' dove viene configurata l'azione:
Screenshot 2025-01-03 114530.png
Le azioni possono operare su diversi oggetti. Nella scheda 'Generale', nella sezione tipo ('Type') viene definito l'uso della azione:
Screenshot 2025-01-03 114749.png

Per il nostro primo esempio prendiamo spunto da quanto visto prima. Facciamo fischiare la nostra locomotiva Litra in ogni blocco che incontra usando le possibilita offerte dagli eventi delle funzioni della locmotiva.

Ma se ad esempio vogliamo farla fischiare fuori da un blocco?
La locomotiva Litra si trova nel blocco 'Sta_A_1' e viaggia verso il blocco 'Sta_B_1' ma sul binario interno, non sul blocco 'Est' che è fuori servizio e quindi non utilizzabile:
Screenshot 2025-01-03 114233.png
Nel binario interno non abbiamo un blocco, quindi non possiamo usare il metodo visto prima, però abbiamo un sensore.
Possiamo usare questo sensore per controllare una azione. Nell'esempio, l'obiettivo è di far fischiare la locomotiva (funzione F8) Litra quando passa sul sensore.
Quindi dovremo:
1 - costruire una azione che faccia fischiare la locomotiva
2 - applicare l'azione al sensore 'Fb6'
3 - esguire l'azione quando passa la locomotiva

Apriamo il pannello delle azioni e creiamo una nuova azione. Premiamo il tasto 'Nuovo':
Screenshot 2025-01-03 114543.png
Screenshot 2025-01-03 114552.png
Ora assegniamo un nome identificativo ('ID') alla nostra azione, in modo che sia facilmente riconoscibile. Come al solito l'ID deve essere univoco e non può contenere spazi vuoti.
In questo caso chiamiamo l'azione 'fischio_breve_Litra':
Screenshot 2025-01-03 114622.png

Confermiamo il nome dato alla nostra azione premendo 'Applica':
Screenshot 2025-01-03 114643.png
Selezioniamo la nostra azione e spostiamoci nella scheda 'Generale':
Screenshot 2025-01-03 114843.png
Ora dobbiamo scegliere cosa comanda questa azione nella casella 'Type':
Screenshot 2025-01-03 114749.png
In questo esempio comandiamo una funzione del decoder della locomotiva (nel caso specifico la funzione F8). Per controllare le funzioni di un decoder dobbiamo selezionare il tipo 'Funzione':
Screenshot 2025-01-03 114903.png
Screenshot 2025-01-03 114913.png
Scelto il tipo dobbiamo indicare, tramite il campo 'ID' a quale locomotiva ci riferiamo.
Il campo ID mostrerà gli ID degli oggetti ragruppati per il tipo. Se, ad esempio selezionavamo come tipo ('Type') gli Itinerari, nel campo ID troviamo l'elenco degli itinerari.
Dato che abbiamo scelto il tipo 'Funzione', nel campo ID trovaremo l'elenco dei decoder con funzioni, in questo caso le nostre locomotive. Clicchiamo quindi sul campo 'ID' e scegliamo la Litra:
Screenshot 2025-01-03 114933.png
Tralasciamo il campo 'Sub-Id' che vedremo molto più avanti....

Ora dobbiamo indicare il comando che deve esguire questa azione. Anche i questo caso le possibilità saranno dettate dal tipo di azione selezionata. In questo caso ('Funzione') le possibilità sono: on (accendi la funzione), off (spegni la funzione), flip (alterna, ovvero se è spenta la accendi, se è accesa allora la spegni):
Screenshot 2025-01-03 114957.png
Noi volgiamo far fischiare quindi dobbiamo attivare la funzione, scgliamo quindi 'on':

Ora dobbiamo indicare il numero della funzione da attivare. Questo viene inserito nel campo 'Parametro'. Abbiamo detto che la nostra funzione è la F8. Per eseguire la funzio0ne F8 dobbiamo inserire solo il numero della funzione senza la lettera 'F'. Quindi scriviamo il numero 8 (otto) nel campo parametro:
Screenshot 2025-01-03 115025.png
Anche se non strettasmente necessario in questo caso (perchè abbiamo configurato la funzione nel pannello delle locomotive) diamo una durata di 'accensione' della funzione.
Utilizzando il campo 'Durata' ineriamo il valore 10 equivalente ad un secondo:
Screenshot 2025-01-03 115051.png
Per il momento è tutto, quindi non dimentichiamoci di premere il solito 'Applica' per confermare le nostre scelte:
Screenshot 2025-01-03 115120.png
Torniamo alla scheda 'Indice' e vediamo cosa ci mostra Rocrail:
Screenshot 2025-01-03 115142.png
Abbiamo una azione dal nome (ID) 'fischio_breve_Litra', che è del tipo funzione ('fn' nella colonna 'Tipo') che esegue il comando 'on' sulla funzione numero 8.


Premiamo 'OK' per chiudere la finestra del pannello delle azioni.

Ora abbiamo creato la nostra azione, dobbiamo eseguire il passo succssivo, ovvero appilcare l'azione.


N.B. il nome dato all'azione (ID) non deve essere modificato dopo che l'azione è stata applicata. questo potrebbe portare a malfunzionamenti. Quindi, il nome dell'azione può essere modificato prima di applicare l'azione.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Saluti da Trieste
Lucio

La collaborazione ed i suggerimenti degli utenti sono la linfa vitale del sito e del forum, non esitate a condividere esperienze e conoscenze.

Amministratore 3Rotaie.eu - mail: admin@3rotaie.eu

Avatar utente
LucioTS
Amministratore forum
Messaggi: 4315
Iscritto il: 19 settembre 2006, 17:11
Nome: Lucio Cavedali
Località: Friuli-Venezia Giulia, Trieste
Ha ringraziato: 0
Sei stato  ringraziato: 34 volte
Contatta:

29 - Rocrail: azioni

#2 Messaggio da LucioTS »

Creata l'azione ora dobbiamo applicarla ad un oggetto.
Nel nostro esempio abbiamo stabilito che sia il sensore 'fb6':
Screenshot 2025-01-03 115208.png
Apriamo le proprietà del sensore:
Screenshot 2025-01-03 115235.png
Conosciamo questa schermata, ma ora premiamo sul tasto 'Azioni' in basso. Quest permetterà di associare una (o più) azione/i a questo sensore:
Screenshot 2025-01-03 115253.png
Ecco la schermata che appare:
Screenshot 2025-01-03 115318.png
Tramite questa schermata possiamo assegnare, gestire, elimiare, le azioni associate a questo oggetto.
Screenshot 2025-01-03 115345.png
In altro troviamo l'elenco delle azioni assegnate all'oggetto (ora è ovviamente ancora vuoto).
L'ordine motrato è anche la sequenza di attivazine. Nel caso di più azioni assengate al sensore, verrà eseguita prima quella più in alto e le altre a seguire. Tramite i pulsanti 'Su' e 'Giù' sarà possibile modificare l'ordine se necessario.

Nel campo ID troveremo l'elenco di tutte le azioni che abbiamo costruito.
Nel campo Stato indicheremo quando l'azione scelta deve essere eseguita. a seconda del tipo di oggetto avremo comandi diversi.
Tramite il campo 'Durata' possiamo determinare quanto tempo l'azione sarà attiva.
Con il campo 'Timer' invece possiamo detemrminare un ritardo nell'escuzione dell'azione.
Il campo Locomotiva normalmente viene lasciato vuoto. In genere Rocrail conosce che locomotore stà azionando il sensore.

Per qusta nostra prima azione non considriamo altri parametri.
Quindi selezionaimo la nostra azione nel camp ID:
Screenshot 2025-01-03 115406.png
Nel campo 'Stato' dobbiamo indicare quando attivare l'azione. Dato che questo è un sensore le opzioni sono:
Screenshot 2025-01-03 115430.png
Selezioniamo 'on', ovvero quando il ensore è acceso (attivato) esegue l'azione:
Screenshot 2025-01-03 115507.png
Per assegnare l'azione dobbiamo premere il tasto 'Aggiungi':
Screenshot 2025-01-03 115507.png
Screenshot 2025-01-03 115516.png
Ora abbiamo aggiunto l'azione. Ricordiamoci di premere 'Applica' per confermare il tutto:
Screenshot 2025-01-03 115532.png
Poi possiamo chiudere la finestra delle azioni con 'OK'.

Chiudiamo quindi le proprietà del sensore con 'OK':
Screenshot 2025-01-03 115550.png
Abbiamo assegnato la nostra azione al sensore.
Vediamo cosa succede quando attiviamo il sensore (attivare l'audio del video):


Notiamo che ogni volta che azioniamo il sensore viene eseguito il fischio. Anche se ci passa sopra una locomotiva diversa.
Non è quello che volevamo...
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Saluti da Trieste
Lucio

La collaborazione ed i suggerimenti degli utenti sono la linfa vitale del sito e del forum, non esitate a condividere esperienze e conoscenze.

Amministratore 3Rotaie.eu - mail: admin@3rotaie.eu

Avatar utente
LucioTS
Amministratore forum
Messaggi: 4315
Iscritto il: 19 settembre 2006, 17:11
Nome: Lucio Cavedali
Località: Friuli-Venezia Giulia, Trieste
Ha ringraziato: 0
Sei stato  ringraziato: 34 volte
Contatta:

29 - Rocrail: azioni

#3 Messaggio da LucioTS »

Qundi passiamo alla fase esecuzione, ovvero far eseguire l'azione solo quando vogliamo.

Torniamo nelle proprietà del sensore e nelle azioni assengate:
Screenshot 2025-01-03 115516.png
Proviamo ad assenganre, nel campo locomotiva, la nostra Litra:
Screenshot 2025-01-03 115943.png
Se modifichiamo una azione dobbiamo premere il tasto 'Modifica':
Screenshot 2025-01-03 120025.png

Peneserete che questo risolva la questione, ovvero che l'azione venga eseguita solo quando la locomotiva selezionata attiva il sensore......
La risposta è NO!

Per il semplice fatto che Rocrail, al momento, non conosce cosa passa su quel sensore che non è in un blocco.
Se il sensore fa parte di un blocco allora Rocrail conosce la locomotiva che impegna il blocco e i relativi sensori associati.

Per fare in modo che Rocrail conosca quale locomotiva attivi il sensore è necessario operare nel seguente modo.
Dobbiamo inserire il sensore nell'itinerario usato.
Quando Rocrail usa un itinerario per muovere una locomotiva tra i due blocchi, l'itinerario è 'associato' alla locomotiva.

Per associare il sensore (in qesto caso) apriamo il pannello degli itinerari e selezioniamo l'itinerario tra il blocco 'Sta_A_1' e 'Sta_B_1':
Screenshot 2025-01-03 120249.png
Spostiamoci nella scheda 'Sensori':
Screenshot 2025-01-03 120259.png
Seleziniamo il sensore in questione e aggiungiamolo:
Screenshot 2025-01-03 120315.png
Screenshot 2025-01-03 120326.png
Screenshot 2025-01-03 120334.png
A questo punto, quando l'itinerario sarà selezionato, Rocrail saprà quale locomotiva lo usa e di conseguenza quando si attiverà il sensore, saprà quale locomotiva lo attiva.

Però dobbiamo ancora perfezionare l'esecuzione della azione. Anche se Rocrail sa quale locomotiva passa sul aenosre noi vogliamo che l'azione si attivi solo quando la locomotiva è la Litra.
Dobbiamo aggiungere una condizione alla nostra azione.

Per fare questo torniamo nelle proprietà del sensore e nelle azioni legate al sensore:
Screenshot 2025-01-03 120415.png
Selezioniamo la nostra azione e poi apiramo la scheda 'Condizioni':
Screenshot 2025-01-03 120420.png
Nelle condizioni possiamo indicare una o più cose che devono essere soddisfatte per poter eseguire l'azione.
Se non c'è nessuna condizione l'azione viene eseguita sempre. Ma se aggiungiamo una condizione, questa deve eseere soddisfatta per fare in modo che l'azione venga eseguita.
Nel nostro esempio vogliamo che l'azione del fischio sia eseguita solo quando la locmotiva Litra attivi il sensore.

Quindi spuntiamo la casella che la condizione deve essere vera:
Screenshot 2025-01-03 120437.png
Quindi diciamo che il Tipo deve essere 'Loco', ovvero una locomotiva:
Screenshot 2025-01-03 120457.png
Nel campo 'ID' selezioniamo la nostra locmotiva Litra:
Screenshot 2025-01-03 120538.png
Infine premiamo su 'Aggiungi' per aggiungere la condizione.
Screenshot 2025-01-03 120544.png
Il solito 'Applica' e poi chiudiamo le finestre.

Con l''aggiunta di una codizione, l'azione del fischio verrà eseguita solo quando il sensore sarà attivato dalla Litra.

Vediamo il risultato:


Ora l'azione che comanda il fischio viene eseguita solamente quando il senosre è attivato dalla Litra.
Poi il fischio viene attivato nei blocchi perchè impostato precedentemente.

Attenzione.
Sarà necessario inserire il sensore anche negli altri itinerari se volgiamo far fischiare la Litra.
Se ad esempio la Litra partiva dal blocco 'Sta_A_1' ma andava al blocco 'Sta_B_2', il sensore no avrebbe fatto suonare la Litra perchè non è insertito nell'itinerario.
Se il sensore non è inserito nell'itinerario Rocrail non può sapere quale locomotiva attiva il sensore.


Ovviamente con le azioni possiamo comnadare tutto. Qui abbiamo visto una funzione ma possiamo variare la velocità di una locomotiva, far partire o fermare una locomotiva in un blocco, cambiare stato ad un segnale, cambiare posizione ad un deviatoio, ecc.

Vedremo altri esempi nel prossimo capitolo.
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Saluti da Trieste
Lucio

La collaborazione ed i suggerimenti degli utenti sono la linfa vitale del sito e del forum, non esitate a condividere esperienze e conoscenze.

Amministratore 3Rotaie.eu - mail: admin@3rotaie.eu

Bloccato