poniedziałek, 20 stycznia 2020

Automation Studio - tworzenie nowego projektu od podstaw

W celu utworzenia nowego projektu otwieramy AS i naciskamy Ctrl+Shift+N ukaże się okno jak z lewej strony, uzupełniamy nazwę projektu i wybieramy ścieżkę, gdzie ma zostać zapisany. Warto też, zaznaczyć "Copy Automation Runtime files into project" oraz "Use Automation Runtime Simulation" potwierdzamy operacje klikając Finish. Powinniśmy zostać automatycznie przekierowanie do zakładki Logical View (jeśli tak się nie stało, należy przejść do niej), która w swoim drzewku przechowuje nazwę projektu, Global.typ, Global.var oraz Libraries. Klikamy zatem prawym klawiszem myszy na nazwę projektu  i wybieramy Add Object... następnie z kategorii wybieramy Package i New Empty Package i wybieramy nazwę adekwatną do tego, jaki obiekt będzie się znajdował wewnątrz, u mnie wpisałem po prostu Program - dzięki temu zachowujemy porządek w swoich katalogach, tworząc nowy podkatalog w części logicznej.



Teraz kolej na dodanie pierwszego programu do projektu, w tym celu powtarzamy procedurę klikając prawym klawiszem myszy na katalog Program tym razem z kategorii wybierając Program i New program, nazywamy program wedle gustu i przechodzimy dalej.



Z listy rozwijanej Language wybieramy język (proponuję zacząć od Ladder Diagram) i przechodzimy Next>. W kolejnym a zarazem ostatnim oknie kreatora wybieramy ostatnią opcję No, do nothing i kończymy klawiszem Finish.
Klikając dwu krotnie na program HelloWorld powinniśmy zobaczyć puste okno programu, który właśnie dodaliśmy.


Na tym etapie, pozostaje nam dodać zmienne, które posłużą do przechowywania operacji, które za chwilkę sobie wykonamy, przechodzimy zatem do HelloWorld.var klikając dwukrotnie i skrótem klawiszowym Insert dodajemy wpisy zmiennych do swojego programu. 
Należy wspomnieć, że zmienne dodane z poziomu programu HelloWorld są typu Local variables - znaczy to tyle, że ich widoczność ogranicza się tylko do tego konkretnego programu, jeśli dodamy inny program zmienne te nie będą tam widoczne. jeśli chcemy utworzyć zmienne globalne, należy zrobić to z poziomu Global.var u góry drzewa logicznego. 
Dodajemy więc zmienną dodaj o typie BOOL oraz zmienną suma o typie DINT i tą druga inicjalizujemy wartością 1 w polu Value, całość prezentuje się tak, jak na poniżej


Nadszedł czas na pierwszy program, wracamy więc do naszego Ladder Diagram i wstawiamy zbocze pozytywne wybierając skrót klawiszowy P z klawiatury, następnie w miejsce migającego kursora oznaczone prostokątnym polem wpisujemy nazwę naszej zmiennej dodaj i zatwierdzamy Enter

Kolejnym krokiem jest wstawienie bloku odpowiadającego za sumę, a właściwie obliczanie potęgi zmiennej suma. Dodajemy zatem kolejny blok skrótem klawiszowym S i wpisujemy nazwę bloku, jaki chcemy dodać, czyli w naszym przypadku Add w migające pole kursora i potwierdzamy wybór klawiszem Enter, bloczek powinien nieco zwiększyć swoją objętość a to głównie z powodu dodania z lewej strony dodatkowego pola, do którego zaraz podłączymy zmienną.


Teraz będziemy dodawać zmienną suma do naszego bloczku ADD, w tym celu ustawiamy kursor (pogrubiony plus) w miejscu myślników w obrębie bloku - są to miejsca, które umożliwiają nam podłączenie wartości zmiennych, dwa wejściowe w lewej i jedno wyjściowe z prawej.


Kiedy kursor ustawiony jest na pierwszym myślniku, naciskamy klawisz spacji, wówczas kursor odsuwa się lekko od bloku, co dodatkowo sygnalizowane jest cienką linią łączącą nasz blok z polem wartości, teraz wpisujemy w puste pole naszą zmienną suma i potwierdzamy klawiszem Enter



I tak postępujemy z pozostałymi "odnogami" bloczku prócz lini ENO, tak powinien prezentować się końcowy efekt



Na koniec klawiszem Enter weryfikujemy dokonanych zmian w bloku ADD, co powinno spowodować zniknięcie czerwonej linii wskazującej na dokonanie zmian w bloku. Jeśli tak się nie dzieje, znaczy, że coś poszło nie tak. 

Jako, że tworzymy nowy projekt od podstaw, musimy dodać część logiczną, którą przed chwilą stworzyliśmy do hardware-u a prościej mówiąc "skojarzyć" aktualną konfigurację z sprzętem czyli w naszym przypadku będzie to symulator ARsim. W tym celu przechodzimy do zakładki Configuration View i w konfiguracji, w której chcemy zastosować zmiany rozwijamy katalog, a w nim przechodzimy dwukrotnie klikając w Cpu.sw Uwaga ! operacja ta, możliwa jest tylko w przypadku, jeśli dana konfiguracja jest aktywna, a widać to po tym, że jest pogrubiona wytłuszczonym drukiem.


Następnie musimy przejść z powrotem do zakładki Logical View i metodą "przeciągnij i upuść" łapiemy za główny katalog PierwszyProjekt trzymając cały czas klawisz myszy, upuszczamy go w miejsce <CPU> aż zobaczymy strzałkę w dół i plus. Czasami tą operację trzeba powtórzyć, głównie jeśli wykonuje się to na TouchPadzie. Tak powinna wyglądać zawartość Cpu.sw po wykonaniu tej operacji



Używając skrótu Ctrl+F7 przeładowujemy całą konfigurację i jeśli nie ma żadnych błędów ani ostrzeżeń podczas kompilacji, możemy przejść do transferu projektu do symulatora



Zamykamy okno i generujemy kartę CF wybierając Tools i Create Compact Flash, potwierdzamy przez naciśnięcie Create 



Następuje restart ARsim i transfer projektu, który po chwili powinien wyglądać tak



Spoglądamy jeszcze na pasek statusu, upewniając się, że nasz symulator wystartował, jeśli w pobliżu ARsim pojawił się napis RUN oznacza to tyle, że możemy w kocu sprawdzić działanie naszego programu



W tym celu przechodzimy do naszego LadderDiagram klikając dwukrotnie na HelloWorld a następnie z górnej beli wybieramy Monitor lub jak kto woli skrót Ctrl+M i potwierdzamy komunikat o synchronizacji OK


Tryb pracy Monitor pozwala nam w bieżącym oknie programu LadderDiagram obserwować wartość zmiennych jak i tzw. Powerflow do pełni szczęścia dodajmy dwie zmienne klikając prawym klawiszem myszy na pole Wath i wybierzmy InsertVariable...  a następnie zaznaczając dodaj i suma potwierdzamy wybór przyciskiem Add 




Klikając na wartość FALSE w kolumnie Variable na zmiennej dodaj wybieramy z klawiatury cyfrę 1 i potwierdzamy klawiszem Enter, w ten sposób zmieniliśmy wartość zmiennej dodaj z FALSE na TRUE, tą samą operację w drugą stronę wykonujemy poprzez wybranie cyfry 0 Poniżej przykład wykonania kilku takich wymuszeń działania programu



Na koniec, należy dodać, że mimo "ciągłym" ustawieniu zmiennej dodaj na stan wysoki, operacja dodawania nie jest wykonywana z każdym przebiegiem pętli programu, tylko raz przy zmianie sygnału z 0 na 1 Dzieje się tak, ponieważ na wejście bloku EN celowo zastosowałem zbocze PTRIG.

Gorąco zachęcam do dalszych eksperymentów bazując na powyższym przykładzie w Automation Studio.





Brak komentarzy:

Prześlij komentarz