fbpx

Szkoła PLC – Etap projektowania – Algorytm

etap-projektowania

Dzisiaj zajmiemy się kolejnym etapem w cyklu życia oprogramowania jakim jest faza projektowania. Jest to ostatni krok przed rozpoczęciem implementacji czyli kodowania. Etap, którym teraz się zajmiemy ma na celu uszczegółowienia opisu implementacji. Wykorzystamy do tego notacje graficzne lub inaczej mówiąc algorytm.

Etap projektowania

Pewnie wiesz, że każdy program działa według jakiegoś algorytmu. Można go porównać np. do przepisu kucharskiego. Krok po kroku podzielone całe zadanie na fragmenty, które trzeba po kolei wykonać. Dobrze zaprojektowany algorytm może znacznie skrócić czas wykonywanego zadania. Za chwilę przedstawię Ci propozycję takiego algorytmu.

Algorytm funkcyjny

W poprzednim wpisie przedstawiłem Ci główne bloki funkcjonalne, które wchodzą w skład projektu. Poniżej możesz zobaczyć główne zależności pomiędzy tymi blokamiblokowy-algorytm

Tak wygląda przepływ danych patrząc na ogólny podział programu. Jednak trudno dostrzec najważniejsze warunki, które decydują o działaniu naszej linii.

Algorytm – ciąg instrukcji

Drugim sposobem jest przedstawienie algorytmu w formie ciągu instrukcji.

– zatrzymaj linie po włączeniu zasilania dla sterownika

– wybierz tryb pracy linii poprzez naciśniecie przycisku Auto lub Manual

– włącz podświetlenie odpowiedniego przycisku od wyboru trybu pracy

– naciśnij przycisk Start

– włącz sygnał dźwiękowy

– włącz lampę na kolumnie sygnalizacyjnej oraz diodę White

– tryb Auto: sprawdź, czy wciśnięto przycisk Finish

– tryb Auto: jeżeli nie wciśnięto przycisku Finish, to uruchom podajnik palet

– tryb Auto: jeżeli wciśnięto przycisku Finish, to zatrzymaj podajnik palet

– tryb Auto: uruchom transporter na odpowiedni czas w zależności od stanu czujnika, od którego ten transporter jest włączany

– tryb Auto: uruchom odbiornik w zależności od stanu czujnika

-tryb Manual – włącz transportery w odpowiednim kierunku w zależności od położenia potencjometru

-tryb Manual – włącz odbiorniki

– sprawdź, czy wciśnięto przycisk Stop

– jeżeli nie wciśnięto przycisku Stop, to następuje dalsze wykonywanie programu

– jeżeli wciśnięto przycisku Stop, to następuje zatrzymanie wszystkich elementów wykonawczych, czyli linia przestaje działać

Zapis wykonywanych operacji w takiej formie pozwala lepiej się zorientować, co będzie trzeba zaimplementować w sterowniku.

Algorytm graficzny

Jesteśmy przyzwyczajeni, że algorytmy są przedstawiane w formie graficznej. Ogólny wygląd możesz zobaczyć na poniższym rysunku.

Alogorytm-linia-technologiczna

Wybór trybu pracy decyduje o tym, w jaki sposób linia będzie transportować palety. Ważnym warunkiem dla trybu automatycznego jest moment naciśnięcia przycisku Finish. Powoduje to zatrzymanie podawania palet. Program powinien też oczekiwać na wciśnięcie przycisku Stop. Linia wtedy zatrzymuje się, czyli są wyłączane wszystkie elementy wykonawcze.

Każdy z prostokątów będzie już podczas implementacji zbiorem instrukcji, których wykonanie wykona pewien fragment całego zadania. Niektóre z nich się powtarzają. Podczas implementacji taka sytuacja nie jest dobrą praktyką programistyczną. Są techniki, aby uniknąć takich rzeczy.

Jak widzisz, algorytm nie zawiera żadnego bloku związanego z błędami lub statystyką. Te zadania będą realizowane równolegle (z boku działającego algorytmu). W algorytmie będzie warunek sprawdzający, czy nie wystąpił błąd. Jak zapewne pamiętasz, pojawienie się błędu zatrzymuje linię, czyli reakcja jest podobna do naciśnięcia przycisku Stop.

Jak widzisz, algorytm jest prosty, więc nie ma potrzeby jego optymalizacji. Należy pamiętać, że taka redukcja może zmniejszyć zrozumiałość i spowodować komplikację projektu.

Praca domowa

W poprzednim wpisie przedstawiłem Ci najważniejsze dane, jakie będą nam potrzebne do zrealizowania programu sterującego tą linią. Znasz też sygnały cyfrowe, które służą do sterowania linią. Wykorzystując te informacje rozpisz sobie dokładnie następujące bloki (z uwzględnieniem trybu pracy linii czyli Auto i Manual);

– wybór trybu pracy

– podświetlenie przycisków

– włączenie lamp na kolumnie sygnalizacyjnej

– włączenie sygnał dźwiękowego

– uruchom/zatrzymaj podajnik

– uruchom transportery od stanu czujników

– uruchom odbiorniki

Każdy z tych punktów narysuj na kartce jako prostokąt. Następnie przyporządkuj do niego sygnały cyfrowe oraz dane które pojawiły się w poprzednim wpisie.

Kurs wideo

Więcej na temat programowania w języku SCL znajdziesz w kursie Sterownik PLC w praktyce:

pl-usb-1p1-tia-1200-scl_sterownik-plc_w-praktyce-1

 

Podziel się tym wpisem na:
  • Facebook
  • Google Bookmarks
  • Twitter
  • Wykop

Komentarzy

  1. Tymon

    Pamiętam jak na studiach pisaliśmy wiele algorytmów na kartkach. Fajne były zadania z rozpracowywaniem różnych problemów w jakimi mógł napotkać się program. Bardzo interesujący wpis i mam nadzieję że kolejne będą równie ciekawe. Pozdrawiam

    Powtórz

Odpowiedz na „TymonAnuluj pisanie odpowiedzi

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Newsletter - Zapisz się i jako pierwszy otrzymasz najnowsze informacje