Community Profile

photo

Toshinobu Shintai


Last seen: 2 days ago

MathWorks

106 total contributions since 2019

Control Engineer
specialty: control theory, Kalman Filter, power electronics, C/C++

Contact

Toshinobu Shintai's Badges

  • First Review
  • GitHub Submissions Level 3
  • Personal Best Downloads Level 1
  • 5-Star Galaxy Level 1
  • First Submission
  • 12 Month Streak
  • Knowledgeable Level 3
  • First Answer
  • Revival Level 1

View details...

Contributions in
View by

Submitted


モデル予測制御 設計実装ワークフロー紹介, MPC Implementation Example
当サンプルモデルは、モデル予測制御(MPC)の設計と実装のワークフローを分かりやすく紹介するための資料です。 設計後、コード生成を行い、マイクロコントローラに実装するまでの流れを詳しくまとめています。

5 days ago | 11 downloads |

Thumbnail

Submitted


PID ゲインスケジューリング設計
非線形なプラントモデルを制御するPID制御器のゲインスケジューリングを、「Closed-Loop PID Autotuner」ブロックまたは「応答の最適化」アプリを用いて設計します。それぞれの手法のメリット、デメリットを把握することができます。

5 days ago | 10 downloads |

Thumbnail

Submitted


Simulink Compiler モデルをアプリに実装するワークフローを紹介
Simulink Compilerを使ってアプリを作る方法を、初心者にも分かりやすく説明します。作るアプリは、PIDのチューニングの練習をするためのものです。

5 days ago | 20 downloads |

Thumbnail

Answered
PPOAgentの実装について
PPOエージェントのactionは離散でなければなりませんので、actionInfoは、例えば以下のように定義します。 actInfo = rlFiniteSetSpec({[-1, -1, -1], [1, 1, 1]}); 上記の場合は、numAc...

9 days ago | 0

Answered
EmbeddedCoderでプリプロセッサとしてコード生成するための表現
添付ファイルに、R2019bでサンプルモデルを作成してみました。「my_controller.slx」を開き、Ctrl + Bでコード生成を行ってください。 [#includeについて] Simulinkモデルにおいて#includeを使う場面は、外部...

11 days ago | 0

Answered
Model Predictive Control Toolboxにおける1ステップ当たりの計算時間について
Simulinkモデルの1ステップにかかった実時間を計測する、ライブラリブロックはありませんが、自作することは可能です。 以下のリンク先の、シミュレーションモデルの実行をリアルタイム化する自作ライブラリをご参照ください。 https://jp.math...

17 days ago | 0

Answered
Model Predictive Control ToolboxにおけるQP solverの解法について
QP問題を解くアルゴリズムについては、コードを非公開とさせていただいておりますので、全てをお伝えすることはできません。 アプローチとしては「アクティブセット法」です。より詳細には、「Quadratic programming methods for re...

18 days ago | 0

Answered
リバースモデリング 外部関数の参照方法について
モデル参照という機能を使うと、別のファイルで作成したSimulinkモデルを呼び出せるようになります。 https://jp.mathworks.com/help/simulink/model-reference.html モデル参照は、独立したモデル...

25 days ago | 0

Answered
Simulinkモデルをコマンドから実行する方法に関して
やりたいことは、シミュレーションをコマンドで1ステップずつ進めたいということでしょうか。 以下のリンク先の「シミュレーションの操作点の保存と復元」を行うと、近いことが可能になります。 https://jp.mathworks.com/help/simu...

27 days ago | 0

Answered
0 を除く最小値
ひとまずMATLAB Functionブロックを使うことで作ることができます。添付ファイルを確認してください。 コード生成時にメモリの動的割り当てをしないように、添付画像のように、サイズの上限を指定する必要があります。 追加で注意事項ですが、MAT...

1 month ago | 0

| accepted

Answered
Simulinkにおいてばらつき確認はできますか?
シミュレーションデータインスペクターを用いると、各シミュレーションの実行結果を比較することができます。以下のリンク先は簡単な紹介動画です。 https://www.youtube.com/watch?v=KJDbZDAKMZ4 詳細なドキュメントは、以...

1 month ago | 0

Answered
補償器の実装について(今回は外乱オブザーバ)
Symbolic Math Toolboxを用いると、数式計算ができるようになります。それを用いて代数方程式を解く要領で、YをDとRで表現することができると思いますが、これで解決しますでしょうか。 https://jp.mathworks.com/hel...

1 month ago | 0

Answered
数字の0から始まるデータをExcelに書き込む方法
csvではなく、xlsxで保存すると0570で表示できました。 23行目を以下のように変えてみてください。 writecell(Tdata,'mfilewrite.xlsx')

2 months ago | 0

Answered
ステップ入力が0のとき、出力には0が出ないのはなぜですか?
角速度のIntegratorブロックの入力(トルク)の部分が、0でないのではないでしょうか。

2 months ago | 0

| accepted

Answered
抵抗値、インダクタンスがともに可変となるRL直列回路の設計
Simscapeを用いると、外部から値を入れることができる可変の抵抗とインダクタンスのブロックを使うことができます。 https://jp.mathworks.com/help/physmod/simscape/ref/variableresistor....

2 months ago | 0

| accepted

Answered
save関数を別スレッドで実行したい
以下のような方法はどうでしょうか。 MATLABを二つ起動し(それぞれA, Bとします)、Aは通常通りUDP受信したデータをグラフに描画する処理を行い、UDP受信するごとに、Bに対して受信したデータをそのままUDP送信します。BはUDP受信したデータが1...

2 months ago | 0

| accepted

Answered
状態フィードバック制御とオブザーバの併合
プラントの出力であるyからオブザーバを用いてxを推定します。そのxを用いて状態フィードバック制御則を計算し、uを求めます。そのuをプラントに入力し、yを得ます。 上記を繰り返すように構成すれば良いのではないでしょうか。参考までに、以下に状態空間の制御設計...

2 months ago | 0

Answered
simulinkのビルドとトリガー機能について
サードパーティー製のRTIシステムとMATLAB, Simulinkをどのように接続しているかが重用になると思います。 例えば、シリアル通信(RS232C)を用いているのであれば、Instrument Control Toolboxの「Serial Re...

2 months ago | 0

Answered
MPC toolboxにおけるdisturbanceの取り扱いについて
宣伝のようで申し訳ありませんが、私が作りましたMPCの日本語サンプルモデルがありまして(以下のリンク) https://jp.mathworks.com/matlabcentral/fileexchange/77879-mpc-implementatio...

2 months ago | 0

Answered
コンパイラの設定が出来ません
以下のリンク先にあるアドオンエクスプローラから、minGWをインストールできます。 https://jp.mathworks.com/help/matlab/matlab_env/get-add-ons.html 上記画像を見つけたらクリックし、イ...

2 months ago | 0

Answered
倒立振子型カメラアーム付き移動ロボットのシミュレーション(モデリング)
数式計算を行いたい場合は「Symbolic Math Toolbox」を使うとできます。 添付ファイルに、数式を導出してSimulinkモデルで解く例を作りましたのでご参照ください。 最初の変数定義で「ddx = sym('ddx', 'real'...

2 months ago | 0

| accepted

Answered
simulink Integratorにおけるエラー
「Trajectory」というMATLAB Functionブロックで除算(正確には"\"という行列の演算)が行われており、そこでゼロ割りが発生しています。 おそらくそれが原因で正しく積分計算が行えていません。修正してみてください。

2 months ago | 0

Answered
実行しているファイルのパスの取得に関して
"which"というコマンドを使うと、そのファイルの場所を調べることが出来ます。 例: >> which vdp C:\Program Files\MATLAB\R2020a\toolbox\simulink\simdemos\simgeneral\...

3 months ago | 0

Answered
EXCELに書き込む際のサンプリング周期を変える方法は?
To Workspaceブロックのサンプル時間の指定というところでサンプル時間を指定できます。 https://jp.mathworks.com/help/simulink/slref/toworkspace.html ここで荒い時間間隔を指定してみて...

3 months ago | 0

| accepted

Answered
出力の初期値をfalseに設定しておき、ある条件が成立した場合に出力を更新する方法
この構造であれば、Logical Operatorを使ってorをとれば作れます。添付ファイルを参照してください。

3 months ago | 0

| accepted

Answered
コード生成を前提にしたsimulinkモデルで、条件成立時に配列の、あるインデックスが持つ値をインクリメントする方法
Simulinkのブロックで汎化した記述をするのは難しいですね。添付した「my_model.slx」のように、Selectorを使えば書けるのですが、インクリメントする要素を変えると構造を変えなければなりません。 もし社内ルールでMATLAB Funct...

3 months ago | 0

| accepted

Answered
物質の動きを考慮したモデルをSimscapeの熱ブロックで作成するには
対流による熱伝導は以下のブロックを使うとモデリングできます。 https://jp.mathworks.com/help/physmod/simscape/ref/convectiveheattransfer.html 使い方は、以下の「住宅の暖房シス...

3 months ago | 0

| accepted

Answered
Sample and Holdブロックと、入力=出力としたTriggeredサブシステムの違い
新規にブロックを挿入した状態そのままのSample and HoldとTriggered Subsystemを比較していますでしょうか。その場合、違いはないです。 それぞれのブロックで設定が変更できますが、Triggered Subsystemは内部で様...

3 months ago | 0

| accepted

Answered
Simscapeでのモデル化について
②の方が物理現象を正確に再現することができます。ただし、計算時間は遅くなります。 一般にシミュレーションモデルの正確さと計算時間はトレードオフの関係にあります。 また、Simulink, Simscapeは1D-CAEのシミュレーションツールです。1D...

3 months ago | 0

| accepted

Answered
Simulinkの信号データのログをワークスペース上に保存
シミュレーション実行後に「out」というオブジェクトがワークスペースにありませんでしょうか。「logsout」は「out」の中に格納されていますので、「out.logsout」と記述すると取り出すことが出来ます。 ちなみに、コンフィギュレーションパラメー...

4 months ago | 1

| accepted

Load more