MATLAB Answers

0

I want to add two pulse generator in simulink and dump it into arduino uno...the result i am getting is change in the frequency at arduino output what i have set in pulse generator?

Asked by Aniket Manjare on 12 Feb 2019
Latest activity Edited by Arun Kumar on 26 Sep 2019
Capture1.PNG
i want to generate 0.02 (50 hz) time period pulse by adding this two pulse generator, i am getting the output from the arduino but frequncy is not 50 hz, kindly suggest
22.PNG
this is the pulse i want to generate at arduino output for 0.02 time period.

  0 Comments

Sign in to comment.

Products


Release

R2017b

4 Answers

Answer by Madhu Govindarajan on 12 Feb 2019
Edited by Madhu Govindarajan on 12 Feb 2019
 Accepted Answer

The correct way would be to have one pulse generator with period 0.02 seconds and appropriate Pulse Width. Adding two blocks does not add their sampling periods, it instead adds the contents within the same sampling period.

  1 Comment

But how can i generate this pattern of pulses at different time delay for 0.02 time period?
kindly help me to generate this pulse pattern at 50hz at arduino's output

Sign in to comment.


Answer by Madhu Govindarajan on 13 Feb 2019

Here is what I would recommend -
1) Create a new Simulation only model and put two pulse generators both with a sampling period of 0.02.
2) Adjust the square waves as you see fit and add them up and send it to a scope.
3) Simulate this model and make changes as you see fit.
4) Once you have established you have the square wave of your choice, then bring it back into Arduino model and send it to the digital pin.

  5 Comments

Arduino's digital pin output is measured on the DSO and the frequency i am getting on the DSO is not correct. I am getting 400Hz frequency on pin 9 of arduino. Instead of 400Hz it must me 50Hz.
Thanks for that response, it is odd that the frequency is 400 Hz. If you can share the new model that would be great, as other users can chime in with their expertise as well.
Capture1.PNG
For this Configuration i have got the pulse at arduino digital pin output but frequency i am not getting 50hz frequecy at DSO
I have kept the time period 0.01 so atleast i should get 100Hz, but its not

Sign in to comment.


Answer by Madhu Govindarajan on 19 Feb 2019

Here is what I think is going on - the model is overrunning itself as the sample time for model is small (0.000625 or 1600 Hz). To detect and fix task overruns - https://www.mathworks.com/help/supportpkg/arduino/ug/detect-and-fix-task-overruns-on-arduino-hardware.html
You can also try deploying to hardware, which might avoid overruns sometimes (you are only reducing the scope overhead). Although I doubt it would help at this sampling rate.

Answer by bella risky ananda on 16 Sep 2019

Hi all...I have problem set PWM frequency for SIMULINK support package of Arduino..I am using MATLAB 2017b and arduino mega2560...for the control i need a PWM signal 25000 Hz but the Simulink support package (PWM) has only 490 Hz and i can change only the duty-cycle.
What can I do? I would welcome your response. If you don't mind, can I ask for a soft file of simulink simulation as a reference for my final assignment. I still didn't understand for change pwm frequency arduino in simulink matlab.
Thank you

  2 Comments

Use this Library to change frequency of PWM.
Using this library, you can configure PWM to some extent.
Request for supporting variable PWM frequnecy on arduino is under consideration.
thank you very much for helping and this is very helpful..

Sign in to comment.