Současná mobilní zařízení s jejich pestrobarevným a zároveň dynamickým grafickým uživatelským rozhraním GUI nastavila v otázkách podporované úrovně vzájemné komunikace vysoké standardy. Nelze se proto divit, že nově vznikající skupiny „chytrých“ zařízení budou uživatelé porovnávat právě s nimi. Ať již tedy hovoříme o domácích spotřebičích (např. kávovary nebo pračky), ovládacích prvcích systémů domácí automatizace, přístupových systémech, nositelné elektronice, vybavení do kanceláří (tiskárny či kopírky), nebo průmyslových zařízeních (třeba obráběcí stroje), zde všude budou vývojáři čelit tlaku ze strany všech těch, kteří si svou techniku hodlají užívat ještě více.
S rostoucími požadavky na rozhraní HMI typu člověk–stroj, které si obsluha nejen oblíbí, ale také jí napomůže k rychlému dosažení potřebných výsledků, se již bez sofistikovanějších technologií neobejdeme. Pro celou řadu vestavných aplikací budou k dispozici cenově zajímavé grafické TFT LCD panely. Typické úhlopříčky se pro malá chytrá zařízení pohybují zhruba od jednoho až do pěti palců, přičemž poslední dobou se stále častěji setkáváme i s velikostmi sedm palců, nebo ještě více. A pokud jde o počet bodů, dostáváme na výběr od 128 × 128 přes 320 × 240 (QVGA), 640 × 480 (VGA) až po 800 × 480 (WVGA), nebo dokonce 1080 × 720 v případě displejů s vysokým rozlišením.
Dlužno však dodat, že návrh grafických uživatelských rozhraní a také zapracování TFT LCD do vestavných systémů nepatří k jednoduchým úlohám. Tvorba GUI si žádá zvýšené úsilí, patřičné znalosti a opomenout nesmíme ani samotné řízení displeje, které bývá spojeno se značným výpočetním výkonem, pamětí pro rychlé vykreslování obsahu a konečně též i šířkou pásma daného rozhraní.
Zatímco alfanumerické displeje či segmentové LCD bude možné řídit na základě docela jednoduchých příkazů, TFT LCD již k vykreslení požadovaného snímku potřebují informace pro každý pixel. Jakmile počet pixelů, které bude nutné obsloužit, poroste jak se samotnými rozměry panelu, tak též jejich vyšší hustotou, obdržíme rovněž větší množství dat. A požadavky na dostupný výkon procesoru, velikost bufferu nebo šířku pásma u rozhraní porostou i v případě zvyšující se barevné hloubky, řekněme z 8 bitů na 16 nebo rovnou 24 bitů. Uvážíme- li hloubku 24 bitů na pixel, bude displej VGA s rozlišením 640 × 480 bodů vyžadovat ve spojení s bufferem přibližně 1 MB RAM. Pokud kromě toho obdržíme požadavek na vysokou snímkovou frekvenci, třeba za účelem plynulého vykreslování pohybu (např. animovaná grafika), nároky na systémové prostředky zase jen porostou.
Abychom tedy zajistili optimální řešení, bude nutné zvážit omezení provázaná s výkonem systému, jeho cenou a také výslednou velikostí. A to vůbec nehovoříme o zásadnějších otázkách dotýkajících se rychlosti uvedení produktu na trh nebo zkušeností vývojářů, které máme k dispozici.
Jestliže má vestavný host systém co do činění s levným či nízkopříkonovým mikrokontrolérem, nelze u periférií zpravidla počítat se speciálním TFT kontrolérem. Jednotka CPU pak nemusí být schopna zpracovat a obsloužit RGB data pro každý pixel s požadovanou snímkovou frekvencí, zatímco dále poběží hlavní aplikace. Na čipu může rovněž chybět odpovídající paměť RAM, dostupná pro frame buffer. Jednu z možností řešení v této situaci představuje displej připojený přes externí integrovaný obvod – bridge, který bude ze strany systému ovládán přes rozhraní I²C či SPI s malou šířkou pásma. Pamatuje přitom na veškerou paměť, možnosti zpracování nebo součásti pro řízení grafiky vyžadované ke generování dat určených RGB pixelům, včetně synchronizace či signálů zasahujících do podsvícení. A to je také průlomový přístup integrovaných grafických kontrolérů EVE (Embedded Video Engine) v podobě obvodů řady FT800 vyvinutých původně v FTDI, které však nyní dodává sesterská společnost Bridgetek. Ale nepůjde jen o řízení displeje. Každý čip EVE totiž dále integruje doplňkové obvody jak pro audio, tak též dotykové ovládání – viz obr. 1.
Abychom se mohli „porvat“ s nástrahami hardwarového i softwarového návrhu rozhraní HMI a z možností technologie EVE zde mohli těžit i ti nejméně zkušení bastlíři, nabízí Bridgetek speciální modul CleO50. Jedná se o chytrý displej s podporou dotykového ovládání – shield zahrnující pětipalcový TFT LCD, který zapojíme přímo do procesorové desky (Arduino, Mikrobus). Výrobce jej vybavuje rozhraním pro přídavnou kameru, audio nebo SD kartu, včetně možností volby reproduktoru či doplňků pro snímání obrazu. Bridgetek se navíc vypořádal se všemi potížemi, které mohou při programování HMI nastat a spojil CleO50 s grafickým návrhovým prostředím MikroElektronika Visual TFT.
Visual TFT umožňuje vývojářům řešit rozvržení HMI na základě přetažení objektů typu tlačítek či posuvných prvků z nabídky přímo na plochu a konfigurace jejich barvy, rozměrů či pozice. S kódováním se tak vývojář setká jedině v případě požadavku na nějaké animace. Visual TFT podporuje několik dobře známých rodin mikrokontrolérů, včetně STM32 od STMicroelectronics, ATMega (Atmel) nebo PIC od Microchipu.
Ve 4D Systems navrhli tři řady modulů TFT LCD připravených k okamžitému použití, které nejen zjednoduší zapracování grafického displeje, ale poskytnou i cenné funkce navíc. Rodina „Internet of Displays“ gen4-IoD tak třeba nabídne vlastní rozhraní Wi-Fi a pomůže vývojářům rychle navrhovat propojená zařízení internetu věcí IoT spolu s další výhodou v podobě dotykového ovládání. Moduly staví na Wi-Fi SoC ESP8266 (Espressif) obsahujících 32bitový mikrokontrolér a 16bitové jádro RISCového procesoru spolu s 512 kB paměti typu Flash. V rámci modulu tak může běžet jednoduchá uživatelská aplikace, příp. jej využijeme jako podřízenou jednotku k host procesoru. Řešení je kromě toho navrženo tak, aby umožnilo desce usednout vzadu v jedné rovině a zbytečně nic nevystupovalo.
Moduly gen4-IoD dostaneme s displeji QVGA (320 × 240 bodů) a podporou rozměrů 2,4", 2,8" nebo 3,2". V případě větších úhlopříček až do 7 palců a s rozlišením WVGA (800 × 480 bodů) pak bude řada gen4-ULCD od 4D založena na grafickém procesoru Diablo16 a počítat můžeme i s kontrolérem pro dotykové ovládání, kapacitní nebo odporové. A k dispozici je také ještě štíhlejší provedení, ovšem bez možností dotykového ovládání. Diablo16 se pyšní výkonným zpracováním grafiky, textu, obrázků či animací a lze jej využít jako samostatný grafický procesor, příp. poslouží host kontroléru jako grafický koprocesor.
V projektech založených na výkonném host systému, např. s mikroprocesorem, lze uvažovat i jednodušší zobrazovací subsystém. LCD CAPE od 4D Systems připojíme rovnou k desce CPU Beagle Bone Black s mikroprocesorem ARM Cortex-A8. S grafickou jednotkou SGX a vlastní DDR3 SDRAM 512 MB bude možné s výhodou využívat bohatých prostředků pro výstavbu elegantního a propracovaného GUI s hladkými přechody. CAPE jsou navrženy tak, aby pracovaly s grafickými SW stacky v rámci linuxové distribuce Debian.
Aby ve 4D Systems umožnili vývojářům navrhnout bezchybně vypadající GUI, které bude schopné pracovat s jakýmkoli modulem displeje z jejich široké nabídky, nechybí zde ani integrované vývojové prostředí IDE Workshop4. Workshop4 podporuje skvělé předpoklady jazyka 4DGL, příp. lze pracovat ve zcela grafickém prostředí. Na základě volitelných možností Workshop4 Pro pak dostáváme hybridní podmínky spojující grafiku s prvky 4DGL. Uživatelé budou rovněž těžit z editoru umožňujícího rychlé vytváření sofistikovaných widgetů ve více vrstvách, které počítají, pohybují se apod.
HoC (HMI-on-chip) od Lattice, to je alternativní přístup k výše uvedenému. Na základě pole FPGA tak dokážeme navrhnout kompletní subsystém pro práci s displeji TFT, včetně jejich řízení, renderingu, dotykového ovládání nebo systémového rozhraní. V Lattice pro tyto účely spojili síly s technickým partnerem, Mikroprojektem, a vytvořili komplexní architekturu integrující jejich grafický SW stack (IQ-Engine) s cílem zjednodušit návrh uživatelského rozhraní. Vzájemnou souvislost mezi FPGA od Lattice a softwarem Mikroprojektu zachycuje obr. 2.
Takovým způsobem bude možné podporovat i složité grafické efekty, např. alfa blending, a díky jedinému souboru projektu HMI dále zjednodušit jeho nasazení. Zároveň zde není nutné řešit komplikace spojované s operačním systémem. Vývojáři mohou rovněž volit z celé řady displejů, pamětí či systémových rozhraní.
Díky IQ-Editoru od Mikroprojektu, aplikaci pro vývojáře sloužící k návrhu rozhraní, lze bez nutnosti psát jakýkoli kód vytvořit zcela grafickou formou konkrétní podobu HMI. Rozhraní člověk-stroj mohou být skutečně propracovaná. Systém totiž kromě standardních prvků typu tlačítek, sliderů nebo sloupcových ukazatelů podporuje rovněž více úrovní, pracuje s průhledností a nebrání se ani složitějším strukturám menu.
Přístup k návrhu rozhraní bez nutnosti softwaru dále zjednodušuje vývojová deska pro HMI s ECP3 od Lattice. Řešení se odvíjí od možností standardního kitu Versa pro FPGA ECP3 a přichází s vývojovou verzí editoru HoC. Zahrnuje nástavbový modul dotykového TFT panelu s úhlopříčkou 4,3 palce a pro účely zhodnocení možností HMI a jeho dalšího nasazení nabídne též vlastní slot pro SD kartu.
Chytrá elektronická zařízení jsou stále rozšířenější a jejich uživatelé proto očekávají, že s přístroji bez ohledu na jejich konkrétní typ dokážou pracovat nejen efektivně, ale také intuitivně. Dotyková grafická uživatelská rozhraní mohou být sice „návyková“, nicméně s ohledem na systémové prostředky bude zřejmě nutné počítat s nemalými nároky. Větší a barevnější displeje s požadavky na plynulejší animace tak obvykle znamenají více systémové paměti, výpočetního výkonu, zvyšující se šířku pásma rozhraní apod.
V takových případech by mohly pomoci moduly samostatných displejů. A pokud je vývojáři dobře vyberou, dostanou nejen řešení s vyšší mírou integrace, ale třeba též funkce navíc, např. bezdrátové rozhraní. Vedle výběrových kritérií, jako jsou cena, výkon, podporované velikosti úhlopříček nebo možnosti samotné grafiky nesmíme ale zapomínat ani na související návrhové prostředí. Také to bude totiž rozhodovat o složitosti nebo rychlosti vývoje rozhraní HMI mezi člověkem a jeho strojem.