Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:
  1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
  2. Need support? Ask a question to our Community Support category.
  3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
  4. Be respectful, on topic and if you see a problem, Flag it.

If you would like to contact our Community Manager personally, feel free to send a private message or an email.

Kinematic Synthesis - Points with X,Y coordinates

mahmoud_2mahmoud_2 Member Posts: 24 ✭✭
I just watched the robust modelling tutorial in OnS video library.
I love that we already have Layout capability built right into the part studio.
However I think one thing is really missing which is inserting points using X,Y coordinates.
When I do kinematic synthesises of motion usually the output is X,Y coordinates of the O,A,B,C,D of the four-bar linkage to achieve the desired motion. Of course it's great to have layout to confirm motion before building, which is how I use it in SW.
But I couldn't find any way to insert points using X,Y coordinates, Correct me if there is, and I think it's really vital.

Secondly and most importantly,
How about adding Kinematic synthesis capability to Ons?
This is one of the things I NEVER found in any famous CAD system, as far as I know.
Path generation, 3 points synthesis and 5 point synthesis are usually calculated numerically in MatLab or Mathematica. The application used to do this are usually close-sourced and scarcely available on-line. You can only find research papers when you google "four-bar linkages path generation using generic algorithms" for example.

NOW these research paper highlight all the math intenstive stuff that takes place in the calculation itself. HOWEVER, I RARELY, almost never, found an integrated solution in CAD systems to streamline the whole "Synthesis to Design" Process. In fact, I only found one Mathematica Notebook that I'm using now and like I highlighted the output is usually point X,Y coordinates.

NOW my point is, if we add this integrated streamlined capability to OnS we can take the market by surprise!! To me as a maker, that would be the best thing OnS would do. To get me rid of all the Mathematica licence worries and copying X,Y coordinates and all that stuff. In addition it will make OnS truly special!

Comments

  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    edited April 2015
    @Mahmoud
    This has been touched on recently, in this thread
    https://forum.onshape.com/discussion/614/a-function-to-aid-the-analysis-of-free-body-diagrams-and-kinematics#latest

    I understand Dassault have an adjunct companion product for Solidworks which does pretty much what you seek. It's about the same price as Solidworks, IIRC. I personally think that capability would be a big reach for a single product with Onshape's business model.
  • mahmoud_2mahmoud_2 Member Posts: 24 ✭✭
    @Andrew_Troup,

    I took a look at the linked discussion. I believe he is talking about static/dynamic force analysis. My topic here is Kinematic Synthesis which is much higher in skills and complexity. I too agree it would be a HUGE addition to the product. Yet, that IS my point. If OnS does it, it would shake the market rules.


    Can you clarify more about that Dessault product? name and link? I tried Dessault IIRC but couldn't reach a thing...

  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    Sorry, Mahmoud, I guess "path generation" and "kinematic synthesis" don't mean what I thought they meant. But I'm probably not alone in that. I do remember, now, once diving into some books on how to work backwards from a desired path to synthesise the necessary linkage, but once Solidworks came on the scene I found it much easier to use the considerable body of existing documented linkages and resulting paths, along with a bit of experience, to select or intuit a linkage layout with the desired character, and then fine tune it (and derive the velocity ratios) using a tool like Solidworks to work forwards from linkage to path. (Actually, I thoroughly enjoy that process, and would/will miss it when some equivalent to 'goal seeking' demotes it to a trivial exercise) 

    I realise this will not cut the mustard for specialised highly kinematic contexts, like a high-speed industrial multi-purpose robot or manipulator, but given that there does not seem to be enough interest in the topic to even generate an entry in wikipedia, are you sure this would bring hordes stampeding to the Onshape website to plonk down their $100 ... or, if they preferred, go with the free option?

    But heck, if you can successfully pitch kinematic synthesis to John McEleney, all power to you!
  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    BTW, judging by a bunch other posts on this forum, it seems likely the Onshape API will be made public at some time in the not too distant future, at which time third-party add-ons for popular things like point entry from external lists will presumably spring into existence. And maybe someone will work out a way to "bolt on" a kinematic synthesizer.

    I personally favour Onshape continuing towards their apparent vision of a strong core modeller, remaining as simple and robust as is consistent with providing highly affordable mainstream MCAD capabilies for the masses.
  • mahmoud_2mahmoud_2 Member Posts: 24 ✭✭
    @Andrew_Troup
    Well I really beleive that creating points with X,Y coordinates has to be native in the app as to have it always there as an option when you create a point. That's just me anyway, let's see what the OnS guys have to say...

    I know a lot of people don't know it. I know also it's a VERY niche market. To my knowledge usually such tools are developed by companies and are kept for in house use only. Yet, that's exactly where I see a chance to make this more accessible and attract all the users to the magic of OnS. I study mechanical engineering and I know most courses, like mine, don't teach synthesis. But for the courses that actually do, many in the US, OnS will become the standard in NO TIME! Since most of these courses have to develop their own tools to teach students.

    Just to make sure all of us are on the same page, You can watch this video from Disney Research Lab. They are using a database of paths and image recognition to create linkages, an automated way of what @Andrew_Troup just mentioned. I'm NOT suggesting we have like the same thing on OnS, rather a more systematic mathematical approach to the problem.
  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,068 PRO
    Mahmoud the disney research lab video is amazing, thanks for sharing. Do you know how to solve these equations? Seems like putting a point at x & y is trivial.


  • mahmoud_2mahmoud_2 Member Posts: 24 ✭✭
    @billy I know the mathematical concepts involved; Mathematical Non-Linear Optimization and simple geometry to formulate the equations. I know the concepts but the actual MatLab code I'm not very familiar with.

    It's true that X,Y points are extremely trivial, yet it's the only way to use the outcome of such Matlab or Mathematica codes.
    Please note that the Disney research is doing it slightly different where they built a database of all the possible paths generated by a four-bar mechanism and they use AI to match the input with a chimera of the database.
  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    I'd be very happy to agree that x,y (and more importantly, x,y,x) input of reference points should become core functionality.

    First, though, we need 3D sketches.... At first blush, I think that's probably the best place for such points to live. (It would make them much easier to organise than if they were inserted into universal model space, like Sldwks reference points)

    Since it wouldn't matter if all the z coords were the same, a 3D sketch would nicely handle a 2D coordinate set... reducing the need for (complicating) options.
  • mahmoud_2mahmoud_2 Member Posts: 24 ✭✭
    @Andrew_Troup I agree completely.... I wanted to draw a pipe the other day and found it so hard, rather impossible to do, with 2D sketches,....

    I'm waiting for someone from OnS to tell us what they have in mind.
    YES you, I can see you reading this! :smiley: 
  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,068 PRO
    I have no need for what you are asking for, but I want it. If you ever get it working let me know.

    BTW, all sketches in SW are 3D. One never exposed "Z" to the user. As far as onshape or SW are concerned, they'll transform your working plane from the world coordinate but after that, you're on your own.

    Most of these link motions seem to be planar. CAD could manage these planes for you and the locations for the various link motion profiles. Tying 3D bodies to your vectors is somewhat trivial. I did see some 3D motions in a few of the examples. You'd probably want these 3d motions to be tied to a transformation so you could locate these paths relative to your other paths. So I think it's safe to say that everything will be transformed to it's location.

    My gut feeling is that the math CAD offers is only to locate your math. The biggest task at hand will still be to solve Mathematical Non-Linear Optimization yourself and have Onshape create a visual output of your math.

    I don't work for Onshape maybe they should answer this, I'm just a CAD enthusiast. Good luck, if you get it running please let me know. I'd definitely create some 3D spiders that could walk across my desk. 





  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,068 PRO
    Currently in OS, to create a 3D vector, you have to use 2 sketches. Think compound sketches.



    You guys can't judge OS on what it exposes to the users as you won't be working at a users level. The math these guys use is pure linear algebra that you'll find in any math book.

    Would it be a good place to create your world? Yes.


  • mahmoud_2mahmoud_2 Member Posts: 24 ✭✭
    @billy
    I want OnS to solve No-Linear Mathematical Optimization and output the results graphically as well. THAT is what no stock CAD system can do on its own. Most of the mechanisms I want to do are planar so it's okay, yet there is 3D mechanisms as well. Called Spatial Mechanisms that are harder to solve and synthesis.

    Quite honestly, I couldn't get a thing from your second comment. I see you made a sketch at an angle between two planes. YET, that's not 3D in a sense! Cuz a 3D sketch in SW for example will be able to route a pipe in space! in one sketch!

    Now what's missing now and I really need is the ability to create points with X,Y inputs. That way I can perform my Mathematical Optimization elsewhere and use OnS to create the linkages.
  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,068 PRO
    The compound sketch results in a 3D vector. It's a crappy way to do it and hard to understand. Since there are no 3D sketches, it's the best we can do for now.

    Not sure OS will write your non-linear optimizations as they need to finish a mountain of code first. They should answer your request.

    Wait for the api, you'll be able to display all your linkages & bodies. To promote OS, and I don't work for them, it's the first 3D cloud based graphics engine available. This is what gets me excited.



  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,068 PRO
    Here's an example for compound sketches. Let's say I trying to represent the wire coming out of a resistor. To add flexibility to the wire, I've added multiple surface planes defined by extruded sketches. By controlling the vectors that created the extruded surface planes and manipulating the vectors that lie on these planes, I can send a trajectory basically anywhere I want.





    This is a 3D trajectory defined with multiple surface planes & vectors on those surface planes.




    Sweep a circle along this trajectory:


    You can see the resistor lead control needed to build this assembly. I can put the wire leads any where without a 3D sketch using multiple compound sketches:



    Don't get me wrong, I'd rather have 1 3D sketch vs. all these compound 2d sketches.




  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    @billy : Good skills, I reckon. Takes me back to manual drafting, as far as exacting rigour goes. Definitely not for the faint hearted...

    I couldn't resist the thought experiment of extending your method to the provision of curves (fillets) at the changes of direction. I'm thinking it would not be difficult in the case where the sketch lines either side of a change had been produced on the same surface plane, but  where this is not the case, I'm guessing you'd have to incorporate a duplicate line which DID lie on the same plane, fillet to that, then switch it to "construction" (it could be deleted, I suppose, but that would leave the endpoint of the fillet unconstrained, and make later edits more laborious)

    And I guess it goes without saying the resulting sweep path is still not fully 3D, but a succession of 2D segments. In other words, this workaround cannot represent a path whose segments do not lie in single planes, and it seems to me that will have to wait for proper 3D sketches with 3D splines. Is this how you see it?
  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,068 PRO
    This is a crappy approach but it worked. I'd rather have a 3D sketch.



  • kesava_prasad_t_dkesava_prasad_t_d OS Professional Posts: 9 ✭✭
    mahmoud_2

    Your query on design/linkage synthesis can be done with equations if a mechanism is linear. For example if you need to generate a 4 bar mechanism from a curve it is possible using what is known as coupler curves. Give x, y coordinates of points on a curve and using an equation you can synthesize the four bar linkage dimensions to achieve the given curve. This however can be done in Solidworks by linking it to a an addin available for MAtlab. This MAtlab addin can get and send data to Solidworks. So one can get geometry data use it in Matlab for further processing and send it back to Solidworks. I was wondering something like that could be done with Onshape.

    How to connect Onshape to a desktop app? Any ideas?
  • mahmoud_2mahmoud_2 Member Posts: 24 ✭✭
    mahmoud_2

    Your query on design/linkage synthesis can be done with equations if a mechanism is linear. For example if you need to generate a 4 bar mechanism from a curve it is possible using what is known as coupler curves. Give x, y coordinates of points on a curve and using an equation you can synthesize the four bar linkage dimensions to achieve the given curve. This however can be done in Solidworks by linking it to a an addin available for MAtlab. This MAtlab addin can get and send data to Solidworks. So one can get geometry data use it in Matlab for further processing and send it back to Solidworks. I was wondering something like that could be done with Onshape.

    How to connect Onshape to a desktop app? Any ideas?
    Mr. Prasad,
    Any chance that it's you who wrote this research paper on the same topic? http://www.sciencedirect.com/science/article/pii/S0094114X13001250 

    If I'm not mistaken we have been in touch for a while via email... I've been interested in this topic forever. Your work has sparked me to learn more and more. I'm learning Mathematica for now. in hope to be able to use your methods and other methods to perform synthesis.

    I've summerized most of what I know so far a while back on Quora... http://www.quora.com/What-are-some-good-software-that-can-be-easily-used-to-do-synthesis-in-kinematics-of-machines-and-to-design-a-mechanism-for-a-2nd-year-mechanical-student/answer/Mahmoud-Shehata-5 


  • micah_mcmahan260micah_mcmahan260 Member Posts: 1
    So I'll give this a long time bump as I'm looking for a way to import coordinate points, not for kinematic reasons but for chassis/frame data points. I'll then take those and load them into Ansys for some FEA data.
    I've used this in Creo (my last 6000 hours or so of CAD) and Solidworks back in college. An idea of how easy Solidworks makes it.
    https://www.youtube.com/watch?v=nN_00HcEPls

Sign In or Register to comment.