Toup Workbench

Info about new community or project announcements, implemented features, classes, modules or APIs. Might get technical!
PLEASE DO NOT POST HELP REQUESTS OR OTHER DISCUSSIONS HERE!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
ToupStudio
Posts: 2
Joined: Thu Mar 11, 2021 4:43 pm

Toup Workbench

Post by ToupStudio »

Hi FreeCAD community,
I would like to share with you a project I've been working on for some time now.
Its objectives can be separated in two parts:
  1. API to ceate python-generated designs. Parametric on its sizes, finishes and materials
  2. Way to manage these generators and get CNC/laser jobs
Let me show you an example of how it works but skipping, for a moment, the first point. Let's suppose we have a script that generates boxes which accepts these parameters: length, height, width, numJoints and externalOffset and a material id (later defined) we want to use, mainly for its width. An example of a usage of these generator or ToupJob can be written as:

Code: Select all

<ToupJob id="Box_Job">
	<ToupElement id="Box" name="regular_box">
		<Values length="500.0" height="500.0" width="500.0" numJoints="2" invisible="0.0"/>
		<Materials board1="86851000"/>
	</ToupElement>
</ToupJob>
Now, getting to the second point, we can define a ToupFactory that consists on a set of bits, a set of materials and the elements or generators we have. For example:

Code: Select all

<ToupFactory id="toupmdc">
	<ToupBits>
		<ToupBit id="EndMill6mm" toolType="endMill">
			<Values diameter="6.0" totalLength="60.0" cuttingLength="30.0" rotation="negative" lips="1"/>
		</ToupBit>
	</ToupBits>
	<ToupMaterials>
		<ToupMaterial id="86851000" price="98.15EUR" type="board">
			<Info description="TAULER ENLLISTONAT PI INSIGNIS A/B 2400X1200X22"/>
			<Values height="1200.0" length="2400.0" width="22.0"/>
			<Cut bit="EndMill6mm">
				<CuttingParameters passDepth="9.0" stepOver="2.0"/>
				<FeedsAndSpeeds spindleSpeed="22000.0" feedRate="60.0"/>
			</Cut>
		</ToupMaterial>
	</ToupMaterials>
	<ToupElements>
		<ToupElement id="Box" path="furniture/box.py"/>
	</ToupElements>
</ToupFactory>
Now the previously defined job can be executed on the factory like this:
screenRecording1.gif
screenRecording1.gif (944.15 KiB) Viewed 3124 times
Or edit the Job to get a different finish and increase the quantity of boxes:
screenRecording2.gif
screenRecording2.gif (649.33 KiB) Viewed 3124 times
It also can be executed from the command line and has been tested on linux, mac and windows.

This is just a quick introduction and there are some other features that I can further explain. But I wanted to see if can be interesting to someone or read your comments
RatonLaveur
Posts: 991
Joined: Wed Mar 27, 2019 10:45 am

Re: Toup Workbench

Post by RatonLaveur »

Hi, that's really interesting work,

To me it should be showcased as well in the Path workbench forums, there are recurring discussions on how to adapt the path workbench for energy based cutters (laser, waterjet, plasma...)

https://forum.freecadweb.org/viewtopic. ... er#p490774
https://forum.freecadweb.org/viewtopic. ... er#p481390

As well as the Interlocking Module workbench

https://forum.freecadweb.org/viewtopic. ... ing+module

There is definitely a subset of the FreeCAD community who would be interested in smoother/new workflows catering to the needs of designing interlocking modules as well as cutting them for prototyping or production.
User avatar
Varnu01
Posts: 42
Joined: Tue Feb 08, 2022 1:12 pm
Location: South Africa

Invite to 2023 FreeCAD (and Free CAE) Users Conference

Post by Varnu01 »

Good Day @ToupStudio

My name is Varnu Govender, I am the assistant to Dr du Plessis at the University of Pretoria, South Africa.

We are organizing the 1st Annual FreeCAD (and Free CAE) Users Conference, which is set to take place in Early 2023.

I have taken interest in your Workbench, and I would love if you could present your work at the conference.

You are welcome to present your workbench in the following manner:
  • Introduction/Overview of your Workbench
  • Run-down on how the workbench operates through the user interface and backend.
  • A tutorial demonstrating the full functionality of the workbench.
  • A showcase of something that has been created/modelled in the workbench.
In addition to this, if you know somebody that might be interested in presenting their work during the conference, please could you refer them to me (@Varnu01.)

I hope to hear from you soon.

Regards
Varnu Govender
FreeCAD (and Free CAE) Users Conference 2023. Register Here

Nikra-DAP FreeCAD Workbench
Post Reply