Mam problem z napisaniem programu w LabVIEW, który będzie wysyłał przez ramkę sygnał do użąrzenia ADT4U, zczytywał dane z tego wzmacniacza i będzie wyświetlał je na grafie lub zapisywał w jakieś tabeli. Pierwszy raz spotkałem się z programem LabVIEW i nie bardzo wiem jak mam wysłać ramkę danych do urządzenia ADT4U a by odczytać wartości. Zakupiłem też Książkę LabVIEW dla studentów, w której połączenie przez RS-232 nie zostało opracowane . Korzystam z LabVIEW 2009. Po tygodniu prób i błędów stwierdziłem, że sam sobie z tym nie poradzę.
Wyjście cyfrowe
ADT4U Może pracować z dowolna aplikacja użytkownika obsługująca łącze
szeregowe, gdy_ korzysta z wirtualnego portu COM (dla wersji RS232 z rzeczywistego portu
COM) tworzonego przy instalowaniu sterowników. Po stronie aplikacji połączenie jest
widziane jako zwykłe połączenie szeregowe.
Parametry transmisji:
Prędkość transmisji: 57600bps
Bity danych: 8
Bity stopu: 1
Parzystość: brak
Time out: 3ms
By odczytać aktualna wartość pomiaru należy wysłać następującą ramkę danych (podane
wartości w systemie heksadecymalnym):
0x24 | 0x79 | WE_ID | 0x00 | 0x00 | 0x00 | 0x00 | WE_ID
Wskaźnik odpowie odsyłając następującą ramkę:
0x24 | 0x79 | WE_ID | Data1 | Data2 | Data3 | Data4 | CS
gdzie: Data1…Data4 – 4 kolejne bajty wyniku zapisane jako liczba typu signed long (wartość 4 - bajtowa ze znakiem). Przy czym Data1 – bajt najmłodszy. Otrzymana wartość jestprzemnożona przez 1000.
WE_ID = 0x33 – wartosc sumaryczna wybranych kanałów
WE_ID = 0x34 – wartosc kanału 1 WE_ID = 0x35 – wartosc kanału 2
WE_ID = 0x36 – wartosc kanału 3 WE_ID = 0x37 – wartosc kanału 4
CS – suma kontrolna (CS = WE_ID + Data1 + Data2 + Data3 + Data4)
Odczyt można dokonywać z prędkością nie większa niż 80 razy / sekundę.
„Timeout” transmisji wynosi 3ms – odstępy między kolejnymi bajtami rozkazu nie mogą być dłuższe niż3ms. W przeciwnym wypadku urządzenie nie zinterpretuje komendy.
Pozdrawiam Rafał Chmiela
Połączenie RS-232 z urządzeniem ADT4U
Połączenie RS-232 z urządzeniem ADT4U
- Załączniki
-
- proba2.vi
- (17.57 KiB) Pobrany 371 razy
Połączenie RS-232 z urządzeniem ADT4U
w takim razie:
1. masz zla predkosc transmisji
2. wysylasz zle polecenie, moja sugestia to ustaw sobie wyswietlanie stringa w postaci hexow i tam poprostu wpisz swoja komende zamiast 1 tak jak jest teraz
3. timeout pomiedzy wyslaniem a odebraniem 500ms moze byc za duzy choc nie wiem czy to moze miec jakies znaczenie
1. masz zla predkosc transmisji
2. wysylasz zle polecenie, moja sugestia to ustaw sobie wyswietlanie stringa w postaci hexow i tam poprostu wpisz swoja komende zamiast 1 tak jak jest teraz
3. timeout pomiedzy wyslaniem a odebraniem 500ms moze byc za duzy choc nie wiem czy to moze miec jakies znaczenie
-
- Posty: 109
- Rejestracja: 26 lut 2010 13:41
- Wersja środowiska: LabVIEW 2010
- Lokalizacja: Bydgoszcz
Re: Połączenie RS-232 z urządzeniem ADT4U
Na szybko poprawiłem twój vi. Porównaj, sprawdź i wyciągnij wnioski
- Załączniki
-
- proba3.vi
- (19.97 KiB) Pobrany 387 razy
-
- Posty: 109
- Rejestracja: 26 lut 2010 13:41
- Wersja środowiska: LabVIEW 2010
- Lokalizacja: Bydgoszcz
Re: Połączenie RS-232 z urządzeniem ADT4U
Przesyłam dla LV 2009 jaka prosiłeś.
- Załączniki
-
- proba3.vi
- dla LV 2009
- (14.6 KiB) Pobrany 373 razy