VamsterL
Transkrypt
VamsterL
VamsterL Opis sterownika wersja 1.0 Kraków, 2012 1. Wstęp VamsterL jest jedną ze sprzętowych odmian Vamstera klasy N. Zaprojektowany został z myślą o zabudowie na szynie DIN. Wyposażony w dużą ilość wejść / wyjść oraz możliwość sterowania zewnętrznymi ekspanderami we/wy stanowi wygodne rozwiązanie dla bardziej zaawansowanych aplikacji. Terminologia: VamsterL© - sterownik na szynę DIN, jedna z odmian Vamstera klasy N VamgrafN©- aplikacja do graficznego tworzenia programów dla Vamsterów VamLoaderN© – dodatkowa aplikacja pozwalająca ładować do Vamstera wygenerowane przez VamgrafN i zapisane w wersji binarnej. Vamond© - producent VamsteraL, VamgrafaN i VamLoaderaN programy Wszelkie nazwy i symbole procesorów, programów, systemów i firm, nie będące własnością firmy Vamond, zostały użyte wyłącznie w celach identyfikacyjnych i informacyjnych. Bez pisemnej zgody firmy Vamond żadna część tego dokumentu nie może być publikowana, cytowana i kopiowana w celach komercyjnych. Właścicielem nazw: VamgrafN, Vamster, VamLoaderN oraz poniższego znaku graficznego jest firma Vamond. Dodatkowe informacje dostępne są na stronie firmy Vamond www.vamond.pl Tam również można pobrać dodatkową dokumentację i przykłady oraz nowe wersje VamgrafaN. Wszelkie uwagi prosimy zgłaszać za pośrednictwem e-mali na adres: [email protected] Vamond 31-617 Kraków os. Złotego Wieku 29/30 www.vamond.pl [email protected] Strona: 2 2. Opis VamsteraL VamsterL jest jedną z odmian sprzętowych Vamsterów klasy N (z komunikacją po RS-232). Zaprojektowano go z myślą o zabudowie na szynie DIN. Na etapie produkcji został wyposażony w bootloader i system obsługujący programy tworzone w VamgrafieN. Przeznaczeniem VamsteraL jest działanie jako samodzielny sterownik realizujący programu zaprojektowany przez użytkownika w VamgrafieN. Wyposażony w dużą ilość wejść / wyjść oraz możliwość sterowania zewnętrznymi ekspanderami we/wy stanowi wygodne rozwiązanie dla bardziej skomplikowanych aplikacji. Zasada działania VamsteraL jest identyczna jak pozostałych Vamsterów i została dokładnie opisana w dokumentacji Vamgrafa. 2.1. Podstawowe cechy VamsteraL • • • • • • • • • • • • duży, czytelny wyświetlacz LCD (4x20 znaków) z podświetlaniem obsługa zewnętrznej klawiatury 4-przyciskowej 8 wejść cyfrowych TTL (0-5V) 8 wyjść cyfrowych (mogą pracować jako wyjścia cyfrowe lub PWM) z buforem ULN 2 wejścia czujników temperatury DS18B20 obsługa odbiornika podczerwieni (36kHz – standard RC5, Sony, Hitachi) wbudowany sprzętowy zegar RTC z buforowanym zasilaniem obsługa buzzera (generowanie komunikatów dźwiękowych) obsługa RS232 (do programowania i komunikacji) przy tworzeniu programu na PC szeroki wybór gotowych elementów VamgrafaN do programowania nie wymaga osobnego programatora ładownie programów odbywa się za pośrednictwem łącza RS232. Można również stosować ogólnodostępne konwertery USB-RS232. Strona: 3 2.2. Bootloader i ładowanie programu VamsterL na etapie produkcji został wyposażony w bootloader, czyli specjalny program umożliwiający przesłanie plików (programów) do Vamstera bez korzystania z zewnętrznych programatorów. W trakcie ładowania programów (plików) do Vamstera zapewniona jest kontrola ewentualnych błędów transmisji (sumy CRC etc.). Narzędziem do tworzenia programów dla VamsteraL jest VamgrafN (również produkcji Vamond). Programy stworzone w Vamgrafie mają swój własny format i zawartość. Tworzą plik z rozszerzeniem ".vgr" Dodatkowo pliki programu mogą zostać zapisywane do plików o rozszerzeniu ".vmb" a takie pliki (programy) można transmitować do Vamstera przy pomocy VamLoaderaN. VamLoaderN jest niezależnym, dodatkowym narzędziem umożliwiającym wygodne przesłanie programów zapisanych w plikach ".vmb" bez konieczności instalacji środowiska VamgrafN. Uwaga! Ponieważ istnieje kilka typów Vamsterów, plik programu tworzonego w VamgrafieN jest przeznaczony tylko dla jednego z nich. W przypadku jeżeli program ładowany do Vamstera nie jest przeznaczony dla podłączonego typu Vamstera, aplikacje VamgrafN lub VamLoaderN zgłoszą komunikat: Program nie jest przeznaczony dla podłączonego Vamstera. Program nie może być załadowany. Ładowanie programu jest przerywane. Strona: 4 3. Zagadnienia programowe Działanie VamsteraL VamsterL nie odbiega w swoim działaniu od innych Vamsterów klasy N (z komunikacją po RS-232). Dokładnie zostało to opisane w dokumentacji VamgrafaN. 3.1. Start VamsteraL Po włączeniu zasilania (lub resecie) wszystkie piny wejść Vamstera znajdują się w stanie wysokiej impedancji, wyjścia ustawiane są w stan nieaktywny. VamsterL uruchamia bootloadera, który próbuje porozumieć się z programem ładującym. Jeżeli program ładujący nie jest aktywny VamsterL uruchomia program użytkownika (jeżeli nie załadowano takiego programu lub program nie został załadowany poprawnie, wykonywany jest reset i cały cykl rozpoczyna się od nowa) Następnie Vamster wykonuje kolejno (po zakończeniu działania bootloadera): • odczytuje konfigurację programu (używane wejścia, wyjścia itp.) • wyjścia ustawiane są w stan nieaktywny (dla wyjść cyfrowych niski (L) stan logiczny, dla PWM wypełnienie = 0, dla wyjść RS: liczbowe = 0, binarne = L). • zeruje swoje wewnętrzne zmienne w tym datę i czas systemową • odczytuje wyliczone wcześniej w VamgrafieN początkowe wartości wszystkich zmiennych programu • generuje zdarzenie "Start systemu" o wysokiej (H) wartości logicznej (o ile jest używane w programie) a następnie je przetwarza • uruchamia timery, zegary, generatory oraz wyświetlacz • jeżeli używany jest moduł sprzętowego zegara RTC generuje zdarzenia (o ile są używane w programie) dla daty i czasu systemowego o wartościach odczytanych z modułu RTC a następnie przetwarza te zdarzenia. • ustawiane są napięcia na wyjściach w stan wynikający z działania programu. • przechodzi do normalnego trybu pracy 3.2. Normalny tryb pracy systemu VamsteraL W trakcie normalnej pracy VamsterL wykonuje cyklicznie: 1. odczyt stanu wejść sprzętowych i sprawdzenie ich wartości z buforami wejść. Jeżeli wartości te są różne to system wprowadza nowe wartości do kolejki zdarzeń i uaktualnia bufory wejściowe. 2. odczyt jednego zdarzenia z kolejki i wykonanie przypisanych do niego akcji programu. Wynik tych działań wpisywany jest do buforów wyjściowych tzn. nie od razu są ustawiane wyjścia sprzętowe. W trakcie obsługi jednego zdarzenia do kolejki zdarzeń mogą zostać wprowadzone nowe zdarzenia (np. pochodzące z zegara RTC). 3. po zakończeniu obsługi zdarzenia wartości buforów są przepisywane do wyjść sprzętowych i są one ustawiane są w stan wynikający z działania programu. 4. powrót do kroku 1 Uwaga! Przy pewnych elementach programu (np. wyświetlaczach) dane wyjściowe nie są buforowane, ale ustawiają wyjścia sprzętowe natychmiast, w trakcie obsługi zdarzenia. Strona: 5 4. Zagadnienia sprzętowe VamsterL wyposażony został w duży, czytelny wyświetlacz alfanumeryczny LCD 4x20 znaków oraz złącze do podłączenia czterech zewnętrznych przycisków klawiatury. Sygnały oraz zasilanie sterownika wyprowadzono na rozłączne gniazda stykowe które podzielono funkcjonalnie na kilka grup. Rozkład i przeznaczenie sygnałów omówiono dokładnie w dalszej części dokumentu. Uwaga! Wyjścia które nie są używane w programie stworzonym w VamgrafieN po starcie systemu ustawiane są w stan nieaktywny i pozostają w takim stanie przez cały czas działania programu. UWAGA! Wszelkie manipulacje przy wejściach i wyjściach (podłączanie, rozłączanie) powinno się odbywać przy wyłączonym zasilaniu Vamstera gdyż grozi to nieodwracalnym uszkodzeniem sprzętu. Strona: 6 Wyprowadzenia sterownika Opis sygnałów 5V 12V GND DS1, DS2 IR WEC1 - WEC8 napięcie do wykorzystania przez użytkownika (max 0,2A) z wewnętrznego stabilizatora. Można wykorzystać np. do zasilania zewnętrznych czujników. napięcie zasilania masa zasilania wejścia czujników temperatury DS18B20 wejście czujnika podczerwieni wejścia cyfrowe WYC1 -WYC8 wyjścia tranzystorowe – wyjście może pracować alternatywnie jako wyjście (PWMP1-PWMP8) cyfrowe WYC lub jako wyjście programowego PWM. WYC9 - WYC16 wyjścia cyfrowe - zwierne styki przekaźnika RxD TxD Strona: 7 złącze transmisji szeregowej RS232 RxD – dane do sterownika TxD – dane transmitowane z sterownika 4.1. Zasilanie VamsterL musi być zasilany stabilizowanym napięciem 9-12V. Pobór prądu jest zależny od rodzaju i ilości urządzeń jakie są podłączone do wejść i wyjść. Maksymalny prąd jakiego może potrzebować samodzielnie VamsterL nie przekracza 300mA. Dodatkowo, należy zapewnić wystarczającą wydajność zasilania dla peryferii (np. zewnętrznych przekaźników). Zwykle wystarczający jest zasilacz o wydajności 1 A. parametr wartość Stałe napięcie stabilizowane 9 - 12V Maksymalny pobór prądu 0,3A (włączone podświetlenie LCD) 0,1A (wyłączone podświetlenie LCD) Zaleca się stosowanie zewnętrznego bezpiecznika pomiędzy zasilaczem a sterownikiem. Dobór bezpiecznika należy przeprowadzić z uwzględnieniem spodziewanego poboru prądu przez sterownik oraz urządzenia podłączone do jego zacisków. Strona: 8 4.2. Wejścia 4.2.1. Klawiatura 4 - przyciskowa Sterownik posiada wejście do podłączenia opcjonalnych zewnętrznych przycisków klawiatury. Jako przełączniki należy stosowac przyciski monostabilne (chwilowe). 4.2.2. Wejścia cyfrowe Sterownik posiada 8 wejść cyfrowych z rezystorem podciągajacym. Wejścia te mogą służyć do podłączenia dodatkowych, zewnętrznych przełączników lub przycisków. Wejścia pracują zgodnie z logiką ujemną – zwarcie wejścia do masy interpretowane jest jako wysoki (H) stan logiczny w Vamgrafie. parametr Liczba wejść Nominalne napięcie pracy Separacja galwaniczna Strona: 9 wartość 8 0 - 5V Nie Logika ujemna Minimalne napięcie interpretowane jako stan wysoki < 0,5V 4.2.3. Wejścia czujnika temperatury DS18B20 Czujniki podłącza się bezpośrednio do sterownika zgodnie z rysunkiem poniżej. VamsterL obsługuje maksymalnie dwa czujniki DS18B20 (wejście czujnika DS2 jest współdzielone z odbiornikiem podczerwieni IR). Maksymalna długość przewodów przy pomocy których można podłączyć czujnik DS18B20 jest zgodna ze specyfikacją 1Wire i może wynosić nawet kilkaset metrów. W przypadku dużych odległości połączenia należy wykonać nieekranowaną skrętką. Więcej informacji zawartych jest w specyfikacji 1Wire. Uwaga! W przypadku długich przewodów połączeniowych zaleca się zastosować zabezpieczenie wejścia czujnika temperatury przed przepięciami. parametr wartość Liczba wejść 2 Zakres pracy -85 ... +125oC (zgodny z dokumentacją DS18B20) Separacja galwaniczna Dokładność Nie ok 2% 4.2.4. Wejście odbiornika podczerwieni Jako odbiornik podczerwieni można zastosować scalony odbiornik o częstotliwości 36kHz np. TSOP4836. Wejście podczerwieni jest używane alternatywnie z wejściem czujnika temperatury DS_2. Strona: 10 4.3. Wyjścia Bezpośrednio po starcie systemu wyjścia VamsteraL ustawiane są w stan nieaktywny. Następnie odczytywana jest konfiguracja i Vamster ustawia wyjścia w stan wynikający z logiki programu. Takie działanie ma przeciwdziałać pojawieniu się przypadkowych stanów wyjść przy starcie programu. Stan nieaktywny wyjść tranzystorowych WYC1-WYC to otwarty tranzystor czyli stan wysokiej impedancji pomiędzy WYC a masą GND Wyjścia PWM generują na pinie wyjściowym ciąg impulsów o zmiennej wartości wypełnienia. Wartość 0 podana na element PWM w programie VamgrafaN przekładana jest na zerowe (0) wypełnienie impulsu – co oznacza brak impulsów na wyjściu, a wartość 127 przekładana jest na 100% wypełnienie impulsu (wszystkie impulsy są wypełnione w 100%). Z kolei podanie wartości np. 1 oznacza generowanie na wyjściu impulsów o czasie 1/127 pełnego okresu. Uwaga! Wyjścia które nie są używane w programie stworzonym w VamgrafieN po starcie systemu ustawiane są w stan nieaktywny i pozostają w takim stanie przez cały czas działania programu. Strona: 11 4.3.1. Wyjścia tranzystorowe – wyjścia cyfrowe lub PWM Sterownik posiada 8 wyjść WYC1-WYC8 (PWMP1-PWMP8) wyposażonych w bufor ULN2003. Wyjścia mogą pełnić alternatywną funkcje jako wyjścia cyfrowe lub wyjścia programowych PWM, w zależności od tego które z elementów wyjściowych zostały wybrane w programie tworzonym w Vamgrafie. Np. użycie w programie wyjścia cyfrowego 1 (WYC1) automatycznie blokuje używanie wyjścia PWM 1 (PWMP1) ponieważ występują one alternatywnie na tym samym pinie VamsteraC. Na wyjściach PWMP1..PWMP8 programowo generowany jest przebieg prostokątny o zmiennym wypełnieniu (sterowany w zakresie od 0 do 127). Częstotliwość sygnału wynosi ok. 100 Hz. W większości przypadków (np. diod LED) filtrowanie sygnału wyjściowego jest zbędne. Aby uzyskać napięcie stałe, wygładzone, o wartości zależnej od wypełnienia należy zastosować filtr RC lub inny filtr aktywny. Przykład wykorzystania wyjść z ULN2003. parametr Liczba wyjść 8 Polaryzacja NPN Separacja galwaniczna Nie Prąd wyjściowy Strona: 12 wartość max 0,5A 4.4. Łącze RS-232 Do programowania VamsteraL wykorzystywane jest łącze w standardzie RS-232. W przypadku braku złącza RS232 w komputerze można używać popularnych konwerterów USB/RS232. złącze transmisji szeregowej RS232 12V - zasilanie TxD - dane transmitowane z sterownika RxD - dane do sterownika GND - masa Wymiana danych z drugim Vamsterem wymaga skrzyżowania lini TXD i RXD sterowników. Zasilanie autonomiczne sterowników Strona: 13 Zasilanie sterownika 2 za pośrednictwem sterownika 1 5. Sposób tworzenia urządzenia z wykorzystaniem VamsteraL • utworzyć pogram w VamgrafieN wybierając jako typ Vamstera – VamsterL • przetestować program na PC przy użyciu wbudowanego symulatora • sprawdzić poprawność połączeń elektrycznych (w szczególności sprawdzając napięcie zasilania 12V) oraz czy nie ma zwarć lub przerw w połączeniach • przetestować program z użyciem VamgrafaN w trybie testów w Vamsterze • załadować program w wersji końcowej do VamsteraL • urządzenie jest gotowe do samodzielnej pracy 6. Ustawienia VamsteraL w Vamgrafie Grupa "Data i czas": „Użycie czasu letniego/zimowego” - zaznaczenie tej opcji powoduje automatyczną zmianę czasu z letniego na zimowy i odwrotnie. Grupa "Wspólne wejście IR i DS1820": zaznaczenie „Pomiar temperatury” lub „Odbiornik IR” skutkuje wyborem przeznaczenia wejścia IR / DS2. "Typ kodu IR" - wybór rodzaju kodu jaki będzie odbierany przez odbiornik podczerwieni. Zaznaczenie opcji „Dźwięk po naciśnięciu klawisza” spowoduje wygenerowanie krótkiego dźwięku po każdym naciśnięciu przycisku. Zaznaczenie opcji „Sygnał dźwiękowy po resecie” powoduje, że Vamster po każdym resecie zgłosi swoją gotowość do działania poprzez krótki sygnał dźwiękowy. Strona: 14 7. Wymiary mechaniczne Strona: 15 Spis treści 1. Wstęp.......................................................................................................2 2. Opis VamsteraL......................................................................................3 2.1. Podstawowe cechy VamsteraL..................................................................................................3 2.2. Bootloader i ładowanie programu.............................................................................................4 3. Zagadnienia programowe......................................................................5 Działanie VamsteraL........................................................................................................................5 3.1. Start VamsteraL.........................................................................................................................5 3.2. Normalny tryb pracy systemu VamsteraL.................................................................................5 4. Zagadnienia sprzętowe...........................................................................6 Wyprowadzenia sterownika.............................................................................................................7 4.1. Zasilanie ....................................................................................................................................8 4.2. Wejścia......................................................................................................................................9 4.2.1. Klawiatura 4 - przyciskowa................................................................................................9 4.2.2. Wejścia cyfrowe.................................................................................................................9 4.2.3. Wejścia czujnika temperatury DS18B20..........................................................................10 4.2.4. Wejście odbiornika podczerwieni....................................................................................10 4.3. Wyjścia....................................................................................................................................11 4.3.1. Wyjścia tranzystorowe – wyjścia cyfrowe lub PWM......................................................12 4.4. Łącze RS-232..........................................................................................................................13 5. Sposób tworzenia urządzenia z wykorzystaniem VamsteraL..........14 6. Ustawienia VamsteraL w Vamgrafie..................................................14 7. Wymiary mechaniczne.........................................................................15 os. Złotego Wieku 29/30 31-617 Kraków www.vamond.pl [email protected] Strona: 16