Il nodo Ramp aumenta o diminuisce in modo lineare il valore del connettore Output fino a raggiungere il valore del connettore Input. L'incremento lineare consiste nell'aggiungere (o sottrarre) all'Output un valore rappresentato dalla proprietà Step size ogni intervallo di tempo specificato dalla proprietà Time step.
Il valore di Output non può superare il valore di Input, quindi il nodo riduce il passo per adattare l'uscita al valore di ingresso.
Comportamento del Ramp
| Connettore | Tipo | Descrizione |
|---|---|---|
| Input | Ingresso | Valore analogico obiettivo che il nodo deve raggiungere progressivamente. |
| Output | Uscita | Valore analogico generato dal nodo. Viene aumentato o diminuito passo dopo passo fino a raggiungere il valore di Input. |
| Proprietà | Descrizione |
|---|---|
| Step size | Valore aggiunto o sottratto all'Output a ogni passo. |
| Time step | Intervallo di tempo tra due incrementi o decrementi consecutivi del valore di Output. |
Il nodo Ramp viene utilizzato per modificare un valore analogico in modo progressivo invece di applicare immediatamente il valore finale.
Quando il valore del connettore Input cambia, il nodo lo confronta con il valore corrente di Output:
A ogni intervallo di tempo definito da Time step, il nodo modifica il valore di Output della quantità definita in Step size.
Concettualmente:
Output(n+1) = Output(n) ± Step size
Il nodo continua questa operazione fino a quando il valore di Output raggiunge il valore di Input.
Il valore di Output non supera mai il valore di Input.
Se la differenza residua è più piccola dello Step size configurato, il nodo riduce automaticamente l'ultimo passo in modo che l'uscita raggiunga esattamente il valore obiettivo.
Consideriamo la seguente configurazione:
| Proprietà | Valore |
|---|---|
| Step size | 5 |
| Time step | 1 s |
Se il valore iniziale di Output è 20 e il valore di Input diventa 35, il nodo Ramp si comporta come segue:
| Tempo | Output |
|---|---|
| 0 s | 20 |
| 1 s | 25 |
| 2 s | 30 |
| 3 s | 35 |
Se il valore di Input cambia poi a 12, il nodo diminuisce l'uscita:
| Tempo | Output |
|---|---|
| 0 s | 35 |
| 1 s | 30 |
| 2 s | 25 |
| 3 s | 20 |
| 4 s | 15 |
| 5 s | 12 |
Nell'ultimo passo, il nodo non scende sotto il valore obiettivo. Adatta invece l'ultimo decremento per raggiungere esattamente il valore di Input.
Il nodo Ramp è utile ogni volta che un valore deve cambiare in modo graduale nel tempo invece di variare bruscamente.
Applicazioni tipiche includono:
Il nodo Ramp può essere testato utilizzando gli strumenti di simulazione del Modulo Logico.
Una procedura tipica di test è la seguente:
Se il valore di Input cambia nuovamente mentre il ramp è già in esecuzione, il nodo continua ad adattare Output verso il nuovo valore obiettivo.