Saturday, August 6, 2022

The ANT PCB Maker - XXL conversion part 2

This is part 2 of my documentation of the ANT PCB Maker conversion. You find part 1 here.

The current state is pretty close to completion. There are some things still missing:

  • good mountings for working area
  • connectors for auto-leveling cables 
The electronics box is now fully finished and i have mounted a 1000kv outrunner motor with an 20AMPs ESC that runs with its own PSU. Separating the power circuits of the "spindle" and the CNC itself ensures that no voltage spikes etc. from the outrunner/ESC combo will "jump over" to the CNC electronics.
Unfortunately i lack the skill to include all the details like outrunner motor and cable chains...

On this photo you can see some details like the fully mounted outrunner.
My failed attempt of removing solder mask with a spring-loaded bit.

The electronics enclosure is sufficiently cooled and has enough room for future upgrades. The PSU connectors are in the extra little box on the left making changes easy.


What are my conclusions on the changes i made to the original design?

Some parts have been redesigned with printability in mind. I think that this worked out and that most parts are easier to print. There are no difficult overhangs to print except for mounting holes that can be drilled afterwards.

USB C because USB C! (~ ̄▽ ̄)~ 

The oversized electronics box gives me enough room for future upgrades and hides all the cable mess.

The endstops for the x and z axis are implemented within the printed parts and the cables are hidden. this gives an overall cleaner look to the machine. The downside is that if anything should "break" i would have to disassemble the complete carrier.

The redesigned belt holders on the front of the machine are possibly what makes the biggest difference regarding overall stability. While the original parts bend pretty much, my chunkier design is rock solid.

The standard Nema 14 stepper motor for the z axis might make the biggest difference regarding durability. While the motors of the original machine are running close to their limits this Nema 14 has lots of reserves. Anyone who builds the ANT should definitely go for the updated version with stronger motor.

Unlike the original machine i don't use o-rings for the outrunner-to-spindle connection. I use a closed GT2 belt with a 4:5 transmission what increases the spindle speed by 25%. But this something that could be done with o-rings, too. The downside is that in case that the bit is stuck the motor would stop abruptly, too. The o-rings on the other hand would slip in this situation. On the other side a closed GT2 belt probably is more durable.

I switched from ER8 to ER11. This was planned early on because the Floating Engraving Tool from CNC-AID originally only was available in 1/4" size while ER8 only supports 6mm max. In the meantime the tool is also available in a 6mm version. Any ANT owner should be warned that this tool adds some length to the drilling bit making it incompatible with the ANT.

Sunday, June 13, 2021

The ANT PCB Maker - XXL conversion (WIP part1)

 To understand what i am building please take a look into the presentation of the ANT PCB Maker.


 I started building the original machine shortly after the release of the project as i like CNC machines and always wanted to make some small PCBs for some projects. For this first build the only changes i made was using Nema 17 instead of Nema 11 for X/Y Axis and later on i designed a custom electronics enclosure and added a cable chain. 
The main things i wanted to be improved for my bigger build where the following:
- A bigger working area as i want to create PCBs for keyboard style input devices.
- A better motor for the z axis. The one in the first version was way under powered and the current build of the Ant comes with a better solution (but still close to its limits).
- A better modularity of the CNC head to exchange with different tools.
- A less noisy spindle motor as i live for rent and don't want to anger my neighbors.
- Wood and possibly even metal engraving? Who knows...

I made some calculations on paper and came up with an aluminium profile length of 320mm for X and Y.
This way i wanted to achieve a working area that could work with 150x200mm PCBs. I also switched from the 10mm Makerbeam profiles to 20mm profiles.
In the next step i designed electronics enclosure, Nema 17 mounts for X/Y and added linear rails to my design.

The electronics enclosure was designed more closed than the original design to protect from dust. In the current state the top is open as i still have to design a mount for a cable chain. I have 2 connections for external power supplies so i could separate the power for spindle motor and the stepper motor electronics.

The second step was designing the Y carriers with X axis and the belt mounts on the front corners. I have chose 10mm rods instead of the 6mm rods for the X axis. The mounts for redirecting the belts with pulleys are designed more robust than the original ones.


The most complicated construction was the wagon mounted on the X axis. The design is close to the the original design except for the Z motor. All the mountings for the bearing were designed in a way that replacing/removing them is pretty easy. So if i want to make updates to the design i can remove them without using raw force.
I installed 4 end stops for X and Z and modeled cable canals inside the print to hide the cables. 
As i want a bigger motor and more flexibility in changing tools i went the classic CNC way and mounted the motor on top with its threaded rod between the Z axis rods (6mm).  

In case you miss the threaded rod in this picture. Like some other parts i just couldn't find correct models - so it only exists 'in my head'.

This construction also has mounts for a short cable chain on the left to hold the cables to the spindle motor.

The last step (so far) was adding an experimental mount for a Proxxon Micromot 50/E (Amazon) that i already have and that is super silent in hand operation.

Unfortunately the Micromot does not stay quiet when put into the mount. The machine acts as an resonance body and the noise at 20k rpm gets pretty close to the original ANT. While achieving a tiny bit less noise at much higher speed the downside is that the spindle is farther away from the X axis than it would be possible with a configuration like in the ANT.
What exactly causes the resonances is hard to tell. Using thicker rods than 6mm might help or printing with more infill instead of the 60% i used. But since reprinting or even redesigning would take a lot of time i probably won't have the answer soon.

The current state of my project compared to the (mostly) original ANT:

The next things i have to do are:
- Add end stops for the Y axis.
- Create create cable chain mount on electronics enclosure and on head.
- Create a mount for MDF board and put PCB mounts on it.
- Find a final solution for a spindle motor with less noise.



Wednesday, October 3, 2018

The most basic DIY selfdestruct-controller 101 for Star Citizen with Arduino Leonardo

The noises in the background are from my 3d-printer creating parts for my "real" controller...

Creating a simple DIY input controller with Arduino Leonardo is pretty easy.

First you need to setup the hardware:

Therefor you need a controller board like the Leonardo that is able to send keyboard commands via USB. Then you have to create a circuit between 2 pins (usually ground pin and a signal pin) that you can open and close. The most basic version is simply wiring and unwiring those pins by hand. So this was made to demonstrate this in the most basic way i could think of.
Last but not least you need to connect the Board via USB to you computer to finish the hardware setup. Now you are able to program the board with software like Arduino IDE. After that you will be able to send keyboard commands from board to PC.


Now you can program the board. I won't describe how to use the Arduino IDE in detail as there are many tutorials in the web already - like this official one on the Arduino website.

The Code:


/*
  Input Pull-up Serial

  This example demonstrates the use of pinMode(INPUT_PULLUP). It reads a digital
  input on pin 2 and prints the results to the Serial Monitor.

  The circuit:
  - momentary switch attached from pin 2 to ground
  - built-in LED on pin 13

  Unlike pinMode(INPUT), there is no pull-down resistor necessary. An internal
  20K-ohm resistor is pulled to 5V. This configuration causes the input to read
  HIGH when the switch is open, and LOW when it is closed.

  created 14 Mar 2012
  by Scott Fitzgerald

  This example code is in the public domain.

  http://www.arduino.cc/en/Tutorial/InputPullupSerial
*/

//include keyboard library for key commands
#include "Keyboard.h"

int lastVal = HIGH;

void setup() {
  //configure pin 2 as an input and enable the internal pull-up resistor
  pinMode(2, INPUT_PULLUP);
}

void loop() {
  //read the pushbutton value into a variable
  int sensorVal = digitalRead(2);
  //print out the value of the pushbutton

  // Keep in mind the pull-up means the pushbutton's logic is inverted. It goes
  // HIGH when it's open, and LOW when it's pressed. Turn on pin 13 when the
  // button's pressed, and off when it's not:
  if (sensorVal == HIGH) {
    if (lastVal == LOW){
      Keyboard.release(KEY_BACKSPACE);
      delay(50);
    }
    lastVal = HIGH;
  } else {
    if (lastVal == HIGH){
      Keyboard.press(KEY_BACKSPACE);
      delay(50);
    }
    lastVal = LOW;
  }
}
 
This code is based on an tutorial on the Arduino website: https://www.arduino.cc/en/Tutorial/InputPullupSerial

What the code does is reading the signal on pin 2 and comparing it to its last value. This way we find out when the state of the signal changes. When the state changes from HIGH to LOW send the command that Backspace was pressed. When the state changes from LOW to HIGH we want the button to be released.
Now imagine to cut the wire into half and putting a push button in between and you have a complete Star Citizen controller once you put it into a box.

The Leonardo board with cable in pin 2 and the other end next to ground pin. Once it is put into ground the board immitates a pressed backspace button.

Friday, September 28, 2018

Hello World

Hello World!

This is my first post testing how this works. :)