Guino: Dashboard för din Arduino
Det kan vara en knepig uppgift att felsöka och visualisera realtidsdata på Arduino styrelsen. Du är oftast fast med seriell standardutdata, komplexiteten i din Arduino kod växer detta gör det omöjligt att förstå vad som egentligen pågår inom styrelsen. För att lösa detta har jag skapat ett litet bibliotek som gör att du kan skapa dina egna anpassade GUI för Arduino projekt. Titta på denna video för att få en demonstration av en grundläggande Hej världen med en potmeter och en diod:
Redan nu har programmet följande möjligheter och funktioner:
Custom design din gränssnitt från Arduino styrelsen
Du definierar vilka reglagen, grafer och knappar du behöver för din gränssnitt. Det gör du i din Arduino skiss vilket innebär att den gui programmet fungerar som en slav på skissen. All information lagras i din styrelse.
Visualisera och förändra realtidsdata
Om du gör en RGB ljus controller eller en robotarm, är få en grafisk feedback avgörande för att förstå vad som pågår inuti styrelsen. Detta gör att du kan förstå om det är din maskinvara eller koden som orsakar problemet. Ytterligare reglagen och knappar gör att du kan justera de enskilda parametrarna i realtid. Detta sätt kan du se vad effekt olika tröskelvärden har på interaktionen.
Spara parametrarna i styrelser minne
När du har tweaked parametrarna kan du spara dem till EEProm av styrelsen. Parametrarna kommer att automatiskt laddas nästa gång du makt i styrelsen, även om datorn inte är ansluten.
Använda samma app för alla dina Arduino projekt
Jag har gjort massor av små appar för olika projekt. Mitt problem är alltid att hitta dem igen ett år senare. Eftersom vi sparar allt i Arduino jag bara behov till hålla en app runt Arduino automatiskt att konfigurera app för det aktuella projektet.
Prototyp i gränssnittet innan du slår på lödkolven
Eftersom du kan designa gui som du gillar det (inom rimliga gränser), kan du prototyp i gränssnittet innan du har gjort ett fysiskt gränssnitt. Detta också kan du dela upp uppgifter mellan flera personer t.ex. en person arbetar på hårdvara och en annan person arbetar på koden. När du har gjort det fysiska gränssnittet i Guino kommer att integreras sömlöst.
Använda den som en fullscreen instrumentpanel
Du kan använda den som en fullscreen dashboard genom att trycka på F och trycka T växlar synlighet på panelen inställningar. Du presenterar härmed endast din anpassade gränssnitt för världen omkring dig.
Kontroll bakgrundsfärg
Bakgrundsfärgen kan styras från Arduino detta kan du skapa olika färger för olika skisser. Det kan också bes brukade göra varningar när något är fel. Det kan vara grön när allt är ok och röda när något är fel.
Snabb och smal
Jag har tagit bra hand att göra fotavtryck på Arduino så små som möjligt - den lagrar bara en minimal mängd data i minnet (konkret en pekare lista över 100 artiklar). Den här inställningen kan ändras till lägre eller högre beroende på gui artiklar som du vill ha i din gränssnitt. Vidare bygger systemet på EasyTransfer biblioteket som överförs informationen i binär form. Varje paket består av en byte för kommando, en byte för artikel # och ett heltal för värdet. Idealiskt, undertecknade alla dina data bör normaliseras mot en 16-bitars heltal utbud. Detta innebär optimal användning av den seriella porten när du arbetar med heltal (tekniskt vi använder lite extra plats för en kontrollsumma).
Bra för Instructables
GUI kan du göra Instructables som endast kräver kärnkomponenterna. Extra komponenter som potmeters etc. kan göras praktiskt taget via gui.
Begränsningar och framtida planer
Rätt nu app har sammanställts till Mac OSX och Windows-plattformen. Det är skrivet i Openframeworks så bör man kunna köra på andra plattformar. Eftersom app använder den seriella porten kommer du inte att kunna ansluta andra program till Arduino. Detta kommer att lösas i en framtida utgåva som kommer att omfatta en öppen ljudkontroll och en MIDI-bron.
Poäng:
Programmering och idé av: Mads Hobye
EasyTransfer bibliotek av: Bill Porter
GUI bibliotek av: Reza Aljag