DIN rail Arduino klonas (menių ir valdymas)

3 03 2014

Prieš pradėdamas įrašus apie šio įrenginio išėjimus ir išėjimus turiu pirmiausiai pakalbėti apie tai kaip abstrakčiai atrodo vartotojo sąsaja. Pirmoje vietoje štai pasidalinsiu atnaujintu DIN korpuso vaizdeliu kuriame priklijavau šiokias tokias instrukcijas vartotojui:

IMG_7771

Išvaizda neįmantri. Atsirado mygtukų paaiškinimai, įėjimų ir išėjimų adresavimas bei maitinimo poliariškumo nurodymai.

Dabar pereisiu prie savo programos. Trumpame filmuke pamatysite kaip veikia pradinis variantas:

Persiprašau už kokybė. Magic Lantern programinė įranga mano naudojamame 50D filmuoja gal ir gerai, bet aš gal čia blogas filmuotojas.

Pagrindinis langas

Trumpai tariant pagrindinis langas rodo arba įėjimus, arba išėjimus, arba taisykles ir tarp jų pereiname su Left ar Right mygtukais. Kadangi ekranėlis turi tik 16×2 tai teko visus duomenis skaityti po keturi ir tarp puslapiu pereidinėti su + arba – mygtukais. Enter menių įeina į detalų įėjimo, išėjimo arba taisyklės rodymą kur su + arba – keičiame rodomo objekto adresą. Cancel mygtukas šiuo atveju grįžta atgal į pagrindinį langą.

Įėjimai nedetaliame lange vaizduojami taip kaip nurodo jo įėjimo tipas. Jei tai bus perjungiklis tai bus rodomos on/off reikšmės, jei temperatūra, tai skaičius su vieno skaičiaus po kablelio tikslumu ir t.t Detalesniame meniu matysime Teik įėjimo tipą, tiek jo reikšmė, tiek tarpinė reikšmę prieš konvertavimą. Tarpinė reikšmė egzistuos analoginiuose įėjimuose kur galutinė reikšmė perskaičiuojama pagal formulę ir dar atsižvelgiant į kalibravimo rodiklį. Apie įėjimus bus atskiras įrašas tad nepasimeskit.

Išėjimų reikšmės rodomos kaip On/Off rodikliai esant skaitmeniniam išėjimui arba procentais nuo 0 iki 100 esant PWM išėjimui. Apie išėjimus bus atskiras įrašas.

Taisyklės nedetaliame lange rodo taisykle sukonfigūruota, ar dabar aktyvi, ar neaktyvi. Detaliame vaizdavime matome šios taisyklės stebimo įėjimo reikšmę ir kokiuose rėžiuose ši taisyklė bus aktyvuojama. Taisyklių logiką aptarsiu atskirame įrašę.

Konfigūravimas

Konfigūravimas žinoma kiek sudėtingesnis. Yra keturios konfigūruojamos sritys: įrenginio, įėjimų, išėjimų ir taisyklių. Įėję į norimą skyrių nustatymus kečiame su + arba – mygtukais, tarp adresatų keliaujame su Left arba Right, o tarp redaguojamų laukų kursorių permetame su Menų mygtuku. Išsaugome nustatymą su Save mygtuku, o grįstame su Cancel mygtuku.

Įrenginio lange galime nustatyti duomenų atnaujinimo intervalą ir LCD ekrano apšvietimo atjungimo intervalą. LCD intervalas nurodo ar apšvietimas visada įjungtas, ar visada iš jungtas, ar veikia automatinio išjungimo rėžimu nesulaukus mygtukų paspaudimo tam tikrame intervale. Paskutinis Screen parametras kol kas nenaudojamas ir galimas dalykas kad jis bus pašalinamas.

Įėjimuose nustatome tam tikro adreso sensoriaus tipą bei papildomą parametrą kurio gali reikėti (dabar jį naudoju tik 10K termorezistoriaus kalibravimui).

Išėjimuose nustatome išėjimo tipą ir numatytą reikšmę kol nėra pritaikyta kokia taisyklė. Numatyta reikšmė aktualia tais atvejais kai sensorių reikšmės inicijuoją kažkokio įrenginio išjungimą, o ne įjungimą.

Taisyklėse turime nurodyti šios taisyklės įėjimą, išėjimą, įėjimo rėžius nuo/iki ir išėjimo reikšmę tuose rėžiuose. Taisyklė laikoma nesukonfigūruota jei nustatomas nulinis įėjimas. Nuo/iki reikšmės nustatomos atsižvelgiant į įėjimo tipą, o išėjimo rišmė pagal išėjimo tipą.

Pabaigai

Kas nesupratote dar karta pažiūrėkite video, nepraraskite vilties 🙂 Pripažįstu vartotojui meniu nėra labai draugiškas, bet jį naudoti nedažnai juk ir reikia. Greitai parašysiu dar tris įrašus atskirai aptariant įėjimus, išėjimus ir taisykles.

Papildyta: Vartotojo meniu diagrama

menu

 

Papaišiau diagramą kuri teoriškai nurodo kaip išdėstyti langai ir kokiais mygtukais pereinama tarp langų. Kaip matome viskas suskirstyta į dvi dalis: duomenų atvaizdavimas ir konfigūravimas. Nepaminėjau Kad nustatymų dalyje jau pasirinkus punktą kintamieji keičiami su +/- mygtukais, o tarp kintamųjų vaikštoma su Menu mygtuku.


Veiksmai

Information

8 responses

3 03 2014
DIN rail Arduino klonas (įėjimai) | Mindaugas Markauskas

[…] tai įraše matėte kaip atrodo abstraktus valdiklio meniu, o dabar išskirtinai apžvelgsiu įėjimų […]

3 03 2014
Darau, Blė

Mūdriai. Nu, bet vaizdo įrašas be pasakojimo… minusas 😀

3 03 2014
mindogas

Filmavimo aparatas garso neįrašo, o įgarsinti atskirai niekada laiko neturėjau ir neturėsiu 😀

3 03 2014
Darau, Blė

Tai telefonu filmuok 😀 Kad ir tuo „planšetiniu“ S2.

3 03 2014
mindogas

Per blura nieko nematysi 😀 ten tik automatinis fokusavimas ir pastoviai ranka kištelėjus grybą pjauti pradeda.. Kažkada filmuoti bandžiau, tai po rankos patraukimo fokusas taip ir negrįžo minute laiko. Susiparinau po to pamatęs video ir mečiau į šoną nuo to laiko filmavimą telefonu.

3 03 2014
giedriuszzz

Neblogai būtų viso meniu išklotinę pamatyti.

3 03 2014
mindogas

Bandysiu padaryti vėliau. Šiaip kol kas galva neišneša kaip viska sudėlioti į patogią diagramą 🙂

6 03 2014
mindogas

Išgimdžiau diagramą 🙂 Mestelėk akį į papildymą.

Parašykite komentarą

Įveskite savo duomenis žemiau arba prisijunkite per socialinį tinklą:

WordPress.com Logo

Jūs komentuojate naudodamiesi savo WordPress.com paskyra. Atsijungti / Keisti )

Twitter picture

Jūs komentuojate naudodamiesi savo Twitter paskyra. Atsijungti / Keisti )

Facebook photo

Jūs komentuojate naudodamiesi savo Facebook paskyra. Atsijungti / Keisti )

Google+ photo

Jūs komentuojate naudodamiesi savo Google+ paskyra. Atsijungti / Keisti )

Connecting to %s




%d bloggers like this: