O portach szeregowych słów kilka – cz. I

W swojej pracy dość często mam okazję uczestniczyć w projektach związanych z komunikacją na styku oprogramowania i sprzętu. Czy jest to np. dalmierz i jego obsługa w programie CAD, czy też waga elektroniczna, obsługiwana w Labor Tech-u, czy też np. precyzyjny GPS\RTK – zawsze istotny jest sposób komunikacji sprzętów z programami.

Aby sprzęt mógł komunikować się z komputerem, musimy mieć medium do wymiany danych. Może to być przewód (USB/RS232) lub komunikacja radiowa (Bluetooth/Wifi). W dość rzadkich przypadkach spotyka się także sprzęty potrafiące komunikować się poprzez port podczerwieni (IR). Oczywiście zarówno sprzęt, jak i oprogramowanie musi obsługiwać ten sam protokół wymiany danych.

Kiedyś komunikacja odbywała się o porty równoległe (LPT – np. starsze drukarki) a także porty szeregowe (COM). Jednakże porty i komunikacja szeregowa zdecydowanie mocniej zagościły na polu rozwiązań pomiarowych, tak więc w tym wpisie opiszę parę rzeczy z nimi związanych.

Kabelek RS-232 - z jednej 9 pin z drugiej 25-pin

Kabelek RS-232 – z jednej 9 pin z drugiej 25-pin

W początkach komunikacji mieliśmy komputery z portami szeregowymi RS-232 (zwykle 9-pinowym/bolcowym). Jeśli mieliśmy szczęście posiadać urządzenie z portem i odpowiedni kabelek, wówczas mogliśmy sprzęt podpiąć do komputera i cieszyć się zaletami automatyzacji (zakładam, że oprogramowanie również posiadaliśmy).

 

Później wkroczył interfejs USB (który był niejako następcą popularnego RS-a). Oczywiście dalej interfejs w postaci kabla, ale bardziej wydajny (większa prędkość) oraz uniwersalny (oprócz urządzeń stricte pomiarowych mógł też obsługiwać komunikację z myszkami, dyskami twardymi – nawet oferować możliwość pobierania prądu, co stworzyło zaplecze dla całej gamy urządzeń – bajerów, typu latarka lub wiatrak podłączany do komputera). Wraz ze zmianą protokołu trzeba było zmodyfikować procedury obsługi w oprogramowaniu, ale w zasadzie mieliśmy ulepszoną wersję starego interfejsu, choć wciąż z pewnymi jego wadami (kable).

Typowa wtyczka USB - wpinamy ją do komputera i mamy Plug & Play (wepnij i graj/działaj). Niektórzy twierdzą: Plug & Pray (wepnij i módl się [aby działało :) ])

Typowa wtyczka USB – wpinamy ją do komputera i mamy Plug & Play (wepnij i graj/działaj). Niektórzy twierdzą: Plug & Pray (wepnij i módl się [aby działało 🙂 ])

W pewnym momencie, np. kupując komputer, zdajemy sobie sprawę, że nie ma w nim już portów COM(RS-232), są natomiast tylko gniazda USB. I powiedziałby ktoś – „tym magicznym sposobem producenci pozbywają nas okazji do korzystania z portów RS-232”.  Czy to jednak źle, że porty RS-232 nie są już montowane w komputerach?

Patrząc na lepsze możliwości USB myślę, że jest to krok w dobrym kierunku. Zawsze można kupić odpowiednią przejściówkę, natomiast na miejscu portu RS-232 można zamontować nawet dwa porty USB, co jest zdecydowanie zaletą (natomiast kupowanie komputera, który ma np. tylko 2 porty USB jednak mija się z celem).

W porcie USB można zainstalować również przejściówkę dla Bluetooth, pozwalającą na komunikację bezprzewodową – ponieważ ta technologia obecnie również nieźle daje sobie radę z komunikacją.

Jednakże, mając instrumenty pomiarowe (lub inne), które oferują komunikację szeregową, mamy zwykle takie opcje:

– RS-232 (w starszych urządzeniach i niektórych nowszych)

– USB (w postaci miniUSB lub podobnej)

– Bluetooth

Twierdzę jednak, że tylko RS-232 oraz Bluetooth jest tutaj sensownym rozwiązaniem.

Zapytasz dlaczego? Przecież sam pisałeś o tym, jaki USB jest wspaniały.

Otóż jest wspaniały, jeśli chodzi o podpięcie dysku, myszki lub innego urządzenia peryferyjnego (typu drukarka), który zwykle używa się w sposób stacjonarny i częsty. Podpinasz i zapominasz o istnieniu połączenia – korzystasz i tyle Cię to obchodzi.

Natomiast jeśli chodzi o urządzenia pomiarowe to zwykle podpinamy je do komputerów w określonych momentach  – np. gdy chcemy z nich skorzystać w terenie, albo zgrać dane. Jeśli takie podpinanie jest częste, USB nie wydaje się sensownym pomysłem (podobnie RS-232). Na tym polu zdecydowanie wygrywa Bluetooth – komunikacja bezprzewodowa, aktywowana w momentach, w których jej potrzebujemy. Sprzęt pomiarowy wyłącznie z interfejsem USB – od tego lepiej trzymać się z daleka.

RS-232 ma swoje zalety. Często w urządzeniach, które posiadają USB, jest tylko port USB, nie ma natomiast innego portu komunikacyjnego. O ile w przypadku portu RS-232, jeśli się uprzemy – możemy mieć komunikację bezprzewodową (vide nasz wynalazek – Ultra Adapter), to w przypadku portu USB – odpowiednia przejściówka jest praktycznie nie do dostania (zupełnie inny sposób wymiany danych), więc jesteśmy ograniczenie do kabelka.

Dane otrzymywane z portu RS-232 można też bardzo łatwo zapisywać na komputerze (w postaci tzw. logów). Wystarczy program do komunikacji i odczytywania danych z portu i już mamy np. zapisane współrzędne z GPS lub wyniki z urządzenia pomiarowego (np. młotka Schmidta). Dane te są łatwiejsze do analizy niż dane wysyłane po USB, co ułatwia integrację sprzętu z oprogramowaniem (i sprawia, że tego typu usługi są tańsze).

Tak więc wybierając sprzęt (czy to GPS, czy pomiarowy typu waga elektroniczna), weź pod uwagę w jakim zakresie chcesz wykorzystać sprzęt.

  • jeśli zależy Ci na dostosowaniu tego sprzętu do wybranego oprogramowania, wybierz sprzęt z portem typu Bluetooth lub RS-232 (ale w tym drugim przypadku zaopatrz się w przejściówkę RS232-USB lub RS232-Bluetooth)
  • Ultra Adapter dla RS232-Bluetooth - mobilnie i zasilany z 2xAA

    Ultra Adapter dla RS232-Bluetooth – mobilnie i zasilany z 2xAA

    jeśli zależy Ci na mobilności (np. pracy sprzętu z tabletem/telefonem) – wybierz sprzęt obsługujący Bluetooth (ale uważaj na wersję Bluetootha!), ew. jeśli Bluetooth jest niedostępny – możesz wykorzystać nasz Ultra-Adapter i podpiąć mobilne zasilanie z dwóch paluszków

  • jeśli posiadasz komputer, którego sterowniki „gryzą” się Bluetoothem – wybierz RS-232 z dodatkową przejściówką RS232-USB
  • jeśli posiadasz komputer, którego sterowniki „gryzą” się z posiadaną przez Ciebie przejściówką RS232-USB, wybierz Bluetooth
  • jeśli adekwatny sprzęt z interfejsem RS232/Bluetooth jest niedostępny lub zbyt drogi – a dostępny jest jedynie z USB – wtedy bierz z USB (lepiej mieć jakąkolwiek komunikację, niż jej brak)
  • w przypadku interfejsu Bluetooth warto sprawdzić, czy sprzęt działa w oparciu o SPP (Serial Port Profile – profil portu szeregowego) – to gwarantuje nam uniwersalność rozwiązania
  • jeśli posiadasz komputer, którego sterowniki „gryzą” się zarówno z portami Bluetooth jak i przejściówką RS232-USB – czas zmienić lub zaktualizować oprogramowanie komputera 🙂

Jeśli posiadasz już sprzęt, który chcesz podłączyć do komputera, posiadający szeregowy interfejs (RS-232 / USB / Bluetooth), zapewne chciałbyś się dowiedzieć co nieco o jego konfiguracji. W takim przypadku zapraszam do następnego wpisu – „O portach szeregowych słów kilka – cz. II”.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Current ye@r *