Oscilloscopio Digitale Fai da te Open Source

Cos’è e a cosa serve un Oscilloscopio ?

Quando il tester non basta più, si passa ad utilizzare l’oscilloscopio. L’oscilloscopio visualizza su uno schermo/display il valore di una tensione con il passare del tempo. Crea un grafico 2D dove sull’asse Y è riportata il valore di tensione, e sull’asse X il valore tempo. Può anche creare delle misure avanzate, come l’analisi di correlazione tra due segnali elettrici che variano nel tempo e tanto altro.

Oscilloscopio Digitale fisico vs Software: quali differenze ?

Un Oscilloscopio fisico è composto dal sistema di acquisizione dei dati analogici e del display su cui visualizzarli. E’ mediamente più ingombrante e pesante, ma non necessita di un computer o smartphone per essere utilizzato. Per chi scrive firmware, per chi utilizza il computer per creare il software, è comodo avere un oscilloscopio “stand alone” indipendente con cui testare i segnali della scheda elettronica in sviluppo. E’ adatto a chi sposta il suo laboratorio con frequenza. Personalmente preferisco un oscilloscopio standalone, anche se ha il limite di avere un display piccolo, rispetto a quello di un computer.

Oscilloscopio Digitale stand alone

L’oscilloscopio software è formato da una scheda elettronica collegata ad un computer via USB/Seriale. Necessita di un computer con installato il software dedicato all’oscilloscopio. Non sempre è comodo e funzionale, ma ha il pregio, di costare mediamente meno di un oscilloscopio “stand alone” indipendente (a parità di prestazioni tecniche). Il risparmio di chi lo produce viene ottenuto non dovendo fornire un contenitore completo di alimentatore e display. Nel caso propendi per l’acquisto di un oscilloscopio “software” pensa di organizzarti con un doppio display, dove “far girare” il software dell’oscilloscopio nel primo video, e i programmi di sviluppo del firmware nel secondo video. L’ideale è avere 3 video e nel terzo poter visualizzare mail, datasheet e schemi elettrici.

Oscilloscopio Digitale Software

Oscilloscopio con scheda audio

Ci sono Oscilloscopi Software che utilizzano la scheda audio del computer. Possono essere utili nel caso devi controllare dei circuiti audio con frequenze fino a 20 kHz. Hanno almeno due grossi limiti: la tensione di ingresso può essere di pochi Volt. La tensione misurata, in molte schede audio, può essere solo alternata. Non puoi misurare tensioni di batterie e alimentatori. Se per il limitato campo della tensione di ingresso puoi risolvere utilizzando un partitore di tensione esterno alla scheda audio, per la misura di tensioni continue non c’è rimedio.

I blocchi principali di un Oscilloscopio ?

L’ingresso analogico o Front End

E’ un sistema di partitori di tensione e amplificatore analogico OPAMP che “addomestica” il segnale elettrico in ingresso al canale dell’oscilloscopio e lo rende compatibile con l’ingresso del Convertitore Analogico Digitale (A to D Converter).

E’ importante verificare la massima tensione di ingresso misurabile rispetto ai segnali elettrici che di solito incontriamo nei circuiti elettronici. Se vuoi verificare il funzionamento di una scheda Arduino i segnali elettrici raggiungono massimo 5 Volt. Se devi verificare il funzionamento di un inverter le tensioni in gioco arrivano almeno a 400 Volt continui. Anche utilizzando una sonda di oscilloscopio con fattore di attenuazione 10, la tensione di ingresso sarà di 40 Volt continui. Alcuni Oscilloscopi a basso costo possono misurare tensioni inferiori a questo valore.

Il dato da verificare è: Input Voltage Range

Il Trigger di attivazione del campionamento

E’ un componente fondamentale in un buon oscilloscopio. Il sistema di trigger, che in tempi passati era totalmente analogico mentre ultimamente è totalmente digitale, serve ad “attivare la memorizzazione” dei dati forniti dal Convertitore Analogico Digitale. Lavora sulla tensione del segnale di ingresso, o anche su una sequenza di dati.

Il trigger più semplice è basato sul concetto di soglia di tensione (threshold). Quando la tensione del segnale di ingresso supera un certo valore, impostato a piacere, viene attivata la visualizzazione dell’andamento della tensione in ingresso. Ci sono anche trigger basati sul riconoscimento di un dato digitale, per esempio uno specifico carattere ascii che transita su una comunicazione Seriale.

Un fattore caratterizzante la “bontà” di un trigger è la velocità con cui riconosce la soglia di tensione. Un altro fattore è la quantità di possibilità di trigger disponibili nell’oscilloscopio.

Il dato da verificare è: Trigger Mode

La sezione di Conversione Analogico Digitale

Il Convertitore Analogico Digitale (ADC) “trasforma” una tensione in un numero. I bit di un ADC definiscono la risoluzione, o tensione minima, misurabile. Un ADC di 8 bit riesce a “risolvere” 1 / (256-1) della massima tensione misurabile. Se la tensione di ingresso massima misurabile (Fondo Scala dell’Ingresso) è di 5 Volt, la minima tensione misurabile è 5 / 255 = 0,0196 Volt. Un ADC con capacità di 12 bit di risoluzione potrà “veder” una tensione minima di 5 / 4095 = 0,0001 Volt. Per cui più bit ha l’oscilloscopio meglio è.

Il dato da verificare è: bit Resolution

Larghezza di banda

La larghezza di banda di un oscilloscopio definisce la capacità di misurare segnali elettrici con frequenze di oscillazione superiori a zero, cioè segnali elettrici non continui. Più è alta e meglio è. Se per esempio voglio misurare le prestazioni di un circuito audio, dove i segnali elettrici hanno frequenze di massimo 20 kHz, la minima larghezza di banda che mi serve è almeno 2 volte 20 kHz (teorema del campionamento di Nyquist-Shannon).

La larghezza di banda dipende da almeno 2 fattori: la “bontà” dei circuiti di amplificazione della sezione di front-end. La velocità di acquisizione del ADC, cioè la velocità con cui viene “tradotto” un valore di tensione in numero digitale.

La velocità con cui viene convertito il segnale da misurare è definito come “Sample per Second”, o conversioni al secondo. Vengono normalmente indicati con MSps, che significa milioni di conversioni al secondo. Per avere una larghezza di banda di 1 MHz l’oscilloscopio deve avere una velocità di conversione di almeno 2 MSps. Più MSps ha un oscilloscopio digitale e meglio è.

Il dato da verificare è: Analog Bandwidth @ -3dB

La profondità memoria

Hai capito che più veloce è l’oscilloscopio nel convertire il segnale in numero digitale e meglio è. Questo numero forma 1 campionamento. Per riprodurre la forma d’onda del segnale elettrico che stai misurando ci vogliono almeno 2,5 campionamenti se il segnale è sinusoidale e ripetitivo. Altrimenti servono almeno 10 campionamenti. Più campionamenti ha l’oscilloscopio e meglio è. Ma più campionamenti significano più memoria per ricordarli. Questo ci dice che maggiore è la profondità di memoria dell’oscilloscopio e meglio è.

Il dato da verificare è: Max Memory Buffer Size

Il display

Il display serve a visualizzare il segnale elettrico. E’ facile intuire che più è grande il display e meglio è.

La dimensione del display è espressa in pollici. Ma i pollici di un display definiscono la misura della diagonale del video.

Elaboratore dei dati acquisiti

La possibilità di elaborare i dati acquisiti è un opzione interessante in un oscilloscopio. Puoi fare operazioni matematiche di 2 segnali elettrici. Puoi fare misurazioni con cursori direttamente sul display. Puoi “ricostruire” un protocollo di comunicazione di dati seriali. Puoi salvare la forma d’onda acquisita e inserirla nella tua relazione o tesina.

La porta Dati

La porta dati serve a rendere disponibili, in “tempo reale”, i dati acquisiti dall’oscilloscopio, sia la forma d’onda del segnale che altre informazioni. L’oscilloscopio può essere dotato di porta USB, Seriale, Ethernet, Bluetooth, WiFi o altro. Di solito gli oscilloscopi digitali a basso costo ne sono dotati in modo limitato.

Quali Oscilloscopi sono open source ?

L’open Source è il modo per dire che le informazioni per riprodurre l’oscilloscopio, con il fai da te, vengono rese disponibili dal progettista dello stesso in modo gratuito, ma con alcune limitazioni. Spesso l’unica limitazione è dover citare l’autore del progetto.

Oscilloscopi Digitali Fai da te Open Source

Indico una lista di Oscilloscopi Digitali fai da te Open Source, adatti per lo studente, il maker fino al professionista.

ArdOsc – open source fai da te Arduino

Un progetto completo che utilizza un Arduino Nano e un OLED sono gli ingredienti per un piccolo oscilloscopio digitale. E’ Peter Balch che ci rivela una soluzione low cost in un articolo apparso su Instructables. Le sue specifiche parlano di 1 MSps, ma nella pratica (come specificato nel datasheet del microcontrollore ATmega328P), il convertitore AD può arrivare alla velocità massima di conversione di 500 kSps.

Il progetto è molto interessante dal punto di vista didattico perché l’analisi del firmware rivela tutti i trucchi per “far andar più veloce” la scheda Arduino Nano.

Oscilloscopio fai da te con Arduino

DSO150 Jyetech – Hardware Open Firmware Open

E’ un oscilloscopio che si basa su un singolo Microcontrollore che utilizza il suo ADC interno e visualizza il segnale digitalizzato su un display a colori ed ha 1 canale analogico. La banda passante è modesta ed è utilizzabile per scopi didattici. E’ un kit da assemblare, per cui dovrete cavarvela con la saldatura a stagno. Il costo è molto contenuto. Qualche anno fa avevo acquistato un DSO062 dello stesso produttore Cinese. Le prestazioni erano quelle che ci si aspetta da uno strumento di quel prezzo, per me poco soddisfacenti. Ho acquistato recentemente questa versione aggiornata e magari ti saprò dire qualcosa dopo averlo assemblato e utilizzato. Ho allegato lo schema elettrico di questo Oscilloscopio open source in fondo a questo articolo.

Oscilloscopio Fai da te in Kit di montaggio
Caratteristiche tecniche Oscilloscopio fai da te in kit di montaggio

Stock Firmware up-grade DLO-138 by dpavlin

TomekoNet miniscope software for DLO-138 serial data stream

OpenScope – Open Source Hardware Software

OpenScope MZ – Oscilloscopio Digitale Open Source

La Digilent ha sviluppato e commercializza un oscilloscopio digitale software, ma ha reso disponibile lo schema elettrico ed il firmware, insieme al software di gestione dell’oscilloscopio. Non mi risulta che sia disponibile il file del circuito stampato, per cui non è adatto per il fai da te. La scheda hardware di questo oscilloscopio ha anche un generatore di forme d’onda (AWG), un analizzatore logico a 10 canali, un doppio alimentatore adatto a piccoli circuiti analogici fino a +/- 4 Volt. Molto interessante la funzione di trasmissione dati WiFi/Bluetooth. Ha a disposizione alcuni pin del microprocessore che possono essere utilizzati a piacere. Il costo si aggira sui 150€.

Questo oscilloscopio si basa su un microcontrollore PIC32 Microchip, ed utilizza i convertitori AD presenti al suo interno per acquisire i segnali analogici. Si può utilizzare con Arduino.

OpenScope MZ – Caratteristiche e prestazioni

ScopeFun – Open Source

E’ sicuramente un progetto open source, ma lo definirei a fatica fai da te, data la complessità del circuito stampato. Date le caratteristiche tecniche è facilmente comparabile con un oscilloscopio professionale. E’ un tipico oscilloscopio software. Uno sguardo allo schema elettrico conferma la sua vocazione professionale. Il primo amplificatore che si incontra nel front end è un ADA4817 in configurazione a guadagno 1. Questo singolo amplificatore costa 8€, ha una banda passante di 1 GHz, uno slew rate di 870 V/us e un settling time di 9 ns. Ha un trigger analogico basato sul comparatore LTC6754 dal costo di 4€, con toggle rate di 280 MHz, rise time di 1,2 ns e propagation delay di 2,9 ns. Il convertitore AD è basato sul chip KAD5510P-25 della Renesas con sample rate massimo di 250 MSps e 10 bit di risoluzione. E’ dotata di 2 uscite AWG con frequenza massima, della forma d’onda generata, di 200 MHz e risoluzione di 12 bit. La scheda comunica i dati con una porta USB 3.0, il che significa che non è compatibile con tutti i computer.

E’ stato sviluppato grazie a CrowdSupply e il costo della versione chiusa con case di alluminio e funzionante è stato di 750€ per i 64 finanziatori che lo riceveranno già montato e collaudato.

ScopeFun – Oscilloscopio Digitale Open Source professionale
ScopeFun – prestazioni di un Oscilloscopio Open Source Professionale
ScopeFun – screenshot del software di utilizzo di questo oscilloscopio digitale

Oscilloscope Watch – open hardware

Un simpatico orologio che ha anche la funzione di oscilloscopio, generatore di forme d’onda e analizzatore di stati logici. Funziona a batteria o con la porta USB. E’ dotato di un display a memoria da 128 x 128 pixels (Sharp Memory LCD). E’ stato proposto su Kickstarter nel 2013, ma credo non sia mai stato consegnato ai sostenitori del progetto (Backers). Nel sito dell’ideatore sembra disponibile come Oscilloscopio fai da te in Kit di montaggio.

Oscilloscopio Orologio

BitScope Micro – Hardware a pagamento Software Gratuito

E’ un tipico Oscilloscopio Digitale Software. Le caratteristiche tecniche sono limitate, insieme alla banda passante. Ma è interessante il sistema di decifrazione dei protocolli di comunicazione più comuni. E’ dotata di un generatore di forme d’onda (AWG) e di 2 canali di misura analogica, e 6 di segnali digitali. Può mostrare in contemporanea segnali analogici e digitali (Mixed Mode). Ne posseggo uno e l’ho utilizzato qualche volta per valutarne le possibilità. Torna utile avere un generatore AWG insieme ad oscilloscopio Mixed Mode, con un costo contenuto. Il software è ben fatto e multi OS, ma a mio parere è migliorabile in alcune funzionalità.

BitScope Micro – completo di cavetti per i segnali elettrici e USB per comunicare i dati acquisiti
BitScope Micro – com’è fatta la scheda Hardware
BitScope Micro – Caratteristiche tecniche

Oscilloscopio Digitale per Studenti

Analogic Devices e Digilent (National Instruments Company) hanno sviluppato un Oscilloscopio multifunzione, un piccolo laboratorio che sta in tasca. Le caratteristiche sono di tutto rispetto, paragonabili a quelle di un oscilloscopio professionale. Questo Oscilloscopio è formato da una scheda hardware alimentata con il cavo USB. Questo strumento rientra nella categoria degli Oscilloscopi Software (USB Digital Oscilloscope). Analog Devices lo vende con il nome di Adalm2000 (Il costo sul sito ufficiale è 249$.), mentre Digilent lo vende con il nome di Analog Discovery 2 (Il costo sul sito ufficiale è 279$).

La caratteristica più notevole, che sorpassa molti oscilloscopi professionali, è la risoluzione del convertitore AD che è di 14 bit per una velocità di conversione di 100 MSps (nella versione Analog Discovery 2) e di 12 bit nella versione Adalm2000.

Adalm2000 Usb Digital Oscilloscope per studenti
Oscilloscopio USB per studenti – Analog Discovery 2
Caratteristiche tecniche dell’Oscilloscopio USB Analog Discovery 2

Espotek Labrator

Espotek Labrador

Oscilloscopio Android Bluetooth

Oscilloscopio Android Bluetooth – schema elettrico

Oscilloscopio Low Cost DPScope

Questo che riporto è un progetto del 2010, ma ha delle soluzioni circuitali ancora oggi interessanti, tra cui l’utilizzo di un Amplificatore MCP6s22 (Single-Ended, Rail-to-Rail I/O, Low Gain PGA) con ampiezza di banda da 2 a 12 MHz. Ha 2 canali analogici e un sample rate di 1 MSps. Il software di utilizzo è gratuito. Il circuito elettrico lo trovi nei Credits. E’ stato in vendita in kit fino al 2015.

DPScope Oscilloscopio Low Cost fai da te
Software DPScope – Oscilloscopio Low Cost
DPScope caratteristiche tecniche

Wireless Arduino Oscilloscope

Arduino + Bluetooth + Smartphone APP con OS Windows

Oscilloscopio con App per Smartphone

Alcune App per smartphone trasformano un telefonino in un oscilloscopio software. La maggior parte o utilizzano l’ingresso audio, o una scheda elettronica proprietaria a pagamento che si interfaccia con la App installata sul telefonino. Quasi sempre utilizzano la porta USB OTG del telefonino per trasferire i dati ad alta velocità. Quelle più interessanti utilizzano o Bluetooth o Wifi per trasmettere i dati, ma leggendo i commenti sembra che abbiano problemi a rimanere connesse alla scheda oscilloscopio.

remotexy app semplice app e editor grafico online per comunicare con schede Arduino.

Hscope App funziona con molti Oscilloscopi commerciali (Git)

HS101 Oscilloscopio Fai da Te Low Cost
HS101 App Software

BenchVue Software Oscilloscope KeySight

POCKET-CASSY 2 BLUETOOTH ld-didactic.de

ar-oscilloscope App

Oscilloscope PRO

DSO wireless Bluetooth

Un Oscilloscopio alimentato a batteria è sicuramente comodo. Se poi i dati di acquisizione vengono visualizzati con una App o Software su Smartphone o PC attraverso un sistema di comunicazione wireless, ancora meglio.

Auxiscope Oscilloscopio DSO Bluetooth alimentato a batteria

Lista di Oscilloscopi a pagamento

Per completezza riporto anche oscilloscopi a pagamento e non open source.

IkaScope WS200 ultra-portable oscilloscope

Sicuramente comodo avere un oscilloscopio a forma di pennarello e isolato con alimentazione a batteria, che comunica i dati con il WiFi, senza l’impiccio di scomodi cavi della sonda dell’oscilloscopio.

Oscilloscopio Ultra portatile con batteria e comunicazione WiFi – prezzo di listino 249€
Lab-Nation.com costo base 226€
OsciPrime.com Android OS Open Source Oscilloscope
ArmFly AX-PRO Oscilloscopio USB – sigrok.org

Oscium Oscilloscope costo 400$ – 2 canali analogici 4 digitali

Quanto tempo mi è servito per scrivere questo post ?

Dal 12 al 18 Giugno 2020 sono passati 6 giorni. Ho salvato 226 revisioni.

Links & Credits

BitScope Programming Manual

Sigrok Supported Hardware

ScopeFun – Open Source Instrumentation

Serial USB-Bluetooth-WiFi App

Adalm2000 Student Zone

Real Analog Course by Digilent

Analog Discovery 2 Reference Manual

Oscilloscopio Digitale Software Digilent OpenScope

OpenScope Reference Manual

ArdOsc Peter Balch Instructables

Digital Storage Oscilloscope DSO 100Msps

Lista Oscilloscopi Gabotronics

Oscilloscopio Digitale DS211 MiniWare

Oscilloscopio Software BitScope DSO

Nano V3 Portable Digital Oscilloscope

Manuale di utilizzo Nano V3

DSO150 Source Code (parzialmente Open Source)

Two-Channel PC Based Oscilloscope USB

Bluetooth Oscilloscope

Autore dell'articolo: Lucio Sciamanna