This example shows how to generate a linear chirp signal on ThingSpeak™. A chirp is a signal in which the frequency increases (up-chirp) or decreases (down-chirp) with time. This example shows a linear chirp that consecutively changes from up-chirp to down-chirp depending on the pairity of the minute when the visualization is run.
Set the initial frequency of the chirp to be 0 Hz and the target frequency (frequency at the end of the sweep) to be 10 Hz. The frequency sweep is set to occur in the target time of 10 seconds. Given that the maximum instantaneous frequency of the signal is 10 Hz, to prevent aliasing, set the sample rate to 50. Also, set the samples per frame to 500 to ensure that you get a full sweep.
hchirp = dsp.Chirp( ... 'InitialFrequency', 0,... 'TargetFrequency', 10, ... 'TargetTime', 10, ... 'SweepTime', 100, ... 'SampleRate', 50, ... 'SamplesPerFrame', 500);
Generate the chirp using the
step function. Use the minute of evaluation to provide a continuously sweeping nature to the chirp.
chirpData = (step(hchirp))'; evenFlag = mod(minute(datetime('now')),2); if evenFlag chirpData = fliplr(chirpData); end
plot to plot the chirp signal.
Add the chirp visualization using MATLAB Visualizations App. The chirp ramp changes direction when refreshed on even or odd minutes.
dsp.chirp(DSP System Toolbox)