0,00 €

V košarici ni izdelkov.

0,00 €

V košarici ni izdelkov.

More
    DomovRevijaNova številkaPreprosta pot do sodobnega uporabniškega vmesnika

    Preprosta pot do sodobnega uporabniškega vmesnika

    eestecRUTRONIK GmbH

    Današnji vgrajeni sistemi skoraj ne morejo več brez prikazovalnika. Vendar pa njegova izbira in integracija predstavljata izziv za razvijalce ter podaljšata razvojni proces. Serijsko izdelane pametne enote s prikazovalnikom so pogosto stroškovno učinkovita alternativa.

    Če primerjamo diskretno zasnovo z enoto s prikazovalnikom, se modularni pristop glede na stroške za kosovnico sprva ne zdi posebej privlačen. Če pa upoštevamo še hitrost razvoja in preprostost uporabe, se račun izide v korist enote s prikazovalnikom. Za primer vzemimo obstoječo aplikacijo, ki deluje na 8-bitnem mikrokontrolerju in naj bi bila zdaj opremljena z barvnim grafičnim prikazovalnikom z zaslonom na dotik. Večina mikrokontrolerjev sicer zmore krmiliti vmesnik prikazovalnika LCD po vgrajenem ali ločenem gonilniku, vendar pa sta velikost in ločljivost prikazovalnika omejena z viri mikrokontrolerja.

    8-bitni mikrokontrolerji lahko na primer krmilijo dvovrstične matrične prikazovalnike, za večje pa jim lahko že zmanjka virov. Poleg tega mora načrtovalec dodati vgrajeno programsko opremo, kot so knjižnice in slikovne datoteke. Dodana funkcija zaslona na dotik pomeni dodatno razvojno delo. Med proizvodnjo je treba nato opraviti strog vhodni pregled prikazovalnikov. Vedno je namreč prisotna možnost sprememb brez predhodnega obvestila, ki zahtevajo optimizacijo ali ponovni razvoj gonilnikov za prikazovalnik.

    Kaj prinašajo enote
    Pametni modularni prikazovalniki imajo za komunikacijo z gostiteljem običajno standardni vmesnik, kot so I2C, SPI ali UART. Nekateri imajo tudi vgrajen mikrokontroler. Ta ne krmili le vseh grafičnih elementov, ampak pogosto vsebuje tudi veliko število V/I- in drugih perifernih naprav, tako da lahko enota izvaja celotno ciljno aplikacijo.

    Številne enote imajo knjižnico funkcij, s katero jih lahko dokaj preprosto krmilimo z gostiteljskim mikrokontrolerjem. Nekatere imajo tudi celovito integrirano razvojno okolje (Integrated Development Environment – IDE), ki vključuje razvoj in pripravo grafičnega uporabniškega vmesnika (Graphical User Interface – GUI) kot del procesa načrtovanja vgrajenega sistema. Za izjemno hitro izdelavo prototipov in razvoj aplikacij brez pisanja kode ponujajo nekatera od teh razvojnih okolij poteke dela v slogu »kar vidite, to dobite« (What You See Is What You Get – WYSIWYGI).

    Čar modularnega pristopa je torej v tem, da so vsi gonilniki, osnovni gradniki in funkcije za grafični uporabniški vmesnik že razviti ter preizkušeni. Inženirji se lahko zato v celoti posvetijo sami zasnovi uporabniškega vmesnika. Gostiteljski mikrokontroler lahko vse naloge za prikazovanje preloži na enoto in tako vse svoje vire izkoristi za glavno aplikacijo.

    Podpora pri snovanju uporabniških vmesnikov
    Za podporo snovanju uporabniškega vmesnika je proizvajalec prikazovalnikov 4D Systems razvil orodje, s katerim lahko hitro in preprosto ustvarimo pametne grafične uporabniške vmesnike. »Workshop4 IDE« ponuja več razvojnih okolij od besedilnega do vizualnega programiranja (slika 2). S funkcijo potegni-in-spusti omogoča intuitivno uporabo brez klasičnega programiranja.

    Prikazovalna enota za razvojni komplet Rutronik RDK2
    Zaradi teh prednosti uporablja tudi podjetje Rutronik za svoj razvojni komplet RDK2 (slika 3) pametno enoto s prikazovalnikom. Ta podpira predvsem razvoj prototipov za koncepte za številna področja uporabe, kot sta IoT in IIoT, pametne nosljive naprave ali pametni dom. Plošča temelji mikrokontrolerju Infineon z ultranizko porabo in visoko zmogljivostjo CY8C6245AZI-S3D72. Poleg tega ima RDK2 še zunanji bliskovni pomnilnik NOR Semper, 512 Mb, in pomnilnik PSRAM AP, 64 Mb, APS6404L-3SQR-ZR, povezana po vmesniku QSPI. To razširja možnosti kompleta RDK2, če ta dva pomnilnika uporabljamo hkrati v načinu preslikanega pomnilnika (Memory Mapped Mode).

    Za primer uporabe kompleta RDK2 kot naprave za ugotavljanje kakovosti zraka na podlagi indeksa hlapljivih organskih spojin (Volatile Organic Compounds – VOC) smo kot prikazovalnik in vnosno napravo uporabili 4,3-palčni prikazovalnik gen4-uLCD-43DCT-CLB podjetja 4D Systems z vgrajenim kapacitivnim zaslonom na dotik. Temelji na grafičnem krmilniku DIABLO16 in se krmili po vmesniku UART. Njegova prenosna hitrost 115.200 b/s zadošča za upravljanje z zaslonom na dotik brez opaznih zakasnitev. Prenosno hitrost vmesnika UART je mogoče po potrebi povečati na do 600 kb/s.

    Za hitro integracijo s kompletom RDK2 priporočamo adapter Arduino 4D-ARDUINO-ADAPTOR-SHIELD-II. Primer vgrajene programske opreme »RutDevKit-PSoC62_GEN4_ULCD_43« se privzeto nanaša na podatke tipala VOC SGP40 podjetja Sensirion, lahko pa tudi samodejno preklopi na vgrajeni potenciometer POT1, če sistem na vodilu I2C ne prepozna tipala. Potenciometer se odčita s perifernim A/D-pretvornikom. Na prikazovalniku se nato prikažejo odčitane vrednosti A/D-pretvornika. Podjetje Rutronik bo ponudilo tudi ploščo »RAB1 – Sensorfusion« s tipalom SGP40.

    Podjetje 4D Systems zagotavlja za prikaz knjižnico ViSi Genie. Ta je vključena v vzorčni projekt za sistem RDK2 »RutDevKit-PSoC62_GEN4_ULCD_43« za uporabo v razvojnem okolju ModusToolbox IDE, priročni zbirki programske opreme in orodij za hiter razvoj z mikrokontrolerji Infineon. Za podporo knjižnici so implementirane konfiguracijske funkcije uporabniškega API in mehanizmi za obravnavo dogodkov (Event Handler). Ti razvijalcem omogočajo upravljanje dogajanja v programu, ko pride do določenega dogodka, npr. vnosa.

    Prototipi funkcij, ki jih je treba implementirati za delovanje sklada ViSi-Genie, so prikazani v okvirčku »Potrebne funkcije«.
    Krmiljenje prikazovalnika poteka tako, da posameznim predmetom na prikazovalniku ali v ozadju, ki morda niso vidni, pošiljamo obvestila. Ukaz, ki posodobi kotni merilnik »Angular Meter« z indeksom VOC, je lahko na primer videti takole:

    /* Update the VOC Index gauge */
    genieWriteObject(GENIE_OBJ_ANGULAR_METER,
    0, gaugeVal);

    Dogodki, npr. pritiski na tipke, se preverjajo v rednih intervalih po 20 milisekund ali hitreje z izvajanjem funkcije:

    /* Check for events */
    genieDoEvents(true);

    Razvojno okolje Workshop4 IDE omogoča razvijalcem oblikovanje grafičnih predmetov in njihovo programiranje v pomnilnik prikazovalnika.

    Primer aplikacije kaže osnove z gradnikoma za kotni merilnik »Angular Meter« in prikaz časovnega poteka signala »Scope« za prikaz indeksa VOC.

    Kotni merilnik se posodobi vsakih 50 milisekund, prikaz časovnega poteka pa vsakih 10 sekund, kar uporabnikom omogoča hkraten nadzor trenutnih in preteklih vrednosti indeksa VOC.

    Primer vgrajene programske opreme za RDK2 in projekt »Workshop4 IDE« sta na voljo za prenos na spletnem mestu Rutronik:
    www.rutronik.com/development-stories/rutronik-development-kit-rdk2

    https://www.rutronik.com