Funkcje w programie PLC

cegiełki programowe

Dotychczas cały program tworzyliśmy w jednym miejscu, czyli wewnątrz bloku programu głównego – OB1. Jednak pisanie tak dużego programu z wieloma networkami, na przykład 1236 networków, staje się trudne do analizy.

Post powstał przy współpracy z firmą Stevia Automation Sp. z o. o.

Odrobina historii

Już w 1843 roku Ada Lovelace zauważyła tę trudność podczas tłumaczenia opisu działania mechanicznej maszyny analitycznej Charlesa Babbage’a, która ostatecznie nigdy nie została zbudowana. Ada Lovelace jest uważana za pierwszą programistkę w historii. W swoich „Uwagach” do tłumaczenia, które były dłuższe od oryginalnego tekstu, poruszyła kwestie pętli programowych i pamięci pośrednich.

Warto podkreślić, że rok 1843 przypada ponad 100 lat przed premierą ENIAC-a (od ang. Electronic Numerical Integrator And Computer – Elektroniczny, Numeryczny Integrator i Komputer), uznawanego przez wielu za pierwszy komputer elektroniczny w historii. ENIAC został uruchomiony w 1945 roku na Uniwersytecie w Pensylwanii.

Dlaczego warto dzielić program na podprogramy?

Dzielenie programu na osobne funkcje ma wiele zalet i jest jednym z kluczowych aspektów dobrej praktyki programistycznej. Oto kilka powodów, dla których warto to robić:

1. Pierwszy i najważniejszy – Czytelność kodu: Funkcje pomagają strukturyzować kod i czynią go bardziej czytelnym. Każda funkcja ma określone zadanie, co ułatwia zrozumienie, co konkretny fragment kodu robi.

2. Ponowne użycie kodu: Funkcje są sposobem na ponowne użycie kodu. Jeśli pewna sekwencja instrukcji jest używana w wielu miejscach w programie, warto utworzyć funkcję, która wykonuje te instrukcje, a następnie wywoływać tę funkcję zamiast powtarzać ten sam kod. Jednak w tym celu należy poznać interface funkcji.

3. Debugowanie i testowanie: Dzielenie programu na funkcje ułatwia znalezienie i naprawienie błędów, ponieważ można testować poszczególne funkcje niezależnie od reszty programu.

4. Modularyzacja: Funkcje umożliwiają tworzenie modułów kodu zamieszczanych w bibliotekach, które można łatwo dzielić i integrować z innymi częściami programu. Modularyzacja jest kluczowa dla tworzenia skalowalnych, wielofunkcyjnych systemów.

5. Przestrzeń nazw: Funkcje zapewniają własne przestrzenie nazw zmiennych lokalnych, co oznacza, że zmienne zdefiniowane wewnątrz funkcji nie kolidują ze zmiennymi o tej samej nazwie zdefiniowanymi poza funkcją. Jednak w tym celu także należy poznać jeszcze interface funkcji.

6. Abstrakcja: Funkcje pozwalają na abstrakcję skomplikowanych operacji, co ułatwia zrozumienie kodu. Zamiast skupiać się na szczegółach (poszczególnych networkach), jak coś jest robione, programista może skupić się na tym, co jest robione (co wynika choćby z nazw funkcji i komentarzy).

Podsumowując, dzielenie kodu na funkcje czyni go bardziej zorganizowanym, łatwiejszym do zrozumienia, testowania i utrzymania, a także umożliwia ponowne użycie kodu. Jest to jedna z podstawowych technik stosowanych we współczesnym programowaniu.

Jak utworzyć i wykorzystać funkcję

W celu dodania nowej funkcji do programu należy w folderze „Program blocks” dwukrotnie kliknąć na pozycję „Add new block”, a następnie w nowym oknie określić typ funkcji, przypisać dla niej nazwę symboliczną oraz numer (automatyczny – kolejny wolny- , lub ręcznie – dowolny).

Podczas tego szkolenia, będziemy korzystać z podprogramów nazywanych „Function” (zielona ikonka „Fc”), na razie programować w języku LAD, pierwsza funkcje nazwiemy „Siłownik A”.

Wywołania funkcji

WYWOŁANIE BEZWARUNKOWE – Bezpośrednie przeciągnięcie funkcji z folderu „Program blocks” na pusty network nazywamy wywołaniem bezwarunkowym, to oznacza, że dana funkcja będzie wywołana ZAWSZE, tym samym jej zawartość zostanie wykonana zawsze. Rekomendowane wywołanie (jeśli możliwe).

WYWOŁANIE WARUNKOWE – Jeżeli jednak przed funkcją na networku zamieścimy styk
 (w przykładzie poniżej przycisk ON) to zawartość funkcji będzie działać tylko wtedy i tak długo jak długo przytrzymuję przycisk ON. W Innym razie jej zawartość pozostanie w stanie niezmiennym, aż do ponownego wywołania (aktywacji ON).

UWAGA NA ZAMRAŻANIE STANU !!!

Zanik warunku wywołującego funkcję nie resetuje zmiennych przez tą funkcję wysterowanych.

Jeżeli wywołujesz funkcję warunkowo za pomocą przycisku ON, a w pewnym momencie puścisz ten przycisk, wszystkie zmienne wewnątrz tej funkcji pozostaną w swoim aktualnym stanie. Oznacza to, że jeśli w momencie puszczenia przycisku ON lampka była wysterowana wewnątrz funkcji, to niezależnie od tego, co się dzieje w reszcie programu, lampka pozostanie włączona aż do momentu ponownego wywołania funkcji i ewentualnego jej wyłączenia. Innym sposobem na zresetowanie zawartości funkcji jest zmiana trybu pracy sterownika z RUN na STOP, a następnie ponowne przejście w tryb RUN.

WAŻNE ABYŚ O TYM PAMIĘTAŁ !!!
Jeżeli nie wywołasz funkcji w OB1 (lub innym OB albo w funkcji wywołanej w OB itp) to sterownik nigdy jej nie wykona!!!

KONIEC LEKCJI

Powrót do spisu treści szkolenia dla uczniów techników i studentów

Podręcznik dla tego szkolenia dostępny TU -> 5xP PLC 1200

Zobacz więcej
Fundacja CALM edu

Fundacja CALM edu dzieli się swoją wiedzą w całkowicie darmowy sposób i jest finansowana z środków prywatnych jej założyciela. Jeżeli jednak chcesz dołożyć swoją cegiełkę do rozwoju naszej fundacji i pomóc nam w przygotowaniu kolejnych darmowych ogólnodostępnych materiałów skorzystaj z komercyjnych szkoleń firmy CALM group, z których pośrednio przychód pozwala pokryć fundacyjne wydatki lub przekaż nam darowiznę na platformie Patronite (wkrótce)

Jeżeli jesteś przedstawicielem szkoły zainteresowanym przygotowaniem swoich nauczycieli do wyzwań edukacji 4.0 lub uczniów do egzaminów zawodowych, pójściem na studia czy przyszłą pracą z wykorzystaniem nowoczesnych technologi to zapraszamy do kontaktu. Lista komercyjnych szkoleń dostępna pod tym linkiem.

Na tej stronie dowiesz się wszystkiego na temat naszych działań.

Podoba Ci się to co robimy i chciałbyś dołączyć do zespołu aby dzielić się swoja widzą i doświadczeniami ? Skontaktuj się z nami !!!

Dziękujemy za głos! Ocena wpisu - 5/5 - (1)
Poprzedni Następny

Jest tego więcej...


					#Chemia Szkoła 4.0

#Chemia

Wprowadzenie - Przedmiot chemia

Jeszcze uzupełniamy treści – wróć tutaj jutro.


					Historia robotów cz. 3 CoBots Artykuły

Historia robotów cz. 3 CoBots

przyszłość - roboty współpracujące

zobacz też: historia robotów cz.2 – pierwsze manipulatory W trzeciej części (czyli w tym poście, ponieważ artykuł podzieliłem na kilka postów aby nie przerażać rozmiarem, link do wcześniejszej części zamieściłem powyżej) skupię się na ostatnich, nowatorskich dokonaniach branży przemysłowej, mam tu na myśli roboty współpracujące (CoBots, Collaborative Robots) czyli manipulatorów najnowszej generacji będących integralna częścią […]


					Historia maszyny parowej Artykuły

Historia maszyny parowej

i ewolucja zasady działania

Po kilku bardzo „ciemnych” wiekach w Europie – zwanych dziś średniowieczem – świat wcale nie stał w miejscu. Rozwijał się wtedy dynamicznie na Wschodzie, zarówno tym bliższym, jak i dalszym. W Europie natomiast ogromną część energii kierowano ku religii: wysławianiu Boga, budowaniu ku jego chwale monumentalnych świątyń (co dla architektury i budownictwa wcale nie było […]


					CALM talks Nasze projekty

CALM talks

Porozmawiajmy o edukacji

Jeżeli trafiłeś na tą stronę to pewnie już wiesz o co chodzi w tym projekcie i możesz od razu wypełnić ankietę klikając w link zamieszczony w poniższym box-ie. Jeśli jednak nie do końca wiesz o co chodzi w projekcie CALM talks to zapraszam do lektury tego artykułu i na końcu wypełniania ankiety. Jeśli od razu […]


					Michał Sobek Inne

Michał Sobek

nauczyciel akademicki, inżynier, założyciel fundacji Greenpower Polska

Jaki był Twój ulubiony przedmiot za czasów szkolnych i dlaczego? Elektrotechnika – nauczyciel posiadał dar przekazywania wiedzy. Jaki Twoim zdaniem jest najważniejszy przedmiot w szkole i dlaczego? Na etapie nauczania w klasach 1-8 uważam że każdy z nich jest istotny. Młody człowiek na tym etapie powinien być wszechstronnie rozwijany. Dokończ zdanie. Dobry nauczyciel ….. traktuje […]


					5xP Podręcznik Programowania PLC PLC Podręczniki

5xP Podręcznik Programowania PLC

Naucz się programować

Ten darmowy podręcznik PLC wraz z kompatybilnym darmowym szkoleniem PLC jest kierowany dla uczniów techników, którzy przygotowują się do egzaminu zawodowego (specjalizacja mechatronika) oraz do wszystkich tych studentów po liceum chcących wreszcie poznać praktyczne podstawy automatyki. Dlaczego ten podręcznik 5xP i cały kurs jest darmowy? Jeśli pojawiło się w Twojej głowie pytanie, dlaczego otrzymujesz ode […]


					Książki Inne

Książki

Na wakacje, do kawiarni i ...

Na świecie do tej pory spisano zbyt wiele wartościowych, ciekawych czy wręcz pasjonujących książkę, dzięki którym możemy zrozumieć otaczający nas świat, aby młodzi ludzie kojarzyli je wyłącznie z nudnymi lekturami. Zniechęcenie młodych umysłów do sięgania po książki w wolnym czasie to chyba największy z zarzutów o najgorszych konsekwencjach stawiany dzisiejszemu systemowi edukacji. Dlatego w tym […]


					Dokumenty Fundacji Inne

Dokumenty Fundacji

Statut, raporty, uchwały i sprawozdania

Cele fundacji (wycinek z statutu dostępnego poniżej) § 4.Cele Fundacji Dokumenty Statut fundacji Pakiet dokumentów za 2024 Pakiet dokumentów za 2023 Pakiet dokumentów za 2022 Pakiet dokumentów za 2021 Pakiet dokumentów za 2020 rok SM za 2019, SF za 2019, Uchwała 2019


					4xP Ściąga i Podręcznik PLC Podręczniki

4xP Ściąga i Podręcznik

Podręczny Podręcznik Programowania PLC

Wszystko o programowaniu PLC na jednej kartce Po przeszkoleniu ponad 2000 kursantów z zakresu programowania sterowników PLC uświadomiłem sobie, że wyjątkowo wiele czasy tracą oni na poszukiwaniu informacji w podręczniku, zamiast skoncentrować się na rozwijaniu swoich umiejętności programistycznych. Dlatego zdecydowałem się przygotować i za darmo udostępnić kompendium skompresowanej wiedzy w formie podręcznej dwustronnej ściągi i […]


					Jak pomagać? Streszczenie Nasze projekty

Jak pomagać? Streszczenie

dla zabieganych

Kompendium wiedzy o udzielaniu pomocy Ukraińcom Ten artykuł to wyłącznie streszczenie obszernego tekstu, który znajdziesz pod tym linkiem Jak pomagać Ukraińcom z głową. Jeżeli chcesz zgłębić ten temat koniecznie go przeczytaj w całości. Jeśli jednak nie lubisz zbyt długich Oryginalny tekst powstał po rozmowach z osobami zarządzającymi akacjami pomocowymi na terenie Gliwic: Leszek Losza (Centrum […]


					#TECH Szkoła 4.0

#TECH

Wprowadzenie do świata technologii

Wierzymy, że głównym celem edukacji nie jest wiedza, lecz działanie i że technologia może rozwiązać większość problemów z którymi się dziś mierzymy. Dlatego ten przedmiot dedykujemy „zabawie” z technologią, aby ją odczarować i uświadomić młode umysły, że przyszłość leży w ich rękach. Na początek sterowniki PLC -> Wszystko na ich temat znajdziesz tutaj:Darmowy Podręcznik Programowania […]


					Szkoła 4.0 Nasze projekty

Szkoła 4.0

Wszystkie przedmioty w zasięgu ręki

Strona w rozbudowie

Subscribe
Powiadom o
guest
0 komentarzy
Inline Feedbacks
View all comments
Zamknij