Arduino experiment (Supersize Instructable) (3 / 14 steg)

Steg 3: Skicklighet nivå: grundläggande. (1)




  • Nakna ben & grundläggande start projekt (Blink & Fade LED lampor och kodning grunderna) med Arduino MikroKONTROLLANT är täckt i flera steg.
  • Blinkar och sedan bleknar A LED ljus med tidsinställda förseningar med "Digital" PIN-koden, sedan med en "Analog" stift till styrspänningen input (förmåga att använda grundläggande kod Setup, tidsinställd aktivering förseningar & spänning kontroll i analog form)
  • För det första hämta din Arduino IDE (Integrated Development Environment) som används på datorn och hämtat från, för att kommunicera med din Arduino styrelsen Använd följande länk... http://Arduino.cc/en/main/Software nedladdning 1.0.5 eller den senaste versionen av IDE (nej behov till installera)
  • Koppla upp din Arduino till din dator via USB-kabeln, och öppna den IDE vanligen någonstans i enhet C: av din PC hård driva (om inte du sätta det på andra håll) nu titta på avsnittet verktyg och hitta där "COM"-portar finns ta bort din Arduino USB-kabel och se vilken COM-port försvann som nu är din Arduino, Anslut den igen , och ställa in com-porten, nästa plocka din Arduino ombord från styrelsen lista att försöka att inte glömma denna del när du har bytt till mega, mikro, nano eller varje annan ändring av styrelsen... Nästa klick fil "Exempel" grunderna och sedan blinka, Observera kodning struktur,, om pin uppställningar med int, void setup, ogiltig loop, primära delar av kodning (kodning efter denna linje ___)
  • / * Blink vänder på en LED på för en sekund, sedan bort för en sekund, upprepade gånger. Denna exempelkod är offentlig. * / / / Stift 13 har en lysdiod ansluten på de flesta Arduino styrelser. ge den ett namn: int ledde = 13.

    Rutinen installationsprogrammet körs en gång när du trycker på reset: void setup() {/ / initiera digital stiftet som en utgång. pinMode (ledde, OUTPUT);}

Rutinen loop kör om och om igen för alltid: void loop() {digitalWrite (ledde, högt); / / slå LED på (HIGH är spänningsnivån) delay(1000); / / vänta på en andra digitalWrite (ledde, låg); / / stänga LED av genom att göra spänning låg delay(1000); / / vänta en sekund}

  • (Kopiera och klistra in ovanstående kod i del 5 i IDE eller använda exempel skissen redan där) Se primära kodning struktur och delar och lära känna dem väl för framtida projekt hänvisa tillbaka till grunderna nu och sedan lära om glömda kodning eller värden, förseningen kodning är i millisekunder 1000 är 1 sekund 5000 att vara 5seconds så vidare, Digital Pin 13 på arduino har en inbyggd i LED begränsa motstånd, om du använder en annan pin Glöm inte att lägga till en 560 ohm resistor för att stoppa det bränna ut i en puff av rök, Digital skriver funktion att förklara antingen hög/på/eller låg/av på LED med förseningar i båda ändarna 1 sekund för på 1 sekund för off i grundläggande skissen.

  • Ställ in den förbindelse som förbinder en LED + positiva stift till digital stift 13 och dess - negativa stift till grn (marken) för att slutföra kretsen till LED-ljus, använda ARDX mallar och ett Lödfritt set av brödunderläggen med bygel ledningar högt rekommenderade. (Titta på videor och se bilder för inställning av kretsen och provning)

  • Snurra motorn snurra skiss (täckta i flera steg), Med en ARDX mall för att göra layout av kretsen mer lätt när bifogas ett Lödfritt set av brödunderläggen, delar krävs är, massor av hoppare ledningar olika färger, Transistor typ: (P2N2222A) eller en variant av denna gemensamma transistor typ, 2.2 k motstånd är knutet till base/mellersta transistorn stift, blockering diod feedback stopp, så att strömmen inte strömma tillbaka in i micro controller och stek den , eller motor itself,(Optional) 220uf kondensatorn för om motorn gör inte snurra, och behöver ström jämna ut på väg till motorn.

  • Att ha gjort din grundläggande kodning i det senaste projektet Detta känns mycket mer enkel och mer mekanisk spinning en motor har många ansökningar från sällskapsdjur leksak robot hjul, se samma som förra gången när kretsen har ställts in, bilder och videoklipp, ladda upp koden till din IDE miljö kod efter denna linje ___

  • int motorPin = 9; definiera pin motorn är ansluten till

    (om du använder pin 9,10,11 eller 3Du kan också styra hastighet)

    / * * setup() - funktionen körs en gång när du slår din Arduino på * vi satt motors stiftet vara en utgång (slå pin hög (+ 5v) eller låg (marken) (-)) * istället för indata (kontrollera om en PIN-kod är hög eller låg) * / void setup() {pinMode (motorPin, produktionen);}

    / * * loop() - denna funktion startar när installationen är klar och sedan upprepa * vi anropa en funktion som kallas motorOnThenOff() * /

    void loop() / / kör om och om igen {motorOnThenOff(); / / motorOnThenOffWithSpeed(); / / motorAcceleration();}

    / * * motorOnThenOff() - vänder sig motor på sedan off * (märka här koden är identisk med koden som vi använde för * blinkande LED) * / void motorOnThenOff() {int onTime = 2500; //the antalet millisekunder för motorn aktivera för int offTime = 1000; //the antalet millisekunder för motorn att stänga av för digitalWrite (motorPin, hög); / / varv motorn på delay(onTime); / / väntar onTime millisekunder digitalWrite (motorPin LÅG); vänder sig motor av delay(offTime); väntar på offTime millisekunder}

    / * * motorOnThenOffWithSpeed() - vänder sig motor på sedan off men använder hastighet värden samt * (märka här koden är identisk med koden som vi använde för * blinkande LED) * / void motorOnThenOffWithSpeed() {int onSpeed = 200. / / ett tal mellan 0 (slutat) och 255 (full hastighet) int onTime = 2500; //the antalet millisekunder för motorn aktivera för int offSpeed = 50; / / ett tal mellan 0 (slutat) och 255 (full hastighet) int offTime = 1000; //the antalet millisekunder för motorn att stänga av för analogWrite (motorPin, onSpeed); vänder sig motor på delay(onTime); väntar på onTime millisekunder analogWrite (motorPin, offSpeed); vänder sig motor av delay(offTime); väntar på offTime millisekunder}

    / * * motorAcceleration() - accelererar motorn till full fart sedan * tillbaka till noll * / void motorAcceleration() {int fördröjningstid = 50, //milliseconds mellan varje hastighet steg //Accelerates motorn för (int jag = 0; jag < 256; i ++) {//goes genom varje hastighet från 0 till 255 analogWrite(motorPin, i); //sets den nya hastigheten delay(delayTime); / / väntar fördröjningstid millisekunder} //Decelerates motorn för (int jag = 255; jag > = 0; i--) {//goes genom varje hastighet från 255 till 0 analogWrite (motorPin , i); Anger den nya hastigheten delay(delayTime); väntar på fördröjningstid millisekunder}}

  • Ovanstående kod kommer kan du styra den motorn är på och av med fördröjning liknar blink skissen men med en motor, faktum är att du kan använda samma kodning som blink skissen för att göra det snurra med fördröjning, bara byta namn på LED för Motor Pin att göra det lättare att förstå, sedan spara skissen som spin motor spinn etc , föreslog förbättringar inkluderar kontrollera hastigheten på motorn med en "Analog" stift samma som LED toningen skiss och "Optimera" kodning för att göra det mindre, med nya funktioner såsom i ++ att öka hastigheten från 0 till 256 analoga skriver högsta inställningen 5 volt, "jag-" funktionen gör de motsatta steg ner från 256 till 0 för saktande varvtal... (här koden metoden är endast lämpligt i stora till mycket stora kodning program, såsom robotics system, motor/servo/IR/Data logger kodning skulle lämnar inte mycket utrymme om någon mindre styrelser med mindre minne.

  • Använda anpassade delar kan vara mycket mer kul, speciellt om du använder en hög effekt vibration motor, med många olika sorters motorer för att se som fungerar bäst med denna krets också tillrådligt, liten leksak motorer fungerar bäst.

  • 8-bitars SKIFTREGISTER (IC) (kontrollera x8 LED's med x3 stift & LED animationer) I flera steg... kommer att nu något mer intressant användning av integrerad krets tech IC, (74HC595 SKIFT Register) göra följande, användning x3 Arduino stift att skifta ut 8-bitar av data, vilket LED animationer... en förklaring på hur detta görs med Data/spärr/Klocka stift på IC-Chip vänligen leta efter mikrochips datablad online ( http://www.nxp.com/documents/data_sheet/74HC_HCT59... ) klistra in länken i ett tomt sökfält i goggle för datablad på denna komponent, lära känna det och dess funktionssätt, och ni förstår IC Stifttilldelningar i ingen tid alls.

  • Samma som alltid sätta upp din krets enligt bilder och video visar, också kan hitta online dokumentation på hur man gör detta ännu mer i detalj om det behövs (kolla & Kontrollera igen dina ledningar här) Detta blir mest ledningar du har använt ännu och det är lätt att miss-aline trådarna eller inte driva en jumper tråd hela vägen , att göra farliga kortslutning om i tillförselområdet makt, alltid kontrollera ditt ledningar när man gör komplexa konfigurationer som denna, eller länka IC marker, eftersom de kräver en hel del kabeldragning, ladda upp koden nedan den här raden till din IDE utom under vilket namn du vill ha i skisss ___

  • PIN-kod definitioner
    PIN-kod definitioner //The 74HC595 använder en seriell kommunikation //link som har tre stift int data = 2; int clock = 3; int spärren = 4;

    Används för enskild LED manipulation int ledState = 0; CONST int å = hög; CONST int OFF = låg;

    / * * setup() - funktionen körs en gång när du slår din Arduino på * vi satt tre kontroll stiften att utgångar * / void setup() {pinMode (data, produktionen); pinMode (klocka, OUTPUT); pinMode (spärren, OUTPUT);}

    / * * loop() - denna funktion startar när installationen är klar och sedan upprepa * vi satt som lysdioder vi vill på sedan ringa en rutin som skickar de till 74HC595 * / void loop() / / kör om och om igen {int fördröjningstid = 100; //the antal millisekunders fördröjning mellan LED uppdateringar för (int jag = 0; jag < 256; i ++) {updateLEDs(i); delay(delayTime);}}

    / * * updateLEDs() - skickar LED står i ledStates till 74HC595 * sekvens * / void updateLEDs (int value) {digitalWrite (latch, låg); //Pulls marker spärren låg shiftOut (data, klocka, MSBFIRST, värde); //Shifts ut de 8 bitarna till SKIFT register digitalWrite (latch, hög); //Pulls spärren hög visar data}

    / * * updateLEDsLong() - skickar LED står i ledStates till 74HC595 * sekvens. Samma som updateLEDs förutom att skifta ut görs i programvara * så du kan se vad som händer. * / void updateLEDsLong (int value) {digitalWrite (latch, låg); //Pulls marker spärren låg för (int jag = 0; jag < 8; i ++) {//Will upprepa 8 gånger (en gång för varje bit) int bit = värde & B10000000; //We använda en "bitmask" för att välja endast den åttonde //bit i vårt nummer (den som vi tar upp denna gång genom värde = värde << 1; //we flytta våra upp en bit värde så nästa gång bit 7 är //bit 8 och vi kommer att göra vår matematik på det if(bit == 128) {digitalWrite (data, hög);} //if bit 8 är Ställ och ange våra data pin hög annat {digitalWrite (data, låg);} //if bit 8 är deaktiverat sedan ställa in data pin låg digitalWrite (klocka, hög); de följande tre raderna puls klocka pin delay(1); digitalWrite (klocka, låg); } digitalWrite (latch, hög); drar låset hög skiftande våra data till visas}

  • Dessa används i bitvis matematik som vi använder för att ändra enskilda lysdioder //For mer detaljer http://en.wikipedia.org/wiki/Bitwise_operation int bitar [] = {B00000001, B00000010, B00000100, B00001000, B00010000, B00100000, B01000000, B10000000}; int masker [] = {B11111110, B11111101, B11111011, B11110111, B11101111, B11011111, B10111111, B01111111}; / * * changeLED (int ledde, int stat) - ändrar en enskild LED * lysdioder är 0 till 7 och staten är antingen 0 - OFF eller 1 - å * / void changeLED (int ledde, int stat) {ledState = ledState & masker [ledde]; //clears ledState av bet vi tar upp if(state == ON) {ledState = ledState | bitar [ledde];} //if biten är på vi kommer att lägga till ledState updateLEDs(ledState); //send den nya LED-staten till SKIFT registrera}

  • Detta är helt klart den största koden ännu att vara mer komplex sedan den andra hittills, dissekera koden själv denna gång plocka isär i nya funktioner som finns, B00000001, B00000010 (Bet koder) 01 att vara de första 10 är det nästa så vidare så vidare, försöka lära känna huvudsakligen 3 delar av IC-chip spärr/Data/klocka stift och var de finns för framtida projekt.

  • Animationer kan hämtas online för LED's för att få dem att blinka på vissa sätt, prova att använda olika färg eller flera färg leds som jag gjorde, snarare än alla samma färg, det gör det lättare att se animationen och ser mycket bättre också, se till att alla resistorer knutna till lysdioder är isatt, ibland en kommer att flytta sin plats medan du ansluter massa hoppare ledningar.

  • 9 g SERVO kontroll (används vanligen i robotics) 9g Mini Servo är ganska lätt för att ställa in rörelsen att vara begränsad i pulser kontrollera servon databladet online för din typ av servo, kan användas i robotic plats system som ultrasonic sensor vända förmåga, dörrlås, gemensamma rörelsen, och axeln servo armar används i fabriken tillverkning och konstruktion helt automatiserad på pre programmerat servo's inuti dessa arms.less steg sedan vanligt denna gång som ni nu vet hur man ställer upp en krets och ladda upp program till din IDE, som väl så grundläggande kodning funktioner och mycket mer.

  • Ställ in din Servo enligt bilderna publiceras, och lägga till tillägg etiketter för bättre visuell indikering av servo vinkel när gjort gå till Arduino huvudsidan och Sök för servo biblioteket själv lära dig att lägga till det genom att läsa upp på biblioteket, en gång gjort och du har det till exempel eller skissbok, ladda upp "Svep" exempel som finns där måste ladda ner denna för att använda koden nedan här line___

  • #include servo myservo; skapa objekt för att styra en servo servo / / maximalt åtta servo objekt kan skapas int pos = 0; variabel att lagra servo position void setup() {myservo.attach(9); / / tillmäter objektet servo servo på stift 9} void loop() {för (pos = 0; pos < 180; pos + = 1) / / går från 0 grader till 180 grader {/ / i steg om 1 grad myservo.write(pos); / / tala servo gå till position i variabel "pos' delay(15); / / väntar 15 MS för servo att nå ställning} för (pos = 180, pos > = 1; pos-= 1) / / går från 180 grader till 0 grader {myservo.write () POS); berätta servo gå till position i variabel "pos' delay(15); Waits 15 MS för servo att nå ställning}}

  • Lek med servo för en medan det kan fastna då och då bara twist upp tillbaka till sin utgångspunkt och tryck på Återställ så startas om kodning biblioteket, servo bör sedan rotera 180degrees och tillbaka, försök att ändra puls tidpunkten i små steg att hitta en som fungerar bättre för din servo, nästa del är ganska lätt krok upp en 10k bifoga Potentiometer till gör den här potten till analoga stift 0 samt som knyter den in-/ + anslutningar/rails på skärbräda med bygel ledningar se mina bilder och videor till se hur jag anslutit den, eller hänvisa till din egen expertis, prova experiment är alltid bättre, att hitta det ut för dig själv, dess bara 3 trådar och 3 för servo som redan är anslutna, räkna pinut av din potten själv dess mycket enkel att du kommer att arbeta ut det om du har fått detta långt och gjort alla tidigare experiment.

  • Se Steg
    Relaterade Ämnen

    Lärdomar tag byggnaden en värdelös låda med hjälp av en Arduino och en Instructable

    Så, jag hittade en Instructable på platsen som verkade ganska bra. Du ser, jag ville utnyttja kraften i en Arduino att köra en värdelös låda. Jag skulle bygga och programmera den med Instructable jag hittade på webbplatsen. Inte bara det, men jag sku...

    En resa av Palm Arduino Kit

    jag skyldig detta instructable till min Palm Arduino Kit fläkt!Gjorde jag nämnde i min tidigare instructable "Palm Arduino Kit" att jag byggt i kit till följde med mig medan jag göra den resande.Och en riktig resa av min Palm Arduino Kit gjorde...

    Mycket känsliga Arduino ljussensor

    i Mareld gemenskapsprojekt på BioCurious, vi har jobbat med ett antal bioluminescent bakterier och alger. Vi skulle älska att kunna mäta exakt hur mycket ljus dessa organismer producerar. Tyvärr, hur mycket ljus de producerar är ganska svag, och även...

    Arduino automatiserad Garage dörren System

    vår TEJ klass fick utmaningen att bygga något som är antingen original eller och förbättring till något som redan finns och måste på något sätt genomföra "Arduino"Detta Instructable gör det möjligt för dig att skapa en garageport utrustad med en...

    Arduino Flash Controller för fotografering

    är en pank amatörfotograf är inte lätt.Film, kemikalier och papper är inte billigt och en budget för vissa studioljus är obefintlig.Så, jag bestämde mig för att, med hjälp av min trogna arduino, skapa min egen sync controller att använda med engångsk...

    Enkla termostat genom att använda Arduino

    Detta instructable kommer att omfatta hur man gör en enkel termostat med hjälp av en arduino och andra elektroniska delar! Innan detta projekt hade jag mycket lite erfarenhet med en arduino. I en klass som jag tog, jag fick andra projekt (göra en LCD...

    Mini Arduino Multi funktion styrenhet med LCD-skärm

    detta Instructable bygger på mini Arduino miljö monitor och mini Arduino EEGEN monitor Instructables.Det kan du styra upp till 4 reläer med tid, temperatur och/eller ljus, ditt sinne, eller vilken sensor du vill använda.Exemplen är prototyper, jag gå...

    Arduino 8 * 8 ledde matrisen driver med 2 * 74HC595 SKIFT register

    Jag köpte en 8 x 8 ledde matrisen inklusive en förare ombord med ett MAX7219CNG chip. Tyvärr detta chip inte fungerar korrekt. Så jag bestämde mig att bygga min egen drivrutin med hjälp av 2 74HC595 SKIFT register.Min lösning är baserad på den "Multi...

    Arduino Knock-Knock Treasure Box

    Detta är min första Arduino projekt och Instructable. Jag gjorde det för min tre unga barnbarn som har haft det mycket. Jag köpte lådan från Jo-Ann tyg och hantverk butik och installerade ett Arduino. Jag lägga godis i rutan och programmet en hemlig...

    Arduino och batteri pack i Altoids burkar

    Detta är två, två, två Instructables i ett! Min post för USB-tävling (fortfarande pågår – inga garantier som jag även kommer att avsluta det) innebär en Arduino, som jag beslöt att paketet i en Altoids tin. Jag behövde också ett batteripack som skull...

    Xmas-box: Arduino/ioBridge internet kontrollerad Julljus och musik show

    min xmas-box projektet består av en internet kontrollerad Julljus och musikföreställning. En julsång på begäran on-line som sedan sätta i en kö och spelas i den ordning de begärdes. Musiken sänds på en FM-station inom en radie av 300 ft från mitt hus...

    Arduino Intel Edison - nybörjare vattning Guide - Uncomplete

    Hej alla,Här är min lilla guide för mitt projekt Intel IOT "Växt Rehab Installation".Min huvudsakliga koncept är att föra växter de bästa förutsättningarna att växa tack vare en Automatisk installation, drivs av Arduino - Intel Edison. Jag är ny...

    Voice ingång Arduino Bi-color LED Matrix prydande Text Display (Bluetooth + Android)

    Medan du surfar på intressanta projekt på Instructables, snubblade vi över imponerande röst aktiverat Arduino (Bluetooth + Android) instructable. Du kan kolla upp det påVi har nyligen satt upp en instructable att bygga en 7 Bi-color 8 x 8 LED Matrix...

    OFFscope - offline oscilloskop (Arduino + SD kort snabb avverkning)

    Detta är inte realtid oscilloskop!Först skaffa du signal genom att spara/logga det till SD-kort. Sedan granska du förvärvade signalen på din PC.Denna oFFline oscilloskop är avsedd för fordonsindustrin sensor diagnostik. 99% av automotive sensorer fun...

    Arduino trafikljus för nybörjare

    setup() { // code in here runs once } voidloop() { // after the setup function, code in here runs over and over }T/FE5GXM7HKHPPROUTPUTT.MEDIUM.jpg"> * pinMode 8 / pinMode(3, OUTPUT); 4 / 3 HIGH 1 digitalWrite - uppdaterad till att omfatta trafiklj...

    KONTROLL 8 LED använder ARDUINO:-

    Jag hoppas du kan ha ha praxis min att komma igång med ARDUINO #1 som utställningsmonter du kontroll av LED med Arduino.In detta instructables jag lär dig att kontrollera 8 ledde samtidigt. så är du redo att bygga en färgglad instructables??. Fortsät...

    Röst till Arduino: Kontroll lysdioder med hjälp av taligenkänning MIT

    Hej, alla!!! Det har varit en tid jag inte hade uppdaterat mitt inlägg här. Idag vill jag dela med er killar ett experiment jag gjorde. Jag kommer att kontrollera lysdioder med MIT app inventor taligenkänning. Åh innan jag glömmer, hade jag också sta...

    Arduino syntet

    Arduino kan mata ut ljud via ett bibliotek som har utvecklats som kallas Tonen bibliotek.Genom att skapa ett gränssnitt och ett program som kan ringa vissa värden för att vara utdata till en ljudutgång, är Arduino syntet ett robust verktyg för att gö...

    Spela Wave-fil genom att använda arduino

    detta är en enkel krets att spela wav-filer genom att använda arduino Nano V3.0, det bestå från 4 knappar, var och en spelar specifika wav fil laddas till SD-kort.Steg 1: delar 1-Arduino Nano V3.0 (jag använde den chines versionen kallas Funduino Nan...