simscapeで衝突を表現する方法

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

 채택된 답변

Norihiro Kobayashi
Norihiro Kobayashi 2024년 12월 3일

0 개 추천

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

댓글 수: 1

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

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

제품

릴리스

R2024a

태그

질문:

松
2024년 12월 2일

댓글:

松
2024년 12월 3일

Community Treasure Hunt

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

Start Hunting!