witam problemy z Fanuc 31itb

Dyskusje na temat systemu Faunc

Autor tematu
Darekkk30
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 2
Posty: 18
Rejestracja: 11 paź 2013, 18:25
Lokalizacja: Heven

witam problemy z Fanuc 31itb

#1

Post napisał: Darekkk30 » 17 lis 2014, 08:51

Witam potrzebuję stworzyć program z (licznikiem tj naliczanie powtórzeń i powrót do wskazanego miejsca programu) np początek wyglada tak

P0001 (nazwa programi)
G65 P0001 L42 (program P0001 powtórzony 42 razy) i tu argument [ jeżeli np ilość powtórzeń L=42 będzie = L42 to ] GO TO M
#530= 210.0
#531= 10.0
#528= 2.0
itp aż do




M99 P99

Potrzebuję jakieś przykłady związane z uzywaniem argumentów pozdrawiam

[ Dodano: 2014-11-17, 09:20 ]
dokładnie chodzi mi o podanie przykładów z tymi argumentami i objaśnienie oznaczeń
IF[ # EQ , GT itp itp ] GOTO
WHILE [ .....



Tagi:


PiRo_man
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 2
Posty: 329
Rejestracja: 23 sie 2010, 21:32
Lokalizacja: Świerklany

#2

Post napisał: PiRo_man » 17 lis 2014, 20:07

Do instrukcji sterownika ciężko zajrzeć?

IF - jeśli
# - zmienna
EQ - z angielskiego Equal czyli "równa się"
itp itp - reszta analogicznie jest skrótem z angielskich wyrazów
GOTO - przeskocz do numeru bloku
WHILE[...] - dopuki [warunek...]

inż. Mateusz


Autor tematu
Darekkk30
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 2
Posty: 18
Rejestracja: 11 paź 2013, 18:25
Lokalizacja: Heven

#3

Post napisał: Darekkk30 » 21 lis 2014, 10:18

to co kolega tu wypisał to oczywiście jest mi znane i tak jest . Prosiłem o przykład np licznika w poście wyżej

Awatar użytkownika

gelo
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 1
Posty: 1028
Rejestracja: 01 kwie 2006, 22:08
Lokalizacja: Wroclaw
Kontakt:

#4

Post napisał: gelo » 21 lis 2014, 11:35

Witam,

po wywołaniu G85 42 razy i tak działanie podprogramu P001 zakończy się i program powroci do programu glownego.
Niemniej używanie - instrukcji IF mogloby wygladac tak.

O0002
kod programu
j.w
j.w.
(POCZATEK PETLI)
#550=42 ( ilość do wykonania)
#551=1 (licznik powtorzen)
N100
IF #551 GT #550 GOTO999 (Jeżeli licznik powtorzen #551 jest większy niż licznik częśći #550 to skok do linii N999 ) Czyli w momencie jak #551 osiągnie 43 to skok do N999

#530=20.0
itd. (bloki programu
itd.
itd.
#551=#551+1 ( zwiększenie licznika powtorzen o 1)
GOTO100 ( skok do linii N100 - czyli petla)
(KONIEC PETLI)

N999
tu .dalsza czesc programu
itd.
itd.
M17 ( koniec podprogramu i wyjście do programu glownego
>>>>>>>>>> GELO <<<<<<<<<<


PiRo_man
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 2
Posty: 329
Rejestracja: 23 sie 2010, 21:32
Lokalizacja: Świerklany

#5

Post napisał: PiRo_man » 21 lis 2014, 16:52

Przydało by się przed pracą ze zmiennymi sprecyzować zakres ich działania. Czyli zmienne z zakresu 1 - 33 to zmienne lokalne, 100 - 199 globalne, 500 - 999 globalne zachowujące wartość po wyłączeniu zasilania. Te ostatnie dobre są tak jak kolega wyżej napisał na przykład do zliczania ilości wykonanych sztuk. Nawet gdy ktoś wyłączy maszynę to po jej ponownym uruchomieniu i kontynuacji produkcji liczba wykonanych sztuk będzie zgodna. Kiepskim pomysłem jest używanie ich jako licznika pętli. Chyba nie muszę tłumaczyć dlaczego.

Używanie instrukcji IF do przeskoków pętli również nie jest dobrym rozwiązaniem. Wydajniejsza jest w tym przypadku pętla WHILE. Dlaczego? IF wyszukuje etykiety w całym programie. WHILE natomiast ma określony zakres, i tylko w tym zakresie odbywa się skok.

Ogólnie na temat programowania parametrycznego i przypadków użycia można pisać książki. Jednak do poznania podstaw i umiejętności ich wykorzystania wystarczy kilkanaście stron. Nie będę zaprzeczał swoim filozoficznym ideom i jak w większości przypadków odsyłam do literatury w postaci instrukcji sterownika. Jest to najbardziej odpowiednia lektura z kilku powodów. Po pierwsze "po co wyważać otwarte drzwi", czyli przepisywać tutaj instrukcję. Skoro ktoś to już napisał i poświęcił na to czas, my już nie musimy poświęcać naszego. A że w spisie treści jest ten dział zawsze wyszczególniony to nie trudno go znaleźć. Po drugie są pewne różnice w zależności od wersji sterownika. Na przykład w ilości obsługiwanych funkcji. Mogą wystąpić w adresacji zmiennych i ich zakresie działania, w instrukcji jest to fachowo opisane i poparte przykładami wykorzystania, są opisane zmienne maszynowe, spod których można wyciągać pewne rzeczy (jak na przykład promień narzędzia, aktualna pozycja narzędzia, są też zmienne odpowiedzialne za wyświetlanie komunikatów alarmu bądź ostrzeżeń), zmienne te również mogą mieć inne adresy w zależności od maszyny. Dlatego między innymi moim zdaniem warto sięgnąć do instrukcji sterownika konkretnej maszyny na której mamy zamiar programować.

inż. Mateusz

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Fanuc”