4 ms·
Hey, I created CadHub. I'm really bullish on software driven CAD, myself and other CadHub volunteers talk regularly about a future in which Mechanical Engineer
by irevdev 5y ago
Hey, I created CadHub.
I'm really bullish on software driven CAD, myself and other CadHub volunteers talk regularly about a future in which Mechanical Engineering and design is very similar to software engineering.
I'll be the first person it admit that some of the current CodeCAD tools aren't production ready, OpenSCAD for example I can't imagine being used by mechanical engineers. So the idea is mostly about unifying the community with a website dedicated to this paradigm, and if we're lucky we play a small role in promoting more development and better tools in the future.
Some of the reasons it's got potential:
- 3d-diffs on pull requests [1]
- Automated FEM, CFD etc simulations akin to CI/CD [2]
- PLM managed through git
- plus git in general is such a good way for teams to work together
[1] https://learn.cadhub.xyz/blog/3d-diffs/ https://learn.cadhub.xyz/blog/3d-diffs/
[2] https://learn.cadhub.xyz/blog/testing-code-cad/ https://learn.cadhub.xyz/blog/testing-code-cad/
- TaylorAlexander 5y agoHowdy! Well we absolutely need more open source CAD tools. That said as a mechanical engineer for going on two decades now, I really get no value from this kind of mechanical design. I grew up on Solidworks and now use OnShape. That kind of physical modeling is very important. Being able to click on a face and sketch some geometry and then extrude it really feels like the right modality for me. I’d really love to see more investment in that kind of parametric visual CAD. EDIT: An example of one of my recent projects: https://twitter.com/TLAlexander/status/1450001567088713730 https://twitter.com/TLAlexander/status/1450001567088713730
- irevdev 5y ago"why not both" Direct manipulation/GUI will always be faster at producing content. It worth exploring how much the two can we wedded with code synthesis. I get that code synthesis attempts normally produce poor quality code, but maybe a hybrid work flow could work between using the GUI and fixing up code. It's a shame that the current CodeCAD tools have very little interaction with he part viewer. https://www.youtube.com/watch?t=290&v=jC2_O5Jh_Rg&feature=youtu.be https://www.youtube.com/watch?t=290&v=jC2_O5Jh_Rg&feature=yo... https://www.youtube.com/watch?v=xF8arSFKI1k https://www.youtube.com/watch?v=xF8arSFKI1k
- amenghra 5y agoOnshape is a good combination of visual + you can set exact values for things. I’m always happy to try new tools, but I tend to fallback to Blender for artsy stuff and Onshape for more precise parts. I suck at 3d modeling, so I evaluate tools from a “how much value can a noob get” point of view.
- TaylorAlexander 5y agoThat is definitely an important user perspective. My angle is that I am a professional robotics engineer as well as an open source evangelist. I design a lot of open source CAD and I’d really like it if the CAD package itself was open source as it is important to me to have a community of users who fork my designs. So far open source CAD does not feel adequate as a design tool for me. FreeCAD is conceptually the closest but it seems like the project needs more investment. I recently tried it again and it seems extremely simple compared to Solidworks or Onshape. Honestly CAD is very complex software and is not well suited to a single engineer working in their hobby time. I think a huge reason Blender has been successful is that they built a sustainable crowd funding system. They currently pull in $166k each month with that system: https://fund.blender.org/ https://fund.blender.org/ I am pleased to see also Godot engine (a similar type of tool) pulling in over $7k/month (last I checked) on Patreon. Anyway there is a “business model” for open source projects even if they don’t sell anything. Call it a funding model. I think open source projects need to get a handle on that for anything that exceeds a very small team. I am trying to build this kind of sustainable funding for my own open source farming robot (link in profile) and I think we’re going to go with Open Collective at least as a front end. https://opencollective.com/ https://opencollective.com/ For fiscal hosting we’ve applied to the Open Collective Foundation and the Software Freedom Conservancy. https://sfconservancy.org/ https://sfconservancy.org/ I think open source CAD really needs a funding plan like this. It’s a very large software project and we’ve seen how Blender and Godot are able to actually get traction and produce a compelling program with resources like that.
- irevdev 5y agoSome really interesting thoughts in funding, thankyou. The gotdot and blender examples useful.
- mywittyname 5y agoFrom what I've seen, most programmatic integrations comes on the CAE/simulation side of the house. Faces of the part are given specific names/metadata by the designer and a script is used to automatically apply the loads/constraints and run it through the simulation.
- OJFord 5y agoMy background is software, I do (mechanical) CAD just for hobby stuff, but I agree about the GUI being a convenient way of working on it. What I desparately want though is an on-disk format that's plaintext, makes sense, and results in reasonable diffs so that I can use git for version control. I just don't understand, being familiar with git, how people can work with 'save and mark new version' style 'version control' that's so prevalent among tools that have anything at all.
- rjsw 5y agoSTEP exchange files are plaintext but there isn't any guarantee that the position of stuff is preserved after making a change.
- dotancohen 5y agoCan STEP files be parsed to order via e.g. (I know nothing about them) sorting some tree? Are there any e.g. hashes that change as content is modified? In software we solved this with code style guides and later code formatting tools. I would be surprised if e.g. a Python script could not format the STEP files to a "canonical" representation before committing the file to version control.
- rjsw 5y agoI don't think there is an easy way to process a file to make it conform to a certain style, take a look at an example [1] if you want. [1] https://files.pine64.org/doc/datasheet/pinephone/PinePhone%20Back%20Cover.stp https://files.pine64.org/doc/datasheet/pinephone/PinePhone%2...
- TaylorAlexander 5y agoSTEP files are like compiled binaries. Fine for distribution if you don't want to make changes to the file. But for a parametric CAD package like Solidworks or Onshape, much more information is saved. A parametric CAD file stores each step done to the part in order. This allows you to go back in time, change one feature, and re-apply the subsequent changes to the updated file. That's like source code to the part.
- app4soft 5y ago> I grew up on Solidworks and now use OnShape... I’d really love to see more investment in that kind of parametric visual CAD. Has You tried SolveSpace app? [0] https://solvespace.com https://solvespace.com [1] https://git.io/SolveSpace3x https://git.io/SolveSpace3x (latest nightly builds + various useful resources)
- TaylorAlexander 5y agoJust loaded the latest snap. I remember seeing this a few years ago. I'll have to make sense of the UI but I extruded a cylinder and it looks like the program has promise. I'm wondering if it does assemblies yet as that is key. EDIT: I see you linked some tutorials so I will have to check those out!
- elcritch 5y agoThat looks handy! And the project appears relatively active. Actually its a bit odd to not have come across this before.
- dotancohen 5y ago> Howdy! Well we absolutely need more open source CAD tools. Please, no. We need one (or two for competition) really good open source solid modeling CAD tools with parametric and other interfaces. We do not need a dozen competing tools with varying feature overlap that need to be meticulously vetted before committing to one. Not to mention wasted dev time as each tool implements similar features in different ways, wasting very limited open source dev time. Often I feel like FreeCAD is "getting there" but it's nowhere near "there" yet.
- RobKohr 5y agoNah, keep reinventing the wheel for your own particular tastes and perspective. This is how open source evolves. Lots of little experiments that eventually get rolled together.
- thedavidprice 5y ago> So the idea is mostly about unifying the community with a website dedicated to this paradigm, and if we're lucky we play a small role in promoting more development and better tools in the future. Yes, please!
- irevdev 5y agothe link for this post takes you to a OpenSCAD model, worth noting there are integrations it CadQuery and JSCAD too. https://cadhub.xyz/ https://cadhub.xyz/
- branko_d 5y ago> PLM managed through git I'm sorry but this is probably not a good idea. A typical PDM/PLM implements many things that don't exist or are not in the spirit of git, including but not limited to: - Per-object security, lifecycle-dependent security (e.g. an object that is Work in Progress may be editable, but it becomes read-only when Released), groups and roles (per-object groups), LDAP / Active Directory integration, ITAR compliance. - Object lifecycle (Work in Progress / Released / Obsolete etc.), driven by workflow graph that can be adjusted for the specific customer. Ability for one or more engineers to vote to accept or reject a transition from one lifecycle state to another. - Revisioning: automatic generation of initial revision in prescribed format, automatic increment which follows the lifecycle (e.g. when transitioning from Released back to Work in Progress). - Part numbers: automatic generation in prescribed format, alternate part numbers (e.g. when a supplier uses a different number for the same part). - BOMs, including support for family tables. - Custom attributes, search, "copy structure", viewable (usually PDF) generation, integration/customization API and many many other "small" details...
- deleted 5y ago[deleted]
- pwr-electronics 5y agoI'm curious what sort of market research lead to this. If Mechanical engineers are truly the target audience, I would strongly suggest that you consult with one. We already have all these things, with more features, more integrations with other tools, and more flexibility.
- deleted 5y ago[deleted]