Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- 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.
Best practice to hide tabs/parts for imported parts to prevent insertion.
John_Toebes_FTC2901
Member Posts: 9 EDU
For FIRST Tech Challenge we have been importing parts from the major robotics vendors (ServoCity, Pitsco, Rev Robotics, AndyMark and GoBilda). As you would expect, many of these parts are actually assemblies (for example a simple Ball bearing - https://cad.onshape.com/documents/b46dc8c82cf451ddfbcfd8e2/w/3699555b377dcdb59d6f94ac/e/3705a44b09fe80cac74bf70f).
Typically each of these documents has three tabs:
Am I missing some obvious step?
Thanks!
Typically each of these documents has three tabs:
- The step file that was imported,
- the parts from the step file, and
- the actual assembly.
Am I missing some obvious step?
Thanks!
0
Answers
HWM-Water Ltd
I am not sure I'm not missing something either...but my understanding is:
- You are successfully importing files that result in Assemblies that you want to use in other Assemblies (in other documents)
- your users are (erroneously) finding Part Studios and trying to insert them to use as Reference Geometry. However, because these are a mix of surfaces and solids (and the elements are probably all located at the origin) these are not usable as reference geometry.
Unless I'm not understanding your situation, I think you could say to your teams: "Use Advanced Search on the Document Page, and only insert Assemblies that you find".You can use Advanced search on the Document Page to find only Assemblies:
...and make sure when inserting these into your working Assemblies, that only Assemblies are inserted:
However, this only works if:
- the reference assemblies are inserted into Assemblies (not Part Studios)
- your members are doing "top-down" in-context design work inside Assemblies, rather than importing the reference geometry into Part Studios and referencing them there. Here's a link to Onshape's course on Managed In-Context Design.
I don't know if this works for your team members or not - but it is the only way to take advantage of the imperfect imported assemblies---which probably have a mix of Solid and Surface bodies, which makes it impossible to use a Boolean feature to "join" them into a single part body.If this in-context, in assembly workflow can work for you, you may also choose to rename the Part Studios (that result from the import of the STEP files) so they don't show up in search results...and name the Assembly so that they do show up (only). You won't lose the Part Studios even if they're named "import" because they live in the Document with the STEP and Assembly tabs.
Hopefully some of this might help!
Romeo
In the case of ServoCity, the number of parts is in the thousands and changing daily. Rev Robotics only has a couple hundred, but they are also adding all the time.
Think along the lines of creating a curated version of all the McMaster parts. In this case it is for FIRST Tech Challenge robotics and we have potentially thousands of teams modeling their robots. For the past many years, they have been using SolidWorks and Creo, but the power of collaboration in OnShape is causing quite a few to switch. I'm trying to avoid having every team import all the parts from the robot part vendors and have many duplicated in the OnShape public library.
That being said, one idea that comes out of this is for every part which is an assembly, create a second document of just the assembly and hide the first document that has the parts that make up the assembly.
There are thousands of teams participating in FIRST Tech Challenge and for the past many years they have been using SolidWorks and PTC Creo to design their robots. Most of that design involves assembling parts that are available from a number of vendors including Pitsco, Rev Robotics, ServoCity and GoBilda. Typically with SolidWorks/PTC Creo, the teams download the 3D models of the components from the vendor websites and then use those parts locally to design their robots.
Some of the components are simple parts such as U-Channels, Plates, and Screws. However, some of them are actual assemblies such as Bearings, Hub Clamps, Motors, Servos and electronic components. A good example is the Adjustable Angle bracket (https://www.pitsco.com/sharedimages/resources/tetrix/41790_TXM-Adjustable%20Angle%20Corner%20Bracket.STEP) which comes down as a part and the Axle Hub 39172 (https://www.pitsco.com/sharedimages/resources/tetrix/39172_TXM-Axle%20Hub%20With%20Set%20Screw.STEP ) which comes down as an assembly built up of two parts.
When a student is building their robot, they will have an assembly open for their robot and then need to insert an existing part. Often they know the part number so they select the insert dialog, click on Other Documents and type in 39172, they are presented with a lot of choices as you can see below. If they click on the first one, the default is that OnShape presents them with the Part Studios by default which even looks like most of the part as you can see in the middle. However, they need to remember to click on Assemblies to get to the correct part which has the proper mates on it.
Now in the case of the Axle Hub, it probably works ok without the set screw in the model, but there are plenty of other components which are slightly more complicated.
Does this explain the problem a bit more?
Note that one thing that I have done to simplify getting to more curated components is to create a shared folder with the components organized the same way that they are on the websites so that the teams can search or navigate by vendor/part category. It helps getting to the right components quickly but doesn't address the problem of components which are actually assemblies.
Any insight would be greatly appreciated.
-- John Toebes
Do you think that will cause trouble for them?
One advantage of this approach too, is that (someone...you?) can import the assemblies, and add any useful Mate Connectors, motion, Groups etc. That way, the Teams can take advantage of some of the Assembly features.
I think your idea of putting the assemblies (only) in a special Directory that they will search in will really help too.
Good luck!
Which leaves me with the look for an assembly problem where I got started with this question. I'm trying to find a way to hide the parts so that they don't appear in the insert dialog.
By the way, the challenge with the directory is that there is no way to make a directory public, but we are doing it by adding them to a team which has access to the folder and that seems to work well.
The only way is to break things down into documents.
you can only see "everything" in your current document, or "everything" in the linked document. If you want something hidden, put those parts in a new document..
But if they are searching from the Onshape home screen, then the only way will be to give a indicator in the name, such as a prefix for all usable parts, maybe a "_" so all your parts have no prefixes unless it is a single body like a screw, still give it the "_" to re-assure the person, only insert parts/assemblies with a "_".
But that is just dumb... Educate them on the differences between assemblies and part studios. They should know if something is an assembly or not, if they know it well enough to have its part number. which means they know if it has moving parts, or is a solid single part.. etc.. If you add an pneumatic cylinder, you should know to look in assemblies First. if you add an angle bracket, then it's a part.
I assume, somewhere, someone (the person who took the time to import the parts) has given them a catalog of parts/part numbers, indicate whether or not it is an assembly there.
Furthermore IF your assemblies do not require movement, such as bearings, or that set-screw in your example... then delete the assembly and boolean-union everything into a single part. You never need an assembled bearing with motion (unless you are making a super fancy, over the top, overkill animation). a revolute mate works regardless. In fact too much junk to move around just slows everything down.
The issue on education is a bit more complicated. Some of the parts are obvious to be assemblies.
But not always. When you are inserting a part.. you don't always know in advance that it may be an assembly. As you can see in the example of the Hub, it isn't obvious that it would be an assembly (unless you think about the set screw of course). What is worse is that some of the clamping hubs include a screw (hence an assembly) and some of them don't so a person inserting the part has to actually know to click on the assembly tab as there is no indication that there is or isn't an assembly.
Right now what I am hearing about best possible practices are:
- Any component with no moving elements should be a single part
- Put the parts for assemblies in a separate document that is not visible to people.
Anything else?You can see more information here:https://www.chiefdelphi.com/t/pic-introducing-mkcad-the-onshape-frc-parts-library/161295
Here is the link to our marketing page for FIRST: https://www.onshape.com/edu/frc
If you look at the public listing: https://cad.onshape.com/documents?nodeId=3&resourceType=filter&column=promotedAt&order=desc&viewMode=0&q=mkcad
You will notice that assemblies have been imported in part studios and combined to a single part. There is an option when importing to do this. An example of this is to look at the MKCad - Motors document. The advantage of this public structure is that any team or user can go to the public docs section of the insert dialog and type in the standard name that they are looking for, and insert right away.
I'd be happy to dive deeper into this subject as I help companies set up their organizational structure for the re-usability of parts within Onshape.
Twitter: @bradleysauln