simulink上で​PWMを生成するには​どうすれば良いですか​。

11 次查看(过去 30 天)
KO
KO 2022-8-6
评论: KO 2022-8-9
初歩的な質問ですみませんが、下記のようなコードでデジタルピンからPWM出力をすることはmatlabでは容易ですが、simulinnkではどのように実装できるのでしょうか。
for j=0:255
writePWMVoltage(a,'D10',j*5/255);
end

回答(1 个)

Toshinobu Shintai
「writePWMVoltage」は、Arduinoのデバイス操作の関数だと想定してお答えします。まず、「Simulink Support Package for Arduino Hardware」をインストールしてください。そうすると、Arduinoのデバイスを読み書きできるブロックが扱えるようになります。
ブロックの使い方は、こちらの動画が参考になると思います。
  3 个评论
Toshinobu Shintai
PWMをArduinoから出力するには「PWM」ブロック、Arduinoのアナログ入力ピンの数値を参照するには「Analog Input」ブロックを使います。
動画の6:22辺りをみていただければ分かりますが、アナログ入力ピンにはRC回路が接続されており、PWM波形にローパスフィルタがかけられたような波形が入力されることになります。つまり物理的にPWM出力ピンとアナログ入力ピンは繋がっています。
ブロックのピン設定とそれに対応するピンの位置は、Arduinoのボードに書かれている番号そのままに対応しています。詳しくはこちらと、Arduinoさんのドキュメントをご参照ください。
KO
KO 2022-8-9
ご丁寧にありがとうございます。
Arduinoのanalog 入力ピンにRC回路およびGNDが接続されているためそこに電流が流れ、そこにスコープを当てれば波形が観れるということがなんとなくわかりました。Pin2がPWM対応なのかは疑問ですが。
実際にキットを組み立てて実装して確認してみようと思います。細かな疑問にお答えしてくださりありがとうございました。

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Arduino Hardware 的更多信息

标签

产品


版本

R2021a

Community Treasure Hunt

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

Start Hunting!