NiCr: CNC Hot Wire Cutter

Show off your FreeCAD projects here!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
JMG
Posts: 287
Joined: Wed Dec 25, 2013 9:32 am
Location: Spain
Contact:

NiCr: CNC Hot Wire Cutter

Post by JMG »

Hi!

I'm happy to announce that I'm publishing my CNC Hot Wire Foam Cutter (or simply NiCr, way shorter name) as an OpenSource/Hardware project.

A little video about it:
https://www.youtube.com/watch?v=iOVO2aQ5I9E

It has been designed with FreeCAD and also uses it to create the toolpath from 3D shapes.

Some pictures of the machine inside FreeCAD:
Image
Image

It has several interesting features like coreXY motion, arduino&ramps electronics and more, I have published a more detailed description here:
http://linuxforanengineer.blogspot.com. ... /nicr.html

I hope to upload code and 3D parts soon (FreeCAD workbench is almost ready :) )

EDITED: Github repo: https://github.com/JMG1/NiCr
Edited 2: Workbench demo video https://www.youtube.com/watch?v=8snH_p_ ... e=youtu.be

Javier.
Last edited by JMG on Mon Jan 04, 2016 9:12 pm, edited 2 times in total.
FreeCAD scripts, animations, experiments and more: http://linuxforanengineer.blogspot.com.es/
Open source CNC hot wire cutter project (NiCr): https://github.com/JMG1/NiCr
Exploded Assembly Workbench: https://github.com/JMG1/ExplodedAssembly
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: NiCr: CNC Hot Wire Cutter

Post by triplus »

Impressive.
User avatar
DeepSOIC
Veteran
Posts: 7896
Joined: Fri Aug 29, 2014 12:45 am
Location: used to be Saint-Petersburg, Russia

Re: NiCr: CNC Hot Wire Cutter

Post by DeepSOIC »

Oh yes it is. Impressive. Should I start building one, I wonder...
User avatar
kwahoo
Posts: 680
Joined: Fri Nov 29, 2013 3:09 pm
Contact:

Re: NiCr: CNC Hot Wire Cutter

Post by kwahoo »

Whoa! This thing is huge!

If I understood well, an G-Code like code is generated in FreeCAD and interpreted by AVR? Can you share some info about buffering commands? Are you sending commands in packets, or full code before staring the cutter?
JMG
Posts: 287
Joined: Wed Dec 25, 2013 9:32 am
Location: Spain
Contact:

Re: NiCr: CNC Hot Wire Cutter

Post by JMG »

Thanks :)

DeepSOIC:
Should I start building one, I wonder...
The question is... how can you live without one? :lol:

kwahoo:
Yes, you understood correctly. The nicr code is generated inside FreeCAD and sent by serial to the machine, at least, that is how it works at the moment. You can see an example on my test machine here (code included):
https://www.youtube.com/watch?v=VHL-ju65lEk
The only thing that keeps it from working perfectly are the delays between instructions, but seems easy to solve.
Also, one thing that is high in my to-do list is to create the possibility of reading the code from a SD card, like 3D printers do.

Any help and ideas with this will be greatly appreciated :)
FreeCAD scripts, animations, experiments and more: http://linuxforanengineer.blogspot.com.es/
Open source CNC hot wire cutter project (NiCr): https://github.com/JMG1/NiCr
Exploded Assembly Workbench: https://github.com/JMG1/ExplodedAssembly
User avatar
kwahoo
Posts: 680
Joined: Fri Nov 29, 2013 3:09 pm
Contact:

Re: NiCr: CNC Hot Wire Cutter

Post by kwahoo »

JMG wrote: The only thing that keeps it from working perfectly are the delays between instructions, but seems easy to solve.
I started thinking about converting G-code on PC and streaming discrete steps to AVR with some buffering. I haven't tested this method yet, but I will when I'll finish my micro-CNC prototype.
Image
JMG
Posts: 287
Joined: Wed Dec 25, 2013 9:32 am
Location: Spain
Contact:

Re: NiCr: CNC Hot Wire Cutter

Post by JMG »

converting G-code on PC and streaming discrete steps to AVR with some buffering.
In this video I'm sending the steps and direction directly (but without buffering) from a script that reads shape topology and transforms it to machine steps.

https://www.youtube.com/watch?v=InJrinMZe4A

The data sent is a binary number with direction and step. I've also used this script modified to address directly the parallel port, eliminating the need of an AVR at the expense of using an old motherboard with parallel port.

I'm sure there are a lot of ways of doing the same thing, my preference is to send human-friendly instructions because there are easier to debug (separates nicely the software inside the computer and the firmware in the AVR).


Nice project, those sliders are of the kind used in furnitures (like retractable keyboard trays)?


Javier.
FreeCAD scripts, animations, experiments and more: http://linuxforanengineer.blogspot.com.es/
Open source CNC hot wire cutter project (NiCr): https://github.com/JMG1/NiCr
Exploded Assembly Workbench: https://github.com/JMG1/ExplodedAssembly
JMG
Posts: 287
Joined: Wed Dec 25, 2013 9:32 am
Location: Spain
Contact:

Re: NiCr: CNC Hot Wire Cutter

Post by JMG »

Hi all.

The NiCr repository is here!! :D
https://github.com/JMG1/NiCr

The workbench Includes a .fcstd file with an example.


Javier.
FreeCAD scripts, animations, experiments and more: http://linuxforanengineer.blogspot.com.es/
Open source CNC hot wire cutter project (NiCr): https://github.com/JMG1/NiCr
Exploded Assembly Workbench: https://github.com/JMG1/ExplodedAssembly
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: NiCr: CNC Hot Wire Cutter

Post by triplus »

Animation.png
Animation.png (41.94 KiB) Viewed 14520 times
Looking good. I do get this:

Code: Select all

Traceback (most recent call last):
  File "...NiCr_Workbench/NiCrSimMachine.py", line 53, in onChanged
    self.addMachineToDocument( fp.FrameDiameter, fp.XLength, fp.YLength, fp.ZLength )
<type 'exceptions.AttributeError'>: 'FeaturePython' object has no attribute 'YLength'
Traceback (most recent call last):
  File "...NiCr_Workbench/NiCrSimMachine.py", line 53, in onChanged
    self.addMachineToDocument( fp.FrameDiameter, fp.XLength, fp.YLength, fp.ZLength )
<type 'exceptions.AttributeError'>: 'FeaturePython' object has no attribute 'ZLength'
When loading the provided example .fcstd file.
JMG
Posts: 287
Joined: Wed Dec 25, 2013 9:32 am
Location: Spain
Contact:

Re: NiCr: CNC Hot Wire Cutter

Post by JMG »

Thanks triplus for testing! :)

That annoying error shows when loading a workbench within a saved document, I think that is related to the save/load mechanism of the python objects :? It is not critical and does not disturb the workbench behavior.
FreeCAD scripts, animations, experiments and more: http://linuxforanengineer.blogspot.com.es/
Open source CNC hot wire cutter project (NiCr): https://github.com/JMG1/NiCr
Exploded Assembly Workbench: https://github.com/JMG1/ExplodedAssembly
Post Reply