Strona 1 z 2

Mach3, skrypt wymiany narzedzia

: 30 kwie 2020, 09:19
autor: grekot
Witam.

Mam następujące pytanie.
We frezarce kolegi oprogramowaliśmy na skrypcie wymianę narzędzia w taki sposób że na komende M6 uruchamia się skrypt który czeka na wcisniecie przycisku mechanicznego na panelu, wtedy wysterowuje przekaźnik zwalniający narzędzie, następnie czeka na ponowne naciśnięcie przycisku wtedy wysterowuje przekaźnik i łapie narzedzie.

Ale nie chodzi mi o samo dzialanie sryptu. Pytanie czy podczas działania skryptu mozna w jakis sposób zamrozic pulpit sterujący macha, tak aby np. ktos nie podszedł i nie kliknął start cyklu, albo nie uruchomił wrzeciona w momencie gdy ktos akurat wymienia narzędzie.?

Re: Mach3, skrypt wymiany narzedzia

: 01 maja 2020, 00:14
autor: qqaz
Do treści skryptu dopisz polecenie zmiany ekranu na którym będziesz miał tylko klawisz "powrót" a jego zadziałanie może być dodatkowo uwarunkowane np kontrolą parametru generowanego przez skrypt. Dodatkowo zablokuj ruch aby strzałkami klawiatury nie można było poruszać osiami.
Gdy zmiana się zakończy to w skrypcie umieścisz przywrócenie ruchu polecenie powrotu do poprzedniego ekranu.
Klawisz na wywołanym ekranie jest na wszelki wypadek gdyby trzeba było przerwać skrypt ręcznie i jakoś wrócić trybem awaryjnym no bo bez żadnego trybu się nie da.(w Machu)

Re: Mach3, skrypt wymiany narzedzia

: 04 maja 2020, 08:06
autor: grekot
Dzięki za odpowiedź, skoro jet to jedyny sposób to pewno zastanowię się nad jego wprowadzeniem.

Podpowiedz mi jeszcze w jaki spowób z poziomu skryptu zminiać ekrany, oraz jak zablokować ruch?

Re: Mach3, skrypt wymiany narzedzia

: 04 maja 2020, 08:15
autor: lepi
Można wyświetlić po prostu okienko "Popup" z prośbą o potwierdzenie zakończenia wymiany. Nic nie będzie działać do czasu jego zamknięcia. Jak to nie pomoże to tylko zaspawać drzwi ;) Na głupotę nie ma rady.

Re: Mach3, skrypt wymiany narzedzia

: 04 maja 2020, 13:21
autor: qqaz
W treść skryptu wstaw linijkę:
DoOemButton(x)
' w tym momencie zmieni się ekran Macha na taki jaki masz zapisany pod nr X
Oczywiście trzeba sobie otworzyć plik ____.set który używasz i odpowiedni go poprawić.
Na tym ekranie nr(X) możesz zamieścić :
oemled(83)
'świeci gdy można uruchamiać osie

albo
oembutton(103)
'który jest klawiszem przełączanym i naciskany włącza i wyłącza możliwość ruchu.
Jeżeli tego klawisza nie będzie w treści ekranu to nie będzie można ruszać osiami.

albo
oemled(162)
'który świeci gdy jakiekolwiek makro jest uruchomiane i się jeszcze nie skończyło - wyświetla każde makro aż do zakończenia wszystkich.
Gdy skończysz manipulacje z wymianą narzędzia to możesz wrócić na główny ekran działaniem samego skryptu bo w treści swojego skryptu wymiany na końcu umieściłeś linijkę:
DoOemButton(1) - i masz ekran startowy
albo klawiszem z takim poleceniem który umieściłeś w treści ekranu nr(x).
Dodatkowo klawisz zadziałać może warunkowo gdy zechcesz w treść klawisza wpisać jakieś warunki np czy jakieś wejście jest aktywne albo wyjście ma odpowiedni stan (skrypt zresztą też bo działanie wywołanego makra nie zależy od sposobu jego wywołania czy to klawiszem czy treścią pliku Gkod).

Re: Mach3, skrypt wymiany narzedzia

: 05 maja 2020, 07:11
autor: grekot
lepi pisze:
04 maja 2020, 08:15
Można wyświetlić po prostu okienko "Popup" z prośbą o potwierdzenie zakończenia wymiany. Nic nie będzie działać do czasu jego zamknięcia. Jak to nie pomoże to tylko zaspawać drzwi ;) Na głupotę nie ma rady.
Ale takie okienko zablokuje mi działanie skryptu, a to własnie skrypt steruje przekaźnikami otwierającymi i zamykającymi uchwyt narzędzia.

Dodane 1 minuta 22 sekundy:
qqaz pisze:
04 maja 2020, 13:21
W treść skryptu wstaw linijkę:
DoOemButton(x)
' w tym momencie zmieni się ekran Macha na taki jaki masz zapisany pod nr X
Oczywiście trzeba sobie otworzyć plik ____.set który używasz i odpowiedni go poprawić.
Na tym ekranie nr(X) możesz zamieścić :
oemled(83)
'świeci gdy można uruchamiać osie

albo
oembutton(103)
'który jest klawiszem przełączanym i naciskany włącza i wyłącza możliwość ruchu.
Jeżeli tego klawisza nie będzie w treści ekranu to nie będzie można ruszać osiami.

albo
oemled(162)
'który świeci gdy jakiekolwiek makro jest uruchomiane i się jeszcze nie skończyło - wyświetla każde makro aż do zakończenia wszystkich.
Gdy skończysz manipulacje z wymianą narzędzia to możesz wrócić na główny ekran działaniem samego skryptu bo w treści swojego skryptu wymiany na końcu umieściłeś linijkę:
DoOemButton(1) - i masz ekran startowy
albo klawiszem z takim poleceniem który umieściłeś w treści ekranu nr(x).
Dodatkowo klawisz zadziałać może warunkowo gdy zechcesz w treść klawisza wpisać jakieś warunki np czy jakieś wejście jest aktywne albo wyjście ma odpowiedni stan (skrypt zresztą też bo działanie wywołanego makra nie zależy od sposobu jego wywołania czy to klawiszem czy treścią pliku Gkod).
Dzięki za obszerną odpowiedz, będę próbował coś działać w takim kierunku jak zasugerowałeś.

Re: Mach3, skrypt wymiany narzedzia

: 06 maja 2020, 12:25
autor: grekot
Dzieki podpowiedzi qqaz, udało się mi osiągnąć zamierzony efekt.
Mam jednak jeszcze inny problem:
Mam napisane dwa skrypty które realizują obrót stołu roboczego, mam je zapisane jako m300, oraz m301, z poziomu okna macha wywołuje je poprzez przyciski które są zdefiniowane jako Execute Basic-Script, a w przypisanych skryptach mają zdefinowane polecenie: code "m300", oraz code "m301", i to mi działa jak należy.
Dodatkowo chciałem aby była mozliwość wywoływania tych makr poprzez sprzętowe przyciski które są podłączone do kontrolera csmio. Takimi sprzetowymi przyciskami mam obsłuzone start, pauza i stop poprzez zdefiniowanie OEM Trig w machu i następnie w HotKeys wywołanie odpowiednich OEM Code. Ale przyciski Execute Basic-Script nie mają kodu OEM który można wywołać. Generalnie macha znam słabo więc może o czymś nie wiem, podpowiecie cos jak to można ogarnąć nie używając skryptu macropump.

Re: Mach3, skrypt wymiany narzedzia

: 06 maja 2020, 17:42
autor: qqaz
A co zabrania używania makropumpa? W tym celu on jest wiec dlaczego?

Re: Mach3, skrypt wymiany narzedzia

: 06 maja 2020, 19:46
autor: grekot
Wydaje się mi że przez trigery to bardziej eleganckie i pewne rozwiązanie.
Ale jak nie ma innej opcji to zrobię na macropump.

Re: Mach3, skrypt wymiany narzedzia

: 07 maja 2020, 21:03
autor: qqaz
Zrób jak wygodnie i zrozumiale.
Komputer nie poddaje się człowieczym kwalifikacjom że eleganckie - gdy działa to działa.
Byle tylko wiedzieć co można zrobić i ominąć (lub wykorzystać) ograniczenia sprzętowe.