errors in matlab function block in simulink

i am trying to create a matlab function block in the Simulink that generates square pulses as pulse generator but errors appear please help , I attached screenshots.
<<
>>

Answers (1)

Your code is not correct. Plus, generating a puls train with Matlab function is not a good idea. You have to know that your Matlab function block, the way it's programmed, will outpu,t each sample time, an entire array.
You can generate such signal with from file block, from worksapce block or using repeated sequence
If you want to use from file block
Fs=1e+9
tend=10*4e-6
t=0:1/Fs:tend;
pulsewidth=1e-6
pulseperiods=(0:10)*4e-6
x=pulstran(t,pulseperiods,'rectpuls',pulsewidth)
v=[t;x];
save yourfile v
Then set the name "yourfile" in the frome file block

28 Comments

should I write your code in the matlab function block or where please clarify ? ( and thanks for helping really appreciate it )
No, in a script, or Windows Command. The aim is to create the file that contains your signal.
I saved it by this name , how should I implement it now in the Simulink block ?
Another way is to use repeating sequence block set the x variable to your block
that error appears and no o/p
and the scope shows no square pulses , sorry for disturbance I really appreciate your helping
In model configuration parameters set the solver to discret. and set the stop time to tend
I adjusted the solver to discrete but I cant find how to set the stop time
I found the stop time you mean I adjust it to ( 10 ) ? I will try now
no, set it to tend. because your frequency is very high 1e9. If you want to see quickly your pulse train, set the stop time to t(end) or tend
it shows error because tend it is very big and maximum is 200000
Do you know what is tend?
From your code:
tend=10*4e-6
How now it's equal to 200000?
yes the period of my square train pulse which is 4 microseconds
sorry this was shown to me not 20000
thanks for help I just failed to do it and I exhausted you thanks again
Have you read my previous comment? probably you have cleared the variable tend. before running your simulink model you need to set the variable tend to its original value
tend=10*4e-6
u mean from the variables in the matlab , ohh I thout Simulink is isolated from matlab . I will try now
I tried again same error , I got exhausted seems I cant do it , if u can send me a file I would really appreciate it , thanks again for all.
I have a problem in the Simulink model if u please lastly can send it to me , my attached file is same as yours because I did it by your step but the Simulink is hard to run without errors. thanks so much so far
https://www.dropbox.com/s/a5dlpl56eoohbhf/matfunc.zip?dl=0 this my Simulink file if u can attach your file and see what error appear that will be so helpful , thanks
it did work ,man you are such a great helpful person hope u have a happy life for helping people so much . thanks again man :)

Sign in to comment.

Categories

Find more on Simulink in Help Center and File Exchange

Asked:

on 11 Apr 2016

Edited:

on 15 Apr 2016

Community Treasure Hunt

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

Start Hunting!