Flea-Scope: un oscilloscopio open source da 13 dollari

oscilloscopio

Flea-Scope è un dispositivo di test in miniatura in grado di fungere da oscilloscopio, analizzatore logico e generatore di forme d'onda, il tutto ad un costo che non supera i 13 dollari. L'idea nasce dal signor Richard Testardi che ha condiviso sul sito Hackday tutta la documentazione necessaria per chiunque volesse realizzare l'hardware open source, così come lo script per programmare il microcontrollore presente sulla scheda. In questo articolo, andremo a descrivere le caratteristiche della scheda, il modo per costruirla ed utilizzarla.

Introduzione

Flea-Scope riesce a combinare, su una piccola scheda, un oscilloscopio, un analizzatore logico ed un generatore di forme d'onda con una spesa di soli 13 dollari. Flea-Scope è in grado di acquisire 18 milioni di campioni al secondo (Msps), ma la cosa forse più interessante è che funziona tramite qualsiasi browser web basato su Chromium in esecuzione su un computer, tablet o telefono, senza installazione di software aggiuntivo. Flea-Scope è basato sul microcontrollore PIC32MK e i file PCB, la distinta base e le istruzioni di costruzione, possono essere trovati sulla pagina Hackaday del progetto. Vengono utilizzati principalmente componenti a montaggio superficiale, e il dispositivo è programmato tramite l'header ICSP a sei pin della scheda. Una volta programmato, è possibile collegarlo tramite USB ad un host e aprire un browser per accedere alla sua GUI. Anche se Flea-Scope potrebbe non sostituire una serie di costose apparecchiature di test, in termini di estrema portabilità e di basso prezzo, sembrerebbe impossibile da battere.

Flea-Scope

Flea-Scope è un oscilloscopio USB da 18 milioni di campioni al secondo (Msps) a basso costo (13 dollari in totale) e allo stesso tempo un analizzatore logico a segnali misti con un generatore di forme d'onda integrato, e molto altro ancora. Basato sul MCU PIC32MK, Flea-Scope può essere controllato da qualsiasi browser web basato su Chromium che supporti l'API WebUSB o l'API Web Serial in esecuzione su un computer, tablet o telefono, senza la necessità di ulteriore installazione di software: basta collegarlo e aprire una pagina web e diventa subito operativo.

Caratteristiche tecniche di Flea-Scope:

  • 1 ingresso analogico campionato fino a 18 milioni di campioni al secondo (18 Msps) utilizzando un ADC a 10 bit
    • 1 connettore BNC full-size con impedenza di ingresso da 1 MΩ/12 pF
    • Dinamica di ingresso da -6 V a +6 V (o da -60 V a +60 V se utilizzata con la sonda dell'oscilloscopio x10)
    • Compatibile con la maggior parte delle sonde per oscilloscopi x1 e x10 con connettore BNC full-size
    • Modalità di trigger analogico automatico, livello, salita e discesa
    • Capacità di trigger/acquisizione ritardata
    • Accoppiamento CC
  • 9 ingressi digitali dell'analizzatore logico co-campionati insieme all'ingresso analogico
      • Compatibile con livelli logici da 3,3 V o 5 V
      • Modalità di trigger digitale automatica, livello, salita e discesa
  • Obiettivo di precisione del 2% per tensioni e tempi
  • Il pin "trigger out" consente a più Flea-Scope di funzionare insieme contemporaneamente, come un oscilloscopio multicanale o un analizzatore logico ancora più ampio
  • 1 uscita della forma d'onda di prova generata
    • fino a 40 kHz per forme d'onda arbitrarie basate su DAC
    • fino a 4 MHz per onde quadre
  • 1 connettore micro-USB; compatibile con isolatore
  • Semplice interfaccia utente della pagina Web

Se utilizzato in "modalità di immersione profonda interattiva", Flea-Scope dispone anche di:

  • StickOS® BASIC, un ambiente di programmazione interattivo interamente residente nel MCU, con integrato:
    • editor del programma
    • compilatore riga per riga
    • debugger interattivo, incluso modifica e continua
    • profilatore delle prestazioni
    • flash file system
  • 18 Pin I/O multifunzione completamente programmabili e interattivi, configurabili autonomamente:
    • ingresso digitale/uscita digitale
    • ingresso analogico/uscita analogica (PWM)
    • uscita in frequenza
    • uscita servo (PWM)
    • modalità master I2C
    • modalità principale SPI
    • ingresso/uscita UART
  • 2 LED controllati dall'utente e 1 interruttore a pulsante
  • Compatibile con breadboard senza saldatura
  • Semplice interfaccia utente della pagina Web
  • Impostazione personalizzata del nome host (per distinguere più Flea-Scope su USB e tramite l'interfaccia utente)
  • Supporto per l'aggiornamento del firmware

Come è fatto Flea-Scope

In Figura 1 viene riportata la scheda Flea-Scope ed una rappresentazione a blocchi delle connessioni tra i vari componenti.

Componenti della scheda Flea-Scope

Figura 1: Componenti della scheda Flea-Scope

Andiamo a descrivere gli elementi presenti.

  1. Connettore USB: fornisce alimentazione a 5 V e connettività dati USB alla scheda Flea-Scope.
  2. Regolatore da 3,3 V: regola da 5 V a 3,3 V per l'utilizzo con MCU e altri componenti.
  3. Convertitore CC-CC: converte 5 V in -5 V per l'utilizzo con un amplificatore operazionale a doppia alimentazione.
  4. Connettore BNC: l'ingresso ad alta impedenza accetta -6,6 V/+6,6 V a 1 MΩ/12 pF.
  5. Circuito di ingresso passivo: divide l'ingresso BNC tra -6,6 V/+6,6 V per l'ingresso dell'amplificatore operazionale tra -3,3 V/+3,3 V
  6. Amplificatore operazionale a doppia alimentazione: amplificatore operazionale a guadagno unitario per pilotare l'amplificatore operazionale MCU dall'ingresso BNC ad alta impedenza.
  7. Circuito di pull-up passivo: divide l'uscita dell'amplificatore operazionale bipolare da -3,3 V/+3,3 V all'ingresso dell'amplificatore operazionale MCU unipolare da 0 V/+3,3 V.
  8. MCU: gestisce l'interfaccia USB ed i timer MCU, l'amplificatore operazionale, gli ADC, i comparatori, i DAC, ecc., oltre a StickOS BASIC.
  9. Cristallo: fornisce una temporizzazione a 12 MHz per il MCU.
  10. Circuito di ripristino passivo: ripristina l'MCU all'accensione o alla pressione di un pulsante.
  11. Connettore ICSP: programma MCU al momento della realizzazione della scheda.

MCU PIC32MK

Flea-Scope, per raggiungere il suo scopo, utilizza un'enorme quantità di hardware automatizzato nel microcontrollore (MCU) PIC32 MK-GPK. I singoli convertitori analogico-digitali (ADC) nel MCU eseguono solo fino a 3,75 milioni di campioni al secondo (Msps), quindi Flea-Scope ne utilizza 5 interlacciati insieme per misurare il segnale di ingresso in modo sincronizzato nel tempo, ottenendo così 18 Msps.

Il notevole hardware presente in un MCU PIC32 include:

  • un amplificatore operazionale a guadagno unitario per pilotare il segnale di ingresso analogico su un ingresso del comparatore analogico oltre ai cinque ingressi dei cinque convertitori analogico-digitali interlacciati (ciascuno dei quali ha un valore di carico resistivo e capacitivo significativo);
  • un convertitore digitale-analogico di controllo (CDAC) per generare il livello di tensione di trigger analogico richiesto per l'azionamento dell'altro ingresso del comparatore analogico;
  • un comparatore analogico (CM) utilizzato per rilevare quando il segnale di ingresso analogico è al di sopra o passa al di sopra o al di sotto del livello di tensione di trigger analogico;
  • un filtro digitale sull'uscita del comparatore analogico utilizzato per prevenire falsi segnali di trigger da parte del rumore spurio in ingresso;
  • un modulo master contatore/timer (TMR) che funziona a 1/5x della frequenza di campionamento analogica e digitale desiderata, una volta deciso di catturare una traccia;
  • quattro moduli di confronto timer (OCx) per rilevare quando il contatore/timer principale raggiunge il 20%, 40%, 60% e 80% del suo valore massimo;
  • cinque convertitori analogico-digitali interlacciati (ADCx) in modalità 10 bit, i cui campioni di misurazione vengono attivati (cioè avviati) al 20%, 40%, 60%, 80% e 100% del valore del contatore/timer;
  • cinque canali ADC (ADCDx) DMA (accesso diretto alla memoria) dedicati per trasferire i risultati, dei convertitori analogico-digitale, in buffer ping-pong nella RAM una volta completati;
  • un ADC DMA ISR (interrupt service routine) per riassemblare i risultati del convertitore analogico-digitale interlacciato presenti nel buffer ping-pong in risultati sequenziali nel tempo;
  • cinque (più) canali DMA generici (DCHx) per acquisire i risultati della porta digitale contemporaneamente ai risultati del convertitore  analogico-digitale, sempre al 20%, 40%, 60%, 80% e 100% del valore del contatore/timer principale.

La CPU MIPS del microcontrollore operante a 120 MHz viene utilizzata prima di decidere di acquisire una traccia semplicemente per attendere che l'evento di trigger si verifichi, o attraverso l'interrogazione del comparatore analogico per un trigger analogico, o esaminando i valori della porta digitale per un trigger digitale. Una volta che si verifica l'evento di trigger, la CPU semplicemente abilita il contatore/timer principale, e l'hardware si prende cura dell'acquisizione della traccia. La CPU attende quindi che DMA catturi il numero desiderato di campioni, semplicemente fornendo assistenza agli ISR ​​DMA secondo necessità. Una volta acquisita la traccia completa, la CPU carica la traccia su USB affinché venga visualizzata dall'interfaccia utente della pagina web.

La generazione della forma d'onda avviene in concomitanza con tutto quanto sopra utilizzando più hardware, tra cui:

  • uno (più) modulo contatore/timer (TMR) per generare la frequenza della forma d'onda desiderata per la generazione dell'onda quadra o 100 volte la frequenza della forma d'onda desiderata per la generazione di forme d'onda arbitrarie;
  • per la generazione di forme d'onda arbitrarie, un (più) canale DMA generico (DCHx) per alimentare un (più) convertitore digitale-analogico (CDAC) di controllo da una tabella di forme d'onda a 100 punti per l'uscita della forma d'onda.

Come costruire Flea-Scope

Per costruire Flea-Scope il primo passo da fare è scaricare il "scope.gerber.27.zip" dalla pagina Hackday del progetto. All'interno del file compresso, in allegato, è presente la distinta base; in alternativa, è possibile ottenere la distinta base direttamente da mouser.com utilizzando il seguente collegamento:

https://www.mouser.com/ProjectManager/ProjectDetail.aspx?AccessID=dad3ac0035

Il file "scope.gerber.27.zip" contiene tutti i file necessari per costruire il circuito stampato (PCB) di Flea-Scope. Si può semplicemente caricare questo file zip su siti come pcbway.com e far loro fabbricare PCB vuoti in circa una settimana.

Una volta in possesso di componenti e PCB, è possibile passare ad assemblare la scheda. All'interno del file zip c'è anche un disegno che mostra la posizione di ogni componente; la serigrafia del PCB individua inoltre il valore di ciascun componente per un facile assemblaggio manuale (i condensatori senza etichetta sono condensatori di bypass da 0,1 uF). Il MCU PIC32MK nel suo pacchetto QFN predefinito dovrebbe essere più facile da usare rispetto al QFP, ma la scheda può anche essere modificata in pochi minuti per utilizzare un QFP invece di un QFN: tutte le tracce sono già predisposte per la maggior parte.

L'ultima fase di assemblaggio, se lo si desidera, è saldare manualmente il connettore BNC sulla scheda: ciò risulta più semplice con un saldatore ad alta potenza.

Sulla pagina Hackday del progetto è presente un altro file da scaricare: "pic32.X.27.production.hex". Rappresenta il firmware per programmare il MCU Flea-Scope PIC32MK. La programmazione può essere fatta grazie ad un Microchip PicKit e utilizzando l'header ICSP a 6 pin sulla scheda di Flea-Scope.

Una volta terminati i preparativi, basterà connettere la scheda alla USB di un computer, di un tablet o di uno smartphone e aprire la GUI di Flea-Scope in Chrome o Edge, quindi fare clic su "Connect". L'indirizzo della GUI è il seguente:

https://rtestardi.github.io/usbte/flea-scope.html

Come utilizzare Flea-Scope

Nella Figura 2 vengono evidenziati i controlli, gli indicatori luminosi e gli ingressi/uscite della scheda Flea-Scope.

[...]

ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 2072 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici che potrai leggere in formato PDF per un anno. ABBONATI ORA, è semplice e sicuro.

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend