Attrezziamoci per usare l’APRS….
I tanti ( o forse il solo…) che ormai segue/seguono le nostre divagazioni sulla rete SARIMESH e dintorni, ricorderanno che recentemente abbiamo lanciato una nuova idea di sperimentazione consistente nell’utilizzo di una nuova tecnologia radio, LoRa, per realizzare una rete di accesso basata sulla tecnologia e i protocolli APRS e che si possa agevolmente integrare con la rete SARIMESH in modo da realizzare una rete dati completamente indipendente dalle reti dati tradizionali ( ad es. internet o reti cellulari) per uso non solo di interazione personale ( es. QSO tra operatori umani o interazioni tra umani e macchine), ma anche di interazione tra dispositivi di tipo “solo macchina” ( ad es. sensori ).
In precedenti articoli abbiamo avuto modo di introdurre le caratteristiche principali sia del sistema di trasmissione LoRa ( https://www.sarimesh.net/2018/07/24/lorawan-e-radioamatori/ ) , che del sistema APRS ( https://www.sarimesh.net/2018/08/16/aprs-chi-e-costei/ ): in particolare abbiamo anche accennato alla creazione di quello che in gergo tecnico viene indicato come “test-bed” ovvero un ambiente di prova in cui poter effettuare delle verifiche e soprattutto dei confronti tra diverse opzioni nell’ambito di una certa tematica.
Nel caso della nostra sperimentazione l’obiettivo è, come sopra accennato, creare una rete in cui si utilizzi la metodica APRS tradizionale a livello di protocolli di comunicazione ad alto livello, sostituendo però il livello fisico originale, basato sull’uso del sistema di trasmissione FM associato ad un a codifica AFSK ( Audio Frequency Shift Keying ) sulle frequenze dei 144 Mhz ( eventualmente anche 432), con il livello fisico LoRa a 432 Mhz.
Una delle prime fasi della sperimentazione non poteva che essere la creazione di un ambiente tradizionale APRS su cui poi costruire degli strumenti di valutazione delle prestazioni per poter fare dei confronti.
Da buoni apprendisti stregoni siamo quindi partiti acculturandoci un pochettino sul tema APRS tradizionale, cercando di attrezzarci per poter utilizzare il sistema e poterci smanettare sopra: ovviamente ci siamo ben guardati dall’usare prodotti già belli e confezionati da acquistare sul mercato, non solo e non tanto per motivi economici, ma soprattutto perchè volendo fare qualcosa in cui poi mettere le mani era essenziale evitare cose chiuse o già belle e conferzionate.
Il primo step è stato quello di mettere su una piccola stazioncina per monitorare il traffico APRS e poterci smanettare sopra…. in gergo tecnico quello che abbiamo cercato di realizzare è stato un dispositivo “DIGIPEATER” che potesse all’uopo anche operare come “I-GATE” in modo da integrarsi sia con il livello radio APRS, che con il livello internet APRS-IS.
Dopo ampia ricerca la scelta è caduta su un SW estremamente ben fatto e disponibile in modalità Opensource di nome “DIREWOLF”: il sito di riferimento di questo tool è consultabile a questo indirizzo ; si tratta di un SW in grado di girare sia su piattaforma windows che, soprattutto, su piattaforma linux, che implementa una serie di funzioni in grado di implementare tutto quanto serve per trasformare un RTX tradizionale in un dispositivo in grado di operare sia come “digipeater” che come “I-GATE”, compresa la codifica e decodifica dei segnali audio nel formato AFSK richiesto.
In altri termini sfruttando il SW DireWolf opportunamente installato e configurato su una piccola piattaforma Linux quale ad es. una schedina Raspberry 2 o 3 , e accessoriato con qualche componente discreto ( trasformatori isolamento e fotoaccopiatori) si riesce a mettere insieme un oggetto completamente aperto dal punto di vista SW, su cui poi eventualmente operare delle modifiche secondo le nostre esigenze.
Il risultato di queste scelte è stato quello di creare una stazione che, sfruttando un vecchio FT-1802D e una antenna verticale per i 144Mhz, consente di coprire la nostra zona a livello radio, sfruttando e integrandosi con altre stazioni APRS già esistenti.
Sfruttando questa base è stato implementato un piccolo tool che consente di monitorare agevolmente il traffico radio APRS che la stazione vede: apportando alcune piccole modifiche al codice sorgente e aggiungendo qualche piccolo addon, vengono estratti da DireWolf i dati relativi ai messaggi APRS processati solo a livello radio ( escludendo quindi eventuali messaggi ransitati via internet) e vengono passati al nostro server della rete SARIMESH che provvede a rendere fruibile tramite internet i risultati su base temporale.
Il risultato lo si può visualizzare al seguente URL: http://meshtest.sarimesh.net/aprs.php
Come si potrà notare viene riportata una mappa geolocalizzata di tutti i messaggi APRS ricevuti in un certo intervallo temporale, distinguendo i messaggi ricevuti direttamente dalla stazione ( punti in colore verde ) dai messaggi ricevuti per transito su altri “digipeater” ( punti in colore rosso): la mappa consente a colpo d’occhio di valutare la copertura del servizio APRS nel periodo indicato e dà una idea anche dell’apertura della propagazione sui 144 Mhz.
Clickando con il mouse su ogni singolo punto ( spot) si possono vedere altri dati relativi a quel messaggio, quali ad es. le coordinate geografiche, la distanza , il tempo della ricezione , il tipo di apparecchiatura usata e il campo info del messaggio APRS
Per i messaggi ricevuti non direttamente ma tramite un digipeater i dati mostrati sono leggermente diversi: sono presenti solo le coordinate geografiche, il tempo e il campo info del messaggio originale, mentre è presente l’indicativo dell’ultimo nodo APRS da cui il messaggio è stato ricevuto direttamente ( es. via IR0UDY-12 nella fig. seguente)
Il tool di display accumula i dati ricevuti su base giorno e consente di accedere agli stessi tramite una interfaccia web molto semplice ed intuitiva che permette di selezionare il giorno da analizzare e le ultime ore di attività; sfruttando opportuni parametri forniti all’interno del URL è possibile estendere l’intervallo storico fino a 150 giorni.
Il tool è suscettibile di modifiche per consentire di ampliare le sue funzionalità per es. aggiungendo altri nodi APRS a patto di utlilizzare per tali nodi la versione di DireWolf modificata e che giri su una piattaforma linux: estendendo il numero di nodi monitorati diventa agevole avere una visione in tempo reale dello stato della rete radio APRS e indirettamente delle condizioni della propagazione in banda 144 Mhz come percepita in una specifica zona.
Per quanto riguarda la componnete HW della stazione monitor APRS si è sfruttata una schedina Raspberry 3 con associato un piccolo circuito per interfacciare il rtx alla schedina via USB; in particolare il circuito aggiuntivo è costituito da un adattatore audio USB collegato al RTX tramite due trasformatori di isolamento sfruttando le prese microfono e audio aux del RTX, e da un adattatore USB-seriale per comandare tramite un fotoacoppiatore il circuito del PTT del RTX.
Il circuito è stato realizzato in forma di breadboard con l’obiettivo di realizzare poi successivamente un circuito stampato per rendere più agevole la replica da parte di eventuali om interessati a riprodurre il tutto.
Una volta creato un punto di monitoraggio ( eventualmente replicabile in altri siti fisici), l’altro tema essenziale che si poneva era quello di creare un dispositivo in grado di almeno generare ( ed eventualmente anche ricevere) del traffico APRS: nell’articolo precedente relativo all’APRS abbiamo visto che esistono numerosi modi per generare traffico APRS…. nel nostro caso oltre alla possibilità di generare del traffico, ci interessava anche la possibilità di introdurre delle modifiche e/o varianti, per cui abbiamo anche in questo caso evitato dispositivi o oggetti già confezionati, orientandoci su qualcosa su cui poter “mettere le mani”.
La scelta non è stata semplice in quanto volevamo ottenere alcuni ulteriori obiettivi:
- costo minimo per il terminale APRS completo ( ovvero radio RTX + quanto necessario in aggiunta)
- SW di tipo aperto in grado di girare su diverse piattaforma HW low-cost
- ambiente di sviluppo SW aperto e multipiattaforma
- riutilizzabilità in ottica Lora
La scelta è caduta su un progettino opensource basato su arduino e reperibile al seguente URL: https://create.arduino.cc/projecthub/jweers1/arduino-aprs-tracker-wilderness-location-tracking-a50607
Il circuito sfrutta in maniera molto intelligente le capacità del processore ATMega328 presente in una schedina Arduino Mini pro per realizzare tutte le funzioni necessarie per:
- interfacciare una scheda GPS per la determinazione della posizione
- assemblare i messaggi APRS contenenti i dati di posizione ottenuti dal GPS
- aggiungere il necessario per comporre i pacchetti AX.25 da inviare via radio
- effettuare il processo di modulazione AFSK sfruttando una tabella per generare i due toni a 1200 e 2200 Hz direttamente in formato analogico da inviare al RTX
- pilotare il segnale di PTT per il trasmettitore
- supportare (opzionalmente) un mini-display per l’indicazione di dati locali
- supportare (opzionalmente) eventuali sensori aggiuntivi quali ad es. temperatura, umidità, etc.
Come contorno al processore arduino restano da aggiungere pochi componenti per l’interfacciamento fisico al RTX in maniera isolata sia per la fonia ( in sola trasmissione) che per il segnale di PTT per mandare il RTX in trasmissione quando si tratta di inviare dei pacchetti.
La scelta di arduino e del suo ambiente di sviluppo è la chiave che consente di sfruttare una molteplicità di piattaforme fisiche a basso costo per realizzare versioni più avanzate e performanti di terminali qualora ce ne fosse l’esigenza.
Come risultato di queste scelte è stato costruito prima un breadboard e sucessivamente un piccolo circuito stampato su cui alloggiare una serie di modulini preconfezionati che realizzano i vari blocchi funzionali del progetto ( es. schedino processore, schedino GPS, schedino display, etc.): la scelta di usare dei modulini è sicuramente la più adeguata alle nostre esigenze in quanto consente di minimizzare enormemente i costi di realizzazione di un oggetto fisico di elevata complessità, lasciando la possibilità di seguire i trend di mercato per quanto riguarda i singoli pezzi, e minimizzando l’onere di approviggionamento della componentistica necessaria.
La fig. seguente rappresenta lo schema elettrico del “mini Tracker APRS” realizzato:
Come si nota il circuito si presenta modulare proprio per avere la massima flessibilità; la figura seguente rappresenta una vista 3D del circuito fisico le cui dimensioni sono di circa 6×8 cm.
Va osservato che sul circuito sono stati previsti una serie di cavallotti per permettere l’interfacciamento del dispositivo ad un PC allo scopo di caricare il SW sul dispositivo, consentire di monitorare e debuggare i vari programmi e consentire di accedere direttamente da PC al modulino GPS per scopi di settaggio e di test qualora necessario. il collegamento con il PC non è richiesto per la normale operatività del circuito.
Dal punto di vista SW sono state apportate una serie di cambi al progetto originale indicato allo scopo di rimuovere alcuni bug e soprattutto rendere più stabile il funzionamento sulla base del tipo di modulino processore utilizzato, disbilitando alcune funzionalità ( quale ad es. la parte di ricezione APRS).
Come si sarà compreso viene lasciato fuori il solo RTX; ovviamente anche qui si pone il tema di individuare qualcosa che si cali negli obiettivi del progetto: nel nostro caso l’obiettivo è realizzare un dispositivo standalone da usare quasi esclusivamente al servizio del terminale APRS; quindi la scelta non può che cadere su un RTX di costo minimo presente sul mercato…. la scelta è caduta sul KT-7900D che con circa 70 € consente di avere un dispositivo installabile in maniera fissa su un’auto senza necessità di strani accrocchi per l’alimentazione, ed in grado di collegarsi a terminale APRS con un unico cavetto in grado anche di alimentare il circuito.
Sono state previste due possibilità di collegamento verso RTX a basso costo ( baofeng uv82L e KT-7900D) ; nel caso del KT-7900D il circuito trae la sua alimentazione direttamente dal RTX tramite lo stesso cavo UTP5 che porta i segnali audio e PTT.
Il RTX scelto fornisce una potenza di trasmissione di circa 20 W che ben si confrontano con i 100 milliWatt della radio LoRa che andremo a confrontare in futuro ( il confronto tiene conto del guadagno di processo del sistema LoRa…).
Con le scelte indicate l’apparecchiatura necessaria a realizzare una stzione APRS mobile si riduce quindi a due soli scatolotti uniti tra loro da un singolo cavo tipo UTP5 ( ovvero tipo cavo di rete LAN) e con un unico cavo di alimentazione ( quello originale del RTX).
Il costo totale di una stazione mobile così come descritta si colloca quindi tra i 120 e i 150 € comprendendo in questa cifra il mini Tracker APRS in senso stretto ( circa 30-40 € compreso il GPS con antenna attiva) , il RTX 144/432 Mhz ( circa 70 € ) e l’antenna esterna con base magnetica per auto ( circa 20-40 € ). Per chi avesse già un RTX con antenna installata la spesa si ridurrebbe ai soli circa 30-40 € del mini Tracker APRS.
Va osservato che quella scelta non è ovviamente la soluzione minimale per realizzare un tracker APRS, ma rappresenta una scelta in grado di emulare la maggior parte dei dispositivi APRS attualmente in circolazione e che appunto sfruttano un RTX standard con una potenza di trasmissione tra i 6 e i 60 Watt. Quindi quella realizzata è come dire una specie di stazione tipo.
A completamento del’attività sul tema APRS tradizionale intendiamo comunque fare un piccolo ulteriore step per passare da due scatolotti ad un singolo scatolotto, integrando direttamente sulla board del mini Tracker un modulo radio VHF in grado di produrre un segnale di potenza vicino ad 1 Watt a RF: la soluzione così ottenuta potrebbe rappresentare un interessante elemento di riferimento in termini di costi e dimensioni di ingombro, anche se il livello di potenza ( 1 Watt ) risulta troppo basso per poter fare successivamente dei confronti significativi con il parco dei dispositivi APRS in circolazione o con il nuovo sistema basato su LoRa.
A questo punto ci siamo dotati di quasi tutto il necessario per fare delle prove in capo: il prossimo step sarà quindi quello di montare in maniera stabile il tutto sull’auto e fare qualche scampagnata per vedere come si comporta il tutto 🙂
Alla prossima puntata….
Commenti
Attrezziamoci per usare l’APRS…. — Nessun commento