TIA Scripting Python V18

Deep research by AI

Przykłady Zastosowania, Możliwości i Ograniczenia w Automatyce Przemysłowej

Wprowadzenie

TIA Scripting Python V18 stanowi narzędzie umożliwiające automatyzację zadań inżynierskich w środowisku TIA Portal firmy Siemens. Wykorzystując język programowania Python, inżynierowie automatycy mogą tworzyć skrypty usprawniające i przyspieszające proces projektowania, konfiguracji, testowania oraz zarządzania projektami automatyki. Niniejszy raport przedstawia szczegółową analizę przykładów zastosowania, możliwości oraz ograniczeń TIA Scripting Python V18, opierając się na oficjalnej dokumentacji Siemens oraz zaufanych źródłach wiedzy z zakresu automatyki przemysłowej.

Podstawowe Informacje o TIA Scripting Python V18

TIA Scripting Python V18 jest narzędziem ułatwiającym korzystanie z interfejsu programistycznego TIA Portal Openness.1 TIA Portal Openness to interfejs API (Application Programming Interface) oparty na platformie.NET Framework 4.8, który umożliwia programową interakcję z TIA Portal w celu automatyzacji różnorodnych zadań inżynierskich.4 Dzięki TIA Scripting Python, użytkownicy z podstawową znajomością języka Python mogą automatyzować powtarzalne czynności bez konieczności posiadania zaawansowanej wiedzy z zakresu programowania w języku C#.1

Do korzystania z TIA Scripting Python V18 wymagana jest instalacja TIA Portal w wersji V15.1 lub nowszej, a także środowisko Python w wersji 3.12.X wraz z preferowanym środowiskiem IDE (Integrated Development Environment).8 Instalacja TIA Scripting Python może odbywać się na dwa sposoby: poprzez import pliku skryptu po ustawieniu zmiennej środowiskowej TIA_SCRIPTING, lub jako pakiet Python instalowany za pomocą menedżera pakietów pip. Instalacja jako pakiet Python zapewnia dodatkowe korzyści, takie jak wsparcie dla funkcji Intellisense w środowiskach IDE.8

Przykłady Zastosowania TIA Scripting Python V18

TIA Scripting Python V18 znajduje szerokie zastosowanie w różnych obszarach inżynierii automatyki. Przykłady obejmują automatyzację tworzenia projektów, konfiguracji urządzeń, zarządzania tagami i blokami programowymi, testowania, generowania dokumentacji oraz integracji z innymi systemami.1

  • Automatyzacja Tworzenia Projektów: Skrypty Python mogą być wykorzystywane do generowania nowych projektów TIA Portal na podstawie zdefiniowanych szablonów lub danych pochodzących z zewnętrznych źródeł, takich jak arkusze kalkulacyjne Excela. Możliwe jest również automatyczne dodawanie urządzeń, takich jak sterowniki PLC i panele HMI, oraz konfigurowanie ich połączeń sieciowych. Przykład z repozytorium GitHub ilustruje możliwość programowego tworzenia urządzeń w sekcji „Devices & Network” projektu TIA Portal.9
  • Automatyzacja Konfiguracji Urządzeń: TIA Scripting Python umożliwia programowe ustawianie parametrów urządzeń, adresów IP oraz innych ustawień konfiguracyjnych. Na podstawie danych wejściowych skrypty mogą modyfikować konfigurację sprzętową projektu, dostosowując ją do specyficznych wymagań aplikacji.
  • Automatyzacja Zarządzania Tagami i Blokami Programowymi: Zarządzanie dużą liczbą tagów PLC i HMI może być czasochłonne i podatne na błędy. Skrypty Python pozwalają na tworzenie, modyfikowanie i usuwanie tagów w sposób zautomatyzowany. Możliwe jest również importowanie i eksportowanie tagów z/do plików CSV lub Excela, co ułatwia wymianę danych z innymi narzędziami. Przykład z platformy Reddit opisuje wykorzystanie Pythona do generowania bloków danych (DB) na podstawie danych z zewnętrznych plików źródłowych, co znacząco przyspiesza proces konfiguracji.10
  • Automatyzacja Testowania: TIA Scripting Python może być wykorzystywany do automatyzacji testów jednostkowych bloków programowych. Integracja z narzędziami do ciągłej integracji i testowania, takimi jak wspomniane w dokumentacji Siemens 6, umożliwia tworzenie zautomatyzowanych potoków testowych, zapewniających wysoką jakość oprogramowania sterującego.
  • Automatyzacja Generowania Dokumentacji: Tworzenie szczegółowej dokumentacji projektowej jest kluczowym elementem każdego projektu automatyki. Skrypty Python mogą automatycznie generować raporty i dokumentację na podstawie danych zgromadzonych w TIA Portal. Narzędzia takie jak TIA Portal Add-In Code2Docu, o którym mowa w dokumentacji 4, również wspierają ten aspekt.
  • Integracja z Innymi Systemami: TIA Scripting Python umożliwia wymianę danych z innymi systemami wykorzystywanymi w automatyce przemysłowej, takimi jak systemy SCADA, bazy danych czy systemy MES. Biblioteki Pythona pozwalają na komunikację poprzez standardowe protokoły, w tym OPC UA 11, Modbus 11 oraz Snap7.12 Przykład z serwisu YouTube demonstruje możliwość odczytu i zapisu wartości do pamięci markera sterownika PLC za pomocą skryptu Python.14 Inny przykład z platformy Reddit ilustruje użycie Pythona do automatyzacji zrzutów ekranu paneli HMI, co może być przydatne w procesie dokumentowania aplikacji wizualizacyjnych.15

Wykorzystanie skryptów Python do integracji TIA Portal z zewnętrznymi źródłami danych, takimi jak arkusze kalkulacyjne i bazy danych, wskazuje na rosnącą potrzebę efektywnego zarządzania danymi w projektach automatyki. Możliwość integracji z systemami SCADA i MES rozszerza zastosowanie skryptów Python poza samo środowisko TIA Portal, czyniąc je cennym narzędziem w szerszym ekosystemie automatyki przemysłowej. Niemniej jednak, w przypadku bezpośredniej komunikacji z urządzeniami sterującymi przy użyciu bibliotek takich jak Snap7, należy pamiętać o potencjalnych zagrożeniach bezpieczeństwa związanych z protokołami takimi jak PUT/GET.2

Możliwości Oferowane przez TIA Scripting Python V18

TIA Scripting Python V18 oferuje szereg możliwości, które czynią go atrakcyjnym narzędziem dla inżynierów automatyków.

  • Uproszczona Automatyzacja: Jedną z kluczowych zalet TIA Scripting Python jest możliwość automatyzacji zadań bez konieczności posiadania zaawansowanej wiedzy programistycznej. Użytkownicy mogą wykorzystywać proste komendy skryptowe, co pozwala uniknąć złożonego kodowania.1
  • Standardowy Język Python: Wykorzystanie języka Python jako standardowego języka programowania otwiera dostęp do bogatego ekosystemu bibliotek i narzędzi. Inżynierowie mogą korzystać z dowolnego standardowego edytora Pythona, co zwiększa elastyczność i komfort pracy.1
  • Konstrukcje Językowe i Biblioteki: TIA Scripting Python obsługuje podstawowe konstrukcje języka Python, takie jak instrukcje warunkowe (if) i pętle (for, while). Dodatkowo, istnieje możliwość rozszerzania funkcjonalności skryptów poprzez wykorzystanie dodatkowych bibliotek Pythona, co pozwala na realizację bardziej zaawansowanych zadań.1
  • Niezależność od Wersji TIA Portal: Istotną zaletą jest obsługa różnych wersji TIA Portal (od V15 do V20 i nowszych) za pomocą jednego skryptu. TIA Scripting Python automatycznie zarządza zależnościami między wersjami, co ułatwia utrzymanie i ponowne wykorzystanie skryptów w różnych projektach.1
  • Abstrakcja od Zmian w Openness API: Użytkownicy nie muszą martwić się zmianami w interfejsie TIA Portal Openness, ponieważ TIA Scripting Python zapewnia warstwę abstrakcji, która ukrywa te złożoności. Dzięki temu skrypty są bardziej odporne na aktualizacje oprogramowania.1
  • Krótkie i Zwięzłe Skrypty: Jedno polecenie w TIA Scripting Python może wywołać wiele akcji w tle, co pozwala na tworzenie krótkich i zwięzłych skryptów, łatwiejszych w utrzymaniu i zrozumieniu.1
  • Łatwe Udostępnianie i Wdrażanie: Skrypty Python mogą być łatwo udostępniane innym użytkownikom jako pliki.py lub jako samodzielne aplikacje wykonywalne, zbudowane na przykład za pomocą narzędzia pyInstaller.1

Podstawową siłą TIA Scripting Python jest jego przyjazność dla użytkownika oraz abstrakcja od złożoności interfejsu TIA Portal Openness API. To upraszcza automatyzację w środowisku TIA Portal, czyniąc ją dostępną dla szerszego grona inżynierów. Niezależność od wersji TIA Portal jest znaczącą zaletą, zmniejszającą obciążenie związane z utrzymaniem skryptów automatyzujących przy aktualizacji oprogramowania. Możliwość pakowania skryptów jako samodzielnych aplikacji ułatwia ich wdrażanie i udostępnianie, nawet użytkownikom bez skonfigurowanego środowiska programistycznego Python.

Ograniczenia TIA Scripting Python V18

Pomimo wielu zalet, TIA Scripting Python V18 posiada również pewne ograniczenia, które należy wziąć pod uwagę.

  • Zależność od TIA Portal Openness API: Funkcjonalność TIA Scripting Python jest ostatecznie ograniczona możliwościami oferowanymi przez bazowy interfejs TIA Portal Openness API. Jeśli dana funkcja nie jest dostępna w Openness API, prawdopodobnie nie będzie również dostępna w TIA Scripting Python.
  • Potencjalne Ograniczenia Wydajnościowe: Warstwa abstrakcji wprowadzona przez TIA Scripting Python może powodować pewne narzuty wydajnościowe w porównaniu do bezpośredniego korzystania z Openness API w języku C#. W przypadku bardzo złożonych i czasochłonnych operacji różnica w wydajności może być zauważalna.
  • Brak Szczegółowej Dokumentacji dla Niektórych Funkcji: Użytkownicy na forach internetowych sygnalizują brak szczegółowej dokumentacji dla niektórych aspektów Openness API w kontekście języka Python.16 W niektórych przypadkach konieczne może być korzystanie z narzędzia TIA Openness Explorer w celu zrozumienia działania pewnych funkcjonalności i ich implementacji w Pythonie.16
  • Ograniczenia w Dostępie do Niektórych Funkcjonalności TIA Portal: Nie wszystkie funkcje środowiska TIA Portal są w pełni dostępne poprzez Openness API, a co za tym idzie, również poprzez TIA Scripting Python. Przykładem mogą być zgłaszane problemy z uzyskaniem dostępu do portów sieciowych urządzeń 16, co może ograniczać możliwości automatyzacji zadań związanych z konfiguracją sieciową.
  • Złożoność Niektórych Zadań: Mimo uproszczeń wprowadzonych przez TIA Scripting Python, niektóre zaawansowane zadania automatyzacji mogą nadal wymagać tworzenia złożonych skryptów i dogłębnego zrozumienia struktury danych TIA Portal. W takich przypadkach podstawowa znajomość Pythona może okazać się niewystarczająca.
  • Zależność od Środowiska Python: Poprawne działanie skryptów TIA Scripting Python zależy od prawidłowej instalacji i konfiguracji środowiska Python na komputerze, na którym są uruchamiane. Problemy z konfiguracją środowiska mogą prowadzić do nieprawidłowego działania skryptów.

Chociaż TIA Scripting Python upraszcza automatyzację, dziedziczy ograniczenia bazowego interfejsu TIA Portal Openness API. Zakres możliwej automatyzacji jest zatem ostatecznie zdefiniowany przez możliwości tego API. Brak szczegółowej dokumentacji dla niektórych funkcji w Pythonie może wymagać od użytkowników odwoływania się do dokumentacji w języku C# i korzystania z narzędzi takich jak Openness Explorer, co może zwiększyć próg wejścia dla niektórych użytkowników. Zgłaszane trudności w dostępie do pewnych aspektów TIA Portal, takich jak porty sieciowe, sugerują, że nie wszystkie wewnętrzne struktury są w pełni udostępnione przez API, co może ograniczać zakres automatyzacji.

Testowanie Skryptów Python dla TIA Portal V18

Testowanie skryptów Python napisanych dla TIA Portal V18 jest kluczowym elementem zapewnienia ich poprawnego działania i niezawodności. Dostępnych jest kilka metod testowania.

  • Testowanie Interaktywne: Najprostszą metodą jest uruchamianie skryptów w środowisku TIA Portal i obserwowanie ich działania w czasie rzeczywistym. Użytkownicy mogą również korzystać ze standardowych narzędzi do debugowania języka Python dostępnych w preferowanych środowiskach IDE, co pozwala na śledzenie wykonania kodu i identyfikowanie potencjalnych błędów.
  • Wykorzystanie TIA Portal Openness API do Testowania: Interfejs TIA Portal Openness API może być wykorzystany do programowego dostępu do różnych obiektów i funkcji TIA Portal w celu weryfikacji poprawności działania skryptów. Możliwe jest na przykład sprawdzenie, czy po wykonaniu skryptu konfiguracja projektu została zmieniona zgodnie z oczekiwaniami.
  • Integracja z Jednostkowymi Frameworkami Testowymi Pythona: Popularne frameworki testowe języka Python, takie jak unittest czy pytest, mogą być wykorzystane do tworzenia zautomatyzowanych testów jednostkowych dla logiki skryptów. Pozwala to na systematyczne sprawdzanie poszczególnych części kodu i zapewnienie ich poprawnego działania.
  • Ciągła Integracja i Testowanie: Dokumentacja Siemens wspomina o narzędziach do ciągłej integracji z TIA Portal opartych na Openness API.6 Umożliwia to tworzenie zautomatyzowanych potoków (pipelines) do budowania i testowania projektów TIA Portal, w tym skryptów Python. Integracja z systemami CI/CD (Continuous Integration/Continuous Delivery) pozwala na automatyczne uruchamianie testów po każdej zmianie w kodzie, co przyczynia się do wczesnego wykrywania błędów.
  • Symulacja i Testowanie Offline: Środowisko TIA Portal oferuje zaawansowane możliwości symulacji sterowników PLC i paneli HMI.17 Skrypty Python mogą być testowane w tym wirtualnym środowisku bez konieczności łączenia się z fizycznym sprzętem. Pozwala to na bezpieczne testowanie różnych scenariuszy i identyfikowanie problemów przed wdrożeniem na rzeczywistej instalacji.
  • TIA Add-In Tester: Dla skryptów Python rozwijanych jako dodatki (Add-Ins) do TIA Portal, dostępne jest specjalne narzędzie TIA Add-In Tester 4, które ułatwia testowanie i debugowanie tych rozszerzeń w kontekście środowiska TIA Portal.

Dostępność zarówno interaktywnych, jak i zautomatyzowanych metod testowania tworzy dojrzałe środowisko programistyczne dla TIA Scripting Python. Możliwość integracji z frameworkami testowymi Pythona oraz narzędziami do ciągłej integracji pozwala na włączenie skryptów Python w nowoczesne procesy wytwarzania oprogramowania w automatyce przemysłowej. Co istotne, możliwość wykorzystania symulacji TIA Portal do testowania offline znacząco zwiększa efektywność procesu testowania i minimalizuje ryzyko błędów na etapie wdrożenia.

Automatyzacja Zadań w TIA Portal V18 przy Użyciu Python Scripting

TIA Scripting Python V18 umożliwia automatyzację szerokiego spektrum zadań w środowisku TIA Portal, obejmujących różne etapy cyklu życia projektu automatyki.

  • Automatyczne Generowanie Kodu: Skrypty Python mogą być wykorzystywane do automatycznego generowania bloków programowych, takich jak funkcje i bloki funkcyjne, na podstawie danych pochodzących z zewnętrznych źródeł lub zdefiniowanych szablonów. Przykład z platformy Reddit ilustruje możliwość generowania bloków programowych z plików źródłowych.10 Dostępne są również narzędzia do generowania kodu na podstawie danych z arkuszy kalkulacyjnych Excela.4
  • Automatyzacja Konfiguracji HMI: Konfiguracja interfejsu HMI (Human Machine Interface) obejmuje tworzenie i rozmieszczanie ekranów, obiektów graficznych oraz łączenie ich z tagami PLC. TIA Scripting Python może automatyzować te zadania, przyspieszając proces tworzenia aplikacji wizualizacyjnych. Przykład z platformy Reddit opisuje automatyzację tworzenia wskaźników na ekranach HMI za pomocą skryptu Python.15
  • Automatyzacja Zarządzania Bibliotekami: Zarządzanie bibliotekami projektowymi i globalnymi w TIA Portal jest kluczowe dla ponownego wykorzystania komponentów oprogramowania. TIA Scripting Python oferuje funkcje do tworzenia, aktualizowania i zarządzania tymi bibliotekami.8 Automatyzacja tego procesu zapewnia spójność i ułatwia utrzymanie projektów.
  • Automatyzacja Eksportu i Importu Danych: Skrypty Python umożliwiają automatyczny eksport konfiguracji projektu, tagów oraz bloków programowych do różnych formatów, takich jak XML czy CSV. Możliwe jest również automatyczne importowanie danych konfiguracyjnych z zewnętrznych plików, co ułatwia wymianę danych z innymi systemami i narzędziami.8
  • Automatyzacja Weryfikacji Projektów: Zapewnienie jakości kodu i zgodności ze standardami programowania jest niezwykle ważne. TIA Scripting Python może być wykorzystywany do automatycznego sprawdzania projektów pod kątem określonych reguł i wytycznych. Narzędzia takie jak Project Check for TIA Portal 4 wspierają ten aspekt.
  • Automatyzacja Aktualizacji Projektów: Aktualizacja projektów do nowszych wersji TIA Portal może być czasochłonna. TIA Scripting Python, w połączeniu z narzędziami takimi jak TIA Portal Project Upgrader 18, umożliwia automatyzację tego procesu, zapewniając dostęp do najnowszych funkcji i poprawek.
  • Automatyzacja Wdrażania: W końcowej fazie projektu, skrypty Python mogą być wykorzystane do automatycznego pobierania skonfigurowanego oprogramowania na sterowniki PLC i panele HMI, co przyspiesza proces uruchomienia systemu.

Możliwości automatyzacji oferowane przez TIA Scripting Python V18 obejmują cały cykl życia projektu automatyki, od jego tworzenia i konfiguracji, poprzez testowanie i dokumentację, aż po wdrożenie. Integracja z narzędziami do weryfikacji projektów podkreśla znaczenie automatyzacji w zapewnieniu jakości i zgodności z normami. Możliwość automatyzacji aktualizacji projektów znacząco zmniejsza nakład pracy związany z utrzymaniem i ewolucją systemów automatyki.

Integracja TIA Scripting Python V18 z Systemem Kontroli Wersji GIT

Integracja TIA Scripting Python V18 z systemem kontroli wersji GIT jest istotna dla efektywnego zarządzania kodem skryptów oraz całymi projektami TIA Portal.

  • Natywna Integracja: Z informacji dostępnych na forach wynika, że natywna integracja GIT z TIA Portal nie obejmuje bezpośrednio wszystkich typów plików projektu, zwłaszcza tych w formatach binarnych. Bezpośrednio zarządzane przez GIT mogą być pliki tekstowe, takie jak kod napisany w językach SCL (Structured Control Language) i STL (Statement List).19 Jednakże, TIA Portal posiada własny interfejs kontroli wersji (VCI – Version Control Interface).
  • Wykorzystanie Version Control Interface (VCI): VCI umożliwia integrację z systemami kontroli wersji, takimi jak GIT, poprzez specjalne wtyczki (Add-Ins).19 Dostępna jest na przykład wtyczka Git Connector dla TIA Portal w wersjach od V16 do V18, która pozwala na wykonywanie podstawowych operacji GIT (dodawanie, zatwierdzanie zmian, wysyłanie, pobieranie) bezpośrednio z poziomu TIA Portal.20 VCI automatycznie konwertuje bloki programowe do formatu XML, co ułatwia śledzenie zmian w systemie GIT.20
  • Zarządzanie Skryptami Python w GIT: Skrypty Python są plikami tekstowymi, co oznacza, że mogą być bezpośrednio zarządzane w repozytorium GIT. Możliwe jest utworzenie oddzielnego repozytorium GIT dedykowanego wyłącznie skryptom automatyzującym TIA Portal, co pozwala na wykorzystanie wszystkich standardowych funkcji GIT do zarządzania wersjami kodu, tworzenia gałęzi, scalania zmian itp.
  • Automatyzacja Commitów i Pushy: Wtyczka VCI Git Connector może być skonfigurowana do automatycznego zatwierdzania zmian (commit) i wysyłania ich (push) do zdalnego repozytorium GIT po każdej synchronizacji VCI.20 Automatyzacja tych operacji usprawnia przepływ pracy i zapewnia, że historia zmian w projekcie jest zawsze aktualna.
  • Porównywanie Zmian: Dla plików tekstowych, takich jak skrypty Python, GIT natywnie umożliwia porównywanie zmian (diff). W przypadku plików projektu TIA Portal, VCI i wtyczki GIT mogą oferować mechanizmy do porównywania zmian w ich reprezentacji XML. Dodatkowo, narzędzie Automation Compare Tool (ACT) firmy Siemens może być używane do wizualnej prezentacji zmian w projektach TIA Portal.
  • Przykłady Integracji z GIT: W serwisie GitHub dostępne są repozytoria zawierające przykłady skryptów TIA Openness napisanych w języku Python.7 Można tam również znaleźć wtyczkę VCI Git Connector 19, co świadczy o aktywności społeczności w zakresie integracji TIA Portal z systemem GIT.

Chociaż bezpośrednia integracja GIT dla wszystkich typów plików TIA Portal jest ograniczona, interfejs Version Control Interface (VCI) stanowi kluczowe rozwiązanie, umożliwiając konwersję elementów projektu do formatu XML, który może być zarządzany przez GIT. Dostępność dedykowanej wtyczki Git Connector znacząco upraszcza interakcję z repozytoriami GIT bezpośrednio z poziomu TIA Portal. Oddzielne zarządzanie skryptami Python w repozytorium GIT, obok projektu TIA Portal zarządzanego przez VCI, oferuje elastyczne podejście do kontroli wersji.

Podsumowanie i Rekomendacje

TIA Scripting Python V18 stanowi potężne narzędzie do automatyzacji zadań inżynierskich w środowisku TIA Portal. Umożliwia inżynierom automatykom tworzenie efektywnych skryptów w języku Python, co przyczynia się do zwiększenia wydajności i redukcji błędów w procesie projektowania i utrzymania systemów automatyki.

Podsumowanie Kluczowych Punktów:

  • TIA Scripting Python V18 upraszcza automatyzację w TIA Portal dzięki wykorzystaniu języka Python i zapewnia abstrakcję od złożoności TIA Portal Openness API.
  • Oferuje szerokie możliwości zastosowania, od automatyzacji tworzenia projektów i konfiguracji urządzeń, po zarządzanie tagami, testowanie i generowanie dokumentacji.
  • Posiada pewne ograniczenia, w tym zależność od Openness API i potencjalne kwestie wydajnościowe w porównaniu do bezpośredniego użycia C#.
  • Dostępne są różne metody testowania skryptów Python, w tym testowanie interaktywne, wykorzystanie Openness API, integracja z frameworkami testowymi i symulacja.
  • Integracja z systemem kontroli wersji GIT jest możliwa poprzez wykorzystanie Version Control Interface (VCI) i dedykowanych wtyczek, a także poprzez bezpośrednie zarządzanie plikami skryptów Python w repozytorium GIT.

Rekomendacje dla Użytkowników:

  • TIA Scripting Python V18 jest szczególnie przydatny do automatyzacji powtarzalnych i czasochłonnych zadań inżynierskich, co pozwala na oszczędność czasu i zwiększenie dokładności.
  • Najlepsze praktyki tworzenia skryptów obejmują modułową budowę kodu, stosowanie komentarzy i testowanie skryptów w różnych scenariuszach, w tym z wykorzystaniem symulacji TIA Portal.
  • Integracja z GIT powinna być rozważana w każdym projekcie, aby zapewnić kontrolę wersji kodu skryptów oraz całego projektu TIA Portal. Wykorzystanie VCI i wtyczki Git Connector ułatwia ten proces.
  • Dalsze kroki w nauce i wykorzystaniu TIA Scripting Python V18 obejmują zapoznanie się z dokumentacją Siemens, eksplorowanie przykładów kodu dostępnych online (np. na GitHub) oraz aktywne uczestnictwo w forach użytkowników.

Przyszłe Kierunki Rozwoju:

Potencjalne ulepszenia w TIA Scripting Python i integracji z GIT mogłyby obejmować rozszerzenie dostępu do większej liczby funkcjonalności TIA Portal poprzez Openness API, dalsze uproszczenie procesu integracji z systemami kontroli wersji oraz poprawę dokumentacji dla specyficznych funkcji Pythona. Możliwości rozszerzenia funkcjonalności istnieją również poprzez tworzenie własnych bibliotek i narzędzi opartych na TIA Scripting Python, dostosowanych do specyficznych potrzeb projektów automatyki.

Tabele Podsumowujące:

  1. Porównanie TIA Portal Openness i TIA Scripting Python
CechaTIA Portal Openness (C#)TIA Scripting Python
Wymagana wiedzaZaawansowana (C#)Podstawowa (Python)
Poziom złożonościWysokiŚredni
Łatwość użyciaMniejszaWiększa
Niezależność od wersjiOgraniczonaWysoka
Typowe zastosowaniaZaawansowana automatyzacja, tworzenie Add-InsProsta i średniozaawansowana automatyzacja
  1. Przykłady Zautomatyzowanych Zadań i Odpowiednie Funkcje TIA Scripting Python (na podstawie 8)
Zautomatyzowane ZadaniePrzykładowe Funkcje TIA Scripting Python
Tworzenie tagów PLCplc.create_tag(), plc.import_tags()
Importowanie bloków programowychplc.import_blocks()
Eksport konfiguracji projektuproject.export()
Pobieranie listy sterowników PLCproject.get_plcs()
Otwieranie projektu TIA Portalportal.open_project()
Kompilacja sprzętu i oprogramowaniaplc.compile()
  1. Porównanie Metod Integracji GIT z TIA Portal V18
Metoda IntegracjiPoziom IntegracjiŁatwość UżyciaMożliwości Porównywania Zmian
VCI z wtyczką Git ConnectorCzęściowa (konwersja do XML)WysokaDobre dla oprogramowania (XML), ograniczone dla konfiguracji sprzętu
Zarządzanie skryptami Python oddzielniePełna dla skryptów Python, brak dla reszty projektuŚredniaPełne dla skryptów Python, brak dla plików projektu TIA Portal

Cytowane prace

  1. Tool for easier use of the TIA Portal Openness interface (TIA …, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/cs/document/109742322/tool-for-easier-use-of-the-tia-portal-openness-interface-(tia-scripting-python)?dti=0&lc=en-au
  2. Tool for easier use of the TIA Portal Openness interface (TIA Scripting Python) – ID: 109742322 – Industry Support Siemens, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/cs/document/109742322/tool-for-easier-use-of-the-tia-portal-openness-interface-(tia-scripting-python)?lc=en-ar
  3. Tool for easier use of the TIA Portal Openness interface (TIA …, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/cs/document/109742322/tool-for-easier-use-of-the-tia-portal-openness-interface-(tia-scripting-python)?dti=0&lc=en-se
  4. TIA Portal Openness: Automation of engineering workflows – ID …, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/cs/document/109792902/tia-portal-openness-automation-of-engineering-workflows?lc=es-ec
  5. TIA Portal Openness: Automation of engineering workflows – ID: 109792902 – Support, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/cs/document/109792902/tia-portal-openness-automation-of-engineering-workflows?dti=0&lc=en-WW
  6. TIA Portal Openness: Automation of engineering workflows – ID …, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/cs/document/109792902/tia-portal-openness-automation-of-engineering-workflows?lc=fr-fr
  7. TIA Portal Openness: Automation of engineering workflows – Siemens Product Information, otwierano: kwietnia 10, 2025, https://www.industry-mobile-support.siemens-info.com/en/article/detail/109792902
  8. support.industry.siemens.com, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/cs/attachments/109742322/109742322_TIA_Scripting_Python_DOC_V107_en.pdf
  9. JL00001/TIA-Openness-From-Python – GitHub, otwierano: kwietnia 10, 2025, https://github.com/JL00001/TIA-Openness-From-Python
  10. TIA Portal v17: Python scripting and DB generation w/ „generate …, otwierano: kwietnia 10, 2025, https://www.reddit.com/r/PLC/comments/zm3yv9/tia_portal_v17_python_scripting_and_db_generation/
  11. How can I communicate between a Siemens S7-1200 and python? – Stack Overflow, otwierano: kwietnia 10, 2025, https://stackoverflow.com/questions/10355953/how-can-i-communicate-between-a-siemens-s7-1200-and-python
  12. Introduction to Snap7 & Integration Using Python and Siemens TIA …, otwierano: kwietnia 10, 2025, https://www.solisplc.com/tutorials/introduction-to-snap7-integration-into-siemens-tia-portal
  13. Python Snap7 S7 Communication with PUT/GET with Siemens PLC …, otwierano: kwietnia 10, 2025, https://www.reddit.com/r/PLC/comments/tb1ai8/python_snap7_s7_communication_with_putget_with/
  14. Python Snap7 S7 Siemens PLC TIA Portal Read/Write to Marker – YouTube, otwierano: kwietnia 10, 2025, https://m.youtube.com/watch?v=Eo8NyNE1bRY&pp=ygUUI3NpZW1lbnNwbGNkYXRhdHlwZXM%3D
  15. Python in PLC/Automation. : r/PLC – Reddit, otwierano: kwietnia 10, 2025, https://www.reddit.com/r/PLC/comments/1izgrt9/python_in_plcautomation/
  16. How to create Topology connection using Siemens TIA Openness & Python?, otwierano: kwietnia 10, 2025, https://stackoverflow.com/questions/76626075/how-to-create-topology-connection-using-siemens-tia-openness-python
  17. Simulating a Siemens PLC program using TIA Portal – YouTube, otwierano: kwietnia 10, 2025, https://www.youtube.com/watch?v=RltsQJPFqLQ
  18. TIA Portal – An Overview of the Most Important Documents and Links …, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/cs/document/109780282/tia-portal-an-overview-of-the-most-important-documents-and-links-visualization?dti=0&lc=en-US
  19. Version Control with TIA 18 and Git – 307310 – Industry Support …, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/forum/WW/en/posts/version-control-with-tia-18-and-git/307310
  20. An Introduction to TIA Portal’s Version Control Interface Using Git …, otwierano: kwietnia 10, 2025, https://www.solisplc.com/tutorials/an-introduction-to-tia-portals-version-control-interface-using-git-and-github
  21. Maroder1/TIA-openness: Basic example on how to use … – GitHub, otwierano: kwietnia 10, 2025, https://github.com/Maroder1/TIA-openness
  22. Openness with Python – 215117 – Industry Support Siemens, otwierano: kwietnia 10, 2025, https://support.industry.siemens.com/forum/WW/en/posts/openness-with-python/215117