Circuiti di pietrarossa (redstone)

Redstone Circuiti Pietrarossa Minecraft Redstone Circuiti Pietrarossa Minecraft

I circuiti di pietrarossa (redstone) sono particolari combinazioni di blocchi interattivi e polvere di pietrarossa in grado di alterare il segnale proveniente da uno o più generatori al fine di realizzare funzionalità e interazioni complesse.

Nella pagina dedicata ai blocchi interattivi abbiamo visto che gli attivatori (i generatori di segnale) sono essenzialmente di tre tipi:

  1. generatori di segnale costante ovvero sempre attivo, come la torcia o il blocco di pietrarossa;
  2. generatori di segnale costante ad attivazione manuale ovvero che può essere attivato e interrotto dall’avatar del giocatore, come la leva;
  3. generatori di segnale a impulso ovvero di durata determinata, come il pulsante (il cui impulso dura circa un secondo e mezzo ovvero 15 tick di pietrarossa) o la pedana a pressione.

Il tipo di impulso generato dai suddetti generatori di segnale può costituire un limite per la realizzazione di funzionalità complesse. Ad esempio, potremmo aver bisogno di un segnale intermittente per realizzare un lampeggiante oppure di un impulso di durata molto breve (ad esempio di un solo “tick” ovvero di un decimo di secondo) per suonare una nota o di un impulso che dura diversi secondi al fine di consentire l’attraversamento di un passaggio segreto.

Sulla base delle caratteristiche del segnale in uscita, i circuiti di pietrarossa (redstone) possono essere raggruppati in due categorie:

  1. circuiti di “clock” ovvero circuiti che generano un segnale intermittente, come per lo spostamento delle lancette di un orologio;
  2. circuiti a impulsi ovvero circuiti in grado di modificare un impulso alterandone la durata, come ad esempio i circuiti in grado di trasformare un segnale costante in un impulso o di modificare le caratteristiche di un impulso, riducendone o estendendone la durata o anche suddividendo un impulso in più impulsi o ancora conteggiando il numero degli impulsi in entrata prima di generare un impulso in uscita.

I circuiti di clock possono essere inquadrati come generatori di segnale intermittente, ovvero circuiti senza un input ma con uno o più punti dai quali prelevare il segnale di output. Ci sono molti modi per creare circuiti di clock ma la logica di base è sempre la stessa: creare un percorso nel quale gli impulsi generati da uno o più attivatori transitano in un loop (in un ciclo continuo). A seconda del tipo di loop è possibile utilizzare i ripetitori di pietrarossa per ritardare la velocità degli impulsi.

Sfruttando la caratteristica delle torce di pietrarossa che, se posizionate su un blocco opaco, si spengono quando ricevono un segnale, è possibile creare un semplice circuito di clock con blocchi opachi, polvere di pietrarossa e torce di pietrarossa, come illustrato nella seguente immagine. Per generare l’intermittenza del segnale è necessario che le torce posizionate al lato dei blocchi siano in numero dispari, quindi almeno tre ma meglio cinque per rendere il circuito più stabile. Gli impulsi possono essere ritardati inserendo dei ripetitori di pietrarossa. Questo tipo di circuito occupa uno spazio che si estende per diversi blocchi mentre il segnale intermittente può essere prelevato su diversi punti, eventualmente anche accrescendo il numero di torce di pietrarossa.

Circuito-pietrarossa-clock-torce Circuito-pietrarossa-clock-torce

Con un blocco opaco, una torcia di pietrarossa, un ripetitore e della polvere di pietrarossa si può creare un circuito di clock minimale che, a differenza del precedente, occupa solamente sei blocchi ed è in grado di generare intervalli di un solo tick. In sintesi, il ripetitore di pietrarossa posto davanti al blocco su cui è posizionata la torcia di pietrarossa crea un verso al segnale che spegne la torcia di pietrarossa con l’impulso da essa stessa generato, per cui la torcia si riaccende immediatamente determinando l’intermittenza del segnale.

Circuito-pietrarossa-clock-ripetitore Circuito-pietrarossa-clock-ripetitore

Un comparatore di pietrarossa in modalità sottrazione può essere usato per generare un circuito di clock con comparatore e ripetitore di pietrarossa. Il segnale generato da una torcia di pietrarossa alimenta il comparatore in modalità sottrazione. Attraverso la polvere di pietrarossa il segnale in uscita dal comparatore raggiunge il ripetitore posto davanti all’input laterale dello stesso comparatore. Il segnale rinforzato dal ripetitore a livello 15 determina quindi l’interruzione del segnale emesso dal comparatore e il ciclo si riavvia.

Circuito-pietrarossa-clock-comparatore Circuito-pietrarossa-clock-comparatore

Come già accennato nell’articolo dedicato alla pietrarossa e blocchi interattivi di Minecraft, con due tramogge e due comparatori di segnale è possibile creare un circuito di clock con due output che si alternano, sfruttando la capacità delle tramogge di rimpallarsi un oggetto qualsiasi posizionato al loro interno.

Circuito-pietrarossa-clock-tramogge Circuito-pietrarossa-clock-tramogge

E ancora, è possibile creare un circuito di clock con pistoni, piuttosto rumoroso e ingombrante, con la polvere di pietrarossa connessa a 4 pistoni, i quali si passano un blocco opaco posizionato sopra delle torce di pietrarossa che trasmettono ciclicamente un impulso a ripetitori di pietrarossa opportunamente posizionati e che a loro volta attivano i pistoni.

Circuito-pietrarossa-clock-pistoni Circuito-pietrarossa-clock-pistoni

Insomma, qualsiasi “loop” va bene per creare circuiti di clock mentre la realizzazione di circuiti ad impulsi appare più complessa e schematica.

Per trasformare un segnale continuo generato da una leva in impulso singolo si può utilizzare un circuito trasformatore di segnale composto da tre ripetitori di pietrarossa opportunamente posizionati, con una coppia di ripetitori che agisce da interruttore di segnale e il terzo ripetitore che ritarda il segnale generato dalla leva. In questo modo, quando si disattiva la leva viene disattivato anche l’interruttore e il segnale ritardato di almeno un tick defluisice sotto forma di singolo impulso. Se al posto della leva si utilizzasse un pulsante, il quale crea un impulso della durata di 15 tick di pietrarossa (circa 1,5 secondi), la funzione del circuito sarebbe quella di ridurre l’impulso orginario (della durata di 15 tick) a 1, 2 o 3 tick (a seconda di come è impostato il ripetitore di pietrarossa).

Circuito-pietrarossa-impulsi-trasformatore-riduttore Circuito-pietrarossa-impulsi-trasformatore-riduttore

Un circuito con funzioni di “riduttore”, ovvero in grado di ridurre la durata dell’impulso generato da un attivatore, simile al precedente ma che illustra meglio il concetto può essere realizzato sfruttando un pistone appiccicoso. L’impulso viene generato da un pulsante e viene sdoppiato attraverso la polvere di pietrarossa opportunamente posizionata su un blocco opaco, il quale alimenta il pistone appiccicoso e allo stesso tempo lascia defluire il segnale orginale verso un terzo blocco opaco posizionato a tre blocchi di distanza. Quando l’impulso raggiunge il pistone appiccicoso questo si attiva e spinge un secondo blocco opaco posizionandolo a spigolo sul terzo blocco opaco, causando così l’immediata interruzione dell’impulso originario che stava attraversando il circuito ovvero determinando una riduzione di durata dell’impulso originario.

Circuito-pietrarossa-impulsi-riduttore-con-pistone Circuito-pietrarossa-impulsi-riduttore-con-pistone

E’ altresì possibile suddividere il segnale generato da un attivatore in una serie di impulsi. Si tratta sostanzialmente dello stesso circuito di clock che sfrutta un comparatore di pietrarossa in modalità sottrazione e che invece di essere collegato a un generatore costante viene collegato a un generatore d’impulso. Il funzionamento del circuito è sempre lo stesso ma cambia lo scopo per il quale viene usato, ovvero l’impulso singolo del segnale in input che ha una determinata durata verrà restituito in output suddiviso in più impulsi la cui durata è una frazione del segnale di input.

Circuito-pietrarossa-impulsi-frazionatore Circuito-pietrarossa-impulsi-frazionatore

Un circuito più complesso consente di realizzare una sorta di circuito temporizzatore, ovvero di estendere la durata di un singolo impulso a oltre un centinaio di tick. Il circuito si compone di più parti che interagiscono tra loro: un interruttore che avvia e spegne il circuito e un temporizzatore che sfrutta l’interazione guidata di due tramogge che si passano tra loro fino a 64 blocchi, andata e ritorno. L’interruttore iniziale è composto da uno sgancio collegato a una tramoggia. Lo sgancio, al contrario della tramoggia, si attiva con un impulso e passa un oggetto alla tramoggia la quale, essendo alimentata da un segnale, lo conserva fino alla interruzione dello stesso prima di restituirlo. Quando la tramoggia non è più alimentata restituisce l’oggetto allo sgancio resettando l’interruttore. Attraverso dei comparatori e dei ripetitori di pietrarossa lo sgancio e la tramoggia interagiscono con due tramogge collegate tra loro e che opportunamente configurate svolgono una transazione di blocchi dall’una all’altra e viceversa. Quando la prima tramoggia del temporizzatore si svuota interrompe l’alimentazione della tramoggia dell’interruttore, il quale si resetta e a sua volta interrompe il segnale che bloccava la seconda tramoggia del temporizzatore, che dopo avere ricevuto tutti i blocchi dalla prima tramoggia inizia a restituirli. Nel frattempo il comparatore di pietrarossa collegato alla seconda tramoggia del temporizzatore invia un segnale che dura tutto il tempo necessario alla suddetta tramoggia per completare il ciclo di riempimento e svuotamento. Variando il numero di blocchi contenuti nella prima tramoggia del temporizzatore varia la durata dell’impulso generato da questo circuito temporizzatore.

Circuito-pietrarossa-impulsi-temporizzatore Circuito-pietrarossa-impulsi-temporizzatore

Sfruttando lo stesso principio delle tramogge intercomunicanti è possibile creare un circuito in grado di contare gli impulsi in input prima di inviare un impulso in output. Occorre creare un loop di tramogge collegate l’una all’altra, che parte da uno sgancio e finisce nello sgancio. Lo sgancio è collegato a un comparatore di pietrarossa che invia il segnale di output quando riceve un oggetto dalla tramoggia immediatamente precedente. Le tramogge e lo sgancio sono alimentate da un segnale costante attraverso polvere di pietrarossa e una torcia posizionata su un blocco opaco collegata a un pulsante. In questa situazione le tramogge sono bloccate mentre lo sgancio è attivo. Un’altra torcia di pietrarossa deve essere posizionata al lato di un blocco posto sopra la torcia che alimenta le tramogge. L’attivazione del pulsante spegne la torcia di alimentazione delle tramogge, ma attiva immediatamente la seconda torcia che ri-alimenta le tramoggie dopo un solo tick di pausa (altrimenti le tramogge farebbero in tempo a passarsi il blocco in esse contenuto più di una volta). Se le tramoggie sono cinque, cliccando il pulsante cinque volte l’oggetto contenuto nella prima tramoggia raggiungerà lo sgancio che genererà un impulso attraverso il comparatore di pietrarossa. Aumentando il numero delle tramogge aumenta il numero di impulsi di input necessario ad attivare l’impulso di output.

Circuito-pietrarossa-impulsi-numeratore Circuito-pietrarossa-impulsi-numeratore

I circuiti di pietrarossa descritti in questo articolo sono degli esempi per comprendere il funzionamento e le potenzialità della pietrarossa e dei blocchi interattivi. L’insieme di queste funzionalità consente di realizzare congegni, meccanismi e automatismi in grado di creare innumerevoli interazioni e fantasiosi progetti.