simscapeで衝突を表現する方法

11 vues (au cours des 30 derniers jours)
松
le 2 Déc 2024
Commenté : le 3 Déc 2024
simscape上で物体と地面が衝突する様子をSpatial Contact Forceを使用せずに表現したいです.
以前相対距離を用いて衝突を表現できると教えていただいたので,相対距離,相対速度を用いて衝突力をMATLAB functionを用いて計算し,その値をjointブロックに入力することで衝突を表現しようと考えました.実際に組んだものが添付したモデルになります.
解析を実行してみたところ,物体と地面は接触せずそのまま貫通してしまい,想定していた動きになりませんでした.
どこを修正すればよいのかが分からず止まってしまったため,改善案を教えていただきたいです.
よろしくお願いします.

Réponse acceptée

Norihiro Kobayashi
Norihiro Kobayashi le 3 Déc 2024
モデル拝見させて頂きましたが、モデル化の方針自体は問題ないようです。
バネ定数を2000程度にしてみて頂くとともに、バネ力の働く向き(正負)を改めてご確認ください。
その他数点工夫が必要そうですが、反力が働くところまでは上記対策と以下※部の修正で動作するかと思います。
※f=zとなっている個所は記載ミスかと思われますので、始めのifのelse 処理で f=0を入れると良いかと思います。
  1 commentaire
松
le 3 Déc 2024
回答ありがとうございます.
コメントをもとに修正をしてみたところ,自分の想定と近いような動きとなりました.
1つだけ質問したいのですが,2物体の相対距離や相対速度が小さくなった場合に,if文で質量×重力加速度で垂直抗力を与えているのですが,わずかに落下を続けてしまいます.これは解析誤差なのでしょうか?

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Produits


Version

R2024a

Community Treasure Hunt

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

Start Hunting!