Menu
Accessories
Select

Wstęp

Współczesne komputerowe systemy sterowania umożliwiają zdalne sterowanie szeroką gamą urządzeń. Mamy wiele rodzajów takich systemów i wiele z nich jest bardzo wyrafinowanych. Systemy te można podzielić na bardzo różne kategorie w zależności od aspektów jakie nas interesują. Tych aspektów jest mnóstwo. Na przykład systemy te mogą różnić się architekturą, mogą wykorzystywać różne metody komunikacji (połączenia przewodowe lub bezprzewodowe), mogą mieć różne protokoły wymiany danych, mogą być autonomiczne lub nie, itp.
Teraz chcę zwrócić uwagę tylko na jeden ogólny aspekt - w jaki sposób skomputeryzowane systemy sterowania i operatorzy tych urządzeń komunikują się ze sobą. Warto pamiętać, że nie wszystkie systemy sterowania są monitorowane przez operatorów. Dziś mamy instalacje, w których jedynie urządzenia komunikują się ze sobą, a systemy działają autonomicznie. Zaczniemy jednak od podstawowych projektów, w których systemem zarządza człowiek. W literaturze fachowej taką implementację nazwa się interfejsem komunikacyjnym człowiek-maszyna lub człowiek-komputer.
Wyobraźmy sobie, że mamy manipulator robota, tzw ramię robotyczne. Ramię to sterowane jest przez system komputerowy podłączony do niego poprzez odpowiedni sterownik.

Fig. 1

Sterownik można podłączyć do systemu komputerowego za pomocą kabla, bezprzewodowo lub światłowodu. System komputerowy nie musi być komputerem stacjonarnym, może być innego typu.
Najważniejszym dla nas pytaniem jest teraz, gdzie może znajdować się operator?

Fig. 2

Najstarsze i klasyczne rozwiązanie polega na tym, że operator korzysta z aplikacji zaimplementowanej na tym samym komputerze, który steruje urządzeniem.
Obecnie wiele komputerowych systemów sterowania jest bardziej wyrafinowanych. Komputer sterujący podłączony jest do sieci komputerowej (w szczególności do Internetu).

Fig. 3

Operator może znajdować się w dowolnym miejscu na świecie i stamtąd zdalnie sterować robotem. Oczywiście operator wykorzystuje także komputer do połączenia się z systemem sterowania robota.
Takie rozwiązania to standard w Internecie Rzeczy (IoT) lub w projektach typu Smart Home, etc. Steruje się w ten sposób bardzo różnymi urządzeniami – szacuje się, że jest ich miliardy.
Należy jednak zaznaczyć, że niezależnie od wersji architektury systemu sterowania, zawsze mamy komputer bezpośrednio sterujący urządzeniem.

Przedstawiłem w dużym uproszczeniu jaka może być architektura komputerowych systemów sterowania. Jest to potrzebne, jeśli chcemy zrozumieć, jak działają takie systemy, sami je zbudować lub opracować dla nich odpowiednie oprogramowanie.

Jak widać do opracowania takiego systemu potrzebny jest wykwalifikowany zespół osób takich jak:

Jednakże, nie musicie być profesjonalistami, wystarczy, że jesteście hobbystami lub pasjonatami i lubicie sami coś zrobić. Możecie też być początkującymi w tej dziedzinie, o ile chcecie nauczyć się czegoś nowego. To z myślą o takich ludziach tworzę te strony internetowe.



☆ Oprogramowanie - Software ☆

Tworzenie oprogramowania dla komputerowych systemów sterowania obejmuje zagadnienia takie jak: aplikacje webowe, formaty danych przesyłanych sieciami komputerowymi, internetowe bazy danych, tworzenie aplikacji z intuicyjnymi graficznymi interfejsami użytkownika (GUI), aplikacje niskiego poziomu do sterowania urządzeniami poprzez porty komputera, itp.
Zasadniczo nie będę zamieszczał tu opisów projektów z serii DIY (Do It Yourself) pod tytułem "Jak skonstruować urządzenie X". Chcę się skupić na metodach sterowania komputerowego i oprogramowaniu do tego celu. Jednakże jak pisać takie aplikacje nie mając urządzeń do testowania tego oprogramowania? Można oczywiście takie urządzenia kupić, ale nie każdy chce wydać na to swoje pieniądze i tracić czas aby te urządzenia instalować .
Dla tych, którzy lubią skupiać się wyłącznie na programowaniu, stworzyłem kilka wirtualnych urządzeń, którymi można sterować przez Internet.


☆ Sprzęt - Hardware ☆

Ogólnie, nie będę tu zamieszczał opisów jak skonstruować urządzenia sterowane komputerowo albo ich sterowniki. W innych działach mojego serwisu, znajdziecie trochę informacji o elektronice i sprzęcie, ale głównie skupiam się na zagadnieniach z branży IT. Jednakże poniżej napisałem kilka słów o kontrolerach.
Do sterowania urządzeniami można wykorzystywać komputery typu PC lub inne wyposażone w odpowiednie porty (np. USB). Profesjonaliści często opracowują własne komputerowe sterowniki do sterowania ich urządzeniami. Jednakże i oni często, tak jak i hobbyści oraz amatorzy, korzystają z gotowych jednopłytkowych komputerów. Te płytki są wyposażone w mikroprocesory, pamięć, urządzenia wejścia/wyjścia podłączone do portów. Jest tam wszystko co potrzeba, aby sterować dużą gamą najróżniejszych urządzeń. Bardzo ważne jest to, że istnieje bardzo bogate oprogramowanie do tych sterowników i jest ono darmowe. Nic więc dziwnego, że są te platformy chętnie wykorzystywane w edukacji. Wymienię tu kilka bardzo popularnych tego typu rozwiązań. Polecam się z nimi zapoznać i może wybierzecie coś dla siebie.

Sterowniki - jednopłytkowe systemy komputerowe:

Odniosę się do niektórych z tych platform w innych działach tego serwisu.