Wątek przeniesiony 2022-10-21 10:52 z Edukacja przez cerrato.

Nauka programowania sterowników PLC

0

Witam,

Planuje naukę programowania sterowników plc. Myślę że prędzej czy później będę musiał posiadać taki sterownik w domu. Czy jest ktoś kto uczył się tego typu rzeczy i mógłby powiedzieć na jakim sterowniku oraz w jakim języku programowania sterowników ?? Wygląda na to że w przyszłości będę musiał ogarniać sterownik plc firmy omron.

1

Masz jakiekolwiek doświadczenie w programowaniu? Jesteś na forum 12 lat, więc podejrzewam, że tak - ale lepiej dopytać ;)
Ja bym proponował na początku zacząć od Arduino albo ESP32. Tam jest to o wiele łatwiejsze, masz C++ jako język, w którym piszesz. A jak nabierzesz wprawy to o wiele łatwiej będzie się przesiąść na "prawdziwe" PLC.

2

Pytanie, po co chcesz się tego uczyć i jakie PLC zamierzasz użyć w domu. No, chyba że budujesz linię produkcyjną w domu. Programowanie PLCków wygląda różnie u różnych dostawców. Jak nie chcesz sie bawić w automatykę przemysłową to chyba do niczego się ci to nie przyda.

2
S4t napisał(a):

Pytanie, po co chcesz się tego uczyć i jakie PLC zamierzasz użyć w domu. No, chyba że budujesz linię produkcyjną w domu. Programowanie PLCków wygląda różnie u różnych dostawców. Jak nie chcesz sie bawić w automatykę przemysłową to chyba do niczego się ci to nie przyda.

usm_auriga napisał(a):

będę musiał posiadać taki sterownik w domu.

Też jestem lekko zdziwiony. Że samorządy muszą sprzedawać węgiel, to wiem, ale że własnoręcznie programowane PLC w domu są obowiązkowe, to nie. Minęło mnie coś?

1

posiadać w domu nie do sterowania domem. Po prostu może się tym zajmuje.
Wracjąc do samego programownia nie pamiętam czy Omron ma jakieś DCS ja tylko coś robiłem na tych sterownikach gdzie były drabinki albo fbd. Prosta logika. Parę bloczków może być trudniejszych ale jest dokumentacja jak je skonfigurować.
Co innego systemy DCS jak simensowe PCS7 czy sppa3000. Tu więcej bloków coś tam robiących.
W kazdym razie programowanie PLC można szybko ogarnąć to głóœnie logika, nastawy regulatorów i specyfika zarzadzania pamięcią zalezna od producenta. Parę dni.
Gorzej z ogranięciem wszystkich interfejsów jakie może wykorzystywać czylo modbus, profinety itd. Ale tego człowiek uczy sie po prostu robiąć jakąś instalację. Ja bym się nie skupił na uczeniu programownaia plc które zazwyczaj szybko sie ogrania a raczej na nauce produktu.

1
cerrato napisał(a):

Masz jakiekolwiek doświadczenie w programowaniu? Jesteś na forum 12 lat, więc podejrzewam, że tak - ale lepiej dopytać ;)
Ja bym proponował na początku zacząć od Arduino albo ESP32. Tam jest to o wiele łatwiejsze, masz C++ jako język, w którym piszesz. A jak nabierzesz wprawy to o wiele łatwiej będzie się przesiąść na "prawdziwe" PLC.

Sorry za post bo to bardziej komentarz powinien być, ale obrazki mi sie nie zmieszczą.
@cerrato Wiele tych PLC zaprogramowałeś? Bo jak ja byłem na studiach to programowanie PLC to był bardziej Ladder, IL i ST niż C++.

Dla przykładu tak wygląda Ladder:
Ladder

IL to był taki pseudo Assembler, a ST to była wariacja Pascala (pewnie by ci się spodobał). Ale możliwe że coś się zmieniło przez te 10 lat od moich studiów. Chociaż jak z 5 lat temu gadałem ze znajomym to własnie zatrudnił sie do programowania w ST

usm_auriga napisał(a):

Czy jest ktoś kto uczył się tego typu rzeczy i mógłby powiedzieć na jakim sterowniku oraz w jakim języku programowania sterowników ??

Najpierw wybierz sterownik. Bo lista dostępnych języków zalezy od sterownika. No i oczywiście nie wszyscy producenci sterowników przestrzegają standardów Laddera, ILa czy ST i mają swoje wersję języków

1

Nie wiem, jak obecnie, ale kilka lat temu, popularny był sterownik Siemens S7-200 lub S7-300. Rozmawiałem z wykładowcą, który twierdzi, że na uczelni są sterowniki Siemens S7-200, a studenci niestacjonarni są w tym biegli dlatego, ze w pracy mają takie same lub podobne sterowniki. Programuje się logiką drabinkową.

2

PLC do klasycznego języka programowania ma się jak dupa do palca. To zupełnie inny zestaw założeń i logika pracy; o możliwościach nie wspominając. Nie ma znaczenia czy Fanuc, Siemens czy inny Horner.

PLC możesz programować pisząc kod (np STL) ale przeważnie używa się drabinki albo schematu blokowego (co z automatu daje czytelną dokumenatcję; co kto lubi). Czasem można korzystać dowolnie (Siemens), czasem producent narzuca jeden model programowania.

Jeśli chcesz od czegoś zacząć i nie wydać przy tym fortuny, to polecam na początek coś co pozwoli poznać podstawy ale przede wszystkim - ograniczenia - sterowniki firmy Array ;) Nie jest to reklama. Po prostu z podobnym pytaniem ktoś się do mnie kiedyś zwrócił, stąd znam te sterowniki. IMHO tak na początek są znacznie lepszym wyborem niż choćby Siemens (i N razy tańszym). Ale ostrzegam - są prymitywne.

0

@KamilAdam: Tak, wiem o co Ci chodzi. Ale ja bardziej podszedłem do tematu od strony praktyczniej/technicznej. W sensie - nie skupiać się na języku, ale na obsłudze peryferiów, odczycie danych z jakichś czujników, sterowaniu silnikami krokowymi, zrozumieniem PWM, reakcja na wciśnięcia fizycznych przycisków itp. Czyli - nie tyle sam język (bo to kwestia wtórna), co raczej spojrzenie bardziej całościowe. Ale rozumiem o co Ci chodzi, nie upieram się, że moja propozycja jest najlepsza ;) Po prostu - OP napisał, że musi się dopiero tego nauczyć, czyli raczej nie ma za wiele wspólnego z jakąkolwiek automatyką. Więc zaczynając od ESP może liznąć temat, a potem się przesiąść na coś większego/poważniejszego.

0

No tak, dzięki za porady, jeszcze moglibyście napisać skąd ten sterownik array wziąć bo w google wyświetlają się same omrony i siemensy.

1

Rozmawiałem z wykładowcą, który twierdzi, że na uczelni są sterowniki Siemens S7-200, a studenci niestacjonarni są w tym biegli dlatego, ze w pracy mają takie same lub podobne sterowniki. Programuje się logiką drabinkową.

to jest pirmaidalna bzdura na poziomie naszych agentów z uczelni. Po pierwsze s-200 już dawno jest na śmientiku histori. po drugie oni umieją przerzucac bloczki and i or(gdzie s-200 ma mocno zredukowane blockzi jak pamiętam) i na tym można zakończyć. Nikt na politechnikach nie uczy jak tworzyć poprwną dokumentacje automatyki bo wykładowca nie wie jak ma ona wyglądać. Ucża na starych sterownikach bo na nowe nie ma hajsu. Po prawdzie mieliśmy makiety z spiętymi sterownikami na studiach itd. ale nijak ma sie to do prawdziwych problemów.
Jak byłem projektantem/programista sytemów automatyki to przeleciałem od asm przez c podobne języki po FBD. ale najwazniejszy był i tak produkt.

usm_auriga napisał(a):

No tak, dzięki za porady, jeszcze moglibyście napisać skąd ten sterownik array wziąć bo w google wyświetlają się same omrony i siemensy.

a po co ci sterownik. weź se ściągnij soft siemensa czy schindlera tam sa symualtory steronwików.

0
revcorey napisał(a):

to jest pirmaidalna bzdura na poziomie naszych agentów z uczelni. Po pierwsze s-200 już dawno jest na śmientiku histori. po drugie oni umieją przerzucac bloczki and i or(gdzie s-200 ma mocno zredukowane blockzi jak pamiętam) i na tym można zakończyć.

Nie twierdzę, żeby zainteresować się tym konkretnym modelem, tym bardziej, że jest on przestarzały, ale rzuciłem coś, co było na uczelni. Oczywiście, że lepiej wziąć najnowszy model, taki, który jest szeroko wykorzystywany.

Ucża na starych sterownikach bo na nowe nie ma hajsu. Po prawdzie mieliśmy makiety z spiętymi sterownikami na studiach itd. ale nijak ma sie to do prawdziwych problemów.

Z drugiej strony, trochę bez sensu wyrzucać dobre sterowniki i kupować nowe tylko dlatego, że wyszedł nowszy model. Nowszy model ma więcej możliwości lub więcej zabezpieczeń, ale podstawy są chyba podobne. Na tych makietach to bardziej chodzi o zademonstrowanie, jak się programuje sterownik i jak wygląda sterowanie urządzeniami za jego pomocą.

0

Z drugiej strony, trochę bez sensu wyrzucać dobre sterowniki i kupować nowe tylko dlatego, że wyszedł nowszy model. Nowszy model ma więcej możliwości lub więcej zabezpieczeń, ale podstawy są chyba podobne. Na tych makietach to bardziej chodzi o zademonstrowanie, jak się programuje sterownik i jak wygląda sterowanie urządzeniami za jego pomocą.

To jest sprzęt który nie wychodzi raz w roku tylko co 10-20 lat(w przypadku serii siemensa one są dekadami ale s-200 porzucono dawno temu a s-300 też już spory kawałek temu ale je się jeszcze utrzymuje). S-200 to już nie ma w TIA Portal czyli coś co jest standardem.

Na tych makietach to bardziej chodzi o zademonstrowanie, jak się programuje sterownik i jak wygląda sterowanie urządzeniami za jego pomocą.

No właśnie jak się steruje? Klasycznie załącz wyłącz, po profibusie, po modbus itd. a makiety mają tylko część takich funkcji(na studiach spotkałem chyba pojedyncze makiety z profibus). Tak ładnie fajnie wyglądają ale wrzucić drabinkę małpa potrafi. Chodzi o algorytm. Jak miałem studentów pod sobą to uwierz mi chłopaki nie widzieli np. załaczenie młynu czy ruch zaworu turbiny na żywo tylko na scada bo musiałbyś tam fizycznie podejść co jest nie możliwe przy samym rozruchu na gorąco(chyba że w ruchu już coś obejrzeć).
Do dziś pamiętam naszych asów z pwr jak kazali napisać nam dokumentację techniczną nic nam nie mówiąc jak ma wyglądać(bo pewnie sami nie mieli pojęcia). Z resztą ja na polibudzie na sterownikach plc miałem 4-6 osób do stanowiska czy też na jednym przedmiocie z plc dziadka co dawał na kolokwium zadania rysowaliśmy na kartce papieru a on miał w zeszycie rozwiązanie jak coś było inaczej to 0 pkt.
Na studiach tylko na jednych zajęciach było fajnie bo po prostu pod PLC podpięto stare prace mgr. studentów co miały czujniki, silniki i symulowały proces ale nie lampkami a były pomniejszonym modelem. W ich oprogramowaniu nie chodziło o zobaczenie czy się silnik kręci ale rozkminienie procesu.
Jak prowadzący z polibudy opowiadają że ich uczniowie są biegli w X to pewnie w 95% tak nie jest. Tylko ci co już popracowali na studiach może.

0
revcorey napisał(a):

No właśnie jak się steruje? Klasycznie załącz wyłącz, po profibusie, po modbus itd. a makiety mają tylko część takich funkcji(na studiach spotkałem chyba pojedyncze makiety z profibus). Tak ładnie fajnie wyglądają ale wrzucić drabinkę małpa potrafi. Chodzi o algorytm.

Jeszcze wcześniej, na studiach o sterownikach PLC miałem może jedne czy dwa ćwiczenia, więc wiele nie pamiętam. Sterownik bezpośrednio włączał i wyłączał urządzenia. A sama "makieta" (o ile można to tak nazwać, bardziej chyba model), to były dwa pojemniki z wodą jeden nad drugim i były trzy elementy sterowany ze sterowników:

  1. Elektrozawór spuszczający wodę z górnego pojemnika do dolnego.
  2. Pompa pompująca wodę z dolnego pojemnika do górnego.
  3. Barometr na dnie górnego pojemnika, na podstawie ciśnienia wody można wnioskować o poziomie wody.

Dodatkowo był ręczny zawór powodujący osobny upływ wody z górnego pojemnika do dolnego.
Do tego wszystkiego był jeszcze wyświetlacz dotykowy ok. 15 cali z Windows CE lub Windows Embedded, nie pamiętam, jaki model. Sam sterownik to był Siemens, ale nie pamiętam czy S7-200 czy S7-300, czy jeszcze inny, na pewno Siemens, to było ponad 10 lat temu. Jednym z zadań było utworzenie programu, który utrzymuje stały poziom wody po spowodowaniu chwilowego upływu lub po dolaniu wody do górnego pojemnika. Poziom wody był odczytywany z barometru, gdzie określone ciśnienie (wyznaczone doświadczalnie) odpowiada potrzebnemu poziomowi. Tworzyło się osobny program na sam sterownik, ale też program do samego panelu dotykowego (wyświetlanie obrazków i kilka przycisków). Nie pamiętam, jak były połączone sterownik i panel.

0

@andrzejlisek:
są różne makiety i ja miałem makiety gotowe jaki takie gdzie wszystko było diodami led, taka walizka z nakładka z tworzywa sztucznego. O ile te modele na żywo to jeszcze jeszcze to te ledowe kompletnie można by zastąpić symulacją scada.
I wracamy też do początku wysterować wyjście to każdy głupi umie. Tu chodzi o proces, sterownik jak platformę(tia portal, pcs 7 itd.). I z doświadczenia ci powiem zawsze są jakieś problemy z komunikacją a tego nikt na polibudach prawie nie dotyka czasami jest makieta z profibusem albo prostym połączaniem po eth. na której nic się nie psuje, albo wykładowcy mogli by zrobić przykłady z problemami do rozwiązania. A tak? mamy specjalistów od stawiania bloków and i or z czego są dumni na polibudzie. Oczywiście to nie jest tak że zajęcia na polibudzie nic nie dają, dają ale to nie jest tak super jak panowie doktorzy chcą sprzedać.

0

Na początek polecam chiński Array. Można poskładać program z tzw. bloczków funkcyjnych i przeprowadzić symulację nie mając nawet rzeczywistego sterownika. Z prostych PLC z programowaniem drabinkowym to polecam Vigor. Nie wiem czy działa na Win od 7 wzwyż, ale lata temu go testowałem na XP. najwyżej posadź maszynę wirtualną z XP i tam testuj.
Jeżeli jednak planujesz na poważnie zająć się tematem sterowników PLC i ogólnie automatyki przemysłowej, to np. niższa półka izraelskiego Unitronics-a (bo Unitronics ma też wyższe), czyli Jazz lub M90. Szczególnie ten drugi wyhaczysz gdzieś na portalach aukcyjnych. Piszesz tutaj w także drabince, symulacji nie zrobisz, musisz mieć podłączony sterownik. Jak przejdziesz na wyższą półkę Unitronicsa (niestety cenowo też), to ogrom funkcji, gotowych modułów itp robi wrażenie. Podobny stopień możliwości prezentują sterowniki Delta Electronics.

1

Sprawdź koniecznie OpenPLC https://openplcproject.com/ . Masz tam edytor, w którym możesz tworzyć programy w językach wymienionych w normie IEC 61131-3 https://pl.wikipedia.org/wiki/IEC_61131-3.

Jak masz Arduinio, ESP32, RaspberryPi, etc. to możesz projekty stworzone w "OpenPLC Editor" na nie załadować i sterować wybranymi pinami. Do nauki w sam raz, płytki tanie ale piny nie tak oporne (bez optoizolacji) jak w prawdziwym PLC. Bez dodatkowych shieldów to strach podłączać coś poza diodami i przyciskami.

Projekt ma kanał na YouTube OpenPLC. Jest tam kilka filmów pozwalających zorientować się jak to działa.

0

Dzięki za porady.

1 użytkowników online, w tym zalogowanych: 0, gości: 1