Simulink frequency input for sine block

35 views (last 30 days)
Dee Nolovich
Dee Nolovich on 21 Dec 2015
Edited: Renato Agurto on 21 Dec 2015
Hello - In Simulink, I am trying to create a discrete sine wave that takes in 'frequency' as an input. The Sine Wave block in Simulink only allows setting the value inside the block, but it cannot be obtained from an external value. I have tried to do this via the Matlab workspace as follows:
function y = fcn(f,t)
%#codegen
[y] = sin(2*pi*f.*t);
However, the dimensions of the output from the original Sine Block is D:[frame_size,1], and my output from my custom block is D:[2097153]. This doesn't even make sense to me since the time input I selected is:0:1/30.72e6/8:32768/(30.72e6/8). This should equate to a frame_size of 32768. I attach a photo.
Any pointers on how I can recreate a Discrete frame_based Sine Wave block that takes an external frequency input?
Thanks, -D

Answers (1)

Renato Agurto
Renato Agurto on 21 Dec 2015
Edited: Renato Agurto on 21 Dec 2015
Hi. You could set the internal frequency of the sine function to 1 and multiply the input signal by the desired frequency

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!