l Hardware del TNC2 revisionato e migliorato ========================================== 1. Problemi dei TNC ------------------- Solo pochi anni fa nessuno era in grado di prevvedere l' ampia diffusione del packet-radio, un modo nuovo di communicare tra radioamatori, che finalmente unisce radio, computer ed un utile servizio informativo. Consumato l' entusiasmo iniziale sono apparsi anche diversi problemi: le limitazioni del sistema anno deluso tanti radioamatori prima entusiasti del packet. Il packet-radio richiede per il suo funzionamento una rete di ripetitori collegati tra di loro, generalmente chiamati nodi. Per migliorare le prestazioni della rete packet-radio si deve agire in piu direzioni. Inanzitutto e necessario un buon coordinamento nella costruzione della rete, ovvero una scelta accurata delle frequenze, antenne e locazioni dei nodi ripetitori (un nodo puo funzionare su piu gamme di frequenza). Inoltre e necessario cercare delle soluzioni migliori sia nel campo del hardware che nel campo del software, badando pero a rimanere compatibili al 100% con la rete esistente. Questo articolo descrive alcune importanti modifiche e migliorie al TNC2 ed in particolare al circuito base (digitale) del TNC2, la costruzione di diversi tipi di modem, fino a 38400bps e vari circuiti ausiliari. La sigla TNC sta per Terminal Node Controller, ovvero la "scatola nera" da inserirsi tra il RTX ed un terminale RS-232. Un TNC comprende generalmente un modem ed un piccolo microcomputer. L' apparecchio piu diffuso oggigiorno e senzaltro il TNC2, progettato diversi anni fa dalla TAPR (Tucson Amateur Packet Radio, un gruppo di "pionieri" nel campo del packet-radio) e poi copiato in tutte le parti del mondo. Nonostante i componenti usati nel TNC2 non sono i piu recenti (Z80 CPU e SIO in particolare), il TNC2 e ancora molto interessante per l'ampia base di software scritto per questo particolare circuito. In particolare, il software per i nodi della rete packet-radio, NETROM o TheNet, e reperibile solo per il TNC2 (e solo di recente anche per il TNC220). Come ogni circuito che a avuto successo anche il TNC2 originale aveva alcuni difetti, sia nel hardware che nel software. I difetti nel software sono stati agilmente eliminati semplicemente scrivendo dei nuovi programmi di gestione: gli utenti dovevano semplicemente sostituire la EPROM vecchia con una nuova. Purtroppo molto poco e stato fatto per migliorare il hardware. Anzi, si e fatto anche peggio: ai relativamente pochi difetti del TNC2 originale americano sono stati aggiunti tanti altri difetti dai costruttori dei TNC2 clones ovvero delle copie costruite in tutte le parti del mondo, Europa compresa. I difetti del hardware di un TNC2, specialmente se si tratta di un clone di cattiva qualita, si fanno notare sopratutto quando il TNC2 viene usato come nodo nella rete packet: i nodi vengono generalmente installati in locazioni remote, in montagna, e ogni intervento da parte dei mantenitori richiede tanto tempo. Inoltre, mentre il malfunzionamento di un TNC2 di un utente generalnente non disturba altri radioamatori, il malfunzionamento di un nodo puo compromettere il funzionamento della rete intera a parte il disservizio per tutti gli utenti della sua area di copertura. Percio risulta molto importante usare soltanto dei TNC2 di ottima qualita per la rete packet-radio. I difetti di un tipico TNC2 commerciale si possono riassumere nei seguenti punti: A) Quasi nessuno dei TNC2 clones reperibili non dispone di un circuito di RESET del microprocessore veramente funzionante: a volte basta uno sbalzo della tensione di alimentazione per "incastrare" il software e richiedere un intervento manuale del mantenitore: pigiare il tasto del RESET. Nel caso di un nodo non sono molti i mantenitori che amano gite frequenti e improvvise in montagna... B) Nessun TNC2 dispone di un circuito di protezione del contenuto della RAM non-volatile. A nulla vale installare una batteria al NiCd per mantenere il contenuto della memoria se quest' ultimo viene distrutto dal microprocessore all' atto dell' accensione del TNC2. L' effetto finale e lo stesso come nel caso di un cattivo RESET: e richiesto l' intervento manuale del operatore. C) Il TNC2 originale della TAPR disponeva di una state-machine costruita con una EPROM per ricavare il clock in ricezione. Tutti i costruttori dei clones anno sostituito questo circuito con un semplice contatore (74LS393) resettato dalle transizioni nel segnale ricevuto. Le prestazioni di questo circuito sono scadenti nella migliore delle ipotesi: la ricezione dei segnali deboli e impossibile! D) Molti TNC2 non dispongono di un buon circuito di DCD (Digital Carrier Detect) veramente funzionante e richiedono l' uso dello squelch del RTX. La regolazione dello squelch puo essere molto critica! Inoltre lo squelch introduce dei ritardi altrimenti non necessari degradando le prestazioni del sistema. E) La decodifica dei indirizzi del microprocessore e mal progettata in buona parte dei TNC2: il segnale MREQ e usato assieme a A15 per ottenere il chip-select della EPROM. Usando MREQ assieme a RD si possono guadagnare 50ns nel tempo di accesso della EPROM. Questi 50ns sono molto preziosi quando si opera a frequenze di clock elevate (10MHz), per esempio per il funzionamento del TNC2 come nodo a 38400bps. F) L' interfaccia RS-232 e l' alimentatore relativo sono generalmente una fonte di problemi. In un nodo multiplo NETROM o TheNet e molto piu semplice collegare i TNC2 a livello TTL. G) Tanti TNC2 clones anno altri difetti specifici causati in buona parte dall' incompetenza dei loro costruttori. Per ovviare a tutti questi difetti riscontrati nel uso pratico dei TNC2 clones la soluzione migliore era di progettare un TNC2 clone completamente nuovo. Ovviamente il nuovo TNC2 doveva essere compatibile al 100% con tutto il software disponibile, percio il circuito base del TNC2 e rimasto lo stesso, ovvero Z80CPU, Z80SIO-0, EPROM e RAM. Sono stati aggiunti un circuito di RESET molto sicuro, un circuito di protezione della RAM non volatile, una state-machine per il clock in ricezione ed un DCD digitale che non richiede l' uso dello squelch. Infine sono state apportate delle correzioni in diverse parti del circuito. Nonostante tutti i circuiti aggiuntivi sono stati realizzati con dei comunissimi integrati della serie TTL LS, il TNC2 revisionato non usa piu integrati dei TNC2 clones commerciali! Per motivi pratici il circuito del TNC2 revisionato e stato suddiviso in tre moduli: parte digitale, modem e alimentatore. La parte digitale comprende il microprocessore e costituisce il cuore del TNC2 revisionato. Alla parte digitale viene abbinato uno dei due tipi di modem. Il primo e un modem AFSK (standard) costruito attorno all' integrato 7910 funzionante a 1200bps (VHF) o 300bps (HF). Il secondo e un modem Manchester funzionante a 2400bps con RTX FM convenzionali oppure a 38400bps (38.4kbps) con RTX FM a larga banda. Infine, il modulo alimentatore comprende anche il circuito di RESET ed una batteria al NiCd per il mantenimento della memoria. Ovviamente basta un solo modulo alimentatore per alimentare piu TNC2 in un nodo multiplo! Per collegare piu di due TNC2 in un nodo multiplo e richiesto anche un circuito di collegamento tra i TNC2. Anche questo circuito e descritto in questo articolo, assieme alle modifiche da apportare a TNC2 commerciali per eliminare almeno i difetti piu gravi. 2. TNC2 revisionato ------------------- Lo schema a blocchi della parte digitale del TNC2 modificato e mostrato in Fig.1a. Rispetto ad un qualsiasi TNC2 presenta ben poche differenze: e stata aggiunta la state-machine per il clock in ricezione, il circuito del DCD ed il circuito di protezione del contenuto della RAM. Lo schema elettrico e stato diviso, per comodita, in due parti. La prima parte dello schema elettrico (Fig.1b) mostra le interfacce seriali: l' integrato Z80SIO-0 ed i relativi circuiti ausiliari. L' integrato Z80SIO-0 era infatti uno dei primi integrati in grado di lavorare con i protocolli sincroni come quello usato per il packet-radio e richide percio diversi circuiti esterni. Inanzitutto lo Z80SIO-0 non e in grado di ricavare il sincronismo in ricezione e richiede un circuito per la rigenerazione del clock esterno. Inoltre, lo Z80SIO-0 puo lavorare solo nel codice NRZ, dove il livello alto corrisponde semplicemnete ad un "1" logico ed il livello basso ad uno "0" logico. Nelle communicazioni packet-radio viene invece usato il codice NRZI ovvero codice differenziale: un cambio di livello corrisponde ad uno "0" logico, nessun cambio di livello ad un "1" logico. Esaminando il protocollo usato nel packet-radio l' impiego del codice NRZI e richiesto sopratutto per poter ricavare il clock dal segnale ricevuto con un semplice PLL digitale. Il PLL digitale e la conversione NRZ/NRZI e viceversa sono compresi nei integrati SCC piu recenti, come lo Z8530 (usato nel TNC220) o il uPD72001. Questi circuiti sono purtroppo assenti nel vecchio Z80SIO-0 e devono essere aggiunti come circuiti esterni. Il DPLL e costruito con quattro integrati TTL LS: porte EX-OR 74LS86, commutatore elettronico 74LS157, contatore sincrono 74LS163 e quattro D flip-flop 74LS175. Il DPLL funziona con un clock di 32 volte il clock del segnale ricevuto. In assenza di transizioni nel segnale ricevuto, il clock viene semplicemente diviso per 32 da un D flip-flop (1/4 74LS175) e dal contatore 74LS163. Qualsiasi transizione di livello nel segnale RXD proveniente dal modem viene rivelata dalla porta EX-OR collegata ai due D flip-flop e commuta il 74LS157 che a sua volta corregge il conteggio del divisore per 32. Il conteggio del divisore viene incrementato o decrementato: nella peggiore delle ipotesi bastano 16 transizioni nel segnale ricevuto per sincronizzare il divisore. Anche il circuito del DCD monitorizza le transizioni nel segnale ricevuto ed in particolare la loro relazione con la fase del clock ricavato dal DPLL. Se la transizione avviene all' inizio o verso la fine del tempo di un bit, puo trattarsi di un segnale utile. Se invece la transizione avviene in mezzo del tempo assegnato a un bit si tratta sicuramente di rumore ovvero assenza di segnali utili. La decisione viene prima memorizzata in un D flip-flop e poi passata ad una rete RC passa-basso. In presenza di un segnale utile il DPLL si sincronizza e tutte le transizioni di livello avvengono al momento opportuno: il condensatore della rete RC viene scaricato. In presenza di rumore, meta delle transizioni avviene nel momento sbagliato e meta nel momento giusto, nella media la tensione sul condensatore della rete RC sara uguale a meta della tensione di alimentazione, ovvero attorno a 2.5V. La decisione finale e lasciata al comparatore LM311, la soglia del quale e aggiustabile col trimmer da 10kohm. Ovviamente la costante di tempo del gruppo RC va aggiustata cambiando il condensatore per diverse velocita di trasmissione: lo schema riporta i valori per 1200bps, 2400bps e 38400bps. In ricezione vengono usati due D flip-flop (74LS74) ed una porta EX-OR per trasformare il segnale NRZI in un segnale NRZ. Viceversa, in trasmissione vengono usati due flip-flop (74LS109) per ottenere il codice NRZI dal segnale NRZ prodotto dallo Z80SIO-0. Il segnale PTT viene generato sul piedino RTSA dello Z80SIO-0. Questo piedino e collegato direttamente all' ingresso CTSA sullo stesso integrato visto che un qualsiasi ritardo nel modem e gia compensato nel software col parametro TXDELAY. La porta RS-232 e molto piu semplice: lo Z80SIO-0 e in grado di fare quasi tutto da solo meno che generare i livelli dello standard RS-232. Esaminando gli integrati interfaccia RS-232 quasi tutti sono pero in grado di acettare anche segnali a livello TTL. Come pilota RS-232 va percio benissimo un comune LS TTL. Anche in ricezione vanno bene le porte LS TTL, badando pero a proteggere gli ingressi con delle resistenze. Riassumendo, un solo 74LS14 e in grado di generare ed acettare segnali compatibili con entrambi i standard: RS-232 e TTL. Il TNC2 viene generalmente equipaggiato con quattro LED indicatori: TX, DCD, STATUS e CONNECT. Il TNC2 revisionato monta un solo LED, quello del DCD (il piu importante). Ovviamente si possono aggiungere altri LED per le rimanenti funzioni. L' uscita per il LED CONNECT e comunque disponibile sulla porta RS-232 come richiesto da alcuni programmi BBS. Inoltre, il software TheNet non usa i LED CONNECT e STATUS, le due uscite dello Z80SIO-0 (DTRA e DTRB) si possono usare per telecomandi, ovviamente solo nel modo sysop! Le interfacce seriali richiedono tre clock diversi: RXCLK*32 per il DPLL in ricezione, TXCLK*1 per la trasmissione e RS232CLK*16 per la porta RS-232 (comune per la ricezione e la trasmissione RS-232). Inoltre, per tutte le temporizzazioni del software di gestione e richiesto un clock di 600Hz sull' ingresso SYNCB dello Z80SIO-0. Il generatore di clock e mostrato assieme al microprocessore nella seconda parte dello schema elettrico in Fig.1c. Tutti i clock vengono ricavati da un unico oscillatore quarzato a 4.9152MHz (o 9.8304MHz nella versione veloce per i 38.4kbps). L' oscillatore e costruito con una porta 74HC00. Altre due porte dello stesso integrato servono da amplificatore separatore. Queste porte forniscono il clock per lo Z80CPU, per lo Z80SIO-0 e per la catena di divisori, che comprende un 74LS74 e un 4040. Tutte e dodici le uscite del 4040 sono disponibili su uno zoccolo a 16 piedini e vanno ponticellate ai quattro ingressi: RXCLK*32, TXCLK*1, RS232CLK*16 e SYNCB. Per mantenere la totale compatibilita software col TNC2 originale sono ammesse solo pochissime variazioni al circuito del microprocessore, ovvero ai collegamenti tra i quattro integrati principali: microprocessore Z80CPU, EPROM 27256, RAM 43256 e porta seriale Z80SIO-0. Una importante modifica e la decodifica dei segnali RD, WR e MREQ tramite porte OR (74LS32) che permette l' impiego di EPROM lente anche a frequenze di clock elevate. Il segnale di RESET, fornito dal modulo alimentatore, e richiesto dallo Z80CPU, dallo Z80SIO-0 e dal circuito di protezione del contenuto della RAM. Nel circuito di protezione viene utilizzato un transistor bipolare BC238. Non sono state usate delle porte logiche di nessuna famiglia di integrati digitali per un semplice motivo: il comportamento dei integrati non e definito a tensioni d' alimentazione prossime allo zero! Il funzionamento del RESET e del circuito di protezione si pou descrivere nel seguente modo: quando la tensione d' alimentazione incomincia a calare, a monte del regolatore per i +5V, il segnale di RESET semplicemente disabilita il Chip Select della RAM tramite il circuito di protezione. Poiche il RESET e attivo a livello basso e rimane tale anche in assenza d' alimentazione, il contenuto della RAM rimane intatto. All' atto dell' accensione del TNC2 il RESET rimane attivo per un certo tempo proteggendo il contenuto della RAM finche il microprocessore non e finalmente in grado di svolgere il suo compito. Il modulo digitale del TNC2 revisionato e costruito su un circuito stampto a doppia faccia, dalle dimensioni di 150X75mm. Il lato componenti e mostrato in Fig.1d ed il lato saldature e mostrato in Fig.1e. La disposizione dei componenti e mostrata in Fig.1f. Tutte le resistenze sono montate orizzontali, come pure l' elettrolitico da 10uF ed il quarzo in custodia HC18U. I rimanenti condensatori sono tutti ceramici eccetto il condensatore della costante di tempo del DCD a film plastico. La scelta dei integrati non e critica per la versione a bassa velocita, operante con un clock a 4.9152MHz. Per operare con un clock a 9.8304MHz e invece necessario selezionare la CPU e la SIO. In entrambi i casi e ovviamente necessario reperire integrati adatti per le frequenze in gioco. Le versioni sono a volte indicate da lettere: A=4MHz, B=6MHz, H=8MHz. La versione A generalmente funziona bene anche a 4.9MHz nonostante e garantita solo fino a 4MHz. ATTENZIONE! L' integrato Z80SIO e internamente un integrato con 41 contatti. Visto pero che la custodia standard a soltanto 40 piedini, viene prodotto in tre versioni, ognuna delle quali a omessa qualche funzione per la mancanza di un piedino. Il circuito del TNC2 e tutto il software reperibile richiedono l' impiego dello Z80SIO-0 (Z8440). Il TNC2 non puo funzionare con le rimanenti due versioni Z80SIO-1 (Z8441) e Z80SIO-2 (Z8442). All' atto del acquisto e percio assolutamente necessario verificare il tipo dello Z80SIO! In ogni caso si raccomanda di installare i quattro millepiedi (CPU, EPROM, RAM e SIO) su zoccoli di buona qualita con i contatti rotondi. Lo stesso tipo di zoccoli vengono usati anche come connettori per il modem (striscia di 7 contatti), per l' RS-232 (7 contatti) e per l' alimentazione (4 contatti). L' unica taratura da esegiure sulla parte digitale del TNC2 modificato e la soglia del DCD. In buona parte dei casi basta regolare il trimmer per avere circa 1.2V sul cursore. Ovviamente e necessario anche installare correttamente i ponticelli per i quattro diversi clock richiesti dalla porta seriale. Lavorando con un quarzo da 9.8304MHz tutte le frequenze sulle uscite del 4040 raddoppiano! Infine, il 74LS14 e in grado di pilotare buona parte dei integrati interfaccia RS-232, ma non tutti! Il 74LS14 e anche piu fragile di un vero integrato RS-232 che essendo protetto non teme collegamenti errati. In pratica non si sono pero mai avuti problemi alcuni usando al suo posto il comunissimo 74LS14. 3. BELL-202 modem ----------------- A parte rare eccezioni, come le communicazioni via satellite o esperimenti a velocita di trasmissione superiori a 1200bps, quasi tutti i collegamenti in packet-radio avvengono usando dei modem AFSK abbinati ad un ricetrasmettitore convenzionale. Anche tutti i TNC commerciali sono provvisti unicamente di questo tipo di modem. In VHF viene usato lo standard BELL-202: toni 1200Hz e 2200Hz, 1200bps, assieme a ricetrasmettitori FM. In HF viene usato lo standard BELL-103: shift 200Hz, 300bps, assieme a ricetrasmettitori SSB. Nonostante esistono diversi tipi di integrati modem per i standard indicati buona parte dei TNC usa due tipi di integrati: la coppia 2206/2211 o il 7910. La coppia 2206/2211 e una coppia di integrati analogici, che richiedono tanti trimmer e condensatori di precisione. Inoltre, le prestazioni del demodulatore PLL 2211 con segnali deboli sono tuttaltro che buone. Il 7910 (o 7911) e invece un integrato tutto digitale e non richiede tarature. Tutte le frequenze sono definite semplicemente con un quarzo per generare il clock di riferimento. Inoltre, il 7910 possiede uno dei migliori demodulatori AFSK: esso puo lavorare anche con rapporti segnale/disturbo inferiori di 10dB rispetto al 2211! Il 7910 a un unico difetto, tra l' altro comune a tanti modem AFSK: il DCD entrocontenuto e sensibile a qualsiasi segnale, rumori compresi, e non solo a segnali utili. Il TNC2 revisionato dispone di un ottimo DCD proprio e non richiede l' uso del DCD del modem, percio l' integrato 7910 va benissimo. Lo schema elettrico del modem completo e mostrato in Fig.2a. Il 7910 richiede una doppia alimentazione a +/-5V. La tensione di alimentazione negativa e ottenuta con un semplice invertitore switching con i due transistor BC327 e BC337. L' invertitore usa la bobina da 330uH, le rimanenti bobine da 150uH servono solo come impedenze di filtraggio. A parte il 7910 e l' alimentatore relativo il modem comprende un circuito "watchdog": circuito che dovrebbe prevenire la trasmissione continua nel caso di guasti o problemi del software. Le costanti di tempo del circuito "watchdog" sono definite in buona parte dal condensatore da 100uF. Segue un amplificatore CC per pilotare il PTT del RTX: l' uscita PTT corrisponde ad un contatto che si chiude verso massa in trasmissione. Il modem BELL-202 e costruito su un circuito stampato a singola faccia, dalle dimensioni di 75X75mm (Fig.2b). La disposizione dei componenti e mostrata in Fig.2c. Tutte le resistenze, diodi, condensatori, bobine ed il quarzo (HC18U) sono montati orizzontali. I condensatori non polarizzati possono essere di qualsiasi tipo (ceramici o film plastico). Le quattro bobine sono delle impedenze precostruite dall' aspetto esterno di una resistenza da 1/2W. I valori non sono critici, il circuito pero NON funziona con delle volgari VK200. Anche la basetta del modem BELL-202 usa lo stesso tipo di connettori: strisce di contatti tipo zoccolo per integrati. I connettori per l' alimentazione (4 poli) e per il TNC (7 poli) corrispondono a quelli sulla parte digitale del TNC2 revisionato. Da notare che il 7910 richiede anche il RESET. Un terzo connettore (4 poli) e usato per collegare il RTX. Il 7910 si puo sostituire col 7911, l' unica differenza tra i due integrati e il valore della resistenza della rete RC connessa ai piedini CAP1 e CAP2: 100ohm per il 7910 e 1kohm per il 7911. Il 7910 (7910) dispone di cinque ingressi per la selezione del modo di funzionamento MC0 - MC4. Sul circuito stampato il 7910 e programmato per funzionare nel modo 1200bps, BELL-202 con equalizzazione. Gli ingressi MC0 e MC1 sono pero disponibili su delle piazzuole per programmare il 7910 anche in modi diversi. Collegando MC0 a massa si disabilita l' equalizzazione. Collegando MC1 a massa si seleziona il modo 300bps, BELL-103. In questo modo MC0 serve a selezionare i toni alti o i toni bassi. Il demodulatore del 7910 e in grado di acettare segnali in un vasto campo dinamico. Il livello d' uscita del modulatore del 7910 va comunque adattato alla sensibilita dell' ingresso MIC del trasmettitore usato: se il trimmer da 10kohm non basta si deve agire sulla resistenza da 18kohm. Gli amplificatori operazionali usati su alcuni TNC2 clones servono infatti solo a distorcere i segnali e/o introdurre rumori. Secondo le mie esperienze e meglio pilotare l' ingresso MIC con una sorgente ad alta impedenza (>10kohm) per evitare ronzii e rumori vari captati da correnti vaganti tra le masse di apparati diversi. Nel TNC2 revisionato il DCD del 7910 non viene utilizzato. Lo squelch del ricetrasmettitore va percio lasciato completamente aperto (soffio nel altoparlante) per non introdurre dei ritardi non necessari ed anche per creare le condizioni di lavoro ottimali per il DCD digitale del TNC2 revisionato. 4. Manchester modem ------------------- Gia nell' epoca dei primi esperimenti col packet-radio lo standard a 1200bps, BELL-202 era inteso solo come una soluzione temporanea, finche non diventassero disponibili modem e ricetrasmettitori in grado di lavorare a velocita superiori. Nonostante sperimentatori di tutte le parti del mondo abbiano sviluppato modem fino a 56kbps di ogni tipo, comprendendo sia progetti seri ma anche modem che non anno mai funzionato, l' unico modem che a avuto un discreto successo e il modem a 9600bps di G3RUH. Questo modem lavora con RTX FM convenzionali a banda stretta, modificati pero in modo da accedere direttamente al varicap di modulazione e all' uscita del discriminatore. Anche se fossero disponibili modem per velocita ancora superiori non a senso usarli con RTX FM a banda stretta convenzionali: il tempo di commutazione RX/TX limiterebbe le prestazioni del sistema. Inoltre, modem complessi richiedono un certo tempo "di addestramento" prima di essere in grado di demodulare il segnale che si somma al tempo di commutazione RX/TX. Infine, modem complessi non sono facili da usare: basti pensare per esempio alle modifiche richieste dal modem G3RUH ed alla relativa programmazione della EPROM di compensazione per ogni particolare tipo di RTX. Una valida alternativa e di usare dei modem semplici assieme a ricetrasmettori a larga banda. Tra le piu semplici combinazioni possibili rientra senzaltro un modem Manchester abbinato ad un ricetrasmettitore FM. In teoria questa combinazione e in grado di fornire una portata massima (intesa come attenuazione massima tra il trasmettitore ed il ricevitore) di solo 5dB inferiore ad un sistema PSK coerente. In pratica un modem Manchester e facile da realizzare ed il suo funzionamento e assai insensibile a rumori e distorsioni varie. Lo spettro di un segnale Manchester non contiene nessuna componente continua o di frequenza molto bassa, percio e relativamente resistente alle distorsioni di fase causate dalla limitata banda passante del RTX o dai condensatori di accoppiamento. Anche il tempo richiesto per la sincronizzazione di un modem Manchester e molto breve. Collegando un modem Manchester alle prese MIC e SPKR di un RTX FM a banda stretta (15kHz) non modificato, si puo operare ad una velocita di almeno 2400bps. Usando un RTX FM a banda larga (200kHz) si puo operare oltre i 38.4kbps. RTX FM di questo tipo sono reperibili come ex ponti radio, ma sono anche facili da autocostruire, usando per esempio dei economicissimi filtri ceramici da 200kHz di larghezza di banda (per l' uso nei ricevitori di radiodiffusione FM). La definizione di un segnale codificato Manchester e la seguente: l' "1" logico e rappresentato da un livello alto nella prima meta del bit e da un livello basso nella seconda meta. Viceversa, lo "0" logico e rappresentato da un livello basso nella prima meta e da un livello alto nella seconda meta. In pratica un modem Manchester viene realizzato come sullo schema a blocchi in Fig.3a: il segnale viene "moltiplicato" con un' onda quadra perfettamente sincronizzata tramite una porta EX-OR. Lo stesso circuito serve sia come codifica in trasmissione che come decodifica in ricezione. Ovviamente sono richiesti alcuni circuiti ausiliari. L' onda quadra ausiliaria viene fornita e sincronizzata col segnale da un DPLL. Scegliendo opportunamente i parametri del DPLL si puo usare lo stesso circuito sia in ricezione (decodifica) che in trasmissione (codifica). Inoltre, in ricezione il segnale in ingresso deve essere prima portato a livelli digitali da un amplificatore-limitatore. Dopo l' operazione EX-OR il segnale viene "ripulito" da un integratore (passa-basso). Lo schema elettrico del modem Manchester e mostrato in Fig.3b. Il generatore di clock permette il funzionamento del modem nel campo da 1200bps fino a 76.8kbps partendo con un quarzo da 9.8304MHz. I valori dei componenti corrispondono pero alla versione per i 38400bps, i valori in parentesi per la versione 2400bps. Il DPLL usa un circuito e dei componenti molto simili al DPLL nella parte digitale del TNC2 revisionato. Il DPLL funziona con una frequenza di clock di 64 volte il clock dei dati. Il DPLL non fa distinzione alcuna tra le transizioni all' inizio del bit e quelle a meta bit: la fase dell' onda quadra rigenerata e ancora ambigua: 0 oppure 180 gradi. L' ambiguita di fase si traduce in un' ambiguita della polarita del segnale demodulato. Considerando pero che nel packet-radio viene utilizzato il codice NRZI (differenziale), contano solo le transizioni, non la polarita del segnale in assoluto. Percio il modem non contiene un circuito di risoluzione dell' ambiguita di fase, tipico nei modem Manchester ma perfettamente superfluo per l' uso packet-radio. Tutte le commutazioni RX/TX (decodifica/codifica) vengono eseguite da un commutatore elettronico 74LS157. Come amplificatore-limitatore viene usato un LM311. Un altro LM311 segue l' integratore per fornire il segnale demodulato. Anche il modem Manchester dispone del circuito "watchdog" identico a quello usato sul modem BELL-202. Naturalmente a 38.4kbps la costante di tempo del watchdog e di un ordine di grandezza inferiore. In un modem Manchester e relativamente facile costruire un sicuro ed efficente DCD, sfruttando le caratteristiche del segnale. Vista pero la presenza di un efficente DCD nel circuito digitale del TNC2 revisionato il DCD nel modem e stato semplicemente omesso. Anche l' oscillatore quarzato col 74HC00 ed il divisore 74LS393 non sono strettamente necessari: le le stesse frequenze sono disponibili nella catena dei divisori del TNC2. Il modem Manchester e costruito su un circuito stampato a singola faccia, dalle dimensioni di 75X75mm (Fig.3c). La disposizione dei componenti e mostrata in Fig.3d. Tutte le resistenze, diodi, condensatori ed il quarzo (HC18U) sono montati orizzontali. Anche qui i condensatori non polarizzati possono essere di qualsiasi tipo (ceramici o film plastico) con la preferenza pero per i tipi a basso coefficente termico (film plastico) per tutti i condensatori che determinano le costanti di tempo. Anche il modem Manchester a tre connettori: TNC, RTX ed alimentazione, identici anche nella disposizione dei collegamenti ai connettori equivalenti nel modem BELL-202. Come nel modem BELL-202 anche nel modem Manchester e necessario regolare soltanto il livello di modulazione per pilotare correttamente il TX. In ricezione il segnale viene semplicemente limitato, sacrificando alcuni dB nel rapporto segnale/rumore, ma semplificando sia il circuito sia eliminando qualsiasi regolazione o taratura. 5. Alimentazione del TNC ------------------------ Il progetto di un alimentatore serio per il TNC2 revisionato non e una questione triviale. A parte i +5V per i circuiti digitali l' alimentatore deve fornire anche la tensione per il mantenimento della memoria ad apparato spento. A queste due funzioni va associata la generazione del segnale di RESET. Generare un segnale di RESET affidabile in tutte le condizioni non e un' impresa semplice. La solita rete RC seguita da una porta schmitt-trigger e senzaltro la soluzione peggiore: basta un leggero sbalzo della tensione d' alimentazione per bloccare il computer, distruggre tutti i dati in memoria e richiedere l' intervento del operatore. Un circuito di RESET affidabile deve svolgere le seguenti funzioni per garantire il funzionamento corretto del microprocessore e proteggere il contenuto della memoria RAM non-volatile: A) Il RESET va rilasciato, con il ritardo prescritto, soltanto dopo che la tensione d' alimentazione e rientrata entro i valori prestabiliti per il funzionamento corretto del microprocessore. B) Il RESET deve essere applicato immediatamente quando la tensione d' alimentazione esce dai limiti prescritti. C) Il RESET deve rimanere attivo anche quando la tensione d' alimentazione e completamente assente, per proteggere il contenuto della RAM. D) Il RESET deve essere applicato o rilasciato entro un tempo molto breve: il segnale deve avere i fianchi ripidi in modo che il microprocessore, le periferiche ed il circuito di protezione della RAM non-volatile ricevono il segnale di RESET tutti allo stesso tempo: entro pochi cicli di clock del sistema. Il generatore del RESET va percio progettato con cautela, il circuito non e pero necessariamente complesso. In Fig.4a e mostrato un semplice alimentatore dotato di un circuito di RESET che risponde a tutte le richieste esposte. Lo schema presuppone che il circuito viene alimentato con una tensione continua di 12V nominali, negativo a massa, come del resto richiesto da quasi tutti gli apparati radioamatoriali di costruzione recente. I +5V per il microprocessore sono ottenuti con un volgare 7805, ovviamente avvitato su un dissipatore o meglio su una parete metallica della scatola del TNC2. L' alimentazione della RAM non volatile, ovvero la tensione d' alimentazione denominata +CMOS e ottenuta dai +5V tramite un diodo schottky di potenza 1N5818, per minimizzare la caduta di tensione. La caduta di tensione su un diodo schottky in conduzione e di soli 0.3 - 0.4V contro i 0.6 - 0.7V di un diodo convenzionale al silicio. Durante il funzionamento normale dell' apparato, la batteria al NiCd viene ricaricata tramite la resistenza da 2.2kohm. Ad apparato spento, la tensione +CMOS viene fornita dalla batteria tramite la stessa resistenza. La caduta di tensione sulla resistenza e insignificante visto il consumo di pochi microamper. Il diodo schottky ovviamente previene una scarica veloce della batteria tramite i rimanenti circuiti. Il circuito di RESET e costruito con due transistor BC238 visto che non esistono integrati dal comportamento noto anche a tensioni d' alimentazione prossime allo zero. L' uscita di questo circuito rimane a livello basso ovvero il segnale di RESET rimane attivo fino a che la tensione in ingresso del alimentatore non raggiunge 10V circa. Il RESET viene rilasciato dopo un certo ritardo dato dalla carica dell' elettrolitico da 220uF. Allo stesso tempo, con 10V in ingresso, il 7805 e senzaltro in grado di fornire i +5V richiesti dal microprocessore. Quando invece la tensione in ingresso incomincia a calare, il RESET viene applicato subito visto che il condensatore da 220uF viene scaricato velocemente tramite il diodo 1N4001. Inoltre il circuito a un' isteresi di circa mezzo volt per garantire un segnale di RESET corretto e definito per qualsiasi tensione in ingresso. Per il circuito di Fig.4a non e mai stato disegnato un circuito stampato: i due prototipi sono stati costruiti semplicemente su dei ancoraggi. A parte il 7805 che viene installato direttamente sul dissipatore vi sono anche dei componenti scomodi per i circuiti stampati: reperire una batteria al NiCd dalle stesse dimensioni e stessa disposizione dei piedini puo risultare un' impresa impossibile! Il difetto principale di un alimentatore basato su un regolatore come il 7805 e un notevole sviluppo di calore. Nel caso di piu TNC2 installati nella stessa scatola col alimentatore in comune la temperatura interna nella scatola sale notevolmente. Una elevata temperatura ambiente causa sempe dei seri problemi, specialmente con integrati fatti operare vicino alla massima frequenza di clock consentita. Una soluzione decisamente migliore e di usare un regolatore switching come mostrato in Fig.4b. L' efficenza di questo alimentatore raggiunge il 80% in confronto al 40% di un regolatore lineare come il 7805, dimezzando il consumo energetico e di conseguenza anche la produzione di calore. Il regolatore switching e composto da un oscillatore di potenza (darlington BDX34 e BC337), regolato da un altro BC337. In ogni ciclo l' energia viene immagazzinata in una bobina e poi rilasciata tramite il diodo schottky 1N5822. Il zener da 6.2V 5W serve solo come protezione nel caso di guasti nel regolatore. Ovviamente l' ingresso e l' uscita di un regolatore switching vanno abbondantemente filtrati (celle a PI greco con elettrolitici e impedenze da 10uH) per evitare disturbi. I circuiti per alimentare le memorie non-volatili e la generazione del RESET sono praticamente identici al alimentatore semplice descritto prima, sono solo dimensionati per pilotare da 3 a 5 TNC2. L' alimentatore switching e costruito su un circuito stampato a singola faccia, dalle dimensioni di 120X100mm (Fig.4c). La disposizione dei componenti e mostrata in Fig.4d. Tutte le resistenze e diodi sono montati orizzontali. Tutti i condensatori elettrolitici sono del tipo verticale. Nell' alimentatore vengono usati dei condensatori in parallelo per ridurre l' induttivita parassita (e non perche non fossero reperibili condensatori dal valore doppio!). Le batterie al NiCd sono del tipo a stilo da 0.5Ah e vanno installate orizzontalmente. Il transistor di potenza BDX34 e installato su un piccolo dissipatore ottenuto da un lamierino d' alluminio dalle misure di 72X36mm piegato a U ed avvitato assieme al transistor sul circuito stampato. Le impedenze da 10uH sono composte da 25 spire di filo di rame smaltato, da 0.8mm di diametro, avvolte su bacchette o viti di ferrite di 6mm di diametro. La bobina del regolatore switching e avvolta con quattro fili di rame smaltato da 0.5mm in parallelo ed a 12 spire circa, su un nucleo di ferrite ad olla di 30mm di diametro esterno, con un traferro di circa 0.5mm. Il circuito e comunque poco sensibile ai valori dei componenti induttivi e puo funzionare anche con bobine diverse. L' alimentatore costruito non richiede tarature. Pero si consiglia vivamente di provare l' alimentatore prima su un carico fittizio, per evitare brutte sorprese ovvero fumate costose. Il tasto di RESET e opzionale, nel caso di un hardware funzionante correttamente serve a ben poco. 6. Operazione a 38400bps ------------------------ Il hardware ed il software originali del TNC2 sono stati progettati per lavorare alla velocita di 1200bps (VHF) oppure 300bps (HF) sulla porta RF e fino a 9600bps sulla porta RS-232. Il microprocessore operava con un clock di 2.4576MHz. La stessa frequenza, opportunamente divisa, serviva anche per generare tutte le velocita di trasmissione previste. Volendo aumentare la velocita di trasmissione sorge immediatamente la domanda: quale e il limite di velocita raggiungibile da un TNC2 standard e da cosa e imposto? Una veloce analisi dello schema rivela che tutti gli accessi allo Z80SIO-0 sono gestiti da interrupt. La massima velocita di operazione e percio determinata dal tempo richiesto dal microprocessore per gestire tutti gli interrupt. La velocita massima e percio una funzione del software utilizzato, il limite massimo si aggira sui 100kbps su una porta, almeno un ordine di grandezza al di sotto di quanto consentito dal integrato Z80SIO-0. Superando la massima velocita il microprocessore non riesce piu a gestire tutti gli interrupt e semplicemente incomincia a perdere dati. La lunghezza delle routine di interrupt e di conseguenza la velocita massima raggiungibile e una funzione della complessita del software utilizzato sul TNC2. Per esempio, un software semplice come il KISS puo funzionare fino a 56kbps sulla porta RF e 19.2kbps sulla porta RS-232, come riportato da alcuni sperimentatori americani. Un software molto complesso come il NETROM e invece garantito per soli 9600bps su entrambe le porte RF e RS-232 con un clock di 2.4576MHz della CPU. Ovviamente si puo aumentare la velocita massima aumentando il clock del microprocessore. Raddoppiando la frequenza di clock a 4.9152MHz il software NETROM o TheNet dovrebbe essere in grado di operare fino a 19200bps. Raddoppiando di nuovo il clock a 9.8304MHz il software in questione dovrebbe operare a 38400bps senza problemi. Da prove fatte il software TheNet (il piu usato per i nodi) richiede una frequenza di clock minima di 9MHz per operare a 38400bps sulla porta RF. Modificare un TNC2 per operare a 4.9152MHz di clock e relativamente facile: infatti buona parte dei TNC2 recenti monta un oscillatore di clock a 4.9152MHz. Purtroppo la modifica a 9.8304MHz non e facile: risulta molto difficile reperire dei Z80CPU e Z80SIO-0 che operino a frequenze prossime a 10MHz. Regolarmente si puo reperire solo lo Z80HCPU garantito fino a 8MHz e lo Z80BSIO-0 garantito fino a 6MHz. Una selezione sperimentale dei integrati disponibili a dato dei risultati sorprendenti: addirittura alcuni esemplari della serie A, garantiti solo fino a 4MHz, operavano ancora a 10MHz di clock. Facendo una selezione tra i Z80HCPU e Z80BSIO-0 la probbabilita di trovare un integrato in grado di funzionare a 10MHz e risultata superiore al 70% da prove fatte con gli integrati in mio possesso. Risultati negativi anno dato invece tutti i tentativi di fare operare lo Z80CPU e lo Z80SIO-0 a frequenze di clock diverse, visto che soltanto lo Z80CPU richiede una frequenza di clock elevata ed e molto piu facile da reperire dello Z80SIO-0. Purtroppo lo Z80SIO-0 deve essere in grado di leggere le istruzioni in parallelo allo Z80CPU per decodificare correttamente l' istruzione RETI. Facendo lavorare lo Z80SIO-0 a meta frequenza dello Z80CPU si devono percio inserire due stati di wait su tutti i cicli di lettura, riducendo la velocita del microprocessore al 67%. Per operare con un clock di 10MHz il microporcessore richiede memorie con un tempo di accesso inferiore a 200ns o addirittura inferiore se la decodifica dei indirizzi e mal progettata. Nessun problema per la RAM CMOS: le versioni piu lente sono specificate per 150ns. Con qualche selezione si puo utilizzare anche una EPROM standard da 250ns: EPROM piu veloci non sono facili da trovare. La massima frequenza di operazione di tutti gli integrati in questione cala velocemente con l' aumentare della temperatura. Selezionando integrati e percio necessario provare il circuito alla massima temperatura ambiente oppure ad una frequenza di clock leggermente piu elevata per avere un certo margine di sicurezza! 7. Costruzione di un nodo packet -------------------------------- I nodi della rete packet-radio sono una componente essenziale: senza di essi il packet-radio sarebbe solo un complicato modo di fare della RTTY. L' apparato piu usato nei nodi della rete e appunto il TNC2. Nonostante ogni stazione packet-radio e in grado di funzionare da ripetitore, i nodi vengono equipaggiati con del software scritto espressamente per questa applicazione. Il software piu usato nei nodi, ma anche uno dei migliori e il NETROM scritto da WA8DED. Il NETROM viene venduto su EPROM ed e protetto: non si puo cambiare il nominativo. A parte le copie sprotette il gruppo tedesco Nord>