Serwisy partnerskie:
Close icon
Serwisy partnerskie

Infinity: System automatyki domowej - Epilog (budowanie własnego systemu)

Article Image
Elmax
Zakończył się cykl artykułów poświęconych systemowi Infinity. Część Czytelników dopiero dzięki niemu przekonała się, że budowa kompletnego systemu automatyki domowej to bardzo poważne i bardzo pracochłonne zadanie. Dla wielu cykl okazał się zbyt trudny, a niektórych być może nawet zniechęcił, bo uznali, że wszystko to zdecydowanie przerasta ich możliwości.

Rzeczywiście, budowa systemu automatyki domowej nie jest łatwym zadaniem. Rzeczywiście, wymaga wiedzy, cierpliwości. Na pewno pochłonie wiele czasu. Na pewno nie jest to zadanie dla elektroników początkujących.

Zainteresowanych tematem chciałbym jednak zachęcić, by nie rezygnowali. Ja wykonałem swój system dość dawno, według swoich pomysłów, upodobań, możliwości, z wykorzystaniem dostępnych wówczas podzespołów. Moją konstrukcję, która zresztą od lat dobrze spełnia swoje zadanie, należy uważać jedynie za prezentację pewnej koncepcji, idei rozwiązywania określonej grupy zagadnień. Oczywiście nie jest to rozwiązanie jedynie słuszne. Dziś zapewne realizowałbym je inaczej, gdyż dostrzegam jego wady i poczynione własne błędy, jednak wyciągam z tego wnioski na przyszłość.

Na przykład patrząc na strukturę urządzeń elektronicznych, zawsze można wydzielić coś, za pomocą czego użytkownik wpływa na pracę urządzenia. To może być przykładowo ogólnie pojęta klawiatura, nawet taka składająca się z zespołu kilku przycisków. Podobnie przydatny jest jakiś zespół pozwalający na sygnalizację określonych stanów (tu wystarczy zespół lampek LED) czy prezentujący jakieś dane (taką rolę może spełniać zespół wyświetlaczy siedmiosegmentowych) czy powszechnie używany alfanumeryczny moduł LCD.

Dziś zapewne zastanawialibyśmy się nad użyciem kolorowego ekranu dotykowego.

W każdym razie dodając do tego funkcje pomiarowe (jakiejkolwiek wielkości fizycznej) oraz funkcje sterowania, tworzymy przepis na budowę jakiegoś urządzenia czy systemu. Jego budowa jest w zasięgu hobbysty elektronika, o czym można łatwo się przekonać, przeglądając strony „Elektroniki dla Wszystkich”. Możliwości jest wiele. Tym bardziej że dziś mamy do dyspozycji wiele rozwiązań modułowych. Możemy konstrukcję składać z różnorodnych cegiełek – klocków.

Podstawowym problemem często jest obawa, że tematyka jest zbyt obszerna i zbyt trudna. Dlatego chciałbym zachęcić Czytelników, żeby nie ustawali w wysiłkach, a wtedy osiągną sukces. Prawdą jest, że sytuacja w elektronice się zmienia i komplikuje, ale nadal wszystko to jest dostępne dla takich zwykłych zjadaczy chleba, jak ja i Ty.

Przecież jeszcze nie tak dawno w amatorskich konstrukcjach zastosowanie mikrokontrolera czy mikroprocesora było rzadkością. W tamtych czasach profesja określana jako elektronik kojarzyła się z osobą, która buduje jakieś wzmacniacze, dobiera wartości rezystorów i kondensatorów, by uzyskać ściśle określone punkty pracy tranzystorów i wymagane funkcje przenoszenia sygnału, wnieść określone korekcje częstotliwościowe itp. Mnóstwo elementów elektronicznych, spore powierzchnie płytek drukowanych i dużo pracy poświęconej na zestrojeniu wszystkiego. Taki elektronik „rzeźbił w materii”.

Pojawienie się wzmacniaczy operacyjnych jako gotowych cegiełek spowodowało pewnego rodzaju rewolucję.

Wiele cech użytkowych, które dotąd były trudno dostępne lub wręcz niedostępne, znalazły się w zasięgu możliwości hobbystów. Kolejnym krokiem milowym stało się pojawienie układów logicznych i cyfrowych. Posłużę się przykładem z własnej historii. Jako student na wydziale elektrycznym politechniki w latach 80. XX wieku zbudowałem zegarek cyfrowy bazując na bramkach, licznikach i rejestrach. Duma rozpierała, bo udało się i działał.

Teraz z perspektywy czasu i realizowanej funkcji należałoby uznać, iż było to rozwiązanie wręcz prymitywne. Zegarek potrafił jedynie wyświetlać aktualny czas. Już samo ustawianie tego zegara było dosyć trudne do realizacji i wymagało użycia wielu dodatkowych układów logicznych. To przełożyło się na gabaryty urządzenia i zapotrzebowanie energetyczne. Funkcjonalność budzika, dzisiaj wręcz naturalna, to był wówczas „kosmos”.

Potem pojawiły się układy zawierające całość zegara w jednym układzie scalonym

Nawet polskie CEMI miało takie układy scalone w swojej ofercie. Układy logiczne pozwalały tworzyć rozwiązania, które dla wielu były z pogranicza magii. Ktoś, kto osiągnął wręcz mistrzostwo w budowie odbiorników radiowych oraz różnego rodzaju wzmacniaczy akustycznych, może mieć problemy z akceptacją faktu, że można zbudować urządzenie, które „będzie pamiętać” zapisaną informację, natomiast dla adepta „cyferek” funkcja realizowana przez przerzutnik nie jest niczym nadzwyczajnym. Jednak nadal cała elektronika była fizyczna, materialna.

Pojawienie się mikroprocesorów przyniosło prawdziwe trzęsienie ziemi.

Rozwiązania nieosiągalne lub trudno osiągalne, okazały się dostępne, i to wręcz w zasięgu ręki. Znikła znaczna część barier ograniczających kreatywność hobbystów. Jednak te nowe możliwości są okupione koniecznością poznania nowej dziedziny wiedzy, jaką jest programowanie. Pod tym pojęciem ukrywa się umiejętność projektowania i realizacji algorytmów.

Algorytm to nic innego jak szczegółowy przepis, którego realizacja doprowadzi do oczekiwanego celu.

Wbrew pozorom to nie jest coś nowego. Wspomniana wcześniej konstrukcja zegarka również realizuje pewien algorytm. Licznik zliczający sekundy po osiągnięciu określonej wartości musi zostać wyzerowany, a zwiększony ma zostać stan licznika minut. To właśnie jest algorytm, przepis na sposób działania urządzenia, który przekłada się na jego budowę.

Ten algorytm staje się zapisany pod postacią połączeń elementów logicznych tworzących zegarek, algorytm jest niejako fizyczny. Niefizyczną odmianą algorytmu jest informacja zapisana w pamięci, pełniąca rolę programu dla mikroprocesora, będąca ciągiem bitów zero-jedynkowych. Przemysł elektroniczny zaoferował mikroprocesory – uniwersalne elementy mogące realizować praktycznie dowolną funkcjonalność. Jednak wymaga to użycia bardziej wyrafinowanych narzędzi do tworzenia kodu dla stosowanych mikroprocesorów.

Sam mikroprocesor to nic innego jak uniwersalny automat synchroniczny.

To taki układ – zespół, złożony z bramek, rejestrów i liczników. Teoretycznie można go zbudować z pojedynczych układów cyfrowych, ale wtedy zajmie może jeden hektar powierzchni płytek drukowanych. W postaci scalonej zajmuje kilka centymetrów kwadratowych powierzchni, niemniej jest to nadal automat synchroniczny.

Nowe możliwości technologiczne stają się motorem napędowym nowych „zachcianek”. Taką naturalną zachcianką było: niech te procesory komunikują się ze sobą. Wymyślono ideę transmisji szeregowej. To sposób przesyłania danych przy użyciu „jednego druta”, który dziś dla większości elektroników nie stanowi już żadnej tajemnicy. Eskalacja „zachcianek” doprowadziła do powstania sieci komunikacyjnej obejmującej cały świat, pozwalającej na przesyłanie danych ze znaczną szybkością.

Tak powstał Internet, do którego zostały przyłączone „dorosłe” komputery. Nie oznacza to, że ta możliwość jest dostępna jedynie dla dużych komputerów. Małe urządzenia również mogą być członkami rozległej sieci. By do niej należeć, wystarczy spełnić kilka prostych wymagań. Być może, drogi Czytelniku, uważasz, że jest to trudne i skomplikowane. Nie mam zamiaru dyskutować, czy jest to prawdą, czy nie. Wszystko jest kwestią punktu widzenia.

Dzisiaj wykorzystanie mikrokontrolerów w konstrukcjach amatorskich jest powszechne.

Do niedawna umiejętność ich stosowania (jako rozwiązania sprzętowego i oprogramowania) wzbudzała podziw i komentarze typu ten to musi mieć głowę, ponieważ umie zrobić... Obecnie ta umiejętność staje się powszechna, ale czy to oznacza, że zmieniły się głowy hobbystów. To jest naturalna ewolucja. Wykorzystanie sieci ethernetowych w konstrukcjach amatorskich koncepcyjnie nie różni się od zastosowania mikroprocesorów ileś lat temu. Obok utartych rozwiązań zawsze wyłaniają się nowe, dotychczas niewystępujące. Filozoficznie to niczym się nie różni.

Z punktu widzenia technicznego, przykładowo w mikrokontrolerze LPC2378, do przesłania szeregowo czegokolwiek niezbędny jest UART. Jego odpowiednikiem dla komunikacji sieciowej jest EMAC. Sygnał z zespołu UART jest przetwarzany przez różne układy interfejsów. Powszechnie znany standard RS232 z układem MAX232, czy mniej popularny standard RS485 z układem SN75176. W przypadku sieci Ethernet rolę takiego interfejsu spełnia układ PHY (z przykładowym DP83848).

W wariancie RS232 całość jest zakończona złączem DB9, gdzie sygnał występuje na stykach o numerach 2, 3 i 5. W wariancie sieciowo-internetowym kanał komunikacyjny kończy się złączem RJ45, w którym użyte są styki 1, 2, 3 i 6. Wiadomo, że sygnałów w standardzie RS232 nie łączy się równolegle, więc mogą być połączone ze sobą jedynie dwie stacje wymieniające się danymi. Jeżeli zaistnieje potrzeba przyłączenia większej liczby stacji, koniecznością staje się budowa jakiegoś koncentratora/rozdzielacza.

W sieciach ethernetowych jest dokładnie tak samo. „Kabelków” ethernetowych nie łączy się równolegle. Bezpośrednio można połączyć jedynie dwa komputery. Chcąc przyłączyć do sieci więcej elementów, konieczny jest koncentrator/rozdzielacz (switch ethernetowy). Mając minisieć bazującą na transmisji szeregowej via UART (zakładamy, że jest zbudowany jakiś koncentrator, który odbiera dane z jednego portu i przekierowuje je na inne porty rozgrywając konflikty – taki odpowiednik switcha ethernetowego), to zrozumiałe staje się, że by dane dotarły do właściwego adresata, w przesyłanych danych musi istnieć dodatkowa informacja adresowa.

W systemie Infinity dane transmitowane via UART były zorganizowane w pakiety, w których zawarte było: kto, do kogo i co. W przypadku sieci ethernetowych transmitowane są ramki, które zawierają adresy MAC odbiorcy, nadawcy i przesyłane dane. Koncepcyjnie idea jest podobna. Oczywiste jest, że zagłębiając się w szczegóły, poszczególne idee ewoluują we własnym kierunku. To wymaga poznania wielu szczegółów związanych z daną tematyką. Świat idzie do przodu i by za nim nadążać, konieczna jest właściwa edukacja.

Warto zastanowić się nad pojęciem trudne.

Co to znaczy? W moim pojęciu trudne jest wtedy, gdy nie mam gotowej koncepcji rozwiązania, w głowie nie pojawiła się myśl, w jaki sposób rozwiązać problem. Przychodzące rozwiązania oczywiście będą bazowały na dotychczasowym doświadczeniu. Jeżeli ciągle, drogi Czytelniku, ograniczałeś się do stosowania komunikacji via UART z interfejsem RS232, to trudno oczekiwać, że zaświta Ci w głowie inne rozwiązanie. Obawa przed nowym zawsze pełni rolę „hamulcowego”, jednak można się przemóc i poznać „nowe”. Nikt nie daje gwarancji, że będzie to proste i bezbolesne.

Ludzkość jeszcze nie opanowała technologii „wkładania wiedzy łopatą do cudzej głowy”, wszystko należy wykonać samemu. Istnieje jednak pewien warunek konieczny, który musi być bezwzględnie spełniony: trzeba zacząć, trzeba próbować. Ponieważ technologia sieci ethernetowych została opracowana przez kogoś, jest, jaka jest. Aby ją wykorzystać, należy ją poznać i się do niej dostosować. Na początku sieci komputerowe wydają się czymś ogromnie skomplikowanym i trudnym. Zawsze jednak istnieje możliwość stopniowego zapoznania się z nimi. Pomocą mogą być artykuły w „Elektronice dla Wszystkich” dotyczące tematyki „Filozofia sieci”.

Mam nadzieję, że po ich lekturze wielu hobbystów elektroniki zmieni swoje nastawienie do sieci ethernetowych i ich konstrukcje staną się „obywatelami świata”. Technicznie stanie się możliwe przesłanie różnorodnych informacji na znaczne odległości, otworzą się zupełnie nowe możliwości. Na naszych oczach możliwości rodem z filmów science fiction powoli stają się rzeczywistością.

Nawet proste rozwiązanie jakim jest system Infinity, ma możliwość sprawdzenia i wniesienia korekt, posługując się nowoczesnym telefonem komórkowym. Możliwy jest dostęp zdalny – z dowolnej odległości. O takich możliwościach nawet filozofom się nie śniło, a jak się temu dokładniej przyjrzeć, to nic magicznego. Wszystko ma realne wytłumaczenie.

Podsumowując, by nie zostać w tyle, musimy iść do przodu.

Dobrą metaforą może być scena z filmu „Matrix”, gdzie główny bohater dostaje do wyboru tabletkę niebieską lub czerwoną. Niebieska tabletka symbolizuje wygodny, ale skostniały, wybór materialnej, fizycznej elektroniki. To swoisty komfort prostoty rozwiązań i przekonania, że wszystko jest proste. Tabletka czerwona to podróż w fascynującą przygodę i obcowanie z nieznanym. Rozpatrując jakiś problem techniczny, przychodzą mi do głowy różne warianty rozwiązania. Często te najbardziej szalone i nieoczekiwane okazują się najbardziej interesujące i godne uwagi. Są prawdziwe.

W tym świecie powoli ulega zmianie podejście do problematyki. Stwierdzenie, że „czegoś się nie da zrobić”, trzeba zastąpić następującym: „zastanówmy się, jak można to zrobić”. Odpowiednie narzędzia są już dane (programy narzędziowe, przykłady). Internet to nieprzebrana biblioteka pomysłów i rozwiązań. Może stać się inspiracją do dalszych poszukiwań. Nie zaprzeczam, że to wymaga pewnego wysiłku, pracy i wielu eksperymentów. Poniesiony wysiłek zawsze wcześniej czy później zaowocuje, ale to już zależy jedynie od nas samych. Ja wybrałem tabletkę czerwoną, a ty drogi, Czytelniku, co wybierasz?

Firma:
Tematyka materiału: automatyka domowa
AUTOR
Źródło
Elektronika dla Wszystkich lipiec 2020
Udostępnij
Zobacz wszystkie quizy
Quiz weekendowy
Czujniki temperatury
1/10 Temperatura to
UK Logo
Elektronika dla Wszystkich
Zapisując się na nasz newsletter możesz otrzymać GRATIS
najnowsze e-wydanie magazynu "Elektronika dla Wszystkich"