Building a nonlinear spring in Multibody

조회 수: 8 (최근 30일)
Philip Mulford
Philip Mulford 2023년 7월 5일
댓글: Philip Mulford 2023년 7월 13일
I am attempting to develop a nonlinear spring system in Simscape Multibody, and there does not appear to be a method to implement a nonlinear spring in the Multibody domain.
I am aware of Steve Miller's nonlinear spring (https://www.mathworks.com/matlabcentral/fileexchange/25238-simscape-language-nonlinear-spring) as well as the multiphysics library, but that requires a rather convoluted system in which each joint outputs to their component velocities and then a rather convoluted system to extract forces out, which strikes me as something overly complicated (see below)
Is there a way to a) develop multibody domain custom blocks? All the documentation I have found does not provide any information about the multibody domain. Failing that, is there a way to assign a variable spring constant to a spring and damper multibody block?
Thanks for your help in advance!

답변 (1개)

J Chen
J Chen 2023년 7월 13일
You can use the Trnasform Sensor block to sense motion, convert the output to Simulink signals, calculate corresponding forces using Simulink, convert the outputs to the PS signals and feed it to the External Force and Torque block.
  댓글 수: 1
Philip Mulford
Philip Mulford 2023년 7월 13일
Yeah, I've moved to something similar to that (custom block instead of simulink logic, but the idea holds). The issue becomes that, as I add more masses, the transform sensor approach leads to a failing simulation. Taking the position vector directly out of the joint creates a passing simulation, but doesn't account for the full distance between masses.

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

카테고리

Help CenterFile Exchange에서 Assembly에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by