Aplikacja gospodarki narzędziowej dla NX

Transkrypt

Aplikacja gospodarki narzędziowej dla NX
Aplikacja gospodarki narzędziowej dla NX
W ostatnich latach duże znaczenie w produkcji przemysłowej zyskują technologiczne bazy danych. Ich
wartość nabiera nowego wymiaru podczas pracy z programami obróbkowymi, pozwalającymi na optymalizację
procesu. W celu sprostania stawianym wymaganiom konieczne jest dobranie odpowiedniej kadry specjalistów,
zasobów sprzętowych oraz oprogramowania, które umożliwia zbieranie, przetwarzanie i analizę informacji.
Programy te dają możliwość unikania błędów oraz zapewniają ciągły przepływ informacji pomiędzy
poszczególnymi jednostki a także maszynami. Bazy danych są zbiorem danych, zorganizowanym w określonej
strukturze przez system zarządzania bazą danych (SZDB, ang. DBMS - Database Management System),
zawierającym dane związane z działalnością danej firmy, czy dziedziną jaką dana jednostka się zajmuje.
Biorąc pod uwagę ilość wdrożeń systemów CAD, CAM (m.in. Catia, NX) w firmach przemysłowych oraz
uczelniach i szkołach technicznych, daje się zauważyć szczególne ich znaczenie w projektowaniu elementów
maszyn.Technologiczne bazy danych odgrywają znaczącą rolę w wymienionych systemach. Dzięki nim systemy
CAD/CAM umożliwiają szybki wgląd do zebranych informacji, pozwalają modelować, dokonywać obliczeń oraz
analiz modelu 3D, programować obróbkę i tworzyć dokumentacje z przeprowadzonych działań. Wykorzystują
zawarte parametry do zadanych obliczeń, niejednokrotnie porównując otrzymane wyniki z wartościami
wzorcowymi.
Nadal nie został rozwiązany problem wymiany informacji pomiędzy różnymi stanowiskami roboczymi. Brakuje
również możliwości odzyskania danych podczas dokonywania ponownej instalacji systemu. Dlatego stworzono
aplikację wspomagającą gospodarkę narzędziową pozwalając na przechowywanie zbioru danych oraz na ich
łatwy eksport do systemu NX.
Przedstawiana w artykule aplikacja może zostać wykorzystana do zarządzania narzędziami skrawającymi
w systemie CAD/CAM oraz być inspiracją do tworzenia technologicznych baz danych usprawniających działanie
firm i przedsiębiorstw produkcyjnych.
Tworzenie aplikacji
W celu wykonania opisywanego programu, konieczne stało się dotarcie do plików przechowujących dane,
wykorzystywanych w systemie NX firmy Siemens oraz znalezienie sposobu ingerencji w ich strukturę.
Ukierunkowano się na poszukiwanie pojedynczego pliku, zawierającego informacje na temat narzędzi.
Opisywany system przechowuje swoje kluczowe dane w plikach z rozszerzeniem *.dat. Informacje o
narzędziach przechowywane są w dwóch folderach, w zależności od wyboru jednostek metrycznych bądź
calowych. Pliki jednostek metrycznych przechowywane są w katalogu:
…\UGS\NX6.0\MACH\resource\library\tool\metric
Ścieżka dostępu uzależniona jest od wybranego podczas instalacji katalogu. Najczęściej jest to katalog
domyślny w formie: C:\Program Files\UGS\NX6.0\MACH\resource\library\tool\metric
Baza narzędzi zawiera się w pliku tool_database.dat. Plik ten można edytować w bardzo łatwy sposób np. za
pomocą notatnika. Łatwe przeglądanie tabeli jest możliwe dzięki formie zapisu. Struktura danego typu narzędzia
podzielona jest na kolumny, z których kolumny od 3 do 6 odgrywają kluczową rolę. Określają one
przyporządkowanie narzędzia do ściśle określonej grupy.
UGT
UGST
Milling
Milling
Milling
Milling
Milling
Milling
Milling
Milling
Milling
Milling
Milling
Drilling
Drilling
Drilling
Drilling
Drilling
Drilling
Drilling
Drilling
Drilling
Drilling
Drilling
Drilling
Drilling
Drilling
Podgrupa narzędzi
ST
Grupa
narzędzi
T
Tabela 1. Wypis grup oraz parametrów narzędzi systemu NX dla frezów oraz wierteł wraz z tłumaczeniem wykorzystanym w programie
Parametry po których
Język angielski
Język polski
system NX rozpoznaje
daną kategorię
Grupa
narzę
dzi
End Mills Non-indexable
End Mills Indexable
Ball Mills Non-indexable
Face Mills Indexable
T-Slot Mills Non-indexable
Barrel Mills
UG - 5 Parameter Cutter
UG - 7 Parameter Cutter
UG - 10 Parameter Cutter
Thread Mills
Mill From Tool
Twist Drills
Core Drills
Spot Drills
Center Drills
Counter Boring Non-indexable
Counter Sinking Non-indexable
Gun Drill
Taps
Indexable Insert Drill
Fixed Diameter Boring
Machine Chucking Reamers
Taper Machine Reamers
Step Drills
UG Drills
02
02
02
02
02
02
02
02
02
02
02
03
03
03
03
03
03
03
03
03
03
03
03
03
03
01
02
03
12
21
93
90
91
92
31
51
01
03
21
22
51
61
07
71
06
32
41
42
04
90
01
01
01
01
08
07
01
01
01
02
00
02
02
02
02
02
02
02
02
02
02
02
02
02
02
01
01
04
01
00
00
01
02
03
10
00
00
00
04
01
07
02
00
08
00
05
06
06
12
00
Frezy
Frezy
Frezy
Frezy
Frezy
Frezy
Frezy
Frezy
Frezy
Frezy
Frezy
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Wiertła
Podgrupa narzędzi
Frezy trzpieniowe pełnowęglikowe
Frezy z płytkami wieloostrzowymi
Frezy kuliste
Głowice frezarskie
Frezy teowe
Frezy baryłkowe
Frezy 5-parametrowe
Frezy 7-parametrowe
Frezy 10-parametrowe
Frezy do gwintów
Frezy kształtowe
Wiertła kręte
Wiertła rdzeniowe
Nawiertaki długie
Nawiertaki
Pogłębiacze walcowe
Pogłębiacze stożkowe
Wiertła kręte długie
Gwintowniki
Wiertła na płytki wymienne długie
Wiertła z płytkami wieloostrzowymi
Rozwiertaki maszynowe
Rozwiertaki stożkowe
Wiertła stopniowe
UG Wiertła
Dzięki polom w kolumnach które pełnią rolę kluczy, których wartości określają rodzaj grupy system
rozpoznaje i przyporządkowuje określone nadrzędzie pożądanej grupie. Pola pełniące rolę unikatowych
identyfikatorów, zamieszczone w kolumnach, przechowują dane o tym samym znaczeniu w kolejnych wierszach.
Struktura grup ma charakter hierarchiczny a miejsca konkretnych grup rozpoznawane są na podstawie kolumn T,
ST, UGT, UGST. Grupy narzędzi oraz ich identyfikatory przedstawia Tabela 1.
Dane narzędziowe wprowadzane są do pliku w określonej kolejności. System rozpoznaje poszczególne
pola zliczając znaki „|” które oddzielają poszczególne wartości.
Przed każdą tabelą z danymi narzędzi umieszczane są skróty wpisane w poszczególne pola tabeli oraz
ich objaśnienia. Ważny jest zachowany określony format bloku danych.
Rys. 1. Zrzut ekranu przykładu wprowadzonych danych w bazie narzędziowej systemu NX
Znając powyższe informacje oraz opisaną budowę i formę zapisu danych w pliku, pozostaje wybranie
sposobu dopisywania danych. Pisząc program, zdecydowano się na stworzenie aplikacji będącej bazą danych
opartą na języku MySQL.
Wszystkie informacje przechowywane są wewnątrz bazy. Cała baza zawiera 57 tabel. Nazwy tabel utworzone
są w sposób sugerujący dane zawarte wewnątrz struktury.
Rys. 2. Zrzut widoku bazy danych MSQL napisanego programu
Odwołując się do struktury napisanego programu warto przedstawić diagram klas części aplikacji.
Rys. 3. Diagram klas części aplikacji
Niektóre elementy interfejsu graficznego Javy - nowoczesnego interfejsu Swing, zwłaszcza te, które mają
zaprezentować użytkownikowi wiele danych, są wykonane w oparciu o model "model-widok-kontroler" (MVC Model-View-Controller). Model ten wyraźnie oddziela dane od tego w jaki sposób mają być one prezentowane
użytkownikowi. Dzięki temu model może przechowywać różne typy danych natomiast prezentować je
użytkownikowi w miarę spójny sposób.
Napisana aplikacja dosyć szeroko korzysta z modeli danych. Wyróżnić można w niej trzy typy modeli: model
danych dla tabeli z narzędziami, model danych dla drzewa kategorii narzędzi i model danych do prezentacji na
liście wyboru.
Podstawową klasą dla modelu danych tabeli JTable jest klasa ModelTabeli, która dziedziczy po abstrakcyjnym
modelu i implementuje jego metody, tak aby widok tabeli za pomocą kontrolera mógł pobrać dane do prezentacji.
Oczywiście można użyć tej klasy do trzymania danych dla tabeli, jednak w celu wygody i przejrzystości
w implementacji aplikacji, model ten jest dziedziczony przez trzy klasy będące już końcowymi modelami dla tabel.
Są to tabele: narzędzi, edycji narzędzia i schowka. Klasy dziedziczące po klasie ModelTabeli poszerzają jej listę
metod o pewne specyficzne dla danej tabeli, nie będące jednak wymagane przez tabelę JTable. Natomiast te,
które są są wymagane przez kontroler, mogą zostać przedefiniowane w klasie końcowej (jak np. isCellEditable())
aby dostosować zachowanie widoku tabeli do obsługi danych, które on prezentuje.
Modele danych mają bezpośrednie połączenie z bazą danych za pomocą obiektu BazaDanych. Obiekt ten
udostępnia kilka metod, za pomocą których modele mogą pobierać i zapisywać dane w bazie. Czynności te są
wykonywane w tych dodatkowych metodach klas modeli tabel. Wywołaniem tych metod zajmuje się aplikacja, np.
reakcja na przycisk Zapisz.
Model danych tabeli narzędzi jest najbardziej rozbudowany. W nim tworzone są modele edycyjne wybranego
narzędzia, a następnie przypisywane do odpowiednich tabel. Dodatkowo model ten przechowuje zdjęcie
narzędzia, którego oczywiście nie ma w tabeli, ale za pomocą odpowiedniej metody jest pobierane na panel ze
zdjęciem. Podobnie jest z metodą umieszczającą wybrane narzędzie w schowku, wystarczy przekazać obiekt
(model tabeli) schowka, a za pomocą standardowych metod modelu tabeli narzędzie zostanie dodane do
schowka.
W aplikacji występują jeszcze ModelListWyboru oraz ModelDrzewaNarzedzi. Dziedziczą one po
standardowych modelach dla tych elementów i poszerzają ich implementację o specjalizowane metody ich
obsługi potrzebne w aplikacji. Model dla list wyboru jest jeden, a pozwala na wyświetlenie trzech różnych tabelek
bazodanowych (jeden model na jedną tabelę) - czym znakomicie spełnia koncepcję MVC.
Opis programu
Program został napisany w języku Java i wykorzystuje bazę danych MySQL, opartą na dwóch serwerach
WAMPSERVER lub Derby. Do aplikacji dodatkowo utworzono instalator pozwalający w prosty sposób umieścić
program w posiadanym przez użytkownika systemie operacyjnym.
Minimalne wymagania aplikacji to:
 Procesor (400 MHz lub więcej)





System operacyjny: Microsoft Windows 2000/XP
Pamięć 256 MB RAM (lub więcej)
Napęd CD-ROM
Wymagane miejsce na dysku 18 MB
Zainstalowany sterownik Java
Proponowana aplikacja w pełni spełnia postawione założenia tj. przechowuje, zarządza oraz integruje
parametry z technologiczną narzędziową bazą danych systemu NX.
Opis funkcjonalności programu przedstawiono na podstawie głównego okna aplikacji.
Rys. 4. Główne okno programu
Opis poszczególnych elementów:
1. Menu programu ważnymi funkcjami zawartymi w nim są:

Importuj z XML – pozwala na import parametrów z pliku XML

Eksport NX – eksportuje parametry narzędzi ze schowka do NX-a

Katalog eksportu – pozwala na ustawienie katalogu do którego ma być eksportowany plik z danymi
zgromadzonymi w schowku
2. Narzędzia z wybranej kategorii – wyświetla wszystkie narzędzia z wybranej kategorii wraz z
parametrami: identyfikatora, nazwy, średnicy, długości, części roboczej, rodzaj obróbki i numerem
katalogowym. Wybranie narzędzia z wyświetlonej listy pokazuje szczegółowe parametry w polu
„Szczegóły wskazanego narzędzia”.
3. Zdjęcie narzędzia – wyświetla zdjęcie narzędzia lub dowolny inny plik zamieszczony przez użytkownika.
Każde narzędzie może posiadać inny obrazek.
4. Rysunek techniczny – pole wyświetlające stały rysunek z parametrami narzędzia. Rysunki
przyporządkowane są dla całej kategorii danego narzędzia.
5. Inne parametry – pole pozwalające na wprowadzanie dodatkowych parametrów, niż te zawarte w polu
Szczegóły wskazanego narzędzia. Pola Materiały, Rodzaj obróbki, Typ obróbki są polami wyboru.
Natomiast pole Uwagi jest polem tekstowym i pozwala na wprowadzenie dowolnej notatki o długości do
1000 znaków.
6. Przyciski czynności:

Dodaj nowe – pozwala na dodanie nowego narzędzia do kategorii w której aktualnie znajduje sie
użytkownik.

Modyfikuj – umożliwia modyfikację parametrów aktualnie wybranego narzędzia.

Zapisz zmiany – przycisk staje się aktywny po wcześniejszej aktywacji jednego z przycisków: Dodaj
nowe lub Modyfikuj. Służy do zapisania wykonanych modyfikacji w danym narzędziu.

Do schowka – Przycisk jest aktywny, gdy jest możliwość dodania aktualnie przeglądanego
narzędzia do schowka programu. Następnie schowek pozwala na wyeksportowanie narzędzi do
systemu NX.
7. Szczegóły wskazanego narzędzia – pole wyświetla wszystkie parametry przypisane do danej grupy
narzędzi. Poszczególne pola zostały posegregowane kolorami wg ważność pól.
8. Schowek – przechuje parametry narzędzi które maja zostać wyeksportowane.
9. Przyciski czynności schowka:

Usuń – przycisk pozwalający na usunięcie jednej pozycji ze schowka.

Eksportuj>>NX –kliknięcie w przycisk powoduje wyeksportowanie wszystkich zebranych narzędzi ze
schowka do pliku bazodanowego, odczytywanego przez system NX.
Najważniejszymi zadaniem opisywanej aplikacji jest eksport parametrów do systemu NX. Równie ważny jest
import parametrów do bazy z plików XML o określonej strukturze.
W celu eksportu informacji o narzędziu do systemu NX należy zamieścić je w schowku programu za pomocą
przycisku „Do schowka” oraz zatwierdzić przyciskiem „Eksport>>NX”. Narzędzia wraz z parametrami zostaną
wyeksportowane do pliku bazodanowego w wskazaną przez użytkownika lokalizację.
Aby dokonać importu parametrów narzędzia należy wybrać z menu Plik>>Importuj z XML, następnie wskazać
plik XML z parametrami narzędzia, które mają być dodane do bazy programu. Importować można tylko jedno
narzędzie z parametrami z jednego pliku XML. Integracja parametrów narzędzia pomiędzy plikiem XML a bazą
danych następuje dzięki parametrom (słowom kluczowym) opisującym poszczególne dane. Wypis parametrów
przechowuje baza danych w tabeli nazwy, kolumnie importXML.
Rys. 5. Przykład struktury pliku XML wczytywanego przez program
Wnioski
Prezentowany program pozwala na zaprezentowanie możliwych sposobów ingerencji w systemy CAD/CAM
oraz przedstawia jedną z możliwości kastomizacji oprogramowania do komputerowego wspomagania prac
inżynierskich. Dzięki stworzonej aplikacji problem wymiany informacji oraz braku dostosowania tych systemów do
potrzeb konkretnego użytkownika, jak również możliwości odzyskania danych podczas dokonywania ponownej
instalacji systemu zostaje rozwiązany. Uzyskano zamierzone cele, stworzono aplikację wspomagającą
gospodarkę narzędziową dla systemu NX firmy Siemens pozwalającą na import, zarządzanie oraz eksport
parametrów narzędzi. Ułatwiono przepływ informacji pomiędzy użytkownikami, jak również stanowiskami pracy.
Stworzona baza stanowi innowacyjny element dla systemów CAD/CAM. Napisana jest w formie pozwalającej
na wykorzystanie jej w przemyśle.