Weekend Prosjekt: Legge programmer til Arduino

I forrige ukes helg Project, lærte vi hva Arduino plattformen er for, og hva forsyninger og ferdigheter vi trenger på vår reise mot å bli Arduino ess. I dag skal vi koble opp en Arduino styret og programmere den til å gjøre ting uten engang å vite hvordan du skal skrive kode.

Råd fra en Guru

Utmerket leseren CR Bryan III (CR for kort ) sendte meg massevis av gode tilbakemeldinger på del 1, Weekend Prosjekt: Læring Ins og Outs av Arduino. Her er noen utvalgte nuggets:



Lodd: 63/37 er bedre, spesielt for begynnelsen montører, fordi at legering minimerer lim fase, hvor ledelsen har kjølt til solid men tinn ikke har, og dermed minimere muligheten for bevegelse frakturering av kjøle skjøten og forårsaker en kald loddeskjøt. Jeg sverger ved Kester " 44 " merkevare loddetinn som den beste ting for hjem montering /omarbeiding.

Vask hendene etter å ha håndtert bly bærende loddetinn og før du berører noe.

Xuron Micro Shear gjøre store strakt kuttere.

Stripping ned og gjenbruke gamle elektroniske komponenter er en verdig og nyttig ferdighet, og belønninger forsiktig lodde-suger ferdigheter (smelte og fjerne gammel lodde). Bruk en metall-kamret fjærbelastet lodd sucker, og ikke presse-pære eller cheapo plast modeller.

  • Lodde og de-lodd i et godt ventilert område. Et godt prosjekt for dine nye ferdigheter er å bruke en gammel datamaskin strømforsyning til å kjøre en liten PC chassis fan på elektronikk arbeidsbenk.



    Koble Arduino

    Consult Installere Arduino på Linux for installasjonsinstruksjoner, hvis du ikke allerede har installert den. Linux kan allerede inkluderer Arduino IDE; for eksempel, Fedora, Debian og Ubuntu alle inkluderer Arduino programvare, men Ubuntu er langt bak og ikke har den nyeste versjonen, som er 1,0. Det er ikke så farlig å installere det fra kilder, bare følg instruksjonene for din distribusjon.

    Nå skal koble den opp til en PC, slik at vi kan programmere den. En av mine favoritt Arduino funksjoner er den kobles til en PC via USB i stedet for en seriell port, som så mange innebygde widgets gjør. Arduino kan trekke strøm fra USB-porten, hvis du bruker et fullt drevet port og ikke en trekkvogn delt hub. Det går også fra en ekstern strømforsyning som en 9V AC-til-DC strømkabelen med en 2,1 mm fat plugg, og en positiv tips.

    La oss snakke om strømforsyninger for et øyeblikk. En fin universal AC til DC-adapter som Velleman Compact Universal DC Adapter strømforsyning betyr at du alltid har rett type makt. Dette gir 3-12 volt og kommer med 8 forskjellige tips, og har justerbar polaritet. En viktig egenskap ved enhver DC strømforsyning er polaritet. Noen enheter krever en viss polaritet (enten positiv eller negativ), og hvis du reversere det du kan steke dem. (Jeg snakker av trist opplevelse.) Se på strømforsyningen for ett av symbolene i figur 1 til å bestemme sin polaritet.

    Figur 1 viser hvordan AC-til-DC strømadapter polaritet er angitt med disse symbolene. Disse henviser til tuppen av utgangspluggen

    Komme tilbake til Arduino IDE: Gå til Verktøy >. Styret og klikk på brettet. Så i Verktøy > Serial Port velge riktig TTY-enheten. Noen ganger tar det noen minutter for den å vise den riktige, som er /dev /ttyACM0, som vist i Figur 2. Dette er den eneste delen jeg noensinne har problemer med på nye Arduino IDE installasjoner.

    Figur 2: Velge /dev /ttyACM0 seriell enhet

    De fleste Arduino styrene har en innebygd LED koblet til digital utgang pin 13. Men vi er ikke nerder.? La oss plugge inn vår egen ekstern LED. Legg merke til hvordan LED-fører er forskjellige lengder. Figur 3 viser hvor mange Arduino styrene har en onboard LED kablet til pin 13. Eksterne LED har to ledninger, og en er lengre enn den andre. Den lange ledningen er anoden, eller positiv bly, og den korte ledningen er katoden, eller negative.

    Plugg anoden til pin 13 og katoden i bakken. Figur 4 viser den eksterne LED på plass og alle lyser opp.

    Legge en skisse

    Arduino IDE kommer med en stor gruppe med eksempel skisser. Arduino er " hello world ". -type Skisse heter Blink, og det gjør en LED blink


     /* Blink Slår på en LED på i ett sekund, og deretter av i ett sekund, gjentatte ganger. Dette eksempelet kode er i den offentlige sfæren. * /void setup () {//initialisere digital pin som en utgang. //Pin 13 har en LED koblet på de fleste Arduino styrene: pinMode (13, UTGANG); } void loop () {digitalWrite (13, HIGH); //Satt LED på forsinkelse (1000); //Vente på ny digitalWrite (13, LOW); //Setter LED av forsinkelse (1000); //Vente på ny} 

    Åpne fil > Eksempler > Grunnleggende > Blinke. Klikk på Bekreft-knappen for å kontrollere syntaks og kompilere skissen. Bare for moro skyld, å skriv inn noe tilfeldig skape en feil, og klikk deretter Bekreft nytt. Det bør fange feilen og fortelle deg om det. Figur 5 viser hva en syntaksfeil i koden din ser ut når du klikker på Bekreft-knappen.

    Ta din feil, og klikk på knappen Last opp. (Eventuelle endringer du gjør vil ikke bli lagret dersom du klikker Fil >. Lagre) Dette kompilerer og laster opp skissen til Arduino. Du vil se alle Arduino ombord LED blink, og deretter den røde LED begynner å blinke i et mønster programmert av skissen. Hvis din Arduino har sin egen makt, kan du koble fra USB-kabelen og det vil holde blinke

    Redigere en skisse

    Nå blir det ü. BER-moro, fordi lage og laste opp kode endringer er så rask og enkel vil du danse av glede. Endre pinne 13 til 12 i skissen. Klikk på Bekreft, og når det går uten feil klikker du på knappen Last opp. Flytt LED anode til pin 12. Det bør blinke akkurat som det gjorde i pin 13.

    Nå skal vi endre blinking varighet til 3 sekunder:


     digitalWrite (13 , HØY); //Satt LED på forsinkelse (3000); //Vente i tre sekunder 


    Klikk på Bekreft og opp, og raskere enn du kan si " Wow, er det fort " den blinker i det nye mønsteret. Sjekk din Arduino styret når du klikker Last opp, fordi du vil se lysene blinke som den tilbakestilles og laster inn ny skisse. Nå gjør det blinke i flere perioder, og legg merke til hvordan jeg forbedret kommentarer:


     void loop () {digitalWrite (13, HIGH); //Satt LED på forsinkelse (3000); //På for tre sekunder digitalWrite (13, LOW); //Setter LED av forsinkelse (1000); //Off for en andre digitalWrite (13, HIGH); //Setter LED på forsinkelse (500); //På for et halvt sekund digitalWrite (13, LOW); //Setter LED av forsinkelse (1000); //Off for en ny} 


    Alltid kommentere koden din. Du vil glemme hva din awesome kodene er ment å gjøre, og det hjelper deg å avklare din tenkning når du skriver ned ting

    Nå åpner en ny skisse, Fil >.; Eksempel > Basics > Fade.


     /* Fade Dette eksempelet viser hvordan å falme en LED på pinne 9 bruker analogWrite () -funksjonen. Dette eksempelet kode er i den offentlige sfæren. * /int lysstyrke = 0; //Hvor lyst det LED isint fadeAmount = 5; //Hvor mange poeng å falme LED byvoid setup () {//erklærer pinne 9 til å være en utgang: pinMode (9, utgang);} void loop () {//satt lysstyrken pin 9: analogWrite (9, lysstyrke); //Endre lysstyrken for neste gang gjennom løkken: lysstyrke = lysstyrke + fadeAmount; //Reversere retning av falming på endene av fade: if (lysstyrke == 0 || lysstyrke == 255) {fadeAmount = -fadeAmount; } //Vente i 30 millisekunder å se dimming effekt forsinkelse (30); } 


    Du kan enten flytte anode av LED til pin 9, eller redigere skisse å bruke hva pin du ønsker å bruke. Klikk på Bekreft og opp, og din LED vil visne inn og ut. Legg merke til hvordan Blink skisse er fortsatt åpen; du kan åpne flere skisser og raskt bytte mellom dem

    Nå åpner Fil >.; Eksempel > Basics > BareMinimum:


     void setup () {//sette oppsettet koden her, for å kjøre en gang:} void loop () {//sette din viktigste koden her, for å kjøre flere ganger:} 


    Dette gjør ikke noe. Det viser minimum kreves elementer av en Arduino skisse, den to funksjoner setup () og loop (). Oppsettet () -funksjonen går først og initialiserer variabler, biblioteker og pin moduser. Sløyfen () -funksjonen er her moroa ting skjer, de blinky lys eller motorer eller sensorer eller hva er det du gjør med din Arduino.

    Du kan gå en lang vei uten å vite mye om koding, og du vil lære mye av å eksperimentere med eksempel skisser, men selvfølgelig jo mer du vet jo mer du kan gjøre. Besøk Arduino Learning siden for å få detaljert informasjon om Arduino innebygde funksjoner og biblioteker, og for å lære mer om å skrive skisser. I vår siste del av denne serien vil vi legge til en Wave audio skjold og en sensor, og gjøre en skremme-pus-off-the-kjøkken-counter enhet. Anmeldelser