Il contributo della società Kalcic di Trieste passa in rassegna le frequenze in uso e le codifiche adottate nei radiocomandi. Nozioni di base per valutare come affrontare una corretta duplicazione.


Il radiocomando al servizio dell’automazione civile inizia a diffondersi oltre vent’anni fa. L’impiego tipico convolge la movimentazione di cancelli carrai, bascule dei box e di tutte le automazioni motorizzate che in origine venivano azionati con comandi meccanici come i pulsanti o gli interruttori a chiave. Attualmente, la diffusione di questi dispositivi è simile per importanza a quella delle normali chiavi.


Le frequenze in uso

In oltre vent’anni la tecnologia utilizzata per questo genere di prodotti si è avvantaggiata di una notevole evoluzione, sia per quanto riguarda la parte a radiofrequenza sia per i sistemi di codifica adottati. I primi sistemi di radio controllo lavoravano a bassa frequenza, su un range che si estendeva da 27 a 41 MHz: erano quindi radiocomandi dagli ingombri spesso notevoli a causa delle antenne in ferrite avvolte e delle batterie utilizzate (9 V).

Questi radiocomandi vennero sostituiti nel tempo dai sistemi detti a ‘frequenza libera’ operanti in alta frequenza e in una banda compresa, normalmente, tra i 260 e i 350 MHz. Questa nuova categoria, non avendo più la necessità di comprendere antenne ingombranti e alimentazioni consistenti, ha dato il via a famiglie di prodotti finalmente tascabili. In seguito, le normative europee hanno regolato e imposto le frequenze utilizzabili per l’automazione, trasformando quello che era un enorme caos creativo in qualcosa di standard.

Le frequenze in uso attualmente sono quattro: due in bassa frequenza (40,665 MHz e 40,685 MHz) e due in alta frequenza (433,92 MHz e 868,35 MHz). Le frequenze che prima erano comprese tra i 260 e i 350 MHz sono ora proibite. Importante è sottolineare che in bassa frequenza ogni stato europeo ha in deroga due canali oltre a quelli indicati; nel caso dell’Italia hanno le seguenti frequenze: 30,875 MHz e 30,900 MHz.


Figura 1. Esempio di una trasmissione di codice singola, normalmente composta da una parte di pausa e una di codice

Le codifiche adottate

Come si sono evoluti i radiocomandi, negli anni si sono evoluti anche i codici trasmessi da questi apparecchi. Si è passati quindi dalle prime forme di trasmissione empiriche a codici fissi sempre più particolari e complessi, fino all’avvento dei codici variabili detti anche ‘rolling code’. La distinzione e la comprensione di questi tipi di codici sono fondamentali per la tipologia del lavoro da affrontare. In un sistema funzionante a codice fisso, è possibile realizzare i cloni dei radiocomandi copiandone frequenza e codice; non è necessario nessun intervento sulla ricevente. Per contro, i sistemi rolling-code prevedono che ogni singolo radiocomando operante con la ricevente sia preventivamente riconosciuto e memorizzato. Non è più la semplice copia di un radiocomando ma la ricostruzione di un sistema criptato e, quindi, le variabili da considerare in fase di copia sono molto più numerose e richiedono l’applicazione di tecnologie più complicate del semplice radiocomando per autoapprendimento.


Una corretta duplicazione

Alla base di una buona duplicazione dei radiocomandi a codice fisso ci sono diverse variabili da considerare: la più importante è il metodo con cui si estrae il codice dal radiocomando originale e lo si riproduce sul clone. Attualmente, il sistema più diffuso è quello dei radiocomandi cosiddetti per autoapprendimento.

Questi apparecchi sono in grado di campionare dei ‘samples’ del codice trasmesso dal radiocomando originale e di ritrasmetterli a loro volta. La qualità di questo tipo di radiocomandi è tanto migliore quanto il ‘campione’ è più fedele. È per questo che la durata in tempo e la precisione del ‘campione’ determinano drasticamente la qualità della copia.

Nel disegno di Figura 1 viene riportato l’esempio di una trasmissione di codice singola, normalmente composta da una parte di pausa e una di codice. In Figura 2, invece, si può vedere la trasmissione ciclica, effettuata nel tempo dal radiocomando originale. Nel disegno di Figura 3 vediamo come i radiocomandi per autoapprendimento salvano il campionamento. In verde è stato evidenziato un campionamento di breve durata e in blu uno di durata più lunga. Come si può notare i campionamenti effettuati, indipendentemente dalla durata che è imposta dal radiocomando, sono casuali come inizio e fine, quindi le due estremità del campione introdurranno un errore nella forma del segnale trasmesso.

Nell’esempio in verde il campione contiene solo una sequenza di codice valida, quella centrale, mentre la prima ha la pausa corrotta e l’ultima ha il codice incompleto. Il campione in blu presenta lo stesso tipo di difetto ma, avendo un tempo di campionamento più lungo, contiene quattro sequenze complete e integre. La conseguenza principale di questa modalità adottata per copiare i codici è la causa del loro progressivo deterioramento.


Figura 2. La trasmissione ciclica, effettuata nel tempo dal radiocomando originale

Figura 3. Ecco come i radiocomandi per autoapprendimento salvano Il campionamento. In verde è stato evidenziato un campionamento di breve durata e in blu uno di durata più lunga

Di copia in copia aumentano gli errori trasmessi e diminuiscono le porzioni di codice sano: questo accadrà fino al punto in cui un radiocomando non sarà più duplicabile. Il radiocomando per autoapprendimento, come si può vedere, rappresenta una soluzione pratica ed economica alla duplicazione ma, contemporaneamente, impone un limite alla generazione di copie fattibili. Per evitare il decadimento delle codifiche trasmesse ci si può affidare a sistemi di duplicazione più evoluti, in grado di analizzare il codice trasmesso e ricomporlo nella maniera corretta.

In Figura 4 viene schematizzata la trasmissione del radiocomando con il campione corto; le parti sane del codice sono cerchiate in giallo. Un dispositivo evoluto è in grado di identificare correttamente le parti sane del codice, confrontarle, salvarle ed elaborarle al fine di avere una trasmissione ricostruita del codice nella maniera corretta. Ovviamente questo metodo implica un approccio alla duplicazione radicalmente diverso dall’autoapprendimento a causa delle elaborazioni da eseguire. In Figura 5 viene riportato il confronto tra il codice originale e il codice ricostruito da un dispositivo di duplicazione evoluto: i due codici sono praticamente identici.


I Rolling-Code

La duplicazione dei sistemi rolling-code è decisamente più complessa perché, come detto sopra, non è la copia di un codice fisso, bensì la riproduzione di un codice che varia ad ogni pressione del tasto. In Figura 6 viene rappresentata la tipica struttura di una trasmissione rolling-code. Essenzialmente è composta da tre parti ben distinte: la pausa, la parte a codice fisso e la parte a codice variabile.

Come è intuibile, la parte problematica è quella variabile perché cambia ad ogni singola pressione del tasto di trasmissione. Questa variazione è il risultato di un’operazione eseguita da un algoritmo matematico. Poter realizzare una copia di questo tipo di codici implica la necessità di programmare sul radiocomando non più un semplice codice ma un insieme di regole matematiche decisamente complesse, dedicate al singolo modello di rolling-code originale.

Un radiocomando concepito per riprodurre questo tipo di codici difficilmente potrà essere un Radiocomando per autoapprendimento, a causa della complessità dell’hardware necessario a programmarlo. In conclusione, attualmente, la soluzione più efficace per programmare copie di radiocomandi mantenendo un elevata flessibilità è quella di utilizzare sistemi di programmazione non residenti sul radiocomando ma su programmatori.


Figura 4. Schema di trasmissione del radiocomando con il campione corto; le parti sane del codice sono cerchiate in giallo

Figura 5. Confronto tra il codice originale e il codice ricostruito da un dispositivo di duplicazione evoluto: i due codici sono praticamente identici

Figura 6. Rappresentazione tipica della struttura di una trasmissione rolling-code. Tre le parti che la contraddistinguono: la pausa, la parte a codice fisso e la parte a codice variabile


Si ringrazia per il contributo la società Kalcic di Trieste.
www.kalcic.it