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

Dyskusje dotyczące najpopularniejszego programu sterującego maszynami CNC

Autor tematu
zbigsm
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 108
Rejestracja: 09 sie 2005, 23:44
Lokalizacja: BB

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

#1

Post napisał: zbigsm » 10 sty 2013, 18:36

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ć.


Pozdrawiam - Zbyszek z BB

Tagi:


qqaz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 1
Posty: 2347
Rejestracja: 28 sty 2007, 16:12
Lokalizacja: Łódź

#2

Post napisał: qqaz » 10 sty 2013, 21:59

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.


Autor tematu
zbigsm
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 108
Rejestracja: 09 sie 2005, 23:44
Lokalizacja: BB

#3

Post napisał: zbigsm » 11 sty 2013, 15:23

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?
Pozdrawiam - Zbyszek z BB

Awatar użytkownika

k-m-r1
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1417
Rejestracja: 23 cze 2008, 10:38
Lokalizacja: OOL lub DW
Kontakt:

#4

Post napisał: k-m-r1 » 11 sty 2013, 15:41

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
[b]MACH3 cnc[/b]Tworzenie Makr do palników magazynków THC OHC inne[b]EKRANY dla firm producentów maszyn[/b] Budowa sprzedaż wypalarki plazma gaz obrotnice Elektrodrążarki Frezarki Tokarki Giętarki3D inne wg zlecenia 888 708 196 Tomek Komor [email protected]


Autor tematu
zbigsm
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 108
Rejestracja: 09 sie 2005, 23:44
Lokalizacja: BB

#5

Post napisał: zbigsm » 11 sty 2013, 16:06

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ę?
Pozdrawiam - Zbyszek z BB

Awatar użytkownika

k-m-r1
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1417
Rejestracja: 23 cze 2008, 10:38
Lokalizacja: OOL lub DW
Kontakt:

#6

Post napisał: k-m-r1 » 12 sty 2013, 08:13

[b]MACH3 cnc[/b]Tworzenie Makr do palników magazynków THC OHC inne[b]EKRANY dla firm producentów maszyn[/b] Budowa sprzedaż wypalarki plazma gaz obrotnice Elektrodrążarki Frezarki Tokarki Giętarki3D inne wg zlecenia 888 708 196 Tomek Komor [email protected]


Autor tematu
zbigsm
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 108
Rejestracja: 09 sie 2005, 23:44
Lokalizacja: BB

#7

Post napisał: zbigsm » 12 sty 2013, 14:00

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 :)
Pozdrawiam - Zbyszek z BB


dziabi3
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 2
Posty: 874
Rejestracja: 13 sie 2009, 16:15
Lokalizacja: xxx

#8

Post napisał: dziabi3 » 13 sty 2013, 00:31

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
Mach3 + CSMIO = :-) :-) :-)


Autor tematu
zbigsm
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 5
Posty: 108
Rejestracja: 09 sie 2005, 23:44
Lokalizacja: BB

#9

Post napisał: zbigsm » 13 sty 2013, 09:59

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 :)
Pozdrawiam - Zbyszek z BB


dziabi3
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 2
Posty: 874
Rejestracja: 13 sie 2009, 16:15
Lokalizacja: xxx

#10

Post napisał: dziabi3 » 13 sty 2013, 13:52

utwórz sobie dro w które będziesz wpisywał wysokość aktywacji i będzie miodzio
Mach3 + CSMIO = :-) :-) :-)

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Mach 2 / 3 / 4 (ArtSoft software)”