Hi All-
I'm new to FreeCAD, and new to general purpose parametric modeling. I've used various purpose built CAD packages over the years for various things: cabinetry, house building/remodeling, landscaping, etc. I'm an electrical engineer by trade. But, this is my first foray into this world.
I bought a 3D printer (Creality CR-10) back in January. Partly for the fun of it, and partly to create parts for my other hobby Simracing.
I'm to the point now that I can generally create any part that I have a need to, including some limited boolean operation based parts. That's not to say that I can create *ANY* part...just the ones I've had a need to dream up.
So, my project is to create a button plate for my simracing steering wheel system. Basically its a plate to allow me to activate various simracing functions while not removing my hands from the wheel using switches of various types. Its still a work in progress, and I've used it to try and learn certain features of FreeCAD as I go.
I'm currently using RealThunder's Linkstage3 branch, and updated to 0301 version today.
The switches are STEP files from NKK for the parts I plan to use to build it. The padel shifters are also STEP files from the parts I'm using off of Thingaverse. Everything else is modeled in partdesign. Here's an exploded view:
So far, I've just been modeling in PartDesign and using transform to manually move the various bodies in space---including the exploded view above. I've recently starting learning Asm3, and will start trying to migrate this design over to using constraints, and exploded assembly for...well, exploded views.
I modeled the wheel itself in a separate file and exported as a STEP just to keep things a little simpler and it wasn't subject to change. I modeled the wheel using a scaled photo of the real thing and placing it on an image plane. then the painstaking process of making several experimental sketches, and printing them to fit to the wheel...making adjustments (due to scaling and parallax issues) and trying again. It was quite tricky to get the master sketch fully (and not over) constrained.
Things that I continue to struggle with:
How to create a master sketch that I can share between bodies? I've learned how to use shape binders, and that mostly seems to solve my issues with creating parts which are all based on various fractions of the MasterSketch.
Oftentimes, while creating child sketches from the master sketch, and adding a few features off it, I find that the new elements sometimes break the existing constraints and confuse the solver. Usually that's related to auto-constraints, especially horizontal or vertical, but tangent and onto can be equally problematic. Its tricky and frustrating to search for the RIGHT constraint to delete...though its usually near the bottom of the list.
"Wire not closed" is the bane of my existence. I don't know how many times I run into this while padding or pocketing. Then run sketch validate to find/fix the missing coincidences, only to have solver tell me I have redundant constraints. Then it becomes a hunt for just the right trick to convince the solver that the sketch is constrained, and the solid modeling that the wire is really closed. I haven't learned magic here. But, tangent and onto seem to be where the confusion comes from.
Solver understands that those are fully-constrained...but, the solid modeler doesn't seem to understand that the points are geometrically coincident without an explicit constraint. I'm sure I'm doing something wrong....I just haven't figured out the right magic---just trial and error every time. I've deleted a lot of sketches and started over with a fresh carbon-copy.
Next Steps:
The most recent iteration I added a spreadsheet to parameterize the extrusion depths. The main reason for that (besides the educational aspect) is that there are several models of switches with various vertical dimensions (button heights, shaft lengths, body height, solder tab lengths). I'm not sure which switch I like best, so I wanted to be able to adjust after I get some samples and decide which I like.
Now that I can easily change these things...manually transforming them in space has become more cumbersome. So, I've started playing with Asm3 to learn how to stick things together geometrically. Then of course, the natural extension will be to be able to create exploded views.
Anyway, thanks for reading. Comments and criticisms are welcome. At least half of the point of this project is to learn how to FreeCAD. I could have brute forced this much faster once I got the wheel shape nailed. Everything afterwards has been about learning new / easier ways to do things for future projects.