• Bild 1 ,xpkillers cnc-Fräse MF1040
    xpkiller.de

  • Bild 2 ,xpkillers cnc-Fräse MF1040
    Das ist die Z-Achse der cnc-Fräse noch in der Bauphase

  • Bild 3 ,xpkillers cnc-Fräse MF1040
    Das ist die eigenbau Lagerung und Spindelmutter

  • Bild 4 ,xpkillers cnc-Fräse MF1040
    Das ist die Steuerung mit Linux CNC und Gmoccapy der cnc-Fräse ;-)

gmoccapy

now browsing by category

 
Posted by: | Posted on: August 25, 2017

Sensor Screen mit gmoccapy einrichten

Hallo Leute, heute möchte ich euch zeigen wie man den Sensor Screen in gmoccapy einrichtet. Gefunden habe ich dieses wunderbare Plugin hier. Runterladen kann man das hier. Nacdem die Zip Datei runtergeladen und entpackt worden ist, wird das ganze erst einmal auf den cnc – Rechner übertragen. Die folgenden Dateien aus dem Archiv kommen in:

deine Ordner-Konfiguration/python

probe_screen.py

deine Ordner-Konfiguration/dein_subroutine_path

kommen alle Dateien in den Ordner "macros"

deine Ordner-Konfiguration/probe_icons

kommen alle Dateien in den Ordner "probe_icons"
Im Hauptverzeichnis deines cnc Rechners (~/ ) kopierst du den versteckten Ordner ".axisrc "

Wenn du bereits mit .axisrc arbeitest, dann füge einfach nur den Dateiinhalt dieses .axisrc hinzu

Das war auch schon alles, was installiert werden muss. Jetzt muss nur noch die .ini Datei angepasst werden, damit das Plugin auch aufgerufen werden kann.

  1. Füge zu deiner .ini diese Einstellungen hinzu
[DISPLAY]

DISPLAY = gmoccapy

EMBED_TAB_NAME=Sensor Screen
EMBED_TAB_LOCATION = ntb_user_tabs 
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -u python/probe_screen.py -x {XID} probe_icons/probe_screen.glade 

......
[RS274NGC]

FEATURES=30
SUBROUTINE_PATH = your_subroutine_path

......
[TOOLSENSOR]
# Control probe rapid speed
RAPID_SPEED = 600

Leider musste ich das Plugin ein wenig anpassen, damit alle Buttons richtig funktionierten. 
Dabei habe ich mir dann auch eigene Symbole angefertigt und eingefügt. Das fertige Screen Bild sieht nun bei mir so aus:

 

Einen provisorischen Sensor habe ich mir auch noch schnell angefertigt, damit das einmessen auch Spass macht ;-) 
Wie der Sensor gebaut wird, kann man
hier nachsehen. da ich nicht alle Materialien zu Hause hatte, habe ich für Sensor Hartholz und einen alte Kugelschreiber benutzt,
das geht genauso.

 

Ei kleines Filmchen habe ich auch noch:

 

3

Posted by: | Posted on: Dezember 6, 2016

Spindel LED und Statusbalken in gmoccapy aktivieren

Spindel LED und Statusbalken aktivieren

Ich habe die zwei Zeilen in meiner „custom_postgui.hal“ eingetragen:

###################################################################
#        custom_postgui.hal Datei von Frank Vieler               #
###################################################################

# Spindel LED und Statusbalken aktivieren
net spindle-at-speed     =>  gmoccapy.spindle_at_speed_led
net spindle-cmd-rpm-abs  =>  gmoccapy.spindle_feedback_bar

# Werkzeuglängenmessung und Werkzeug wechsel
loadusr -W hal_manualtoolchange
net tool-change iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-changed iocontrol.0.tool-changed <= hal_manualtoolchange.changed net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared

Danach funktionierte das dann aber sofort und sogar synchron zu meiner FU Anzeige, das ist doch was. :)

LED.png

Ich finde es schlimm, wenn auf dem Bildschirm etwas angezeigt wird, was dann nicht funktioniert. Nun bin ich zufrieden und kann mich ganz dem Fräsen widmen. Es ist schön, wenn ich jetzt auf dem Monitor schaue und alles läuft, wie es soll. Prima ;)

 

Wenn dieser Beitrag für dich hilfreich war, bewerte ihn Bitte. Oder noch besser, schreibe einen Kommentar.

1

Posted by: | Posted on: Dezember 6, 2016

Kamera Einbindung in gmoccapy

Kamera Einbindung als Tab

Um eine USB Cam in gmoccapy einzubinden, braucht man natürlich erst einmal eine USB Endoscop cam mit LED beleuchtung. Als erstes habe ich die Schritte:
sudo apt-get install qv4l2
Terminal öffnen
qv4l2 eingeben und schauen, ob die Kamera erkannt wird. (Livebild starten) funktioniert bei mir einwandfrei «
sudo apt-get install python-opencv
sudo apt-get install v4l2-utils
sudo apt-get install v4l2ucp
angefügte Datei runterladen, und von camview.txt in camview.py ändern
im Terminal in das Verzeichnis gehen, wo camview.py gespeichert wurde.
python camview.py eintippen und staunen ;-), funktioniert auch «

Hier sind die Dateien, die benötigt werden.   camview-tar

camview.glade gehört in das Config Verzeichnis (wo auch die gmoccapy.ini ist)

camview.py
hal_python.xml
hal_pythonplugin.py
gehören nach /usr/lib/pymodules/python2.7/gladevcp
und
/usr/share/pyshared/gladevcp

vorher aber bitte die vorhandenen unten angeführten Dateien sichern.
hal_python.xml
hal_pythonplugin.py

In der gmoccapy.ini muß nun noch unter der Rubrik [DISPLAY] drei Zeilen eingefügt werden.

EMBED_TAB_NAME = Kamera
EMBED_TAB_LOCATION = ntb_preview
EMBED_TAB_COMMAND = gladevcp -x {XID} camview.glade

gmoccapy-cam1

Danach sollte das Kamerabild unter dem User Tab (Kamera) erscheinen.

Um die Darstellung des Kamerabild einzustellen muß die camview.glade ein bisschen angepasst werden.

<?xml version="1.0" encoding="UTF-8"?>
<interface>
  <requires lib="gtk+" version="2.24"/>
  <!-- interface-requires gladevcp 0.0 -->
  <!-- interface-naming-policy project-wide -->
  <object class="GtkWindow" id="window1">
    <property name="can_focus">False</property>
    <child>
      <object class="CamView" id="camview1">
        <property name="visible">True</property>
        <property name="can_focus">False</property>
        <property name="circle_size">230</property>
        <property name="number_of_circles">1</property>
        <property name="draw_color">gtk.gdk.Color("yellow")</property>
        <property name="autosize">True</property>
      </object>
    </child>
  </object>
</interface>



Wenn dieser Beitrag für dich hilfreich war, bewerte ihn Bitte. Oder noch besser, schreibe einen Kommentar.

1

Posted by: | Posted on: Dezember 6, 2016

Automatische Werkzeuglängenmessung in gmoccapy

Automatische Werkzeugmessung

Gmoccapy bietet eine integrierte Werkzeugmessung. Mit dem ersten vorgegebenen Werkzeugwechsel wird das Werkzeug gemessen und der Versatz wird automatisch auf die Blockhöhe eingestellt. Der Vorteil der gmoccapy-Methode ist, dass kein Referenz-Tool benötigt wird.
Um diese Funktion zu nutzen, müssen einige zusätzliche Einstellungen vorgenommen werden.

1.0. Werkzeugmessung INI Dateiänderungen
Folgende Einträge müssen in der INI-Datei, eigefügt werden:

1.0.1. Der RS274NGC Abschnitt

 [RS274NGC]
 # Enables the reading of INI and HAL values from gcode 
 FEATURES=12
 # is the sub, with is called when a error during tool change happens
 ON_ABORT_COMMAND=O <on_abort> call 
 # The remap code 
 REMAP=M6  modalgroup=6 prolog=change_prolog ngc=change epilog=change_epilog


1.0.2. Werkzeugsensor
Die Position des Werkzeugsensors und die Startposition der Sondierbewegung, alle Werte sind absolute Koordinaten, außer MAXPROBE, was in relativer Bewegung angegeben werden muss.

[TOOLSENSOR]
X = 10 
Y = 10 
Z = -20 
MAXPROBE = -20 

1.0.3. Der Bereich „Position ändern“
Die Position, an der die Maschine stehen bleiben soll zum Werkzeugwechseln, bevor der Befehl change tool angezeigt wird. Alle Werte sind in absoluten Koordinaten einzutragen.

[CHANGE_POSITION]
X = 10
Y = 10 
Z = -2

1.0.4. Die Python-Sektion
Die Python-Plugins dienen der Ausführung der Werkzeugmessung.

[PYTHON]
# Der Pfad zum Starten einer Suche nach Benutzermodulen
PATH_PREPEND = python 
# Der Startpunkt für alle.
TOPLEVEL = python/toplevel.py

1.3. Benötigte Dateien
Die folgenden Dateien in müssen ins config-Verzeichnis kopiert werden

zunächst ein Verzeichnis „python“ im config Ordner erstellen
toplevel.py
remap.py
stdglue.py in den Ordner config_dir / python kopieren

nochmals ein Verzeichnis „macros“ im config Ordner erstellen

on_abort.ngc in das macros Verzeichnis im config Ordner kopieren
change.ngc in das macros Verzeichnis im config Ordner kopieren
Die change.ngc mit einem Editor öffnen und die folgenden Zeilen (49 und 50) auskommentieren:

F #<_hal[gmoccapy.probevel]>
G38.2 Z-4

Benötigte Hal-Verbindungen
Damit die Werkzeuglängenmessung auch funktioniert, muß in der hal Datei das auch eingetragen sein.
Die Zeile könnte wie folgt aussehen:

net probe motion.probe-input <= parport.0.pin-15-in

In der postgui.hal Datei folgendes hinzufügen:

 # The next two lines are only needed if the pins had been connected before
 unlinkp iocontrol.0.tool-change
 unlinkp iocontrol.0.tool-changed

 # link to gmoccapy toolchange, so you get the advantage of tool description on change dialog
 net tool-change            gmoccapy.toolchange-change    <=   iocontrol.0.tool-change 
 net tool-changed           gmoccapy.toolchange-changed   <=   iocontrol.0.tool-changed
 net tool-prep-number       gmoccapy.toolchange-number    <=   iocontrol.0.tool-prep-number
 net tool-prep-loop         iocontrol.0.tool-prepare      <=   iocontrol.0.tool-prepared

Dann nur noch die Sensor- und Wechsel- Position eintragen und die automatische Werkzeuglängenmessung ist eingerichtet. In Gmoccapy selbst muss noch unter Erweiterte Einstellungen (Werkzeugmessung) ein Häkchen gesetzt werden und die höhe des Sensors eintragen, damit die Messung aktiv wird.

Damit die Wekzeugmessung auch funktioniert, sollte in jedem G-Code folgendes eigetragen werden:

; Die Grundeinstellungen setzen, dies sollte auf
; jedem Programm der Anfang sein
G17
G21
G54
G61
G40
G49
G80
G90

; das erste Werkzeug holen und messen
T4 M6
G43

; zur Mitte des Werkstücks fahren
G0 X50 Y50
G0 Z30

; Spindel schrittweise einschalten
S1000
M3

; Kühlung an
M8

G0 Z4
F250
G1 Z0

; ab hier beginnd das Programm

Wenn das alles erledigt ist, sollte der Fräser beim Start des Programms als erstes zur Wechselpositon fahren, nach bestätigen des Fräserwechsels sollte er dann zum einmessen fahren und danach mit dem Fräsvorgang beginnen.
Zum Werkzeugwechsel innehalb des Fräsprogramms (G-Code) sollte dann auch an geeigneter Stelle der Werkzeugwechsel eingetragen werden.

; werkzeug wechsel
; fahre aus dem Werkstück raus
G3 X50 Y50 Z1 I-10 J0
G0 Z30

; Kühlung aus
M9

; Abschaltung der Fräserradiuskorrektur, ansonsten ist kein Werkzeugwechsel möglich
G40
T2 M6
G43

; Werkzeug wechseln Meldung
(MSG, Werkzeug wechseln, neuen Fräser einsetzen)
M1

; fahre zur Mitte des Werkstücks
G0 X50 Y50
G0 Z10

; Spindel schrittweise einschalten
S6000
M3

; Kühlung an
M7

G0 Z10
F400
G1 Z1

; Wekzeugwechsel fertg
; weiter mit dem Programm

viel Spaß beim ausprobieren 😉

 

Wenn dieser Beitrag für dich hilfreich war, bewerte ihn Bitte. Oder noch besser, schreibe einen Kommentar.

5