Strona 1 z 1

Jak wykryć położenie osi Z i wyciągnąć sygnał sterujący?

: 10 sty 2013, 18:36
autor: zbigsm
Sporo się pisze na tym podforum o makrach dla Macha.
Korzystając z tej wiedzy, nie było problemu z uruchomieniem czujnika wysokości narzędzia czy też makra centrującego otwór lub zerującego krawędź materiału.
Nie wiem, czy to co mam do zrobienia, da się zrobić makrem.

Potrzebuję sterować dodatkowym nadmuchem powietrza z dyszy, w momencie gdy oś Z schodzi do pewnej ustalonej wysokości, na przykład 5 mm.
Czyli mamy dojazd na pozycję w osiach X i Y, (Z = 20mm), narzędzie zjeżdża w dół, w odpowiednim momencie włącza się przekaźnik (Z = 5 mm),
dopóki Z nie wróci powyżej 5mm, to cały czas załączony. I tak przez cały program, reagując na każde położenie osi Z poniżej założonej wartości.

Mam nadzieję, że opisałem to zrozumiale, proszę o pomoc jak to zrealizować.

: 10 sty 2013, 21:59
autor: qqaz
Zjedź do poziomu, włącz dmuchawę, jedź dalej - w programie to Ty decydujesz co, gdzie, kiedy.
Jeżeli Gkod to magia lub niedostepnośc to załóż krańcówkę na Z-kę w odpowiednim miejscu.
Jeżeli programowa wielkość 5mm jest na różnym poziomie i krańcówkowanie bedzie upierdliwe dla róznych programów a Gkodem załatwić się nie da to wstawisz plugina z komparatorem wysokości - wg współrzędnych maszynowych - gdy wiatrak na stałe sprzętowo jest ustawiony lub programowych dla wysokości zmiennej.

: 11 sty 2013, 15:23
autor: zbigsm
Dziękuję za podpowiedź, już się odniosę do pomysłów kolegi.
Zastosowanie krańcówki było pierwszą myślą przy projektowaniu osi Z. Przy regulacji wysokości za pomocą przesuwania góra-dół czujnika, można by ustawiać punkt załączenia przekaźnika.
Jednak jest to dodatkowa czynność, przy różnych wysokościach materiału wymagało by każdorazowego ustawiania.

Kody G nie są dla mnie magią, wiem jak to zrobić z palca dla pojedynczych linijek, tylko że nie widzę dopisywania funkcji dla kilkuset czy więcej kodów G.
Jak to zrobić z poziomu postprocesora, tego nie wiem :) Chyba żeby zastosować prosty programik, który by dopisywał funkcję przy wystąpieniu ruchu osi Z.

Najciekawiej wygląda napisanie plugina, gdzie w polu dialogowym można by definiować wysokość załączenia i wyłączenia przekaźnika, oraz nawet numer portu pod który byłby podpięty. Może ktoś z kolegów chciałby napisać taki plugin, oczywiście nie za darmo?

: 11 sty 2013, 15:41
autor: k-m-r1
najprosciej? skonfirugowac w funkcjach oś 4
i przypisac do niej funkcje jeśli oś Z mniejsza od 5 to włączy oś4

do osi 4 przypisujesz sobie w ustawieniach jakiś pin
do pina podpinasz przekaznik z opuznieniem wyłaczenia np 2 s by wyłaczał sie po chwili dmuchania

i teraz jak oś Z zjedzie poniżej 5 mm
to właczy sie sygnał osi 4
a to załaczy przekaznik który działą przynajmniej 2 s i dmucha i tak za każdym razem

lub zrobic prostą logike gdzie porónuje warotsci osi Z z zadanąwartoscia jesli jest mniejsze od 5 mm to włącza jakieś wyjscie sterujące dmuchaniem


lub ten przekaznik krancówke czy cos podobnego bez postprocesora

: 11 sty 2013, 16:06
autor: zbigsm
Opóźnienie wyłączania to wiem jak zrobić elektronicznie, przypisać pin do osi 4 też potrafię, jedynie nie rozumiem jak zrobić funkcję.
A funkcje, które by użyły oś 4 gdzie znajdę?

: 12 sty 2013, 08:13
autor: k-m-r1

: 12 sty 2013, 14:00
autor: zbigsm
Dziękuję kolego k-m-r1, w linku dobrze wytłumaczone działanie funkcji.
Rozumiem działanie funkcji w zakresie działań matematycznych czy przypisywania wartości jednej osi do drugiej, np. f(a) = z. Niestety nie wiem jak w funkcje wpisać warunki (jeżeli Z<5 to stan wysoki na wyjściu).
Rozwiązałem to w inny sposób. Użyłem braina, którego napisałem po oglądnięciu videotutoriala na stronie machsupport.
Mam po kolei "844-Z Position" --> "Compare immediate less than 5" --> "Output3".
Działa, wysokość mogę zmieniać, teraz testy :)

: 13 sty 2013, 00:31
autor: dziabi3
no problemo :mrgreen:

tylko napisz mi takie żeczy:

czy masz zrealizowaną jakąś funkcje w macropump.m1s jeśli masz to poproszę o te makro żebym dokleił co nieco od siebie

i napisz pod jakim outputem chcesz mieć to zrobione ?

Makro samo będzie za karz dym razem gdy tylko zjedzie poniżej 5mm koordynat maszynowych czy tez programowych odpalać ci nadmuch

z wykluczeniem takim że działa tylko jak masz odpalony program

: 13 sty 2013, 09:59
autor: zbigsm
Nie używałem jeszcze funkcji związanych z macropump. W ogóle nie użyłem teraz makr, tylko BRAIN.
U mnie wyjścia są następująco: wrzeciono pod przekaźnik PK1, a elektrozawór od dmuchania na przekaźniku PK2.
Za to w brainie rozbudowałem od wczoraj funkcje o dwie rzeczy.
Pierwsza sprawdza stan wyjścia PK1, wykrywa czy wrzeciono się kręci. Chodziło mi, żeby nie dmuchało na nieruchomej maszynie, choćby przy ustawianiu zera materiału.
Druga funkcja porównuje wartość osi Z z średnicą narzędzia (Tool Diameter). Nie używam wymiany narzędzi, więc ta wartość pozwala mi prosto zmieniać wysokość, przy której włącza się przekaźnik PK2.
Zdefiniowałem kilka narzędzi w ToolTable i mam prosto regulację.
Na koniec jeszcze funkcja logiczna AND sprawdza, czy wystąpiły oba warunki, czyli praca wrzeciona i wysokość Z niższa od założonej, wtedy włącza PK2.
Tak to w skrócie wygląda, to moje pierwsze użycie mózgu :)

: 13 sty 2013, 13:52
autor: dziabi3
utwórz sobie dro w które będziesz wpisywał wysokość aktywacji i będzie miodzio