smuQ simCNC Screen
smuQ simCNC Screen
Hallo Sebastian und Alle die deinen Screen nutzen.
Ich habe jetzt Ewigkeiten nichts mit meiner Fräse gefräst und hatte glaub ich, auch das Werkstück antasten noch nie benutzt. Gestern hab ich mich damit mal beschäftigt aber es hat nicht funktioniert. In den Einstellungen I/O Signale sehe ich das mein 3D Taster schaltet. Der 3D Taster ist Probe 1 auf Eingang 5. Muß ich das nicht irgendwo in den macros fürs Vermessen angeben?
Dann noch eine Verständnisfrage zu den Bezeichnungen Tast Distanz, XY Abstand und Offset zu Ecke.
Tast Distanz = Suchstrecke bis Werkstückkante
XY Abstand ?
Offset zu Ecke ?
Was mir noch aufgefallen ist, wenn ich an den Punkt fahre von wo aus ich Antasten wollte ist Z erstmal in die Tiefe gefahren…
Gar nicht angenehm. Wo kann ich den Wert auf Null stellen?
Ich habe jetzt Ewigkeiten nichts mit meiner Fräse gefräst und hatte glaub ich, auch das Werkstück antasten noch nie benutzt. Gestern hab ich mich damit mal beschäftigt aber es hat nicht funktioniert. In den Einstellungen I/O Signale sehe ich das mein 3D Taster schaltet. Der 3D Taster ist Probe 1 auf Eingang 5. Muß ich das nicht irgendwo in den macros fürs Vermessen angeben?
Dann noch eine Verständnisfrage zu den Bezeichnungen Tast Distanz, XY Abstand und Offset zu Ecke.
Tast Distanz = Suchstrecke bis Werkstückkante
XY Abstand ?
Offset zu Ecke ?
Was mir noch aufgefallen ist, wenn ich an den Punkt fahre von wo aus ich Antasten wollte ist Z erstmal in die Tiefe gefahren…
Gar nicht angenehm. Wo kann ich den Wert auf Null stellen?
Gruß Daniel
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
Re: smuQ simCNC Screen
Hab vorhin nochmal bissl herum probiert und nun geht es. Für Alle die vielleicht auch Probleme haben. In einigen macros zum 3D Antasten muß in der Zeile probeIndex die Nummer eingetragen werden an welcher Position ihr in den Einstellungen unter I/O Signale euren 3D taster konfiguriert habt. Es können ja bis zu vier Sensoren angschlossen werden.
In den macros ist Standard 0 und ich habe meinen an 1 und 0 ist bei mir der Werkzeuglängensensor.
Offset zu Ecke hab ich nun auch heraus gefunden...gar nicht so einfach wenn man nicht weiß was beim drücken der Buttons passiert, wollte ja auch meinen 3d Taster nicht schrotten.
Wenn ich grob an die Ecke eures Rohteils fahrt und dann messt wird um diesen Wert (Offset zu Ecke) in X und Y Richtung gefahren.
Gut zu wissen ist auch noch das von eurem händisch angefahrenen Messstartpunkt in Z minus 5 gefahren wird. Das könnt ichr in den macros aber auch abändern.
In den macros ist Standard 0 und ich habe meinen an 1 und 0 ist bei mir der Werkzeuglängensensor.
Offset zu Ecke hab ich nun auch heraus gefunden...gar nicht so einfach wenn man nicht weiß was beim drücken der Buttons passiert, wollte ja auch meinen 3d Taster nicht schrotten.
Wenn ich grob an die Ecke eures Rohteils fahrt und dann messt wird um diesen Wert (Offset zu Ecke) in X und Y Richtung gefahren.
Gut zu wissen ist auch noch das von eurem händisch angefahrenen Messstartpunkt in Z minus 5 gefahren wird. Das könnt ichr in den macros aber auch abändern.
Gruß Daniel
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
Re: smuQ simCNC Screen
Hallo Daniel,
eine Hilfe zu den Parametern wäre bestimmt gut.
Ich könnte z.B. die Labels (Tast-Distanz, X Y Abstand, ..) zu Buttons ändern, welche beim Anklicken ein TKinter-Fenster mit Beschreibung des Parameters zeigen.
Die 5mm in Z brauche ich auch nicht. Ein Auswahlfeld für den ProbeIndex wäre sinnvoll.
VG
eine Hilfe zu den Parametern wäre bestimmt gut.
Ich könnte z.B. die Labels (Tast-Distanz, X Y Abstand, ..) zu Buttons ändern, welche beim Anklicken ein TKinter-Fenster mit Beschreibung des Parameters zeigen.
Die 5mm in Z brauche ich auch nicht. Ein Auswahlfeld für den ProbeIndex wäre sinnvoll.
VG
DIY Fräse Mineralguss-ALU / simCNC-CS-Lab / CSMIO-IP-M / JMC-Servos / GDK80-12Z-2.2 - Spindel
https://www.youtube.com/@boessi
https://www.youtube.com/@boessi
Re: smuQ simCNC Screen
Hallo zusammen,
leider komme ich in der letzten Zeit nicht wirklich zum Fräsen bzw. an die Maschine. Wenn Interesse besteht, könnte ich noch den Wert für die Probe in der GUI und das Anfahren implementieren. Eventuell falls jemand noch was brauchen wurde, könnte ich es noch dazu tun.
Grüße
Sebastian
leider komme ich in der letzten Zeit nicht wirklich zum Fräsen bzw. an die Maschine. Wenn Interesse besteht, könnte ich noch den Wert für die Probe in der GUI und das Anfahren implementieren. Eventuell falls jemand noch was brauchen wurde, könnte ich es noch dazu tun.
Grüße
Sebastian
Re: smuQ simCNC Screen
Hi Sebastian,
so langsam komme ich wieder rein und weiß welche Werte/Parameter was machen.
Momentan ist mein screen den ich mir erstellt habe auch völlig ausreichend für mich. Nach und nach werde ich von Anton noch die Zyklen einbauen.
Aber wenn du schon so anbietest noch was hinzuzufügen dann hätte ich noch was kleines
Spindelwarmlauf - vielleicht hättest du ja Lust und Zeit da was zu machen. Hab mal eine Skizze eingefügt...
Man bräuchte ein feld wo man die Zeit einträgt wie lange der Warmlauf gehen soll und diese Zeit sollte am besten rückwärts runter laufen.
Einen Button wo man das ganze startet und drei Felder zur Drehzahleingabe. Die Drehzahlen sollten dann einfach je nach eingegebener Zeit zu gleichen Teilen laufen.
So könnte das dann auch jeder in seinen bestehenden screen einbauen.
Weiß nicht ob das zu kompliziert ist...
so langsam komme ich wieder rein und weiß welche Werte/Parameter was machen.
Momentan ist mein screen den ich mir erstellt habe auch völlig ausreichend für mich. Nach und nach werde ich von Anton noch die Zyklen einbauen.
Aber wenn du schon so anbietest noch was hinzuzufügen dann hätte ich noch was kleines
Spindelwarmlauf - vielleicht hättest du ja Lust und Zeit da was zu machen. Hab mal eine Skizze eingefügt...
Man bräuchte ein feld wo man die Zeit einträgt wie lange der Warmlauf gehen soll und diese Zeit sollte am besten rückwärts runter laufen.
Einen Button wo man das ganze startet und drei Felder zur Drehzahleingabe. Die Drehzahlen sollten dann einfach je nach eingegebener Zeit zu gleichen Teilen laufen.
So könnte das dann auch jeder in seinen bestehenden screen einbauen.
Weiß nicht ob das zu kompliziert ist...
Gruß Daniel
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
Re: smuQ simCNC Screen
Moin Daniel,
das geht recht einfach:
Die GUI für den Spindelwarmlauf habe ich in den letzten Tab des default_de - Sceens kopiert und ihn default_deW genannt.
Das Skript schaltet keine Wasserkühlung ein. Das muss berücksichtigt werden, falls Du eine hast.
Hier noch ein Filmchen vom Test an der Maschine, eine Minute wurde für das Filmchen auf 5 Sekunden geschrumpft:
https://photos.app.goo.gl/qYVuSUGq7cWvqN2J6
VG
das geht recht einfach:
Code: Alles auswählen
import time
#from ___INIT import *
#Maschine muss eingeschaltet sein 0/1-Button
if d.getState() != State.Idle:
print("Sie müssen in den Idle Mode wechseln")
exit(0)
zeit = d.getMachineParam(180)
verbleibendeZeit= d.getMachineParam(181)
drehzahl1= d.getMachineParam(182)
drehzahl2 = d.getMachineParam(183)
drehzahl3 = d.getMachineParam(184)
#Lässt sich die Warmlaufzeit durch 3 teilen (Ganzzahl)
zeit = zeit//3*3
d.setMachineParam(180, zeit)
#verbleibende Zeit setzen
d.setMachineParam(181, zeit)
while verbleibendeZeit >= 1:
d.setMachineParam(181,verbleibendeZeit)
if verbleibendeZeit > zeit * 0.66:
print("------Drehzahl 1")
d.setSpindleSpeed(drehzahl1)
d.setSpindleState(SpindleState.CW_ON)
gui.SpindelWarmlauf_cbx_S1.setCheckboxState( True )
gui.SpindelWarmlauf_cbx_S2.setCheckboxState( False )
gui.SpindelWarmlauf_cbx_S3.setCheckboxState( False )
else:
if verbleibendeZeit > zeit * 0.33:
print("------Drehzahl 2")
d.setSpindleSpeed(drehzahl2)
gui.SpindelWarmlauf_cbx_S1.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S2.setCheckboxState(True)
gui.SpindelWarmlauf_cbx_S3.setCheckboxState(False)
else:
print("------Drehzahl 3")
d.setSpindleSpeed(drehzahl3)
gui.SpindelWarmlauf_cbx_S1.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S2.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S3.setCheckboxState(True)
time.sleep(60);
verbleibendeZeit = verbleibendeZeit - 1
d.setSpindleState(SpindleState.OFF)
gui.SpindelWarmlauf_cbx_S3.setCheckboxState(False)
d.setMachineParam(181, zeit)
Das Skript schaltet keine Wasserkühlung ein. Das muss berücksichtigt werden, falls Du eine hast.
Hier noch ein Filmchen vom Test an der Maschine, eine Minute wurde für das Filmchen auf 5 Sekunden geschrumpft:
https://photos.app.goo.gl/qYVuSUGq7cWvqN2J6
VG
- Dateianhänge
-
- default_deW.7z
- (73.48 KiB) 372-mal heruntergeladen
-
- Spindelwarmlauf.JPG (23.37 KiB) 13931 mal betrachtet
DIY Fräse Mineralguss-ALU / simCNC-CS-Lab / CSMIO-IP-M / JMC-Servos / GDK80-12Z-2.2 - Spindel
https://www.youtube.com/@boessi
https://www.youtube.com/@boessi
Re: smuQ simCNC Screen
Ihr seit der Wahnsinn! Ich wünschte ich könnte das. Werde ich ausprobieren.
Schon mal Danke!
Schon mal Danke!
Gruß Daniel
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
Re: smuQ simCNC Screen
Moin,
ich habe noch kleine Änderungen am Spindelwarmlauf vorgenommen.
Für meine Spindel (max. 12000 U/min) habe ich 16 Minuten Warmlaufzeit bei 4 verschiedenen Drehzahlen gewählt. Es ist also ein Drehzahlfeld hinzugekommen. Bei mir wird auch die Wasserkühlung der Spindel über das Skript geschaltet, die liegt bei mir auf der Kühlschmierung (Wasserhahn-Button). Da ich an dieser Maschine niemals mit einer Wasserkühlung arbeiten werde, konnte ich das so machen. Für Euch habe ich alles was mit der Wasserkühlung zu tun hat auskommentiert,
Alle Zeilen vor denen ein # steht, werden beim Programmablauf nicht berücksichtigt.
ich habe noch kleine Änderungen am Spindelwarmlauf vorgenommen.
Für meine Spindel (max. 12000 U/min) habe ich 16 Minuten Warmlaufzeit bei 4 verschiedenen Drehzahlen gewählt. Es ist also ein Drehzahlfeld hinzugekommen. Bei mir wird auch die Wasserkühlung der Spindel über das Skript geschaltet, die liegt bei mir auf der Kühlschmierung (Wasserhahn-Button). Da ich an dieser Maschine niemals mit einer Wasserkühlung arbeiten werde, konnte ich das so machen. Für Euch habe ich alles was mit der Wasserkühlung zu tun hat auskommentiert,
Alle Zeilen vor denen ein # steht, werden beim Programmablauf nicht berücksichtigt.
Code: Alles auswählen
import time
# from ___INIT import *
# Maschine muss eingeschaltet sein 0/1-Button
if d.getState() != State.Idle:
print("Sie müssen in den Idle Mode wechseln")
exit(0)
zeit = d.getMachineParam(180)
verbleibendeZeit = zeit
drehzahl1 = d.getMachineParam(182)
drehzahl2 = d.getMachineParam(183)
drehzahl3 = d.getMachineParam(184)
drehzahl4 = d.getMachineParam(185)
# Lässt sich die Warmlaufzeit durch 4 teilen (Ganzzahl)
# sonst nächst kleinere, durch 4 teilbare, Zahl verwenden
zeit = zeit//4*4
d.setMachineParam(180, zeit)
# verbleibende Zeit setzen
d.setMachineParam(181, zeit)
#Wasserkühlung 10 Sekunden vor Spindel starten
#d.setFloodState(FloodState.ON)
#print("------ WaKü ein ------")
#time.sleep(10)
print("------ Starte Warmlauf ------")
while verbleibendeZeit >= 1:
if verbleibendeZeit > zeit * 0.75:
print("------ Drehzahl 1 ------")
# Drehzahl setzen
d.setSpindleSpeed(drehzahl1)
# Spindel einschalten
d.setSpindleState(SpindleState.CW_ON)
# Checkboxen setzen zum Markieren der aktuellen Drehzahl
gui.SpindelWarmlauf_cbx_S1.setCheckboxState(True)
gui.SpindelWarmlauf_cbx_S2.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S3.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S4.setCheckboxState(False)
else:
if verbleibendeZeit > zeit * 0.5:
print("------ Drehzahl 2 ------")
d.setSpindleSpeed(drehzahl2)
gui.SpindelWarmlauf_cbx_S1.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S2.setCheckboxState(True)
gui.SpindelWarmlauf_cbx_S3.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S4.setCheckboxState(False)
else:
if verbleibendeZeit > zeit * 0.25:
print("------ Drehzahl 3 ------")
d.setSpindleSpeed(drehzahl3)
gui.SpindelWarmlauf_cbx_S1.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S2.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S3.setCheckboxState(True)
gui.SpindelWarmlauf_cbx_S4.setCheckboxState(False)
else:
print("------ Drehzahl 4 ------")
d.setSpindleSpeed(drehzahl4)
gui.SpindelWarmlauf_cbx_S1.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S2.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S3.setCheckboxState(False)
gui.SpindelWarmlauf_cbx_S4.setCheckboxState(True)
time.sleep(60)
#Eine Minute (60 Sekunden) von der verbleibenden Zeit abziehen
verbleibendeZeit = verbleibendeZeit - 1
d.setMachineParam(181, verbleibendeZeit)
# Spindel ausschalten
d.setSpindleState(SpindleState.OFF)
print("------ Spindel aus ------")
gui.SpindelWarmlauf_cbx_S4.setCheckboxState(False)
# verbleibendeZeit auf zeit zurückstellen
d.setMachineParam(181, zeit)
#Wasserkühlung eine Minuten nach Spindel ausschalten
#time.sleep(60)
#d.setFloodState(FloodState.OFF)
#print("------ WaKü aus ------")
print("------ Ende Warmlauf ------")
- Dateianhänge
-
- default_deWV2.zip
- (110.49 KiB) 368-mal heruntergeladen
DIY Fräse Mineralguss-ALU / simCNC-CS-Lab / CSMIO-IP-M / JMC-Servos / GDK80-12Z-2.2 - Spindel
https://www.youtube.com/@boessi
https://www.youtube.com/@boessi
Re: smuQ simCNC Screen
Super! Also ich habe keine Wasserkühlung der Spindel Die hätte ich vermutlich so gemacht das wenn die Spindel geschalten wird automatisch auch der Wasserkühlung mit angeht.
Eine weitere Drehzahl hinzufügen sollte ja nicht das Problem sein, man muß nur drauf achten das dann auch die Zeit durch die Anzahl der Drehzahlen geteilt wird.
Hab ich das richtig verstanden das die Checkboxen nur zur Anzeige da sind in welcher "Stufe" der Warmlöauf gerade ist?
Eine weitere Drehzahl hinzufügen sollte ja nicht das Problem sein, man muß nur drauf achten das dann auch die Zeit durch die Anzahl der Drehzahlen geteilt wird.
Hab ich das richtig verstanden das die Checkboxen nur zur Anzeige da sind in welcher "Stufe" der Warmlöauf gerade ist?
Gruß Daniel
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
DiY Fräse : CSMIO-IP-M / JMC-iHSS57 / simCNC-CS-Lab / intel NUC6i3
3D Drucker: Anycubic Delta Linear
Re: smuQ simCNC Screen
Ja, die Wasserkühlung der Spindel hat bei mir etwas Vor- und Nachlauf - wie Du vielleicht im Skript erkennen kannst.
Ja, so habe ich das gemacht, weil ich nicht mit Sekunden arbeiten wollte.
Für die GUI mit 4 Drehzahlen gilt:
- Wenn Du z.B. 14 Minuten als Warmlaufzeit angibst, dann wird 14//4 geteilt (Ganzzahldivision, ergibt 3 Rest 2). Das Ganzzahldivisionsergebnis wird dann mit 4 multipliziert und daraus ergibt sich die Zeit 12 Minuten. Wenn Du als Zeit 16 eingibst, dann bleibt die Zeit bei 16, weil sich 16 durch 4 teilen lässt.
- Bei 4 Drehzahlen bekommt jede Drehzahl 25% der Gesamtzeit. Das erkennst Du an den if´s im Skript und den Werten 0,75, 0,5, 0,25.
Genau, die CheckBoxen zeigen nur in der GUI an, welche Drehzahl gerade aktiv ist. Eigentlich wollte ich die Hintergrundfarbe der Line-Edits (Eingabefelder für Drehzahl) hierzu nutzen. Habe aber bis jetzt noch nicht herausgefunden, wie ich aus dem Python-Skript auf das CSS der LineEdits zugreifen kann. Hierzu habe ich eine Anfrage https://en.cs-lab.eu/forum/forum/csmio- ... -software/ bei cs-lab im Forum eingestellt.
DIY Fräse Mineralguss-ALU / simCNC-CS-Lab / CSMIO-IP-M / JMC-Servos / GDK80-12Z-2.2 - Spindel
https://www.youtube.com/@boessi
https://www.youtube.com/@boessi
Wer ist online?
Mitglieder in diesem Forum: Google [Bot] und 1 Gast