simscapeで衝突を表現する方法

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

 Respuesta aceptada

Norihiro Kobayashi
Norihiro Kobayashi el 3 de Dic. de 2024

0 votos

モデル拝見させて頂きましたが、モデル化の方針自体は問題ないようです。
バネ定数を2000程度にしてみて頂くとともに、バネ力の働く向き(正負)を改めてご確認ください。
その他数点工夫が必要そうですが、反力が働くところまでは上記対策と以下※部の修正で動作するかと思います。
※f=zとなっている個所は記載ミスかと思われますので、始めのifのelse 処理で f=0を入れると良いかと思います。

1 comentario

松
el 3 de Dic. de 2024
回答ありがとうございます.
コメントをもとに修正をしてみたところ,自分の想定と近いような動きとなりました.
1つだけ質問したいのですが,2物体の相対距離や相対速度が小さくなった場合に,if文で質量×重力加速度で垂直抗力を与えているのですが,わずかに落下を続けてしまいます.これは解析誤差なのでしょうか?

Iniciar sesión para comentar.

Más respuestas (0)

Productos

Versión

R2024a

Etiquetas

Preguntada:

松
el 2 de Dic. de 2024

Comentada:

松
el 3 de Dic. de 2024

Community Treasure Hunt

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

Start Hunting!