Very small 4 axis mill for cutting plastic materials

  • tommylight
  • tommylight's Avatar Topic Author
  • Away
  • Moderator
  • Moderator
More
06 Oct 2025 12:39 #335916 by tommylight
This is what i was doing last few days, a very small 4 axis cnc machine for cutting some kind of plastic material for clear teeth aligners, machine is fully finished (except a box for electronics and cutting the protruding HGR25 rail to size).
-The machine kinematics are simple XYZC.
-The mill bit is angled at 35 degrees from table, can be changed to 90 or any other angle
-the C axis can spin freely both directions and has a home switch, with limits at+-99999 in ini only
-table/C axis is designed in FreeCAD and 3D printed, with 120 tooth HTD3 pulley included


Below is what i have to work with:
-the file generated from their software is a simple text file (.pts extension) with values for 3 axis, BUT has no axis assignments at all, only numbers, so with a bit of help from Gemini a filter was made to open the .pts file and assign axis letters together with Feed rate and M2, all that works fine
-also made a filter that adds the fourth axis that also seems to work, but not as required by this task, C does move small amounts to account for the tool cutting angle, but this requires rotating the C axis 360 degrees for a full job
-that job is always a single cut line, always same location of the material, always indexed on C, material shape does change but never significantly
-that is the only job this machine will do.

-
The machines used for this are 4 or 5 axis, always, and they use that same file type with 3 axis values, so the kinematics or CAM must do the required changes/modifications to path, and this is where i am stuck, so any ideas are welcomed.
Attachments:
The following user(s) said Thank You: partec

Please Log in or Create an account to join the conversation.

  • tommylight
  • tommylight's Avatar Topic Author
  • Away
  • Moderator
  • Moderator
More
07 Oct 2025 01:09 - 07 Oct 2025 01:14 #335969 by tommylight
Did anyone notice there is a question at the end? :)
-
Some random info running through my noggin :
-the rotational axis should do a full 360 degree to finish this
-the tool should remain always roughly normal to the teeth/cut plane
-i do not think this needs switchable kinematics
-pretty sure this needs TCP as the cut line is always 1mm under the material (also 1mm thick roughly)
-having a look through the included TRT configs right now ... well after i get back from the shop (nicotine level low), went to bed at 1AM got up at 2:10AM, way to much stuff going on last 3-4 days compounded by family health issues, but getting better so far.
Attached files in pts and gcode formats, compressed, the gcode has Y and Z axis values changed to reflect table orientation.
Attachments:
Last edit: 07 Oct 2025 01:14 by tommylight. Reason: more info
The following user(s) said Thank You: partec

Please Log in or Create an account to join the conversation.

More
07 Oct 2025 10:06 #335989 by partec
I saw the question and you have now attached exactly the relevant files. Thanks, I'll be happy to think about it!
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

  • tommylight
  • tommylight's Avatar Topic Author
  • Away
  • Moderator
  • Moderator
More
07 Oct 2025 15:31 #336018 by tommylight
Thank you very much.
Attached are both filters for LinuxCNC, the normal 3 axis and the generated 4th axis noted in the file names inside the zip file, also require adding these two lines to the ini file
PROGRAM_EXTENSION = .pts values
pts = ./LinuxCNC_pts_filter.py
or
PROGRAM_EXTENSION = .pts values
pts = ./LinuxCNC_pts_filter_4_axis.py
And another try at explaining things, badly as usual, the attached 3D image has the blueish-green cut line that is the actual gcode, so the tool should be horizontally positioned to cut the line
Attachments:
The following user(s) said Thank You: partec

Please Log in or Create an account to join the conversation.

More
07 Oct 2025 16:18 #336025 by partec
I do believe that a simplified milling procedure can be implemented.
The C-axis must be adjusted so that the milling spindle is approximately perpendicular to the cutting contour in every small section.
A fully converted X-Y-Z-C point file is required.

You write:
-pretty sure this needs TCP as the cut line is always 1mm under the material (also 1mm thick roughly) 
What exactly do you mean by that TCP?

You also write:
-having a look through the included TRT configs
What exactly do you mean by that TRT?

Surely you also have an envelope file (stp or similar)?
The following user(s) said Thank You: tommylight

Please Log in or Create an account to join the conversation.

  • tommylight
  • tommylight's Avatar Topic Author
  • Away
  • Moderator
  • Moderator
More
07 Oct 2025 19:59 #336049 by tommylight

What exactly do you mean by that TCP?

TCP = Tool Center Piont, the kinematics that keep the tool positioned in the same place no matter how the axis/joints are moving (might not be the best explanation, i know)

What exactly do you mean by that TRT?

LinuxCNC comes with several 5 axis TCP-TRT simulated configs that also have a Vismach visualization screen/window where the machine can be seen moving, makes things much easier to test.
On the LinuxCNC configuration selecotr, go to sample configurations>sim>axis>vismach>5axis>table-rotary-tilting and choose one of the two configs to run.

Surely you also have an envelope file (stp or similar)?

Yes, an STL 3D model as shown in the picture above.
Again, thank you very much.
The following user(s) said Thank You: partec

Please Log in or Create an account to join the conversation.

More
07 Oct 2025 22:38 #336065 by partec
Thank you for these very interesting explanations. 
I've barely familiarized myself with these special LinuxCNC capabilities until now, but I certainly sense their great potential.
In my ever-loved RHINO, I primarily try to find analytical geometric solutions directly, for example, an X-Y-Z-C-Points.ngc where the spatial position of the envelope shape is precisely used as the basis for the cutting contour.
The method you mentioned in the forum, e.g. according to github.com/FreddieHong19/Open5x, could also be used as an idea for creating such a suitable X-Y-Z-C-Punkte.ngc with Grasshopper.

Please Log in or Create an account to join the conversation.

Time to create page: 0.179 seconds
Powered by Kunena Forum