Sterowanie diodami na sterowniku AVT 3016 przez RS232
Sterowanie diodami na sterowniku AVT 3016 przez RS232
Witam
Zaczne od tego że posiadam szeregowy sterownik urządzeń AVT 3016, na sterowniku tym znajduje się 8 diod.
Mój problem polega na tym że mam napisać taki program w LabView8.5 aby można było przy jego pomocy sterować włączaniem i wyłączaniem 4 diod, każdej z osobna, które znajdują sie na tym sterowniku. Z tego co się dowiedzialem, przeglądając forum, będe musiał skorzystać z bloczków visa, tylko za bardzo nie wiem jak to zrobić. Sterownik do komputera połączony jest przez RS232.
Jak można się domyslec jestem początkującym użytkownikiem labview
i dlatego prosze o wszelką pomoc w rozwiązaniu tego problemu.
Pozdrawiam
Zaczne od tego że posiadam szeregowy sterownik urządzeń AVT 3016, na sterowniku tym znajduje się 8 diod.
Mój problem polega na tym że mam napisać taki program w LabView8.5 aby można było przy jego pomocy sterować włączaniem i wyłączaniem 4 diod, każdej z osobna, które znajdują sie na tym sterowniku. Z tego co się dowiedzialem, przeglądając forum, będe musiał skorzystać z bloczków visa, tylko za bardzo nie wiem jak to zrobić. Sterownik do komputera połączony jest przez RS232.
Jak można się domyslec jestem początkującym użytkownikiem labview
i dlatego prosze o wszelką pomoc w rozwiązaniu tego problemu.
Pozdrawiam
- Nowszy
- Posty: 504
- Rejestracja: 30 maja 2008 08:33
- Wersja środowiska: LabVIEW 2011
- Lokalizacja: Katowice
- Kontakt:
Sterowanie diodami na sterowniku AVT 3016 przez RS232
Najpierw musisz się dowiedzieć (np z dokumentacji sterownika) jak steruje się tymi diodami. Innymi słowy: jakie komendy trzeba wysłać po RS232. Następnie sprawdź jakie są domyślne parametry transmisji dla tego urządzenia. Na koniec w LabVIEW wybierz Help>>Find Examples i wyszukaj Basic Serial Read and Write i złóż to wszystko do kupy
Pozdrawiam, Maciek Antonik
Edu4Industry
Edu4Industry
Re: Sterowanie diodami na sterowniku AVT 3016 przez RS232
Witam
Zrobiłem tak jak mi radziłeś Nowszy i znalazlem informacje dotyczące sterowania tymi diodami, i wyglada to tak że(cytat z artykułu):
"Wyjścia od P1.2 do P1.7 oraz P3.2 -P3.3 sterują tranzystorami T1-T8, które z kolei układami wykonawczymi w postaci przekaźników. Diody D1-D8 sygnalizują stan przekaźników.."
Komendy przyjmowane przez sterownik są następujące:
urz:1 2 3 4 (tylko tyle potrzebuje)
on :1 3 5 7
off :0 2 4 6
Więc mam pytanie co z czym mam połączyć w przykłądzie Basic Serial Read and Write aby to działało??
Pozdrawiam
Zrobiłem tak jak mi radziłeś Nowszy i znalazlem informacje dotyczące sterowania tymi diodami, i wyglada to tak że(cytat z artykułu):
"Wyjścia od P1.2 do P1.7 oraz P3.2 -P3.3 sterują tranzystorami T1-T8, które z kolei układami wykonawczymi w postaci przekaźników. Diody D1-D8 sygnalizują stan przekaźników.."
Komendy przyjmowane przez sterownik są następujące:
urz:1 2 3 4 (tylko tyle potrzebuje)
on :1 3 5 7
off :0 2 4 6
Więc mam pytanie co z czym mam połączyć w przykłądzie Basic Serial Read and Write aby to działało??
Pozdrawiam
- Nowszy
- Posty: 504
- Rejestracja: 30 maja 2008 08:33
- Wersja środowiska: LabVIEW 2011
- Lokalizacja: Katowice
- Kontakt:
Sterowanie diodami na sterowniku AVT 3016 przez RS232
Po pierwsze musisz podłączyć kabel szeregowy z kompa do portu COM na tym sterowniku. Nie napisałeś jakie są domyślne parametry trabsmisji sterownika - w przykładzie po lewej stronie masz listę wszystkiego, co musisz wiedzieć (jak nie wiesz to zostaw jak jest i spróbuj). Wybierz tylko prawidłowy port COM w kompie - ten, do którego podłączyłeś urządzenie. Znów - jeśli nie wiesz który to, to spróbuj po kolei każdy COM.
Teraz w przykładzie przełącz wajchę 'read' na pozycję OFF i w pole komendy wpisz jedną z komend. Dobrze byłoby, gdybyś wcześniej mógł przetestować komunikację - poszperaj w dokumentacji sterownika, na pewno ma jakieś komendy kontrolne, na które odpowiada - wtedy możesz sprawdzić komunikację.
Teraz w przykładzie przełącz wajchę 'read' na pozycję OFF i w pole komendy wpisz jedną z komend. Dobrze byłoby, gdybyś wcześniej mógł przetestować komunikację - poszperaj w dokumentacji sterownika, na pewno ma jakieś komendy kontrolne, na które odpowiada - wtedy możesz sprawdzić komunikację.
Pozdrawiam, Maciek Antonik
Edu4Industry
Edu4Industry
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Sterowanie diodami na sterowniku AVT 3016 przez RS232
Hej,
Dobrze byłoby jakbyś zamieścił tutaj dokumentację do tego sterownika, link do artykułu, który cytujesz itp. Pomóż sobie pomóc.
Po ściągnięciu gotowego (i w założeniu działającego) programu do sterowania tym sterownikiem stąd, poklikaniu guzikami do włączania/wyłączania diod i przeanalizowaniu danych zapisywanych do portu podczas klikania (za pomocą np. tego programu) można stwierdzić, że sterownik przyjmuje następujące komendy:
Kolumna LED to numer diody, kolumna ON to dwubajtowa komenda, jaką należy wysłać do sterownika, żeby zapalić diodę o danym numerze, a kolumna OFF - komenda, jaką należy wysłać, żeby ją zgasić.
Teraz otwórz wspomniany przez Nowszego przykład (Help -> Find Examples... -> Hardware Input and Output -> Basic Serial Write and Read.vi) i zmodyfikuj jego diagram, tak jak pokazuje obrazek poniżej.
Przejdź na panel, kliknij prawym na kontrolce wewnątrz utworzonej tablicy command, z menu kontekstowego wybierz Format & Precision... i ustaw format jako heksadecymalny.
Teraz ustaw na panelu parametry połączenia (baud rate, data bits, etc.) i spróbuj wysłać do sterownika na przykład komendę, która zapali diodę nr 5, czyli wg tabelki - 39 0D (rys.).
Daj znać czy się udało.
PS. Zaraz po uruchomieniu tego gotowego programu do sterownika, wysyła on dwa bajty wyglądające na jakąś komendę kontrolną - 73 0D Jakby nie działało, to spróbuj ją wysłać najpierw.
Dobrze byłoby jakbyś zamieścił tutaj dokumentację do tego sterownika, link do artykułu, który cytujesz itp. Pomóż sobie pomóc.
Po ściągnięciu gotowego (i w założeniu działającego) programu do sterowania tym sterownikiem stąd, poklikaniu guzikami do włączania/wyłączania diod i przeanalizowaniu danych zapisywanych do portu podczas klikania (za pomocą np. tego programu) można stwierdzić, że sterownik przyjmuje następujące komendy:
Kod: Zaznacz cały
LED | ON | OFF
---- ------- -------
1 | 31 0D | 30 0D
2 | 33 0D | 32 0D
3 | 35 0D | 34 0D
4 | 37 0D | 36 0D
5 | 39 0D | 38 0D
6 | 62 0D | 61 0D
7 | 64 0D | 63 0D
8 | 66 0D | 65 0D
Teraz otwórz wspomniany przez Nowszego przykład (Help -> Find Examples... -> Hardware Input and Output -> Basic Serial Write and Read.vi) i zmodyfikuj jego diagram, tak jak pokazuje obrazek poniżej.
Przejdź na panel, kliknij prawym na kontrolce wewnątrz utworzonej tablicy command, z menu kontekstowego wybierz Format & Precision... i ustaw format jako heksadecymalny.
Teraz ustaw na panelu parametry połączenia (baud rate, data bits, etc.) i spróbuj wysłać do sterownika na przykład komendę, która zapali diodę nr 5, czyli wg tabelki - 39 0D (rys.).
Daj znać czy się udało.
PS. Zaraz po uruchomieniu tego gotowego programu do sterownika, wysyła on dwa bajty wyglądające na jakąś komendę kontrolną - 73 0D Jakby nie działało, to spróbuj ją wysłać najpierw.
Ostatnio zmieniony 29 paź 2009 10:31 przez jogurt_owocowy, łącznie zmieniany 5 razy.
Re: Sterowanie diodami na sterowniku AVT 3016 przez RS232
Witam
Wielkie dzieki za pomoc, po dokonaniu zmian program działa i diody na sterowniku się wlaczaja i wylaczaja(przyklad w zalaczniku)
Chciałbym się jeszcze zapytać czy istnieje możliwość, aby po włączeniu programu, a przed naciśnięciem przycisku, nie trzeba by było wpisywać komend do wł/wył diod tylko od razu przy użyciu przycisku tego dokonać??
Mam gdzieś te komendy przypisać?? Jeśli tak to gdzie i jak to zrobić??
Pozdrawiam
Wielkie dzieki za pomoc, po dokonaniu zmian program działa i diody na sterowniku się wlaczaja i wylaczaja(przyklad w zalaczniku)
Chciałbym się jeszcze zapytać czy istnieje możliwość, aby po włączeniu programu, a przed naciśnięciem przycisku, nie trzeba by było wpisywać komend do wł/wył diod tylko od razu przy użyciu przycisku tego dokonać??
Mam gdzieś te komendy przypisać?? Jeśli tak to gdzie i jak to zrobić??
Pozdrawiam
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Sterowanie diodami na sterowniku AVT 3016 przez RS232
Trochę przekombinowałeś ] Do wysyłania komendy po naciśnięciu przycisku w zupełności wystarczy jedna pętla.
Popatrz na rysunek: W zależności od tego czy diodka została zapalona czy zgaszona, poza strukturę event wyrzucasz odpowiednią komendę. Ramki dla pozostałych trzech diodek wyglądają tak samo, różnią się tylko zakodowanymi komendami.
Osobny event przechwytuje naciśnięcie przycisku stop zatrzymującego program i wygląda mniej więcej tak. Z punktu widzenia wysyłania danych to bez znaczenia, ale to dobra praktyka.
Do przechwycenia zmiany wartości kontrolki używaj eventu Value Change, a nie Mouse Up.
Pozdrawiam
Popatrz na rysunek: W zależności od tego czy diodka została zapalona czy zgaszona, poza strukturę event wyrzucasz odpowiednią komendę. Ramki dla pozostałych trzech diodek wyglądają tak samo, różnią się tylko zakodowanymi komendami.
Osobny event przechwytuje naciśnięcie przycisku stop zatrzymującego program i wygląda mniej więcej tak. Z punktu widzenia wysyłania danych to bez znaczenia, ale to dobra praktyka.
Do przechwycenia zmiany wartości kontrolki używaj eventu Value Change, a nie Mouse Up.
Pozdrawiam
Re: Sterowanie diodami na sterowniku AVT 3016 przez RS232
Witam
Na początek wielkie dzięki za pomoc z przyciskami. Wiem że troche przekombinowałem ale jak na początek to całkiem nieźle mi poszło napisanie programu:)
A teraz prosze o kolejną pomoc w rozwiązaniu 3 problemów.
Problem 1:
Mam napisany program (przedstawiony na rysunku poniżej) w którym następuje wczytanie z pliku obrazu (przy użyciu przycisku OK Button 3) a następnie dokonane jest pokazanie histogramu z zaznaczonego obszaru obrazu. Problem polega na tym że mogę zdjęcie wczytać tylko raz a chciałbym aby przy każdym naciśnięciu przycisku można było wczytać zdjęcie.
Problem 2:
Mam program w którym mogę obserwować jednocześnie przy użyciu 2 kamer przedmioty. Problem polega na tym że chciałbym móc zapisywać obserwowane przez kamery obrazy (z każdej kamery osobno)
Problem 3:
Zrobiłem program do niewielkiej analizy obrazu. Problem polega na tym że nie wiem jak zrobić zapisywanie zdjęcia wyjściowego po analizie. Program ten został zrobiony przy użyciu Vision Assistant8.0 z którego stworzono program w labview.
DO wczytania obrazu wykorzystane zostanie rozwiązanie znajdujące się w problemie 1 (bo chodzi o to aby zdjęcie wczytane do pokazania histogramu wykorzystać także do analizy) o ile zostanie rozwiązany:).
Wszystkie te programy zostały zrobione w labview 8.5.1 z wykorzystaniem dodatku IMAQ.
Dla niektórych te problemy mogą okazać się łątwe ale dla mnie są to jak narazie problemy nie do przejścia (może są za łatwe i dlatego nie wiem jak sobie z nimi poradzić:).).
Za wszelką pomoc wielkie dzięki.
Pozdrawiam
Na początek wielkie dzięki za pomoc z przyciskami. Wiem że troche przekombinowałem ale jak na początek to całkiem nieźle mi poszło napisanie programu:)
A teraz prosze o kolejną pomoc w rozwiązaniu 3 problemów.
Problem 1:
Mam napisany program (przedstawiony na rysunku poniżej) w którym następuje wczytanie z pliku obrazu (przy użyciu przycisku OK Button 3) a następnie dokonane jest pokazanie histogramu z zaznaczonego obszaru obrazu. Problem polega na tym że mogę zdjęcie wczytać tylko raz a chciałbym aby przy każdym naciśnięciu przycisku można było wczytać zdjęcie.
Problem 2:
Mam program w którym mogę obserwować jednocześnie przy użyciu 2 kamer przedmioty. Problem polega na tym że chciałbym móc zapisywać obserwowane przez kamery obrazy (z każdej kamery osobno)
Problem 3:
Zrobiłem program do niewielkiej analizy obrazu. Problem polega na tym że nie wiem jak zrobić zapisywanie zdjęcia wyjściowego po analizie. Program ten został zrobiony przy użyciu Vision Assistant8.0 z którego stworzono program w labview.
DO wczytania obrazu wykorzystane zostanie rozwiązanie znajdujące się w problemie 1 (bo chodzi o to aby zdjęcie wczytane do pokazania histogramu wykorzystać także do analizy) o ile zostanie rozwiązany:).
Wszystkie te programy zostały zrobione w labview 8.5.1 z wykorzystaniem dodatku IMAQ.
Dla niektórych te problemy mogą okazać się łątwe ale dla mnie są to jak narazie problemy nie do przejścia (może są za łatwe i dlatego nie wiem jak sobie z nimi poradzić:).).
Za wszelką pomoc wielkie dzięki.
Pozdrawiam