Differenziazione tra un'onda quadra o un'onda a dente di sega con un circuito ...?


11

Voglio costruire un semplice sensore che prende un'onda quadrata a 100 kHz o dente di sega con un'ampiezza nota e genera un alto se riceve un'onda quadra o un basso per dente di sega.

Sono abbastanza sicuro che questo richiede una sorta di comparatore, ma non sono sicuro di come affrontare questo problema da solo. Qualcuno potrebbe delineare una sorta di approccio? (Mi piacerebbe capire i dettagli).

Grazie in anticipo!


6
qual è l'output quando l'ingresso non è nessuno dei due, ad esempio un'onda sinusoidale?
JustJeff,

Tutti i livelli del segnale sono al di sopra o al di sopra del suolo? Vuoi dire dente di sega (cade più velocemente di quanto aumenta) e non triangolo.
Russell McMahon,

Risposte:


11

Se la frequenza per entrambe le onde sarà di 100 kHz con la stessa ampiezza, è possibile costruire un filtro passa-banda stretto a 200 kHz per trasmettere il segnale. In teoria un'onda quadra pura dovrebbe avere solo armoniche dispari, quindi non dovrebbe esserci molto output alla seconda frequenza armonica. D'altra parte, un'onda a dente di sega presenta armoniche uniformi e dispari, quindi otterrai una resa maggiore. L'ampiezza del picco per la seconda armonica di un'onda a dente di sega sarà semplicemente , dove A è l'ampiezza di picco dell'ingresso a dente di sega. Se lo desideri, puoi seguire l'output del filtro passa-banda con un rilevatore di picco e un qualche tipo di comparatore.2UNπ


1
Un filtro passa-banda di questo tipo dovrebbe avere lati ripidi per estrarne tutti i dati utili. Qualcosa con una pendenza di 12 dB / ottava sarebbe un buon inizio. 3dB / ottava non filtrerebbe adeguatamente il fondamentale.

Potrebbe essere adeguato se hai eseguito un confronto tra l'output del filtro e l'input.
Chris Stratton,

10

Una descrizione di una soluzione: magari eseguirla attraverso un differenziatore. La derivata di un'onda quadra alternerà picchi di andamento positivo e negativo, mentre la derivata di un dente di sega dovrebbe essere più o meno costante a un valore basso in una polarità durante i bit rampanti, con punte periodiche di valore maggiore nell'opposto polarità quando si ripristina il dente di sega. Quindi quindi HPF che per sbarazzarsi dei valori bassi costanti che si ottengono dalle rampe a dente di sega e vedere se si stanno ottenendo picchi di entrambe le polarità o solo una singola polarità.


2

Puoi facilmente rilevare alcune semplici forme d'onda rilevando i fianchi del segnale. Un quadrato ha fianchi che si alzano e si abbassano rapidamente, un dente di sega ha solo fianchi che si alzano o scendono rapidamente, a seconda del segnale.

Quindi controlli i fianchi in salita e in discesa: se rilevi entrambi, è quadrata. Se rilevi solo un tipo, è un triangolo, purché tu sia sicuro che verranno immessi solo questi segnali.

Prova con un circuito di differenziazione, che può essere fatto facilmente con un opamp. Vedi qui: http://www.physics.iitm.ac.in/courses_files/courses/eleclab03_odd/mathematical_operations.htm

La pendenza del fianco è rappresentata nell'uscita del differenziatore.

Alimenta questo segnale e la sua inversione in Schmitt-Trigger e / o monoflop riavviabili e hai una rappresentazione a livello logico di RisingFlank e FallingFlank, che a sua volta puoi usare per ulteriori calcoli o visualizzazioni.


2

Non esiste una risposta "giusta" per questo, dal momento che dipende davvero dalla capacità della persona che progetta il circuito di costruirlo correttamente. Alcuni approcci sono più difficili di altri.

Dato che ho un background in audio, utilizzerei un approccio basato sull'audio. Farei affidamento su qualcosa chiamato " fattore di cresta ". Il fattore di cresta è, fondamentalmente, la differenza tra il livello RMS e il picco. Quindi, se hai creato due "VU Meters", uno che ha misurato il valore di picco e un altro che ha misurato il valore RMS e confrontato la differenza, potresti distinguere abbastanza accuratamente la differenza tra un'onda quadra e un dente di sega.

Per un'onda quadra, i livelli RMS e Peak saranno identici. Per un'onda triangolare il livello RMS sarà inferiore di 4,77 dB rispetto al picco. Un'onda a dente di sega sarà simile a un'onda triangolare, ma non ho il numero esatto a portata di mano.


1

Un'altra soluzione semplice per un'ampiezza fissa: utilizzare un comparatore per confrontare il segnale con una tensione costante di ampiezza del 95%. Ad esempio, se l'ampiezza dell'onda è 0v..1v, confrontarla con 950mv.

Un'onda quadra del duty cycle del 50% ti darà un'onda quadra del duty cycle del 50%. Un'onda del dente della sega ti darà un'onda quadra del ciclo di lavoro del 5%. È possibile utilizzare un microcontrollore per rilevarlo su base ciclo per ciclo.


1

Se si passa un'onda quadra o un'onda a dente di sega attraverso un filtro passa-alto la cui frequenza di taglio è molto al di sopra del fondamentale dell'onda originale, l'uscita sarà una sequenza alternata di impulsi positivi e negativi (per un'onda quadra), oppure avrà solo impulsi in una direzione (per un dente di sega).

Vedi questo circuito su Falstad:

schematico

misure:

Squarewave in Sawtooth in (cadere) Sawtooth in (crescente)


0

Se il segnale ha un'ampiezza fissa, è possibile eseguire il segnale attraverso un filtro passa basso (media del segnale) e confrontare i valori medi. I dettagli sui cicli di lavoro determineranno quale valore medio è più alto. Se, tuttavia, l'onda quadra è il duty cycle del 50% e l'onda triangolare è il 100%, la media sarà uguale e dovrai esplorare una soluzione più complicata.


Un raddrizzatore a semionda consentirebbe a questo di funzionare per i cicli di lavoro menzionati.
Kevin Vermeer,
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.