Why are my SimMechanics joints breaking apart in my model?

3 次查看(过去 30 天)
I am trying to create a model of a piston with translational motion in the y-direction that is attached to three beams and mounted at a fixed point outside of the system (picture below).
I used: (1.) weld joint to attach the piston to beam 1 (2.) custom joint (rotational about z-axis and translational along the x-axis) to attach beam 1 to beam 2 (3.) planar joint (translational in xy-plane and rotational about z-axis) to attach beam 2 to 3 (4.) revolute joint (rotational about z-axis) to attach beam 3 to the point outside of my system
I also added a joint actuator at the planar joint and actuated it with motion. When I run the simulation my system falls apart between beam 1 and beam 2 (at the custom joint) and between beam 2 and beam 3 (at the planar joint). How can I keep the joints attached?
  2 个评论
Steve Miller
Steve Miller 2016-5-18
Hi Ashley -- I looked at your model. I believe you should use: 1. Prismatic Joint between Piston and Ground 2. Revolute Joint between Piston and Beam1 3. Revolute Joint between Beam1 and Beam2 4. Revolute Joint between Beam2 and Beam3 5. Revolute Joint between Beam3 and Ground
However, a more important Point is that you should be using Second Generation Technology. The model you uploaded is using First Generation Technology. Type in >> sm_four_bar at the MATLAB prompt to see an example that is pretty close to what you are modeling. I would build it for you but it appears you are using R2015a and I do not have that installed on my machine.
--Steve
Ashley Raby
Ashley Raby 2016-5-19
Hello Steve, thank you for your reply. Unfortunately I am working with R2011a, so I don't have access to any second generation technology at this point. I don't believe that was created until one of the 2012 updates. Which also means that I can't view the four bar example you have recommended.
Also, I tried building it the way you suggested the first time around and I ran into a couple of problems. My main concern was that I couldn't get the piston to move along the y-axis. It would only move along the x-axis. Maybe this picture will better clarify the type of movement I am aiming for. Here y is pointed up and down, x from left to right and z is into and out of the screen.

请先登录,再进行评论。

采纳的回答

Mehmet Berk AZDURAL
Your joints are overdefined.This Mechanism's degree of freedom must be one.I guess you thought motion allowance instead of joints degrees of freedom.I prepared diagram like this ground-Beam3:Revolute,Beam3-Beam2:Revolute,Beam2-Beam1:Revolute,Beam1-Piston:weld,Piston-Ground:Prismatic.Weld is not kinematic structure by the way.You may assume like one body(Beam1-Piston).If I have mistakes at English sorry about it.

更多回答(0 个)

类别

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