Ćwiczenie ABIS-C03. Programowanie węzłów sieci LonWorks z wykorzystaniem modułów Mini FX/FT

Podobne dokumenty
Ćwiczenie ABIS-C04. Programowanie węzłów sieci LonWorks z wykorzystaniem modułów Mini FX/PL

Oprogramowanie wykorzystywane w technologii LonWorks - pakiet LonMaker, urządzenia magistralowe technologii LonWorks stanowisko laboratoryjne.

Cel ćwiczenia. Wstęp stanowisko laboratoryjne

Ćwiczenie SIC-C02. Integracja systemu automatyki budynkowej zrealizowanego w technologii LonWorks

Ćwiczenia z S Komunikacja S z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Szkolenia specjalistyczne

Ćwiczenia z S S jako Profinet-IO Controller. FAQ Marzec 2012

Cwiczenie nr 1 Pierwszy program w języku C na mikrokontroler AVR

LabVIEW PLATFORMA EDUKACYJNA Lekcja 5 LabVIEW i Arduino konfiguracja środowiska i pierwszy program

Instrukcja obsługi Konfigurator MLAN-1000

Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika

Skrócona instrukcja obsługi czujników Fast Tracer firmy Sequoia.

Ćwiczenie SIB-C2. System automatyki budynkowej standardu KNX - funkcje podstawowe wej/wyj, funkcje czasowe, załączanie/wyłączanie, topologia sieci

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

1.Wstęp. 2.Generowanie systemu w EDK

Poniższy przykład przedstawia prosty sposób konfiguracji komunikacji między jednostkami centralnymi LOGO! w wersji 8 w sieci Ethernet.

Ćwiczenie ABIS-C02. Integracja systemu automatyki budynkowej zrealizowanego w technologii LonWorks

Istnieją trzy sposoby tworzenia kopii zapasowej na panelu Comfort:

Instrukcja instalacji i obsługi modemu ED77 pod systemem operacyjnym Windows 98 SE (wydanie drugie)

Zdalny podgląd wizualizacji z panelu XV100 przez przeglądarkę internetową (WebServer)

Instrukcja aktualizacji oprogramowania. Wersja dokumentu: 01i00 Aktualizacja:

FAQ: /PL Data: 3/07/2013 Konfiguracja współpracy programów PC Access i Microsoft Excel ze sterownikiem S7-1200

Instrukcja instalacji i konfiguracji Karty EDGE/GPRS SonyEricsson GC85

STANDARD KNX Automatyka budynkowa Podstawowe informacje

Aplikacja do podpisu cyfrowego npodpis

Electronic Infosystems

Instrukcja instalacji oraz konfiguracji sterowników. MaxiEcu 2.0

dokument DOK wersja 1.0

Instrukcja podstawowego uruchomienia sterownika PLC LSIS serii XGB XBC-DR20SU

Autorzy. Zespół SABUR Sp. Z o.o. Wydanie Data. Sierpień SABUR Sp. Z o. o. Wszelkie prawa zastrzeżone

Instrukcja. importu dokumentów. z programu Fakt do programu Płatnik. oraz. przesyłania danych do ZUS. przy pomocy programu Płatnik

Komunikacja Master-Slave w protokole PROFIBUS DP pomiędzy S7-300/S7-400

Ćwiczenie SIC-C05. Street Lighting Inteligentne oświetlenie uliczne - integracja, monitoring, wizualizacja

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7

Product Update Funkcjonalność ADR dla przemienników Częstotliwości PowerFlex 750 oraz 525 6

Temat: Kopiowanie katalogów (folderów) i plików pomiędzy oknami

Instrukcja użytkownika ARsoft-CFG WZ1 4.0

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Instrukcja do oprogramowania ENAP DEC-1

instrukcja użytkownika terminala ARGOX PA-20 SYSTEMY AUTOMATYCZNEJ IDENTYFIKACJI

Przed skonfigurowaniem tego ustawienia należy skonfigurować adres IP urządzenia.

Instrukcja obsługi programatora AVR Prog USB v2

Instrukcja obsługi programu Do-Exp

Pierwsze kroki z easy Soft CoDeSys Eaton Corporation. All rights reserved.

TURNINGPOINT KROKI DO URUCHOMIENIA TESTU NA PC

Konfigurowanie sterownika CP6601 firmy Beckhoff wprowadzenie

Aplikacja CMS. Podręcznik użytkownika

Instrukcje dotyczące systemu Windows w przypadku drukarki podłączonej lokalnie

Projekt procesora NIOSII w strukturze programowalnego układu logicznego CYCLONEII EP2C35F672C6 podłączenie i obsługa wyświetlacza LCD.

1. Opis. 2. Wymagania sprzętowe:

Konfigurowanie sterownika CX1000 firmy Beckhoff wprowadzenie. 1. Konfiguracja pakietu TwinCAT do współpracy z sterownikiem CX1000

Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

Internet bezprzewodowy

Tablet bezprzewodowy QIT30. Oprogramowanie Macro Key Manager

ZESTAW LABORATORYJNY I ZESTAW FARMACEUTYCZNY : Instrukcja instalacji

FAQ: /PL Data: 09/06/2012. Zastosowanie zmiennych Raw Data Type WinCC v7.0

enova Instalacja wersji demo

Instrukcje dotyczące systemu Windows w przypadku drukarki podłączonej lokalnie

SERWER AKTUALIZACJI UpServ

PLUTO Sterownik bezpieczeństwa Skrócona Instrukcja obsługi oprogramowania. PlutoProgrammingManualPL_v7A.pdf 1

Instrukcja obsługi programatora AVR Prog USB v2

Politechnika Warszawska. Temat: Układ ważący. Opiekun: mgr inż. Marek Peryt

Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia

FAQ: /PL Data: 2/07/2013 Konfiguracja współpracy programów PC Access i Microsoft Excel ze sterownikiem LOGO!

Ćwiczenie ABIS-C08. L-VIS/L-WEB wizualizacja systemu automatyki budynkowej

SERWER AKTUALIZACJI UpServ

11. Rozwiązywanie problemów

BACKUP BAZ DANYCH FIREBIRD

Estomed2. 1. Wstęp. 2. Instalacja Systemu Estomed Jak zainstalować Estomed2. Hakon Software sp. z o. o. Podręcznik instalacji

podstawowa obsługa panelu administracyjnego

Nieskonfigurowana, pusta konsola MMC

3. Sieć PLAN. 3.1 Adresowanie płyt głównych regulatora pco

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

LABORATORIUM UKŁADÓW PROGRAMOWALNYCH Wydziałowy Zakład Metrologii Mikro- i Nanostruktur SEMESTR LETNI 2017

Warsztaty szkoleniowe. Technologia SafetyLon w systemach związanych z bezpieczeństwem funkcjonalnym Narzędzia SafetyLon Moduł 4.5.

1. Aplikacja LOGO! App do LOGO! 8 i LOGO! 7

Instrukcja EQU Kantech

SKRÓCONA INSTRUKCJA INSTALACJI MODEMU I KONFIGURACJA POŁĄCZENIA Z INTERNETEM NA WINDOWS 8 DLA AnyDATA ADU-510L

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI. asix. Aktualizacja pakietu asix 4 do wersji 5 lub 6. Pomoc techniczna

Projektowanie z użyciem procesora programowego Nios II

TwinCAT 3 konfiguracja i uruchomienie programu w języku ST lokalnie

INSTRUKCJA UŻYTKOWANIA CZYTNIKA KART PROCESOROWYCH SYGNET 5v1 IU SY5

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

1.1 Co to jest USBasp? Parametry techniczne Obsługiwane procesory Zawartość zestawu... 4

Site Installer v2.4.xx

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Pracownia internetowa w szkole ZASTOSOWANIA

Veronica. Wizyjny system monitorowania obiektów budowlanych. Instrukcja oprogramowania

Liczniki, rejestry lab. 08 Mikrokontrolery WSTĘP

Laboratorium Procesorów Sygnałowych

PC0060. ADAPTER Kabel Easy Copy PC-Link USB 2.0 Proste kopiowanie, bez instalacji. Instrukcja obsługi

SKRÓCONA INSTRUKCJA INSTALACJI MODEMU I KONFIGURACJA POŁĄCZENIA Z INTERNETEM NA WINDOWS 8 DLA AnyDATA ADU-520L

Informatyka I : Tworzenie projektu

Programowanie procesora Microblaze w środowisku SDK

INSTRUKCJA OBSŁUGI SUPLEMENT

Konfigurowanie sterownika CX9000 firmy Beckhoff wprowadzenie

Laboratorium - Instalacja Virtual PC

Windows 10 - Jak uruchomić system w trybie

Transkrypt:

Ćwiczenie ABIS-C03. Programowanie węzłów sieci LonWorks z wykorzystaniem AUTOMATYKA BUDYNKOWA IMPLEMENTACJA W SIECIACH INTELIGENTNYCH KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII WWW.KANIUP.AGH.EDU.PL AKADEMIA GÓRNICZO-HUTNICZA WWW.AGH.EDU.PL Temat: Programowanie węzłów sieci LonWorks z wykorzystaniem modułów Mini FX/FT Narzędzia: Pakiet Echelon Mini FX Evaluation Kit, Zestaw uruchomieniowy Mini FX/FT stanowisko laboratoryjne, edytor tekstu np. TextPad Zakres materiału Do ćwiczenia potrzebna jest znajomość: 1. architektury i budowy mikrokontrolera NeuronChip, 2. podstaw języka C. Cel ćwiczenia Celem ćwiczenia jest opanowanie podstaw programowania w języku Neuron C z wykorzystaniem płytki ewaluacyjnej z mikrokontrolerem NeuronChip z rodziny FT5000. W czasie ćwiczenia należy zapoznać się z programami demonstracyjnymi dostarczonymi przez producenta, skompilować oraz załadować je do pamięci mikrokontrolera, a następnie przetestować ich działanie. Kolejną częścią ćwiczenia jest rozbudowanie oprogramowania o własne funkcjonalności zaprojektowane z wykorzystaniem języka Neuron C. Wstęp W ćwiczeniu wykorzystywana jest płytka z mikrokontrolerem NeuronChip z rodziny FT5000. Widok płytki przedstawiono na rysunku nr 1.1. Rysunek nr 1.1. Zdjęcie płytki ewaluacyjnej z mikrokontrolerem NeuronChip z rodziny FT5000. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 1/21

Uniwersalny węzeł LonWorks zawiera w sobie układ FT 5000 Smart Transceiver będący połączeniem NeuronChip a oraz Transciever a. Mikrokontroler taktowany jest zewnętrznym zegarem kwarcowym z częstotliwością 10 MHz ( istnieje możliwość regulacji częstotliwości wewnętrznego zegara w zakresie 5-80 MHz). Ponadto układ wyposażony jest w 64 KB zewnętrznej, nieulotnej pamięci EEPROM oraz 64 KB pamięci Flash. Wymiana danych pomiędzy Flash i EEPROM następuje poprzez magistralę SPI lub I2C. Po resecie urządzenia kod programu oraz dane konfiguracyjne są kopiowane z EEPROM do wewnętrznej pamięci RAM a następnie aplikacja zostaje wykonywana. Peryferia układu zostały przedstawione na rysunku nr 1.2, w ich skład wchodzą alfanumeryczny wyświetlacz LCD, Joystick, dwa przyciski, dwie diody LED, czujnik temperatury oraz natężenia oświetlenia. Na rysunku nr 2 przedstawiono ich usytuowanie na płytce FT 5000. Rysunek nr 1.2. Zdjęcie płytki ewaluacyjnej przedstawiające układy peryferyjne. Jako medium transmisyjne wykorzystywana jest skręcona para przewodów (TP) podłączona do interfejsu sieci LonWorks Echelon U10 - rysunek nr 1.3. Rysunek nr 1.3. Zdjęcie modułu interfejsu sieciowego U10 USB firmy Echelon. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 2/21

Rozdział I: Zapoznanie z oprogramowaniem dedykowanym dla sieci LonWorks na bazie przykładowej aplikacji NcSimpleExample. Program ćwiczenia 1. Uruchomić pakiet Echelon Mini FX ( Start/ wszystkie programy ) Przedstawiony na rysunku nr 1.4 Mini FX Evaluation Kit jest to pakiet służący do kompilacji i wgrywania własnych programów, przygotowanych dla węzłów sieci LonWorks, do pamięci mikrokontrolera. Pierwszą czynnością jest wybór ścieżki Neuron C Source file. Należy podać ścieżkę do pliku Main.nc przykładowej aplikacji NcSimpleExample. Kolejnym krokiem jest dodanie wszystkich bibliotek. Następnie należy wybrać rodzaj obsługiwanego sprzętu (FT 5000 Evaluation Board). Ścieżka: Pulpit: ABIS\C03-Mini FX-FT\Original Rysunek nr 1.4. Widok okna pakietu Mini FX Evaluation Kit Ostatnim elementem zakładki Application jest pole Standard Program Identifier. Po naciśnięciu przycisku Calculate należy wprowadzić następującą wartość: 9F:FF:FF:05:01:04:04:10 W celu kompilacji pliku Main.nc należy wybrać odpowiednią opcję klikając przycisk Build. Wszystkie pliki są kompilowane do tego samego katalogu \Main Output\ Main.APB. Uwaga. Proces kompilacji został przeprowadzony w programie Mini FX. Konfiguracja sieci odbywa się w pakiecie LonMaker. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 3/21

2. Uruchomić przedstawiony na rysunku nr 1.5 program LonMaker, który jest narzędziem służącym do integracji sieci LonWorks. Rysunek nr 1.5. Widok okna pakietu Echelon LonMaker Design Manager. Wskazówka: W celu poprawnej identyfikacji modułu interfejsu sieciowego, który zostanie wykorzystany do prac z siecią LonWorks, należy uruchomić narzędzie LonWorks Interfaces dostępne w Panelu Sterowania. W zakładce USB powinna zostać wyświetlona nazwa aktualnie używanego modułu U10. Przykład użycia wspomnianego pakietu został przedstawiony na rysunku nr 1.6 Rysunek nr 1.6. Widok okna pakietu LonWorks Interfaces. W zakładce General kliknąć na przycisk Restore, aby odtworzyć ustawienia sieci dla przykładu NcSimpleExample. Następnie należy wybrać plik z folderu Pulpit: ABIS\C03-Mini FX-FT\NcSimpleExample\NcSimple.zip. Zatwierdzić monity NetworkRestore KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 4/21

Następnie należy przejść przez kolejne zakładki programu zatwierdzając zmiany tak, jak to zostało przedstawione na rysunkach nr 1.7 1.10 Rysunek nr 1.7. Widok Rysunek nr 1.8. Widok Rysunek nr 1.9. Widok KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 5/21

Rysunek nr 1.10. Widok Poprawnie wykonany proces odtworzenia sieci LonWorks skutkuje uruchomieniem programu Microsoft Visio, wzbogaconego o opcje pakietu LonMaker, efekt ten został przedstawiony na rysunku nr 1.11. Okno główne programu przedstawia urządzenia (Device) podłączone do magistrali LON (Channel 1) oraz bloki funkcyjne tych urządzeń. Bloki funkcyjne wraz z typami zmiennych definiuje się za pomocą języka NeuronC. Strzałkami defioniowany jest przepływ danych w postaci zmiennych sieciowych. Rysunek nr 1.11. Widok okna pakietu LonMaker z odtworzonym projektem NcSimpleExample. Blok LNS Network Interface m.in. reprezentuje urządzenie U10 USB będące głównym węzłem dostępu do sieci LonWorks z komputera PC. Kolor zielony świadczy o poprawności działania urządzenia w sieci LonWorks. W celu uruchomienia płytek FT 5000 w sieci LonWorks należy nadać im uprawnienia i przyłączyć do projektu (ang. commissioning). KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 6/21

3. Prawym przyciskiem myszy kliknąć na blok Simple Device 1, a następnie wybrać polecenie Commissioning zostało to przedstawione na rysunku nr 1.12 Rysunek nr 1.12. Widok ukazujący się po kliknięciu prawym przyciskiem myszy na bloku Simple Device 1. 4. Należy zaznaczyć opcję Load aplication image w celu załadowania pliku wykonywalnego, zbudowanego wcześniej w pakiecie FX Mini (Main.APB) zostało to przedstawione na rysunku nr 1.13. Następnie wcisnąć przycisk Dalej> Ścieżka: Pulpit: ABIS\C03-Mini FX-FT\NcSimpleExample\Source\MainOutput\ Rysunek nr 1.13. Widok okna wyświetlanego podczas procesu komis jonowania. 5. Wprowadzić ustawienia takie jak zostały przedstawione na rysunku nr 1.14. Następnie wcisnąć przycisk Dalej> Rysunek nr 1.14. Widok okna wyświetlanego podczas procesu komis jonowania. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 7/21

6. Następnie zaznaczyć opcję Service pin tak jak zostało to przedstawione na rysunku nr 1.15. Spowoduje to odczyt numeru Neuron ID przez program po naciśnięciu przycisku Service Pin na płytce ewaluacyjnej. Rysunek nr 1.15. Widok okna wyświetlanego podczas procesu komis jonowania. Wybór przycisku Zakończ skutkuje wyświetleniem okna, jak na rysunku nr 1.16, z prośbą o wciśnięcie przycisku Service Pin dla komisjonowanego urządzenia. Rysunek nr 1.16. Widok okna wyświetlanego podczas oczekiwania przez pakiet na wciśnięcie przycisku Service Pin komis jonowanego urządzenia. Uwaga: Zaznaczona opcja Filter on program ID powoduje, że pakiet LonMaker oczekuje numer Program ID z poprzedniego programu znajdującego się w pamięci urządzenia. W celu wprowadzenia aktualnego programu opcja Filter On program ID musi pozostać odznaczona. Zadania do samodzielnego wykonania 1. Dokonać skomisjonowania urządzenie Simple Device 2, 2. Przeanalizować działanie wejść/wyjść (I/O) na podstawie wgranej aplikacji ncsimpleexample w pakiecie LonMaker. Zmienną sieciową nvoswitch z Simple Device 2 połączyć (ang. Binding) ze zmienną nvilamp w Simple Device 1, KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 8/21

3. Zdekomisjonować urządzenia Device 1 i Device 2( prawym przyciskiem myszy na odpowiednim bloku Device i wybrać polecenie Decomission), 4. Skompilować w pakiecie Mini FX (Program ID: 9F:FF:FF:05:01:84:04:30) i załadować aplikację NcMultiSensorExample do urządzeń Device 1 i Device 2, 5. Skomisjonować urządzenia z wgraną aplikacją NcMultiSensorExample, w nowym projekcie w pakiecie LonMaker. 6. Przeanalizować działanie wejść/wyjść (I/O) w pakiecie LonMaker dla tego przykładu, 7. Zdekomisjonować urządzenia w pakiecie LonMaker, 8. Zaznajomić się z rozdziałem II niniejszego ćwiczenia, 9. Uruchomić program TextPad zainstalowany w systemie Windows 7. Jest to edytor tekstu z podkreśleniem składni języka NeuronC, W programie TextPad otworzyć i zaznajomić się z następującymi plikami: Pulpit: ABIS\C03-Mini FX-FT\Original\GATE_AND\Source\Main.nc Pulpit: ABIS\ C03-Mini FX-FT\ Original\GATE_AND\Source\Switch.nc Pulpit: ABIS\ C03-Mini FX-FT\ Original\GATE_AND\Source\Lamp.nc UWAGA: Przed każdym nowym procesem konfiguracji sieci w programie LonMaker należy zdekomisjonować wszystkie urządzenia Device. Jest to związane z przyznanym przez firmę Echelon limitem skomisjonowanych urządzeń w postaci punktów Credits widocznych podczas uruchamiania programu LonMaker. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 9/21

Rozdział II: Aplikacje węzłów sieci w języku NeuronC W niniejszym rozdziale zostały opisane najważniejsze informację na temat języka NeuronC, niezbędne do wykonania niniejszego ćwiczenia. Predefined Events Język Neuron C charakteryzuje się brakiem głównej funkcji main, znanej z języka C lub C++, w zamian występują zdarzenia typu Predefined Events. Stosowana jest klauzula when o następującej składni: [priorytet] when( <event> ) { //task - kod obsługi zdarzenia } Przykładowe zadanie wywołane po aktualizacji zmiennej sieciowej może mieć postać: when(nv_update_occurs(nvilamp) { //kod obsługi zdarzenia } NeuronChip wyposażony jest w Scheduler odpowiedzialny za priorytetowanie według schematu przedstawionego na rysunku nr 2.1 Rysunek nr 2.1. Schemat blokowy algorytmu priorytetowania zaimplementowanego w NeuroChip. Przykład występowania zdarzeń i ich obsługę przez Scheduler przedstawiono na rysunku nr 2.2. Rysunek nr 2.2. Schemat występowania zdarzeń i ich obsługa przez Scheduler. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 10/21

Zmienne sieciowe Zmienne sieciowe (ang. Network Variables) w języku NeuronC są predefiniowanymi przez standard LonWorks wartościami, strukturami lub typami wyliczeniowymi enum. Zmienne zawierające w sobie te elementy są zgodne ze standardem języka ANSI C. Przedrostki zmiennych sieciowych przedstawiono w tabeli 1. Tabela 1. Przedrostki zmiennych sieciowych. Przedrostek Znaczenie Lokalizacja Zmiennej nvi Zmienna sieciowa wejściowa RAM nvo Zmienna sieciowa wyjściowa RAM nci Zmienna wejściowa kofiguracyjna EEPROM nco Zmienna stała ROM Bloki i profile funkcjonalne Zmienne sieciowe oraz konfiguracyjne są organizowane w bloki funkcjonalne. W definicji bloku zawarte są informacje o typach zmiennych w nim przechowywanych oraz algorytm przetwarzający sygnały wejść/wyjść (I/O). Technologia LonWorks wymaga, aby bloki funkcjonalne, tworzyć zgodnie z profilami funkcjonalnymi czyli przepisami na bloki funkcjonalne. Profile funkcjonalne są zgodne ze standardem, ponieważ są opracowywane przez organizację LonMark opiekującą się tą technologią. W deklaracji profilu funkcjonalnego znajduje się informacja o: - nazwie wykorzystanego szablonu profilu funkcjonalnego (np. SFPTclosedLoopActuator), - użytych zmiennych sieciowych, oraz ich przypisanie do odpowiednich miejsc w szablonie, - nazwie profilu funkcjonalnego. W celu stworzenia bloku funkcjonalnego należy posłużyć się słowem kluczowym "fblock", natomiast do przypisania zadeklarowanej zmiennej sieciowej z szablonem służy komenda "implements": fblock SFPTclosedLoopActuator { nvilamp[0] implements nvivalu nvolampfb[0] implements nvovaluefb; } Lamp[Lamp_FBLOCK_COUNT] #ifdef USE_EXTERNAL_NAME external_name("lamp") #endif ; Można wymusić kompilację profilu funkcjonalnego z większą ilością zmiennych sieciowych niż zadeklarowana w szablonie za pomocą "implementation_specific(-numer identyfikacyjny zmiennej-)", jednak nie jest to zalecany sposób, ze względu na niezgodność ze standardem LonWorks. W takim przypadku należy stworzyć własny szablon profilu funkcjonalnego. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 11/21

Przykładowa deklaracja profilu funkcjonalnego znajduje się w pliku Lamp.nc zawartym w projekcie NcSimpleExample. Zadania do samodzielnego wykonania 1. Otworzyć w edytorze TextPad pliki And2.nc oraz Main.nc. Przeanalizować kod źródłowy zawarty w pliku And2.nc. Zwrócić uwagę na następujące definicje w Main.nc odpowiadające za działanie bloku funkcjonalnego And, #define And_FBLOCK_COUNT 1 #define TOTAL_FBLOCK_COUNT NodeObject_FBLOCK_COUNT +\ Lamp_FBLOCK_COUNT +\ Switch_FBLOCK_COUNT+\ Joystick_FBLOCK_COUNT+\ And_FBLOCK_COUNT+\ Or_FBLOCK_COUNT #include "And2.nc" 2. Utworzyć nowy projekt sieci w programie LonMaker (postępować wg poleceń w Dodatku A). Następnie w pakiecie LonMaker należy przeciągnąć Functional Block i wybrać AND dla urządzenia Device 1 lub 2. Zaznaczyć opcję Create all network variables and shapes zostało to zilustrowane na rysunku nr 2.3, Rysunek nr 2.3. Widok okna dodawania bloku funkcjonalnego w pakiecie LonMaker. 3. Dodać kolejno bloki And[0], Switch[0], Switch[1]. Joystick[0] oraz Lamp[0] i Lamp[1], 4. W bloku Joystick[0] zmienną sieciową nvojoystick zbindować ze zmienną sieciową nviandena bloku And. Przełączenie Joystick a w górę spowoduje uaktywnienie bramki AND (nviandena.state=1), KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 12/21

5. Zmienne sieciowe z dwóch różnych bloków Switch zbindować ze zmiennymi sieciowymi nviandswitch1 oraz nviandswitch2, 6. Zmienną nvoandout połączyć ze zmiennymi wejściowymi bloku Lamp, Wybranie opcji OnNet w oknie Management Mode, co zostało przedstawione wcześniej na rysunku nr 1.9, spowoduje zaświecenie lampki od razu po połączeniu zmiennych i wciśnięciu obu przycisków switch, 7. W edytorze tekstu TextPad otworzyć plik Or2.nc. Znajduje się w nim prototyp bloku funkcjonalnego Or. Należy napisać brakujący fragment kodu w zdarzeniu when odpowiadający za realizację algorytmu bramki logicznej OR na podstawie wcześniej omówionych punktów niniejszego ćwiczenia, 8. Przeanalizować działanie własnego bloku funkcjonalnego. W tym celu należy wgrać nową aplikację do mikrokontrolera NeuronChip i skomisjonować urządzenia w pakiecie LonMaker. Diody LED Na płytce ewaluacyjnej zestawu z mikrokontrolerem FT5000 zamontowano dwie diody led. Firma Echelon dostarcza również biblioteki umożliwiające zapalanie i wygaszanie diód. Służy do tego funkcja: Jako argumenty przyjmuje ona typ enum Leds zadeklarowany w pliku FT5000EvalBoard.h oraz wartość logiczną opisującą stan odpowiedniej diody led po wykonaniu polecenia. Timery EvalBoardSetLed(Leds,boolean) Odliczanie czasu w procesorach NeuronChip zrealizowane jest programowo. Użytkownik może zdefiniować do 15 niezależnych od siebie timerów odliczających czas. Możliwe do zadeklarowania są dwa typy timerów. W jednym czas podajemy z dokładnością do sekundy (słowo kluczowe stimer), natomiast w drugim podajemy czas z dokładnością do milisekundy (słowo kluczowe mtimer). Maksymalny czas odliczania dla timera milisekundowego to 64000 ms, natomiast dla timera sekundowego to 65535. W celu ponownego uruchomienia timera należy przypisać mu nową wartość. Dodanie słowa kluczowego repeating powoduje automatyczny restart timera po odliczeniu określonego czasu. Przykładowy kod timera powtarzającego odliczającego 250 ms, o nazwie ttimer przedstawia się następująco: mtimer repeating ttimer=250; W celu wykrycia końca odliczania timera konieczne jest użycie zdarzenia timer_expires. Przykładowe użycie tego zdarzenia odniesione do przedstawionego timera ttimer przybiera następującą postać: timer_expires(ttimer) Przedstawione zdarzenie może zostać użyte np. w wywołaniu zdarzenia when. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 13/21

Zadania do samodzielnego wykonania 9. W pliku Main.nc projektu Gate_And należy dopisać fragment kodu odpowiadający za zaświecenie diody Led1, tak aby uzyskać efekt zapalania się diody jeden raz na sekundę. Wyświetlacz LCD Do wyświetlacza LCD zamontowanego w zestawach uruchomieniowych FT5000 firma Echelon dostarcza gotowe do użycia biblioteki. Zawierają one funkcje pozwalające na sterowanie funkcjami wyświetlacza (np. jasność podświetlenia, komenda czyszczenia wyświetlacza ze znaków), czy wysyłanie tekstu do wyświetlacza. W dalszej części instrukcji zostaną przedstawione podstawowe funkcje wspomnianej biblioteki: EvalBoardLCDSendCommand(LcdCommands) Funkcja pozwala na wysłanie do wyświetlacza komendy nie zawierającej dodatkowych danych. Lista komend zadeklarowana jest jako typ wyliczeniowy enum i zawarta została w pliku FT5000EvalBoard.h. Przykładem takiej komendą jest LcdClearScreen, która czyści ekran i nie wymaga podania dodatkowych argumentów. EvalBoardLCDSendCommandWithParam(LcdCommands,char) Funkcja pozwala na wysłanie do wyświetlacza komendy z dodatkowym parametrem o wielkości 1 bajt. Komendy te są zadeklarowane łącznie z komendami nie wymagającymi dodatkowych parametrów. Przykładem takiej komendy jest LcdSetBrightness, która pobiera liczbę z zakresu 1-16 i ustawia odpowiednią jasność podświetlenia wyświetlacza. EvalBoardLCDDisplayString(unsigned,unsigned,char*) Funkcja wymaga od użytkownika podania następujących argumentów: numer wiersza, numer kolumny oraz wskaźnik na łańcuch znaków, a następnie wyświetla go na ekranie LCD w podanym miejscu. Funkcja nie przyjmuje stałego ciągu znaków, należy więc uprzednio stworzyć tablicę tymczasową do której zapisywać będziemy ciągi znaków do wyświetlenia, a następnie przekazać ją do funkcji poprzez wskaźnik. Do kopiowania ciągów znaków do tymczasowej tablicy może posłużyć funkcja strcpy. W projekcie Gate_AND obsługa wyświetlacza jest zaimplementowana w pliku Main.nc. Zdarzenie when cyklicznie (4 razy na sekundę) wyświetla odpowiednie dane na wyświetlaczu LCD. Są to kolejno: - łańcuch znaków, - licznik ruchów joysticka w górę(ruch joysticka w dół powoduje dekrementację), - licznik ruchów joysticka w lewo(ruch joysticka w prawo powoduje dekrementację), - kierunek obecnego wychylenia joysticka(up,down,left,right,none). W celu konwersji liczby do ciągu znaków użyto funkcji UIntToHexStr. Zadania do samodzielnego wykonania 10. W pliku Main.nc projektu Gate_And należy dopisać fragment kodu odpowiadający za zmianę jasności podświetlenia z minimalnej na maksymalną, KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 14/21

11. Wyświetlić dowolny ciąg znaków w 3 linijce, poczynając od 4 kolumny (maksymalna możliwa ilość znaków wyświetlona przez ekran w 1 linijce to 20), 12. W ostatniej linijce umieścić licznik zliczający ilość sekund pracy mikroprocesora. UWAGA: Przed każdym nowym procesem konfiguracji sieci w programie LonMaker należy zdekomisjonować wszystkie urządzenia Device. Jest to związane z przyznanym przez firmę Echelon limitem skomisjonowanych urządzeń w postaci punktów Credits widocznych podczas uruchamiania programu LonMaker. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 15/21

Rozdział III: Analizator protokołu LonTalk aplikacja LonScanner Protocol Analyzer Program LonScanner Protocol Analyzer firmy Echelon jest łatwym w użyciu narzędziem umożliwiającym integratorom systemu obserwacje przesyłanych pakietów danych, analizy i diagnostyki sieci LonWorks. Na rysunku nr 3.1 przedstawiono okno główne programu LonScanner. Kolory pozwalają na odróżnienie przesyłanych pakietów. Widoczne są takie informacje jak czas wystąpienia komunikatu, typ (np. z potwierdzeniem lub bez potwierdzenia), źródło i cel oraz przesyłana wartość. Rysunek nr 3.1. Widok okna programu LonScanner Podczas analizy danych pochodzących z sieci LonWorks za pomocą pakietu LonScanner wygodnym jest zaimportowanie nazw zmiennych sieciowych z Bazy Danych LNS. Aby tego dokonać, należy wybrać przycisk pokazany na rysunku nr 3.2. Rysunek nr 3.2. Widok okna programu LonScanner, z zaznaczoną ikoną odpowiedzialną za import nazw zmiennych sieciowych z danego projektu. Następnie w oknie, które zostanie wyświetlone należy z rozwijanej listy wybrać nazwę projektu sieci, który ma zostać poddany alizie w pakiecie LonScanner przykład został przedstawiony na rysunku nr 3.3. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 16/21

Rysunek nr 3.3. Widok okna programu LonScanner, w którym wybiera się nazwę projektu poddawanego analizie. Kolejno należy zaakceptować poprzez kliknięcie przycisku Dalej pojawiające się komunikaty zatwierdzając standardowe ustawienia programu. Każda z zakładek przedstawionych na rysunku nr 3.4 dostarcza porcję informacji pochodzących z analizy sieci LonWorks. Rysunek nr 3.4. Widok paska zakładek dostępnych w programie LonScanner. UWAGA: Przed każdym nowym procesem konfiguracji sieci w programie LonMaker należy zdekomisjonować wszystkie urządzenia Device. Jest to związane z przyznanym przez firmę Echelon limitem skomisjonowanych urządzeń w postaci punktów Credits widocznych podczas uruchamiania programu LonMaker. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 17/21

DODATEK A: Tworzenie nowej sieci w programie LonMaker Dodatek przeprowadza użytkownika przez proces tworzenia nowej sieci w programie LonMaker oraz dodanie urządzenia do nowo utworzonego projektu z uwzględnieniem wymagań niniejszego ćwiczenia. Skompilować plik Main.nc projektu Gate_AND w programie Mini FX. Gate_And znajduje się w folderze Pulpit: ABIS\C03-Mini FX-FT\ Original\GATE_AND\Source\Main.nc Następnie uruchomić pakiet LonMaker. Nadać własną nazwę projektu i wybrać przycisk Create Network tak jak zostało to przedstawione na rysunku nr A.1. Rysunek nr A.1. Widok okna powitalnego pakietu LonMaker. Na następnym wyświetlonym na ekranie oknie pozostawić domyślne opcje tak jak zostało to przedstawione na rysunku nr A.2. Rysunek nr A.2. Widok okna Network Wizard, pojawiającego się podczas tworzenia nowego projektu sieci. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 18/21

W kolejnym wyświetlonym oknie, pokazanym na rysunku nr A.3, należy wybrać odpowiedni interfejs sieci jaki ma zostać wykorzystany do połączenia komputera PC z siecią LonWorks. Nazwę aktualnie używanego interfejsu można sprawdzić za pomocą apletu LonWorks Interfaces, znajdującego się w Panelu Sterowania. Rysunek nr A.3. Widok okna Network Wizard, w którym należy dokonać wyboru odpowiedniego interfejsu sieciowego. Kolejne wyświetlone na ekranie okno, które zostało przedstawione na rysunku nr A.4, pozwala na wybór z pośród dwóch trybów zarządzania siecią. Wybrać tryb OnNet. Rysunek nr A.4. Widok okna Network Wizard, w którym należy wybrać tryb zarządzania siecią. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 19/21

Następne wyświetlone okno, przedstawione na rysunku nr A.5, pozwala na wybranie dodatkowych programów (tzw. plugin ów) konfigurujących ustawienia danych urządzeń, które mają zostać dołączone do tworzonego projektu. Rysunek nr A.5. Widok okna Network Wizard, w którym można dokonać wyboru plugin ów. Proces dodawania nowego projektu sieci należy zakończyć klikając przycisk Zakończ w oknie z rysunku A.5. Zakończenie tego procesu skutkuje otwarciem programu MS Visio z widocznym schematem utworzonej sieci. W celu dodania nowego urządzenia należy z palety Shapes przeciągnąć ikonkę Device i położyć ją na płachcie projektu. Na ekranie zostanie wyświetlone okno pokazane na rysunku nr A.6. Jeżeli ustawienia są poprawne należy kliknąć przycisk Dalej. Rysunek nr A.6. Widok okna dodawania nowego urządzenia w programie LonMaker. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 20/21

Następnie zostanie wyświetlone okno pokazane na rysunku nr A.7. W polu Load XIF należy wskazać ścieżkę dostępu do pliku XIF. Jest to plik generowany przez program do kompilacji np. pakiet Mini FX, zawierający opis bloków funkcyjnych użytych w projekcie. Ścieżka: Pulpit: ABIS\C03-Mini FX-FT\ Original\GATE_AND\Source\MainOutput\ Rysunek nr A.7. Widok okna, w którym należy wskazać plik XIF dla danego urządzenia. Zadania do samodzielnego wykonania Dodać nowe urządzenie Device 2. W tym celu należy ponownie przeciągnąć ikonkę Device z palety Shapes do okna głównego. Na ekranie zostanie wyświetlone okno jak na rysunku nr A.6. Tym razem należy odznaczyć Create New Device Template, a z rozwijanej listy urządzeń Name wybrać Main. Ostatnim krokiem jest skomisjonowanie i wgranie programu na urządzenia w nowej sieci. KATEDRA ENERGOELEKTRONIKI I AUTOMATYKI SYSTEMÓW PRZETWARZANIA ENERGII 21/21