Category Archives: Elettronica
Robodesk (v1.0)
Bersaglio mobile elettrico per tiro con l’arco
LPD433
Questo tutorial costituisce una breve introduzione sulla banda LPD433, ad uso prevalentemente civile per dispositivi a bassa potenza. Prima di comprendere la natura di questa banda, è bene affrontare, seppur brevemente, alcuni termini chiave che fanno parte della sua standardizzazione
ITU
ITU è il International Telecommunication Union, cioè l’ “Unione Internazionale per le Telecomunicazioni”, ed ha lo scopo di ripartire, allocare, coordinare e standardizzare tutto cià che fa parte delle telecomunicazioni su scala globale.
Le regioni ITU
La ITU definisce le “ITU regions” (regioni ITU), cioè porzioni del globo a cui sono associate specifiche regolamentazioni.
Regione 1
Regione 2
Regione 3
Come è possibile notare dall’immagine, l’Italia fa parte della “Regione ITU 1” (International Telecommunication Union), che comprende:
- 1. Europa,
2. Africa,
3. Medio Oriente ad ovest del Golfo del Persico (Iraq incluso)
4. ex Unione Sovietica
5. Mongolia
La banda ISM
La Banda ISM (Industrial, Scientific and Medical) è il nome assegnato dall’Unione Internazionale delle Telecomunicazioni (ITU) ad un insieme di porzioni dello spettro elettromagnetico riservate alle applicazioni di radiocomunicazioni non commerciali, ma per uso industriale, scientifico e medico.
Cos’è LPD433
LPD433 è il nome in codice della banda di frequenza designata ai cosiddetti “Dispositivi a bassa potenza” (Low Power Devices), cioè le apparecchiature radioamatoriali che si possono usare liberamente, senza alcuna formalità burocratica o tassa da pagare.
LPD433 è standardizzato e fa parte della “Regione ITU 1”.
Come è stato visto in precedenza, ITU 1 è a sua volta inclusa nella “banda ISM” (industrial, scientific and medical (ISM) radio bands).
Le frequenze LPD433
Canale | Frequenza (MHz) |
Canale | Frequenza (MHz) |
Canale | Frequenza (MHz) |
---|---|---|---|---|---|
1 | 433.075 | 24 | 433.650 | 47 | 434.225 |
2 | 433.100 | 25 | 433.675 | 48 | 434.250 |
3 | 433.125 | 26 | 433.700 | 49 | 434.275 |
4 | 433.150 | 27 | 433.725 | 50 | 434.300 |
5 | 433.175 | 28 | 433.750 | 51 | 434.325 |
6 | 433.200 | 29 | 433.775 | 52 | 434.350 |
7 | 433.225 | 30 | 433.800 | 53 | 434.375 |
8 | 433.250 | 31 | 433.825 | 54 | 434.400 |
9 | 433.275 | 32 | 433.850 | 55 | 434.425 |
10 | 433.300 | 33 | 433.875 | 56 | 434.450 |
11 | 433.325 | 34 | 433.900 | 57 | 434.475 |
12 | 433.350 | 35 | 433.925 | 58 | 434.500 |
13 | 433.375 | 36 | 433.950 | 59 | 434.525 |
14 | 433.400 | 37 | 433.975 | 60 | 434.550 |
15 | 433.425 | 38 | 434.000 | 61 | 434.575 |
16 | 433.450 | 39 | 434.025 | 62 | 434.600 |
17 | 433.475 | 40 | 434.050 | 63 | 434.625 |
18 | 433.500 | 41 | 434.075 | 64 | 434.650 |
19 | 433.525 | 42 | 434.100 | 65 | 434.675 |
20 | 433.550 | 43 | 434.125 | 66 | 434.700 |
21 | 433.575 | 44 | 434.150 | 67 | 434.725 |
22 | 433.600 | 45 | 434.175 | 68 | 434.750 |
23 | 433.625 | 46 | 434.200 | 69 | 434.775 |
NJC Horizontal Photointerrupter
Dal 2012 mi diletto (sia per motivi strettamente professionali, che per interesse personale) nella costruzione di applicativi e moduli per .NET Microframework, ed in particolare per Gadgeteer. Trovo questa tecnologia molto interessante, e svilupparci sopra è semplice e molto rapido.
Uno dei frutti delle mie sperimentazioni, e il “Horizontal Photointerrupter”, un foto-interrutture basato su una forcella a led IR, posta orizzontalmente rispetto alla basetta. Il tutto è stato realizzato al fine di essere utilizzabile nelle versioni 4.1, 4.2, 4.3 del .NET Microframework, e di seguito potete trovare i sorgenti che controllano l’elettronica del modulo, consentendone l’utilizzo direttamente nel desginer di Visual Studio
Aspetto del modulo
Schema elettrico
PCB
Applicazione di test
La solution allegata contiene, oltre ai 3 progetti che declinano il modulo nelle 3 versioni del framework, anche una piccola applicazione di test.
Questa applicazione consente di accendere/spegnere un led quando la forcella IR viene chiusa/aperta.
Il codice è molto semplice, ed illustra il modo d’utilizzo di questo componente.
Schema componenti dell’applicazione di test
Codice di esempio e test
public partial class Program
{
private void ProgramStarted()
{
Debug.Print(“Program Started”);
hpi.InterrupterClosed += hpi_InterrupterClosed;
hpi.InterrupterOpened += hpi_InterrupterOpened;
}
private void hpi_InterrupterOpened(
NJC_HorizontalPhotointerrupter sender,
NJC_HorizontalPhotointerrupter.InterrupterState state)
{
btn.TurnLEDOn();
}
private void hpi_InterrupterClosed(
NJC_HorizontalPhotointerrupter sender,
NJC_HorizontalPhotointerrupter.InterrupterState state)
{
btn.TurnLEDOff();
}
}
Downloads
Sharp Trigger
Questo progetto è nato dall’embrionale idea di realizzare un sistema di raffreddamento CPU a liquido totalmente passivo, utilizzando un dissipatore originariamente concepito per il raffreddamento forzato ad aria, adattato e trasformato in un waterblock.
Da quel punto, molte altre idee si sono accodate, e dopo circa 9 mesi di lavoro (quasi un parto ) le caratteristiche e funzionalità che sono riuscito ad implementare sono piuttosto numerose.
La descrizione che segue è suddivisa in sezioni, ognuna riguardante una parte specifica od un set di funzioni comuni.
anteprima del risultato finale
A- Sistema di raffreddamento a liquido passivo con radiatore di una 127
L’intero sistema di raffreddamento è totalmente artigianale, e le caratteristiche più interessanti sono:
Waterblock Al/Cu ricavato da un dissipatore (a forma di prisma a base triangolare) originariamente concepito per raffreddamento ad aria forzata, e che ospitava 3 ventole da 60 mm. E’ stato eseguito un foro longitudinale al nucleo di rame e 7 fori trasversali (4 entrate e 3 uscite) che trapassando le nervature del prisma vanno a creare dei condotti di passaggio del liquido. Ai fori dei condotti sono poi stati applicati dei raccordi “rapidi” da 1/8″-gas (non conici), che hanno consentito il collegamento di due blocchetti di distribuzione in alluminio (detti anche “flauti”) da 3/8″ (vedi foto 10)
Water reservoir (vaschetta) in policarbonato trasparente integrata all’interno del case, e dotata di pompa ad immersione NJ1200 in sospensione attraverso un castelletto di acciaio inox ancorato al coperchio superiore (a tenuta stagna). La capienza della vaschetta è di circa 2.6lt (vedi foto 10)
Radiatore di una 127 per il raffreddamento passivo del liquido, adattato ad hoc con ricostruzione delle calotte laterali a tenuta stagna tramite lamiere in acciaio inox sagomate e saldate a TIG. le nuove calotte sono assicurate al blocco radiante tramite prigionieri a madrevite e la capienza del radiatore è di circa 1.3lt (vedi foto 7/8). Al radiatore sono state applicate 2 lamiere sagomate a formare due carter che vanno a coprire la parte superiore ed inferiore, armonizzandone l’impatto visivo
Condotto di scarico del liquido con rubinetto e raccordo portagomma posizionato lateralmente al radiatore, per meglio gestire lo svuotamento della riserva d’acqua nelle operazioni di ordinaria manutenzione (foto 8)
Condotto di rabbocco del liquido tramite raccordo portagomma esterno dotato di rubinetto (foto 7/8). Il condotto è posizionato nella parte superiore del case per facilitare lo scorrere del liquido all’interno della vaschetta.
Trascurando il volume interno dei condotti, la capacità totale del sistema è di circa 3.9lt, e la massa radiante complessiva (liquido + condotti + radiatore) riesce a dissipare i circa 70W erogati dalla CPU mantenendola alla temperatura approssimativa di 40°.
La rilevazione è stata effettuata tramite i termostati integrati (vedi sez. C1) con una Tamb di 21°, e la DeltaT è stata quindi quantificata nell’intorno dei 19°.
L’elevata inerzia termica dovuta alla consistente quantità di liquido refrigerante, abbinata all’adeguata combinazione portata/prevalenza della pompa NJ1200 garantisce al sistema un’ottima stabilià anche in caso di repentine variazioni della Tamb e del carico macchina.
B- Ricostruzione totale delle paratie
Tutte le paratie del case sono state ricostruite a mano e su misura con lamiere in acciaio da 2mm, a partire da un progetto di mia concezione.
B1- Struttura
Ognuno dei due lati del case è coperto tramite due semi-paratie (per un totale quindi di 4 lamiere), per consentire una gestione più semplice e modulare delle operazioni di manutenzione.
Le paratie superiori hanno un taglio obliquo che crea una sorta di “coda” nella parte posteriore del case, che ha lo scopo duplice di:
rendere “sfuggente” il profilo del case, alleggerendone l’impatto estetico generale
occultare i cavi che fuoriescono dall’alimentatore e dalle periferiche
Alla paratia superiore sx sono ancorati:
- – il termostato digitale di monitoraggio della temperatura del liquido refrigerante (vedi sez. C1)
– il sensore crepuscolare (vedi sez. C2)
– Il blocchetto chiave di esclusione comandi (vedi sez. C3)
Dalla paratia superiore sx fuoriescono:
- – Il già menzionato condotto di rabbocco, completo di rubinetto e raccordo portagomma
– I portagomma di andata/ritorno che collegano la pompa ed il waterblock del circuito di raffreddamento al radiatore esterno
Per consentire di apprezzare le parti interne del case e le relative illuminazioni UV, sia le paratie superiori che quelle inferiori sono state finestrate con dei pannelli di plexyglass trasparente.
In quelle superiori sono stati praticati dei fori circolari da 90mm (delle sorte di “oblò”) circolari, mentre in quelle inferiori le finestre sono di forma rettangolare con i bordi arrotondati (raggio=40mm).
B2- Verniciatura
Le paratie ed il frontale sono state verniciate con:
- – 2 mani di fondo aggrappante grigio
– 2 mani di vernicie epossidica bicomponente ruvida e micalizzata
I supporti metallici interni, ed alcuni dettagli sono stati verniciati con 3 mani di vernice al nitro, nera opaca
C- Ricostruzione frontale e pannello di controllo centralizzato
Il frontale è stato totalmente riprogettato, e dotato di un pannello estraibile di controllo centralizzato interamente custom (foto 5), che gestisce svariate automazioni tramite un circuito elettronico di mia progettazione e realizzazione.
Le funzioni del circuito si dividono principalmente in 2 categorie:
Controllo termico (vedi sez. C1)
Controllo dell’illuminazione (vedi sez. C2)
Power/Reset e blocco anti-vandalo (vedi sez. C3)
C1- Controllo termico
Il circuito di controllo centralizzato comunica con 3 termostati digitali programmabili multi-soglia, che monitorano rispettivamente:
– Termostato N°1: La temperatura della CPU, tramite un sensore inserito in un foro che ho praticato nel waterblock. Questo termostato è connesso al sistema di emergenza della centralina, che quando riceve un segnale di superamento della soglia massima impostata, esegue uno shutdown forzato del PC via ATX.
– Termostato N°2: La temperatura del liquido di raffreddamento, tramite un sensore in immersione nella water-reservoir. Anche questo termostato (posizionato sulla paratia superiore sx) come il N°1 è conneso al sistema di emergenza che in questo modo è in grado di reagire a diverse casistiche di errore (rottura pompa, eccesso di carico della macchina combinato ad una elevata Tamb, con conseguente innalzamento delle temperature della CPU, etc)
– Termostato N°3: La temperatura dell’aria interna al case. Il sensore NTC di questo termostato è posizionato nel vano interno della motherboard, e controlla tramite la centralina il sistema di ventilazione forzata, che attiva/disattiva autonomamente ed indipendentemente 3 ventole da 80mm UV reactive (2 sul frontale, 1 posteriore).
C2- Controllo dell’illuminazione
Il circuito integrato nel pannello di controllo sovrintende anche al sistema di illuminazione costituito di:
– 2 neon UV posizionati nel vano della motherboard, in prossimità della vaschetta della pompa. Tali neon fanno risaltare al buio il liquido refrigerante, addizionato con un apposito pigmento UV-reactive. (foto 10)
-2 neon UV posizionati nel vano superiore, dove risiedono l’alimentatore, il driver di potenza ed il circuito del pannello di controllo.
– 1 bubble-neon rosso posizionato sul frontale del case, in basso (foto 4, in basso)
– 1 bubble-neon posizionato dietro il radiatore, che così diffonde attraverso le lamelle una suggestiva illuminazione rossa
– Accoppiatore ottico che rileva il segnale di attività degli HD, e che pilota un el-wire avvolto attorno al cavo del sensore termico che entra nel waterblock (foto 10)
Le sorgenti di illuminazione possono funzionare in 3 modalità distinte e totalmente indipendenti (esiste infatti un commutatore per ogni sorgente):
Modalità N°1: sempre spento
Modalità N°2: sempre acceso
Modalità N°3: controllato dal sistema crepuscolare
Il cuore del menzionato sistema crepuscolare è costituito da una fotoresistenza (LR) il cui valore è letto da un circuito ospitato nel medesimo PCB.
Essendo questo circuito molto semplice, nel costruirlo ho potuto ottimizzare molto gli spazi ed ora il PCB è ospitato in una piccolissima scatola in plastica ancorata all’interno della paratia superiore di sx (come menzionato nella sezione B1, e visibile nella foto 1).
Il PCB crepuscolare comunica con il pannello principale che si occupa, in base al segnale ricevuto, di disabilitare le sezioni del sistema di illuminazione impostate in modalità N°3 nel caso in cui l’illuminazione ambientale sia troppo elevata da non giustificarne l’accensione
C3- Power/Reset, blocco anti-vandalo
Oltre alle precedenti funzioni, il pannello di controllo gestisce l’accensione, lo spegnimento ed il reset via ATX.
Tutti i comandi del pannello di controllo possono essere disabilitati tramite un singolo blocchetto-chiave (posizionato sulla paratia superiore sx, come menzionato nella sezione B e visibile nella foto 1).
Tale blocchetto, una volta commutato ed estratta la chiave, abilita un led di segnalazione ed invia un segnale alla centralina che si occupa di disabilitare qualsiasi pulsante, interruttore, o commutatore presente nel PC.
L’idea e la necessità che mi hanno spinto a realizzare questo sistema di protezione derivano dalla mia precedente esperienza al Webbit2004, in cui ho portato la versione precedente dello SharpTrigger (che a dire il vero, poco aveva in comune con l’attuale se non la struttura interna e l’HW) per partecipare al LAN-party.
La manifestazione infatti era aperta al pubblico, ed in un paio di occasioni mi sono dovuto precipitare a fermare qualche bambino intento a pigiare bottoni a caso mentre io non ero alla postazione….
D- Paratia motorizzata a scomparsa
Sul frontale è stato montato un comando a spoletta (foto 4, in basso) che controlla un motore elettrico.
Tale motore movimenta, per mezzo di un sistema carrucolare, un pannello/griglia in alluminio (foto 4, nel mezzo) che viene fatto scorrere verticalmente su 2 guide in acciaio inox, permettendo o bloccando l’accesso ai dischi estraibili ed alle unità ottiche (dettagli del meccanismo nella foto 9).
Il sistema di movimentazione è provvisto di microswitch di fine corsa tarabili a piacimento ad entrambi gli estremi (superiore ed inferiore) che stoppano il motore al raggiungimento della posizione desiderata.
In posizione completamente ribassata, il pannellino scompare completamente, mentre in posizione completamente alzata il pannello copre la totale superficie dei 4 slot hd/dvd.
Essendo il comando a spoletta a 3 posizioni (up/stop/down) è possibile posizionare il pannellino in qualsiasi posizione intermedia si desideri.
Come ogni altro comando del PC, anche la spoletta di controllo del pannellino viene disabilitata dal blocco chiave anti-vandalo (vedi sez. C3)
E- Driver di potenza alimentatore
La pompa del sistema di raffreddamento è alimentata direttamente dalla tensione di rete 220VAC, e viene messa in tensione automaticamente da un driver di potenza che ho integrato nell’alimentatore.
Quanto il PC viene acceso, il segnale +12V della PSU abilita un relé che innesca la pompa.
Un led rosso indica la presenza di tensione di rete ed un led verde indica che la pompa è attiva.
Entrambi i led sono visibili attraverso gli oblò di plexyglass presenti nelle semi-paratie superiori del case.
F- Canna da fuoco
In tema con il nome del case, ho costruito e fissato sulla parte superiore un basamento con una finta canna da fuoco in acciaio composta di un tubolare a sezione circolare tornito e diverse sezioni di tubolari a sezione quadrata tagliati obliquamente e saldati assieme per dare la forma visibile nelle foto 2/3/4/5/6.
L’intero basamento, la canna e le sezioni posteriori sono state verniciate con 2 mani di vernice al nitro nera opaca.
La canna è dotata sul fondo di una batteria di leds (visibili nella foto 6) alimentati tramite una delle porte USB posteriori (il cui cavo è visibile nella parte sx della foto 2).
I leds proiettano un fascio luminoso di colore rosso, particolarmente visibile sia in condizioni ambientali notturne che diurne.
La presenza dei leds è sia estetica che funzionale, in quanto essendo sempre accesi anche a PC spento (poiché la porta USB eroga sempre corrente), forniscono un’illuminazione minimale alla stanza anche a luci spente).
G- Hardware
La macchina è attualmente configurata come server web, server di dominio e server VSS per una rete LAN.
In precedenza è stata acquistata ed utilizzata come postazione di sviluppo/programmazione, quindi nella scelta dell’hardware sono state predilette le componenti in grado di accentuare le prestazioni CPU-centriche (single thread) e RAM-intensive.
La scheda video è stata scelta per la capacità di gestire contemporaneamente fino a 3 monitors.
CPU: Athlon XP2200+
RAM: 1GB Corsair
MOBO: Gigabyte 7VAXP (VIA KT400)
HD: 2x80GB (Maxtor)
Scheda Video: Matrox Parhelia 128
Monitors: 3 da 17″ @ 1280×1024
La motherboard supporta RAID0/1 ATA 133 tramite il chip Promise PDC20276, ma considerata la presenza di un’unità NAS RAID0 nella LAN, non ho mai considerato l’ipotesi di utilizzarlo, e quindi i due HD sono configurati come master/slave dello stesso canale IDE.
Sfruttando la capacità del sistema a liquido di mantenere la temperatura della CPU in un range adeguato anche per lunghi periodi di full-load ho eseguito un leggero overclock, che ha portato la frequenza della CPU dagli originali 1800MHz agli attuali 1950MHz.
L’incremento non è particolarmente elevato (+8.3%), ma del resto la CPU in questione applicata alla configurazione generale della macchina, non si presta molto a frequenze maggiori e tende a diventare instabile nelle operazioni floating-point se spinta oltre i 1980MHz (+10%).
H- Considerazioni generali
Essendo tutte le paratie ed il frontale in acciaio di spessore 2mm, la struttura del case risulta essere estremamente robusta e resistente.
Tutte le viterie utilizzate sono in acciaio zincato di tagli M4(A) ed M5(A)
Qualsiasi vibrazione prodotta da ventole e HD è letteralmente messa a tacere dalla massa totale, che attualmente raggiunge la bellezza di quasi 42Kg.
A causa del peso, per trasportare il case in auto al NGILAN06 ho dovuto realizzare un “case handler”, una sorta di contenitore in acciaio foderato in Polyflex (una gomma-spugna molto morbida e resistente), e dotato di cinghie con ganci “a crick”
I- Silenziosità
L’avere applicato un sistema di raffreddamento a liquido passivo per la sola CPU ha migliorato molto la silenziosità, soprattutto visto che il dissipatore originale (cioè l’attuale waterblock) montava la bellezza di 3 ventole da 60mm.
Esiste chiaramente un margine di miglioramento su questo fronte, visto che restano ancora ad aria sia il chipset che la scheda video, ma vista la tipologia strettamente sperimentale del progetto, ed essendo lo stesso prevalentemente mirato al lato CPU, credo che non apporterò modifiche all’impianto.
J- Sviluppi futuri
Quello su cui mi sto fortemente concentrando al momento è un insieme di tools e piccole automazioni meccaniche/robotiche di vario genere.
Al momento preferisco non sbilanciarmi nel rivelare troppi dettagli, perché c’e’ ancora molto da fare e svariate decisioni progettuali da prendere.
Nel prossimo futuro, non appena ci saranno dei significativi progressi nella costruzione, posterò le novità in merito