Poniżej przedstawiam kilka, najciekawszych moim zdaniem, dodatków do oprogramowania e!COCKPIT, które znacząco mogą poprawić jakość i/lub skrócić czas pracy programisty.
e!COCKPIT MTP
Systemy modułowe stają się coraz bardziej powszechne w produkcji i inżynierii procesów. Zmienne ilości i wysoce wyspecjalizowane produkty wymagają wydajnej produkcji w małych ilościach. Systemy modułowe są również wykorzystywane w innych branżach (np. w przemyśle stoczniowym), gdzie prosta integracja z systemami wyższego poziomu jest kluczem do sukcesu.
Funkcjonować
Dodatek e!COCKPIT MTP rozszerza funkcjonalność e!COCKPIT i umożliwia stworzenie funkcjonalnego opisu automatyki modułu – Module Type Package (MTP) za pomocą jednego kliknięcia, zgodnie z normą VDI / VDE / NAMUR 2658 (przyjętą wspólnie przez Namur, ZVEI i VDMA).
W e!COCKPIT, niezależne od projektu, przygotowanie modułów MTP odbywa się za pomocą „Biblioteki WAGO MTP”. Programista definiuje interfejsy technologii informacyjnej (punkty PCT), tworzy logikę sterowania i ekrany wizualizacji procesu. Opis modułu można w łatwy sposób wyeksportować za pomocą dodatku e!COCKPIT MTP, pod warunkiem, że do stworzenia funkcjonalności modułu wykorzystano „Bibliotekę MTP”. W inżynierii systemowej opis ten jest ponownie wczytywany i na podstawie tej definicji generowane są odpowiadające mu struktury danych i ekrany wizualizacji procesu.
Zalety
- Prosta integracja modułów systemowych z systemami sterowania i wizualizacji
- Inżynieria oprogramowania modułu jest wykonywana tylko raz, a służy do wielokrotnego użytku
- Dynamiczna adaptacja bez większego wysiłku inżynieryjnego
- Jednolity wygląd – nawet z modułami różnych producentów -> Podłącz i produkuj
Licencjonowanie
Proste tworzenie MTP za naciśnięciem jednego kliknięcia wymaga korzystania z licencjonowanej biblioteki. Oprócz tego dodatku inżynierskiego konieczna jest licencja „WAGO Library MTP (2759-0208 / 0210-1000)” dla każdego sterownika PLC.
Działa tylko z serwerem 3S-OPC-UA.
e!COCKPIT UML
UML (Unified Modeling Language) to język graficzny służący do określania, projektowania i przygotowania dokumentacji oprogramowania zorientowanego obiektowo. Zdecydowanie ułatwia on proces ustalania funkcjonalności między programistami a innymi dyscyplinami związanymi z rozwojem systemu. Dodatek e!COCKPIT UML rozszerza oprogramowanie inżynierskie e!COCKPIT o dwa języki „Unified Modeling Language”: diagram klas i diagram stanów.
Zalety
- Lepsza czytelność kodu programu dzięki przejrzystym diagramom klas i stanów w ustandaryzowanej formie
- Zmniejszenie liczby błędów programowania dzięki generowaniu kodu programu na podstawie diagramów UML
- Łatwiejsze debugowanie poprzez dane online w diagramie stanu
Diagram klas:
Diagram klas należy do grupy diagramów struktur UML. Dzięki dodatkowemu edytorowi graficznemu można odwzorować lub zaprojektować obiektową strukturę projektów e!COCKPIT. Różne klasy obiektów (np. bloki funkcyjne lub interfejsy), w tym używane w nich zmienne i metody oraz ich relacje, są wyraźnie wyświetlane.
Istniejącą strukturę projektu można zaimportować bezpośrednio ze struktury urządzenia podczas tworzenia diagramu klas. Jednak strukturę projektu można również odbudować przy użyciu następujących dostępnych elementów klas i relacji:
- Klasa (POU) alternatywnie do FB
- Interfejs
- Deklaracja zmiennej
- Własność
- Metoda
- Uogólnienie
- Relacja realizacji
- Stowarzyszenia
- Składnie
Nowe obiekty w edytorze diagramów klas są automatycznie wstawiane do struktury urządzenia.
Diagram stanu
Należy on do grupy diagramów zachowania UML. Jest to język graficzny służący do określania i projektowania sekwencji elementów dyskretnych ze zdarzeniami. W przeciwieństwie do diagramu klas wykonywalny kod aplikacji jest generowany podczas kompilowania diagramu stanu.
Edytor diagramów stanów zawiera wybór elementów kroków i tranzycji (przejść):
- Stan początkowy
- Stan końcowy
- Stan pracy
- Stan złożony
- Łącznik / połączenie
- Wybór (selektory)
- Tranzycje
- Tranzycja końcowa
- Tranzycja warunkowa
Gdy aplikacja jest uruchomiona, diagram stanu jest przełączany zgodnie z cyklem zegara. Ponadto można zrealizować niezależnie wewnętrzne diagramy stanów połączone z diagramem głównym. W trybie online diagram stanu jest animowany, dzięki czemu w dowolnym momencie można śledzić aktualny stan procesu.
e!COCKPIT SVN
Zarządzanie kodem źródłowym i zmianami w projekcie.
Dodatek e!COCKPIT SVN zapewnia połączenie z serwerem wersjonowania oprogramowania Apache® Subversion® (SVN) . SVN to narzędzie do kontroli wersji aktualnych lub historycznych plików z kodem. System kontroli wersji śledzi i kontroluje zmiany w kodzie źródłowym programu i innych informacjach przechowywanych w plikach. Jest najczęściej używany w tworzeniu oprogramowania, gdy zespół pracuje nad tymi samym projektem. Dodatek bezproblemowo integruje się z oprogramowaniem inżynierskim e!COCKPIT.
Korzyści
- Rejestr zmian: zmiany można zawsze prześledzić
- Porównywanie różnych wersji
- Przywracanie starych wersji: przypadkowe zmiany w plikach można cofnąć w dowolnym momencie
- Archiwizacja określonej wersji: zawsze można przywrócić starszą wersję
- Możliwość pracy jednocześnie w kilku gałęziach projektu deweloperskiego
Funkcje SVN są zintegrowane bezpośrednio z e!COCKPIT. Dają możliwość rozszerzenia odpowiedniego menu i ikon, dzięki czemu bezpośrednio widoczne są następujące właściwości dokumentów:
- Obiekt został dodany
- Obiekt z konfliktem
- Obiekt został usunięty
- Obiekt został zmieniony
- Obiekt bez zmian
- Obiekt ma usunięte podobiekty
- Obiekt jest ignorowany podczas przesyłania
- Obiekt zewnętrzny
- Niewersjonowany obiekt
Funkcjonować
Następujące funkcje można wykonać za pośrednictwem e!COCKPIT:
- Import projektu do Subversion®
- Połączenie archiwum projektu z Subversion®
- Oddzielnie projekt od Subversion®
- Zdjęcie status rejestracji obiektu do edycji
- Przeniesienie
- Porównanie obiektów
- Porównanie z wersją HEAD
- Porównanie z rewizją
- Porównanie z projektem na serwerze
- Dodawanie
- Integracja plików zewnętrznych
- Ignorowanie
- Informacje o Subversion®
- Pokazanie właściwości
- Pokazanie logów
- Cofnięcie zmiany (do określonej wersji)
- Zaktualizowanie pliku (do określonej wersji)
- Scalenie zmiany
e!COCKPIT Static Analysis
Analiza kodu
Oprócz sprawdzania kompilatora, dodatek e!COCKPIT Static Analysis sprawdza kod źródłowy na podstawie zdefiniowanych reguł i konwencji nazewnictwa.
Ten dodatek wyświetla potencjalne problemy programistyczne, umożliwia wykrywane i eliminowane błędów, zanim aplikacja zostanie przetestowana na sterowniku. Rozpoznaje bardzo wiele typów błędów często popełnianych podczas pisania programu.
Zaimplementowano ponad 100 częściowo parametryzowalnych reguł, które można łączyć w indywidualne zestawy reguł. Funkcje dodatkowe są płynnie zintegrowane ze środowiskiem programistycznym e!COCKPIT.
Zalety
- Uniknięcie błędów podczas tworzenia programu
- Uniknięcie czasochłonnego rozwiązywania problemów podczas tworzenia aplikacji
- Pewność, że kod programu jest zgodny ze zdefiniowanymi regułami i jest łatwy do odczytania
Główne funkcje
- Możliwość jawnego sprawdzenia aplikacji za pomocą polecenia menu
- Alternatywnie: automatyczna weryfikacja podczas generowania kodu
- Możliwość kontroli programu i wskazania, które części kodu będą analizowane
Reguły i konwencje nazewnictwa
W ramach ustawień projektu e!COCKPIT można skonfigurować standardowy zestaw reguł programowania i konwencji nazewnictwa w wersji standardowej:
- Nieużywane zmienne
- Nakładające się obszary pamięci
- Jednoczesny dostęp
- Możliwość wielokrotnego zapisu na wyjściu
- Wielokrotne użycie nazwy
Wynik analizy
Jest on wyświetlany w oknie komunikatów. Każde naruszenie ma unikalny numer i może być jednoznacznie powiązane ze skonfigurowanymi regułami i konwencjami nazewnictwa.
Metryka
Do oceny jakości kodu można skonfigurować różne metryki, takie jak liczba linii kodu, zużycie pamięci lub ocena złożoności oprogramowania, a także górne i dolne granice, które mają być przestrzegane.
Wyniki zastosowanych metryk można wyświetlić w formie tabelarycznej i graficznej jako diagram Kiviata.
e!COCKPIT Profiler
Analiza zachowań w czasie wykonywania.
Dodatek e!COCKPIT Profiler umożliwia programistom i twórcom aplikacji pomiar i ocenę czasów przetwarzania i pokrycia kodu różnych bloków w aplikacji IEC 61131-3 na wczesnym etapie. Ten dodatek można bezproblemowo zintegrować z oprogramowaniem inżynieryjnym e!COCKPIT.
Pomiary mogą być wykonywane równolegle z tworzeniem aplikacji w standardowym środowisku programistycznym.
Zalety
- Wskazanie wielkości kodu maszynowego w każdym momencie tworzenia programu
- Wczesne wykrywanie problemów
- Identyfikacja czaso-krytycznych części programu i niewykorzystanych bloków programowych
- Ogólny i indywidualny pomiar wszystkich bloków aplikacyjnych
- Porównanie wydajność kodu na bazie pomiarów historycznych i bieżących
- Polepszenie jakości oprogramowania
Główne funkcje
- Niejawne rozszerzenie kodu binarnego podczas tłumaczenia, bez zmiany kodu programu projektu
- Pomiar dynamiczny za pomocą oprzyrządowania kodowego przy każdym wejściu i wyjściu funkcji
- Tylko podczas pomiaru: tymczasowe rozszerzenie kodu i wydłużenie czasu działania od 10 do 50%
- Rozpoczęcie pomiaru za pomocą zmiennej lub polecenia
- Przegląd wyników pomiarów w środowisku programistycznym
Opcje ustawień
- Wybierz zadanie do zmierzenia
- Wybierz podstawę jednostek (tik, milisekundy lub mikrosekundy)
- Określ rozmiar pamięci wymaganej do pomiaru
- Dostosuj sposób pomiaru (następny lub maksymalny cykl)
- Wybierz połączenia, które mają być mierzone z listy monitorowania
- Wybierz bloki programu do zmierzenia, aby określić pokrycie kodu
Szczegółowe wyniki
- Procent czasu wywołania POU
- Całkowity czas wywołania POU
- Średni czas wszystkich wywołań POU w jednym cyklu
- Minimalny i maksymalny czas przetwarzania w wielu cyklach
- Liczba wywołań POU
- Czas każdego wywołania
- Odchylenie standardowe średniego czasu wywołania
- Procent iterowanego kodu
Wyświetl wyniki jako
- Tablica zbiorcza
- Drzewo wywołań (zorientowane na czas lub proces)
- Tabele
- Lista
Po więcej informacji zapraszam do kontaktu bezpośredniego.
Paweł Grabowski
e-mail pawel.grabowski@wago.com
tel. +48 663 939 442