CNC BF16 - Electronics


  • Specifications
  • Mechanics
  • Electronics
  • Controller
  • Software
    CNC Router
    CNC Links

    Resin Printer (DLP)
    UM2 Dual Extrusion
    UM2 CoreXY






    VB6 - 3D
    VB6 - Simulation
    VB6 - Games
    VB6 - Other
    VB6 - Outsourcing


    Valide CSS!
  • After some other programming errors and a spinning motor which did not stop running, it's time for the E-switch. The E-switch is connected to the Arduino A3 port and is Normal Connected. I'm still waiting for a 220V switch, which will switch the power sources on/off.

    To 'upgrade' the breadboard a little, it's time for the new handheld.
    Current controller functionality:
  • Function selection: Jogging: X, Y, Z, A or PC-mode
  • Speed control
  • Step size selector: continuous or: 0.01, 0.05, 0.1, .., 10 [mm]
  • 2 buttons: jogging +/-
  • Additional button (which activate both +/-) for reset function.

  • While thinking & mainly dreaming about the controller, the next pin layout is defined:

    Yeah, another mile stone: shaft selection, direction control & the first simple jogging steps :)

    (Sorry, Dutch spoken movie.)

    Finally some progress. I did some tests with the ball spindle (horizontal) and after that, I mounted the Z-axis with balls crew spindle & 12 Nm motor. This is running very smooth. Also the speeds & accelerations are lot better. Only one strange thing happens. There is a strange peak at 2.5 [m/min] & 2.5 [m/sec^2].

    Because of the strange peak (see Z-axis), this requires some more investigation. I could only find one graph of my motor, but With 2 formulas it's simple to create your own power-speed & torque-speed curve of your own stepper. You only need to know the rotor inertia and software with a fixed acceleration. Without any mass attached, the acceleration speeds before ~220 [RPM] are very high, so it's not really possible to measure anything. From 220 to 1000 [rpm], the graph is also very strange. This is not what you expect of a stepper motor! In my opinion, the accelerations are far too high, or are in conflict with the maximum frequency output of Mach3. This is simple to adjust. By increasing rotating mass, the acceleration should be lower, so there are no software acceleration limits. This is also shown in the graph. Now the motor asks about 140 [Watt] and the strange acceleration points are gone :) Both graphs are not exactly the same but give at least some insight.

    Speeds nut Y-axis (Nut:20/03)
    Finally I started to rebuild my machine and mounted a 12 [Nm] motor on the Y axis. I'm very proud :)
    For testing the controller & LPT, I programmed simple Visual Basic program. At maximum speed (only 64 [Hz]), the Y moved forwards & backwards very slow, but it works!!
    Now I know, I don't blow up the LPT and everything is working, I have to try different software, which could speed up everything. So I installed Mach 3. The software installation was okay, but to configure the stepper was very difficult. Maybe I didn't read well enough, but in the end I had to change the LPT settings in the Bios. With LPT ECP type, Mach 3 was able to communicate. (VB had still no problems.) I'll post some cnc\pictures of settings later. Now of course the fun part starts, how fast could the machine run... These are the current settings for Mach3:
  • Wire connection: Bipolar Serieel/Parallel
  • Step size: 5 or 10 [-]
  • Pitch: 3 [mm/rev]
  • Kernel speed: 25/35/45/75 [kHz]
  • Steps/rev: 200*5/3 = 333.333 (or 666.666 for step size 10.)
  • Max speed: 1-3 [m/min]
  • Acceleration: 50-150 [mm/sec^2]
  • Step time: 2 [nsec]
  • Dir time: 2 [nsec]

    With above settings, I also measured the current between PSU and Driver (Parallel wired):
  • Idle: 0.2 [A]
  • Constant 'high' speed: 0.7 [A]
  • Max accelerating: ~1.5 [A]
  • Temperature of motor: ~45 [dC]

    After some testing, see graph, these are the best settings:
  • Wire connection: parallel
  • 35 [kHz]; step size 10
  • Max speed: 3 [m/min] (didn't go higher because of low acceleration)
  • Nice speed/acceleration ratio: 2.5 [m/min] & 250 [mm/sec^2] (833 [rpm])
  • Without load (disconnecting coupling): at least 2000 [rpm] (@65[kHz] & 500[mm/sec^2])

    It's a pity, that Mach3 has a constant acceleration factor. If not, it should be possible to get much more speed out of the system, with higher accelerations. But in the end, I've found nice speeds/acceleration ratio: 2.5 [m/min] & 250 [mm/sec^2] will work.

  • Because of earlier plans to create a (big) router (2x1.5 [m]), which should have high speeds, I needed to have big steppers. I was thinking of spindles, with pitches of 20 [mm/rev] or more. So I decided to aim for 6 to 8 [Nm] steppers. I also thought of building the controller myself, so did some calculation for R/L driver approach, but didn't continue. The electronics are too difficult for me as a mechanical engineer. After searching, the best price/performance, I decided to buy my stuff at MotionControlProducts, 'CNC Drive Kit 4'. In that period, they were out of stock for the 8 [Nm], so why not order 12 [Nm]? :)

    After some testing, all the wire connections will be bi-polar parallel connected. For 'high' speeds, the driver will only ask for 1.5 [A]. I don't know yet, what current will be used, while milling. If this will be below 2.5 [A], 2 drivers could be connected to 1 PSU.