multimetr MT8145

Wszelkie sprawy związane z LabVIEW i komunikacją ze sprzętem. Problemy i ciekawe rozwiązania.
Mariano
Posty: 5
Rejestracja: 05 maja 2013 00:08
Wersja środowiska: LabVIEW 2009

multimetr MT8145

Post autor: Mariano »

Przyznam szczerze, że jestem zielony z tego programu jeszcze i poruszanie się w nim nie jest płynne w moim wykonaniu. Potrzebuję stworzyć program, który dokona odczytu pomiaru z Multimetru (połączony USB z PC) i będzie go prezentował w postaci liczbowej i graficznej(wykres). Czytałem wiadomości o innych typach multimetrów, ale nie udało mi się zaadaptować tego na potrzeby mojego urządzenia. Proszę o wyrozumiałość i pomoc.
milten
Posty: 77
Rejestracja: 25 paź 2011 20:49
Wersja środowiska: LabVIEW 2012

multimetr MT8145

Post autor: milten »

Musisz wiedzieć, czy dany multimetr używa wirtualnego portu COM (łatwiejsze) czy własnego protokołu komunikacyjnego po USB (trudniejsze). Na szybko poszukałem w googlach, ale nie znalazłem takiej informacji.
Jeżeli to COM, to musisz posiadać jakiś spis poleceń (może dołączona instrukcja).
Jeżeli to jakiś ich protokół, to jedyne co się da zrobić, to poszukać biblioteki DLL do komunikacji z nim.
Obrazek
Mariano
Posty: 5
Rejestracja: 05 maja 2013 00:08
Wersja środowiska: LabVIEW 2009

Re: multimetr MT8145

Post autor: Mariano »

Używa wirtualnego portu COM. W załączniku przesyłam pliki jakie posiadam. Sterownik do niego jest zainstalowany i komputer widzi go.
Załączniki
DMMVIEW_8145B Communication Protocol_1_0.pdf
(36.59 KiB) Pobrany 480 razy
Driver Installation Instruction_1_0.pdf
(19.87 KiB) Pobrany 414 razy
DMMVIEW_8145B Software Users Manual.pdf
(242.53 KiB) Pobrany 441 razy
milten
Posty: 77
Rejestracja: 25 paź 2011 20:49
Wersja środowiska: LabVIEW 2012

multimetr MT8145

Post autor: milten »

W pierwszym załączniku masz cały protokół komunikacyjny opisany.
W przykładowych programach LabVIEW (Help -> Find Examples) masz Advanced Serial Writer and Reader. Za jego pomocą pogadaj z tym multimetrem i zobacz kod, co byś mógł zrobić własny program na jego podstawie (oczywiście nie nadpisuj tego programu, tylko skopiuj :P).

Całość będzie po prostu polegać na konfiguracji i odpytywaniu w pętli urządzenie o mierzoną wartość, konwersję stringa z wartością na liczbę i wrzucenie na Charta.
I najważniejsze pamiętaj o zamykaniu portu COM, bo jak zapomnisz, to musisz restartować LV, żeby się zamknął i można było go znów używać.

[EDIT]
I z tego co widzę, to ten program opisany w 3 załączniku jest robiony chyba w LV (choć mogę się mylić, bo mogli użyć czegoś co ma podobny interfejs), to może w jego plikach po instalacji jest coś co by już za ciebie budowało i parsowało ramki komunikacyjne.
Ostatnio zmieniony 05 maja 2013 20:18 przez milten, łącznie zmieniany 1 raz.
Obrazek
Mariano
Posty: 5
Rejestracja: 05 maja 2013 00:08
Wersja środowiska: LabVIEW 2009

multimetr MT8145

Post autor: Mariano »

Ok dzięki za pomoc, napewno skorzystam
Mariano
Posty: 5
Rejestracja: 05 maja 2013 00:08
Wersja środowiska: LabVIEW 2009

Re: multimetr MT8145

Post autor: Mariano »

Po dwóch godzinach walki program mój dalej nie odczytuje wyników z multimetra. Nie wiem co jest nie tak, może będzie ktoś tak łaskawy i wyuska mój błąd. W załączniku wrzucam program.
Załączniki
Untitled 1.vi
(13.49 KiB) Pobrany 405 razy
milten
Posty: 77
Rejestracja: 25 paź 2011 20:49
Wersja środowiska: LabVIEW 2012

multimetr MT8145

Post autor: milten »

Co iterację pętli While otwierasz port COM, odczytujesz z niego jakieś dane i zamykasz port COM.
Wyciągnij otwieranie i zamykanie portu COM poza While i dodaj jakiekolwiek wysyłanie, bo chyba ten multimetr sam z siebie nie wysyła od razu mierzonej wartości.

Swoją drogą w jakim miejsc twój program jest podobny do tego przykładu o którym napisałem?
Obrazek
maniek222
Posty: 1
Rejestracja: 31 maja 2013 19:35
Wersja środowiska: LabVIEW 2012

Re: multimetr MT8145

Post autor: maniek222 »

Mam taki sam problem jak Mariano, tylko trochę inny program wyjściowy, który także nie działa...gdyby ktoś spojrzał to byłbym wdzięczny
Załączniki
mt8145.vi
(12.06 KiB) Pobrany 394 razy
Mariano
Posty: 5
Rejestracja: 05 maja 2013 00:08
Wersja środowiska: LabVIEW 2009

Re: multimetr MT8145

Post autor: Mariano »

Program mój dokonuje już odczytu, ale mam problem z uporządkowaniem. Wynik wyświetla się w formie najpierw jakieś 2 kwadraty potem # przerwa i dopiero 5 cyfr bez rozmieszczenia przecinka. Czy ma może ktoś pomysł jak to zrobić, żeby te zbędne znaki nie odczytywał?słyszałem o jakiejś funkcji co pozwoli odczytać tylko te znaki, które potrzebuje, ale nie gdzie i jak ją podpiąć.
odczyt.jpg


Wrzucam w załączniku screeny i program.
Załączniki
odczyt2.jpg
odczyt2.jpg (115.17 KiB) Przejrzano 11782 razy
program.vi
(29.86 KiB) Pobrany 392 razy
TMa
Posty: 203
Rejestracja: 07 sty 2010 12:56
Wersja środowiska: LabVIEW 2017

Re: multimetr MT8145

Post autor: TMa »

Prawdopodobnie szukasz Scan From String (można też użyć Match Pattern z regex'em). Przykład poniżej. Można zmienić drugi parametr na liczbowy aby od razu konwertował na dany typ.
Załączniki
scan.png
scan.png (11.8 KiB) Przejrzano 11777 razy
ODPOWIEDZ