Mamy taki problem.
Maszyna Heckert, posiada 2 palety (automatycznie wymienne stoły). Oś B obrotu stołu.
Na każdej palecie kolumna na której mamy 48 detali (po 12 na jednej ścianie)
1 strona detalu kąt B0
2 strona detalu kąt B90
1 strona detalu kąt B180
2 strona detalu kąt B270
z 1 strony detal jest wiercony wiertłem fi 11 oraz fazowany
z 2 strony wiercony fi 11, fazowany (ta sama głębokość co z 1 strony) wiercony fi 9 (na przelot grubość detalu 30) oraz gwintowany M10x1
Na drugiej palecie mamy to samo czyli 96 detali w sumie do obrobienia w jednym programie.
Dodatkowy warunek jest taki że każdy detal musi się dać skorygować w programie osobno (uwzględniająca nieprawidłowe rozstawienie detali lub różna głębokość detalu spowodowany błędnym wyszlifowaniem gniazda itp.)
Jestem bardzo ciekaw jak drodzy programiści byście sobie z tym poradzili.
Nie chodzi mi oczywiście o kod tylko zamysł programistyczny.
Sinumerik 840C lub 840D. Wyzwanie programistyczne
-
- ELITA FORUM (min. 1000)
- Posty w temacie: 1
- Posty: 1037
- Rejestracja: 01 kwie 2006, 22:08
- Lokalizacja: Wroclaw
- Kontakt:
Skoror kazdy z 96 detali musi byc osobno korygowany - wiec trzeba dla kazdego elementu wywolywac cykl, do ktorego bedziemy przekazywac parametry. Z tym, ze zmiennych jest duzo. Do dyspozycji istnieja R parametry, ale tych jest tylko 100
. Jest tez mozliwosc definiowania zmiennych a przede wszystkim tabel
. W zwiazku z tym mozesz stworzyc dla kazdej operacji tabele zmiennych opisujaca pojedynczy parametr. Na poczatek mozna zalozyc ze wszystkie zmienne z tego samego paramateru dostaja wartosci domyslne ( np otwor fi 11 bedzie mial glebokosc 30mm . W tym celu tworzymy tabele DEF REAL gleb[i,j]
gdzie i - indeks palety 1..4 a j - indeks elementu na palecie. Oczywiscie wygodnie jest uzyc petli do wypelnienia takiej tabeli
for j=1 to 48;
gleb[1,j]=30;
gleb[2,j]=30
....
itd
To samo robimy z innymi potrzebnymi nam parametrami.
Potem uzywamy tych parametrow w wywolaniu cykli, a jesli trzeba cos skorygowac podajemy np gleb[3,35]=30.2, (paleta 3, detal 35 = glebokosc wiercenia 30.2).
Najlepsze jest to, ze tworzac te zmienne jako globalne mozemy wczytywac cale zestawy parametrow z gotowego pliku przygotowanego wczesniej podczas zaladunku detali na palete..
Oczywiscie zeby to wszystko sie udalo nalezaloby ustalic kilka danych maszynowycm, ktore pozwola na zdefiniowanie takiej ilosci zmiennych.
Wszystko to opisane jest w instrukcjach Siemensa
840D_PG
840D_PGA
840D_PGZ
do zdobycia na stronach Siemensa
http://www.automation.siemens.com/docon ... &scope=all


gdzie i - indeks palety 1..4 a j - indeks elementu na palecie. Oczywiscie wygodnie jest uzyc petli do wypelnienia takiej tabeli
for j=1 to 48;
gleb[1,j]=30;
gleb[2,j]=30
....
itd
To samo robimy z innymi potrzebnymi nam parametrami.
Potem uzywamy tych parametrow w wywolaniu cykli, a jesli trzeba cos skorygowac podajemy np gleb[3,35]=30.2, (paleta 3, detal 35 = glebokosc wiercenia 30.2).
Najlepsze jest to, ze tworzac te zmienne jako globalne mozemy wczytywac cale zestawy parametrow z gotowego pliku przygotowanego wczesniej podczas zaladunku detali na palete..
Oczywiscie zeby to wszystko sie udalo nalezaloby ustalic kilka danych maszynowycm, ktore pozwola na zdefiniowanie takiej ilosci zmiennych.
Wszystko to opisane jest w instrukcjach Siemensa
840D_PG
840D_PGA
840D_PGZ
do zdobycia na stronach Siemensa
http://www.automation.siemens.com/docon ... &scope=all
>>>>>>>>>> GELO <<<<<<<<<<
-
- Specjalista poziom 3 (min. 600)
- Posty w temacie: 1
- Posty: 665
- Rejestracja: 28 sie 2006, 17:55
- Lokalizacja: dolnyśląsk
- Kontakt:
Ja tak na szybko zrobił bym to w ten sposób, że.. napisał bym podprogram na wiercenie i podprogram na gwintowanie.. i napisał bym go przyrostowo a nie w współrzędnych absolutnych.. i później podjazd na zadaną pozycję i wywołanie podprogramu.. i tak dalej.
Korygowanie poprzez zmianę pozycji w programie.. myślę że dosyć szybko by to działało no i nie za dużo myślenia i pisania.
Korygowanie poprzez zmianę pozycji w programie.. myślę że dosyć szybko by to działało no i nie za dużo myślenia i pisania.
-
- Specjalista poziom 1 (min. 100)
- Posty w temacie: 1
- Posty: 177
- Rejestracja: 09 wrz 2007, 12:45
- Lokalizacja: Gdańsk
Rozwiązanie gelo, jest super. Lecz gdy miałbym szybką sondę zrobiłbym podprogramy na każdą operację i tylko wywoływał w programie zmieniając bazy. Po pierwszym ustawieniu zapisałbym sobie tabelę punktów zerowych do pliku. Fakt że pomiar tych 48 detali z automatu trwałby chwilę (przy szukaniu środka i pomiarze Z około 15s czyli 12 min all
) Nie ulega kwestii również zużycie baterii. Wszystko zależy co sprawniej wyjdzie. Sztuka w rękę, pomiar i korekta zmiennych czy sonda która jak widać tutaj bardzo ułatwiłaby pracę. Poza tym wykluczamy czynnik ludzki 


W rozmiarze siła: Hartford Blockbuster PRO-3210 - 3000x2100x1070,42kW,35t
-
- ELITA FORUM (min. 1000)
- Posty w temacie: 1
- Posty: 1320
- Rejestracja: 24 cze 2007, 20:42
- Lokalizacja: Świdwin / Worcester
ale zajmujemy maszyne... teraz policzmy czy taniej wyjdzie zaplacic czlowiekowi ktory stoi przy maszynie za pomiary czy taniej bedzie zajmowac maszyne ktora w tym czasie nie zrobi kolejnych detali...? skoro na stol kladziona jest taka ilosc detali to zaloze sie, ze ilosc wszystkich jest wieksza niz 10tys...Primoza2007 pisze:Poza tym wykluczamy czynnik ludzki
- Heidenhain - Siemens - Fanuc -
Able to use the following programmes: FANUC Series 18i-TB, FANUC O-T, SIEMENS SINUMERIC 810D & 840D, ShopMILL, ShopTURN, ManualTURN, HEIDENHAIN CNC ISO, DIN PLUS and TURN PLUS (CNC PILOT) and many more.
Able to use the following programmes: FANUC Series 18i-TB, FANUC O-T, SIEMENS SINUMERIC 810D & 840D, ShopMILL, ShopTURN, ManualTURN, HEIDENHAIN CNC ISO, DIN PLUS and TURN PLUS (CNC PILOT) and many more.