You are now following this question
- You will see updates in your followed content feed.
- You may receive emails, depending on your communication preferences.
errors in matlab function block in simulink
1 view (last 30 days)
Show older comments
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)
Azzi Abdelmalek
on 11 Apr 2016
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
mohamed samhy
on 11 Apr 2016
should I write your code in the matlab function block or where please clarify ? ( and thanks for helping really appreciate it )
Azzi Abdelmalek
on 11 Apr 2016
No, in a script, or Windows Command. The aim is to create the file that contains your signal.
mohamed samhy
on 11 Apr 2016
I saved it by this name , how should I implement it now in the Simulink block ?
Azzi Abdelmalek
on 11 Apr 2016
mohamed samhy
on 11 Apr 2016
Edited: mohamed samhy
on 11 Apr 2016
that error appears and no o/p
Azzi Abdelmalek
on 11 Apr 2016
What error?
mohamed samhy
on 11 Apr 2016
and the scope shows no square pulses , sorry for disturbance I really appreciate your helping
Azzi Abdelmalek
on 11 Apr 2016
In model configuration parameters set the solver to discret. and set the stop time to tend
mohamed samhy
on 11 Apr 2016
I adjusted the solver to discrete but I cant find how to set the stop time
mohamed samhy
on 11 Apr 2016
I found the stop time you mean I adjust it to ( 10 ) ? I will try now
Azzi Abdelmalek
on 11 Apr 2016
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
mohamed samhy
on 11 Apr 2016
Edited: mohamed samhy
on 11 Apr 2016
it shows error because tend it is very big and maximum is 200000
Azzi Abdelmalek
on 11 Apr 2016
Do you know what is tend?
Azzi Abdelmalek
on 11 Apr 2016
From your code:
tend=10*4e-6
How now it's equal to 200000?
mohamed samhy
on 11 Apr 2016
Edited: mohamed samhy
on 11 Apr 2016
yes the period of my square train pulse which is 4 microseconds
mohamed samhy
on 11 Apr 2016
Edited: mohamed samhy
on 11 Apr 2016
sorry this was shown to me not 20000
mohamed samhy
on 11 Apr 2016
thanks for help I just failed to do it and I exhausted you thanks again
Azzi Abdelmalek
on 11 Apr 2016
Edited: Azzi Abdelmalek
on 11 Apr 2016
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
mohamed samhy
on 11 Apr 2016
u mean from the variables in the matlab , ohh I thout Simulink is isolated from matlab . I will try now
mohamed samhy
on 11 Apr 2016
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.
Azzi Abdelmalek
on 11 Apr 2016
here the attached mat file
mohamed samhy
on 11 Apr 2016
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
mohamed samhy
on 11 Apr 2016
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
Azzi Abdelmalek
on 12 Apr 2016
Here a simulink model
mohamed samhy
on 15 Apr 2016
Edited: mohamed samhy
on 15 Apr 2016
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 :)
See Also
Categories
Find more on Sources in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!An Error Occurred
Unable to complete the action because of changes made to the page. Reload the page to see its updated state.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)