Sterowniki S7-1200 firmy Siemens stanowią niezwykle rozwijającą się rodzinę sterowników przemysłowych. To zasługa niskiej ceny, dużych możliwości oraz funkcjonalnego środowiska programistycznego TIA Portal. Coraz więcej początkujących programistów wybiera właśnie ten sterownik, aby poznać podstawy pracy z PLC.
Pewnym utrudnieniem na polskim rynku PLC jest brak literatury na temat podstaw programowania sterowników przemysłowych w języku wysokiego poziomu, czyli języku SCL. Jednak czytając polskie i zagraniczne fora zauważyłem, że pojawiają się często te same pytania o podstawy związane ze sterownikami PLC rodziny S7-1200. Pierwsze nieudane próby uruchomienia i testów bardzo często zniechęcają do dalszej pracy. Pamiętam moje pierwsze kroki związane z programowaniem PLC. Brakowało mi informacji, jak wykorzystać dostępny sprzęt w sterowniku. Czy Ty też chcesz odkrywać wszystko sam? Rozumiem, że nie A może chciałbyć poświęcić czas na poszerzanie zdobytej wiedzy i praktykę? Nich zgadnę….mówisz taaak…
Jeżeli zgadzamy się w odpowiedziach na te pytania, to w takim razie napisałem specjalnie dla Ciebie książkę
Podstawy programowania sterowników S7-1200 w języku SCL.
Jest to pierwsza książka na polskim rynku nie tylko omawia budowę i zasadę działanai sterownika przemysłowego, ale w kompleksowy sposób wprowadza czytelnika w świat programowania. Dużym atutem publikacji jest ponad 20 praktycznych projektów, które przedstawiają praktyczne wykorzystanie wiedzy zdobytej w pierwszych rozdziałach książki.
Po przeczytaniu tej publikacji nic już przed Tobą nie ukryje, jeżeli chodzi o sterownik S7-1200 firmy Siemens. Wtedy będziesz w 100% gotowy, aby samodzielnie pisać zaawansowane programy na sterowniki rodziny S7-1200.
Wiem o tym, że książka nie omawia najpopularniejszych obecnie na rynku języków programowania. Poniższy rysunek przedstawia badania.
Jak widzisz, największą popularnością cieszy się obecnie język drabinkowy LAD (jest to język graficzny). Następnie jest lista instrukcji (IL), czyli krótko mówiąc asembler. Bardzo podobny wynik procentowy mają bloki funkcyjne (FBD). Jest to również język graficzny. Można powiedzieć, że lista instrukcji (IL) oraz bloki funkcyjne (FBD) zajmują drugie miejsce. Na kolejnej pozycji jest język tekstu strukturalnego (ST) czyli w naszym przypadku SCL.
Jak widzisz, w czołówce są języki graficzne lub asembler. Wynika to z faktu, że były to jedne z pierwszych języków, w jakich można było programować sterowniki. Pozostało więc wielu osobom przyzwyczajenie.
Też kiedyś uważałem, że wszystko można szybko i łatwo zrobić języku LAD. Jednak, gdy używałem tylko i wyłącznie języka SCL to zrozumiałem, że byłem w dużym błędzie.
Dużą zaletą pisania kodu w języku wysokiego poziomu jest możliwość jego wersjonowania. Opis, jak to dokładnie działa i sposób wykorzystania tej funkcjonalności przedstawiony krok po kroku znajduje się w książce.
Języki graficzne nie są intuicyjne dla osób, które nie miały wcześniej styczności z automatyką. Pisanie kodu programu w asemblerze, to też duże wyzwanie. Nawet osobom znających się na automatyce napisanie już trochę bardziej skompikowanego kodu programu sprawia trudność oraz zabiera dużo czasu. Wówczas są zmuszeni wykorzystać język wysokiego poziomu, bo tam jest już łatwiej i znacznie szybciej. Czy w takim razie nie lepiej od razu nauczyć się dobrze języka, który zawsze można wykorzystać? Czy nie jest lepszym rozwiązaniem pisać od początku optymalny kod?
Co zawiera książka?
– architektura sterownika S7-1200
– tworzenie projektu i sposoby zarządzania nim
– techniki pisania efektywnego kodu
– opis wszystkich dostępnych narzędzi diagnostyki sterownika
– metody korzystania z różnych typów danych
– obsługa przerwań
– użycie timerów i liczników
– obsługa wbudowanego Web Serwera
– praca z symulatorem PLCSIM
– praktyczne przykłady zastosowań
Oprogramowanie TIA Portal i sterownik S7-1200 zostało rozłożone na łopatki. W tej książce jest wszystko, czego potrzebujesz.
Książkę możesz kupić sobie w księgarni lub na stronie wydawnictwo.btc.pl gdzie jest teraz promocja 10%.
Nie wiesz jeszcze, czy to jest dla Ciebie? Myślisz, że może to być za trudne? Nic z tych rzeczy. Najlepiej sprawdź to sam w praktyce, czy automatyka i sterowniki PLC przypadną Ci do gustu.
Na początek wystarczy Ci sama książka. Nie musisz kupować sprzętu, aby nauczyć się programowania sterowników PLC ponieważ 97% materiału zawartego możesz sprawdzić na symulatorze PLCSIM w środowisku TIA Portal V13 SP1. W książce znajdziesz opis, jak korzystać z symulatora.
Programowanie PLC jest prostrze niż myślisz!
Kurs wideo
Więcej na temat programowania w języku SCL znajdziesz w kursie Sterownik PLC w praktyce:
Czy język „STL” należy do rodziny języków „IL” czy może wraz z „SCL”należy do rodziny języków „ST”? Pytam bo nie został on wyróżniony w badaniu(wykresie) ani w całym artykule.
Z tego co zrozumiałem „IL” oraz „STL” sa językami przypominającymi assembler a „ST” i „SCL” bardziej przypominają języki wysokiego poziomu (pascal,C)
Sam miałem styczność głównie z językiem LAD i jestem zadowolony z jego użytkowania
Mimo wszytko chciałbym dalej się rozwijać i zastanawiam się nad nauką nowego języka.
Twój blog wzbudził moją ciekawość na temat „SCL” pytanie czy jest praktyczniejszy jakie są „za” i „przeciw” nauki tego języka.
Pozdrawiam
Filip, STL należy do rodziny języków „IL”, czyli przypominają asembler. Odnośnie „za” nauki programowania piszę na początku książki (zobacz Wstęp i Przedmowę).
Witam, Ja w tej książce nie widzę żadnych zaawansowanych algorytmów. Nie da się nauczyć nikogo programowania plc na zasadzie opisywania jak działa pętla FOR, WHILE itp.
A niestety jest to kolejna książka tego typu.
Chcecie dobrą książkę ? proszę „Automating with SIMATIC S7-300 inside TIA Portal”
Ale jest w języku angielskim i kosztuje znacznie więcej.
Poza tym jest bardzo dobry manual siemensa do SCL’a no i oczywiście klawisz F1.
Z drugiej strony.. nie ma się co czepiać autora… jak ktoś będzie chciał się nauczyć programować to się nauczy.
Pilnie śledzę ten blog.. właśnie ze względu na SCL’a i jakoś póki co widzę, że SCL jest super, hiper i w ogóle ale poza tym „NIC”.
Gdzie są zadania? i przykłady ich rozwiązań? Panowie… konkretne przykłady do wykorzystania!!!! A nie bicie piany.
Piotrek, podaj przykłady „zaawansowanych algorytmów”. Co masz na myśli?
Książka ma tytuł: „Podstawy programowania sterowników S7-1200 w języku SCL”. Założyłem, że nie każdy zna składnię języka SCL, więc jest opis pętli i innych instrukcji. Jeżeli Ty znasz pętle FOR i WHILE, to plus dLA cIEBIE.
Jednak od strony 248 do końca książki są już same konkretne przykłady (połączenie języka SCL i dostępnych możliwości sprzętowych sterownika S7-1200). Moim zdaniem opisałem wszystko, co można zrobić tylko i wyłącznie na CPU.
Piotrek, Twoim zdaniem zostało coś pominięte?
FUNCTION copyPIW : VOID
VERSION: ‚1.0’
AUTHOR: PDU
// Declaration
VAR_TEMP
indexIN : INT;
inputAddr : INT;
END_VAR
// Initialization
indexIN:=0;
inputAddr:=256;
FOR indexIN:= 0 TO 10 DO
dbPIW.DW[indexIN]:= PIW[inputAddr];
inputAddr:= inputAddr +1;
END_FOR;
END_FUNCTION
FUNCTION copyPQW : VOID
VERSION: ‚1.0’
AUTHOR: PDU
// Declaration
VAR_TEMP
indexOUT : INT;
outputAddr : INT;
END_VAR
// Initialization
indexOUT:=0;
outputAddr:=256;
FOR indexOUT:= 0 TO 10 DO
PQW[outputAddr]:= dbPQW.DW[indexOUT];
outputAddr:= outputAddr + 1;
END_FOR;
END_FUNCTION
//============== Create new data block for function =================
DATA_BLOCK DB100
VERSION: 1.0
AUTHOR: PDU
STRUCT
PIW : ARRAY [1..10] OF WORD;
END_STRUCT
BEGIN
END_DATA_BLOCK
DATA_BLOCK DB101
VERSION: 1.0
AUTHOR: PDU
STRUCT
PQW : ARRAY [1..10] OF WORD;
END_STRUCT
BEGIN
END_DATA_BLOCK
To jest jedna z możliwości kopiowania wejść/wyjść PIW / PQW ( peryferii ) do DB!
To jest konkretny przykład funkcji która najprawdopodobniej będzie potrzebna każdemu kto będzie chciał integrować jakaś maszynę/linię.
Gdyż jeśli wyjdziemy poza obszar obrazu procesu to co? to właśnie mamy 2 drogi albo skopiujemy sobie piw+pqw albo możemy poszerzyć obraz ale nie zawsze tak można zrobić.
I tego mi brakuje w polskiej literaturze.. nie to żebym Ci zarzucał, że ta książka to lipa! jak najbardziej nie ale w naszym kraju musi się coś zmienić bo inaczej…
Tak się składa, że akurat nie piszę kodu w tia tylko w step7 stl+scl w zasadzie scl się dopiero uczę stl zresztą też
Ok Piotrek, masz rację. Takie rozwiązanie może się przydać, gdy jest większa liczba wejść wyjść.
Jednak ta książka skupia się tylko na samym sterowniku PLC S7-1200 i podstawach jego programowania. Może napiszę drugą część książki, gdzie będą już przykłady bardziej zaawansowane.
Tomku, myślałeś może o forum? byłaby to super sprawa dla wymiany doświadczeń i wspólnego rozwiązywania problemów… w mojej okolicy nie ma zbyt wiele osób które zajmują się tą tematyką.
Wydaje mi się, że masz rację. Jeśli mówimy o samych podstawach i o kimś kto w ogóle nie liznął tego tematu to ok – mój błąd przepraszam.
Zapewne moje nastawienie spowodowane jest chęcią ciągłego rozwoju.
Jednak chwała Ci za to co robisz bo nie wielu ludzi w naszym kraju jest skłonnych przekazywać wiedzę nawet na uczelniach.
Powstaje co raz więcej publikacji oraz książek – myślę, że to dobra droga.
Jedno jest pewne, będę nadal pilnie śledził Twój blog i na pewno czerpał z niego informację i korzyści bo wiadomo, że nie jestem geniuszem wszech wiedzącym i wciąż się uczę.
Pozdrawiam.
Witam,
czy bedzie mozliwy zakup ksiazki w formie elektronicznej?
Na pewno bym z tego skozystal,
Pozdrawiam
Daniel, nie wiem, czy e-book jest już dostępny. Napisz do wydawnictwa btc.pl