komunikacja z urządzeniem przez MODBUS RTU

Wszelkie sprawy związane z LabVIEW i komunikacją ze sprzętem. Problemy i ciekawe rozwiązania.
bubusia
Posty: 7
Rejestracja: 17 lip 2014 12:08
Wersja środowiska: LabVIEW 2010

komunikacja z urządzeniem przez MODBUS RTU

Post autor: bubusia »

Witam,

Jestem tu nowa więc z góry przepraszam jeśli umieściłam temat nie w tym dziale co trzeba.

Z labview mam do czynienia od niedawna. Potrzebuję stworzyć aplikację dzięki której możliwe będzie sterowanie pompą. Pompa podłączona jest do komputera przez konwerter RS 485 - USB.
Próbowałam nawiązać kontakt z pompą przez prosty program (panel i diagram przedstawione są w załączniku, znalazłam to w czeluściach internetu ale nie potrafię teraz powiedzieć gdzie). Niestety nic się nie dzieje (tzn. ani urządzenie w żaden sposób nie reaguje ani nie ma żadnej informacji zwrotnej).
Używam LabView 2010 (i niestety nie jestem w stanie ściągnąć do tego modułu DSC, ze strony producenta mogę jedynie pobrać wersję 2012, która nie chce się zainstalować ze względu na zbyt starą wersję labview).

Czy znajdzie się ktoś kto będzie potrafił mi w tym pomóc?
Załączniki
ob2.JPG
ob1.JPG
ob1.JPG (29.85 KiB) Przejrzano 18657 razy
Daniel PCL
Posty: 20
Rejestracja: 03 kwie 2013 11:26
Wersja środowiska: LabVIEW 8.0

Re: komunikacja z urządzeniem przez MODBUS RTU

Post autor: Daniel PCL »

Hej hej

Rozumiem, że pompa jest sterowana przez falownik...?? Potrzebny jest opis rejestrów do komunikacji. Coś takiego jak tu:

http://www.electricbay.pl/akcesoria-prz ... -ic5-.html

Wtedy można zacząć zabawę z wysyłaniem.
bubusia
Posty: 7
Rejestracja: 17 lip 2014 12:08
Wersja środowiska: LabVIEW 2010

komunikacja z urządzeniem przez MODBUS RTU

Post autor: bubusia »

Nie wiem czy falownik... Kupując pompę uzyskałam informację, pompa posiada sterownik z "trybem pracy z zewnętrznym sterowaniem poprzez protokuł MODBUS RS485".

Jeśli chodzi o opis rejestrów to m. in. takie informacje:
1).Communication data format
MODBUS_rtu standard communication protocol,baud rate 9600,8 data bits,1 stop bit,even parity.
2).CMD achieved
MODBUS_rtu Communication command codes used have 02,04,06,15,starting address are 999.
3).02 discrete signal input
999 bit address in 02 command to start and stop signals,1 for start,0 to stop;1000 for the positive and negative signals,1 is positive,o trans.


To jest tylko fragment. Wydawało mi się, że najprostsze będzie zacząć od uruchomienia pompy ale to również mnie przerosło.
Awatar użytkownika
Pitol
Moderator
Posty: 982
Rejestracja: 19 lip 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Kraków

komunikacja z urządzeniem przez MODBUS RTU

Post autor: Pitol »

Pokaż jaki błąd Ci się wyświetla.
Z bloczka WR wychodzi jeszcze jedno wyjście - Exeption Code. Zobacz czy tam się coś nie pojawia.

Tak jak ktoś wcześniej mówił: dołącz instrukcję komunikacji po Modbusie.
ObrazekObrazekObrazek
Chcesz taki podpis? Zajrzyj tutaj
bubusia
Posty: 7
Rejestracja: 17 lip 2014 12:08
Wersja środowiska: LabVIEW 2010

komunikacja z urządzeniem przez MODBUS RTU

Post autor: bubusia »

No właśnie chodzi o to, że nie wyświetla się żaden błąd. Pętla chodzi sobie w kółko i po prostu nic się nie dzieje.
Co do instrukcji komunikacji po modbusie to fragment tego co dostałam zamieściłam w poprzednim poście.
Awatar użytkownika
Pitol
Moderator
Posty: 982
Rejestracja: 19 lip 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Kraków

komunikacja z urządzeniem przez MODBUS RTU

Post autor: Pitol »

OK. Czyli żadnego exeption code nie ma?

A próbowałaś odczytywać więcej niż jeden rejestr? Na obrazie, który załączyłaś widzę, że czytasz 1 rejestr.

Może to i głupi trop ale warto sprawdzić: z obrazu, który dołączyłaś widać, że czytasz jeden rejestr. Tablica wynikowa jednak ma ustawiony indeks na 1, czyli tak naprawdę widać dane od 2-go elementu. Może wszystko jest ok, tylko wyświetlanie masz źle ustawione? :)
ObrazekObrazekObrazek
Chcesz taki podpis? Zajrzyj tutaj
bubusia
Posty: 7
Rejestracja: 17 lip 2014 12:08
Wersja środowiska: LabVIEW 2010

Re: komunikacja z urządzeniem przez MODBUS RTU

Post autor: bubusia »

Dzięki za pomoc. W tej chwili nie mam dostępu do sprzętu ale wieczorem to sprawdzę.
darekc
Posty: 77
Rejestracja: 29 mar 2007 00:00
Lokalizacja: Gliwice

Re: komunikacja z urządzeniem przez MODBUS RTU

Post autor: darekc »

A jaki jest Modbus-owy adres sterownika pompy? To trzeba ustawić w kontrolce Slave Address.
bubusia
Posty: 7
Rejestracja: 17 lip 2014 12:08
Wersja środowiska: LabVIEW 2010

Re: komunikacja z urządzeniem przez MODBUS RTU

Post autor: bubusia »

Adres mogę ustawić dowolny z zakresu od 0 do 30. Ustawiłam 2 i w rezultacie otrzymałam to co pokazuję w załączniku.

Próbowałam znaleźć wytłumaczenie tego błędu na stronie NI oraz w google ale szczerze mówiąc nie udało mi się tego rozwiązać.
Załączniki
error1.JPG
error1.JPG (22.65 KiB) Przejrzano 18588 razy
darekc
Posty: 77
Rejestracja: 29 mar 2007 00:00
Lokalizacja: Gliwice

Re: komunikacja z urządzeniem przez MODBUS RTU

Post autor: darekc »

Proszę udostępnij na forum ten program ModBUS_zinternetu.vi.
Jamal79
Posty: 289
Rejestracja: 01 maja 2012 14:14
Wersja środowiska: LabVIEW 2012
Lokalizacja: Farum

komunikacja z urządzeniem przez MODBUS RTU

Post autor: Jamal79 »

Witajcie.
Ja tez mialem podobne komplikacje z Modbusem,
Jak juz sciagniecie sobie NI modbus.llb, wyszukajcie MB serial Example master.
Ja zmodyfikowalem go tak ze obecnie odczytuje i zapisuje okolo 2000 registrow (sumujac wszystkie registry i colie) oczywiscie w paczkach :)

PS. widze ze startujesz od registra 999 i odczytujesz jedna pozycje.
PS2. Musisz miec podane, ktory rodzaj registraow jest suportowany i jakie mozesz odczytywac i jakie on zawiera informacje. itd.
Awatar użytkownika
Harnas
Posty: 152
Rejestracja: 16 mar 2011 09:56
Wersja środowiska: LabVIEW 2009

Re: komunikacja z urządzeniem przez MODBUS RTU

Post autor: Harnas »

Przypuszczam, ze chodzi o te pliki:

http://www.ni.com/example/29756/en/

Sam przyznam sie szczerze, ze ten temat sledze bo w niedlugim czasie bede musial sie zajac dokladnie tym samym.
Załączniki
MBT.llb
(109.28 KiB) Pobrany 455 razy
bubusia
Posty: 7
Rejestracja: 17 lip 2014 12:08
Wersja środowiska: LabVIEW 2010

Re: komunikacja z urządzeniem przez MODBUS RTU

Post autor: bubusia »

Startuję od 999 bo tak mam podane w informacji, którą otrzymałam od producenta ale możliwe, że źle to zrozumiałam:

"2).CMD achieved
MODBUS_rtu Communication command codes used have 02,04,06,15,starting address are 999.

3) 02 discrete signal input
999 bit address in 02 command to start and stop signals,1 for start,0 to stop;1000 for the positive and negative signals,1 is positive,o trans."

Program jest w załączniku.
Załączniki
ModBUS_zinternetu.vi
(16.46 KiB) Pobrany 479 razy
darekc
Posty: 77
Rejestracja: 29 mar 2007 00:00
Lokalizacja: Gliwice

Re: komunikacja z urządzeniem przez MODBUS RTU

Post autor: darekc »

bubusia
Posty: 7
Rejestracja: 17 lip 2014 12:08
Wersja środowiska: LabVIEW 2010

komunikacja z urządzeniem przez MODBUS RTU

Post autor: bubusia »

Niestety nadal nie udało mi się rozwiązać tego problemu.

Jeśli dobrze zrozumiałam to ostatni link jest do tematu, który dotyczy pompy sterowanej przy pomocy RS 485 ale to chyba nie jest protokół MODBUS... Albo już sama nic nie wiem...
ODPOWIEDZ