Issue with doing FM on SIMULINK

8 ビュー (過去 30 日間)
Abdelrhman Abdelfatah
Abdelrhman Abdelfatah 2022 年 10 月 29 日
編集済み: Jim Riggs 2022 年 10 月 31 日
Hello, I want to run the following Model, but it keeps giving me that error how can I fix it please?
Secondly, I want to replace that Message 1 Box, with the following input from my code, how can I do this?
fs=1000;
t = 0:1/fs:2;
% Defining the messages signal m(t)
message =@(t) -sawtooth(2*pi*(t+0.5)) ;
Thank you

採用された回答

Jim Riggs
Jim Riggs 2022 年 10 月 31 日
編集済み: Jim Riggs 2022 年 10 月 31 日
1) The error is generated because the integration block is a continuous block, and you have specified a discrete solver.
Change the solver type to "Auto" in the model settings.
2) You can code the function that you want using a "MATLAB Function" block (found under the user-defined functions tab).
Assuming that variable "t" is time in your function, you will have to supply t as an input;
Inside the MATLAB function block you provide the following code:
function y = fcn(t)
y = -sawtooth(2*pi*(t+0.5));
You can control the signal by setting the parameters for the solver. For example, set the solver to "fixed time step" and specify a time step of .001. Set the simulation stop time to 2. This will create a sawtooth signal from 0 to 2 with a 0.001 step size.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSwitches and Breakers についてさらに検索

製品


リリース

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by