In diesem Blog-Beitrag zeige ich, wie man FluidNC und Estlcam am OPEN-CNC-Shield 2 parallel nutzen kann, ohne umstecken zu müssen. Dazu wird das ControllerModule Dual Adapter verwendet. Ich zeige den Einbau und die Konfiguration anhand meiner MPCNC.
Dieser Adapter wird auf den Steckplatz für ControllerModule auf dem OCS2 aufgesetzt und bietet Platz für zwei zusätzliche Module. Dadurch ist es möglich, zwei unterschiedliche ControllerModule auf einem OCS2 zu betreiben. Über einen Schalter am Dual-Adapter lässt sich komfortabel zwischen den beiden Modulen wechseln. Es ist jedoch zu beachten, dass die Maschine zu jedem Zeitpunkt nur durch ein Modul gesteuert werden kann.
In diesem Video stelle ich die Kombination vom Zusammenbau bis zur ersten Inbetriebnahme an meiner Maschine vor:
Zusammenbau
Zunächst werden die Abstandsbolzen auf dem Dual Adapter mit M3-Muttern angebracht. Diese dienen der Befestigung des zusätzlichen ControllerModules.
Dann können die beiden ControllerModule angebracht und befestigt werden. Das Estlcam ControllerModule wird zusätzlich mit zwei 3D-gedruckten Stützen befestigt.
Für das Umschalten zwischen den beiden Modulen wird ein Schalter benötigt. Die Pinbelegung gibt es in der Dokumentation. Es kann ein typischer ON-OFF-ON oder ON-ON Schalter genutzt werden, auch SPDT-Schalter genannt: Amazon
Bevor das ControllerModule aufgesteckt wird, sollte der ESP32 für FluidNC mit der passenden Firmware bespielt werden. Siehe dazu den Abschnitt FluidNC Konfiguration.
Danach kann das Modul auf das OCS2 aufgesteckt werden. Bevor der Strom eingeschaltet wird, sollte das Thema ENA/Enable der Treiber aus der Dokumentation noch durchgelesen werden.
In Estlcam kann die Steuerung nun programmiert werden. Je nach Stellung des Umschalters kann jetzt zwischen Estlcam und dem FluidNC Controller gewechselt werden.
Achsenkonfiguration am OCS2
Die Achsenkonfiguration am OCS2 sieht bei mir so aus. Hierbei unbedingt das Kapitel über die Achsenkonfiguration aus der Dokumentation beachten.
An meiner MPCNC sind jeweils zwei Motoren für die X- und Y-Achse. Daher nutze ich „AxisA“ für X2 und „AxisB“ für Y2.
FluidNC Konfiguration
Ich habe für dieses Projekt an meiner MPCNC folgende Konfiguration verwendet. Bitte beachte, dass sich die Einstellungen der STEPs usw. für jede Maschine unterscheiden können.
name: "OCS2 FluidNC"
board: "OCS2 FluidNC Controller"
stepping:
engine: I2S_STREAM
idle_ms: 250
dir_delay_us: 1
pulse_us: 4
disable_delay_us: 0
axes:
# shared_stepper_disable_pin: i2so.12
x:
steps_per_mm: 50
max_rate_mm_per_min: 7000
acceleration_mm_per_sec2: 500
# max_travel_mm: 1000
# soft_limits: true
homing:
cycle: 2
positive_direction: false
mpos_mm: 0.000
feed_mm_per_min: 500.000
seek_mm_per_min: 1000.000
seek_scaler: 1.1
feed_scaler: 1.1
motor0:
limit_neg_pin: gpio.36:high
hard_limits: true
pulloff_mm: 5
stepstick:
direction_pin: i2so.1
step_pin: i2so.0
# motor1:
# limit_neg_pin: gpio.39:high
# hard_limits: true
# pulloff_mm: 5
# stepstick:
# direction_pin: i2so.7
# step_pin: i2so.6
y:
steps_per_mm: 50
max_rate_mm_per_min: 7000
acceleration_mm_per_sec2: 500
# max_travel_mm: 1000
# soft_limits: true
homing:
cycle: 2
positive_direction: false
mpos_mm: 0.000
feed_mm_per_min: 500.000
seek_mm_per_min: 1000.000
seek_scaler: 1.1
feed_scaler: 1.1
motor0:
limit_neg_pin: gpio.34:high
hard_limits: true
pulloff_mm: 5
stepstick:
direction_pin: i2so.3
step_pin: i2so.2
# motor1:
# limit_neg_pin: gpio.35:high
# hard_limits: true
# pulloff_mm: 5
# stepstick:
# direction_pin: i2so.9
# step_pin: i2so.8
z:
steps_per_mm: 50
max_rate_mm_per_min: 2000
acceleration_mm_per_sec2: 100
max_travel_mm: 1000
homing:
cycle: -1
motor0:
limit_all_pin: NO_PIN
stepstick:
direction_pin: i2so.5
step_pin: i2so.4
motor1:
null_motor:
# I2SO for shift registers
i2so:
bck_pin: gpio.22
data_pin: gpio.21
ws_pin: gpio.17
# SPI for SD Card
spi:
miso_pin: gpio.19
mosi_pin: gpio.23
sck_pin: gpio.18
sdcard:
cs_pin: gpio.5
card_detect_pin: NO_PIN
# I2C for OLED Display
i2c0:
sda_pin: gpio.14
scl_pin: gpio.13
oled:
i2c_num: 0
i2c_address: 60
width: 128
height: 64
radio_delay_ms: 1000
coolant:
# Ausgang 1
flood_pin: i2so.16:high
# Ausgang 2
mist_pin: i2so.17:high
# probe:
# pin: gpio.32:low:pu
Laser:
pwm_hz: 5000
output_pin: gpio.25:high
enable_pin: NO_PIN
disable_with_s0: false
s0_with_disable: true
tool_num: 0
speed_map: 0=0.000% 1000=100.000%
off_on_alarm: true
control:
safety_door_pin: NO_PIN
reset_pin: gpio.12:low:pu
feed_hold_pin: gpio.26:low:pu
cycle_start_pin: gpio.27:low:pu
macro0_pin: NO_PIN
macro1_pin: NO_PIN
macro2_pin: NO_PIN
macro3_pin: NO_PIN
Hallo zusammen,
ich habe ein kleines Problem. Ich habe meine Chinaspindel 1.5 kW mit FU „YL 620-A“ an das Board angeschlossen. Über Estlcam kann ich die Spindel starten und die Drehzahl regulieren. Leider läuft die Spindel nur mit ca. 8.000 bis 9.000 U/min statt mit 24.000 U/min.
Die Parameter habe ich wie folgt am FU eingestellt: P00.01 – 1
P00.23 – 6
P00.24 – 9
P03.10 – 60
P03.11 -1015
P03.12 – 60
P03.13 – 400
P07.08 – 3
Ich würde mich freuen, wenn mir jemand helfen könnte.
Lieben Gruß Thomas
hi Thomas,
bin auch gerade an meiner Spindel 🙂
Benutze auch den YL620-A
Wie hast du den den YL620-A den angeschlossen?
Gruß
Matthias
Hallo,
kann ich das Board auch parallel mit Estlcam und LinuxCNC nutzen?
Sobald es ein ControllerModule für LinuxCNC gibt, ja. Aktuell ist das noch in Entwicklung.
Hallo,
ich hätte eine Frage zu externen Motortreibern. Wenn ich z.B. den DM542T von Stepperonline verwende auf welche Spannung soll ich den einstellen und muss ich am Ocs2 auch hierfür Jumper setzen ? Der Treiber kann auf 5v oder 24V eingestellt werden.
Danke
Grüße Daniel
Hallo, das OCS2 nutzt 5V Steuersignale.
Hallo Matthias,
die Drehzahlregulieren an VI1 und GND und die Spindel an XGND und FOR.
Aber schaue dir auf YouTube das Video von Ingo’s Tipps an https://youtu.be/I802YXMy1Ww?si=AY63nWm4IDQhvMIX
Er hat auch eine PDF mit den Parametereinstellungen.
Gruß
Thomas
Moin Daniel,
ich bin auch gerade dabei die DM542T in Betrieb zu nehmen. Ist aber auch mehr Probieren als genaues wissen 😐
Die Treiber habe ich auf 5V Steuersignal gestellt. Ich Versorge die DM542T mit externen 36V, daher habe ich keine „Driver Versorgung“ an das Open-CNC-Shield_2 gelegt und auch den Jumper „J3“ nicht gesetzt.
PUL(-) und DIR(-) habe ich auf den Pluggable DriverModul auf GND gelegt. PUL(+) auf STEP und DIR(+) auf DIR.
Wenn ich den ENA in der selben Logik auflege kann ich die Achse nicht mehr verfahren,
also habe ich ENA(+) auf GND und ENA(-) auf ENA ohne gesteckten Jumper bei „JP1“. Ob das so richtig ist, weiß ich nicht!
Zumindest habe ich im eingeschalteten zustand (ohne aktiven Estlcam Controller) ein Haltemoment und mit Estlcam kann ich die Achsen verfahren.
Den Alarm Ausgang (ALM(+),ALM(-)) von DM542T kann ich gar nicht auf „Alarm“ anschließen, bekomme in beiden Möglichkeiten immer einen Daueralarm ohne das beim DM542T ein Alarm ansteht.
Decken sich deine Erfahrungen mit meinen oder hast du die DM542T anders angeschlossen.
Gruß
Matthias
Moin,
ich habe mal zwei Fragen zu Ihren OPEN-CNC-Shield 2, können Sie mir bitte einmal die Abmaße des Mainboard nennen.
Mir ist noch nicht klar wie ich auf den „Arduino Mega 2560“ die Firmware von Estlcam raufbekomme, kann dazu leider auch nix im Netz finden…
Gruß und Dank
Matthias
Das Mainboard hat die Maße 210mm x 136mm. Eine DXF findet man auf Github: https://github.com/timo1235/cnc-werkstatt/tree/master/OPEN-CNC-Shield%202.x/OCS2%20mainboard
Um den Arduino Mega kümmert sich Estlcam selbst.