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
problemy z multimetrem UNI-T Model UT60E przez RS232C
- 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
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.
Podaj link do dokumentacji multimetru.
Re: problemy z multimetrem UNI-T Model UT60E przez RS232C
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.
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.
- 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
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
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
Re: problemy z multimetrem UNI-T Model UT60E przez RS232C
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.
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.