HyperDuino-baserade CubeSat (5 / 6 steg)

Steg 5: Skriva programmet




Nästa steg är att samla in data från två sensorer ― ljus och temperatur ― på CubeSat. Det finns flera programmeringsspråk kan du göra denna uppgift, och den jag har valt kallas snapin (snap.berkeley.edu). Detta språk är liknande till ett annat språk kanske du vet ― Scratch. Snapin har vissa funktioner som jag gillar och kommer med en speciell version (Snap4Arduino) att fungerar med HyperDuino ganska väl (s4a.cat/snap). Den ursprungliga snapin har bra dokumentation kan du läsa om du vill lära dig språket i detalj. Vad du behöver göra är att installera den senaste versionen av Snap4Arduino på datorn. Tillgänglig för Mac, Windows, Linux och en webbaserad version som fungerar med Chromebook. Det fungerar perfekt för vårt program medan buggy, och det är under aktiv utveckling. Ditt första steg är att hämta den aktuella versionen av Snap4Arduino från s4a.cat/snap

Om du vill använda Chromebook version, är här särskilda riktningar att komma igång. Först behöver du en krom plug-in för att kommunicera med HyperDuino. Instruktioner kan hittas här: github.com/bromagosa/Snap4Arduino-plugin#downloading-and-installing-the-plugin

Nästa, när detta är gjort, starta Snap4Arduino prototypen i krom från th som för själva språket, program är skrivna av fästfunktionen block tillsammans ― en ganska intuitiv process. Till exempel om du vill rita en kvadrat på skärmen, samla följande block genom att dra komponenterna från den vänstra kolumnen. Det finns olika block bibliotek ― en för motion av ritverktyget (som kallas en "Sprite".) Övriga kategorier har block för penna, kontroll, operatörer, etc.

Detta enkla program startar genom att lägga pennan ner så det kommer att dra en linje som det flyttningar. Nästa, vi upprepar två kommandon fyra gånger: framåt av 100 steg och vrida till höger 90 grader. Om man klickar med musen på vårt program, visas bilden av ett torg i fönstret grafik.

Sprite bild (pilspetsen) är också synlig, även om det kan vara dolda om du vill. Som ni kan föreställa er, är behärskning av Snap ett stort projekt ― väl utanför räckvidden för detta Instructable. Vi kommer att starta med ett program som jag skrivit redan för våra CubeSat med hjälp av Snap4Arduino. Du kan ändra och förlänga detta program på egen hand.

För att ladda programmet, logga in på Snap4Arduino (du måste skapa ett gratis konto om det är första gången). Fördelen med att ha ett konto, är du kan spara dina projekt i molnet där du kan ladda ner dem från vilken dator som helst!

I vårt fall, du börjar med ett program jag skrev ― CubeSat program.xml. Välj Importera... från dokumentikonen till vänster om molnet överst i fönstret Snap4Arduino. Navigera till din nedladdade versionen av filen, och du har programmet ― redo att köra.

Programmet körs genom att trycka på "space" (du kan ändra detta om du vill.) Programmet i sig är ganska lätt att läsa. De första några kommandona in skärmen. När du kommer till kommandot "Upprepa", börjar det verkliga arbetet. Det första värdet av egna variabel, "brightness" är inställd 100 minus HyperDuino analog läsning från A0 delas med 4. Detta säkerställer att resultatvärdet passar på grafiska skärmen. Nästa, sprite lagerstället till rätt värden för x och y. Sprite "kostym" är inställd värdet "light" och "stämpel" kommandot stämplar en bild av denna kostym på skärmen. Kostymer kan utformas med hjälp av inbyggd editor och snapin handboken visar hur man gör detta.

Nästa, hela denna process upprepas för variabeln "temp", och processen väntar en tiondels sekund innan du fortsätter. Medan programmet körs, kan du ändra värdena för den sensor som läser av går din hand över fotocellen, och vidrör termistor. Den resulterande grafen är ett rekord av ljus och temperatur. Ett nytt diagram genereras varje gång programmet körs. Du kan spara en bild av diagrammet genom att högerklicka musen på det och välja pic... Detta öppnar ett nytt fönster med din bild som du kan spara.

Om du vill ändra detta program (och du bör!) lägga till en fin ruta runt diagrammet, tillhandahålla skalor för resultaten (till exempel, dim till ljusa för ljus och sval till heta för temperaturen. Om du vill få ännu finare, se om du hittar ett sätt att exportera sensordata till en textfil på din dator! Detta är en tjusig projekt som kan hålla dig på natten.

Se Steg
Relaterade Ämnen

Hemmabyggd (DIY) CNC router - baserade Arduino (GRBL)

Redan för några var månader eller år, jag planerar att bygga mitt eget CNC fräsmaskin. Nu bestämde jag mig för det var tid att göra det! Jag läser mycket om andra DIY projekt och till slut jag gillade designen från Arduino CNC intstructable som jag h...

8051 mikrokontroller baserade dubbelriktad besöksräknare

detta är en enkel kopplingsschemat för dubbelriktad besöksräknare använda 8051 mikrokontroller som hjälper till att räkna antalet människor som kommer till eller lämnar ett rum och visar den totala räkningen på styrelsen. Det är till stor hjälp i vår...

LinkIt en SMS-baserade Home Automation

Nu igen kom jag med ny variant av hemautomation med linkit baserad på GSM SMS-tjänst. Nu kan du styra enheten från någon var i världen. Jag är så upphetsad att förklara du dess mitt bästa projekt av mitt liv eftersom dess meddelande på sms service so...

CNC Laser för utskrift av bilder och gravyr - Shapeoko 2 baserade

Om du äger eller planerar att bygga en Shapeoko 2 CNC-maskinen, kommer att detta Instructable gå igenom stegen för att lägga till en 2 watt laser kan skriva ut gråskala bilder på många ytor. Du hittar också Detaljer om hur man gravera på full effekt....

ChalKaat (förstärkt verklighet baserad laserskärare)

Nutid CNC/Lasercutters har ett indirekt gränssnitt med externa datorer. För att förklara detta låt mig ge er ett exempel, kan tänka mig vill du klippa läderarmband för din arm. För att göra detta med nuvarande laserklingor måste du först ta mätning a...

Luftfräschare baserade mekaniska laser slutaren

jag har konstruerat ett kostnadseffektivt mekaniska lasersystem slutare för våra 1064 IR-laser. Systemet innehåller en mekanisk slutare, en reglerbox och en strömförsörjning. Det finns många slutaren system kommersiellt; mekanisk, semi mekaniska, ele...

Lätt Raspberry Pi baserad skärmsläckare/bildspel för utställningar/butik Front

På utställningar vill du ofta Visa upp ditt arbete i hopp om att locka potentiella kunder. Den här också arbeten för Fönstren av butiker att marknadsföra produkter som säljs inom. De flesta kommer helt enkelt skapa en stor fast bild affisch till stor...

En .NET Gadgeteer baserade jäsning temperatur Controller

I den här artikeln visar jag design och tillverkning av en pekskärm baserad automatiserad jäsning temperatur styrenhet med en kombination av kommersiella och anpassade hårdvara och mjukvara. Jag har varit ölbryggning i över 20 år med främst partiell...

Arduino-baserad byta spänningsregulatorer

DC till DC omvandlare används effektivt konvertera DC-spänningar. De har en verkningsgrad på upp till 95% vilket gör dem användbara för LED strips, CYKELLYSEN, batteriladdare och solar powered enheter. En spänningsomvandlare kräver en PWM källa som e...

Färg-baserade träskiva Sudoku

detta var en present till min pappas födelsedag, och förmodligen min mest intrikata träbearbetning skapa hittills. Jag ville göra ett slags sudoku-relaterade objekt för honom, och blev inspirerad av bilder jag såg av färg-baserade sudoku styrelser on...

3G trådlös Router baserad på hallon Pi2

Detta är en 3G trådlös router baserad på Raspberry Pi 2. Raspberry pi som klarar köra olika linux distributioner kan användas för att göra olika tyger och intressant verktyg. Jag hade gjort detta 3g router med hjälp av raspberry pi 2 tillsammans med...

Android-baserade hemautomation via internet och Ethernet-

Detta är ett projekt för att bistå äldre och funktionshindrade personer att leva mer oberoende.Mitt projekt ge några funktioner som styr hushållsmaskiner använder android smartphone via internet och även Ethernet. Det att de inte flyttar till växeln,...

555 timer baserade ljus söker robot

jag har alltid fascinerats av robotar särskilt en med hjulen eftersom de är billiga, lätt och roligt att göra och leka med. Nyligen kom jag över en krets i en av böckerna. Det var en ljus känslig led krets baserad på 555 timer ic. Jag ändrade kretsen...

En mycket billig ESP8266 WiFi smart bil kontrolleras av telefon baserad på NodeMCU

DoitCar är konstruerat och utvecklat av Shenzhen läkare av intelligens & teknik (SZDOIT), som är den mest kostnadseffektiva. Den allmänt tillämpas inom många områden, sucha som den elektroniska älskaren, studenter, Internet of Things (IoT), mobil dat...

Baserade Arduino 4WD Bluetooth Microbot

Denna microbot är inspirerad av Arduino-Nano-baserade-Microbot. Istället för att använda 2 servon, är denna robot drivs av 4, vilket eliminerar behovet av spår.Micro controller jag använder är Bluno skalbaggen, som är en liten Arduino baserade contro...

Baserade Arduino RC med två växlar (mustasch som) för att undvika hinder

Min RCs funktion är baserad på två permanent öppen kretsar, en på vänster sida och en på höger sida av RC, som stängs när sidan knölar på något. En mustasch som kabeln trycks sedan på en skruv och växeln stängt ger signalen till arduino att vända sig...

Med silikon-baserade pastor för att skapa snabb makeup FX

Sculptgel och tredje graden är båda stora silikon baserat material som kan användas direkt på huden att skapa tre dimesional makeup effekter för kul, Halloween, låg budget filmer eller skapa arbete för en portfölj. Detta instructable visar du en steg...

Arduino tid-och-Sensor-baserade Android musikspelare

Tänk dig din musikspelare som spelar för dig, en spelare den meningen det omgivande ljuset, temperatur och tid som påverkar stämningen i en person, och välja en låt kategorisera som stämningar. Eftersom jag inte har en sensor som kan översätta mänskl...

Arduino-baserad Split-flik spel

vi har en stor nederländsk semester tradition kallas sinterklaas (5: e december, detta är vad den amerikanska Santa är baserad på). För den äldre "icke-troende" vi överraskningar. Syftet är att köpa en liten present men göra en riktigt cool &quo...