• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

Milling CNC with DuetWifi ?

Scheduled Pinned Locked Moved
CNC
12
51
17.8k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    Whag
    last edited by 25 Jun 2016, 11:54

    Thanks a lot for your answers

    Nice point ! I forgot this expansion header wich may solve everything.
    This leads me to a fun idea, could I plug two cnc sets ? I mean a 3d printer on stock drivers, and a wood mill on the expansion, both driven by the duet logic ?

    1 Reply Last reply Reply Quote 0
    • undefined
      T3P3Tony administrators
      last edited by 25 Jun 2016, 14:10

      Well thats something I had not considered but I suppose you could, it would require some interesting configuration file setups to change the movement axis depending on which machine you wanted to control but I can't immediately see why not!

      www.duet3d.com

      1 Reply Last reply Reply Quote 0
      • undefined
        Whag
        last edited by 25 Jun 2016, 14:51

        I guess we'll figure this out in a few weeks when I receive my board 😉 (and every other things)

        Cheers
        Robin

        1 Reply Last reply Reply Quote 0
        • undefined
          Aussiephil
          last edited by 26 Jun 2016, 02:47

          @Tony

          It seems like the firmware can be configured to run in CNC mode, is there any guides or write ups on this.

          I ask as my next project will be a MPCNC machine that will work fine with the steppers we normally use in 3d printing and the DuetWiFi will actually allow me to use some nice Nema23's for this project as speed is not of the essence accept on positional moves

          Cheers
          Phil

          1 Reply Last reply Reply Quote 0
          • undefined
            RCarlyle
            last edited by 26 Jun 2016, 03:52

            I have to make the usual point here about cheap CNC machines… "just running it slow" to make up for weak mechanics isn't actually a very good solution. When you take extremely shallow cuts, your cutters wear out quickly and you will heat up the workpiece considerably. For example, wood can scorch, plastic will definitely melt, and metals may work-harden and get rougher. You'll usually end up with poor finish and short tool life. On the other end of the spectrum, running the cutters "fast enough" will flex the machine to the point you lose accuracy.

            This is a big issue with weak CNC designs like the MPCNC... they're super marginal performers. Don't get me wrong, you can get some work done with them, but for the assembly and config effort you're much better off building something like a Shapeoko.

            1 Reply Last reply Reply Quote 0
            • undefined
              T3P3Tony administrators
              last edited by 26 Jun 2016, 14:41

              @Phil There is no specific "CNC" mode for the firmware, its just a case of setting appropriate max speed, acceleration and jerk values for the mechanics you are using. External drivers require the config to be set correctly to remap X/Y to the external drivers using M569.

              www.duet3d.com

              1 Reply Last reply Reply Quote 0
              • undefined
                Whag
                last edited by 26 Jun 2016, 17:00

                A last dark spot for me is the way my 3d file will be converted to driver instructions.
                Do you have a dedicated software or compatibility with one already existing ?
                I 'm already used to 3d softs and c++ as a hobby ( mainly 3dsMax, UE4 and related ) I guess this can't be harder than those
                Could you point me to something to look at ?

                1 Reply Last reply Reply Quote 0
                • undefined
                  bot
                  last edited by 26 Jun 2016, 17:05

                  Fusion 360 would be great at generating g code for CNC milling (etc) operations.

                  *not actually a robot

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    Whag
                    last edited by 26 Jun 2016, 17:26

                    Autodesk stuff ! I couldn't dream better 😉 thx !

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      Aussiephil
                      last edited by 27 Jun 2016, 00:43

                      @Tony, thanks. I really should pull apart a simple gcode file generated for milling.

                      @Whag, Fusion 360 is great, haven't yet played with the milling bits, been having to much fun learning the design side and printing things designed in it…. and it's free for personal use, incredible!

                      Cheers
                      Phil

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        jgrouse
                        last edited by 6 Oct 2016, 08:34

                        @Aussiephil, did you ever get around to finding a set of options in config.g that allow the Duet to just process a regular "Mach3" gcode file without complaining that the hotend and heatbed thermistors are not wired up? I'm just testing this scenario now with my DIY 3in1 (route/laser/3d print). I managed to disable the heatbed but not the extruder.

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          dc42 administrators
                          last edited by 6 Oct 2016, 15:27

                          Can't you just define all your tools to have no heaters in the M563 commands?

                          Duet WiFi hardware designer and firmware engineer
                          Please do not ask me for Duet support via PM or email, use the forum
                          http://www.escher3d.com, https://miscsolutions.wordpress.com

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            jgrouse
                            last edited by 6 Oct 2016, 21:36

                            Hi dc42, worked that out last night and managed to get a regular mach3 gcode file working on the axis. I'll probably create a generic config.g and run a macro to add in all the odds and sods required for each specific setup, i.e. CNC_Route.g/Laser.g/3DPrint.g before running a job (assuming the g code in config.g can be run after the fact as a macro?).

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              jgrouse
                              last edited by 6 Oct 2016, 23:28

                              @dc42, is there something specific in the ending gcode you look for to know when the job is finished? I was comparing a regular Simplify3D gcode file with the one I have from Vetric Cut2D and apart from the ";" comments I cannot see anything different that you could be looking for? With the Cut2D job, even though the job is finished and the last move has been completed, the web interface does not refresh to show that the job is finished. If I manually refresh the page it shows that there are no jobs printing. Is there a gcode I can throw in at the end to refresh the web page status? Is it the lack of E axis movements?

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                jmjcoke
                                last edited by 6 Oct 2016, 23:36

                                I have a mill/3d printer and after trying several 3d printer based controllers my thoughts are that if you are going to use this as a CNC router in it's primary function then there are many things you will need that printer controllers do not do.

                                Offsets G54(25-100), plane rotation, digitizing with a probe, good spindle control, the list is long. I wired all my motors and home/limit switches with plugs, I setup the machine using two control cards so I change 10 plugs when I switch between systems. I leave the spindle and hotend/extruder wired to the separate systems. I find myself switching less and less because wood chips and dust do not play well with 3d printing. Having a hand-wheel to move the bigger machine is a must.

                                Here is a machine I might be working on that will print and mill with a Siemens control so we will see how that goes. Even then this machine will only mill the part after it is printed, not other materials. I worked at Ingersoll Milling for many years and after I found out they are building this I started the phone calls to get back there.

                                https://3dprint.com/149303/ornl-ingersoll-wham/

                                Joshua Coke

                                Trick Laser Metal Max with Smart Effector
                                Duet Wifi
                                Zesty Nimble
                                Mosaic Pallette+
                                At work
                                Renishaw AM250/400/ RenAM500M/500Q Powder Bed Fusion (Metal 3D Printers)

                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  jgrouse
                                  last edited by 7 Oct 2016, 06:43

                                  @jmjcoke:

                                  I have a mill/3d printer and after trying several 3d printer based controllers my thoughts are that if you are going to use this as a CNC router in it's primary function then there are many things you will need that printer controllers do not do.

                                  Offsets G54(25-100), plane rotation, digitizing with a probe, good spindle control, the list is long. I wired all my motors and home/limit switches with plugs, I setup the machine using two control cards so I change 10 plugs when I switch between systems. I leave the spindle and hotend/extruder wired to the separate systems. I find myself switching less and less because wood chips and dust do not play well with 3d printing. Having a hand-wheel to move the bigger machine is a must.

                                  Here is a machine I might be working on that will print and mill with a Siemens control so we will see how that goes. Even then this machine will only mill the part after it is printed, not other materials. I worked at Ingersoll Milling for many years and after I found out they are building this I started the phone calls to get back there.

                                  https://3dprint.com/149303/ornl-ingersoll-wham/

                                  OMG, that is a very large 3D printer!

                                  Just in the process of designing the enclosure for my new machine with extreme dust collection in mind. The detachable spindle/z axis head will have a vacuum tube taking all dust from the source and it will be sitting on a vacuum table. The middle of the vacuum table will have a removable square in the middle that when removed exposes the 400x400 3d printer heat bed that lowers down into a cavity under the vacuum table. When the block is in place no dust can get down there. When it comes time to do 3D printing I just detach the spindle head and put the 3D printer head on (once all residual dust is vacuumed up). Also the entire top plate of the vacuum table will be easy to remove to allow build up in the cavity to be cleaned up (the entire XY frame attaches to this plate). The laser unit just drops into the spindle clamp on the Z axis head and maintains the same cut origin as the spindle.

                                  There will also be a switch to throw the two Z outputs from the Duet between one stepper on the spindle/laser head and two steppers driving the heat bed table. Still looking for a 2 position 8 pole switch though.

                                  So far the Duet Wifi has worked just fine with the XYZ frame I have already made, apart from this annoying inability for the web page to update at the end of the job. Actually looks like the web interface locks up as I cannot do any thing with it till I refresh the page.

                                  As for probing, this is and has been part of the code for bed levelling for quite a while and I cannot foresee any other use for probing for what I will be doing. I also believe there is a gcode call to probe any point you want, although a serial interface may be in order to issue the probe and record the point to file.

                                  As for spindle control, the PWM based spindle controller and 48V DC spindle I have work really well with the Fan0 PWM output (set to 5V jumper). I just defined a new postprocessor file in Cut2D to use the M106 S0-255 call rather than M03. Ditto for the 7W diode laser work and the PWM controller for that.

                                  I still have my 6040 CNC being driven by a Gekko G540 and USB Smoothstepper from Mach3 for the more complex work and tougher materials. This new machine really is just for routing ply/mdf from 3mm up to 12mm and laser cutting up to 3mm ply. The ability to 3D print is just a secondary thought to deal with bigger print sizes. Also think the way the axis are being driven is going to be more accurate than the Duplicator i3 knockoff I have. GT2 belt teeth are pressed into a matching track in the 4040 T Slot profile so all stretching and bounce associated with using long belts is negated. Have had the y axis shoot along at 44000 mm/min without missing any steps and comes to a stop with zero bounce. And the new stepper drivers are configured to 160 steps / mm rather than the usual 80 for GT2/pully setups. Plenty of resolution for a nice clean 3d printed part.

                                  Just wish dc42 could add arc support with the G2 G3 calls when I'm doing router jobs for more fluid moves on all arcs? All the other 8 bit printer firmware supports this so it really should be supported on this high end board. Fairly sure Simplify3D only uses short lines to make up rounded edges as this is how the STL/OBJ models are constructed. Perhaps down the track 3D slicers will support poly models as well as mesh objects and then 3D printers will be able to do smooth arcs. As it is even high vector mesh objects seem to print curves with visible flat areas.

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    T3P3Tony administrators
                                    last edited by 7 Oct 2016, 07:17

                                    Regarding arcs, I think all the slicers still output arcs as segments. It's a bit chicken and egg regarding firmware support for arcs and slicer support. Support for CNC milling gcode generation that already generates arc commands is a good reason to add G2/G3 to RepRapFirmware.

                                    @Jgrouse Can you add a firmware wishlist request for this support, and other CNC specific functionality that is currently not implemented.

                                    Once we have firmware that properly supports arcs we are one step closer to 3d printing with arcs rather than lots of straight lines. That said there is a lot more that would need to be done as far as a model file that represents arcs properly and slicers that support them

                                    www.duet3d.com

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      dc42 administrators
                                      last edited by 7 Oct 2016, 07:29

                                      @jgrouse:

                                      @dc42, is there something specific in the ending gcode you look for to know when the job is finished? I was comparing a regular Simplify3D gcode file with the one I have from Vetric Cut2D and apart from the ";" comments I cannot see anything different that you could be looking for? With the Cut2D job, even though the job is finished and the last move has been completed, the web interface does not refresh to show that the job is finished. If I manually refresh the page it shows that there are no jobs printing. Is there a gcode I can throw in at the end to refresh the web page status? Is it the lack of E axis movements?

                                      M0 or M1 says the job is finished. Reaching the end of the SD card file should have the same effect.

                                      Duet WiFi hardware designer and firmware engineer
                                      Please do not ask me for Duet support via PM or email, use the forum
                                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                                      1 Reply Last reply Reply Quote 0
                                      • undefined
                                        dc42 administrators
                                        last edited by 7 Oct 2016, 07:37

                                        I'll add CNC support to the firmware work list. Is it just G2 G3 and M3 that you need?

                                        Duet WiFi hardware designer and firmware engineer
                                        Please do not ask me for Duet support via PM or email, use the forum
                                        http://www.escher3d.com, https://miscsolutions.wordpress.com

                                        1 Reply Last reply Reply Quote 0
                                        • undefined
                                          jgrouse
                                          last edited by 8 Oct 2016, 06:42

                                          @dc42:

                                          M0 or M1 says the job is finished. Reaching the end of the SD card file should have the same effect.

                                          Gave that a shot as well without success. It just seems as though the web interface locks up after I start the print even though the axis are all doing their thing. Forcing a web page refresh then shows that the status is back to idle rather than just staying on a status of printing.

                                          Must be something else in the gcode it is expecting? I even slapped on a copy of all the preamble comments from a Simplify3D gcode file to see if that made any difference. Might need to pm the test file I have and the config.g I currently use to see what you make of it?

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA