Kazalo:

Guino: Nadzorna plošča za vaš Arduino: 4 koraki (s slikami)
Guino: Nadzorna plošča za vaš Arduino: 4 koraki (s slikami)

Video: Guino: Nadzorna plošča za vaš Arduino: 4 koraki (s slikami)

Video: Guino: Nadzorna plošča za vaš Arduino: 4 koraki (s slikami)
Video: Как заработать $ 90,00 в день с нулевыми деньгами на старт... 2024, Junij
Anonim
Guino: Nadzorna plošča za vaš Arduino
Guino: Nadzorna plošča za vaš Arduino
Guino: Nadzorna plošča za vaš Arduino
Guino: Nadzorna plošča za vaš Arduino
Guino: Nadzorna plošča za vaš Arduino
Guino: Nadzorna plošča za vaš Arduino
Guino: Nadzorna plošča za vaš Arduino
Guino: Nadzorna plošča za vaš Arduino

Ta projekt je del poskusov, opravljenih med izvajanjem umetnika v rezidenci Instructables. Ostale projekte si lahko ogledate tukaj. Odpravljanje napak in vizualizacija podatkov v realnem času na plošči Arduino je lahko težavna naloga. Običajno ste obtičali s standardnim serijskim izhodom, saj kompleksnost vaše Arduino kode narašča, zato je nemogoče razumeti, kaj se dejansko dogaja na plošči. Za rešitev tega sem ustvaril majhno knjižnico, ki vam bo omogočila ustvarjanje lastnega grafičnega vmesnika po meri za vaše Arduino projekte. Oglejte si ta videoposnetek, če želite predstaviti osnovni svet pozdrava s števcem in diodo: Program ima zaenkrat naslednje možnosti in funkcije: Oblikovanje vmesnika po meri iz plošče Arduino Določite, katere drsnike, grafe in gumbe potrebujete za vaš vmesnik. To naredite v svoji skici Arduino, kar pomeni, da program gui deluje kot suženj skice. Vse informacije so shranjene na vaši plošči. Vizualizirajte in upravljajte podatke v realnem času Ne glede na to, ali izdelujete svetlobni krmilnik RGB ali robotsko roko, je pridobivanje grafične povratne informacije ključnega pomena za razumevanje dogajanja na plošči. Tako lahko razumete, ali težavo povzroča vaša strojna oprema ali koda. Poleg tega drsniki in gumbi omogočajo prilagajanje posameznih parametrov v realnem času. Na ta način lahko vidite, kako različni pragovi vplivajo na interakcijo. Shranite parametre v pomnilnik plošč. Ko spremenite parametre, jih lahko shranite v EEProm plošče. Pri naslednjem vklopu plošče se bodo parametri samodejno naložili, tudi če računalnik ni povezan. Uporabite isto aplikacijo za vse svoje projekte Arduino. Naredil sem na tone majhnih aplikacij za različne projekte. Moj problem je, da jih vedno znova najdem leto kasneje. Ker v Arduinu shranimo vse, potrebujem le eno aplikacijo okoli Arduina, ki bo samodejno konfiguriral aplikacijo za trenutni projekt. Preden vklopite spajkalnik, vnesite vmesnik, ker lahko oblikujete gui po svojih željah (v razumnih mejah) omejitve), lahko prototip vmesnika naredite, preden naredite fizični vmesnik. To vam omogoča tudi, da naloge razdelite med več ljudi, npr. ena oseba dela na strojni opremi, druga pa na kodi. Ko naredite fizični vmesnik, se bo Guino brezhibno integriral. Uporabite ga kot celozaslonsko nadzorno ploščo Lahko ga uporabite kot celozaslonsko nadzorno ploščo tako, da pritisnete F in pritisnete T preklopi vidnost podokna z nastavitvami. S tem predstavite samo svoj vmesnik po meri za svet okoli vas. Nadzirajte barvo ozadja Barvo ozadja lahko nadzirate z Arduinom, kar vam omogoča ustvarjanje različnih barv za različne skice. Uporablja se lahko tudi za opozarjanje, ko je kaj narobe. Lahko je zelena, ko je vse v redu, in rdeča, ko je kaj narobe. Hitro in tanko Zelo sem skrbel za čim manjši odtis na Arduinu - shrani le minimalno količino podatkov v pomnilnik (konkretno kazalec seznam 100 predmetov). To nastavitev lahko spremenite na nižjo ali višjo, odvisno od količine elementov gui, ki jih nameravate imeti v vmesniku. Nadalje se sistem opira na knjižnico EasyTransfer, ki podatke prenaša v binarni obliki. Vsak paket je sestavljen iz bajta za ukaz, bajta za postavko # in celega števila za vrednost. V idealnem primeru bi morali biti vsi vaši podatki normalizirani v 16 -bitno podpisano celoštevilsko območje. To pomeni optimalno uporabo serijskih vrat pri delu s celimi števili (tehnično za kontrolno vsoto porabimo malo več prostora). Dobro za Instructables Grafični vmesnik vam omogoča izdelavo Instructables, ki zahteva le osnovne komponente. Dodatne komponente, kot so merilniki števcev itd., Je mogoče izdelati tako rekoč prek gui. Omejitve in prihodnji načrti Trenutno je aplikacija prevedena na platformo Mac OSX in Windows. Napisano je v Openframeworks, zato bi moralo delovati tudi na drugih platformah. Ker aplikacija uporablja serijska vrata, drugih programov ne boste mogli povezati z Arduinom. To bo rešeno v prihodnji izdaji, ki bo vključevala Open Sound Control in Midi most. Zasluge: Programiranje in zamisel: Knjižnica Easytransfer Madsa Hobyeja: Knjižnica grafičnega vmesnika Billa Porterja: Reza Ali

1. korak: Začnite

Začetek
Začetek
Začetek
Začetek
  • Prenesite in razpakirajte paket GUINO.
  • Prenesite Arduino
  • Kopirajte mapo knjižnic v mapo knjižnic Arduino (kako do tukaj)
  • Znova zaženite Arduino.
  • Odprite enega od primerov v Arduinu. (Meni: Datoteke -> Primeri -> Guino -> izberite enega)
  • Če uporabite preprost primer, naredite vezje, kot je prikazano zgoraj.
  • Naložite primer.
  • Zaženite aplikacijo Guino.
  • Izberite serijska vrata (običajno zadnja)
  • Pritisnite poveži.

Vir najdete tukaj.

POMEMBNO: Pri uporabi na platformi Windows morate uporabiti vrata com, ki so nižja ali enaka 10. Če uporabljate vrata, ki so 10 ali več, sistem ne bo deloval. To je napaka v odprtih okvirih.

2. korak: Kako spremeniti kodo

Kako spremeniti kodo
Kako spremeniti kodo

Če želite, da knjižnica deluje s skico, potrebujete nekaj dodatnih metod. Spodaj sem jih opisal: gInit () tukaj definirate postavitev Ta metoda definira postavitev z zaporednim dodajanjem komponent. Sestavni deli, ki jih je mogoče spremeniti (drsnik, gumbi itd.), Imajo pritrjeno spremenljivko. & Pred spremenljivko pomeni, da vrednosti v spremenljivki ne želimo posredovati, ampak želimo spremenljivki posredovati referenco (kazalec). Na ta način jih sistem Guino samodejno posodobi, ko pride do sprememb v grafičnem vmesniku. void gInit () {gAddLabel ("Drsniki", 1); gAddSpacer (1); gAddSlider (3, 200, "WIDTH", & width); gAddSlider (3, 200, "VIŠINA", & višina); gAddSlider (0, 255, "LED BRIGHTNESS", & ledLight); // vrtljivi drsniki gAddLabel ("ROTAJALNI Drsniki", 1); gAddSpacer (1); [………….] GAddColumn (); // Tukaj dodajte več stvari. gSetColor (r, g, b); // Nastavite barvo vmesnika gui. } GButtonPressed (int id) se pokliče ob vsakem pritisku gumba Na splošno se lahko spremenljivke samodejno posodobijo, v primeru gumba pa mora biti to dogodek, za katerega morate poskrbeti. V tem primeru nastavimo višinsko spremenljivko na 100, ko nekdo pritisne gumb. void gButtonPressed (int id) {if (buttonId == id) {height = 100; gUpdateValue (& height); }} gItemUpdated (int id) To se pokliče vsakič, ko je bil element posodobljen. Običajno tega ni treba uporabiti, ker bo sistem samodejno posodobil spremenljivke. Če se želite odzvati na spremembo, jo lahko uporabite kot takšno. V tem primeru posodabljamo barvo ozadja vsakič, ko smo spremenili enega od treh vrtljivih drsnikov. void gItemUpdated (int id) {if (rotaryRID = id || rotaryGID == id || rotaryBID == id) {gSetColor (r, g, b); }}

3. korak: Nekaj hitrih nasvetov

Pri nalaganju nove skice ne pozabite prekiniti povezave. Med nalaganjem nove skice na ploščo Arduino Guino ne more delovati, ker uporablja isto serijsko povezavo. To zahteva, da prekinite povezavo vsakič, ko naložite novo skico. Če boste (in boste) poskušali naložiti, medtem ko je Guino povezan, lahko plošča preide v neko čudno stanje, v katerem deluje, vendar ne povsem. Na tej točki je vaša edina možnost ponastavitev plošče s pritiskom na gumb za ponastavitev ali z odklopom in ponovnim priklopom USB kabla. Znane napake Zaenkrat sistem deluje in je stabilen. Te napake se morate zavedati:

  • setMin ne deluje na movingGraph (zdi se, da je v knjižnici grafičnega vmesnika napaka, ki jo je treba popraviti). Torej minimalno ostane na nič.
  • Serijski seznam se naloži ob zagonu programa. Pred zagonom programa morate priključiti Arduino. Osvežitev serijskega seznama med izvajanjem povzroči slab dogodek. To je še treba rešiti.
  • Poigravanje s serijskim seznamom - včasih povzroči zrušitev programa (isti dogodek gui kot osvežitev - poiskati vir)
  • Ozadje gumbov za preklop postane črno, odvisno od inicializacije. Ozadje moram nastaviti ročno.
  • Na nekaterih platformah Windows se vrata com ne prikažejo. Mogoče je problem v gonilniku ftdi.

4. korak: Uporabite primere

Uporabljajte primere
Uporabljajte primere

Če želite videti nekaj primerov uporabe z vmesnikom Guino, pojdite na to navodilo.

Priporočena: