Posted on

CNC Router Max Speed and Acceleration Testing

Once the main core of the electronics were installed and working, it was time to test and tune the speed and acceleration values.

First, the acceleration is set to a low value (750 mm/sec/sec) and then speed is gradually increased, testing each axis individually and also in concert with the others until the motors start stalling or missing steps. Another item that might limit max speed is if the ball screws start whipping.

With the Leadshine AM822 drivers, if the motors stall or lose steps the drive will set a fault and stop motion immediately. That makes it easy to detect when there is an issue and quickly find the maximum speeds.

In this case, the maximum speed on a single axis was 40000 mm/min or 1575 inches/minute (ipm). It was slightly less when driving X and Y together: 38000 mm/min (1500 ipm). 

Here’s a quick video showing this maximum speed, which was achieved not only using a Raspberry Pi to control the machine, but operating the Pi wirelessly over remote desktop from a laptop computer. It’s possible it would have run faster with a NUC computer running LinuxCNC.

The next step in tuning is to slow the speed down to around 50-75% of the maximum and then find the maximum acceleration that can be used without faulting the drives.

The operational limits for maximum velocity and acceleration will be set significantly below the maximum to leave a safety buffer. On a machine this size, there is no need to ever go faster than 500-750 ipm for rapid moves. Most cutting feed rates will be under 350 inches per minute, based on the recommended cutting speed and chip loads for the material and tool being used.

Posted on

2.2 kW Spindle Upgrade

Along with the electronics upgrade, a 2.2 kW Huanyang VFD and water cooled spindle has been installed in place of the previous DeWalt routers I had been using (both the DW618 and DWP611). The VFD is connected to LinuxCNC to enable it to be controlled automatically by the G code when files are run on the machine.

I’ve read many (sometimes conflicting) opinions about water cooled vs air cooled and 110 vac vs 220 vac spindle motors. So, going forward I will be testing each of the above for myself.

I’m starting with the Huanyang HY series VFD. This specific model is for 110 vac input and 110 vac 3 phase output. The spindle is a 2.2 kW 110 vac 3 phase 400 Hz motor with water cooling. The cooling pump is a submersible aquarium style pump that is being controlled from LinuxCNC to automatically turn on and off when needed.

I tested out two methods of controlling the VFD. The first method is using the Mesa 7i76e, which has a dedicated terminal block for analog spindle control. The second method is RS-485 control direct from the PC to VFD.

All the details are documented in an article on controlling a Huanyang VFD and spindle from Linux CNC 2.8.

Posted on

LinuxCNC Setup and Connecting I/O

After getting the Raspberry Pi 4 running with LinuxCNC and talking to the Mesa 7i76e board, it was time to wire up the inputs and outputs and configure LinuxCNC for them.

I added disconnects to all the wiring coming from the CNC machine. These will mate with either the new electronics box or the previous Gecko G540 and PC setup. Then I ran wiring internally from the electronics box disconnects to the Mesa 7i76e inputs and outputs. I am documenting all of the connections and will publish it soon.

I am currently using inputs for combination home/limit switches on each axis and the emergency stop switch. Outputs are setup for controlling compressed air and the solid state laser. Compressed air is used for laser assist, chip evacuation, and mist coolant. More inputs and outputs will be wired up later.

For now, I’ve written up the steps I took to configure LinuxCNC 2.8 for the Torsion CNC Router, using Leadshine Drivers and Mesa 7i76e board.