
Programowanie sterowników PLC Beckhoff zaczyna się w jednym środowisku: TwinCAT 3. To w nim założysz projekt, skonfigurujesz sprzęt, napiszesz program i uruchomisz sterownik. W tym Quick Start Guide pokazujemy podstawy od zera: czym jest TwinCAT, na jakim IDE i w jakich wersjach Visual Studio działa, jak działa nowy TwinCAT Package Manager, jak założyć nowy projekt, dodać przykładowy napęd po EtherCAT i wystartować program.
Cały przebieg konfiguracji pokazujemy na nagraniu z naszego kanału. Pod spodem znajdziesz screeny z każdego kluczowego kroku w TwinCAT.
Czym jest TwinCAT 3 i ekosystem Beckhoff
TwinCAT 3 (The Windows Control and Automation Technology) to zintegrowane środowisko firmy Beckhoff, w którym programujesz sterowniki PLC, konfigurujesz sieci przemysłowe i uruchamiasz logikę sterowania. Beckhoff stawia na architekturę PC-based control, więc sterownik PLC Beckhoff to najczęściej Embedded PC z serii CX albo przemysłowy komputer IPC, a sama logika działa jako oprogramowanie czasu rzeczywistego na systemie Windows.
Ekosystem TwinCAT dzieli się na dwie warstwy:
- TwinCAT XAE (eXtended Automation Engineering): część inżynierska, czyli IDE, w którym piszesz projekt, program i konfigurację.
- TwinCAT XAR (eXtended Automation Runtime): środowisko uruchomieniowe na sterowniku, które wykonuje program w czasie rzeczywistym.
Taki podział oznacza, że na komputerze inżynierskim instalujesz XAE, a gotowy projekt wgrywasz na docelowy sterownik PLC Beckhoff z uruchomionym XAR.
Sterowniki Beckhoff: Embedded PC z serii CX
Sterownik PLC Beckhoff to najczęściej Embedded PC z serii CX, montowany na szynę DIN i uruchamiający runtime TwinCAT. Seria jest mocno skalowalna, od małych kontrolerów po wydajne jednostki z procesorami Intel, więc ten sam program przeniesiesz na sprzęt dobrany do wielkości aplikacji:
- CX7000: wejściowy mini-sterownik z procesorem Arm Cortex-M7 480 MHz i zintegrowanym I/O (8 wejść i 4 wyjścia multifunkcyjne); jako firmware używa TwinCAT/RTOS opartego na FreeRTOS.
- CX8xxx (np. CX8190): małe, kompaktowe kontrolery z interfejsami Ethernet i magistralami polowymi.
- CX9020: kompaktowy Embedded PC z procesorem Arm Cortex-A8 1 GHz, montowany na szynę DIN.
- CX5100 / CX5200: bezwentylatorowe jednostki z procesorami Intel Atom, w serii CX5200 z budową modułową.
- CX20xx: najwydajniejsze Embedded PC z procesorami Intel Core do najcięższych aplikacji.
Niezależnie od modelu programujesz je w tym samym środowisku TwinCAT, a I/O dokładasz przez magistralę EtherCAT (E-bus) lub Bus Terminal (K-bus). Dlatego raz nabyte podstawy programowania sterowników PLC Beckhoff działają na całej serii CX.
TwinCAT Package Manager, czyli nowy sposób instalacji
Wraz z linią TwinCAT 3.1 build 4026 Beckhoff wprowadził TwinCAT Package Manager (TcPkg). To menedżer pakietów, który działa podobnie do narzędzi znanych z innych ekosystemów (apt, winget, NuGet): zamiast jednego wielkiego instalatora pobierasz i instalujesz tylko te komponenty TwinCAT, których realnie potrzebujesz.
Co to zmienia w praktyce:
- Instalacja modułowa: wybierasz konkretne pakiety (XAE, XAR, biblioteki, funkcje technologiczne) zamiast monolitycznego setupu.
- Aktualizacje i wersjonowanie: pakiety aktualizujesz pojedynczo, a środowisko pilnuje zależności między nimi.
- Praca z GUI i linii poleceń: Package Manager ma interfejs graficzny oraz komendę
tcpkg, którą zautomatyzujesz instalację na wielu maszynach. - Własne i offline feedy: dla utrzymania ruchu produkcyjnego możesz korzystać z lokalnego źródła pakietów, niezależnego od internetu.
Starsza, stabilna linia TwinCAT 3.1 build 4024 nadal korzysta z klasycznego, monolitycznego instalatora. Jeśli dopiero zaczynasz programowanie sterowników PLC Beckhoff, sprawdź, która linia (4024 czy 4026) wspiera Twój sprzęt i z której korzysta Twój zespół. Pełną specyfikację obu linii znajdziesz w oficjalnej dokumentacji TwinCAT firmy Beckhoff.
Wersjonowanie runtime TwinCAT: dopasuj build do sterownika
Beckhoff rozwija TwinCAT w kolejnych buildach (np. 3.1.4024.x oraz 3.1.4026.x), a każdy sterownik PLC ma zainstalowaną konkretną wersję runtime, czyli TwinCAT XAR. Stąd prosta, ale kluczowa zasada: projekt tworzysz pod konkretny build TwinCAT i ten sam build musisz mieć aktywny w środowisku inżynierskim (XAE). Inaczej projekt może zostać podbity do nowszej wersji albo nie wgra się na docelowy sterownik.
- Projekt zapisuje swoją wersję TwinCAT: w pliku projektu zapamiętany jest build, którym był ostatnio edytowany. Opcją Pin Version (zakładka General węzła projektu TwinCAT) przypinasz projekt do dokładnie tej wersji, żeby przypadkiem go nie zaktualizować.
- Wybrany build musi być zainstalowany: aby otworzyć projekt w danej wersji, ten build musi być obecny na komputerze. W linii 4024 instalujesz go klasycznym setupem, w 4026 dokładasz odpowiedni pakiet przez TwinCAT Package Manager.
- Remote Manager trzyma wiele wersji obok siebie: TwinCAT XAE pozwala mieć kilka buildów naraz i przy otwieraniu przypiętego projektu sam ładuje właściwy. Jeśli przypiętej wersji nie ma, zaproponuje otwarcie najnowszą z tej samej linii.
- Zgodność z runtime sterownika: dobierz build XAE do wersji XAR na sterowniku (albo zaktualizuj runtime). Projekt zbudowany dużo nowszym buildem może nie być akceptowany przez starszy runtime na docelowym PLC.
W praktyce zanim zaczniesz programowanie sterownika PLC Beckhoff, sprawdź wersję runtime na sterowniku i ustaw oraz zainstaluj odpowiadający jej build TwinCAT w środowisku. To oszczędza godzin szukania, dlaczego projekt nie chce się wgrać.
Na jakim IDE działa środowisko Beckhoff? Wersje Visual Studio
Najważniejsza rzecz, która zaskakuje początkujących: TwinCAT XAE to nie osobny edytor, tylko nakładka, która integruje się z Microsoft Visual Studio. Beckhoff korzysta z silnika Visual Studio jako bazy IDE, dlatego środowisko wygląda znajomo każdemu, kto pracował z produktami Microsoftu.
Masz dwie drogi uruchomienia środowiska inżynierskiego Beckhoff:
- Pełny Visual Studio: jeśli masz zainstalowane Visual Studio, TwinCAT XAE doinstaluje się do niego jako rozszerzenie. Build 4024 integruje się z pełnymi wersjami Visual Studio od 2013 do 2019 (obsługa Visual Studio 2019 od build 4024.10), a nowsza linia 4026 dokłada Visual Studio 2022 obok wersji 2017 i 2019.
- TwinCAT XAE Shell: jeśli nie masz Visual Studio, Beckhoff dostarcza darmową, odchudzoną powłokę opartą na Visual Studio (TcXaeShell). W linii 4024 bazuje ona na Visual Studio 2017, a w 4026 dostępny jest wariant 64-bitowy oparty na Visual Studio 2022 (TcXaeShell64). Zawiera wszystko, co potrzebne do programowania PLC, bez licencji Microsoftu.
W build 4026 integrację z konkretną wersją Visual Studio lub XAE Shell możesz też zmienić później, bez ponownej instalacji TwinCAT. Macierz kompatybilności bywa aktualizowana, dlatego przed instalacją warto zajrzeć do oficjalnej dokumentacji Beckhoff i dobrać wersję IDE do posiadanej linii TwinCAT.
Wymagania systemowe TwinCAT 3
Zanim zainstalujesz środowisko, sprawdź wymagania. Beckhoff dzieli je na część inżynierską (XAE), którą stawiasz na komputerze programisty, oraz runtime (XAR), który działa na docelowym sterowniku.
XAE (środowisko inżynierskie):
- System: Windows 10 lub Windows 11 (TcXaeShell64 wymaga min. Windows 10 20H2).
- Procesor: 1,8 GHz lub szybszy, zalecany dwurdzeniowy lub lepszy.
- RAM: min. 4 GB, a dla 64-bitowego TcXaeShell64 zalecane 16 GB.
- Dysk: ok. 10 GB wolnego miejsca, jeśli nie masz jeszcze zainstalowanego Visual Studio.
- Rozdzielczość ekranu: min. 720p (1280 x 720).
XAR (runtime na sterowniku):
- System: Windows 10 (w tym LTSB/LTSC) lub Windows 11. Windows 11 wspierany od build 4024.68 oraz 4026.16.
- Dysk: min. 2 GB; ilość RAM zależy od aktywowanej konfiguracji.
Różnice między liniami widać też w obsługiwanych platformach runtime. Build 4024 i starsze wspierają m.in. Windows Embedded Standard 7 (WES7) oraz Windows Embedded Compact 7 (WEC7). Build 4026 dokłada wsparcie dla TwinCAT/BSD oraz Beckhoff RT Linux, a także tryb XarMode dla środowisk bez twardego czasu rzeczywistego (np. Hyper-V).
Jak pobrać TwinCAT 3 i czy jest darmowy
Dobra wiadomość dla uczących się: rdzeń TwinCAT 3 Engineering, czyli programowanie PLC, jest bezpłatny pod względem licencji i możesz go zainstalować na dowolnej liczbie komputerów. Pliki instalacyjne pobierzesz z oficjalnej strony Beckhoff (download finder), zwykle po założeniu konta.
- Pobierz TwinCAT 3 (XAE oraz XAR) ze strony Beckhoff; w linii 4026 komponenty instalujesz przez TwinCAT Package Manager.
- Samo programowanie i symulacja lokalna są darmowe; do uruchomienia runtime wygenerujesz w XAE 7-dniową licencję próbną, którą możesz odnawiać dowolną liczbę razy.
- Dzięki temu naukę programowania sterowników PLC Beckhoff zaczniesz bez kupowania sprzętu i licencji, na samym komputerze.
Licencjonowanie TwinCAT 3
Warto od początku rozumieć model licencji, żeby nie zaskoczył Cię on przy wdrożeniu. TwinCAT 3 dzieli się na bezpłatny engineering i płatny runtime:
- Engineering (XAE): bezpłatny, na dowolnej liczbie stanowisk programistycznych.
- Runtime (XAR) i funkcje rozszerzone: licencje TCxxxx/TFxxxx oraz narzędzia TExxxx są płatne i wymagane do pracy produkcyjnej.
- Licencja próbna: 7-dniowa, generowana w XAE, możliwa do odnawiania wielokrotnie, idealna do nauki i testów.
- Sposoby licencjonowania: aktywacja związana z danym komputerem IPC albo klucz sprzętowy (dongle) jako terminal EtherCAT (np. EL6070) lub klucz USB (np. C9900-L100). Dongle jest niezależny od konkretnego IPC, więc łatwo przeniesiesz licencję na inny komputer.
Języki programowania sterowników Beckhoff
TwinCAT 3 w pełni wspiera standard IEC 61131-3, więc sterowniki PLC Beckhoff zaprogramujesz w językach, które znasz z innych marek:
- ST (Structured Text), najczęściej wybierany do złożonej logiki.
- LD (Ladder Diagram), czyli klasyczna drabinka.
- FBD (Function Block Diagram) oraz CFC dla logiki blokowej.
- SFC (Sequential Function Chart) do maszyn stanów i sekwencji.
Dodatkowo TwinCAT rozszerza standard o programowanie obiektowe (klasy, metody, interfejsy), a w wariantach C++ oraz integracji z MATLAB/Simulink pozwala pisać moduły czasu rzeczywistego poza klasycznym PLC. Dla quick startu w zupełności wystarczy IEC 61131-3.
Zakładanie nowego projektu w TwinCAT
Konfigurację zaczynamy w środowisku TwinCAT, z utworzonym pustym projektem. W panelu System Manager od razu widać wersję środowiska oraz przycisk wyboru celu (Choose Target).

Aby programować sterownik PLC Beckhoff, najpierw trzeba się z nim połączyć. Krok po kroku:
- Nadaj sterownikowi adres IP i upewnij się, że Twoja karta sieciowa jest w tej samej podsieci (w nagraniu sterownik ma adres 192.168.0.22).
- W oknie wyboru celu kliknij Enter Host Name i pozwól TwinCAT wykryć sterownik w sieci.
- Dodaj trasę (route) do sterownika i podaj dane logowania. Domyślny użytkownik to
Administrator, a hasło to1. - Po zatwierdzeniu trasa jest aktywna, a TwinCAT pokazuje połączenie ze sterownikiem w trybie Run.

Dodanie przykładowego napędu po EtherCAT
Sterowniki Beckhoff bardzo dobrze czują się w sieci EtherCAT, więc jako przykładowe urządzenie dołożymy napęd (w nagraniu jest to falownik z rodziny i550, ale procedura jest taka sama dla dowolnego urządzenia EtherCAT). Pełną integrację falownika Lenze i550 po EtherCAT z PLC Beckhoff pokazujemy w osobnym wpisie: Integracja falownika Lenze i550 z PLC Beckhoff po EtherCAT.
- W zakładce Devices wybierz Add New Item i dodaj EtherCAT Master. Nazwę możesz zmienić na czytelną, np. Master EtherCAT 1.
- W zakładce Adapter przypisz interfejs sieciowy, do którego fizycznie podłączasz urządzenia EtherCAT.

- Wgraj konfigurację do sterownika i przejdź w tryb konfiguracji (Config Mode), klikając ikonę fioletowej zębatki.
- Kliknij prawym przyciskiem i wybierz Scan, aby TwinCAT przeszukał sieć i wykrył podłączone urządzenia.

Jeśli urządzenie nie zostanie poprawnie rozpoznane, brakuje w bibliotece pliku opisu ESI (EtherCAT Slave Information). Pliki ESI wgrywasz do katalogu instalacyjnego TwinCAT, w lokalizacji TwinCAT\3.1\Config\Io\EtherCAT, a następnie odświeżasz bibliotekę przez EtherCAT Devices, Reload Device Descriptions. Po ponownym skanie urządzenie jest już rozpoznane jako poprawny Box z domyślnym telegramem procesowym.

Pierwszy program i start sterownika
Mamy sprzęt, czas na program. W projekcie PLC importujemy biblioteki obsługujące urządzenie (w przykładzie biblioteki producenta napędu), korzystając z opcji Import from ZIP. Po imporcie do projektu trafiają typy danych, zmienne globalne i bloki funkcyjne.

Zanim program się skompiluje, dołóż jeszcze potrzebne biblioteki systemowe w zakładce References (w przykładzie Tc2_EtherCAT), a następnie zbuduj projekt poleceniem Build. Gdy zmienne strukturalne PLC są podlinkowane do telegramu EtherCAT, możemy zalogować się do sterownika i podejrzeć program online.

Program jest wgrany, ale jeszcze nie pracuje. Wybierz Start, aby uruchomić sterownik w trybie Run. Po starcie pojawiają się statusy obsługi napędu (Communication OK, Drive Ready), a z poziomu bloku funkcyjnego możesz zadać prędkość i wysłać polecenie do urządzenia.

To jest pełny mini cykl programowania sterownika PLC Beckhoff: projekt, sprzęt, program, start. Resztę, czyli parametry aplikacyjne i logikę technologiczną, dokładasz już na tym fundamencie.
Najczęstsze problemy na start
- Brak połączenia ze sterownikiem: sprawdź, czy karta sieciowa komputera jest w tej samej podsieci co sterownik i czy trasa (route) jest aktywna.
- Urządzenie EtherCAT nierozpoznane po skanie: brakuje pliku ESI. Wgraj go do
TwinCAT\3.1\Config\Io\EtherCATi zrób Reload Device Descriptions. - Błędy kompilacji bibliotek: dodaj brakującą bibliotekę w References (np.
Tc2_EtherCAT) i przebuduj projekt. - Napęd zgłasza błąd mimo konfiguracji: najczęściej brak cyklicznej wymiany danych. Sprawdź zmapowanie zmiennych procesowych do telegramu i ponownie przeładuj konfigurację.
- Zła wersja IDE: jeśli TwinCAT nie integruje się z Visual Studio, zweryfikuj zgodność wersji albo użyj TwinCAT XAE Shell.
Najczęstsze pytania (FAQ)
Czy do programowania sterowników PLC Beckhoff potrzebuję płatnego Visual Studio?
Nie. Jeśli nie masz licencji Visual Studio, Beckhoff udostępnia darmowy TwinCAT XAE Shell, który zawiera komplet narzędzi do programowania PLC.
Czym różni się TwinCAT build 4024 od 4026?
Build 4024 to klasyczny, monolityczny instalator. Build 4026 wprowadza modułową instalację przez TwinCAT Package Manager i obsługę nowszych wersji Visual Studio.
W jakim języku najlepiej zacząć programowanie w TwinCAT?
Dla podstaw świetnie sprawdza się Structured Text (ST). Jest czytelny, uniwersalny i pozwala szybko przejść do bardziej złożonej logiki sterowania.
Czy TwinCAT działa tylko z EtherCAT?
Nie. EtherCAT jest naturalnym wyborem dla Beckhoff, ale TwinCAT obsługuje także inne protokoły, m.in. PROFINET, Modbus TCP, EtherNet/IP czy OPC UA.
Podsumowanie
Programowanie sterowników PLC Beckhoff sprowadza się do jednego środowiska TwinCAT 3, które łączy w sobie konfigurację sprzętu, sieci EtherCAT i kod PLC. Gdy raz przejdziesz ścieżkę: nowy projekt, połączenie ze sterownikiem, dodanie urządzenia, pierwszy program i start, kolejne aplikacje budujesz już znacznie szybciej. Najwięcej czasu na początku zajmują detale otoczenia: właściwa wersja IDE i Visual Studio oraz instalacja komponentów przez TwinCAT Package Manager.
Jeśli chcesz iść dalej i opanować komunikację w automatyce (Modbus, Profinet, OPC UA, MQTT), sprawdź nasz Kurs komunikacji i przetwarzania danych w automatyce.









