Pętle (Loops)

01.12.2024 How to /
Wizerunek autora
Były pracownik Elmark Automatyka S.A.
Producent: UNITRONICS

UniLogic obsługuje opisane poniżej typy pętli i funkcji pętli. Pętle w UniLogic działają tak samo, jak w innych językach programowania, takich jak C.

Funkcje pętli powtarzają blok kodu do momentu spełnienia określonego warunku.

Należy pamiętać, że każdej pętli automatycznie przydzielany jest blok danych - określona, zarezerwowana sekcja pamięci - po włączeniu jej do programu. Blok danych jest powiązany ze strukturą; przypisujesz tag dla nazwy struktury, gdy dołączasz FB do swojego projektu.

Po utworzeniu pętli można przeciągnąć ją do dowolnej funkcji.

UniLogic umożliwia implementację następujących typów pętli w programie drabinkowym: "For" Loops, "For Each" Loops i "While" Loops, a także udostępnia funkcje Loop Break i Loop Continue.

 

Tworzenie pętli

  1. Aby utworzyć pętlę, kliknij prawym przyciskiem myszy moduł drabinkowy i wybierz typ pętli.

 

  1. Przeciągnij pętlę do funkcji drabinkowej, przypisz nazwę do bloku danych, a następnie wprowadź parametry pętli.

 

Wewnątrz pętli można używać funkcji drabinkowych Break Loop i Continue Loop.

Należy pamiętać, że podczas programowania wewnątrz samej pętli w przyborniku drabinkowym widoczne są tylko opcje, które mogą być zawarte w pętlach; na przykład opcja Call ->Return nie jest dostępna.

 

Pętle "For"

Pętla "For" działa zgodnie z liczbą określonych iteracji.

 

 

Nazwa

Opis

A

Start

Zbocze narastające Start - wykonuje pętlę, jeśli pętla nie jest aktualnie uruchomiona

B

Index Initial Value

Wprowadź tag lub stałą wartość.

Na początku pętli indeks pętli zostanie przypisany do tej wartości.

C

Condition Comparison Type

Ten parametr określa, w jaki sposób bieżący indeks pętli będzie porównywany z parametrem "Index End Value

Typy porównania obejmują:

Równy, Nie równy, Mniejszy niż, Mniejszy lub równy niż, Większy niż, Większy lub równy niż

D

Index End Value

Wprowadź tag lub stałą wartość.

Wykonywanie pętli będzie kontynuowane, dopóki bieżący indeks pętli i wartość końcowa nie będą zgodne, zgodnie z parametrem "Condition Comparison Type".

E

Index Increment Value

W każdym cyklu pętli bieżący indeks będzie sumowany z tym parametrem. Użyj wartości ujemnej, jeśli zamierzone jest zmniejszanie.

F

Max Number Of Iterations Per Ladder Cycle

Po osiągnięciu tej liczby iteracji w pojedynczym cyklu drabinkowym,

wykonanie programu zakończy pętlę i będzie kontynuowane normalnie.

Pętla będzie kontynuowana w następnym cyklu drabinkowym w punkcie, w którym została zatrzymana.

Jeśli 0, nie ma limitu, pętla będzie wykonywana, dopóki indeks nie osiągnie wartości końcowej lub nie zostanie użyty element przerywający.

 

 

Pętla For Each

Pętla "For Each" przechodzi przez elementy w kolekcji. W UniLogic można używać list, tablic i tabel danych, aby zapewnić kolekcję elementów.

 

 

Nazwa

Opis

A

Collection

Lista \ Indeksowana tabela danych \ Tablica, po której elementach pętla będzie wykonywać iterację.

Kliknięcie parametru powoduje wyświetlenie do wyboru wszystkich tablic List \ Indexed Data Table \ Arrays.

B

Max Number Of Iterations Per Ladder Cycle

Po osiągnięciu tej liczby iteracji w jednym cyklu drabinkowym,

wykonanie programu zakończy pętlę i będzie kontynuowane normalnie.

Pętla będzie kontynuowana w następnym cyklu drabinkowym w punkcie, w którym została zatrzymana.

Jeśli 0, nie ma limitu, pętla wykona się dla wszystkich elementów w wybranym kontenerze.

 

Tworzenie list

  1. Wybierz Lists z drzewka projektu i kliknij Add New List.
  2. Kliknij listę, aby ją otworzyć.

  1. W oknie Properties kliknij Type i wybierz z listy.


  2. Dodaj elementy do listy.

Teraz lista pojawi się w rozwijanej liście For Each Loop -> Collection parameter.

 

Pętla While

Pętla While jest wykonywana wielokrotnie w oparciu o dany warunek logiczny. Pętla while może być traktowana jako powtarzająca się instrukcja if.

 

 

Nazwa

Opis

A

Max Number Of Iterations Per Ladder Cycle

Po osiągnięciu tej liczby iteracji w jednym cyklu drabinkowym,

wykonanie programu wyjdzie z pętli i będzie kontynuowane normalnie.

Pętla będzie kontynuowana w następnym cyklu drabinkowym w punkcie, w którym została zatrzymana.

Jeśli 0, nie ma limitu, pętla będzie wykonywana tak długo, jak długo bit "condition" bloku danych jest włączony.

 

 

Skontaktuj się ze specjalistą Elmark

Masz pytania? Potrzebujesz porady? Zadzwoń lub napisz do nas!