# Could the value of Spring Stiffness in the Revolute joint block (Simscape) be variable?

5 次查看（过去 30 天）
FENGPEI YUAN 2018-5-16

I'm trying to build an inverse dynamic model, where the * spring stiffness* is a variable value, or more specifically, a function of the input, the motion trajectory. How should I implement for this? Could someone give me any related examples or information? Thanks a lot!

### 采纳的回答

Nicolas Schmit 2018-5-21
The stiffness parameter of the revolute joint is a constant. You cannot change it in real time.
Here is how you can implement a variable stiffness:
1. In the actuation tab, set the torque to "Provided by Input" and the motion to "Automatically Computed".
2. In the sensing tab, activate the Position sensing.
3. Create a feedback loop from the position sensing output to the torque input.
4. In your feedback loop, place a function which calculates a torque as a function of the position. The derivative of your function with respect to the position will be the stiffness at a given time.
##### 4 个评论显示 2更早的评论隐藏 2更早的评论
FENGPEI YUAN 2018-5-22
I got your idea...but in my model, especially the inverse model, I need to actuate my mechanical system by Motion Input, where the spring stiffness is still dynamic. Therefore, I think of one solution, as shown in the attached picture... Moreover, if we monitor the actuator torque of the Revolute joint, I think it will work...
Catalina 2023-10-10
I am facing the problem of variable stiffness and following the comment thread I would like to try a model using the block called "Torque_stiffness", however, it is not found or I do not relate it to the blocks in the libraries available in matlab R2022b. Can you provide me with the library or the method you used to create the block?

### 类别

Help CenterFile Exchange 中查找有关 Multibody Dynamics 的更多信息

### Community Treasure Hunt

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

Start Hunting!

Translated by