Dwa urządzenia na jednym porcie RS
- fajfi
- Posty: 185
- Rejestracja: 28 sty 2004 00:00
- Wersja środowiska: LabVIEW 2010
- Lokalizacja: Wrocław
Dwa urządzenia na jednym porcie RS
Cześć!
Czy da się jednocześnie (lub prawie jednocześnie) odczytywać np. napięcie z dwóch różnych multimetrów za pośrednictwem jednego portu RS?
Jeśli tak, to w jaki sposób zmusić Labview do rozpoznawania z którego urządzenia w danej chwili czyta i jak zmusić go nastepnie do zmiany "kanału"?
Pozdrawiam
Łukasz
Czy da się jednocześnie (lub prawie jednocześnie) odczytywać np. napięcie z dwóch różnych multimetrów za pośrednictwem jednego portu RS?
Jeśli tak, to w jaki sposób zmusić Labview do rozpoznawania z którego urządzenia w danej chwili czyta i jak zmusić go nastepnie do zmiany "kanału"?
Pozdrawiam
Łukasz
Dwa urządzenia na jednym porcie RS
Trzeba bardzo szybko zmieniać wtyczki. ;)
Problem nie tkwi od strony środowiska LabVIEW. Specyfikacja RS232 nie dopuszcza dwóch urządzeń podłączonych jednocześnie do tego samego portu.
Innaczej sprawa wygląda z RS485/RS 422
Problem nie tkwi od strony środowiska LabVIEW. Specyfikacja RS232 nie dopuszcza dwóch urządzeń podłączonych jednocześnie do tego samego portu.
Innaczej sprawa wygląda z RS485/RS 422
- fajfi
- Posty: 185
- Rejestracja: 28 sty 2004 00:00
- Wersja środowiska: LabVIEW 2010
- Lokalizacja: Wrocław
Re: Dwa urządzenia na jednym porcie RS
Hm, trochę dziwne.
Przypominam sobie, że w mojej pierwszej pracy, w której miałem do czynienia z Labview, była cała szafa urządzeń pomiarowych (chyba w sumie 5 urządzeń firmy Oxford), podłączonyvh do jednego portu RS i wszystko elegancko działało. Z tego co pamiętam był tam jakiś protokół, który potrafił "adresować" te urządzenia.
Pytałem, bo chciałem zrobić coś podobnego.
Może ktoś zetknął sie już z podobnym rozwiązaniem?
Pozdrawiam
Łukasz
Przypominam sobie, że w mojej pierwszej pracy, w której miałem do czynienia z Labview, była cała szafa urządzeń pomiarowych (chyba w sumie 5 urządzeń firmy Oxford), podłączonyvh do jednego portu RS i wszystko elegancko działało. Z tego co pamiętam był tam jakiś protokół, który potrafił "adresować" te urządzenia.
Pytałem, bo chciałem zrobić coś podobnego.
Może ktoś zetknął sie już z podobnym rozwiązaniem?
Pozdrawiam
Łukasz
Dwa urządzenia na jednym porcie RS
Powinienem się poprawić co tez niniejszym robię. RS232 ma ograniczenia napojemnościkabla i napięciu, cowynika z tego , że był protokołem dokomunikacji komutera z modemem. Zakładając, że pracujesz na krótkich kablach możesz podłaczyć więcej urzadzeń do tego samego portu, ale bedzie to wymagało odpowiedniego protokółu komunikacyjnego, osadzonego i w urządzeniach i na komputerze.
Pytanie: które urządzenie aktualnie przesyła sygnał do komputera skoro fizycznie są one podłączone tym samym przewodem?
Co jesli nadają jednocześnie?
Można wykorzystać układ komunikacji Master(PC)-Slave(urządzenia) Master ma prawo pytać konkretne urządzenie
i informować wszystkie, Slave tylko odpowiada do Mastera (w wersji najprostszej).
Pojawia się pomysł na komunikację z ramkami i adresami urzadzeń i względnie rozbudowana struktura maszyny stanów w LabVIEW dla Mastera.
Pytanie czemu ma to służyć? czy nie prosćiej bedzie korzystać z karty z dwoma/czteroma portami?
Pytanie: które urządzenie aktualnie przesyła sygnał do komputera skoro fizycznie są one podłączone tym samym przewodem?
Co jesli nadają jednocześnie?
Można wykorzystać układ komunikacji Master(PC)-Slave(urządzenia) Master ma prawo pytać konkretne urządzenie
i informować wszystkie, Slave tylko odpowiada do Mastera (w wersji najprostszej).
Pojawia się pomysł na komunikację z ramkami i adresami urzadzeń i względnie rozbudowana struktura maszyny stanów w LabVIEW dla Mastera.
Pytanie czemu ma to służyć? czy nie prosćiej bedzie korzystać z karty z dwoma/czteroma portami?
Re: Dwa urządzenia na jednym porcie RS
Karta dwuportowa jest pewnym rozwiązaniem. Jest też urządzenie, dzięki któremu możesz podłączyć do 4 urządzeń do jednego portu RS232C komputera - zajrzyj do artykułu:
Wojciech Mielczarek
Wielopoziomowy system komunikacyjny oparty na łączu RS-232 i 4-portowych przełącznikach
Studia Informatica, Volume 27 Number 3 (68)
Wojciech Mielczarek
Wielopoziomowy system komunikacyjny oparty na łączu RS-232 i 4-portowych przełącznikach
Studia Informatica, Volume 27 Number 3 (68)
- fajfi
- Posty: 185
- Rejestracja: 28 sty 2004 00:00
- Wersja środowiska: LabVIEW 2010
- Lokalizacja: Wrocław
Re: Dwa urządzenia na jednym porcie RS
Ad Mikrobi
Już tłumaczę, chociaż to dość zawiła sprawa, ale postaram się przedstawić ją jak najjaśniej.
W jednym z poprzednich wątków pisałem, że zamierzam sterować silnikiem krokowym. Odpowiedzi, które otrzymałem są jak najbardziej satysfakcjonujące i bardzo za nie dziękuję.
Pozostaje jednak kwestia kontroli położenia silnika w danym momencie.
Gdyz co prawda mógłbym już wysyłać rozkazy "kroków" do silnika, ale nie ma pewności, że rozkaz został wykonany, dlatego moja idea kontroli jest nastepująca:
Zamierzam sprzęgnąć z osią silnika krokowego wieloobrotowy, precyzyjny potencjometr typu helipot zasilany źródłem referencyjnym 10V.
Następnie za pomocą multimetru cyfrowego chcę uzyskać odwzorowanie położenia silnika. I to jest mój pierwszy kanał RS.
Inny multimetr cyfrowy (również z wyjściem RS) ma odczytywać napięcie z fotoogniwa (cząstka pewnego układu pomiarowego). Po prostu chodzi o pomiar napięcia w funkcji kąta.
Reasumując kąt otrzymuję z pomiaru napięcia przez jeden multimetr, zaś interesujące mnie napięcie z układu pomiarowego przez drugi multimetr.
Wykonałem nawet próbę i podłączyłem do obu wolnych portów RS multimetry. Napisałem równiez program, który ma czytać z obu multimetrów, to znaczy połączyłem programy, które napisałem wcześniej (osobno) dla jednego i drugiego miernika.
I o ile programy osobno działają, to po połączeniu już nie. Co ciekawe wspólny program czyta tylko z drugiego miernika, pierwszy całkowicie ignoruje.
Nazwy portów wpisałem prawidłowo.
Chąc obejść ten problem chciałem użyć tylko jednego portu.
Być może robię jakiś błąd w programie, albo w samym podejściu do problemu?
Na wszelki wypadek załączę ten program (przepraszam, że taki mało elegancki, ale to dopiero prototyp).
Pozdrawiam
Łukasz
Już tłumaczę, chociaż to dość zawiła sprawa, ale postaram się przedstawić ją jak najjaśniej.
W jednym z poprzednich wątków pisałem, że zamierzam sterować silnikiem krokowym. Odpowiedzi, które otrzymałem są jak najbardziej satysfakcjonujące i bardzo za nie dziękuję.
Pozostaje jednak kwestia kontroli położenia silnika w danym momencie.
Gdyz co prawda mógłbym już wysyłać rozkazy "kroków" do silnika, ale nie ma pewności, że rozkaz został wykonany, dlatego moja idea kontroli jest nastepująca:
Zamierzam sprzęgnąć z osią silnika krokowego wieloobrotowy, precyzyjny potencjometr typu helipot zasilany źródłem referencyjnym 10V.
Następnie za pomocą multimetru cyfrowego chcę uzyskać odwzorowanie położenia silnika. I to jest mój pierwszy kanał RS.
Inny multimetr cyfrowy (również z wyjściem RS) ma odczytywać napięcie z fotoogniwa (cząstka pewnego układu pomiarowego). Po prostu chodzi o pomiar napięcia w funkcji kąta.
Reasumując kąt otrzymuję z pomiaru napięcia przez jeden multimetr, zaś interesujące mnie napięcie z układu pomiarowego przez drugi multimetr.
Wykonałem nawet próbę i podłączyłem do obu wolnych portów RS multimetry. Napisałem równiez program, który ma czytać z obu multimetrów, to znaczy połączyłem programy, które napisałem wcześniej (osobno) dla jednego i drugiego miernika.
I o ile programy osobno działają, to po połączeniu już nie. Co ciekawe wspólny program czyta tylko z drugiego miernika, pierwszy całkowicie ignoruje.
Nazwy portów wpisałem prawidłowo.
Chąc obejść ten problem chciałem użyć tylko jednego portu.
Być może robię jakiś błąd w programie, albo w samym podejściu do problemu?
Na wszelki wypadek załączę ten program (przepraszam, że taki mało elegancki, ale to dopiero prototyp).
Pozdrawiam
Łukasz
Dwa urządzenia na jednym porcie RS
Podszedł bym do tematu trochę innaczej:
mikrokontroler np. ADuC814: rdzeń 51ki, programowny przez RS232, przetworniki A/C,itd- warto poznać,dostępny m.in. na allegro ;)
Jeśli silnik krokowy może startować zawsze z okreslonej pozycji bazowej, to lini cyfrowych wystarczy i na silnik krokowy i na wyłacznik krańcowy do pozycjonowania silnika.
W razie potrzeby możesz stosować enkoder do kontrolowania czy nie gubisz kroków.
Przetwornik AC z odpowiednim układem dopasowującym rozwiąże pomiar ogniwa.
Owszem, jest trochę zabawy z programowaniem mikrokontrolera, ale ... "nie zawsze musi byc kawior" 8)
:ques:
Spojrzałem na diagram.
:-k
2,5 panoramicznego ekranu 24 cale to bedzie jakieś 4750 cali w poziomie... albo fantastyczna pamięć wzrokowa i koncentracja ;)
a poważniej: Przeglądnij w przykładach i pomocy jak wygląda formatowanie stringów i przeglądnij operacje na tablicach. Operujesz na dwóch portach szeregowych COM1 i COM2 jeśli to fizycznie dwa rózne port a na to wygląda (masz z tyłu PCta dwa gniazdka DB9 :?: ) to wystarczy równoległe prowadzenie dwóch wątków czytających z portów
mniej więcej w ten sposób

Tak bym spróbował na poczatek...
mikrokontroler np. ADuC814: rdzeń 51ki, programowny przez RS232, przetworniki A/C,itd- warto poznać,dostępny m.in. na allegro ;)
Jeśli silnik krokowy może startować zawsze z okreslonej pozycji bazowej, to lini cyfrowych wystarczy i na silnik krokowy i na wyłacznik krańcowy do pozycjonowania silnika.
W razie potrzeby możesz stosować enkoder do kontrolowania czy nie gubisz kroków.
Przetwornik AC z odpowiednim układem dopasowującym rozwiąże pomiar ogniwa.
Owszem, jest trochę zabawy z programowaniem mikrokontrolera, ale ... "nie zawsze musi byc kawior" 8)
:ques:
Spojrzałem na diagram.
:-k
2,5 panoramicznego ekranu 24 cale to bedzie jakieś 4750 cali w poziomie... albo fantastyczna pamięć wzrokowa i koncentracja ;)
a poważniej: Przeglądnij w przykładach i pomocy jak wygląda formatowanie stringów i przeglądnij operacje na tablicach. Operujesz na dwóch portach szeregowych COM1 i COM2 jeśli to fizycznie dwa rózne port a na to wygląda (masz z tyłu PCta dwa gniazdka DB9 :?: ) to wystarczy równoległe prowadzenie dwóch wątków czytających z portów
mniej więcej w ten sposób

Tak bym spróbował na poczatek...
Ostatnio zmieniony 29 maja 2008 21:01 przez Mikrobi, łącznie zmieniany 1 raz.
- fajfi
- Posty: 185
- Rejestracja: 28 sty 2004 00:00
- Wersja środowiska: LabVIEW 2010
- Lokalizacja: Wrocław
Dwa urządzenia na jednym porcie RS
Cześć,
równoległe poprowadzenie dwóch wątków czytających z portów pomogło.
Dziękuję.
Trochę obawiałem się takiego rozwiązania ze względu na możliwe konflikty, ale jak widać moje obawy okazały się zbyteczne.
W takim razie mogę jednak pozostać przy pierwotnej koncepcji, tym bardziej, że nie znam sie na programowaniu mikrokontrolerów...
Tak, wiem, że moje diagramy wyglądaja strasznie, ale w dziedzinie Labview jestem samoukiem.
A propos przeglądania pomocy o formatowaniu stringów i operacji na tablicach, czy mógłbyś zapodać jakieś przykładowe hasło?
Pozdrawiam
Łukasz
równoległe poprowadzenie dwóch wątków czytających z portów pomogło.
Dziękuję.
Trochę obawiałem się takiego rozwiązania ze względu na możliwe konflikty, ale jak widać moje obawy okazały się zbyteczne.
W takim razie mogę jednak pozostać przy pierwotnej koncepcji, tym bardziej, że nie znam sie na programowaniu mikrokontrolerów...
Tak, wiem, że moje diagramy wyglądaja strasznie, ale w dziedzinie Labview jestem samoukiem.
A propos przeglądania pomocy o formatowaniu stringów i operacji na tablicach, czy mógłbyś zapodać jakieś przykładowe hasło?
Pozdrawiam
Łukasz
Dwa urządzenia na jednym porcie RS
Scan from String, Format to String, formating