Filter löschen
Filter löschen

MATLAB FunctionとS Functionについて

12 Ansichten (letzte 30 Tage)
晃平
晃平 am 5 Mär. 2024
Kommentiert: 晃平 am 12 Mär. 2024
MATLAB FunctionとS Functionの違いを知りたいです。
MATLAB Functionは理解しておりますが、S Functionの機能があまり理解できておりません。
MATLAB FunctionはブロックをダブルクリックするとCコードで記述できますが、
S Functionはブロックパラメータが開き、コードを記載する箇所がありません。
S Functionもコードを記述して使用するものだと思っているのですが、違うのでしょうか。
  1 Kommentar
Atsushi Ueno
Atsushi Ueno am 6 Mär. 2024
S-Functionは昔から (R12:Simulink 4.0には既に) あります。 MATLAB Function は R2011a で導入されたそうです。
「Simulinkでコードを動かす」事自体はずっと変わりませんが、昔は「Simulinkに所望の機能が無いから自分でカスタムブロックを作成する」意味合いが強かったはずです。実際には「レガシーコードをSimulinkモデルに組み込んで動かす」使われ方が多く、更に現在では「Simulinkで作るけど部分的にコードを書きたい」要望も出てきました。また、MATLABやStateflowの既存資産をSimulinkに移行する要求もあります。その意味で便利さを追求して様々な「何とかFunctionブロック」が登場しました。

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Atsushi Ueno
Atsushi Ueno am 6 Mär. 2024
Bearbeitet: Atsushi Ueno am 6 Mär. 2024
>MATLAB FunctionとS Functionの違いを知りたいです。
まずブロック内で扱う言語が異なります(前者はMATLAB、後者はC/C++/Fortran)。
下の質問にもありますが、前者はコード1行書けば即動きますが、後者は色々とお膳立てが必要です。
>S Functionもコードを記述して使用するものだと思っているのですが、違うのでしょうか。
違いないです。専用のエディタが開かないだけです。S-Function Builderブロックなら専用のエディタが開きます。
現在(R2020a以降)は、C Function ブロックの方がMATLAB Functionブロックの使い勝手に近く使い易いです。
@Toshinobu Shintaiさんの下記ポストが分かり易いです。S-FunctionとMATLAB Functionの比較表だけ抜き出しました
  1 Kommentar
晃平
晃平 am 12 Mär. 2024
ご回答ありがとうございました。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Simulink Function finden Sie in Help Center und File Exchange

Produkte


Version

R2022b

Community Treasure Hunt

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

Start Hunting!