■R2018a 以降
R2018a にて Simulink の基本ブロックに String という文字列を扱うグループが追加されました。こちらにより、Simulink モデル内でも文字列の使用が可能になっております。
■R2017b 以前
Simulink 上では文字列を直接入出力データに使用することはできません。文字列を数値型に変換して出力し、MATLAB Fcn や Embedded MATLAB Function、MATLAB file S-Function で文字列に変換することは可能です。
詳細につきましては、関連ドキュメントにあるサンプルモデルをご参照ください。
サンプルモデルでは、マスク化したサブシステムのダイアログパラメータに文字列を入力すると、マスクのダイアログのコールバックに記述した下記のコマンドによって、入力した文字列が、double の数値に変換されます。\n
str=get_param('ex_str/Subsystem','InputString');
set_param('ex_str/Subsystem/Constant','Value',['[',num2str(double(str)),']'])
添付モデルのSubsystemブロックを右クリックし、"マスクの編集"を選択し、"パラメータ"タブを選択、ダイアログパラメータの1行目を選択すると、ペイン右下の"ダイアログのコールバック"に上記コマンドが設定されている様子がご覧いただけます。
また、このSubsystemsブロックの内部は、Subsystemブロックを右クリックし、"マスクブロックのモデル表示"を選択しますと、中のブロックの様子がご覧いただけます。
Constantブロックに上記で文字列を変換した数値が入力されています。