Skip to content

PrintNC – CNC

For those not familiar with the PrintNC project: Home page, Wiki.

This has been a project that’s been in design and construction for over a year. Main delays have were due to shipping, manufacturing and poor quality replacements, over all poor communication from vendors, but mostly the reluctance to spend the money – What can I say, I’m cheap 🙂 This CNC was (as it is for many) to replace my MP-CNC that has been mostly unreliable and needed another rebuild. It got to the point the mancave was getting so hot, that plastic parts under tension were warping over time. For the record, it was 52 degrees C this summer.

Design and Purchase

I went with the default size as it gives me about the same size of work area as the MP-CNC for a slightly larger foot print and purchasing parts is a lot easier from the their affiliated AliExpress store, and I figured better community support.

I bought the steel from a local vendor powder coated – which I read later I should have drilled and tapped all the holes then powder coated it. This was the first delay – The steel took 7 weeks to get, one part was bent, one was scratched so they were returned.

So at this point I’m all in and ordered the electronics and rails from the AliExpress store. This marks the second delay – 1 Month of tracing wrong tracing numbers, until the project creator stepped in and it was sorted with one email, and the parts arrived the following week.

Electronics

  • Variable Frequency Driver (VFD) – Yalang, YL620-A.
  • Spindle – HLTNC, GDZ-80-2.2B (4), 2.2Kw, 220v, 8A, 400HZ.
  • Stepper Drivers – DM542.
  • Non-Contact End Stops – LJ12A-3S.
  • 34V Supply – (Missing info).
  • 24V Supply – MDR-60 24V 60W (purchased separately).
  • 2x 12V PC fans and 12V power supply for the spindle radiator (spares).
  • USB to RS452 (purchased separately).

Assembly

I must say the drilling and tapping took far longer than I expected, but it was enjoyable.

Base frame assembled.

Before my old MP-CNC was dismantled I used it to cut the wood plates needed to assemble the Z Axis.

The basic kit came with enough to assemble a working CNC, although it was either missing or I forgot to order the electrical cable and return water hose for the spindle, so I 3D printed a mount for my old router to test all the alignments and make a few test cuts. Waiting for the extra spindle accessories, resulted in yet another month delay. I also had to order another stepper driver as I burnt one out (my mistake).

The new CNC foot print was too large for the old table so I bought a larger, second hand table. The new table has enough space for the electronics cabinet on top. Underneath has enough space for the water cooling reservoir, dust collection, and material storage.

The cable chain mounts were finally screwed into the X Axis and the cabling pulled through them.

LinuxCNC was setup on an old PC and connection to the BOB was done with the help of an onboard parallel port riser with cable that I had gotten from a friend – it appears I used my spares for other projects a while ago. The steppers were functional, so the next obvious step is using an old X-Box controller to control the movement.

During a test cut, I also noticed the Z Axis stepping was wrong, I was getting about half the depth I should have been. I thought I had checked all axis movement for accuracy. I believe it occurred when I replaced the damaged stepper motor driver, and didn’t re-check everything.

When the spindle and correct stepper motor cables arrived, I wired the VFD, spindle and water pump to replace the temporary Makita router. At this stage spindle control was still handled manually while I waited for the RS-452 adapter. The noise difference between the water cooled spindle and air cooled router was astonishing. I can’t recommend water cooling enough. During my testing, I cut a small detailed storm trooper, which took about 2.5 hours. By the end, the spindle and water was about 50 degrees C – so I forked out for a 2 fan radiator and flow indicator to both help reduce the water temperature and ensure flow was steady. With the radiator, the temperature only increases about 4 degrees above ambient room temperature.

At this stage it cuts reliably, at reasonable speeds, and the results are repeatable with confidence.

During a maintenance check I saw cracks forming on one side of the 3D printed parts on X-Axis rollers. This was my own fault for over tightening the retaining screws. I replaced it with a 3D printed spare, then proceeded to mill replacements from 6mm aluminium using the trochoidal milling method. The first run took over an hour. When I worked out a safe speed, the second run was about 45mins. With this type of milling some what perfected, I can feel more confident when it comes to milling the Z-Axis back plane.

Spindle control was then automated using a USB to RS-452 adapter and the modbus protocol through the VFD. It didn’t take long to work out I needed to add a delay to allow the spindle to spin up to speed before making a mill action. I firstly added it to the G-Code – That turned out to be a mistake as it wasn’t effective after tool changing, and that resulted in a rare snapped bit.

After a few different milling projects I decided to get the homing/min/max sensors integrated. At this point a few design choices have circled back around so I had to find a very adhoc solution to get them mounted. I used thin steel sheet formed around a drill bit with a small tab that gets squeezed between the 3D printed mount and the bearing. The choice to change to aluminium parts has worked well, and the Z-axis had a off cut of aluminium glued under the sensor mount. Ideally the Y and X Axis motors should have been flipped to the other side of their respective beams, this would have given very easy mounting choices using the existing mounts built into the 3D printer parts. The current choice will be re-visited as they add slight mis-alignment to the frame – It’s small but every bit counts.

Some of the parts milled so far:

I tightened and aligned the Z axis, and finally milled the the faceplate in 12mm aluminium. Rather than using the new design, I reverted to using the older wooden design. It’s quicker and to be honest I’ve noticed undesirable side wards movement in the Z axis when milling aluminium or deep cuts.

The dust shoe and extraction system has been upgraded to a very basic wooded dust shoe and a cyclone filter has been added inline with the 65mm hose which is actually ag pipe. Although its a basic setup, I cant stress enough, how well the cyclone filter works. The filter of the vacuum filter remains pretty clear after multiple jobs of timber, MDF, and aluminium.

  • To do:
    • Tool height sensor – Purchased, not mounted.
    • Minor LinuxCNC modifications:
      • Make sure spindle is ‘at speed’ before the first cut – Completed.
      • Macro for tool height detection.
    • Add universal mounts to the spoil board so it lasts longer and I don’t have to screw the material down.
    • Document all LinuxCNC configuration changes.
    • Dust shoe and vacuum system – Completed.
    • Air/lubricant mister – Purchased, not mounted.
    • Replace wooden parts – Completed.

Leave a Reply

Your email address will not be published. Required fields are marked *