fanuc series 21i-MB nie kończy programu - błąd 071

Dyskusje na temat systemu Faunc

Autor tematu
7keys
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 7
Posty: 7
Rejestracja: 08 cze 2016, 08:50
Lokalizacja: sucha beskidzka

fanuc series 21i-MB nie kończy programu - błąd 071

#1

Post napisał: 7keys » 08 cze 2016, 09:23

Witam wszystkich.
Zanim przejdę do opisu problemu, może krótki opis sterownika i obecnych ustawień:
model: fanuc series 21i-MB

Ustawienia sterownika do odczytu z folderu na dysku komputera na którym zaisntalowany jest także panel sterujący fanuc

#20 = 5
#0138 = bit 7 =1)
#3404 = bit 2 =1)
#100 = bit3=1
#100 = bit5=1
#101 = bit7=1
#102 = wpisane 5 tak jak w pozycji #20
#103 = 11 - prędkość transmisji ( chyba raczej odnosi się tylko do komunikacji po RS232)
#6030 = 198
#6300.4 = 1
#6080 = 0
#3030 = 3

Sytuacja na chwilę obecną wygląda w tak.
Program wczytuje się pięknie w trybie DNC, dane do sterownika wczytują się partiami - czyli tak jak powinno być :)
Niestety po upływie około 50 do 60 minut maszyna przestaje wczytywać kolejną porcję danych i zatrzymuje się z błędem "071 Search address or program is not found"
Zatrzymuje się w różnych miejscach, czasem wykona 40000 wierszy , czasem 50000...
Po zatrzymaniu na ekranie kontrolny " wisi" tylko około 4-5 wierszy, gdzie normalnie ekran wykonywanych poleceń jest cały cas wypełniany kolejnymi krokami.

Oczywiście mniejsze programy ( o mniejszej ilości wierszy ) które ze względu na specyfikę projektu wykonują się w czasie np. 3 godzin - działają bez błędu.

Może macie Panowie jakieś sugestie ?
Pytania odnośnie działań jakie wykonaliśmy w poszukiwaniu rozwiązania problemu - mile widziane :)



Tagi:


skorpioncnc
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 7
Posty: 11
Rejestracja: 14 cze 2016, 14:00
Lokalizacja: Krakow

#2

Post napisał: skorpioncnc » 14 cze 2016, 15:43

Witam,

Sadząc po ustawieniu parametru #20=5 korzystasz z Fanuc Data Server. Po kodzie błędu wnioskuje że program nie może znaleźć innego podprogramu na dysku. W takim razie mam kilka pytań:

1 Czy na pewno sytuacja zależna jest od ilości wierszy w programie? Możesz wrzucić program w stylu:
G4X0.001; powtórzone parę tysięcy razy i sprawdzić czy program przejdzie w zależności od ilości linijek kodu. Polecam do tego użycie np Notepad++.

2 Czy w twoim programie nie odwołujesz się do jakiegoś podprogramu którego nie ma za pomocą G65 lub M kodu?

3 6300.4 to nie jest wywoływanie programu z pliku? Sprawdz jak dział z włączonym i wyłączonym parametrem.


Autor tematu
7keys
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 7
Posty: 7
Rejestracja: 08 cze 2016, 08:50
Lokalizacja: sucha beskidzka

#3

Post napisał: 7keys » 15 cze 2016, 08:22

tak korzystamy z Fanuc Data Server.
1. sprawdzę tak jak mówisz.
2. programy generowane są programem EASYSTONE zarówno te krótkie jaki i duże.
3. parametr 6300.4 - to może właśnie być ten problem...

Sprawdzę i dam znać jaki jest rezultat.


skorpioncnc
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 7
Posty: 11
Rejestracja: 14 cze 2016, 14:00
Lokalizacja: Krakow

#4

Post napisał: skorpioncnc » 15 cze 2016, 09:00

Ten notepad ++ to jest zwykły edytor tekstu pokazujący ilość linijek i pozwalający w prosty sposób porównać 2 programy. Natomiast G4X0.001 powinno dać taki efekt że maszyna będzie czekać 0.001 sekundy. Jeśli miałbyś problem z ilością linijek to raczej powinien wyskoczyć problem bufora na maszynie.
Z tym parametrem może być taki temat że po jego zmianie możesz nie odszukać programu z dataserwera ale próbuj.


Autor tematu
7keys
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 7
Posty: 7
Rejestracja: 08 cze 2016, 08:50
Lokalizacja: sucha beskidzka

#5

Post napisał: 7keys » 16 cze 2016, 12:45

notepad++ znam ;)
w sumie same pliki pod względem różnic można porównać nawet total commander...
jednak jak wspomniałem pliki np o rozmiarze fizycznym 300, 400 kB idą bez problemu.
problemem są programy o rozmiarze fizycznym 1,5-2 MB.
program EasyStone ma funkcję "łamania" programu na 2 części czyli pierwszy człon np: 200 kB w którym zawarte są podstawowe nastawy (punkt zerowy itd) oraz człon drugi w którym zawarta jest część wykonawcza programu.
w członie pierwszym na końcu linii jest odwołanie do członu drugiego z rozkazem M198
dlatego uruchamiamy tylko człon 1.
żeby rozjaśnić: po łamaniu mamy dwa programy np: O0001 i O0002
uruchamiamy tylko O0001 a po jego zakończeniu automatycznie wczytują się już dane z O0002.

W sumie wygląda to tak jakby ze względu właśnie na wielkość programu w pewnym momencie występował problem z ochroną pamięci.... (przepełnienie bufora itp...)

niestety nie mam dostępu na codzień do maszyny więc nie mogę sprawdzić np:

1. czy program typu data serwer jest samodzielnym oprogramowaniem typu FTP działającym po ethernet na konkretnym porcie.
jeżeli tak , to w sterowniku fanuc musi być skonfigurowane połączenie po IP i porcie.
zakładam że tak jest skoro mimo wszystko następuje odczyt z katalogu na komputerze.
2. w opisie do fanuc data server kanał komunikacji po ftp/ethernet opisany jest jako #20 =6
my mamy param #20 =5 ponieważ na 6 nie działa. więc zakładam że aplikacja opisana w pkt. 1 działa "samodzielnie" bez wsparcia protokołu ftp, samba...

Cytat z innego forum....
The 071 alarm means that the control is trying to COMPARE the data that's coming in with a program that's already in memory. The compare function is active only when the memory protect key switch is turned on. Turn the key switch off, and the 071 alarm shouldn't happen.

i odpowiedź pytającego.
I've learned that on the machines I have, what should and shouldn't happen doesn't really seem to mean anything lol.
The key was off the whole time but after I read what you wrote, I checked the diagnostics and didn't notice anything change when turning the switch on and off so I checked one of my other machines and noticed that diagnostic 0006 bit 2 changes from 0 to 1 when the program protect is turned off. Sounds like you may be onto something. I'll have to pop the panel off the front and check the switch with the meter. Thanks and I'll post what I find.
zaintrygował mnie "memory protect key switch" który fizycznie na naszym panelu nie istnieje :) oraz COMPARE ... może nie może porównać ponieważ nie ma do czego ze względu na to że dane wgrywane są live ...?

Postaram się na dniach zbadać gruntowniej samą komunikację...
Może masz jeszcze jakieś sugestie ?


skorpioncnc
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 7
Posty: 11
Rejestracja: 14 cze 2016, 14:00
Lokalizacja: Krakow

#6

Post napisał: skorpioncnc » 16 cze 2016, 14:04

Kolego, sytuacja jest trochę bardziej skomplikowana niż nam się wydaje.

Z tego co napisałeś rozumiem że rozbicie programu na kilka krótkich programów O1 O2 O3 O4 ( każdy o rozmiarze np 400kB) i puszczenie ich po sobie powinno rozwiązać problem. Robisz program O1 jako konfiguracyjny i np. kolejne programy jako ścieżki dla każdego narzędzia. Jedyny problem w tym że będziesz miał np. 10 programów ale za to dostaniesz potwierdzenie że program działa a winna jest wielkość plików.

Data protect key switch to jest przełącznik z kluczykiem na panelu który uniemożliwia zapis programu i jego edycję. W większości maszyn występuje. Jeżeli możesz jakikolwiek program edytować lub skopiować to oznacza że to nie to.

Maszyny Fanuc mają różne tryby pracy jak MDI, AUTO, DNC. DNC to jest tryb pozwalający na pracę ze zdalnego nośnika danych. W zależności od ustawienia parametru fanuc #20 jest to karta pamięci, USB lub RS232. Nie ma możliwości pracy w trybie DNC przez Ethernet, chyba że posiadasz DATA Serwer.
Data Serwer to jest płytka w sterowaniu Fanuc posiadająca własną pamięć. Data serwer posiada 3 tryby pracy, jako bufor, jako pamięć i jako łącznik. W trybie pamięci Data serwer łączy się z komputerem zewnętrznym (FTP), zgrywa program do swojej wewnetrznej pamięci ( innej niż pamięć maszyny ) i dopiero z tej pamięci program jest odczytywany przez komputer sterujący CNC w trybie DNC.
Możliwości:
1 Program nie jest zgrywany na data serwer z komputera i wtedy CNC nie może znaleźć programu na data serwerze.

W trybie bufora Data serwer łączy się z komputerem zewnętrznym (FTP), zgrywa program w małych paczkach do swojej wewnetrznej pamięci ( innej niż pamięć maszyny ) i dopiero z tej pamięci program jest odczytywany przez komputer sterujący CNC w trybie DNC.

W trybie łącznika CNC łączy się bezpośrednio z komputerem.

Może masz zły tryb pracy i musisz zmienić z łącznika na bufor.

Fajnie jakbyś sprawdził jaki Data serwer masz zainstalowany ( numer FANUC) tj jaką ma pamięc, bo może tu jest problem.

Odezwij się na priv to prześlę CI instrukcje do dataservera dla tej wersji.


Autor tematu
7keys
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 7
Posty: 7
Rejestracja: 08 cze 2016, 08:50
Lokalizacja: sucha beskidzka

#7

Post napisał: 7keys » 17 cze 2016, 07:34

tryby pracy jak MDI, AUTO, DNC.
Data serwer posiada 3 tryby pracy, jako bufor, jako pamięć i jako łącznik
Powyższe funkcje i tryby znam :)
W sumie w teorii ( lektura manuali serwisowych) wiem o co biega...
Największy problem to brak czasu na "grzebanie" w maszynie.

Super że trafiłem na kogoś zainteresowanego tematem :)

Sprawdzę jaki mam program który to obsługuje...

Jeszcze jedno info odnośnie samej pracy na obecnym etapie.
- podczas pracy widać na panelu kontrolnym że program jest pobierany partiami
- licznik zajętości pamięci fanuc (liczba dostępnych rekordów) stoi w miejscu.


W każdym razie jak nie sprawdzę fizyczne Twoich sugestii to nie ruszymy dalej z tematem :)
Postaram się także o dołączenie screen'ów .


skorpioncnc
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 7
Posty: 11
Rejestracja: 14 cze 2016, 14:00
Lokalizacja: Krakow

#8

Post napisał: skorpioncnc » 17 cze 2016, 08:26

Tematem zacząłem się zajmować po tym jak odkryłem że Fanuc 16iMB 18iMB i 21iMB ma tyle pamięci że w programie mieszczą się tylko dwie linijki kodu o ile nie ma komentarza :mrgreen: .
Wszystko jest dobrze o ile programy nie przekraczają 0,5MB a później zostaje tylko DNC.

Najczęściej duże programy ładuje z karty i puszczam w DNC. Na starszych maszynach puszczam programy z kompa przez RS232. Przez RS łąduje się tylko 15 linijek do CNC a reszta czeka w kolejce. Tam najczęstszym problemem jest przeładowanie Bufora i to daje alarm 087 BUFFER OVERFLOW. Cała sztuka polega wtedy na skonfigurowaniu buforu I/O w kompie ale to całkiem iny temat. Jeżeli działają u Ciebie inne programy to nie jest to problem wielkości bufora. Raczej stawiałbym na to że masz tryb FTP i po jakimś czasie jest zrywana transmisja CNC-komputer zewnetrzny.

Co do twojej wątpliwości to program w DNC nigdy nie jest zgrywany do pamięci a jedynie do bufora w związku z czym stopień zajęcia pamięci fizycznej nie będzie się zmieniał.


Autor tematu
7keys
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 7
Posty: 7
Rejestracja: 08 cze 2016, 08:50
Lokalizacja: sucha beskidzka

#9

Post napisał: 7keys » 29 cze 2016, 08:28

Na dziś sytuacja w skrócie wygląda tak:
1. zainstalowany nowy serwer ftp z wyłączonymi limitami czasowymi - istnieje duże prawdopodobieństwo że powodem błędu 071 było właśnie "ubijanie" połączenia z serwerem przy długim okresie bezczynności w przedziale czasu 60-120 sekund.
2. sprawdziliśmy dwa duże programy - są wykonywane prawidłowo :)

parametry naszego sterownika odnośnie karty sieciowej wyglądają tak:

1. mac address : 00:00........
2. number of screens: 24
3. maximum path: 1
4. hdd existence : 0

i właśnie pozycja 4 , martwi nas najbardziej bo wychodzi na to że nie posiadamy karty z własną pamięcią czyli przy pobieraniu programu na bieżąco nie możemy stworzyć bufora choćby w celu cofnięcia się do poprzedniego kroku w programie w przypadku jakiegoś błędu ? :)

oczywiście zawsze można włączyć program w trybie "program test" bez włączania pracy, niestety nie powoduje to skrócenia czasu wykonania:) więc "puszczając" program w teście musimy czekać 2 godziny :) może znasz sposób na szybszą weryfikację ? :)
przykładowo - testowany wczoraj program miał czas wykonania 1,5 godziny i mniej więcej w połowie maszyna wywaliła błąd związany z wysokością pracy narzędzia ... niestety nie można było cofnąć się do "tyłu" i poprawić błędu, pozostało poprawić program i włączyć go od nowa...


skorpioncnc
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 7
Posty: 11
Rejestracja: 14 cze 2016, 14:00
Lokalizacja: Krakow

#10

Post napisał: skorpioncnc » 29 cze 2016, 09:57

7keys pisze:
parametry naszego sterownika odnośnie karty sieciowej wyglądają tak:

1. mac address : 00:00........
2. number of screens: 24
3. maximum path: 1
4. hdd existence : 0
Rozumiem że zmieniliście osprzęt sieciowy a nie dataserwer z maszyny. Moje pytanie brzmi w jaki sposób uzyskałeś powyższe dane? Puściłeś zapytanie po sieci do data serwera czy jest to wyciągnięte gdzieś z maszyny? Z tego co wiem to nie ma opcji dataserwera bez karty. Jeżeli jesteś w stanie zmienić tryb dataserwera na inny niż łącznik to znaczy że musisz mieć pamięć na dataserwerze.

W starych maszynach w trybie pracy DNC nie ma możliwości puszczenia programu z bloku tj. startu programu od wybranej linijki. Ja ten problem najczęściej rozwiązuje dzieląc program na podprogramy dla każdego narzędzia wtedy nie ma problemu żeby wrócić do jakiejś części. Przy 40 narzędziach jest to upierdliwe.

Fajnie jakbyś podał jaki dokładnie alarm wyskoczył na maszynie.

Poprawność korektorów po wywołaniu narzędzia sprawdzam w Notepad ++. Poprawności ograniczeń w osi nie da się tak sprawdzić.

Czy ten test o którym mówisz wykonujecie za puszczając program i blokując posuw osi? Jeśli tak to do testów zróbcie inny program (kopie testową ) z posuwami ustawionymi na np 10000 i program przejdzie w sterowaniu w kilka minut.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Fanuc”