倒立振子型カメラアー​ム付き移動ロボットの​シミュレーション(モ​デリング)

4 ビュー (過去 30 日間)
Wataru Tsunoda
Wataru Tsunoda 2020 年 7 月 18 日
コメント済み: Toshinobu Shintai 2020 年 7 月 25 日
初めまして。
私は現在倒立振子型カメラアーム付き移動ロボットのシミュレーションを試みています。
シミュレーションを行うにあたっての理論式(添付pdfをご参照いただければ幸いです)は導出しましたが、simulinkでのモデリングに苦戦しています。
自分が考えている方針としましては、x(t), θ(t)について解く(理論式の変形を行う)、その後simulinkでモデル化するといった流れで行おうと思っているのですが、matlabで常微分方程式を変形するコマンド等は存在するのでしょうか?
初歩的な質問で申し訳ないですが、よろしくお願いします。

採用された回答

Toshinobu Shintai
Toshinobu Shintai 2020 年 7 月 18 日
数式計算を行いたい場合は「Symbolic Math Toolbox」を使うとできます。
添付ファイルに、数式を導出してSimulinkモデルで解く例を作りましたのでご参照ください。
最初の変数定義で「ddx = sym('ddx', 'real'); 」としていますが、これは変数を実数で定義するために行っています。Symbolic変数を定義する際、デフォルトの「syms ddx」という表現では、複素数として扱われるためです。
Tsunodaさんが添付してくださった数式はそのまま実装はしていません。是非ご自分で手を動かして作ってみてください。
積分計算は数式に含めていません。あくまで位置と角度の二回微分を計算する式を生成し、Integratorブロックでそれらを積分し、変化率と位置角度を計算しています。
  1 件のコメント
Toshinobu Shintai
Toshinobu Shintai 2020 年 7 月 25 日
添付ファイルの「model1.mlx」を実行してみると、14行目にddthが存在しないというエラーが出たため、ddthetaに書き換えました。また、すでにmysystem.slxがありますので、15, 16行目はコメントアウトしました。
その結果、問題無く実行できましたが、どこでEmpty sym: 0-by-1が発生するのでしょうか。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSimulink についてさらに検索

製品


リリース

R2020a

Community Treasure Hunt

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

Start Hunting!