Trochę teorii
Ethernet
MAN - Metropolitan Area Network (miejska sieć komputerowa) jest siecią występującą na znacznym obszarze miasta. W większości przypadków są to szybkie sieci, wykorzystujące światłowody jako pośredniczące medium transmisyjne.
WAN - Wide Area Network (rozległa sieć komputerowa) jest siecią o dużym zasięgu, przekraczająca granice miast, a nawet państw. Architektura tej sieci składa sięz węzłów oraz łączących je łączy transmisyjnych.
Sieć radiowa - (Radio Network) jest sieciąbezprzewodową, wykorzystującą fale radiowe jako medium transmisyjne.
Model OSI (Open Systems Interconnection)
Oferuje całość usług komunikacyjnych procesom użytkowników. Udostępniane w warstwie funkcje to: ustalenie protokołu transmisji, nawiązywanie i zawieszanie połączenia, synchronizacja transmisji, autentykacja połączeń, monitorowanie i zarządzanie połączonymi systemami.
Warstwa ta ma za zadanie przekształcenie różnorodnych sposobów reprezentacji danych, jakie spotykane są w różnych systemach operacyjnych na jednorodną formę sieciową, w taki sposób by wymiana danych możliwa była między wszystkimi istniejącymi systemami implementującymi model OSI.
Rolą tej warstwy jest rozszerzenie warstwy transportowej o środki umożliwiające synchronizację sieciowego dialogu oraz zarządzanie wymianą danych między aplikacjami. W warstwie tej mogą być tworzone punkty synchronizacji, które w przypadku wystąpienia błędów transmisji.
Obowiązkiem tej warstwy jest zapewnienie transmisji zgodnie z wymaganymi charakterystykami, do których zalicza się m.in.: przepustowość, stopę błędów, opóźnienia transmisji. Warstwa transportowa powinna realizować transmisję w sposób najbardziej efektywny.
Warstwa ta ma za zadanie umożliwienie utworzenia drogi między stacją nadawczą, a odbiorczą oraz wybór najkorzystniejszej z możliwych dróg transmisji (routing)i uniknięcie przeciążenia sieci. Na poziomie warstwy sieciowej pracują routery.
Na tym poziomie zdefiniowane są reguły przesyłania i otrzymywania informacji. Warstwa ta zapewnia prawidłową transmisję między węzłami sieci oraz umożliwia wykrywanie oraz korekcję błędów powstałych na warstwie niższej, czyli w warstwie fizycznej.
Umożliwia przesyłanie pojedynczych bitów między połączonymi stacjami z wykorzystaniem łącza. Na poziomie tej warstwy zdefiniowane są również cechy fizyczne interfejsu sieciowego: cechy mechaniczne, elektryczne, złącza, poziomy napięć oraz inne aspekty elektryczne.
- otwartość i niezależność od specyfiki sprzętowo-programowej systemów komputerowych,
- możliwość integracji wielu różnych rodzajów sieci komputerowych,
- wspólny schemat adresacji pozwalający na jednoznaczne zaadresowanie każdego użytkownika,
- istnienie standardowych protokołów warstw wyższych.
Protokoły TCP/IP to dzisiaj cały zestaw protokołów przeznaczonych do:
- transferu danych: IP, TCP, UDP (User Datagram Protocol),
- kontroli poprawności połączeń: ICMP (Internet Control Message Protocol),
- zarządzania siecią: SNMP (Simple Network Management Protocol),
Wszystkie protokoły wchodzące w skład zbioru protokołów TCP/IP sązdefiniowane w następujących dokumentach: Intemet Engineering Notes (IEN), Military Standards (MIL STD) oraz Request for Comments (RFC). Architektura protokołów TCP/IP jest trochę odmienna od modelu ISO/OSI. Najczęściej przyjmowany jest czterowarstwowy hierarchiczny model protokołów TCP/IP, nazywany także stosem protokołów.

Transmisja szeregowa
RS-232 | Styk DB25 | Styk DB9 | Nazwa polska | Nazwa angielska | Kierunek DTE - DCE |
PG | 1 | - | Masa ochronna | Protective Ground | -- |
SG | 7 | 5 | Masa sygnałowa | Signal Ground | -- |
TxD | 2 | 3 | Dane nadawane | Transmitted Data | --> |
RxD | 3 | 2 | Dane odbierane | Received Data | <-- |
RTS | 4 | 7 | Żądanie nadawania | Request Data | --> |
CTS | 5 | 8 | Gotowość do nadawania | Request to Send | <-- |
DSR | 6 | 6 | Gotowość DCE | Clear Set Ready | <-- |
DTR | 20 | 4 | Gotowość DTE | Data Terminal Ready | --> |
DCD | 8 | 1 | Poziom sygnału | Carrier Detected | <-- |
Opis linii:
Linie Danych (obowiązuje logika negatywna):
TxD – dane nadawane.
RxD – dane odbieraneLinie sterujące (obowiązuje logika pozytywna):
RTS – żądanie nadawania danych zgłaszane przez terminal DTE
CTS – gotowość do nadawania zgłaszana przez modem DCE (przesyła potwierdzenie odebrania sygnału RTS)
DSR – gotowość modemu DCE do dalszej współpracy z DTE (aktywny przez cały czas trwania połączenia)
DTR – gotowość DTE do dalszej współpracy z DCE (aktywny przez cały czas trwania połączenia)
DCD – sygnał wykrycia przez modem fali nośnej (oznacza, że łączy się on z innym modemem)
Linie masy:
SG – masa sygnałowa
PG – masa ochronna połączona z obudową urządzenia
Istnieje wiele sposobów wykorzystania różnych podzbiorów tych l inii. W najprostszym przypadku wykorzystuje się tylko 3 linie:
TxD – dane nadawane
RxD – dane odbierane
SG – masa sygnałowa
- prosta reguła dostępu do łącza oparta na zasadzie "master-slave"
- zabezpieczenie przesyłanych komunikatów przed błędami
- potwerdzanie wykonania rozkazsów zdalnych i sygnalizacja błędów
- skuteczne mechanizmy zabezpieczające przed zawieszeniem systemu
- wykorzystanie asynchronicznej transmisji znakowej zgodnej z RS-232C
Kontrolery urządzeń pracujących w systemie MODBUS komunikują się ze sobą przy wykorzystaniu protokołu typu master-slave, w którym tylko jedno urządzenie może inicjalizować transakcje (jednostka nadrzędna-master), a pozostałe (jednostki podrzędne- slave) odpowiadają jedynie na zdalne zapytania jednostki nadrzędnej. Transakcja składa się z polecenia wysyłanego z jednostki master do slave oraz z odpowiedzi przesyłanej w odwrotnym kierunku. Odpowiedź zawiera dane żądane przez master lub potwierdzenie realizacji jego polecenia. Master może adresować indywidualnych odbiorcó (slave) lub też przesyłać wiadomości "rozgłoszeniowe: (broadcast), przeznaczone dla wszystkich urządzeń podrzędnych w systemie. Na polecenia rozgłoszeniowe jednostki slave nie przesyłają odpowiedzi. Protokół MODBUS określa format wiadomości przesyłanych z jednostki master do slave.Zawiera on:
- adres odbiorcy,
- kod funkcji reprezentujący polecenie,
- dane,
- słowo kontrole.
Odpowiedź urządzenia również zawiera informacje zgodne ze zdefiniowanymi w protokole MODBUS. Jeżeli urządzenie slave wykryje błąd przy odbiorze wiadomości, przesyła zgłoszenie o błędzie do mastera.W systemie MODBUS wiadomości są zorganizowane w ramki o określonym początku i końcu. Pozwala to urządzeniu odbierającemu na odrzucenie ramek niekompletnych i sygnalizację związanych z tym błędów. Ze względu na możliwość pracy w jednym z dwóch różnych trybów transmisji (ASCII lub RTU), definiuje się dwie ramki.
Przesyłane w obydwie strony wiadomości zorganizowane są w postaci ramek o czterech ściśle określonych polach:
ADDRESS | FUNCTION CODE | DATA | CHECKSUM |
Dla zapytania MODBUS RTU mamy:ADDRESS [1 bajt] - określa do którego urządzenia wpiętego w sieć (RS-485) adresowane jest zapytanie
FUNCTION CODE [1 bajt] - określa kod funkcji/zapytania
DATA [różnej długości] - przekazuje parametry wejściowe wywoływanej funkcji
CHECKSUM [2 bajty] - suma kontrolnaDla odpowiedzi:ADDRESS [1 bajt] - określa adres urządzenia slave odpowiadającego na zapytanie
FUNCTION CODE [1 bajt] - określa kod funkcji/zapytania z zapytania
DATA [różnej długości] - przekazuje parametry wynikowe funkcji
CHECKSUM [2 bajty] - suma kontrolna
|
Poniżej w tabeli znajdują się kody wraz z opisem najczęściej występujących funkcji:
Kod Funkcji | Opis funkcji |
0x01 | odczyt wyjść bitowych |
0x02 | odczyt wejść bitowych |
0x03 | odczyt n rejestrów |
0x04 | odczyt n rejestrów wejściowych |
0x05 | zapis 1 bitu |
0x06 | zapis 1 rejestru |
0x07 | odczyt statusu |
0x08 | test diagnostyczny |
0x0F | zapis n bitów |
0x10 | zapis n rejestrów |
0x11 | identyfikacja urządzenia slave |
0x80–0xFF | zarezerwowane na odpowiedzi błędne |
Magistrala CAN
- standardowy CAN wersja 2.0A (Standard CAN), używa 11 bitów identyfikacji
- rozszerzony CAN wersja 2.0B (Extended CAN), używa 29 bitów identyfikacji
Te dwie częci definiują odmienne formaty ramek wiadomości głównie różniące się długocią identyfikatora.Istnieją dwa standardy ISO dla CAN. Różnica występuje w warstwie fizycznej, gdzie ISO 11898 dotyczy szybkich aplikacji do 1 Mbit/s. ISO 11519 ogranicza się do 125 kbit/s.