How to mill and drill double sided PCB using transformations and warp

MILLING DOUBLE SIDED PCB’S WITH CNC USB CONTROLLERS

This tutorial will help you with production of double-sided PCB’s with your CNC machine.

Before you start, please be sure that machine is properly set-up and calibrated. Gerber and drill files should be generated with correct parameters.

Since tutorial for single sided PCB’s already describes the gerber and drill files import parameters in detail, we suggest that you read that tutorial first to clear out some facts regarding parameters and procedure itself.

Because we will capture reference points coordinates with a camera, camera offset needs to be set.

Tutorial for machine setup:
Machine setup tutorial

Tutorial for SPU configuration:
SPU tutorial

Tutorial for single sided PCB:
PCB tutorial

Tutorial for calibrating camera offset:
Camera offset

Steps for milling a double-sided PCB are as follows:

TOP Layer

1.) Mount copper board to machine table
2.) Set “Current XY” offset
3.) Drill and store reference points
4.) Measure the surface of the board (“Warp”)
5.) Import “Gerber TOP” file
6.) Apply “Warp”
7.) Mill TOP layer

BOTTOM Layer

1.) Turn around the copper board and mount it to machine table
2.) Set „Current XY“ offset
3.) Capture reference points with camera
4.) Measure the surface of the board (“Warp”)
5.) Import „NC drill“ file
6.) Use transformation from points
7.) Drill holes
8.) Import BOTTOM layer gerber
9.) Use transformation from points
10.)Apply „Warp“
11.)Mill BOTTOM layer
12.)Clear Copper

TOP layer

1.) Mount copper board to machine table

You can use a vise, double sided tape, vacuum board or even screws to attach the board on the machine table. Whatever works for you best.

VpetjePertinaksa

2.) Set “Current XY” offset

The copper board should always be little bigger than the actual PCB layout. Since we are making a double sided PCB, we will use reference points for the needs of transformation, therefore we will need slightly bigger board.

Reference points should be drilled at such coordinates where they would not interfere with milling, drilling and measuring of a surface. So when you will be setting offset XY=0 position, take into consideration where reference points will be drilled and where actual PCB milling will take its place in relation to XY=0. For this tutorial we positioned reference points on the outskirts of the copper board(see image below).

Working XY offset should be set in the origin of cross-hatching area(see image below). This area represents the PCB layout as also a surface of measuring area.

LayoutResized2

To set working offset from machine menu: “Machine/Offset/Current/XY” or click on the icon from toolbar.

3.) Drill and store reference points

As already mentioned earlier, reference points should be positioned somewhere on the board where they would not distract the drilling/milling process.
Reference points are basically coordinates which are later used in transformation process, where bottom layer is transformed so that is “synced”(mirrored and aligned) with the top layer.
Reference points coordinates will be stored and later loaded into transformation matrix table.

Storing and drilling reference points:

-Insert coordinate of reference point into MDI and hit enter, machine will move to entered position:
MDIReferenceDrillPoint

-When machine reaches position you store it with:“Machine/Capture & Measure Points/Capture/Store Position Point”:
StorePositionPoint

-Manually drill the hole by jogging Z axis with arrow keys(SW, PC keyboard or jogging keyboard)

-Mark drilled hole with a sequence number using a pen.

Follow these steps for each reference point, respectively.

My reference points(used for this tutorial):
1.) -3 , 5
2.) -3 , 35
3.) 60 , 35
4.) 60 , 5

Drilled and marked reference points:

MarkedOrderOfRefPoints

4.) Measure the surface of the board (“Warp”)

Already smallest PCB surface height irregularities can create bad results in terms of milling. That’s why we will use “Warp” feature which will compensate different surface heights of the board within the milling process.
More on how to set measuring parameters and about procedure itself follow this link: Warp tutorial
NOTE:Do not apply Warp, Warp is applied in Step 6. Also make sure all previous points are cleared, you can do that by clicking: “Machine/Capture&Measure Points/Clear/Clear Points Z”.

Measuring the surface of PCB board:

MeasuringGrid

5.) Import “Gerber TOP” file

Click:“File/Import gerber”

How to configure gerber milling parameters follow this link: Gerber import tutorial

GerberTopImported

6.) Apply “Warp”

Previously measured surfaced points will now be used for “warping” the toolpath.

Click: „Program/Advanced/Warp“ to apply Warp.

7.) Mill TOP layer

MillingTop

MilledTop

BOTTOM layer

1.) Turn around the copper board
Mount it to machine table and mark each reference point with correct sequence number using pen.
The sequence number of bottom reference point is the same as it is for its corresponding top reference point.

2.) Set “Current XY” offset

Like already mentioned in the second step of previous chapter(see image), consider the PCB layout area and surface measuring area when setting XY offset.You don’t need to be exact, use approximate position for XY=0.Transformation will make sure that bottom and top layer will fit perfectly.

3.) Capture reference points with camera

Capture all coordinates of drilled holes using camera with “Machine/Capture & Measure Points/Capture/Capture Camera Point”.
When capturing reference point coordinates you must follow the same sequence as for drilling. Follow the marks on bottom side that you made earlier (1.,2.,..).

To display camera view click: „Machine/Camera/Show Camera“

CamerBotReferenceCapture

CameraBotReferenceCapture

4.) Measure the surface of the board (“Warp”)

More on how to set measuring parameters and about procedure itself follow this link: Warp tutorial
NOTE:Do not apply Warp, Warp is applied in Step 10. Also make sure all previous points are cleared, you can do that by clicking: “Machine/Capture&Measure Points/Clear/Clear Points Z”.

MeasureGridBOT

5.)Import Drill file

Drill file is a g-code program for drilling holes of a PCB. Now, we could drill holes already when board was prepared for milling a top layer, but since drilled holes would impede the measuring process of the bottom surface, we will drill them after that.

Click:“File/Import NC Drill”

On how to configure drill parameters follow this link: Gerber import tutorial;Step 4

6.) Use transformation from points

Because we turned over the copper board, our drill toolpath now needs to be mirrored. We will achieve mirrored toolpath by transforming it. After transformation, drill toolpath will be correctly mirrored and aligned with the TOP layer.

Use “Program/Advanced/Transform from points“:.

You will notice that the table is already populated with coordinates. Previously stored reference points have populated „From“ group of points and camera captured points populated „To“ group of points.

Apply transformation(click “Calculate” button):

TransfomationFromPoints

7.) Drill holes

If everything is OK, we can proceed with drilling holes.
DrillingBOT

8.)Import BOTTOM layer gerber

Click:“File/Import gerber”

On how to configure milling parameters follow this link:Gerber import tutorial

9.) Use transformation from points

Because we turned over the copper board, our mill toolpath now needs to be mirrored. We will achieve mirrored toolpath by transforming it. After transformation, mill toolpath will be correctly mirrored and aligned with the TOP layer.
This procedure is the same as for drilling holes only now bottom layer gerber file is used.

Use “Program/Advanced/Transform from points“:
All “From” and “To” group of points should already be loaded into the table.

TransfomationFromPoints

10.) Apply “Warp”

Click: „Program/Advanced/Warp“ to apply Warp.
We measured the bottom surface with a drill bit, and while we did perform a “Measure Grid Z Offset” to set Z0 of the board, we changed our tool from drilling bit to a milling bit and therefore “Measure Grid Z Offset” point is now irrelevant so we need to measure working Z offset again.

11.)Mill BOTTOM layer

MilledBOT_1

How to connect Probotix motor driver with 10 pin cable?

HOW TO CONNECT PROBOTIX MOTOR DRIVER WITH 10 PIN CABLE?

It is easy to create 10pin cable for Probotix driver – just “cross” two wires to other side.

probotix10pin

pins

Wie benutze ich PlanetCNC Software und Controller um die CNC Maschine einzustellen?

Ich werde versuchen ihnen zu zeigen, wie Sie ihre CNC mit PlanetCNC Software einstellen. Ich werde meine Portal-Maschine als Beispiel verwenden, aber Sie können es auf allen Maschinentypen auf diese Weise tun. Ich benutze Metrik (Millimeter) Einheiten, aber alles ist mit imperialen (Zoll) Einheiten außer Zahlen, die unterschiedlich sind (1mm ist etwa 0.03937inch), gleich.

1

“Schritte pro Einheit” Einstellungen werden bereits berechnet und eingestellt. Sie sollten überprüfen ob die Entfernungen in allen Richtungen korrekt sind, wenn die Maschine bewegt wird. Wenn die Positionsanzeige sich um 100mm ändert, dann sollte sich die Maschine auch 100mm bewegen.

Zunächst müssen wir die Offsets auf Null setzen.. Arbeiten mit Offset Null wird mit dem Befehl “Maschine / Offset / Null” gesetzt. “Empty”-Tool sollte mit “Maschinen-/ Tools / Select / Empty” und Werkzeugkorrektur sollte auf Null gesetzt werden und mit “Maschinen / Werkzeuge / Null Tool Offset”-Befehl ausgewählt werden. Diese Befehle werden später noch erläutert. Denn jetzt ist es wichtig, dass alles auf Null gesetzt wird.

Endschalter
Die Maschine, die ich verwende hat 5 Endschalter. Zwei Endschalter X, zwei Y-und einer auf Z-Achse . Um sicherzustellen, dass alle Endschalter arbeiten, werden Triggerschalter mit Hand-betätigt, wobei die Positionsanzeige rot oder violett wird.

2

Betätigen der Endschalter sollte die Maschine anhalten. Die Maschine sollte auf E-Stop-Modus gehen. Um diesen “Endschalter Stop” zu ermöglichen sollten die Checkboxen überprüft werden.

3

Mittels Anfahren auf den Endschalter überprüfen Sie die Richtung der Endschalter , ob Sie die Maschine von Hand stoppen und lösen können. Die Maschine sollte aufhören. Achten Sie darauf, das sich nicht verletzen. Ihre Hand in der Nähe von sich bewegenden Maschinen ist in der Regel keine gute Idee! Also Sicherheitsabstand einhalten!

4

Wenn die Maschine stoppt, sollten Sie in der Lage sein in entgegengesetzter Richtung zu verfahren. Alle 5 Endschalter sollte wie folgt überprüft werden.

Die Endschalter werden als Referenzschalter verwendet. Das bedeutet, dass wir sie nutzen, um Maschine absoluten Koordinaten festzulegen. Dies nennen sich Referenzfahrt.

Heimwärts
Wir prüfen nun, wo von der Maschinen die absolute Nullstellung ist. Normalerweise arbeitet die Maschine in relativen Koordinaten, und es ist nicht wirklich wichtig, wo der absolute Null ist. Wichtig ist, dass es immer an der selben Position ist. Zum Markieren habe ich etwas Klebeband aufgeklebt, so dass Sie es besser auf dem Bild sehen können.

5

Werkzeug in die Spindel einsetzen und die Maschine auf diese Position verfahren. Seien Sie vorsichtig, das sich ihr Werkzeug nicht in den Maschienentisch eindrückt, wenn Sie die Z-Achse herunterfahren. Sie können das Werkzeug lose in die Spindel anziehen, damit bei einem Unfall nichts beschädigt wird.

6

Diese Position sollte nun für die Maschine das absolute Null sein. Befehle für den Wechsel an der Maschine, zur absolute Position befinden sich im Menü “Maschine / Set Position”. Es ist in der Regel nicht sinnvoll, die absolute Position jedesmal zu ändern. Stellen Sie sicher, dass “Machine / Set Position / aktivieren” eingestellt ist, um diese Befehle zu aktivieren. Später werden wir diese deaktivieren, um unerwünschte, absolute Positionswechsel zu verhindern. Jetzt führen wir den “Machine / Set Position / Zero”-Befehl aus und stellen die absolute Position auf Null.

7

Sie werden feststellen, dass die Positionsanzeige mit Null angezeigt wird.

8

Langsam fährt die Z-Achse in Z + bis der Endschalter angefahren ist und die Maschine stoppt. Positionsanzeige wird violett.

9 10

Schreiben Sie Z-Position (253.8375mm in diesem Fall) auf. Verfahren Sie in die entgegengesetzte Richtung bis der Endschalter gelöst wird.
Wiederholen Sie dies für die X-Achse.
Langsam verfahren in X-Richtung bis Endschalter angefahren ist und die Maschine stoppt. Positionsanzeige rot.

11 12

Notieren Sie sich die X-Position (-127.6833mm in diesem Fall). Verfahren Sie in die entgegengesetzte Richtung bis das der Endschalter losgelassen wird.

Und einmal für die Y-Achse.
Langsam verfahren in Y-Richtung bis Endschalter angefahren ist und die Maschine stoppt. Positionsanzeige rot.

13 14

Notieren Sie sich die Y-Position ( – 223.6188mm in diesem Fall). Verfahren Sie in die entgegengesetzte Richtung, so dass Endschalter losgelassen wird.

Wir haben jetzt die Endschalterpositionen für alle 3 Achsen und wir können Referenzfahrt benutzen .
Einstellungen öffnen , Abschnitt “Achsen / Homing ” und aktivieren Sie ” Enable” .
In der Regel wollen wir nach Hause mit der Z-Achse, so setzen wir zunächst ” Sequence” für Z-Achse auf “1”. Wollen wir auch mit X und Y zur gleichen Zeit nach Hause, so setzen wir ” Sequence” für X und Y auf “2” .
Wenn die Maschine die Endschalter bei Referenzierung bis zum Anschlag auslöst, ist es es nur ein Augenblick. Deshalb müssen wir uns den Endschaltern mit langsamer Geschwindigkeit nähern. In diesem Tutorial werden wir “Speed ​​” auf 500mm/min setzen. Da aber jede Maschine anders ist , sollten Sie herausfinden, wie Sie es einstellen müssen.

Wir verwendeten Z+, X- und Y- Endschalter in diesem Tutorial . Dies ist die Einstellung “Richtung” .
Vielleicht haben Sie bemerkt , dass wenn der Schalter ausgelöst wird Sie wieder eine kurze Strecke zurück bewegen müssen, um sie freigeben zu können . Einige Schalter haben bei längere Distanz sehr wenig, aber alle Schalter brauchen das. Für Schalter auf dieser Maschine sind 3mm ein guter Wert. Dieser wird als “Return Entfernung ” gesetzt. Der Schalter tatsächlich erfordert viel weniger, aber das ist gut so (Sicherer Wert) . Verwenden Sie keine 0 !
Für den “Set Position” Wert werden wir Endschalter-Positionen, die wir zuvor gemessen haben, verwenden. Wir addieren / subtrahieren 3mm , die wir für “Rückkehr Distance” verwendet haben.
Mit “Gehe zu” setzen wir , wohin wir die Maschine hinbewegen wollen, nachdem der Endschalter erreicht wird. Die Maschine wird an dieser Position nach der Referenzfahrt sein. Normalerweise ist es X0 Y0, und Z in irgendeine sicheren Höhe . Wir wissen jetzt, dass die Maschinen eine höchste Z-Position 250,84 hat. Von unserem Messen ein paar Schritte zurück gehen, so scheint uns für Z200 ein guter Wert.

Normalerweise bewegt sich erst die Maschine auf alle Endschalter und geht dann auf ” Gehe zu” -Position. Wenn wir diese Reihenfolge ändern wollen um es zur ersten Position zu bewegen, können wir das mit “Go To First” überprüfen, sobald die Achse die Endschalter auslöst. Einige Maschinen benötigen dieses um das Klemmen zu vermeiden. Diese Maschine braucht das nicht.

Hier sind nochmal alle Einstellungen :

15

Nun können wir die Einstellungen schließen, damit “Maschinen-/ Home”-Befehl aktiviert wird (wenn es nicht geht, drücken Sie dann zweimal anhalten, um E-Anzeige Aktualisierung zu erzwingen).
Wir sind nun bereit, “Maschinen-/ Home” für die erste Zeit auszuführen. Es gibt hierfür in der Symbolleiste eine Schaltfläche dafür.

Wie immer, bereit sein, die e-Stop drücken, wenn etwas schief gehen sollte.
Nach Referenzieren der Maschine ist bei X0 Y0 Z200. Das ist genau 200 mm über die rote Markierung, die wir gemacht haben.

16 17

Maschine ist referenziert und jetzt können wir absolute Koordinaten verwenden. Wir können überall die Maschine hinbewegen, wo wir wollen, und wir wissen genau, wo sie sich gerade befindet. Es ist wichtig, ab jetzt nichts an der absoluten Position zu ändern. Wir werden jetzt das Häkchen bei “Machine / Set Position / aktivieren” .

18

Wenn Ihre Maschine aus irgendeinem Grund Schrittverluste hatte, können Sie den Referenzpunkt wieder anfahren.

Tischgröße
Nun, da wir die Maschine überall hinbewegen können wollen wir genau wissen wo sie sich befindet, und wir können dieses auch nutzen, um den Maschinentisch zu vermessen. Wir verfahren langsam die Maschine in X + und Y + Richtung bis die Endschalter angefahren und dann ein wenig zurück, so dass die Schalter losgelassen werden. Schreiben Sie Positionen auf. Bei mir sind es X813.8000mm und Y460.4208mm.

19 20

Für die Tabelle ist nun alles vermessen und wir wollen nun diese Daten auch benutzen und setzen Limit Switches und Soft Limits auf Enable. Die orange Box auf dem 3D-Display ist nun genau dieser Arbeitsraum der Maschine

21

Sanfte Begrenzungen (Soft Limits)
Soft Limits werden benötigt, um die vorher Maschine zu verlangsamen, um sie dann zu stoppen, bevor die Maschine in harter Weise vom Endschalter gestoppt wird oder bevor sie abstürzt. Ich empfehle die “Soft-Limits Entschleunigen” und die “Soft-Limits Strict” einzustellen, was damit ebenfalls überprüft wird. Manchmal müssen wir Soft Limits deaktivieren und dafür gibt es einen Befehl im Menü “Maschinen / Soft Limits”. Wenn Soft-Limit ausgelöst hat wird die Positionsanzeige gelb sein.

Messwerkzeug zum Bestimmen des Offset am Werkzeugsensors
Wir können einen Werkzeugsensor befestigen. Der Werkzeugsensor wird in der Regel verwendet, um Werkzeuglängenkorrektur zu messen. Dafür brauchen wir eine referenzierte Maschine, so dass wir absolute Positionen verwenden können. Auf diese Maschine, die wir für dieses Tutorial verwenden, wird ein Werkzeugsensor in irgendeine Ecke befestigt und mit dem INPUT5 Stift verbunden. In diesem Tutorial verwende ich einen Schalter mit Hebel, der gut für diesesTutorial ist, sollte aber nicht auf realen Maschine verwendet werden. Da der Schalthebel nicht horizontal ist und es wird zu keinen genauen Ergebnisse kommen.

22

Zuerst werden wir den Werkzeugsensor in den Einstellungen aktivieren. Dies wird ermöglicht durch Sensor bezogene Menüs und Befehle. Dann müssen wir testen, ob es funktioniert. Schalten Sie den Sensor mit der Hand. Das Wort “Sensor” sollte in der Software-Statusleiste angezeigt werden. Das brauchen wir, um zu testen, ob der Sensor die Maschine stoppt. Bewege Sie die Maschine über den Sensor in einer hohen Z-Position. Dann langsam von Hand verfahren bis der aufgebaute Sensor auslöst. Die Maschine sollte nun anhalten.

Verfahre Sie die Maschine so, dass das Werkzeug direkt über Sensor steht. Langsam verfahren, bis das Werkzeug den Sensor auslöst und anhält. Schreiben Sie die Position auf. In diesem Fall ist X-111.6854mm, Y453.2417mm, Z34.8979mm.

23

Öffne erneut die Einstellung, Kapitel “Werkzeug Sensor”, Gruppe “Tool Sensor Fixed”. Wir setzen hierzu X und Y “Location” den Sensor. Wir könnten auch Lead-in “Move” einstellen, aber für die meisten Maschinen ist dieser Null. Wir müssen den “Speed​​”, der niedrig sein sollte, weil der momentane Anschlag, wenn das Werkzeug den Sensor auslöst, einstellen. “Richtung” ist in der Regel eingestellt. Wegen dem langen Hebel auf meinem Sensor-Schalter “Return Distance” ist dieser recht groß. Ich werde es auf 5 mm einstellen. Wir haben auch die Z-Position des Sensors und wir können mit “Set Position Z” den Wert setzten. Wir müssen 5mm, die wir für “Rückkehr Distance” verwenden, hinzuzufügen. In der Regel wollen wir die Maschine mit maximal möglicher Z-Höhe bewegen. Diese Maschine hat Z + Grenze knapp über 250 mm ist. 250mm sollte ein guter Wert für “Sanfte Höhe” sein. “Return”-Checkbox aktiviert die automatische Rückkehr zur Position vor Werkzeuglängenmessung .

24

Jetzt können wir testen, ob Werkzeugkorrektur mit fest montierten Messwerkzeugsensor funktioniert.
Bewege die Maschine irgendwo in die Mitte und speichern Sie das in ” Machine / Tools / Measure Tool Offset ” . Es gibt auch auf der Symbolleiste eine Schaltfläche für dieses. Wie immer, anfangs sollte man immer bereit sein e -Stop zu drücken.
Wenn alles richtig ist, sollte die Maschine schnell zur sicheren Höhe fahren, um dann auf die festen Sensor Lage zu durchqueren, . Dann wird mit geringer Geschwindigkeit verfahren , bis der Sensor ausgelöst wird. Die Maschine wird den Sensor mit einer sicheren Distanz der Werkzeugkorrektur in Z-Position auslösen, berechnen und zurück fahren.. Dann wird sie schnell nach oben auf sichere Höhe und zurück zur ursprünglichen Position durchqueren und sie dann nach unten bewegen , bis die Spitze des Werkzeugs auf gleiche Höhe wie es in Z vorher war, ist..
Bei aktivierter Werkzeugkorrektur am Kontrollkästchen ein kleines “T” , knapp über Positionsanzeige aktiviert. Wenn dieses “T” im Kontrollkästchen aktiviert ist, gehört die Positionsanzeige zur Werkzeugkorrektur .
Es ist sehr wichtig. Machen Sie sich mit dem ” Machine / Tools / Measure Tool Offset “-Befehl vertraut. Siehe mein Video, wo ich die Werkzeuglänge ändere und sie immerwieder auf die selbe Position zurück kehrt. Beachten Sie, wie ich das mache, so das wenn etwas schief geht, ich immer noch Zeit habe, den e -Stop zu drücken .

 

DIY

Here you can download schematics, pcb, firmware and software – everything needed for DIY build.
DIY controllers are same as assambled Mk1 from my shop – no differences.
You can use this work and make derivative works based on it but only for noncommercial purposes.
For commercial purposes you need written permission from us.

Preprogrammed PIC and empty PCB are also availble in our Webshop

Download DIY resources

Firmware bootloader

Schematic (pdf) – for DIY PCB
Schematic for jog keys (pdf)
PCB (pdf) or PCB (png) 85mm x 123mm
Overlay (pdf)
Parts List

PCB board documentation for purchased PCB
Here are instructions after you program firmware into PIC!

Board description:

RealPCB

1 – driver board connectors
2 – aux, flood and mist outputs
3 – +5V power
4 – external reset button connector
5 – internal reset button
6 – limit switches connectors
7 – status LED connector
(blinks if controller is working)
8 – manual input speed connector
9 – 8 manual input keys connectors
10 – USB connector
11 – USB connector (internal)
12 – Driver enable switch connector
13 – ICSP connector

Silviu created his own schematics. They are available here:

Schematic (pdf)

Schematic for keys (pdf)

Schematic for Eagle (.sch)

How to connect and setup MPG pendant?

HOW TO CONNECT AND SETUP MPG PENDANT?

Settings

Enable “E-Stop” to use E-Stop switch connected to CTRL1 pin. Enable “Invert” option, if your E-Stop switch is active low (NC type).

Enable “Use MPG” to use MPG pendant. Most common PPR value for MPG is 100 pulses per revolution. Enable “Reverse” to set reverse MPG direction.

Enable “Use Rev. Index” to use index signal for measuring spindle RPM and spindle position. Most common PPR value is one, but you can use higher value.

With higher values you can enable fast options to increase response time. Enable “Invert” option if your signal is active low type.

Enable “Use Rev. Encoder” to use encoder for measuring spindle RPM. Set “PPR” to your encoder pulses per revolution value. Enable “Reverse” to set reverse direction.

mpg_set1

“Max Speed” is maximum speed that machine can travel when operated with MPG.

“Distance” is length of one step.

Seven modes are possible for Mk3 controllers and four modes are possible for Mk2 controller.

Standard MPG pendant has switch for Mode 1, 2 and 3. X1 on MPG selects “Mode1”, X10 “Mode2” and X100 “Mode3”.

For each mode you can set if “Step” mode is enabled.

Mk2:

Step mode enabled:

Factor value is used to calculate distance multiplier. Step distance = “Distance” *(1000 / “Factor”)

For example:

If “Distance” is set to 0.01mm and factor is 1000, then step is 0.01mm long.

If “Distance” is set to 0.01mm and factor is 100, then step is 0.1mm long.

If “Distance” is set to 0.01mm and factor is 10, then step is 1mm long.

Step mode not enabled:

Factor value is set to calculate speed multiplier. If factor value is higher, then you need to turn MPG encoder faster to achieve same speed.

Mk3:

Step mode enabled:

Factor value is distance multiplier.

For example:

If “Distance” is set to 0.01mm and factor is 1000, then step is 10mm long.

If “Distance” is set to 0.01mm and factor is 100, then step is 1mm long.

If “Distance” is set to 0.01mm and factor is 10, then step is 0.1mm long.

Options:

If first “Option” is enabled, then steps are buffered.

Step mode not enabled:

Factor value is speed multiplier in percent

For example:

If “Max Speed” is set to 2000mm/min and factor is 100, then “Max Speed” used is 2000mm/min.

If “Max Speed” is set to 2000mm/min and factor is 200, then “Max Speed” used is 4000mm/min.

If “Max Speed” is set to 2000mm/min and factor is 10, then “Max Speed” used is 200mm/min.

Options:

No “Option” enabled: Normal behaviour.
Only first “Option” enabled: Potentiometer from Jogging keyboard controls the speed.
Only second “Option” enabled: Machine speed depends on speed of encoder rotation.
Both “Options” enabled: Machine speed is synchronised with encoder rotation.

mpg_set2

Connections

Pinout for CTRL connector for Mk2:
CTRL 1: E-Stop
CTRL 2: MD1 – Mode switch (00-mode0, 10-mode1, 01-mode2, 11-mode3)
CTRL 3: MD2 – Mode switch
CTRL 4: Axis switch (00-no axis, 10-X, 01-Y, 11-Z)
CTRL 5: Axis switch
CTRL 6: Encoder
CTRL 7: Encoder
CTRL 8: Index signal for spindle synchronization or manual boot-loader
GND: Ground connections

conn16Mk2-ctrl

Pinout for CTRL connector for Mk3:

E-STOP: E-Stop
MD1: Mode switch
MD2: Mode switch
AX1: Axis switch
AX2: Axis switch
EN1A: Encoder for MPG
EN1B: Encoder for MPG
IDX: Index signal for spindle synchronization
+5V: Power supply for encoder
EN2B: Additional encoder
EN2A: Additional encoder
EN3B/AX3: Axis switch for additional axes or encoder
EN3A/AX3: Axis switch for additional axes or encoder
EN4B: Encoder for spindle synchronization
EN4A: Encoder for spindle synchronization
GND: Ground

conn16Mk3-ctrl

MPG wire colorsPinout for MPG adapter DB25 connector:
1 – +5V
2 – GND
3 – Encoder A
4 – Encoder B
5 – LED+
6 – LED-
7 – Axis X
8 – Axis Y
9 – Axis Z
10 – Axis 4
11 – X1 mode
12 – X10 mode
13 – X100 mode
14 – COM for switches (GND)
15 – E-Stop
16 – COM for E-Stop (GND)
17 – not used
18 – Axis 5
19 – Axis 6
20 – Encoder A’
21 – Encoder B’
22 – not used
23 – not used
24 – not used
25 – not used

mpg_sch

Plasma CNC and Proma THC (torch height control) with PlanetCNC

USING “PROMA COMPACT THC CONTROLLER” WITH PLANETCNC CONTROLLERS

All cables should be shielded. Everything should be properly grounded and earthed. Plasma torch is a big source of EMI, so consider a proper filtering.

Hardware:

There are two common versions of Proma THC controller:

1.) Proma Compact THC SD controller

THC controller itself generates “STEP/DIR” signals which drive Z axis accordingly to THC controller measurements:

THCSD

This wiring scheme itself is sufficient for user to correctly connect PlanetCNC controller and THC controller.

2.) Proma Compact THC 150 controller

THC150

THC controller controls the Z axis via JOG connector of PlanetCNC controller accordingly to THC measurements.

-JOG 8 is the input for controlling Z axis in negative direction (connected to DWN output terminal of THC controller)

-JOG 7 represents the input for controlling Z axis in positive direction (connected to UP output terminal of THC controller)

Note: Mk2 and Mk2/4 controllers have different JOG pinout.

Software settings:

In CNC USB controller software you set THC settings in “File/Settings/Axes/Options”.

SWSettings

‘THC enable’:
Enables THC control.

‘Axis’:
Select axis that will be controlled accordingly to THC controller measurements.

‘Speed only’:
THC control is applied only when machine reaches its max. set speed (THC is not applied when machine accelerates and decelerates).

‘Gear’:
Gear ratio for speed (to lower speed of axis compensation, softens the sudden moves).

How to connect external EStop or Pause switch on Mk1?

WHAT ARE 5 PINS NEXT TO LED?

Ext pin can be used to connect EStop or Pause switch. Ext pin must also be enabled in settings “Settings/Misc/ExtPin”.
Don’t forget pull-up or pull-down resistor!

Other pins can be used to connect external LED or reset button.

 

board_ExtPin

How to use motor enable/disable signal with EStop on Mk1?

HOW TO USE MOTOR ENABLE/DISABLE SIGNAL WITH E-STOP?

Controller can generate motor enable/disable signal on output3 when e-stop is pressed.

You need to uncheck “mist output” and check “enable output”. You can also invert output signal.

enable_setting

 

You can rewire output3 signal to enable pin.

enable1

enable2

enable3

enable4

enable5

enable_estop

Source

How to activate, import, request and export license

1. If you don’t have a license you need to send us activation code and controller serial number.

activate_menuactivate_request

2. If you have registration key, open “License activation” dialog and paste your registration key
.activate_menuactivate_response

3. If you have license data file (.dat, .lic or .zip) you can import it. There is no functional difference if using registration key or license data file.

import_menu

 

4. If you want to create backup copy of your license you can export it as license data file.

export_menu

How to use different settings for different machine configurations on same computer

CNC USB CONTROLLER DESKTOP SHORTCUT TUTORIAL

If you have multiple CNC machines(Machines of different dimensions or different types of machines) with its designated controllers, and you want to use them with only one computer,
it comes very handy to create desktop shortcuts with preset settings for specific machine. This way you can avoid importing setting files for specific machine every time you start the software.
However, note that you can not have multiple USB cables connected to your computer at the same time. Only one USB connection per machine usage.

This tutorial will help you create CNC USB Controller software shortcuts with desired settings.

Exporting setting file

When you set and adjust your machine’s settings you can export them into a file.
This way you will be able to use different setting files for different machines.

So that you would be able to distinguish which setting file is being used, you can write
desired name in the Description bar in Settings menu. E.g. CNC 1

Description

Name of setting file currently in use, will be seen in the title bar of CNC USB Controller software:

Name

In File menu, find and click Export settings.

Export settings

Your setting file must be saved in the install folder of CNC USB Controller software.

Save export setting file

Creating Shortcut

Right click on the CNCUSBController.exe file which is located in your install folder, and click Create shortcut.

Create Shortcut

You can name your shortcut like: CNC1

Name of shortcut

Right click on the created shortcut, choose Properties, and paste the name of the exported setting file (including .setting file extension)
in the Target dialog box at the end of target path, like this:

Shortcut properties

Be sure to leave a space in-between target path and pasted name of your settings file.

Shortcut is now ready to use. You can move your shortcut onto your desktop for an easier use.

Shortcut on desktop

For creating more desktop shortcuts using different setting files, just repeat the whole procedure.

How to set network connection on Mk3 controller

How to configure network settings for Mk3?

Computer can communicate with Mk3 controller via USB or Network connection.
If you choose to use Network connection then make sure that your computer with installed CNCUSB controller software is connected to network with network cable. One side of network cable goes to network switch, the other side goes to computer.
The same goes for controller network cable. One side goes to network switch other side goes to controller.

STEP 1: DISABLING WINDOWS FIREWALL

Windows firewall protection can prevent your computer from accessing controller over network. You can allow CNCUSB software to communicate with controller through Windows firewall.

1.)Click “Start” button

Start_button

2.) Find and click “Control Panel”

Control_Panel_button

3.) Click “Windows Firewall”

Windows_firewall_button

4.) Click “Allow a program or feature through Windows Firewall”

Allow_a_prog_button

5.) From list find “CNC USB Controller” entrie and enable first checkbox and the one under Home/Work.

Windows_firewall_allow

Go to Step 2.

STEP 2: CONNECTING YOUR CONTROLLER TO NETWORK

Plug your network cable into Ethernet connector on Mk3 controller.

Start CNCUSB controller software and click: File/Settings/Connection.

USB_connection

Enable “Scan” option and wait for about 30 seconds, and if everything is OK, you should be able to see your controller ( its serial number and IP number) on scan list.
USB_connection_scan

Now enable “Network” option. If you double click selected controller, its IP address copies into IP value boxes.

USB_connection_scan_Network

If you don’t see your controller on scan list proceed to Step 3.

STEP 3: RESETTING CONTROLLERS NETWORK SETTINGS

To reset the controller you have to “jump” two designated pins for about 15 seconds.

NOTE: Make sure that you don’t create any other short circuit on the board and that you are “jumping” the correct two pins. We recommend using tweezers for this.

1.) Unplug your power supply and USB cable ( Green “Power” LED must be OFF )

2.) Place jumper or create shortcut between two designated pins (see picture below)

3.) Plug in your power supply. (LED will be blinking rapidly for about 15 seconds then it will start to blink in bit slower frequency. This will indicate that your controllers network settings have been reset.)

4.) Remove jumper or shortcut from designated pins.

IMG_0092

IMG_0090

Controllers IP address is now 192.168.1.200 and DHCP option is enabled.
This assures that IP address and DHCP option are really at default values in case someone was changing controllers network settings.

Unplug and plug in your power supply and again try Step 2. If you still don’t see your controller on scan list then go to Step 4.

STEP 4: IDENTIFYING COMPUTERS IP ADDRESS

In order that your computer properly communicates with controller, computer and controller must be on the same network, which means that computer and controller must have the same sub net number.
Procedures below will help you to configure network settings of your computer and controller.

Identify how your computer gets its IP address assigned

The easiest way to find out is to click:

1.)Click “Start” button

Start_button

2.) Find and click “Control Panel”

Control_Panel_button

3.) Network and Sharing Center

Network_and_sharing_center

4.) Change adapter settings

change_adapter_settings

5.) Right-click on your local area connections and click Properties.

Local_Area_Connection

6.) Select Internet Protocol Version 4(TCP/IPv4) and click Properties.

TCP_properties

Here you will be able to see if option “Obtain an IP address automatically” or “Use the following IP address” is selected.

Option A: DHCP service present

If option “Obtain an IP address automatically” is selected, then your computer is probably using DHCP or is not on the network.
If your computer is on the network and is using DHCP then reason why your controller is not visible on the scan list is probably something else (make sure you followed Step 1 and Step 2).
If your computer is not on the network then see Option C.

TCPIv4

Option B: Configuring controller network settings for network without DHCP service

If option “Use the following IP address” is selected, then this means your network does not have DHCP service present.

When you connect your controller to network, controller waits for IP number from DHCP for about 30 seconds.
If after 30 seconds IP isn’t assigned, controller gets last assigned IP number. New controllers have this number in range 192.168.1.100 to 192.168.1.200.

This IP number maybe isn’t recognized by your network and therefore your controller is not visible on scan list.

You will have to:

1.) Change computers network adapter settings to be able to connect with controller (Step 5).
2.) When you are connected with controller change controllers network settings (Step 6).
3.) Change your adapter settings back the way they were (step 7).

It is advised that you write down computers network adapter values to avoid any stress later.

Go to Step 5.

Option C: Not on network

If there is no available network, your computer and controller can communicate if you connect them with network cable.
Connect your computer and controller with network cable and go to Step 5.

STEP 5: CHANGING COMPUTERS NETWORK ADAPTER SETTINGS

Like it was said previously in tutorial, if there is no DHCP device present in your network, controller gets last assigned IP number.
These numbers are range 192.168.1.100 to 192.168.1.200. But since you had to perform Step 2 (reset controller network settings) controllers IP address is 192.168.1.200.

Now you must set your computers network adapter settings to this sub net so that you will be able to change controllers network settings.

For Windows7:

1.)Click “Start” button

Start_button

2.) Find and click “Control Panel”

Control_Panel_button

3.) Network and Sharing Center

Network_and_sharing_center

4.) Change adapter settings

change_adapter_settings

5.) Right-click on your local area connections and click Properties.

Local_Area_Connection

6.) Select Internet Protocol Version 4(TCP/IPv4) and click Properties.

7.) Write down all current numbers of IP Address, Subnet Mask and Default gateway. You will need them later.

8.) Now for IP Address type in : 192.168.1.50
For Subnet Mask type in: 255.255.255.0
For Default gateway type in: 192.168.1.1

Use_the_following_IP_address_2

Go to Step 6. (If there is no available network go to Step 6.1)

STEP 6: CHANGE CONTROLLERS NETWORK SETTINGS

Connect your computer and controller with network cable.

Start CNC USB controller software. Click: File/Settings/Connection. Enable ‘Scan’ option.

If everything works, you should see your controller (its default IP address 192.168.1.200 and serial number) on scan list.

Select your controller from scan list and click the ‘Change’ button.

Disable DHCP option and for “Subnet mask” and “Default gateway” type in the values of your network adapter that you previously wrote down. For “IP address” first three values are the same as the values of your network adapter, just fourth value should be unique.

Click OK to confirm and save changes made. Now unplug/plug power supply.

Disconnect your computer and controller and connect controller to your network.
Go to Step 7.

STEP 6.1: CHANGE CONTROLLERS NETWORK SETTINGS

Connect your computer and controller with network cable.

Start CNC USB controller software. Click: File/Settings/Connection. Enable ‘Scan’ option.

If everything works, you should see your controller (its default IP address 192.168.1.200 and serial number) on scan list.

Select your controller from scan list and click the ‘Change’ button.

Disable DHCP option and click OK to confirm and save changes made. Now unplug/plug power supply.

This is your final step if you don’t have network available.

STEP 7: RESTORING SETTINGS OF COMPUTERS NETWORK ADAPTER

Don’t forget to restore previous “IP Address”, “Subnet mask” and “Default gateway” values of your computers network adapter.

Connect your computer and controller to your network. You should now be able to see your controller on scan view.

How to cut tapered cone with 4 axis foam cutter?

HOW TO CUT TAPERED CONE WITH 4 AXIS FOAM CUTTER?

Lets make a tapered cone with 150mm diameter on one side and 50mm on other side.

1. Create DXF file with circle
It is important to know diameter of circle. I’ll use 100mm circle which I created with CAD software. You can also get 100mm circle from sample files in your PlanetCNC software installation folder.
2. Import DXF
Uncheck everything except “Shift Extents To Zero”.
001
002
003
004

3. Convert Arcs to Lines
Because in g-code you can not use arcs with coordinates U, V and W you need to convert all arcs to lines.
005

4. Shift to center
We need to position our circle to center. Without this we will have problems later when we’ll scale this.
Because our circle diameter is 100mm we need to shift X and Y by value -50.
006

5. Copy XYZ->UVW
We can now copy circle to UV plane. Now we have cylinder with 100mm diameter with ceter at 0,0.
007
008

6. Taper cylinder
To create 150mm on XY side and 50mm on UV side we need to scale out 100mm cylinder by 1.5 on XY and 0.5 on UV side. As a result we have tapered cone with required dimensions.
You may need to shift it away from center before cutting. You may also need to rotate it get correct entry point for hot wire.

009
010

Try with different values and different DXF files. There are a lot of shapes you can get. Experiment.