problemy z multimetrem UNI-T Model UT60E przez RS232C

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
Awatar użytkownika
fajfi
Posty: 185
Rejestracja: 28 sty 2004 00:00
Wersja środowiska: LabVIEW 2010
Lokalizacja: Wrocław

problemy z multimetrem UNI-T Model UT60E przez RS232C

Post autor: fajfi »

Dzień dobry.
Od jakiegoś czasu nie mogę sobie poradzić z komunikacją przez RS z multimetrem UNI-T, model UT60E.
Napisałem poniższy programik, wydaje się, że port szeregowy inicjowany jest prawidłowo, nie pojawia się żaden błąd, ale niestety w polu "buffer string" nie pojawia się żaden komunikat. Nie mam pojęcia co się dzieje, może coś pomijam?
A oto dane multimetru:

Baud rate 2400
Start bit 1 (always 0)
Stop bit 1 (always 1)
Data bits 7
Parity Odd

Dodatkowo

D-sub 9 Pin Female;
Pin Name
2;

RX
3;

TX
4;

DTR
5;

GND
6;

DSR
7;

RTS
8;

CTS

Czy ktoś zetknął się już z podobnym problemem? Ewentualnie co robię źle, albo co pominąłem?
Pozdrawiam
Łukasz
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: problemy z multimetrem UNI-T Model UT60E przez RS232C

Post autor: jogurt_owocowy »

Co to za pole "buffer string"? Co powinien odesłać przyrząd w odpowiedzi na "D"? Ja bym to uznał za spam ;)
Podaj link do dokumentacji multimetru.
Awatar użytkownika
rumcajs
Posty: 209
Rejestracja: 17 paź 2004 00:00
Lokalizacja: Aktualnie TRW

Re: problemy z multimetrem UNI-T Model UT60E przez RS232C

Post autor: rumcajs »

Na bazie własnego doświadczenia ja zawsze zaczynam od sprawdzenia komunikacji i łącza, tzn.
Robię kabel połączeniowy z urządzenirm zgodnie z manualen (chyba że mam oryginała)
Odpalam Hyperterminala i wysyłam D, czekam na odpowiedź.
Jeżeli ją dostaję jestem pewien, że
- kabel jest dobry
- ustawienia portu w PC i urządzeniu są OK.
Mogę zacząć pisać progrma w LV.
Co do twojego programu:
Inicjalizacja portu oraz wysłanie "D" do urządzenia poza pętlą while, w pętli while odczyt liczby bajtów w buforze co np. 20ms i w przypadku otrzymania wymaganej liczby bajtów odczyt ich z bufora w case i koniec pętli.
Jeżeli nie znam liczby bajtów do odebrania - kręcę pętlą odbioru danych i sprawdzam ilość danych w buforze w danych odczytuje je zawsze i dodaje za pomocą shift register'a a w przypadku timeoutu wychodzę z pętli.
Potrzebny przykład ? Czy może help i przykłady w LV wystarczą?
Rumcajs.
darekc
Posty: 77
Rejestracja: 29 mar 2007 00:00
Lokalizacja: Gliwice

problemy z multimetrem UNI-T Model UT60E przez RS232C

Post autor: darekc »

Awatar użytkownika
fajfi
Posty: 185
Rejestracja: 28 sty 2004 00:00
Wersja środowiska: LabVIEW 2010
Lokalizacja: Wrocław

Re: problemy z multimetrem UNI-T Model UT60E przez RS232C

Post autor: fajfi »

Dziękuję za odpowiedzi.
Niestety przyznaję ze wstydem, że popełniłem podstawowy błąd.
Okazało się, że po prostu kabel do transmisji danych jest uszkodzony.
Zatem przepraszam za spowodowanie zamieszania.
Łukasz
Awatar użytkownika
rumcajs
Posty: 209
Rejestracja: 17 paź 2004 00:00
Lokalizacja: Aktualnie TRW

Re: problemy z multimetrem UNI-T Model UT60E przez RS232C

Post autor: rumcajs »

Niestety komunikacja z miernikiem jest bardziej skomplikowana.
Nie jest to zwykłe wysyłanie znaków ASCII ale wysyłanie ciągu bitów, które należy odebrać i zinterpretować czyli jednym słowem napisać coś w rodzaju drivera pod LV.
Więcej info na:
elektroda forum
Program firmowy do komujnikacji i manual można ściągnąć z strony producenta więc podsyłam tylko opis protokołu komunikacyjnego.
Rumcajs.
ODPOWIEDZ