Werkzeuglängenmesser + Kantentaster an 2 Ports der MESA 7i96S

More
01 Nov 2023 16:21 - 01 Nov 2023 16:23 #284265 by Jensner
Hallo Leute,

im Rahmen meines Upgrades auf Closed Loop, Mesa 7i96s bin ich nun auf das Problem gestoßen, dass ich an der Mesa je einen Eingänge für den Werkzeuglängensensor und den Kantentaster benötige, LinuxCNC jedoch nur einen verwalten kann.
(Beide arbeiten als Öffner)

Habe ich das richtig verstanden, dass man in der HAL z.B. abhängig vom aktuellen Werkzeug oder M-Befehl (ich verwende M600 aus der Routine von ToolTall18T (Youtube) unter Probe Basic, den Eingang für das jeweilige Probing Tool aktivieren oder deaktivieren kann?

Am EInfachsten wäre es ja mit dem Werkzeug.
Wenn 99 (Kantentaster) eingelegt ist, soll er den Werkzeuglängensensor verwenden, andernfalls den Werkzeuglängensensor.
Kann mir da jemand weiter helfen, denn die HAL ist für mich ein Buch mit sieben Siegeln...

Viele Grüße
Jens   
 
Last edit: 01 Nov 2023 16:23 by Jensner.

Please Log in or Create an account to join the conversation.

More
02 Nov 2023 11:02 #284312 by TooTall18T
Ist einer der Beiden steckbar?
Wenn nicht kannst du die Eingänge UND oder ODER verknüpfen. Das UND- oder das ODER-Signal geht dann auf den ProbePin in der HAL.
Wie die Syntax dafür ist kann ich dir aber erst heute Abend schreiben.

Please Log in or Create an account to join the conversation.

More
02 Nov 2023 19:03 #284359 by TooTall18T
Wenn sowohl der Werkzeugtaster als auch der 3D-Taster immer angeschlossen sind, kannst du dies in deine HAL einfügen. Es müssen jeweils die negierten Eingänge genutzt werden.

loadrt or2 count=1
addf or2.0 servo-thread
net probe-tool or2.0.in0 <= #Eingang1.negiert
net probe-3d or2.0.in1 <= #Eingang2.negiert
net probe-in motion.probe-input <= or2.0.out

Solltest du bereits ODER-Verknüpfungen in deinen HALs haben muss es noch etwas angepasst werden.

Hier auch noch etwas zum Lesen dazu: linuxcnc.org/docs/devel/html/de/hal/basi...hal-logic-components
The following user(s) said Thank You: Jensner

Please Log in or Create an account to join the conversation.

More
02 Nov 2023 19:07 - 02 Nov 2023 19:10 #284360 by Jensner
Hi,

der Kantentaster ist schon steckbar, aber ich würde das lieber mit einer entsprechenden Logik lösen.
So wie Du schon vorgeschlagen hast, mit einer ODER-Verknüpfung.
Alternativ habe ich auch gelesen, dass man wohl anhand des M-Befehls Eingänge aktivieren oder deaktivieren kann.
Leider steige ich bzgl. der Syntax nicht wirklich durch, obwohl es nicht wirklich komplex ist.
Aber mir fehlen da leider die Basics..

Vielen Dank schon mal 
Gruß Jens

PS: Das Problem mit dem Fehler bei der Mess-Routine hat sich offensichtlich im Zuge der Neuinstallation gelöst.
Läuft mittlerweile hervorragend und ohne Fehlermeldung! TOP 
Last edit: 02 Nov 2023 19:10 by Jensner.

Please Log in or Create an account to join the conversation.

More
02 Nov 2023 19:09 #284361 by Jensner
Hey...
mega cool.
Das teste ich am Wochenende gleich mal.

Vielen Dank

Please Log in or Create an account to join the conversation.

More
02 Nov 2023 19:53 #284366 by TooTall18T
Ob man Eingänge per M-Befehlt de-/aktivieren kann weiß ich nicht. Ausgänge aber schon.

Man könnte mittels UND-ODER-Verknüpfungen und M-Befehl den Kantentaster hinzuschalten. Aber wenn man den M-Befehl vergisst einzuschalten ist die Spitze schnell weg.

Ich schalte bei mir mittels Relais und Schalter zwischen Werkzeugtaster und 3D-Taster um. So bekommt der 3D-Taster dann auch erst Spannung und die LED leuchtet. So weiß ich, dass der AN ist.

Ok, kann ich den Problemfall bei Github also schließen?

Please Log in or Create an account to join the conversation.

More
02 Nov 2023 20:20 #284370 by chris@cnc
Ja man kann Eingäne mit einem M-Befehl aktivieren. Ich mache es da mein Tischsensor so sensibel ist und sporadisch bei Vibrationen auslöst.
So kannst du auch zwischen 2 Tastern umschalten. Und das ganze in ein Unterprogramm tasten schreiben so geht nicht verloren.
Für die User M-codes musst du den Befehl der sonst in der hal steht in eine separate Datei schreiben -> mit "chmod a+x" (google fragen) -> ausführbar machen -> und den Path der Datei in der RS274NGC Section in der ini festlegen. 
Doku User M-code  hal
linuxcnc.org/docs/stable/html/gcode/m-code.html#mcode:m100-m199
ini
linuxcnc.org/docs/stable/html/config/ini...l#gcode:ini-features
hier Beispiel ein
#! /bin/bash
#---- M100 Taster 1 ein -----------
halcmd net probe-in   <=  (dein Taster eingang)  =>  motion.probe-input  
sleep 1
exit 0
#! /bin/bash
#---- M101 Taster 1 aus -----------
halcmd unlinkp (dein Taster eingang)  
sleep 1
exit 0
hier ini
[RS274NGC]
PARAMETER_FILE = variablen-3-achsen.var
SUBROUTINE_PATH = ncsubroutines:/home/ich/Programme/unterprogramme/
USER_M_PATH = /home/ich/Programme/unterprogramme
hier Messprogramm
O9000
(Messprogramm Tischsensor)
G49
G90 (Absolute mode)
M112
G53 G00 Z-100
G53 G00 X20 Y20        (Absolutposition X, Y auf Tisch)
G4 P1
G91                 ( relative mode for probing)
G38.2 Z-250 F1000   ( Werkzeugspitze suchen)
G1 Z3                ( Werkzeug frei fahren)
G4 P1
G38.2 Z-5 F80        ( Werkzeug mit Tastvorschub tasten)
G28.1                ( setzt aktuelle Maschinenposition in #5161-#5166) 
#500=[272.85+#5163]    ( Werkzeuglänge Verrechnen)
G1 Z40 F1000          ( Werkzeug frei fahren)
G10 L1 P1 Z#500        ( Werkzeuglaenge setzten)
G43 H1                (Werkzeuglaenge aufrufen)

o1 if [#5070 EQ 1]
(DEBUG, %.2f Werkzeuglange gesetzt #500)

o1 else

(MSG, Werkzeug nicht erkannt)
o1 endif

G90
G53 G00 X150 
M113
M99

 
The following user(s) said Thank You: Jensner

Please Log in or Create an account to join the conversation.

More
02 Nov 2023 20:23 #284372 by Jensner
Danke Dir für Deine Unterstützung.
Ja, den Problemfall kannst Du schließen.

Viele Grüße

Please Log in or Create an account to join the conversation.

More
02 Nov 2023 20:28 - 02 Nov 2023 20:36 #284373 by Jensner
@chris@cnc,
Wow, das ist mal ganz großes Tennis.
Ich hatte tatsächlich anfangs auch das Problem, dass mein 3D-Taster durch Vibration der Spindel ausgelöst hatte.
Ich hatte das mit einer Lage Filzstoff gelöst.

Gruß Jens
Last edit: 02 Nov 2023 20:36 by Jensner.
The following user(s) said Thank You: chris@cnc

Please Log in or Create an account to join the conversation.

More
12 Nov 2023 10:28 #285153 by Jensner

Wenn sowohl der Werkzeugtaster als auch der 3D-Taster immer angeschlossen sind, kannst du dies in deine HAL einfügen. Es müssen jeweils die negierten Eingänge genutzt werden.

loadrt or2 count=1
addf or2.0 servo-thread
net probe-tool or2.0.in0 <= #Eingang1.negiert
net probe-3d or2.0.in1 <= #Eingang2.negiert
net probe-in motion.probe-input <= or2.0.out

Solltest du bereits ODER-Verknüpfungen in deinen HALs haben muss es noch etwas angepasst werden.

Hier auch noch etwas zum Lesen dazu: linuxcnc.org/docs/devel/html/de/hal/basi...hal-logic-components
 

Hallo,

es hat nun doch etwas gedauert bis ich dazu gekommen bin.
Dein Code hat hervorragend funktioniert.
ich musste zwar noch ein "debounce" mit rein nehmen, da mein 3D-Taster etwas zu empfindlich ist, aber nun klappt alles bestens.
Gruß Jens

Please Log in or Create an account to join the conversation.

Time to create page: 0.121 seconds
Powered by Kunena Forum