Moduły rozszerzeń do komputerów jednopłytkowych (2). Moduły interfejsu użytkownika

Moduły rozszerzeń do komputerów jednopłytkowych (2). Moduły interfejsu użytkownika
Pobierz PDF Download icon

W poprzedniej części opublikowanej w EP 7/2016 omówiliśmy moduły interfejsowe do komputerów jednopłytkowych. Teraz skoncentrujemy się na elementach ułatwiających tworzenie interfejsów użytkownika. Grupa ta obejmuje wyświetlacze i elementy optoelektroniczne, które pozwalają na prezentowanie informacji użytkownikowi, a także podzespoły, dzięki którym komputer jednopłytkowy można obsługiwać bez konieczności zdalnego łączenia się z nim, czyli klawiatury, sensory dotyku oraz zestawy przycisków.

Wyświetlanie informacji dla użytkownika i odczytywanie wydawanych przez niego komend da się zrealizować za pomocą standardowych komponentów elektronicznych, takich jak monitory, uniwersalne wyświetlacze, diody LED, pojedyncze przyciski, czy też uniwersalne, kompletne klawiatury, podłączane przez interfejs USB lub Bluetooth. My jednak je tym razem pominiemy, bo są to w gruncie powszechnie dostępne elementy, które równie dobrze jak do komputerów jednopłytkowych, sprawdzą się z w dowolnych innych projektach elektronicznych. Opisane moduły są albo interesującym połączeniem grupy elementów, albo zostały zaprojektowane bezpośrednio pod kątem stosowania ich z małymi komputerami jednopłytkowymi.


Wyświetlacze LCD i OLED

Większość nowoczesnych komputerów jednopłytkowych ma wymiary zbliżone do wielkości karty kredytowej, a do tego są dosyć płaskie. Łatwo więc sobie wyobrazić sytuację, w której jedna, wierzchnia strona obudowy takiego komputera jest niemal w całości pokrywana wyświetlaczem. Sens takiego rozwiązania odkryli dostawcy optoelektroniki i przygotowali szereg modułów wyświetlaczy, które można dołączyć do komputerów jednopłytkowych, a których wielkość dobrze wpasowuje się do obudowy o typowych wymiarach.

Wyświetlacz, w zależności od dokładnego przeznaczenia, może być przyłączany przez HDMI, LVDS, a nawet przez SPI lub I2C. Moduły przystosowane do konkretnych komputerów przemysłowych mają odpowiednio zamontowane wyprowadzenia, by wyświetlacz utrzymywał się w dobrej pozycji, nawet bez potrzeby stosowania dodatkowych elementów mocujących.

W przypadku Raspberry PI istnieje nawet „oficjalny” wyświetlacz i to od niego należy zacząć. 7-calowy ekran o rozdzielczości 800×480 ma wbudowany panel dotykowy i wygląda dosyć atrakcyjnie. To chyba najszybszy sposób, by na podstawie RPI zbudować np. tablet. Co więcej, dużą zaletą jest fakt, że sterowniki do tego wyświetlacza są wbudowane w system operacyjny (Raspbian) i w razie potrzeby – aktualizowane. Wyświetlacz ten podłączany jest poprzez płytkę adaptera, która realizuje zasilanie i konwersję sygnałów. Zasilanie jest pobierane z wyprowadzeń GPIO, a sygnały z portu DSI (Display Serial Interface). Pojemnościowy interfejs dotykowy obsługuje 10 punktów dotyku jednocześnie. Pozostałe parametry wyświetlacza to:

− odświeżanie 60 Hz,
− 24-bitowa głębia kolorów,
− kąty obserwacji: po około 70° z każdej strony.

Moduł wyświetlacza ma otwory montażowe, ułatwiające montaż komputera. Fakt, że wyświetlacz ten jest oficjalnym dodatkiem sprawia, że na rynku już za kilkadziesiąt złotych można znaleźć także gotowe obudowy, specjalnie przygotowane do montażu ekranu i Raspberry Pi. Cena tego modułu to ok. 350 zł.

Siedem cali to jednak trochę dużo. Zastosowanie takiego wyświetlacza powoduje, że cała konstrukcja traci zalety rozmiaru karty kredytowej. Dlatego dla wielu projektów dobrym wyborem będzie moduł wyświetlacza, który rozmiarami przypomina samo Raspberry PI. W praktyce wyświetlacz tego typu o przekątnej 2,4” oraz rozdzielczości 320×240 pikseli można przyłączyć do komputera poprzez GPIO. Choć na potrzeby montażu, zasłaniane jest całe wyprowadzenie GPIO, sygnały sterujące przekazywane są poprzez SPI, a podświetlenie można regulować za pomocą PWM. Użyty interfejs ogranicza szybkość odtwarzania animacji do około 25 klatek na sekundę, a standardowe sterowniki powodują wyświetlanie tej samej, choć przeskalowanej treści, co na normalnym monitorze, jaki byłby podłączony do RPI przez HDMI. Moduł tego typu ma też 5 miniaturowych przycisków mechanicznych oraz rezystancyjny ekran dotykowy i oczywiście 4 otwory montażowe, które zostały wywiercone tak, by znajdowały się bezpośrednio nad otworami montażowymi Raspberry Pi. Sam wyświetlacz został wyprodukowany przez firmę 4D Systems, a cena kompletnego modułu wynosi ok. 160 zł.

Na podobnej zasadzie zbudowano moduł o identycznej rozdzielczości, ale o przekątnej 3,2”. W tym przypadku nie wystarczyło jednak już miejsca na cztery otwory montażowe, a przyciski mechaniczne ograniczono do 3. Oczywiście do podstawowej obsługi wystarczy wbudowany rezystancyjny ekran dotykowy. Zaletą takiego ekranu jest cena – można go nabyć już za ok. 75 zł.

Ta sama kwota wystarczy do zakupu bardzo podobnego wyświetlacza o jednak istotnie lepszych parametrach. 3,5” i rozdzielczość 320×480 pikseli to parametry kolejnego, nieco większego modelu. Niestety jest on pozbawiony wszelkich przycisków mechanicznych a nawet otworów montażowych. Oczywiście – zaimplementowano rezystancyjny ekran dotykowy.

Dopłacając 40 zł można pokusić się o bardzo podobny model, ale wykonany z matrycą IPS, która przede wszystkim pozwala na uzyskanie lepszych kątów obserwacji. Warto dodać, że niektórzy producenci oferują rysiki w zestawie do wyświetlaczy z ekranami rezystancyjnymi.

Większe wyświetlacze to już bardziej uniwersalne konstrukcje, które choć rekomendowane są dla Raspberry Pi, będą dobrze działać także z wieloma innymi minikomputerami. Tu standardem jest wykorzystanie interfejsu HDMI do przesyłania obrazu oraz USB na potrzeby interfejsu dotykowego. Cena oczywiście będzie zależeć od rozmiaru i parametrów matrycy, ale rzadko kiedy spada poniżej 100 zł. Dobierając wyświetlacz tego typu warto sprawdzić, czy producent lub dystrybutor wie coś na temat przygotowanych obudów lub elementów ułatwiających montaż. Choć i tak konieczne staje się podłączenie przewodów HDMI i USB, możliwość sztywnego połączenia wyświetlacza z komputerem jest zazwyczaj pożądana.

Jeśli dwa przewody to zbyt wiele, można poszukać modelu, w którym ekran dotykowy jest obsługiwany przez któryś z interfejsów z GPIO. W praktyce będzie to najczęściej SPI. Co więcej, producenci starają się, by ekrany tego typu były w pełni obsługiwane nie tylko przez RPI, ale też przez inne popularne komputery.

Co ciekawe, na rynku można też znaleźć moduły, które zawierają przygotowane pola lutownicze na mikroprzyciski, a które – dla zmniejszenia ceny – są dostarczane bez tych elementów. Dzięki temu użytkownik może łatwo samemu domontować dodatkowe przyciski, przylutowując je.

O ile standardowe moduły wyświetlaczy, przygotowane pod kątem Raspberry Pi mają nawet kilkanaście cali i rozdzielczości HD, na rynku znaleźć można też modele, których projekty przygotowano bez oglądania się na aktualną modę. A są to bardzo ciekawe produkty, choć ich ceny mogą zniechęcać.

Za około 100 zł można nabyć kolorowy wyświetlacz TFT-LCD o przekątnej 4,3” i rozdzielczości 480×272 piksele, który podłączany jest do RPI przez… złącze analogowe, a więc kablem z wtykiem cinch. Ekrany tego typu mogą wymagać dodatkowych modyfikacji standardowych systemów operacyjnych Raspberry Pi. Trudno zachęcać do ich użycia, szczególnie że złącze z sygnałem analogowym traci na popularności, ale na rynku można znaleźć np. model z podstawką, która dodatkowo służy jako futerał. Dzięki temu w łatwy sposób można przygotować mobilny monitor dla RPI.

Na potrzeby projektów z Raspberry PI można też użyć modułów wyświetlaczy OLED. Szczególnie dużą popularnością cieszą się modele z ekranami 0,96” – głównie monochromatyczne, albo z matrycą na stałe podzieloną na sekcje o konkretnych kolorach, tak by łatwo można było realizować typowe interfejsy użytkownika. Wyświetlacze tego typu komunikują się zazwyczaj za pomocą SPI lub I2C, co pozwala zmniejszyć liczbę wyprowadzeń potrzebnych do ich podłączenia. Dzięki technologii OLED pobierają mało prądu i mają bardzo szerokie kąty obserwacji. Projekty z tego typu wyświetlaczami opisywaliśmy już w EP i będziemy pokazywać w przyszłości. Ich ceny – w przypadku rozdzielczości 128×64 piksele, koszt to ok. 90 zł, przy czym czytelnicy Elektroniki Praktycznej mogli je także otrzymać bezpłatnie, w ramach Klubu Aplikantów Próbek.

Jeśli 0,96” to wciąż za dużo, na rynku można znaleźć monochromatyczny ekran 0,66” o rozdzielczości 64×48 pikseli i zapłacić za niego ok. 60 zł. Obsługa takiego wyświetlacza odbywa się najczęściej również przez I2C lub SPI.

Wątpliwości odnośnie do sensu zakupu mogą budzić moduły z wyświetlaczami LCD alfanumerycznymi. Zajmują one mniej więcej tyle, co cały minikomputer Raspberry Pi, a ich możliwości są znacznie bardziej ograniczone niż ekranów graficznych. Jednakże nie pobierają dużo prądu, często mają wbudowane dodatkowe przyciski i potencjometr do regulacji kontrastu oraz wcale nie jest trudno je programować. W praktyce komunikują się z komputerem głównie za pomocą I2C lub ew. SPI. Problem jednak w tym, że ich cena jest zbliżona do cen modułów graficznych i wynosi ok. 100 zł.

Nieco inaczej ma się sytuacja z wyświetlaczami dla platformy Arduino. Ze względu na prostotę, alfanumeryczne moduły LCD dla tej serii urządzeń to tak naprawdę zwykłe wyświetlacze, w związku z czym ich koszt wcale nie jest duży i właściwie nie ma co ich opisywać. Znacznie ciekawsze są natomiast specjalne moduły Arduino Shield z wyświetlaczami. Dobrym przykładem jest 2,8-calowy ekran TFT-LCD o rozdzielczości 320×40 pikseli, z interfejsem SPI i dodatkowo… czytnikiem microSD. Za ok. 80 zł można nabyć model obsługujący ok. 65 tysięcy kolorów oraz z wyprowadzonym przyciskiem resetowania. Ma on na tyle znaczenie, że wyświetlacz może posłużyć do łatwego prezentowania treści z karty SD, bez potrzeby przetwarzania ich przez mikrokontroler Arduino. Co więcej, modele tego typu często są kompatybilne nie tylko z Arduino, ale też Leonardo i Nucleo.

Inną bardzo ciekawą konstrukcją jest moduł z e-papierem, który w ostatnim czasie zyskuje na popularności. Kosztem około 250 zł można nabyć 4,3-calowy ekran monochromatyczny o rozdzielczości 800×600 pikseli. Bazuje na technologii E-ink, wymaga zasilania napięciem z zakresu od 3,3 V do 5 V i komunikuje się z otoczeniem za pomocą interfejsu szeregowego UART. Istotne są też wbudowana pamięć Flash (128 MB) i biblioteka zainstalowanych czcionek. Producent udostępnia też biblioteki do komunikacji z użyciem konwertera USB-UART.

Przeglądając rynek modułów wyświetlaczy LCD i OLED do komputerów jednopłytkowych można natrafić na bardzo wiele konstrukcji, które różnią się czasem tylko szczegółami. Przykładowo dostępne są np. właśnie kolorowe ekrany z gniazdami na kartę micro SD lub z miniaturowym joystickiem. Dlatego trudno je wszystkie kompleksowo opisać. Dokonując wyboru trzeba po prostu przejrzeć ofertę ulubionego sklepu z elektroniką i upewnić się, że dany model nie będzie stwarzał problemów z wybranym minikomputerem. Warto też poszukać dodatkowych informacji na forach internetowych – np. na forum.ep.com.pl.

Diody LED

W wielu projektach wcale nie ma potrzeby stosowania całych wyświetlaczy graficznych, czy nawet alfanumerycznych. Często do informowania użytkownika o stanie urządzenia wystarczy prosty zestaw diod LED. Oczywiście, jeśli mają to być zupełnie autorskie rozwiązania, najlepiej będzie samodzielnie zaopatrzyć się w odpowiedni wybór LEDów i podłączyć je zgodnie z własnym pomysłem. Jednak dostępne na rynku gotowe moduły nierzadko po prostu pozwalają w łatwy sposób uzyskać atrakcyjne wizualnie rozwiązanie.

Pierwszy z brzegu przykład to matryca diod LED 16×8, której wyprowadzenia przystosowano tak, by idealnie pasowała do Raspberry Pi. Można ją kupić za ok. 30 zł i komunikuje się ona poprzez SPI. 26-pinowe złącze sprawi, że pasuje nawet do starego RPI.

żyteczny może okazać się również moduł 8-segmentowych bloczków, także komunikujący się przez SPI. Koszt to kilkadziesiąt złotych za 8 bloczków 8-segmentowych, zamontowanych na jednej PCB.

Inne ciekawe rozwiązania obejmują przede wszystkim pierścienie złożone z od kilku do kilkudziesięciu diod LED. Są to najczęściej diody RGB o średniej mocy, zamontowane na płytce ze zintegrowanym sterownikiem. Biblioteki do sterowania nimi można pobrać bezpłatnie z Internetu, zarówno na potrzeby Raspberry Pi, jak i Arduino, a ze względu na użycie Pythona, po drobnych modyfikacjach zadziałają także z innymi minikomputerami. Na podobnej zasadzie działają paski i łuki diodowe, które można łączyć w dowolne kształty.

Wśród niewielkich wyświetlaczy i sygnalizatorów diodowych znajdą się także bardzo specyficzne konstrukcje, jak np. moduł oparty na układzie TM1651, który służy tylko i wyłącznie do sygnalizacji stopnia naładowania akumulatora. Zawiera on zestaw diod LED, które ułożone są w kształt symbolu baterii. Całość ma miniaturowe rozmiary, a sterowanie diodami odbywa się cyfrowo. Moduł tego typu można nabyć za ok. 20…25 zł.

Klawiatury

W kwestii klawiatur wybór modułów jest znacznie inny niż w przypadku wyświetlaczy. Wynika to z faktu, że w przypadku większości komputerów jednopłytkowych, najbardziej prawdopodobne sposoby wprowadzania danych przez użytkownika obejmują korzystanie z klawiatur USB, a czasem Bluetooth. Jeśli duże, zewnętrzne urządzenie nie jest opcją (a trzeba pamiętać, że niektóre klawiatury bezprzewodowe na Bluetooth są bardzo małe), to pozostaje jeszcze ekran dotykowy, który jest standardowym wyposażeniem wielu modułów wyświetlaczy, i który można także nabyć oddzielnie.

Jeśli natomiast projektant chce zapewnić użytkownikowi dostęp

Podsumowanie do kilku przycisków, wystarczy by skorzystał z modułu wyświetlacza z takimi elementami lub samodzielnie domontował je, wybierając podzespoły z szerokiej oferty dowolnego dystrybutora i dopasowując je do kształtu obudowy. Mimo to istnieją pewne typowe rodzaje interfejsów użytkownika, których każdorazowe, ręczne tworzenie wcale nie jest wygodne.

Dla takich właśnie przypadków powstało kilka standardowych modułów klawiatur – i tu warto dodać, że najczęściej są to klawiatury dotykowe. W praktyce zawierają one przede wszystkim slidery (suwaki) i kursory, a więc elementy ułatwiające sterowanie niby-analogowe. Podłączane są do minikomputera za pomocą I2C lub SPI. Można też znaleźć uniwersalne moduły z kontrolerami (multiplekserami) linii detektorów dotyku, dzięki czemu można zrealizować np. takie projekty, jak opisywany w tym roku w EP BeetBox, czyli „perkusja” wykonana z buraków.

Wybór elementów do wykonania interfejsu użytkownika to kwestia idei całego projektu i to od niej przede wszystkim zależy to, czego będzie się szukać. Najwięcej opcji jest w przypadku wyświetlaczy – szczególnie, jeśli ekran nie jest zbytnio ograniczony kształtem obudowy. Zdecydowanie więcej modułów tego typu zostało zaprojektowany dla Raspberry PI niż dla innych komputerów jednopłytkowych, co w efekcie sprawia, że jeśli chce się stworzyć projekt z wyświetlaczem sterowanym w inny sposób niż przez HDMI, warto przyjrzeć się dostępnemu wyborowi, zanim sięgnie się po inny komputer niż RPI. Cenne jest też to, że wiele z omówionych modułów ma gotowe biblioteki dla poszczególnych komputerów lub w ogóle nie wymaga dodatkowych sterowników.

W przypadku diod LED i przycisków, sięganie po moduły niewiele zaoszczędzi czasu, w stosunku do wykorzystania standardowych elementów. Dlatego w tym zakresie, rozpoczynając poszukiwania warto przeglądać cały rynek, by znaleźć te podzespoły, które najbardziej będą odpowiadały nam pod względem wyglądu i ergonomii, a w dalszej kolejności sprawdzać, czy dany element ma swój odpowiednik przystosowany w jakiś sposób pod kątem używanego komputera jednopłytkowego.

Marcin Karbowniczek, EP

 

Artykuł ukazał się w
Elektronika Praktyczna
wrzesień 2016
DO POBRANIA
Pobierz PDF Download icon

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik kwiecień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio marzec - kwiecień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje kwiecień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna kwiecień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich kwiecień 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów