V1040 i KEYENCE RS 232 MODUŁ

Pytania i odpowiedzi dotyczące sprzętu Unitronics

Moderatorzy: Marek Sikora, Mateusz Sikorski

V1040 i KEYENCE RS 232 MODUŁ

Postprzez 71tomek » Śr, 14 cze 2017, 19:09

V1040
Czy uda mi się nawiązać komunikację po MODBUS (lub inaczej) między sterownikiem V1040 a modułem RS232C typ DL-RS1A firmy KEYENCE? http://www.keyence.com/products/sensor/ ... /ig/models
Układ ma służyć (wraz z sensorami) do pomiaru średnicy. Może właściwszym rozwiązaniem jest zastosowanie modułu DL-PD1 PROFIBUS DP ? Problem w tym, że mam już DL-RS1A. Z góry dziękuję za odpowiedź.
71tomek
 
Posty: 116
Dołączył(a): Cz, 27 wrz 2012, 09:34

Re: V1040 i KEYENCE RS 232 MODUŁ

Postprzez Mateusz Sikorski » Pt, 16 cze 2017, 07:24

Witam,
według dokumentacji, jaką udało mi się znaleźć da się nawiązać pełną komunikację sterowników Vision z tym urządzeniem.
Mateusz Sikorski
Elmark Automatyka S.A.
Mateusz Sikorski
 
Posty: 558
Dołączył(a): Śr, 13 lip 2011, 08:08

Re: V1040 i KEYENCE RS 232 MODUŁ

Postprzez 71tomek » Wt, 20 cze 2017, 22:02

Udało mi się połowicznie nawiązać komunikację. moduł odpowiada na wysyłane komendy poprawnymi danymi, ale widzę je poprzez bloczek copy bufer. Nie wiem jakiego rodzaju zmiennych użyć w ramce bloczku Scan: strem, numeric? Wydaje się, że mógłbym sprawdzić oba - i tak zrobiłem na różne sposoby, ale bez efektów. Potrzebuje wskazówki, aby móc ruszyć dalej. Począwszy os strony 9 tego manuala http://www.manualsdir.com/manuals/65797 ... 1a_il.html ramki komendy i odpowiedzi są dobrze opisane. W programie próbuję odebrać daną dotyczącą średnicy (komenda 037). Podziewaną ramkę odpowiedzi (jak pisałem) widać w buforze. Status message MI1 = 1 a MI2 = -1. Czyli mess error.
Załączniki
proba.rar
(230.05 KiB) Pobrane 713 razy
71tomek
 
Posty: 116
Dołączył(a): Cz, 27 wrz 2012, 09:34

Re: V1040 i KEYENCE RS 232 MODUŁ

Postprzez Mateusz Sikorski » Śr, 21 cze 2017, 07:48

Witam,
według dokumentacji wynika, że zawsze przed wartością pojawia się znak + lub - a także nie jest dokładnie opisane, czy wartość przesyłana ma stałą wartość, dlatego zalecam skonfigurowanie bloku PROTOCOL SCAN według poniższego schematu:
Obrazek

Czy przy takiej konfiguracji pojawia się wartość w MI110? Jeśli nie to proszę przesłać dokładną, przykładową odpowiedź urządzenia na wysłanie tego zapytania w celu weryfikacji.
Mateusz Sikorski
Elmark Automatyka S.A.
Mateusz Sikorski
 
Posty: 558
Dołączył(a): Śr, 13 lip 2011, 08:08

Re: V1040 i KEYENCE RS 232 MODUŁ

Postprzez 71tomek » Śr, 21 cze 2017, 17:20

Sprawdzę odpowiedz w M110 idam znać.
Na tę chwilę mogę powiedzieć, że odpowiedz w dec w buforze była 83 82 44 48 48 44 48 51 55 44 43 48 51 46 50 50 53 13 10 czyli odpowiada to ramce response a na czerwono w ascii +03.225 - Odpowiada to zaokrąglonej wartości +03,23 na wyświetlaczu wzmacniacza. Format danych zawsze jest 7 znakowy.
71tomek
 
Posty: 116
Dołączył(a): Cz, 27 wrz 2012, 09:34

Re: V1040 i KEYENCE RS 232 MODUŁ

Postprzez 71tomek » Śr, 21 cze 2017, 21:52

Dziękuję za wsparcie. Mam nadzieję, że nasze zmagania zaoszczędzą komuś parę ładnych godzin.Wydaje się, że temat jest opanowany. Ostatecznie użyłem kolejnych zmiennej STREAM do zapisu 7 kolejnych bajtów/znaków zawierających info o średnicy, do kolejnych 7 zmiennych MI110 do MI116. Począwszy od MI110 do MI116 zmienne zawierają informację w dec 43 48 51 44 52 51 50 , która po konwersji (na papierze) na ascii ma postać np +03,432 (zależnie od zmierzonej średnicy). Moje pytanie na dziś: Jak elegancko wyłuskać z tego ciągu (43 48 51 44 52 51 50) i zamienić w wartość 3432, abym mógł wykorzystać ją do porównania ze średnicą zadaną? (Oczywiście zmienne będą zmieniać się dynamicznie co odczyt).
71tomek
 
Posty: 116
Dołączył(a): Cz, 27 wrz 2012, 09:34

Re: V1040 i KEYENCE RS 232 MODUŁ

Postprzez Mateusz Sikorski » Cz, 22 cze 2017, 08:08

Witam,
czy testował Pan moje rozwiązanie?
Mateusz Sikorski
Elmark Automatyka S.A.
Mateusz Sikorski
 
Posty: 558
Dołączył(a): Śr, 13 lip 2011, 08:08

Re: V1040 i KEYENCE RS 232 MODUŁ

Postprzez 71tomek » Cz, 22 cze 2017, 09:28

Tak. Oczywiście - w pierwszej kolejności. Zmienna Status przyjęła wartość -1 (czyli general error). Zmienna MI110 = 0. Tak jak przy wcześniejszych moich próbach.
Nie jestem pocieszony, że udało się to zrobić metodą prób i błędów. Trochę sugerowałem się przykładem VL z helpa do serwa mitsubishi wraz z notą katalogową do serwa. Sama zmienna odczytywana z urządzenia ma zawsze format 7 znaków +-99.999
71tomek
 
Posty: 116
Dołączył(a): Cz, 27 wrz 2012, 09:34

Re: V1040 i KEYENCE RS 232 MODUŁ

Postprzez Mateusz Sikorski » Cz, 22 cze 2017, 10:24

Witam,
przesyłam Panu program poprawiony i który u mnie działa poprawnie na wysłanie ramki, jaką Pan podał na port #2.
W tym momencie program ten poprawnie odczytuje ramkę z Protocol SCAN oraz drugim torem zczytuje pełny bufor z portu#2 i zamienia go z ASCII na wartość numeryczną. Proszę zwrócić uwagę, że MI110 = MI200 oraz MI3 = MI199.
Problemem mógł być źle użyty blok Reset Buffer for Protocol, który wykonywał się tuż przed skopiowaniem tego bufora (zamieniłem je miejscami w programie).
Załączniki
proba_fix.rar
(458.27 KiB) Pobrane 694 razy
Mateusz Sikorski
Elmark Automatyka S.A.
Mateusz Sikorski
 
Posty: 558
Dołączył(a): Śr, 13 lip 2011, 08:08

Re: V1040 i KEYENCE RS 232 MODUŁ

Postprzez 71tomek » So, 24 cze 2017, 10:57

Potwierdzam - działa poprawnie. Dziękuję.
71tomek
 
Posty: 116
Dołączył(a): Cz, 27 wrz 2012, 09:34


Powrót do Unitronics



Kto przegląda forum

Użytkownicy przeglądający to forum: Brak zalogowanych użytkowników i 6 gości