Sisukord:
Video: Guino: armatuurlaud teie Arduino jaoks: 4 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
See projekt on osa katsetest, mis tehti Instructablesis kunstniku tegemise ajal. Teisi projekte näete siit. Reaalajas andmete silumine ja visualiseerimine Arduino tahvlil võib olla keeruline ülesanne. Tavaliselt olete tavalise jadaväljundiga kinni jäänud, kuna teie Arduino koodi keerukuse kasvades muutub see võimatuks aru saada, mis plaadil tegelikult toimub. Selle lahendamiseks olen loonud väikese raamatukogu, mis võimaldab teil luua oma Arduino projektide jaoks kohandatud GUI. Vaadake seda videot, et tutvustada põhilist tervitusmaailma koos potomeetri ja dioodiga: Praeguse seisuga on programmil järgmised võimalused ja funktsioonid: Liidese kohandatud kujundus Arduino plaadilt Teie määratlete, milliseid liugureid, graafikuid ja nuppe vajate teie liidese jaoks. Seda teete oma Arduino visandis, mis tähendab, et gui programm toimib visandi orjana. Kogu teave salvestatakse teie tahvlile. Kujutage ette ja manipuleerige reaalajas andmetega Olenemata sellest, kas valmistate RGB valguskontrollerit või robotkätt, on graafilise tagasiside saamine ülioluline, et mõista, mis tahvlil toimub. See võimaldab teil mõista, kas probleemi põhjustab teie riistvara või kood. Lisaks võimaldavad liugurid ja nupud reaalajas individuaalseid parameetreid muuta. Nii näete, millist mõju avaldavad erinevad künnised interaktsioonile. Salvestage parameetrid tahvlite mällu Kui olete parameetreid muutnud, saate need salvestada tahvli EEProm -i. Parameetrid laaditakse automaatselt järgmisel korral, kui lülitate plaadi sisse, isegi kui arvuti pole ühendatud. Kasutage kõigi oma Arduino projektide jaoks sama rakendust, olen teinud erinevate projektide jaoks palju väikeseid rakendusi. Minu probleem on alati need aasta pärast uuesti üles leida. Kuna me salvestame Arduinosse kõik, pean ma Arduino ümbruses hoidma ainult ühte rakendust, mis konfigureerib rakenduse automaatselt praeguse projekti jaoks. Prototüüpige liides enne jootekolvi sisselülitamist, sest saate kujundada gui oma äranägemise järgi (mõistliku piires piirangud), saate liidese prototüübiks muuta enne füüsilise liidese loomist. See võimaldab ka ülesandeid jagada mitme inimese vahel, nt. üks inimene töötab riistvaraga ja teine isik koodiga. Kui olete füüsilise liidese loonud, integreerib Guino sujuvalt. Kasutage seda täisekraani juhtpaneelina Saate seda kasutada täisekraanil armatuurlauana, vajutades klahvi F ja vajutades nuppu T, et muuta seadete paneeli nähtavust. Siin esitlete ainult oma kohandatud liidest ümbritseva maailma jaoks. Taustvärvi juhtimine Taustvärvi saab juhtida Arduino abil, mis võimaldab teil luua erinevaid visandeid. Seda saab kasutada ka märguannete tegemiseks, kui midagi on valesti. See võib olla roheline, kui kõik on korras, ja punane, kui midagi on valesti. Kiire ja sale Olen teinud Arduino jalajälje võimalikult väikeseks muutmise eest - see salvestab mällu vaid minimaalse hulga andmeid (konkreetselt osuti 100 üksuse loend). Seda seadet saab muuta madalamaks või kõrgemaks, sõltuvalt sellest, kui palju gui üksusi liideses kavatsete kasutada. Lisaks tugineb süsteem EasyTransfer raamatukogule, mis edastab teabe binaarsel kujul. Iga pakett koosneb baidist käsu jaoks, baidist üksuse # jaoks ja täisarvust väärtuse jaoks. Ideaalis tuleks kõik teie andmed normaliseerida 16 -bitiseks allkirjastatud täisarvude vahemikuks. See tähendab jadapordi optimaalset kasutamist täisarvudega töötamisel (tehniliselt kasutame kontrollsumma jaoks veidi lisaruumi). Hea Instructable -de jaoks GUI võimaldab teil teha Instructable -sid, mis vajavad ainult põhikomponente. Lisakomponente, näiteks potmeetreid jne, saab teha praktiliselt gui kaudu. Piirangud ja tulevikuplaanid Praegu on rakendus kompileeritud Mac OSX ja Windowsi platvormile. See on kirjutatud Openframeworksis, nii et see peaks saama töötada ka teistel platvormidel. Kuna rakendus kasutab jadaporti, ei saa te Arduinoga teisi programme ühendada. See lahendatakse tulevases väljaandes, mis sisaldab avatud heli juhtimist ja midi silda. Autorid: Programmeerimine ja idee autor: Mads Hobye Easytransferi raamatukogu autor: Bill Porter GUI raamatukogu autor: Reza Ali
1. samm: alustamine
- Laadige GUINO pakett alla ja pakkige see lahti.
- Laadige alla Arduino
- Kopeerige raamatukogude kaust oma Arduino raamatukogude kausta (kuidas seda teha)
- Taaskäivitage Arduino.
- Avage üks Arduino näidetest. (Menüü: Failid -> Näited -> Guino -> valige üks)
- Kui kasutate lihtsat näidet, tehke skeem, nagu eespool näidatud.
- Laadige näide üles.
- Käivitage rakendus Guino.
- Valige jadaport (tavaliselt viimane)
- Vajutage ühendust.
Allika leiate siit.
TÄHTIS: kui kasutate seda Windowsi platvormil, peate kasutama komporti, mis on väiksem või võrdne 10. Kui kasutate porti, mis on 10 või suurem, ei tööta süsteem. See on viga avatud raamistikus.
Samm: koodi muutmine
Selleks, et raamatukogu saaks teie visandiga töötada, vajate paari lisameetodit. Olen neid allpool kirjeldanud: gInit () siin määratlete oma paigutuse See meetod määratleb paigutuse järjestikuste komponentide lisamisega. Komponentidel, mida saab muuta (liugur, nupud jne), on sellele lisatud muutuja. Muutuja ees olev & tähendab, et me ei soovi muutuja väärtust edasi anda, vaid soovime muutujale edastada viite (osuti). Nii värskendab Guino süsteem neid automaatselt, kui GUI -s muudatusi tehakse. tühine gInit () {gAddLabel ("SLIDERS", 1); gAddSpacer (1); gAddSlider (3, 200, "WIDTH", & laius); gAddSlider (3, 200, "KÕRGUS" ja kõrgus); gAddSlider (0, 255, "LED Heledus", & ledLight); // Pöörlevad liugurid gAddLabel ("ROTARY SLIDERS", 1); gAddSpacer (1); [………….] GAddColumn (); // Lisage siia rohkem asju. gSetColor (r, g, b); // Määrake gui liidese värv. } GButtonPressed (int id) seda kutsutakse alati, kui nuppu on vajutatud Üldiselt saab muutujaid automaatselt värskendada, kuid nupu puhul peab see olema sündmus, mille eest hoolitsete. Selles näites määrame kõrguse muutujaks 100, kui keegi nuppu vajutab. void gButtonPressed (int id) {if (buttonId == id) {height = 100; gUpdateValue (& kõrgus); }} gItemUpdated (int id) Seda kutsutakse alati, kui üksust on värskendatud. Tavaliselt pole seda vaja kasutada, kuna süsteem uuendab muutujaid automaatselt. Kui soovite muudatusele reageerida, saate seda ka sellisena kasutada. Sel juhul värskendame taustavärvi, kui üks kolmest pöörlevast liugurist on muudetud. void gItemUpdated (int id) {if (rotaryRID = id || rotaryGID == id || rotaryBID == id) {gSetColor (r, g, b); }}
Samm: paar kiiret näpunäidet
Pidage meeles, et uue visandi üleslaadimisel tuleb ühendus katkestada. Guino ei saa käivitada uue eskiisi Arduino tahvlile üleslaadimisel, kuna need kasutavad sama jadaühendust. See nõuab ühenduse katkestamist iga kord, kui laadite üles uue visandi. Kui proovite (ja proovite) Guino ühendamise ajal üles laadida, võib plaat minna kummalisse olekusse, kus see töötab, kuid mitte päris. Sel hetkel on teie ainus võimalus tahvli lähtestamine, vajutades lähtestamisnuppu või USB -kaabli lahti ühendades ja uuesti ühendades. Tuntud vead Praeguse seisuga töötab süsteem ja on stabiilne. Järgmised vead peaksid olema teadlikud:
- setMin ei tööta liikuval graafikul (tundub, et GUI teegis on viga, mis tuleb parandada). Seega jääb miinimum nulli.
- Seerianimekiri laaditakse programmi käivitamisel. Enne programmi käivitamist tuleb Arduino võrku ühendada. Seerianimekirja värskendamine jooksmise ajal põhjustab halva sündmuse. See tuleb veel lahendada.
- Seerianimekirjaga nokitsemine - mõnikord põhjustab programmi krahhi (sama gui sündmus kui värskendamine - tuleb leida allikas)
- Lülitusnuppude taust muutub sõltuvalt lähtestamisest mustaks. Pean tausta käsitsi seadistama.
- Mõnel Windowsi platvormil ei kuvata com -porti. Viga võib olla ftdi draiveris.
4. samm: kasutusjuhtumid
Kui soovite näha mõningaid kasutusviise Guino liidesega, minge sellesse juhendisse.
Soovitan:
NAS-pi: Ultimate Box teie PLEX-, DLNA- ja NAS-i naudingute jaoks: 5 sammu (koos piltidega)
NAS-pi: Ultimate Box teie PLEX-, DLNA- ja NAS-i naudingute jaoks: Tere, inimesed! Täna ehitame tõelise välimuse! Raspberry Pi võrguga ühendatud salvestusruum meedia voogesituse funktsiooniga! Vaarika Pi 3 & Raspberry Pi 2 ühilduv! Esiletõstetud versioon sisaldab 160 GB RAID1 ja 1,4 TB PLEX -serverit. Suurepärane
Ioonjahutusega süsteem teie Raspberry Pi mänguserveri jaoks!: 9 sammu (koos piltidega)
Ioonjahutusega süsteem teie Raspberry Pi mänguserverile!: Tere tegijad! Mõni aeg tagasi sain Raspberry Pi, kuid ma ei teadnud, mida sellega teha. Hiljuti on Minecraft taas populaarsust kogunud, nii et otsustasin endale ja sõpradele Minecraft serveri üles seada. Noh, selgus, et olen lihtsalt mina:
Ambilighti süsteem iga teie teleriga ühendatud sisendi jaoks. WS2812B Arduino UNO Raspberry Pi HDMI (uuendatud 12.2019): 12 sammu (koos piltidega)
Ambilighti süsteem iga teie teleriga ühendatud sisendi jaoks. WS2812B Arduino UNO Raspberry Pi HDMI (uuendatud 12.2019): Olen alati tahtnud oma telerisse ambilight lisada. See näeb nii lahe välja! Lõpuks tegin seda ja ma ei pidanud pettuma! Olen näinud palju videoid ja palju õpetusi teie teleri jaoks Ambilighti süsteemi loomiseks, kuid ma pole kunagi leidnud täielikku õpetust oma täpse nee jaoks
TEE OMA GPSIL põhinev digitaalne armatuurlaud EBIKE või ELECTRIC MOTOCYCLE jaoks: 13 sammu
TEE OMA GPSIL põhinev digitaalne juhtpaneel EBIKE või ELECTRIC MOTORCYCLE jaoks: HI EVERYONET sdcardis ja muidugi projektis
Salapära kollased täpid: kas teie printer nuhkib teie järele?: 5 sammu (piltidega)
Salapära kollased punktid: kas teie printer nuhkib teie järele?: Kujutage ette, et iga kord, kui printite dokumendi, sisaldab see automaatselt salajast koodi, mida saab kasutada printeri ja potentsiaalselt ka selle isiku tuvastamiseks. Kõlab nagu spioonifilmist, eks? Kahjuks on stsenaarium