Za početak rada s Arduinom: Vodič za početnike

Za početak rada s Arduinom: Vodič za početnike

Arduino je platforma za prototipiranje elektronike otvorenog koda i jedna je od najpopularnijih u svijetu-uz moguću iznimku Raspberry Pi. Nakon što ste prodali više od 3 milijuna jedinica (i mnogo više u obliku kloniranih uređaja treće strane): što ga čini tako dobrim i što s njim možete učiniti?





Što je Arduino?

Arduino se temelji na lakom za korištenje, fleksibilnom, hardveru i softveru. Namijenjen je umjetnicima, dizajnerima, inženjerima, hobistima i svima koji imaju i najmanji interes za programibilnu elektroniku.





Arduino osjeća okoliš čitanjem podataka s različitih gumba, komponenti i senzora. Oni mogu utjecati na okoliš kontrolom LED dioda, motorima , servo, releji i još mnogo toga.





Arduino projekti mogu biti samostalni ili mogu komunicirati sa softverom koji radi na računalu ( Obrada je najpopularniji softver za to). Mogu razgovarati s drugim Arduinom, Raspberry Pisom, NodeMCU -om ili gotovo bilo čime drugim. Svakako pročitajte našu usporedbu mikrokontrolera od 5 USD za temeljitu usporedbu razlika između ovih mikrokontrolera.

Možda se pitate, zašto odabrati Arduino? Arduino doista pojednostavljuje proces izgradnje programabilnog elektroničkog projekta, što ga čini izvrsnom platformom za početnike. Možete jednostavno početi raditi na jednom bez prethodnog iskustva u elektronici. Dostupne su tisuće vodiča, a oni se kreću u poteškoćama pa možete biti sigurni u izazov nakon što savladate osnove.



Osim Arduinove jednostavnosti, on je i jeftin, za više platformi i otvorenog koda. Arduino Uno (najpopularniji model) temelji se na Atmelovim mikrokontrolerima ATMEGA 16U2. Proizvedeno je mnogo različitih modela koji se razlikuju po veličini, snazi ​​i specifikacijama, pa pogledajte razlike u našem vodiču za kupnju.

Planovi za ploče objavljeni su pod a Creative Commons licencu, pa su iskusni hobisti i drugi proizvođači slobodni napraviti vlastitu verziju Arduina, potencijalno je proširiti i poboljšati (ili samo izravno kopirati, što dovodi do širenja jeftinih Arduino ploča koje danas nalazimo).





Što možete učiniti s Arduinom?

Arduino može učiniti zapanjujući broj stvari. Oni su mozak izbora za većinu 3D pisača. Njihova niska cijena i jednostavnost uporabe znače da su tisuće stvaratelja, dizajnera, hakera i kreatora napravili nevjerojatne projekte. Evo samo nekih od Arduino projekata koje smo napravili ovdje na MakeUseOf:

Što je unutar Arduina?

Iako je na raspolaganju mnogo različitih vrsta Arduino ploča, ovaj priručnik se fokusira na Arduino uno model. Ovo je najpopularnija Arduino ploča. Dakle, što ovu stvar otvara? Evo specifikacija:





  • Procesor: 16 Mhz ATmega16U2
  • Brza memorija: 32KB
  • Radna memorija: 2KB
  • Radni napon: 5V
  • Ulazni napon: 7-12V
  • Broj analognih ulaza: 6
  • Broj digitalnih I/O: 14 (od njih 6 modulacija širine impulsa - PWM )

Specifikacije se mogu činiti besmislenim u usporedbi s vašim stolnim računalom, ali imajte na umu da je Arduino ugrađeni uređaj s mnogo manje podataka za obradu od vašeg stolnog računala. Više je nego sposoban za većinu elektroničkih projekata.

Još jedna prekrasna značajka Arduina je mogućnost korištenja takozvanih 'štitova' ili dodanih ploča. Iako štitovi neće biti obuhvaćeni ovim priručnikom, oni su zaista zgodan način za proširenje značajki i funkcionalnosti vašeg Arduina.

Što će vam trebati za ovaj vodič

Dolje ćete pronaći popis za kupnju komponenti koje će vam trebati za ovaj vodič za početnike. Sve ove komponente trebale bi koštati manje od 50 USD. Ovaj bi popis trebao biti dovoljan da biste dobro razumjeli osnovnu elektroniku i imali dovoljno komponenti za izgradnju nekih prilično kul projekata koristeći ovaj ili bilo koji drugi Arduino vodič. Ako ne želite odabrati svaku komponentu, umjesto toga razmislite o kupnji početnog seta.

Ako ne možete dobiti određenu vrijednost otpornika, nešto što je moguće bliže obično će raditi dobro.

Pregled električnih komponenti

Pogledajmo što su sve te komponente, što rade i kako izgledaju.

Oglasna ploča

Koriste se za izradu prototipa elektroničkih sklopova, oni pružaju privremeno sredstvo za međusobno povezivanje komponenti. Oglasne ploče su plastični blokovi s rupama u koje se mogu umetnuti žice. Rupe su poredane u redove, u grupama od pet. Kad želite preurediti krug, izvucite žicu ili dio iz rupe i pomaknite ga. Mnoge ploče sadrže dvije ili četiri skupine rupa koje se protežu duž daske, uz stranice, i sve su povezane - one su tipično za distribuciju energije i mogu biti označene crvenom i plavom linijom.

Oglasne ploče izvrsne su za brzo stvaranje kruga. Oni mogu postati jako neuredni za veliki krug, a jeftiniji modeli mogu biti notorno nepouzdani, pa vrijedi potrošiti malo više novca na dobar.

LED diode

LED označava Dioda koja emitira svjetlo . Oni su vrlo jeftin izvor svjetlosti i mogu biti jako svijetli - posebno ako su grupirani. Mogu se kupiti u raznim bojama, ne zagrijavaju se posebno i dugo traju. Možda imate LED diode na televizoru, nadzornoj ploči automobila ili u žaruljama Philips Hue.

Vaš Arduino mikrokontroler također ima ugrađenu LED diodu na pinu 13 koja se često koristi za označavanje radnje ili događaja ili samo za testiranje.

Otpornik fotografija

Foto otpornik ( str hotocelija ili Otpornik ovisan o svjetlu ) omogućuje vašem Arduinu mjerenje promjena svjetla. Ovo biste mogli koristiti za uključivanje računala, na primjer, pri dnevnom svjetlu.

Taktilni prekidač

kako promijeniti lokaciju sigurnosne kopije itunes windows 10

Taktilni prekidač je u osnovi gumb. Pritiskom na njega dovršit će se krug i (obično) promijeniti s 0V na +5V. Arduinos može otkriti ovu promjenu i u skladu s tim reagirati. To su često trenutna - što znači da su 'pritisnuti' samo kad ih prst drži pritisnutim. Nakon što ih otpustite, vratit će se na zadano stanje ('bez pritiska' ili isključeno).

Piezo zvučnik

Piezo zvučnik je mali zvučnik koji proizvodi zvuk iz električnih signala. Često su grubi i limeni i ne zvuče ništa poput pravog zvučnika. Međutim, vrlo su jeftini i lako ih je programirati. Naša Buzz Wire igra koristi jednu za igranje Tema Monty Python 'Flying Circus' .

Otpornik

Otpornik ograničava protok električne energije. Vrlo su jeftine komponente, a sastavni su dio amaterskih i profesionalnih elektroničkih sklopova. Gotovo su uvijek potrebni za zaštitu komponenti od preopterećenja. Također su potrebni za sprječavanje kratkog spoja ako se Arduino +5V spoji ravno u masu. Ukratko: vrlo zgodan i apsolutno neophodan.

Žice za kratkospojnike

Premosne žice koriste se za stvaranje privremenih veza između komponenti na vašoj ploči.

Postavljanje vašeg Arduina

Prije nego započnete bilo koji projekt, morate navesti svoj Arduino da razgovara s vašim računalom. To vam omogućuje pisanje i sastavljanje koda za izvršavanje Arduina, kao i pružanje načina da vaš Arduino radi zajedno s vašim računalom.

Instaliranje softverskog paketa Arduino na Windows

Prijeđite na Arduino web mjesto i preuzmite verziju softvera Arduino prikladnu za vašu verziju sustava Windows. Nakon preuzimanja slijedite upute za instalaciju Arduina Integrirano razvojno okruženje (OVDJE).

Instalacija uključuje upravljačke programe, pa bi teoretski bilo dobro da odmah krenete. Ako iz nekog razloga to ne uspije, pokušajte sljedeće korake za ručnu instalaciju upravljačkih programa:

  • Priključite ploču i pričekajte da Windows započne proces instalacije upravljačkog programa. Nakon nekoliko trenutaka, proces će uspjeti, unatoč svim naporima.
  • Kliknite na Izbornik Start > Upravljačka ploča .
  • Dođite do Sistem i sigurnost > Sustav . Nakon što se prozor Sustav otvori, otvorite Upravitelj uređaja .
  • Pod, ispod Luke (COM & LPT), trebali biste vidjeti otvoreni port s imenom Arduino UNO (COMxx) .
  • Desni klik na Arduino UNO (COMxx) > Ažurirajte softver upravljačkog programa .
  • Odaberite Pretražite moje računalo za softver upravljačkog programa .
  • Idite do i odaberite datoteku upravljačkog programa Uno, nazvanu ArduinoUNO.inf , koji se nalazi u Vozači mapu preuzimanja softvera Arduino.

Windows će dovršiti instalaciju upravljačkog programa.

Instaliranje softverskog paketa Arduino na Mac OS

Preuzmite Arduino softver za Mac sa Arduino web mjesto . Izdvojite sadržaj datoteke .zip datoteku i pokrenite aplikaciju. Možete ga kopirati u mapu s aplikacijama, ali iz vaše će se datoteke sasvim dobro pokrenuti desktop ili Preuzimanja mape. Ne morate instalirati dodatne upravljačke programe za Arduino UNO.

Instaliranje Arduino softvera na paket Ubuntu/Linux

Instalirati gcc-avr i avr-libc :

sudo apt-get install gcc-avr avr-libc

Ako već nemate openjdk-6-jre, instalirajte i konfigurirajte i to:

sudo apt-get install openjdk-6-jre
sudo update-alternatives --config java

Odaberite ispravnu JRE ako imate instalirano više od jednog.

Idite na Arduino web mjesto i preuzmite Arduino softver za Linux. Možeš širenje i pokrenite ga sa sljedećom naredbom:

tar xzvf arduino-x.x.x-linux64.tgz
cd arduino-1.0.1
./arduino

Bez obzira na to koji OS koristite, gornje upute pretpostavljaju da imate originalnu Arduino Uno ploču s robnom markom. Ako ste kupili klon, gotovo će vam trebati upravljački programi trećih strana prije nego što se ploča prepozna preko USB -a.

Pokretanje softvera Arduino

Sada kada je softver instaliran i vaš Arduino postavljen, provjerimo radi li sve. Najlakši način za to je korištenje primjera aplikacije 'Blink'.

Otvorite softver Arduino dvostrukim klikom na aplikaciju Arduino ( ./arduino na Linuxu ). Provjerite je li ploča spojena na vaše računalo, a zatim otvorite LED treperi primjer skice: Datoteka > Primjeri > 1. Osnove > Treptati . Trebali biste vidjeti kôd aplikacije otvoren:

Da biste učitali ovaj kôd na svoj Arduino, odaberite unos u Alati > Odbor izbornik koji odgovara vašem modelu - Arduino uno u ovom slučaju.

Odaberite serijski uređaj vaše ploče s Alati > Serijski port Jelovnik. U sustavu Windows ovo će vjerojatno biti COM3 ili više. Na Mac -u ili Linuxu ovo bi trebalo biti nešto /dev/tty.usbmodem u tome.

Na kraju kliknite na Učitaj gumb u gornjem lijevom kutu vašeg okruženja. Pričekajte nekoliko sekundi i trebali biste vidjeti RX i TX LED diode na Arduinu trepere. Ako je prijenos uspješan, na statusnoj traci će se pojaviti poruka 'Gotovo učitavanje'.

Nekoliko sekundi nakon dovršetka prijenosa trebali biste vidjeti pin 13 LED dioda na ploči počinje treptati. Čestitamo! Vaš je Arduino pokrenut.

Početni projekti

Sada kada znate osnove, pogledajmo neke početničke projekte.

Ranije ste koristili Arduino uzorak koda za treptanje ugrađene LED diode. Ovaj će projekt treperiti vanjskom LED diodom pomoću ploče. Evo kruga:

Spojite dugu nogu LED diode (pozitivna noga, nazvana anoda ) do a Otpornik od 220 ohma a zatim u digitalni pin 7 . Spojite kratku nogu (negativna noga, tzv katoda ) izravno na tlo (bilo koji od Arduino portova s ​​GND -om na vašem izboru). Ovo je jednostavan sklop. Arduino može digitalno kontrolirati ovaj pin. Uključivanjem pina LED će zasvijetliti, a isključivanjem LED. Otpornik je neophodan za zaštitu LED diode od prevelike struje - izgorjet će i bez nje.

Evo koda koji vam je potreban:

void setup() {
// put your setup code here, to run once:
pinMode(7, OUTPUT); // configure the pin as an output
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(7, HIGH); // turn LED on
delay(1000); // wait 1 second
digitalWrite(7, LOW); // turn LED off
delay(1000); // wait one second
}

Ovaj kôd čini nekoliko stvari:

void setup (): Arduino ovo pokreće svaki put kad se pokrene. Ovdje možete konfigurirati varijable i sve što vam je potrebno za pokretanje Arduina.

pinMode (7, OUTPUT): Ovo govori Arduinu da koristi ovaj pin kao izlaz, bez ove linije Arduino ne bi znao što učiniti sa svakim pinom. Ovo se mora konfigurirati samo jednom po pinu, a trebate konfigurirati samo pinove koje namjeravate koristiti.

void loop (): Bilo koji kôd unutar ove petlje se neprestano ponavlja, sve dok se Arduino ne isključi. To može veće projekte učiniti složenijima, ali djeluje nevjerojatno dobro za jednostavne projekte.

digitalWrite (7, HIGH): Ovo se koristi za postavljanje pina VISOKO ili NISKA - NA ili ISKLJUČENO . Baš kao i prekidač za svjetlo, kada je pin VISOK, LED će svijetliti. Kad je pin LOW, LED će se isključiti. Unutar zagrada morate navesti neke dodatne podatke kako bi ovo radilo ispravno. Dodatne informacije poznate su kao parametri ili argumenti.

Prvi (7) je broj pina. Na primjer, ako ste LED diodu spojili na drugi pin, promijenili biste je sa sedam na drugi broj. Drugi parametar mora biti VISOKO ili NISKA , koji određuje treba li LED uključiti ili isključiti.

kašnjenje (1000): Kaže Arduinu da čeka određeno vrijeme u milisekundama. 1000 milisekundi jednako je jednoj sekundi, pa će ovo natjerati Arduino da pričeka jednu sekundu.

Nakon što se LED uključi na jednu sekundu, Arduino pokreće isti kod, samo što nastavlja isključiti LED i pričekati još jednu sekundu. Nakon što je ovaj proces završen, petlja počinje ponovno, a LED dioda se ponovno uključuje.

Izazov: Pokušajte prilagoditi vremenski razmak između uključivanja i isključivanja LED diode. Što promatrate? Što se događa ako kašnjenje postavite na vrlo mali broj, primjerice jedan ili dva? Možete li izmijeniti kôd i krug da trepću dva LED diode?

Dodavanje gumba

Sada kada LED radi, dodajmo gumb u vaš krug:

Spojite gumb tako da premosti kanal u sredini ploče. Spojite Gore desno noga do Pin 4 . Spojite dolje desno noga do a 10 k ohma otpornik, a zatim na tlo . Spojite Dolje lijevo noga do 5V .

Možda se pitate zašto jednostavnom gumbu treba otpornik. Ovo služi u dvije svrhe. To je povući prema dolje otpornik - veže iglu za masu. To osigurava da se ne otkriju lažne vrijednosti i sprječava Arduino razmišljanje pritisnuli ste gumb kad niste. Druga namjena ovog otpornika je ograničavanje struje. Bez toga, 5V bi išlo izravno u zemlju, čarobni dim bi bio oslobođen, a vaš Arduino bi umro. To je poznato kao kratki spoj, pa upotreba otpornika sprječava da se to dogodi.

Kada gumb nije pritisnut, Arduino detektira tlo ( pin 4 > otpornik > tlo ). Kad pritisnete gumb, 5V je spojeno na masu. Arduino pin 4 može otkriti ovu promjenu, jer se pin 4 sada promijenio sa zemlje na 5V;

Evo koda:

boolean buttonOn = false; // store the button state
void setup() {
// put your setup code here, to run once:
pinMode(7, OUTPUT); // configure the LED as an output
pinMode(4, INPUT); // configure the button as an input
}
void loop() {
// put your main code here, to run repeatedly:
if(digitalRead(4)) {
delay(25);
if(digitalRead(4)) {
// if button was pressed (and was not a spurious signal)
if(buttonOn)
// toggle button state
buttonOn = false;
else
buttonOn = true;
delay(500); // wait 0.5s -- don't run the code multiple times
}
}
if(buttonOn)
digitalWrite(7, LOW); // turn LED off
else
digitalWrite(7, HIGH); // turn LED on
}

Ovaj se kôd nadovezuje na ono što ste naučili u prethodnom odjeljku. Hardverski gumb koji ste koristili je a trenutna akcijski. To znači da će raditi samo dok ga držite pritisnutim. Alternativa je a zaključavanje akcijski. Ovo je baš kao i prekidači za svjetlo ili utičnicu, pritisnite jednom za uključivanje, pritisnite ponovno za isključivanje. Srećom, ponašanje zaključavanja može se implementirati u kod. Evo što radi dodatni kôd:

boolean buttonOn = false: Ova se varijabla koristi za spremanje stanja gumba - UKLJUČENO ili ISKLJUČENO, VISOKO ili NISKO. Zadana mu je vrijednost false.

pinMode (4, INPUT): Slično kao kod koji se koristi za LED, ovaj redak govori Arduinu da ste priključili ulaz (vaš gumb) na pin 4.

if (digitalRead (4)): Na sličan način kao digitalWrite () , digitalRead () koristi se za čitanje stanja igle. Morate mu dati PIN broj (4, za vaš gumb).

Nakon što pritisnete gumb, Arduino čeka 25 ms i ponovno provjerava gumb. Ovo je poznato kao a otkrivanje softvera . To osigurava da je ono što Arduino misli bio pritisak na gumb, stvarno bio je pritisak na gumb, a ne buka. Ne morate to učiniti, a u većini slučajeva stvari će funkcionirati bez toga. To je više dobra praksa.

Ako je Arduino siguran da ste doista pritisnuli gumb, tada mijenja vrijednost buttonOn promjenjivo. Ovo mijenja stanje:

ButtonOn je istina: Postavite na false.

ButtonOn je netočno: Postavite na true.

Konačno, LED se isključuje prema stanju pohranjenom u buttonOn .

Svijetli senzor

Prijeđimo na napredni projekt. Ovaj će projekt koristiti a Otpornik ovisan o svjetlu (LDR) za mjerenje dostupne količine svjetla. Arduino će vašem računalu reći korisne poruke o trenutnoj razini osvjetljenja.

najbolji način za kupnju macbooka

Evo kruga:

Budući da su LDR -ovi vrsta otpornika, nije važno na koju su stranu postavljeni - nemaju polaritet. Spojiti 5V s jedne strane LDR -a. Spojite drugu stranu na tlo putem a 1 k ohma otpornik. Ovu stranu također spojite na analogni ulaz 0 .

Ovaj otpornik djeluje kao padajući otpornik, baš kao i u prethodnim projektima. Potreban je analogni pin, jer su LDR analogni uređaji, a ti pinovi sadrže posebna kola za točno čitanje analognog hardvera.

Evo koda:

int light = 0; // store the current light value
void setup() {
// put your setup code here, to run once:
Serial.begin(9600); //configure serial to talk to computer
}
void loop() {
// put your main code here, to run repeatedly:
light = analogRead(A0); // read and save value from LDR

//tell computer the light level
if(light <100) {
Serial.println('It is quite light!');
}
else if(light > 100 && light <400) {
Serial.println('It is average light!');
}
else {
Serial.println('It is pretty dark!');
}
delay(500); // don't spam the computer!
}

Ovaj kôd čini nekoliko novih stvari:

Serial.begin (9600): To govori Arduinu da želite komunicirati serijski brzinom od 9600. Arduino će pripremiti sve potrebno za to. Brzina nije toliko važna, ali i vaš Arduino i računalo moraju koristiti isti.

analogno čitanje (A0): Ovo se koristi za čitanje vrijednosti koja dolazi iz LDR -a. Niža vrijednost znači da je na raspolaganju više svjetla.

Serial.println (): Ovo se koristi za pisanje teksta na serijsko sučelje.

Jednostavno ako naredba šalje različite nizove (tekst) na vaše računalo ovisno o dostupnom svjetlu.

Prenesite ovaj kôd i držite USB kabel spojen (tako će Arduino komunicirati i odakle dolazi napajanje). Otvorite serijski monitor ( Gore desno > Serijski monitor ), Trebali biste vidjeti da vaše poruke stižu svakih 0,5 sekundi.

Što promatrate? Što se događa ako pokrijete LDR ili ga zasijate jakim svjetlom? Možete li izmijeniti kôd za ispis vrijednosti LDR -a preko serijskog broja?

Napravite malo buke

Ovaj projekt koristi zvučnik Piezo za stvaranje zvukova. Evo kruga:

Primjećujete li nešto poznato? Ovaj krug je gotovo potpuno isti kao LED projekt. Piezo su vrlo jednostavne komponente - stvaraju zvuk kada dobiju električni signal. Spojite pozitivan nogom do digitalnog pin 9 putem a 220 ohma otpornik. Spojite negativan noga do tlo .

Evo koda, vrlo je jednostavan za ovaj projekt:

void setup() {
// put your setup code here, to run once:
pinMode(9, OUTPUT); // configure piezo as output
}
void loop() {
// put your main code here, to run repeatedly:
tone(9, 1000); // make piezo buzz
delay(1000); // wait 1s
noTone(9); // stop sound
delay(1000); // wait 1s
}

Ovdje postoji samo nekoliko novih značajki koda:

ton (9, 1000): Time piezo stvara zvuk. Potrebna su dva argumenta. Prvi je pin za korištenje, a drugi je frekvencija tona.

noTone (9): Time se prestaje proizvoditi bilo koji zvuk s priloženog pina.

Pokušajte promijeniti ovaj kôd kako biste proizveli drugu frekvenciju. Promijenite kašnjenje na 1 ms - što primjećujete?

Kamo otići Odavde

Kao što vidite, Arduino je jednostavan način za ući u elektroniku i softver. Jedan je od najboljih mikrokontrolera za početnike. Nadamo se da ste vidjeli da je s Arduinom lako izgraditi jednostavne elektroničke projekte. Možete sagraditi daleko složenije projekte kada shvatite osnovne:

  • Izradite božićne svjetlosne ukrase
  • Arduino štitovi za nadmoć vašeg projekta
  • Izgradite vlastitu pong igru ​​s Arduinom
  • Povežite svoj Arduino s internetom
  • Izradite sustav kućne automatizacije sa svojim Arduinom

Koji Arduino posjedujete? Postoje li neki zabavni projekti koje volite stvarati? Za više informacija pogledajte kako poboljšati svoje Arduino kodiranje pomoću VS koda i PlatformIO -a.

Udio Udio Cvrkut E -pošta 15 Komande Windows naredbenog retka (CMD) koje morate znati

Naredbeni redak i dalje je moćan Windows alat. Evo najkorisnijih CMD naredbi koje svaki korisnik sustava Windows mora znati.

Pročitajte Dalje
Povezane teme
  • Uradi sam
  • Arduino
  • Elektronika
O autoru Joe Coburn(136 objavljenih članaka)

Joe je diplomirao računalne znanosti na Sveučilištu Lincoln, UK. On je profesionalni programer softvera, a kad ne leti bespilotnim letjelicama ili ne piše glazbu, često ga se može zateći kako fotografira ili proizvodi video zapise.

Više od Joea Coburna

Pretplatite se na naše obavijesti

Pridružite se našem biltenu za tehničke savjete, recenzije, besplatne e -knjige i ekskluzivne ponude!

Kliknite ovdje za pretplatu