È possibile un folle oscilloscopio da 500 MHz 1 Gs / s?


14

Stavo leggendo la sonda USB scope - richiesta di commenti e idee , e mi ha fatto pensare. Quello che mi piacerebbe davvero è un oscilloscopio ad altissime prestazioni, che costerebbe circa $ 10000. Sicuramente anche molte altre persone ne vorrebbero uno. E sicuramente, con l'esperienza disponibile su questo sito, dovrebbe essere possibile progettarne uno open source.

Ecco la mia idea:

  • Sarebbe una sonda oscilloscopica manuale con un cavo USB in uscita.
  • Funzionamento a batteria per isolarlo dall'alimentazione USB.
  • Lo stadio di ingresso è un amplificatore operazionale ad alta velocità, come THS3201DBVT ?
  • ADC è qualcosa come ASD5010 , che è 1 Gs / se larghezza di banda di ingresso 650 MHz.
  • FPGA per gestire i dati a 32 bit in uscita, eseguire il trigger e impacchettarli in USB.
  • Software open source da eseguire sul PC.

È una commissione da pazzi? Cosa mi sto perdendo?

Aggiunti ulteriori dettagli in risposta alle risposte:

  • Questo 'ambito non sarebbe in grado di competere con gli ambiti costosi e fantasiosi là fuori. L'obiettivo principale è quello di avere qualcosa che consenta di esaminare i segnali ad alta velocità, costando meno di $ 200 per qualcuno da farsi.
  • Larghezza di banda USB: questo non è un ambito analogico, né un LeCroy elegante . Tuttavia, l'USB è in grado di trasferire campioni 2k a 60 Hz. Ciò lo rende ancora estremamente utile, anche se potrebbe non essere in grado di catturare eventi transitori tra quei frame.
  • Un chiaro display reattivo. Bene, il monitor di un PC è sicuramente chiaro. Meglio di quasi tutti gli ambiti sul mercato. Quindi chiarezza e dimensioni non sono un problema. Responsive? Finché lo schermo può essere aggiornato a 60 Hz, penso che sia abbastanza reattivo.
  • Triggering: immaginavo che si stesse verificando un trigger di livello semplice sul dispositivo. Ancora una volta, non sarebbe in grado di competere con ambiti fantasiosi, ma ricorda: questo dovrebbe essere un dispositivo da $ 200.
  • Non dovrebbe avere una larghezza di banda di 1 GHz. Dove l'ho detto? Ma sicuramente potrebbe avere una larghezza di banda superiore a 100 MHz?

Porta a casa punti:

  • È un dispositivo da $ 200.
  • L'obiettivo principale del dispositivo è rendere possibile la visualizzazione di segnali ad alta velocità senza spendere $ 10000.
  • Ci sarebbero molte cose che non sarebbe in grado di fare.
  • Sicuramente qualcosa del genere sarebbe abbastanza utile per le persone qui.
  • Sicuramente, con l'esperienza disponibile su questo sito, potremmo realizzarlo?

1
* Un display chiaro e reattivo * Un circuito di trigger capace di tutte le fantasiose modalità di trigger disponibili nei nuovi 'ambiti' Memoria
The Photon

4
Il problema è che con uno strumento devi AFFIDARTI il più possibile ciò che leggi sullo schermo; in caso contrario, genera solo confusione
clabacchio

3
Sono d'accordo con clabacchio, ambito analogico My Conar modello 255 (stato solido), non mi fido delle letture per voltaggio o tempo / cm, e ha solo portato a maggiore confusione e debugging percussivo con un oggetto pesante di grandi dimensioni. Ma mi piace l'idea di costruirne una tua.
jsolarski,

http://www.osciprime.com/ Ehh 8 Mhz teoricamente? Il divertimento è stato avuto da qualcun altro. Adoro leggere il "pensiero", in particolare di AngryEE. Sebbene osciprime abbia delle buone idee, principalmente la fase beta di rete del suo / i suoi "dati di rete", potrei farne uno per divertimento. Grazie, -Danny K

1
È facile dire che non funzionerà ed è facile trovare 100 modi in cui non funzionerà. La cosa difficile è trovare un modo in cui funzionerà, anche se ciò significa cambiare l'ambito (del proj, nessun gioco di parole previsto) e / o caratteristiche, ma vedo a cosa sta arrivando Rocketmagnet. per quanto riguarda l'USB, AngryEE (il cui nome si adatta a proposito) ha un punto. Tuttavia, eSATA offre 6 GBps teorici e USB 3.0 è 5.0 Gbps teorici. Questo è il migliore che abbiamo in questo momento con una connessione PCIx che ci darà sicuramente la larghezza di banda di cui abbiamo bisogno (se è abbastanza buono per una scheda video, penso che farà lol).
MDMoore313,

Risposte:


26

Questo si riduce a una questione di larghezza di banda e latenza. Per un sistema semplice ipotizziamo una sonda con larghezza di banda di 100 MHz con frequenza di campionamento di 1GS / s e un convertitore A / D a 10 bit (ho avuto brutte esperienze con oscilloscopi a 8 bit).

Voglio una visualizzazione in tempo reale sul PC con una finestra di campionamento minima di diciamo 10 ns - 1 ciclo di un'onda sinusoidale da 100 MHz e una finestra massima di (sarò generoso con te in questo) mezzo secondo. In altre parole, l'impostazione del tempo più basso sarà qualcosa come 1 ns / div e il massimo è 0,05 s / div. Voglio anche diverse modalità di tensione: range da 100 mV a 20 V, diciamo.

Che tipo di velocità dei dati comporta questo?

1Gs / s * 10 bit / campione = 10Gbit / s

Quelle non sono velocità USB. Lontano da esso. E non ho nemmeno preso in considerazione le spese generali. Prima di tutto, non hai la larghezza di banda. E non è nemmeno solo larghezza di banda. Per la visualizzazione in tempo reale è necessario essere coerenti. È necessario trasferire 100 bit nel layer dell'applicazione ogni 10 nano secondi. Questo tipo di coerenza non può essere ottenuto da USB. Non è progettato per soddisfare un dispositivo con esigenze stravaganti: è progettato come un bus. E non puoi controllare quando possiedi il bus: i dispositivi sono solo schiavi. Se l'host consente a un altro dispositivo di comunicare quando è necessario inviare i dati, questi verranno persi.

Potresti piangere male - perché trasferire i dati in tempo reale sul computer quando "in tempo reale" per una persona è di 60Hz? Se tutto ciò che devi fare è aggiornare il display, sicuramente non avrai bisogno di così tanti dati. Tranne te, il tuo display è una combinazione lineare di tutti i campioni che hai raccolto. Interpolazione spline cubica approssimata mediamente quadrata approssimata al minimo, non importa. Per creare un bel display carino che non sia solo un mucchio di punti, devi avere la maggior parte di tutti quei dati e devi postarli. Qualche innesco? I calcoli devono essere eseguiti sull'host - a livello di applicazione. Indipendentemente dal modo in cui lo tagli, per visualizzazioni in tempo reale a velocità di 1GS / s per qualsiasi precisione degna di nota, devi trasferire ordini di grandezza più dati di quelli che USB è in grado di gestire e devi farlo in modo più affidabile di te '

Quali sono i modi per aggirare questo? Non eseguire una visualizzazione in tempo reale. Alcuni ambiti USB offrono solo modalità attivate. Il trigger viene gestito sul dispositivo e quando viene rilevato un trigger, i dati vengono raccolti in un buffer. Quando il buffer si riempie, l'oscilloscopio USB lo trasferisce lentamente all'applicazione e quindi l'applicazione lo visualizza. Questo è sufficiente per l'uso dell'ambito di applicazione, ma non è in tempo reale. E il trasferimento richiede anche un po 'di tempo. È scomodo. E di solito i driver fanno schifo. Puoi dire che ho avuto brutte esperienze.

Mi sono sempre chiesto perché Firewire non fosse usato per gli scopi. Evita alcuni dei mal di testa dell'USB. È peer-to-peer, offre modalità isocrone (timing coerente) ed è una larghezza di banda relativamente elevata. Potresti essere in grado di realizzare un ambito in tempo reale da 10 MHz o giù di lì.

Per indirizzare i tuoi punti dopo la modifica:

  • L'usabilità di un ambito aumenta enormemente con il prezzo. Quando si passa da un ambito USB da $ 200 a un $ 500 autonomo, si ottengono enormi aumenti delle caratteristiche e delle funzionalità di base. Perché spendere solo $ 200 quando per un po 'di più puoi ottenere un ambito reale? Ora che la Cina ha aperto le porte di obiettivi economici ed efficaci, ci sono poche ragioni per voler risparmiare $ 300 che ti frustreranno in seguito. Gli ambiti "fantasiosi" che hanno queste caratteristiche sono al giorno d'oggi economici.

  • Sì, limitare il trasferimento dei dati in modo da fornire solo dati coerenti con una frequenza di circa 60Hz sarà più facile con USB, ma non è ancora qualcosa che si desidera fare. Non dimenticare le tue classi DSP: solo prendere determinati dati dallo stream equivale alla decimazione. Quando decimali, devi aggiungere filtri antialiasing. Quando lo fai, perdi la larghezza di banda. Questo rende il tuo ambito meno utile - limiterà la larghezza di banda sul display in tempo reale (e solo per il tempo reale - le modalità attivate andrebbero bene) a molto meno della larghezza di banda del tuo front-end analogico. Gestire gli aspetti di elaborazione del segnale di un oscilloscopio è un affare complicato.

  • Chiaro display reattivo? Il PC? Non costantemente. Indipendentemente da come lo fai, devi bufferizzare i dati. Come ho detto prima, l'USB non garantisce il trasferimento dei dati. Lo dirò in modo diverso: USB non è progettato per adattarsi al trasferimento di dati in tempo reale. Certo, per quantità sufficientemente piccole di dati a grandi intervalli potresti ottenere delle buone prestazioni, ma prestazioni non coerenti. Utilizzerai il buffering e di tanto in tanto perderai il trasferimento del buffer in modo tempestivo. Quindi il display salta, i dati sono obsoleti, ecc. Ecc. I display chiari e reattivi in ​​tempo reale richiedono collegamenti dati in tempo reale, punto.

  • Trigger semplice: di nuovo, torniamo ai costi vs. complessità vs. reattività. Per eseguire il trigger sul dispositivo per rilevare i transitori, il tuo dispositivo non può essere solo una stupida pipa di dati che trasferisce i campioni irresponsabilmente su USB. Devi buffer, buffer, buffer campioni sul dispositivofino a quando non vedi la tua condizione di innesco. Ciò significa che hai bisogno di memoria e intelligenza sul tuo dispositivo: un grande FPGA o un grande microcontrollore. Questo aggiunge dimensioni e spazio. Se si utilizza un FPGA, è necessario bilanciare la quantità di logica di trigger con la necessità di molta RAM per lo spazio del buffer. Quindi il tuo buffer è più piccolo di quanto vorresti che fosse già. Ciò significa che ottieni una minuscola quantità di dati attorno al punto di attivazione. Se non aggiungi memoria esterna, puoi fare di più. Ciò aumenta le dimensioni e il costo del tuo dispositivo, ma sicuramente non sarà solo una sonda con un cavo USB collegato.

  • Saresti fortunato ad ottenere una larghezza di banda di 100 MHz - di solito 10 volte la frequenza di campionamento è considerata il limite minimo per la larghezza di banda. Quindi, se hai una frequenza di campionamento di 1GS / s che a malapena ti offre una larghezza di banda di 100 MHz. Non puoi ottenere di più: un'onda quadra a 200 MHz sembrerà un'onda sinusoidale a 200 MHz. Che schifo È stupido - non è affatto vicino al livello professionale.

L'altra serie di punti:

  • $ 200? Come immagini? Qual è l'elenco delle parti?
  • Una buona portata per leggere segnali ad alta velocità non costa migliaia di dollari. Costano forse mille dollari. 100MHz è un gioco da ragazzi nel dipartimento dell'ambito e la tua idea non soddisferà nemmeno quel benchmark e un ambito di $ 1000
  • Sì, dal modo in cui lo descrivi sarebbe davvero molto limitato. Gli aspetti tecnici anche dei pochi requisiti che hai significano un dispositivo molto limitato.
  • Non sarebbe utile quanto l'ambito $ 1100 che ho comprato con un analizzatore logico e una larghezza di banda analogica a 60 MHz. Preferirei pagare per le mie apparecchiature di prova che vanno in giro con giocattoli per bambini intenzionalmente limitati.

Vivi e muori dalla tua attrezzatura di prova come ingegnere. Se non sei sicuro di poterti fidare, stai perdendo tempo. Data la mancanza di esperienza che hai dimostrato sulla comunicazione ad alta velocità, l'elaborazione del segnale e la potenza dell'elaborazione integrata (in FPGA o microcontrollori), non scommetterei che sei pronto a progettarlo tu stesso e nessun altro a cui viene data risposta è qualcosa altro che ambivalente.

Se ci fosse una serie di requisiti più mirati che rispondessero a un reale bisogno nella comunità che non veniva servito, che avrei potuto essere tecnicamente fattibile sarei stato a bordo. Ma i tuoi vaghi requisiti non sembrano ricercati. Devi fare un sondaggio sulle opzioni disponibili là fuori per gli appassionati - quali ambiti USB e standalones sono le persone che usano, quali sono i loro punti di forza e di debolezza e determinare se non vengono riempite alcune nicchie. Altrimenti questo è solo fantastico.


Anche USB ha trasferimenti isocroni. Ma sì, al massimo saresti limitato a circa 400 MB / sec sulla connessione USB 3.0 ad alta velocità, che equivale a circa 320 M campioni / sec a 10 bit / campione, supponendo che non vi siano compressione, trigger e un canale. USB 3.1 raddoppia questo limite.
doug65536,

Scusa ma non compro il tuo argomento. Anche l'USB 2.0 offre molta larghezza di banda e una latenza abbastanza bassa per una visualizzazione fluida (controlla le webcam USB) e il buffering di un segnale abbastanza lungo all'interno dell'oscilloscopio si occupa della decimazione. So che è una risposta dal 2012 e gli ambiti USB hanno risucchiato allora, ma il motivo per cui hanno succhiato non era USB. Il motivo principale era che non erano considerati professionali, quindi dovevano essere economici e di conseguenza non erano costruiti in modo professionale.
Dmitry Grigoryev,

Parti di questa risposta sono obsolete (USB 3.1 spinge 10 Gbit / s, anche se ovviamente non tiene conto delle spese generali) e parti di essa non sono mai state valide. Puoi assolutamente sottocampionare e innescare sulla periferica in modi che non riducano l'utilità, se sei disposto a mettere abbastanza potenza di elaborazione lì. Non è facile ed è probabilmente al di là delle capacità di una persona a caso, ma non esiste una legge della fisica contro di essa.
Hobbs

Che ne dici di concentrarti solo su Thunderbolt 3 (fino a 40 Gbps)? Anche Thunderbolt 2 può supportare fino a 20 Gbps. La maggior parte dei vecchi Mac (2012 e successivi?) Hanno porte Thunderbolt 2. Molti PC più recenti hanno una porta Thunderbolt 3. Pensato che forse sia più difficile codificare / supportare i driver tramite Thunderbolt, non lo so.
Ryan Weiss,

5

Non vorresti che fosse in un formato di sonda manuale, poiché un ambito a canale singolo non è molto utile. Il costo aggiuntivo di 2 canali (anche se si combina l'ADC) è una piccola percentuale di costo aggiuntivo, ma un enorme aumento dell'utilità.

A meno che tu non voglia tirare più di 500mA, non c'è motivo di usare una batteria perché potresti avere un convertitore DC-DC isolato. Tuttavia, ottenere un'elevata larghezza di banda attraverso una barriera di isolamento non è banale.



3

Bene, ci sono un paio di problemi qui. Se prendiamo come standard di riferimento un ambito analogico da 1 GHz (come un buon Tektronix), questo ambito proposto subirà i seguenti modi:

1) ASD5010 è un convertitore a 8 bit. 8 bit non sono abbastanza per essere in grado di competere con un buon ambito analogico.

2) Non confondere la frequenza di campionamento con la larghezza di banda analogica. Per il chip selezionato, la larghezza di banda analogica equivalente sarebbe probabilmente molto più vicina a 100 MHz di 1 GHz.

Questo non vuol dire che non è possibile costruire un tale scopo, si può chiaramente acquistare uno che soddisfa queste specifiche commercialmente. È semplicemente banale ottenere una larghezza di banda di 1 GHz e sarebbero necessari ingegneria speciale e parti migliori.


7
8 bit è in realtà piuttosto tipico per un oscilloscopio digitale, e non sembra limitare la capacità di Agilent, Tektronix, ecc. Di competere con gli ambiti di un putativo analogo che qualcuno avrebbe potuto pensare di lanciare sul mercato.
The Photon

Inoltre, non ho familiarità con alcun ambito analogico da 1 GHz. Non sarei sorpreso se fossero costruiti, forse per applicazioni molto speciali (scienziati nucleari o qualcosa del genere), ma mi aspetterei che sia una bestia molto rara da trovare in natura. Prima del 1990 circa, 1 GHz era molto raro nell'elettronica digitale (forse nei supercomputer Cray e cose simili); dopo circa il 1990 quasi tutti i nuovi progetti di ambito di un fornitore di alto livello erano digitali.
The Photon,

Un ambito analogico da 1 GHz disponibile in commercio è Iwatsu TS_81000: testequipmentconnection.com/tecspecs/Iwatsu_TS-81000.PDF
JonnyBoats

1
Bello, il tuo link mi ha portato a trovare il Tek 7104, un ambito analogico da 1 GHz. Buono anche a sapere che non sono l'unico a pensare che l'analogico a 1 GHz sia piuttosto impressionante. Un sito web ha "Il Tektronix 7104 è l'oscilloscopio analogico più veloce mai prodotto. Originariamente progettato negli anni '70 per la US Atomic Energy Commission, ha una larghezza di banda di 1 GHz ..." ( readingjimwilliams.blogspot.com/2011/08/scope -sunday-4.html ) Quindi almeno non ero troppo lontano per dire che un ambito analogico da 1 GHz sarebbe una bestia rara.
The Photon,

Anche il foglio dati per il 7104 su testequipmentconnection.com mostra un prezzo di listino di oltre $ 30.000, probabilmente a metà degli anni '80.
The Photon,

2

Gli ADC a 8 bit sono piuttosto comuni negli oscilloscopi, tuttavia la tecnica di utilizzo degli ADC è leggermente diversa. Come ho visto alcuni oscilloscopi interni, il caso comune è usare 4 chip ADC, ognuno con un clock di 90 gradi, quindi ottieni 4x campioni per un ciclo di clock ed è per questo che il clk freq è piuttosto basso, ma la larghezza di banda dei dati è alto. Ad ogni modo, un tale progetto finirà per sprecare più denaro rispetto all'acquisto di un nuovo scopo :-) Tuttavia, potrebbe essere una buona pratica per l'autoapprendimento. OTOH, pensa al lato analogico dell'ambito. Quella parte è dannatamente difficile e molto difficile da fare.


1
Questo è esattamente l'ASD5010. Sono 4 ADC in un unico pacchetto. Ciascun campione a 250 MHz con una differenza di fase di 90 gradi.
Rocketmagnet,

1
La domanda non è tanto quanto sia difficile, ma se un tale ambito sarebbe utile e se ci sono persone qui disposte e in grado di risolvere quei problemi.
Rocketmagnet,

1
Pensa a ciò che è stato realizzato nel dominio del software da quelle comunità. È molto difficile creare un sistema operativo, ma guarda cosa hanno ottenuto!
Rocketmagnet,

NON è molto difficile creare un sistema operativo: le persone lo fanno sempre.
AngryEE,

1
Potrei sbagliarmi, ma penso che piuttosto che usare quattro ADC, è più comune per gli ambiti usare convertitori pipeline che hanno un numero di stadi, ciascuno con un circuito di campionamento e mantenimento. Il primo stadio campiona l'ingresso, lo stadio successivo lo identifica come uno dei 32 livelli, il successivo sottrae il segnale precedentemente identificato e scala il segnale, e il successivo lo identifica come uno dei 32 livelli. I due valori a cinque bit ottenuti per un campione possono quindi essere inseriti in una tabella di ricerca per produrre una lettura di 8 bit (gli ADC a 5 bit possono essere un po 'scadenti, ma la tabella di ricerca lo corregge).
supercat

1

Altri problemi:

  • protezione : di sicuro non vuoi che si rompa il pugno tempo che hai erroneamente messo 20-30 V all'ingresso;

  • calibrazione : anche con una precisione di 8 bit, è comunque necessario controllare l'errore entro 1/256 = 0,4% complessivo; non banale con componenti standard;

  • filtro del rumore : deve essere schermato e filtrato e non è sufficiente perché anche l'FPGA genererà probabilmente rumore, quindi è necessario separare il dominio analogico e digitale.

Ad ogni modo, riguardo alla connessione USB, penso che sia più funzionale elaborare internamente i dati e collegarli direttamente al display.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.