Wie zusätzliche Ausgänge schalten (Staubsauger,...)??

  • Hallo!
    Ich benütze die Mach3 Version von CNC-Steuerung. Meine nachfolgende Steuerung besitzt 9 schaltbare Relais, die zum Teil folgendermasen belegt und angesteuert werden.


    Ausgang #1 = Spindel im Uhrzeigersinn = Befehl: M3
    Ausgang #2 = Spindel gegen Uhrzeigersinn = Befehl: M4
    Ausgang #3 = Neblekühlung = Befehl: M7
    Ausgang #4 = Kühlmittel = Befehl: M8
    Ausgang #5 = Staubsauger = Befehl: ???
    Ausgang #6 = Frei_1 = Befehl: ???
    Ausgang #7 = Frei_2 = Befehl: ???
    Ausgang #8 = Frei_3 = Befehl: ???
    Ausgang #9 = Frei_4 = Befehl: ???


    Wie kann ich über die Befehlseingabe (MID-Eingabe), oder sonst irgendwie diese Ausgänge schalten??
    MFG

  • Hallo ???,


    da sollte man noch einige Informationen haben:


    - sind die Relais an der Steuerung auch tatsächlich mit dem Rechner verbunden und konfiguriert?
    (schau mal nach unter Konfiguration/Ports&Pins/Ausgänge)
    - wenn ja, lässt sich das einfach mit einem Makro erledigen, welches du dann über MDI-Eingabe aufrufen oder auf eine Taste legen kannst.


    Lass mal hören!
    Freundliche Grüße,


    Micha

  • Hallo!
    Danke für die Antwort!


    Die Relais sind folgendermasen mit den Parallel Ports verbunden und in Mach3 definiert:


    Ausgang #1 = Port-1/Pin-1 = Spindel im Uhrzeigersinn = Befehl: M3
    Ausgang #2 = Port-2/Pin-3 = Spindel gegen Uhrzeigersinn = Befehl: M4
    Ausgang #3 = Port-1/Pin-16 = Neblekühlung = Befehl: M7
    Ausgang #4 = Port-1/Pin-14 = Kühlmittel = Befehl: M8
    Ausgang #5 = Port-1/Pin-17 = Staubsauger = Befehl: ???
    Ausgang #6 = Port-2/Pin-5 = Frei_1 = Befehl: ???
    Ausgang #7 = Port-2/Pin-4 = Frei_2 = Befehl: ???
    Ausgang #8 = Port-2/Pin-6 = Frei_3 = Befehl: ???
    Ausgang #9 = Port-2/Pin-7 = Frei_4 = Befehl: ???


    Hab noch nie ein Macro geschrieben (Hab aber Programmierkenntnisse in Basic - AVR µC) gibs da irgendwelche Info Seiten??
    MFG

  • Hallo,


    OK, dann sollte das machbar sein. Falls Du nicht weiterkommst, frag einfach nochmal nach. Die Skriptsprache ist VB-Script, also ganz gut nachzuvollziehen.


    Wer mehr über die Makroprogrammierung wissen möchte, kann sich hier schlau machen:


    http://www.machsupport.com/docs/VBScript_Commands.pdf Allgemeines zu VB-Script
    http://www.machsupport.com/docs/Mach3_V3…ro_Prog_Ref.pdf mach3-spezifische Befehle und Funktionen


    Ansonsten gibt es viel Info recht verstreut im Netz, www.machsupport.com ist auch eine brauchbare Anlaufstelle.
    Freundliche Grüße,


    Micha

  • Ich wollte doch noch ein Beispielmakro eben einstellen:


    das kann nun eine beliebige Nummer haben solange das nicht mit bestehenden M-Codes kollidiert und sonst noch nicht verwendet wird.
    Nennen wir es mal M444.m1s.
    Der Inhalt:

    Code
    1. SaugerAn = GetOemLed (78)
    2. If SaugerAn = 0 Then
    3. ActivateSignal (Output5)
    4. Else
    5. DeActivateSignal (Output5)
    6. End If


    Wenn das Makro M444.m1s nun in Deinem Profilverzeichnis liegt, kannst Du über MDI-Eingabe von M444 das Relais auf Ausgang 5 schalten.
    Das ist natürlich nur _eine_ Möglichkeit. Man könnte auch der ganzen Geschichte einen Hotkey zuweisen oder eine Taste dranbauen.


    Freundliche Grüße,


    Micha

  • Danke Micha!!!!!


    Es funktioniert schon mal so weit, das ich den Sauger über die MID-Eingabe schalten kann, aber wie mach ich das mit dem Hotkey??
    Hab schon gesucht, aber so weit noch nicht fündig geworden - kannst du mir da bitte noch mal helfen :-)
    Danke schon mals!!
    MFG

  • Hallo ???, (ein Name wäre irgendwie nett, wir alten Leute stehen auf sowas ;) )


    das ist ein bisschen wirr am Anfang mit den Makros und den Hotkeys.
    Ich zitiere mal weitgehend mich selber aus einem Beitrag vom Nachbarforum...


    ...
    Du brauchst 2 Makros, eins davon dient lediglich dazu, das andere bei jedem Start zu aktivieren. (Alle Makros haben die Endung .m1s und müssen im Verzeichnis \mach3\macros\<Profilname> liegen. Der Dateiname ist Mxxx, wobei xxx für eine beliebige Zahl steht. )


    1. Du machst Dir also nun eineTextdatei in deinem Profilverzeichnis und speicherst diese als "M333.m1s" ab.
    In dieser Datei steht nur die Zeile
    ========================
    SetTriggerMacro 334
    ========================
    Das bedeutet nur soviel, dass diese Datei (M334.m1s) aufgerufen wird, wenn eine Eingabe erfolgt, die nach einem Makro schreit. Dieses machen wir nachher.


    2. Makro M333 muss nun noch bei jedem mach3-Start ausgeführt werden, damit die Umleitung auf das korrekte Makro auch jedes Mal erfolgt. Also stellst Du unter "Konfiguration/Einstellungen" bei "Startsequenz" die Initialisierung (wo vermutlich momentan nur G80 drinsteht) um auf "G80 M333" (ohne Anführungszeichen). Dann "OK" und "Konfiguration/Einstellungen speichern"


    3. Jetzt machen wir noch das eigentliche Makro, das nachher die Arbeit erledigt.
    Wieder eine Textdatei im Profilverzeichnis, diesmal speichern als "M334.m1s"


    Der Inhalt wäre dann gleich dem im Makro, das du auch mit m444 aufrufen kannst:


    Code
    1. If isActive (OEMtrig10) Then
    2. SaugerAn = GetOemLed (78)
    3. If SaugerAn = 0 Then
    4. ActivateSignal (Output5)
    5. Else
    6. DeActivateSignal (Output5)
    7. End If
    8. End If



    Das reicht schon. (Du kannst natürlich auch einen anderen OEM-Trigger verwenden, OEMTrig10 ist hier nur ein Beispiel.)


    4. So, jetzt müssen wir nur noch dem OEM Trigger 10 sagen, dass er auf die gewünschte Taste reagieren muss.
    Also "Konfiguration/Ports & Pins", OEM Trigger #10 (oder was sonst von den OEM-Triggern frei ist) suchen, "emuliert" anhaken und als Hotkey die gewünschte Taste Deiner Tastatur wählen. Dann "OK".


    5. "Konfiguration/System Hotkeys": Hinter OEM-Trigger 10 den OEM-Code 301 eingeben. (das heißt, er soll nach dem Makro schauen, welches in der Variable SetTriggerMacro hinterlegt ist, das haben wir ja oben schon gemacht). "OK"


    Nun sollte die Geschichte eigentlich funktionieren. Ich hoffe, ich habe nichts vergessen und das Makro passt.


    Freundliche Grüße,


    Micha

  • Vielen vielen Dank!!!!
    Funktioniert prima - hab den Sauger nun auf die Taste"S" gelegt und noch eine Meldung hinzugefügt (Message "Staubsauger ein" &Message "Staubsauger aus")


    Kann man eigentlich noch irgendwie einen Button am Screen hinzufügen (ich verwende die Mach3 Version von CNC Steuerung), aber ich vermute mal das wird nicht funktioniren, da sie Passwort geschützt ist - oder gibt es da was??


    MFG Ingo Pirker :-)

  • Hallo Ingo, :D


    freut mich, dass das gleich geklappt hat.
    Mit dem Screen hast Du recht, als Alternative bleibt da nur, einen ganz eigenen zu erstellen. Aber da tun sich auch wieder neue Welten auf.


    Es ist ganz gut, das Prinzip der OEMButtons, -LEDs und -DROs und der mach3-Makroprogrammierung im Allgemeinen verstanden zu haben, bevor man sich da dran macht.


    Aber du kannst ja jederzeit einen der anderen Bildschirme laden oder einen eigenen testen, man kann ja immer zum CNC-Steuerungsscreen zurückkehren.


    Also noch frohes Experimentieren (und nachfragen darf man natürlich auch jederzeit gerne).


    Freundliche Grüße,


    Micha

  • Hallo, bin neu hier und hätte eine Frage zu der Tastenbelegung.

    Habe mir meine Zweite Maschine gebaut mit 10 Fach Wechsler von Wolfram S.

    Nur kann ich an dem Werkzeugwechsler Makro nichts ändern weil das Passwort geschützt ist.

    Wechsler ist super brauche aber noch eine Ansteuerung dazu weil er nur eine Klappensteuerung hat und ich bräuchte aber noch eine Zweite, also Klappe auf dann Werkzeuge

    Ausfahren dann kommt der Wechsel, Werkzeuge wieder Einfahren, Kappe zu.

    Habe mir jetzt die oben benanten Makros geschrieben die auch funktionieren, also Klappe auf, auf die Tastenbelegung K dann geht sie auf nur wenn ich jetzt wieder auf die Taste K drücke geht sie nicht mehr zu, an was könnte das liegen oder habe ich etwas überlesen?

    Hoffe es kann mir jemand helfen.


    Mit freundlichen Grüßen

    Martin