Strona 1 z 1

Komunikacja z Metexem 4640A

: 16 lis 2009 16:48
autor: fajfi
Cześć,
Znowu mam problem z komunikacją z urządzeniem pomiarowym. Tym razem chodzi o Metex 4640A.
Nie jest tak zupełnie beznadziejnie, ale jak zwykle diabeł tkwi w szczegółach.
W zasadzie udało mi się nawiązać komunikację i dostać poprawne odczyty, ale co jakiś czas wyskakują "śmieci".
Zamieszczam zrzut ekranu programu.
W dokumentacji wyczytałem, że multimetr wysyła na wyjście 4 ramki 14 bajtowe.
Oraz podają przykładowy kod w basicu:

10 OPEN "COM 1:9600, N, 7, 2, RS, CS, DS, CD" AS #2
20 PRINT #2, "D"
30 IN$=INPUT$(4*14,#2)
40 PRINT IN$
50 CLOSE #2

Przyznaję bez bicia, że nie wiem jak zrealizować w LV odczyt czterech ramek i nie wiem czy to tu tkwi błąd.
A tak wyglądają przykładowe odczyty w okienku "read buffer":
(Jak widać niektóre odczyty są prawidłowe, inne niekoniecznie)
DC-000.11 mV
-000.11
` -000.11
` -000.12

DC-00pn11``mV
``-0ppn11`` M mp00nqq ``
`mp00nq1 ```

DCm000n11 `mV
` -pp0.1q` `M `m00pn11 ``
`m000nq1 ``

DCm000n11 `mV
`m00pn11```
mpp0.qq ``M mp00nqq ``

DC-pp0.1q mVM `m000n11 ``
-pp0.qq `M` -pp0.1q` `M
DCmp00.q1 mV
` -0p0.1q` `M `m00pn11 ``
` -pp0.qq` `M
DC-000.11 mV
-000.11
-000.11
-000.11

Czy ktoś ma pomysł, gdzie może leżeć błąd?
Pozdrawiam
Fajfi

P.S. Poprawiam ewidentny błąd rysunku zauważony przez Folona.

Komunikacja z Metexem 4640A

: 16 lis 2009 18:20
autor: folon
Na pierwszy rzut oka: kod z Basica -> prędkość transmisji: 9600B/s, u Ciebie 600B/s

Re: Komunikacja z Metexem 4640A

: 16 lis 2009 19:52
autor: fajfi
To z pewnością nie to.
Testowałem miernik na pewno na prędkości 9600.
Musiałem wkleić starszą wersję, którą miałem na komputerze, z którego wysyłałem maila.
Taka śmieszna "literówka".
Moim zdaniem, to coś z "wielkością" ramki - niestety nie wiem co.
Pozdrawiam
Fajfi

Komunikacja z Metexem 4640A

: 16 lis 2009 20:45
autor: bartus
Moze cos Ci sieje po kablu?

Re: Komunikacja z Metexem 4640A

: 17 lis 2009 21:29
autor: fajfi
bartus pisze:Moze cos Ci sieje po kablu?
Cóż, zawsze jest taka możliwość, ale jak to sprawdzić w sposób jednoznaczny?
Wyniki jakie wskazuje multimetr na wyświetlaczu są prawidłowe.
Może to coś z synchronizacją?
Multimetr czyta co 0,5 s - w przytoczonym programie odczyt następuje co ok. 1,5 s.
Próbowałem odczytu również przy 0,5 s., ale nadal wyskakują błędy.
Sprawdziłem, że ramka danych istotnie jest "poczwórna".
Wygląda następująco:
0 1 2 3 4 5 6 7 8 9 A B C D
DC - 0 1 9 . 6 9 m V CR 1. ramka
- 0 1 9 . 6 9 CR 2. ramka
- 0 1 9 . 7 0 CR 3. ramka
- 0 1 9 . 7 0 CR 4. ramka

Co ciekawe tylko w pierwszej występują oznaczenia funkcji pomiarowej i jednostki pomiarowej.
Jak już pisałem zamiast tego często otrzymuję na wyjściu następujący string lub podobny:

DC`p19nvx mV
``p1ynv8 ```
```0qyn68``` M ``p19nvy ```

Pozdrawiam
Fajfi

Re: Komunikacja z Metexem 4640A

: 18 lis 2009 10:26
autor: vugie
Podłącz się najpierw przez terminal (polecam Realterm) i sprawdź co tam faktycznie przychodzi.

Re: Komunikacja z Metexem 4640A

: 18 sty 2010 21:43
autor: rufio
Zrób flush buffer. Powinno zadziałać. Zresztą w programie do BM-859CF zobaczysz :D

http://hoth.amu.edu.pl/~k_hausmann/wp/b ... reader.zip

Re: Komunikacja z Metexem 4640A

: 19 sty 2010 17:35
autor: fajfi
Cześć,
dziękuję za odpowiedź.
Akurat Metexa już się pozbyliśmy i na jego miejsce wzięliśmy właśnie UT70D wspomnianego w innym wątku.
Właśnie testuję podany przez Ciebie program, ale żeby nie robić zamieszania na forum, moje wrażenia opiszę jutro w wątku poświęconym UT70D.
Pozdrawiam
Fajfi