Potrzebujê uruchomiæ system z magistral± rs 458. Potrzebujê 4 matery i 1 slave.
Jakie problemy napotkam? Czy powy¿sza konfiguracja jest mo¿liwa? Jak unikn±æ kolizji masterów?
Gdyby kto¶ zna³ dobre strony i materia³y, w których na prawdê dobrze, w sposób konkretny, wyt³umaczono protokó³ RS 232 i pochodne, podrzuæcie linki i informacje.
Z góry dziêki.
pzdr Mariusz
Didn't find your answer? Ask the community — no account required.
N
neuron
co to znaczy 4 mastery ? Zapewne chodzi o to ze wiecej niz jedno z 4 urzadzen jednoczesnie przelaczy sie w tryb nadawania. Jesli tak to proponuje nastepujace rozwiazanie: slave wysyla cyklicznie pakiet synchronizujacy z numerami masterow - teraz1 teraz2 teraz3 teraz4 teraz1 teraz2 itd z okienkami czasowymi na odpowiedz mastera. Jesli master ma cos do nadania (np rzadanie danych ) to czeka na pakiet terazty i nawiauje lacznosc ze slavem - a ten dopuki nie skonczy z nim gadac nie wysyla zachet dla innych masterow. Teoretycznie to slave bedzie masterem - jednak praktycznie to pozostali beda sterowac transmisja - ale w wyznaczonym przez slave czasie. Takie rozwiazanie wydaje mi sie najprostsze i najmniej nararzone na konflikty. wojtek
------- GolemSLR - system licz±co rejestruj±cy. Nowy wymiar systemów SCADA
formatting link
M
Marcin Stanisz
No hay problemo ;-)
Proponuję "token passing". Master nr 1 ma głos po resecie. Robi, co chce. Po zrobieniu przesyła charakterystyczny pakiet (ów żeton właśnie) do mastera nr 2. Teraz master 2 ma głos. Po zakończeniu działań przesyła żeton do mastera nr 3. Ad libitum al fine ;-)
Dla uniknięcia sytuacji, że któryś master się zwiesił, stosuje się time-out.
Pozdrawiam
J
J.F.
Po timeoucie masz:
-kilka krazacych tokenow,
-problem jak rozwiazac problem kolizji :-)
J.
Z
ziel
On Behalf Of J.F.
W/g mnie problem postawiony na głowie. Jest jeden master i kilka slave. Po zezwoleniu od Master, Slave wysyła swoje dane. Natomiast w trybie multimaster były tokeny adresowane plus time-out. Tzn. w przypadku zwisu poprzednika lub przerwie na linni po odczekaniu stosownej chwili ciszy na linni slave generował tokena rejestracji_w_systemie. Krążące tokeny powinne ginąć po dojściu do swego nadawcy.
pzdr Artur
N
neuron
Niekoniecznie. Tak naprawde nie wiemy nadal co chce pytacz osiagnac. Przyzwyczailismy sie do konfiguracji sieci pomiarowej - master odebiera dane ze slave'ow lub przekazuje im polecenia. A co jesli tzw slave ma wykonywac polecenia od swobodnie podlaczanych / odlaczanych urzadzen ? Wtedy do rozpatrywania konfliktow dochodzi jeszczse problem wyznaczania mastera masterow :)
Kiedys probowalem zaglebic sie troszeczke w budowe profibusa (troszeczke mniej niz troszeczke :( ) i jesli dobrze zrozumialem to tam jeden z masterow przejmuje na siebie obowiazek synchronizacji sieci rozsylajac odebierany przez wszystkie urzadzenia pakiet ktory mowi - od teraz zaczyna sie okienko czasowe. I odbiorcy odliczaja czas dzielac je na 4 czesci - kazda do czego innego. Ale takie rozwiazania wymagaja sprzetowej budowy srednich warstw protokolu.
Po nocnym przemysleniu dla ograniczonej ilosci masterow i jednego slave najbardziej rozsadna wydaje mi sie moja poprzednia propozycja. Tym bardziej ze jest w miare prosta do zaimplementowania.
wojtek
J
J.F.
Jest odwrotnie - kilka masterow, jeden slave :-)
Warto przeczytac jak to robil ethernet.
Proponujesz zeby slave odzywal sie nie pytany ? No to dochodzi jeszcze jeden kolidujacy komputer :-)
J.
E
ele mid
Slave jest urz±dzeniem wykonawczym, interpretuj±cym i wykonuj±cym polecenie mastera, a po wykonaniu zadania zwraca potwierdzenie. Do slave'a ma dostêp kilka masterów.
pzdr Mariusz
Z
ziel
On Behalf Of ele mid
To już wyższa szkoła jazdy. Wypadałoby zapewnić, żeby mastery nie wysyłały preciwstawnych rozkazów. ;-)
pzdr Artur
Z
ziel
On Behalf Of J.F.
[...]
Eterneta na cztery małe procki? ';-)
Moje tak gadają. ;-) Master raz na minutę robi 2 sekundy ciszy, aby nowe mogły zarejestrować się w systemie. W przypadku zawieszenia się mastera, slave próbują na wszelki wypadek nawiązać połaczenie - jeśli nie dojdzie do skutku przechodzą w tryb awaryjny. Jest jeden mały wyjątek. W przypadku sleva z INT. Ma prawo zrobić kolizję. W takim wypadku master ogłasza chwilę ciszy i czeka na zgłoszenie INT. Tego w ethernecie nie ma ;-).
pzdr Artur
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.