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.

Cylindrical cam / barrel cam / end cam

andrew_andrewmandrew_andrewm Member Posts: 4
Figure 6.5 here https://www.cs.cmu.edu/~rapidproto/mechanisms/chpt6.html

or

http://knowledgestream.co.in/motion-simulation.html

Did a bit of searching to work out if I could do this in OnShape and came up with not much

I would like to draw a sketch on a plane that is the cam profile.  then wrap that plane around a cylinder and the extrude towards the centre of the cylinder.

Found one thing in the forums that was in a similar theme.

https://forum.onshape.com/discussion/comment/1322#Comment_1324

Or am I going about this the wrong way and is there a tool for already doing this ?

Best Answer

Answers

  • andrew_andrewmandrew_andrewm Member Posts: 4
    I was asking about how to build the part. Not about how to assemble or mate other parts.

    I simply can not work out how to get the cam profile slot cut into the outside of a cylinder.
  • Stuart_TodStuart_Tod Member Posts: 56 PRO
    @andrew_andrewm ,

    Looking at the simple barrel cam in the first example you gave, I've done something similar (but with more turns) here: https://cad.onshape.com/documents/4e2b48617bac491892ede2e8/w/fa394ea193d24761b423bb68  (public document, Grooved drum traverse roller)

    I did this with a helix as the swept path. If you open the model and run through each stage of the process using the roll-back bar you can get an idea of how it was done. 

    For a cam profile, you could just change the shape of the swept sketch to suit.

    Stuart

  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    Hmmm - for a non helical barrel cam, I can't just now see a simple workaround. I'm not even sure I could come up with a complicated "brute force" one that was smooth enough to justify the effort. 

    Once we have 3D splines, and can use them to trim (cylindrical, in this case) surfaces,  a workaround will be relatively straightforward.

    Hopefully someone clever will prove me wrong and come up with something elegant using Onshape's existing feature set...
  • Stuart_TodStuart_Tod Member Posts: 56 PRO
    @andrew_troup ,

    Here's a part of a barrel cam I've just worked up - https://cad.onshape.com/documents/d5d2b1350b0348f8b1c4d5af/w/fce5620005a842d18c0c523f

    I was just throwing curves onto the face of the cylinder using Surface extruded from tangent planes to make a sweep path, so it's not a mathematically-worked-out cam curve, just a way of doing it.


  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    edited October 2015
    @andrew_troup ,

    Here's a part of a barrel cam I've just worked up - https://cad.onshape.com/documents/d5d2b1350b0348f8b1c4d5af/w/fce5620005a842d18c0c523f

    I was just throwing curves onto the face of the cylinder using Surface extruded from tangent planes to make a sweep path, so it's not a mathematically-worked-out cam curve, just a way of doing it.


    Stuart_Tod: When I click on your link  I get
    Failed to load document for workspace. Resource does not exist, or you do not have permission to access it

    Did you remember to share it as "Public" ?

  • Stuart_TodStuart_Tod Member Posts: 56 PRO
    @andrew_troup ,

    Apologies - had saved & removed history (space premium!) and failed to make the copy public. 

    Here: https://cad.onshape.com/documents/d5d2b1350b0348f8b1c4d5af/w/fce5620005a842d18c0c523f

    and a new version v2 here: https://cad.onshape.com/documents/96818aab68d044bcad562b21/w/7a4fb0f58dff4bea914b8f1b

    I may make the V2 more complex by making the arcs in sketch 2 & 3 smaller, then creating two more planes through where their projected surfaces touch the face, offset the planes, then join the ends of the original surfaces with two more projected surfaces to use all as sweep path. that should make the sweep more of an 'S' shape.
  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    edited October 2015
    @Stuart_Tod  

    That seems to me a nice method for the case where the required groove is semicircular in profile, and when direct entry of  polar coordinates is not an essential requirement.

  • andrew_andrewmandrew_andrewm Member Posts: 4
    Stuart / Andrew ,

    Thanks both for that.  It is certainly closer to what I want than I was able to work out how.

    Sadly I think because the projection to the cylinder is from a flat plane and not wrapped around the cylinder I won't be able to use that to generate the required cam profile.

    BTW - I did just find a video with a cylindrical cam closer to what I actually want than the previous examples.  It is "The Engineer Guy" showing a parker retractable pen.

    https://www.youtube.com/watch?v=MhVw-MHGv4s

    The other use case people might be familiar with is a cylindrical cam in cheap consumer items like digital cameras and inkjet printers.  They need to save money (or size) by reducing the number of motors.  They have a one way clutch that when the motor is spinning backwards the cam is indexed.  The cam engages a different mechanism at each index point.  The motor is then forward to power the newly engaged mechanism.  Many functions all from one motor.
  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    edited October 2015
    Stuart / Andrew ,

    Thanks both for that.  It is certainly closer to what I want than I was able to work out how.

    Sadly I think because the projection to the cylinder is from a flat plane and not wrapped around the cylinder I won't be able to use that to generate the required cam profile.

    BTW - I did just find a video with a cylindrical cam closer to what I actually want than the previous examples.  It is "The Engineer Guy" showing a parker retractable pen.

    https://www.youtube.com/watch?v=MhVw-MHGv4s

    The other use case people might be familiar with is a cylindrical cam in cheap consumer items like digital cameras and inkjet printers.  They need to save money (or size) by reducing the number of motors.  They have a one way clutch that when the motor is spinning backwards the cam is indexed.  The cam engages a different mechanism at each index point.  The motor is then forward to power the newly engaged mechanism.  Many functions all from one motor.
    Actually my method, unlike Stuart's, would work for wrapping, because it is effectively based on polar coordinates.
    If the polygon in Sketch 1 had 36 sides, you could input coordinates in 10deg increments, or 5deg by snapping to midpoints.

    Having said that, it's unquestionably laborious enough that it would only appeal to someone with a pressing need an Onshape solution for a non-helical barrel cam. The Parker example you now say you want to copy uses multiple teeth of helical axial cam form, so Stuart had already nailed it (conceptually) with his first post.

    My way is a general solution, so it would also work for a helical cam tooth
    (in the Parker analog to a "snail" cam, using two discontinuous surface lofts per tooth)
    but the setup would be tougher than simply using a helix, with no commensurate benefit. 
  • andrew_andrewmandrew_andrewm Member Posts: 4
    oh - wow - sorry Andrew - I missed that your method was different to Stuarts.  That is almost how I am doing it at present in openSCAD.

    However in OpenSCAD I can get a script to type up the code for me and then cut and paste it - so it is not so labour intensive to do one point per 2 degrees of rotation.

    I agree it would be a lot of labour to do with Onshape with no way to automate entries like this to the GUI.

    The cam profile I need is not a straight helix.  It does have varying acceleration and dwells as well as the discontinuity.  So your "general purpose solution" would be the way to go.
  • Stuart_TodStuart_Tod Member Posts: 56 PRO
    @andrew_troup , @andrew_andrewm,

    I've adjusted the groove on example Barrel Cam V3 here, https://cad.onshape.com/documents/6ce2565a7ffa47c48983a1c7/w/ab71b3dcf4554d899abd9103
    It's now using a projected spline curve (using a surface to part command) to give a nicer profile that can be adjusted by manipulating the spline.


  • Stuart_TodStuart_Tod Member Posts: 56 PRO
    End Cam -

    I've spent a bit of time trying to model an End Cam as drawn in the links in the first post of this thread, and this is the nearest I have come: https://cad.onshape.com/documents/2f0b6e6a83da42899ce51fd1/w/3a677a069d914bf7a7f68de7

    If anyone can work out how to fill the semi-circular groove (or stretch a surface between the inner and outer top edges) then I think it's very close to what was wanted.


  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    edited October 2015
    Stuart
    It is very easy to provide two surfaces which blank off the groove visually; it's just a matter of lofting a (blue) surface from the inner to the outer edge of your groove, as shown by the edges highlighted in the graphic, and then doing the same for the other pair of edges to produce the yellow surface.

    Unfortunately there is (AFAIK) currently no way to combine those two surfaces into one. ("Knit", in Solidworks) If this could be done, the two faces of your groove could be selected for "Replace Face", and replaced with that single combined surface, providing the result you seek. (Replace face can replace multiple faces with a single surface, but not with multiple surfaces.)



  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    edited October 2015
    @Stuart_Tod
    BTW, the generalised method I posted above can be used to produce the end cam (as a solid) very easily

    Refer public model:
    https://cad.onshape.com/documents/73ba229cd7204ed4a803e0c3/w/652f1d601aa54b39b177c521/e/8a9e9ff8fbf6492686d07050
    I threw together a quick and dirty demo in part studio 2  starting with a derived copy of the model you posted above, but it could just as easily have been modelled from scratch.

    In my example, the lofted surface was used to extrude "up to", but it could equally have been used to split a full height hollow cylinder.

    Note that I set end conditions for the surface loft as normal to the plane of symmetry, otherwise the result would not have been smooth across that plane.

    Unfortunately Onshape does not (yet) permit lofting a single surface as a closed loop, so we are still stuck with the two unwanted edges crossing that plane.


    Part Studio 1 shows how I added the surfaces shown in my immediately previous post to your model.
  • andrew_troupandrew_troup Member, Mentor Posts: 1,584 ✭✭✭✭✭
    edited October 2015
    Qualifying my statement that "Onshape does not (yet) permit lofting a single surface as a closed loop" that is not strictly true: Lou Gallo has demonstrated to my considerable satisfaction (Thanks, Lou!) that if I provide a closed guide curve, it is already possible to loft a single surface as a closed loop. That surface can loft through either a set of closed profiles (eg ellipses) or open profiles (eg lines, or arcs)

    Which doesn't actually help in this particular case, as my method is effectively a way of getting Onshape to infer a guide curve from the locations of the loft profiles, and the imposition of end conditions
    Onshape has to infer a guide curve because (in the absence of 3D curves) the user is currently unable to provide one in this case.

    Returning to what IS currently possible in Onshape: The closed guide curve can be split if it is in a single sketch, but there seems no Onshape way of picking multiple curves to specify a guide curve (there are several ways to do this in SW: composite curve, convert to 3D sketch curves, or use Selection manager to build the guide curve).
    If this were possible then a single closed loop surface could be lofted to replace the two in my last-post-but-one, picking the two-piece inner and outer curves to act as guide curves, and the straight lines as loft profiles
  • bill_danielsbill_daniels Member Posts: 277 ✭✭✭
    This thread has been an interesting read.  I still have a need to model a cylindrical cam of a different type.  It generally called a "Cylindrical ribbed cam with two followers" or essentially the inverse of the groove in a cylinder.  It's a tricky job which is much more complicated than a simple groove in a cylinder since the cam followers don't contact the "rib" on an axial line and the width of the rib must change depending on the pressure angle.  At a 0 pressure angle the rib width is equal to the distance between the cam follower centers less one follower diameter.  At a 45 degree PA the rib has to be narrower.

    Any tips on how to get this done?

    andrew_troup said:
    Qualifying my statement that "Onshape does not (yet) permit lofting a single surface as a closed loop" that is not strictly true: Lou Gallo has demonstrated to my considerable satisfaction (Thanks, Lou!) that if I provide a closed guide curve, it is already possible to loft a single surface as a closed loop. That surface can loft through either a set of closed profiles (eg ellipses) or open profiles (eg lines, or arcs)

    Which doesn't actually help in this particular case, as my method is effectively a way of getting Onshape to infer a guide curve from the locations of the loft profiles, and the imposition of end conditions
    Onshape has to infer a guide curve because (in the absence of 3D curves) the user is currently unable to provide one in this case.

    Returning to what IS currently possible in Onshape: The closed guide curve can be split if it is in a single sketch, but there seems no Onshape way of picking multiple curves to specify a guide curve (there are several ways to do this in SW: composite curve, convert to 3D sketch curves, or use Selection manager to build the guide curve).
    If this were possible then a single closed loop surface could be lofted to replace the two in my last-post-but-one, picking the two-piece inner and outer curves to act as guide curves, and the straight lines as loft profiles

Sign In or Register to comment.