Contenuto principale

Questa pagina è stata tradotta con la traduzione automatica. Fai clic qui per vedere l’originale in inglese.

Genera segnale Chirp

Questo esempio mostra come generare un segnale chirp lineare su ThingSpeak ™. Un chirp è un segnale la cui frequenza aumenta (up-chirp) o diminuisce (down-chirp) nel tempo. Questo esempio mostra un cinguettio lineare che cambia consecutivamente da un cinguettio ascendente a uno discendente a seconda della coppia di minuti in cui viene eseguita la visualizzazione.

Definisci il generatore di segnale Chirp

Impostare la frequenza iniziale del chirp su 0 Hz e la frequenza target (frequenza alla fine della scansione) su 10 Hz. La scansione della frequenza è impostata per avvenire nel tempo target di 10 secondi. Dato che la frequenza istantanea massima del segnale è 10 Hz, per evitare l'aliasing, impostare la frequenza di campionamento su 50. Imposta inoltre i campioni per fotogramma su 500 per assicurarti di ottenere una scansione completa.

hchirp = dsp.Chirp( ...
    'InitialFrequency', 0,...
    'TargetFrequency', 10, ...
    'TargetTime', 10, ...
    'SweepTime', 100, ...
    'SampleRate', 50, ...
    'SamplesPerFrame', 500);

Generare il segnale Chirp

Generare il cinguettio utilizzando la funzione step. Utilizzare il minuto di valutazione per conferire al cinguettio un carattere continuo e avvolgente.

chirpData = (step(hchirp))';
evenFlag = mod(minute(datetime('now')),2);
if evenFlag
    chirpData = fliplr(chirpData);
end

Tracciare il segnale Chirp

Utilizzare plot per tracciare il segnale chirp.

plot(chirpData);

Aggiungere la visualizzazione del cinguettio utilizzando l'app MATLAB Visualizations. La rampa di cinguettio cambia direzione quando viene aggiornata nei minuti pari o dispari.

Vedi anche

Funzioni

Oggetti