„Port szeregowy” to skrót od interfejsu komunikacji szeregowej. „Komunikacja szeregowa” odnosi się do metody komunikacji, w której dane są przesyłane sekwencyjnie bit po bicie. Typowe porty szeregowe obejmują RS-232 i RS-485. Chociaż komunikacja szeregowa została opracowana już jakiś czas temu, pozostaje szeroko stosowana w dzisiejszej automatyce przemysłowej i sterowaniu. W tym artykule szczegółowo przyjrzymy się portowi szeregowemu RS-232. W tym artykule poruszono następujące tematy:
1. Historia RS232
2. Interfejs RS232
3. Sygnały elektryczne w RS232
4. Układy scalone zmiany-poziomu dla RS232
5. Transmisja danych w RS232

1. Historia RS232
RS232 to standard komunikacyjny opublikowany przez Stowarzyszenie Przemysłu Elektronicznego (EIA) w 1962 roku. Jego pełna nazwa brzmi: „Standard dotyczący interfejsów elektrycznych i mechanicznych między DTE i DCE”. „DTE” oznacza „sprzęt końcowy danych”, taki jak komputer; „DCE” oznacza „urządzenie końcowe-obwodu danych”. Czasami jest również zapisywany jako „urządzenie do przesyłania danych”, na przykład modem. „RS” w „RS232” oznacza „Zalecany standard”. „232” to identyfikator. Wczesny standard RS-232 został opracowany, aby umożliwić komunikację między komputerami, programowalnymi telefonami i modemami; po kilku zmianach stał się standardem komunikacji szeregowej ogólnego przeznaczenia. Zmiany w RS-232 są następujące:
1969 wersja C (RS-232-C);
1986 wersja D (RS-232-D);
Wersja E (RS232-E) z 1991 r.;
Wersja F (RS232-F) z 1997 r.;
Obecnie w dziedzinie automatyki przemysłowej RS232 wykorzystywany jest przede wszystkim do komunikacji pomiędzy urządzeniami takimi jak ekrany dotykowe, czytniki kart, skanery kodów kreskowych, a także drukarki i sterowniki PLC.

2. Interfejs RS-232
Przed wersją F RS-232 wykorzystywał 25-pinowy interfejs szeregowy, który był dostępny w dwóch typach: męskim i żeńskim. Złącze męskie jest używane do urządzeń DTE, a złącze żeńskie do urządzeń DCE, jak pokazano na poniższym rysunku
Jednostka fizyczna jest pokazana na poniższym rysunku:
W poniższej tabeli znajdują się definicje pinów:
:
| Numer | Nazwa | Skrót |
|---|---|---|
| 1 | Tarcza | |
| 2 | Przesyłane dane | TxD |
| 3 | Otrzymane dane | RxD |
| 4 | Prośba o wysłanie | RTS |
| 5 | Wyczyść, aby wysłać | CTS |
| 6 | DCE Reogłoszeniey/Zestaw danych gotowy | DSR |
| 7 | Masa sygnału/wspólny powrót | SG |
| 8 | Detektor odebranego sygnału linii | |
| 9 | Zarezerwowane do testowania zestawu danych | |
| 10 | Zarezerwowane do testowania zestawu danych | |
| 11 | Unaspodpisany | |
| 12 | Detektor dodatkowego sygnału odebranego linii | |
| 13 | Dodatkowe zezwolenie na wysłanie | (S)CTS |
| 14 | Wtórne przesyłane dane | (S) TxD |
| 15 | Element sygnału transmisyjnegotyming | |
| 16 | Dane otrzymane wtórnie | (S)RxD |
| 17 | Czas elementu sygnału odbiornika (DCE) | |
| 18 | Lokalna pętlabACk | |
| 19 | Dodatkowe żądanie wysłania | (S)RTS |
| 20 | Gotowość do DTE/Terminal danych gotowy | DTR |
| 21 | Zdalna pętla zwrotna/ Detektor jakości sygnału |
|
| 22 | Wskaźnik pierścieniowy | RI |
| 23 | Selektor szybkości sygnału danych | |
| 24 | Taktowanie elementu sygnału nadawczego (DTE) | |
| 25 | Tryb testowy |
25-pinowy port szeregowy ma zbyt wiele pinów, co utrudnia jego użycie. Aby uprościć port szeregowy RS232, wersja F definiuje 9-pinowy port szeregowy, który zawiera również złącze męskie (dla DTE) i złącze żeńskie (dla DCE), jak pokazano na poniższym rysunku:

W poniższej tabeli znajdują się definicje pinów:
| Numer | Nazwa | Skrót |
|---|---|---|
| 1 | Wykrywanie nośnika danych | DCD |
| 2 | Otrzymane dane | RxD |
| 3 | Przesyłane dane | TxD |
| 4 | Terminal danych gotowy | DTR |
| 5 | Grunt | GND |
| 6 | Zestaw danych gotowy | DSR |
| 7 | Prośba o wysłanie | RTS |
| 8 | Wyczyść, aby wysłać | CTS |
| 9 | Wskaźnik pierścieniowy | RI |

PLC jest uważany za urządzenie DTE, a jego port szeregowy RS-232 jest złączem męskim. Na przykład moduł szeregowy CM1241 RS-232 dla S7-1200 ma męski port szeregowy, jak pokazano na poniższym rysunku:
Do komunikacji pomiędzy DTE i DTC można zastosować połączenie bezpośrednie, jak pokazano na poniższym rysunku:
Do komunikacji między dwoma urządzeniami DTE (takimi jak sterownik PLC i skaner kodów kreskowych) należy zastosować połączenie-krzyżowe. Wszystkie piny można ze sobą połączyć, jak pokazano na poniższym rysunku:

Możesz zastosować minimalną metodę połączenia, używając tylko trzech przewodów do połączenia styków TxD i RxD obu urządzeń i uziemienia ich razem, jak pokazano na poniższym rysunku:
Ten typ połączenia, w którym urządzenie DTE łączy się bezpośrednio z urządzeniem DCE bez przechodzenia przez urządzenie DCE, jest również nazywany połączeniem „null modem”, a kabel używany do tego typu połączenia nazywany jest kablem „null modem” lub kablem krosowanym.

3. Sygnały elektryczne RS-232
Sygnały elektryczne na zaciskach nadawczo-odbiorczych RS-232 są sygnałami napięciowymi względem masy (GND). Różnica napięcia pomiędzy +3V i +15V reprezentuje logiczne „0”; różnica napięcia pomiędzy -3 V a -15 V reprezentuje logiczną „1”; oraz różnica napięcia pomiędzy -3 V a +3V jest nieokreślona. 3 V to minimalny wykrywalny sygnał napięciowy. W zastosowaniach praktycznych oczekuje się, że wartość bezwzględna różnicy napięć będzie wynosić od 5 V do 15 V. Oznacza to, że podczas przesyłania danych sterownik nadajnika wysyła dodatni sygnał napięciowy od +5 V do +15 V, który reprezentuje logiczne „0”, podczas gdy ujemny sygnał napięcia od -5 V do -15 V reprezentuje logiczną „1”. Podczas odbierania danych każdy sygnał elektryczny większy niż 3 V jest uważany za sygnał ważny.
4. Układy scalone konwersji poziomu RS-232
Ponieważ piny mikrokontrolera wyprowadzają poziomy TTL, do konwersji ich na poziomy RS-232 wymagany jest dedykowany układ scalony konwersji (taki jak MAX3232 firmy TI lub ST3232 firmy ST). Aby uzyskać więcej informacji, zapoznaj się z moim poprzednim artykułem: Jaka jest różnica między poziomami RS-232 i TTL? Jak się je nawraca?

5. Transmisja danych RS-232
Pierwszą koncepcją związaną z transmisją danych jest szybkość transmisji. Jak wiemy, komunikacja szeregowa przesyła dane bit po bitwie, a jednostką transmisji jest bit. Dlatego szybkość transmisji definiuje się jako liczbę bitów przesyłanych w jednostce czasu. Międzynarodowo akceptowaną jednostką czasu jest sekunda (s), więc jednostką szybkości transmisji jest bit/s (b/s), również zapisywany jako bps (bity na sekundę).
Istnieje określony zakres szybkości transmisji (nie są to wartości dowolne); typowe szybkości transmisji obejmują 9600, 38 400, 56 000 i 115 200. Istnieje również wiele innych wartości; komunikujące się strony muszą po prostu zgodzić się na tę samą szybkość transmisji.
RS-232 to protokół komunikacyjny-punkt-punkt. Jego ramka danych składa się z czterech części: bitu startu, bitów danych, bitu parzystości i bitu stopu.
Bit startu: Długość 1, wartość danych jest równa logicznemu 0, wskazując początek transmisji danych;
Bity danych: długość 8 lub 7, reprezentujące aktualnie przesyłane dane;
Bit parzystości: Długość 0 (brak parzystości) lub 1 (parzystość lub nieparzystość);
Bit stopu: długość 1, 1,5 lub 2; wartością danych jest logiczna jedynka, wskazująca koniec ramki danych;
Zakładając, że komunikacja RS232 jest skonfigurowana z 7 bitami danych, nieparzystą parzystością i 2 bitami stopu, ramkę i wartości logiczne pokazano na poniższym rysunku
Następnie wykonajmy obliczenia.
Załóżmy, że konfiguracja komunikacji RS-232 ma szybkość transmisji 9600, 8 bitów danych, bez parzystości (0) i 1 bit stopu. Ile bajtów danych można przesłać na sekundę przy tych parametrach komunikacyjnych?
Odpowiedź: W oparciu o parametry długość ramki dla tej komunikacji wynosi 1 + 8 + 1=10 bitów. W tej ramce przesyłany jest jeden bajt (8 bitów). Dlatego przy szybkości transmisji wynoszącej 9600 maksymalna ilość rzeczywistych danych, które można przesłać na sekundę, wynosi 9600 / 10=960 bajtów.




