Parametrics get locked up

 I was attempting to create a parametric drawing for a design for a straight line linkage.  It is Peaucellier–Lipkin linkage from the 1800's, designed to allow steam engine pistons to be kept straight).  You move the linkage by editing the blue angle constraint. However it regularly gets locked up. 

It may be that I entered a dimension that cannot be solved. But, there is no way of knowing that. There is no error message, or other indication that the drawing is invalid. I would hate to base a design on an incorrect drawing.

Thanks for any advice.

-Joe

Comments

  •  I should add some other tests that I did.

    1. Regen has no effect.
    2. I checked to see if the invalid dimension is accepted, and the value displayed on the dimensional constraint, and it is.  
    3. Other invalid constraints such as "equal" are also accepted and displayed.

    -Joe
  •  I couldn't get the constrains to work, but I also couldn't find the angle constraint for the blue line.  When i tried to stretch the endpoint of the blue line everything sort of folded up onto itself.  Looks like a neat project, old valve gear is definitely a good test bed for the constraints.  I wish when it came to constraints that if you were to grip edit, move, rotate, etc. that the constraints applied to the object would limit what you could do to the object - that way to test a linkage one could just grab a grip and move the mouse about and the software based on the constraints limits the movements of the entity that you are grip editing.
  • If you use the DM... range of commands like e.g. DMMOVE, DMROTATE, the constraints are applied dynamically
  •  I couldn't get the constrains to work, but I also couldn't find the angle constraint for the blue line. 

    The blue angle constraint controls the angle of the upper black linkage.  That is the only angular constraint. It is added as a way to move the mechanism, rather that trying to manually move things. It could be deleted, and the system should theoretically work. But, in actual practice, when I manually move things, I tended to get obviously messed-up results.

    I realize part of the problem with this design, is that the last two red links have two possible locations. They can be where they are shown initially  but the can also be assembled so they overlap the other two red links. So, there are two theoretical solutions that can only be prevented by limiting the range of motion.

    -Joe
  • Joe, you are right: the linkage only allows for a certain range of motion. Ang1 must be between 50 and 130 degrees. Angles beyond this range are not possible because the blue link would then have to stretch. I agree that BC does not give proper feedback if ang1 is set to an impossible value. If you set ang1 to 45 degrees
    the dimension text is changed to the '45', after an inordinately long calculation time, but the angle does not at all! I think this is definitely a bug.

    What you can do, apart from taking note of the calculation time, is add a normal angular dimension to the 'ang1 lines'. That way you will get visual confirmation of the actual ang1 value.

  • It is critical that a CAD program create accurate drawings. When it shows inaccurate data, and it is not discovered until after manufacturing has started, it can be EXTREMELY expensive to a company.

    This recent bug about a locked up parametric pretty much makes all parametrics useless. On a simple drawing, you might know when a parameter is not possible.  But, on my linkage example, it is complex enough that the user won't know what is an acceptable driving dimension value.  When it apparently accepts an invalid value, and does not generate an error, the user is left with the proper assumption that the design is valid.

    This is the sort of thing that kept me from upgrading to v15.  So many of the advanced features in v14 are not reliable, and it takes a lot of time to find out about them, and learn to avoid them. 

    Please Bricsys, give top priority to preventing, or at least an error or warning, about commands that can results in incorrect data on the drawings.

    -Joe
  •  Hi All,

    I created a model of this linkage mechanism, but I prefer 3D components instead of lines. Maybe because 3D constraints allows to try dynamic kinematic analysis.
    You can or dmRotate one of the components or specify an Angular constraint (which becomes invalid if the other constraints will conflict).

    linkage.zip

  • Mr. Tatarnikov, thank you for that drawing.  I had become frustrated with 3D modeling, and 2D constraints early on, and had not really investigated the 3D constraints.

    Is there a way to use the mechanical browser to see just the constraints for a single element?  I could not find one.  Also, I could not find a way to see the dimensional constraints, so that I could just double-click to edit them.

    It would seem that you must browse the long list of constraints to find the ones you use to modify the model.  But, I suspect that I am just overlooking an option.

    Finally, the 3D constraints suffer from the same problem as the 2D ones.  A dimension or angle that is not physically possible will be accepted and the constraint will show that value without any indication that it is not really what is being used to drive the model.

    -Joe
  • Joe, to see just a component constraints, you can group them "by entity" (the first button on top of the mechanical browser). 
    For the moment the only way to edit a dimensional constraint - is to find it in mechanical browser and specify its value in the properties section.

    And about diagnostic: please give me an example of accepted wrong (impossible) value of the angle on my model.

    linkage_with_angle.zip

  •  On the 2D linkage I posted on my first message, the acceptable angles are between 50 and 130 degrees.  On the 3D linkage, is between 50 and 140 deg. 

    The acceptable range is actually a little bit more, but at some point your model toggles, so that the upper bar I am using for the angular constraint becomes the lower bar.  This is valid, and a real-world model may do the same thing if it is permitted to reach the point where the long linkages become parallel.

    Also, note that on this 3D model, when you create an associative dimension, the dimensions do not change when the model moves.

    -Joe
This discussion has been closed.