Lecții de programare pe arduino ide. De unde să cumpărați Arduino. Ce este Arduino

Acest articol introductiv este pentru cei care au reușit deja să despacheteze o duzină sau două cutii colorate de la designeri împreună cu copilul lor, au construit sute de structuri diverse și au umplut toate containerele disponibile din dulap cu piese Lego. Dacă sunteți gata să duceți lucrurile la următorul nivel cu electronice, microcontrolere, senzori și dispozitive inteligente, atunci este timpul să experimentați cu Arduino!

În această serie de articole, vom aduna cele mai importante lucruri pe care trebuie să le știi despre Arduino pentru a începe să lucrezi singur cu copiii. Chiar dacă nu ai luat niciodată un fier de lipit și cuvintele „controller” și „controller” au aproximativ aceeași semnificație pentru tine, poți fi sigur că totuși vei reuși! Lumea electronicii și a roboticii de astăzi este plină de soluții simple și foarte convenabile care vă permit să creați proiecte foarte interesante aproape de la zero. Tutorialul nostru vă va ajuta să navigați rapid și să faceți primii pași.

În limbajul de zi cu zi, Arduino este la care poți conecta multe diferite dispozitiveși fă-i să lucreze împreună folosind un program scris în limbajul Arduino într-un mediu de programare special.

Cel mai adesea, placa arată astfel:

Figura prezintă una dintre plăcile Arduino - Arduino Uno. O vom studia mai detaliat în lecțiile următoare.

Puteți conecta firele la placă și puteți conecta multe elemente diferite. Cel mai adesea, pentru conexiune se folosește o placă pentru montare fără lipire. Puteți adăuga LED-uri, senzori, butoane, motoare, module de comunicație, relee și puteți crea sute de modele interesante de dispozitive inteligente. Placa Arduino este o priză inteligentă care va porni și opri tot ce este conectat, în funcție de modul în care este programat.




Toate lucrările la proiect sunt împărțite în următoarele etape:

  1. Venim cu o idee și un design.
  2. Colectare schema de conexiuni. Aici avem nevoie de o placă, care simplifică instalarea elementelor. Desigur, veți avea nevoie de abilități în lucrul cu dispozitive electronice și de abilități.
  3. Ne conectăm la computer prin USB.
  4. și scrieți-l pe tablă literal apăsând un singur buton de pe ecran în .
  5. Ne deconectăm de la computer. Acum, dispozitivul va funcționa autonom - atunci când alimentarea este pornită, va fi controlat de programul pe care l-am scris în el.

Programul și mediul de programare arată astfel:

Ecranul arată un program (în argoul arduino, textul programului se numește „schiță”), care va clipi un bec conectat la a 13-a intrare de pe placa Arduino UNO. După cum puteți vedea, programul este destul de simplu și constă din ușor de înțeles pentru cunoscători limba engleza instrucțiuni. Limbajul de programare Arduino folosește propriul său dialect al limbajului C++, dar toate caracteristicile C++ sunt acceptate.

Există o altă modalitate de a scrie cod - editor vizual. Nu este nevoie să scrieți nimic aici - puteți pur și simplu să mutați blocurile și să adăugați algoritmul dorit din ele. Programul va fi descărcat pe placa conectată cu un singur clic de mouse!

În general, totul pare destul de clar, nu? Rămâne să aflăm detaliile.

Pornire rapidă cu Arduino

Pentru început, să înțelegem ce și ce vom face. Ce este Arduino și cum se folosește? Dacă sunteți deja familiarizat cu subiectul, nu ezitați să treceți mai departe. Dacă nu, haideți să facem o scurtă scufundare împreună.

Arduino este...

Arduino nu este o marcă sau numele unui furnizor de kit. Acesta este un nume comun pentru o întreagă familie de tehnologii diferite și o platformă deschisă, care include atât dispozitive hardware (plăci de control și echipamente compatibile), și software conceput pentru a controla hardware-ul. În esență, Arduino este o infrastructură și un mediu în care puteți asambla componente electronice și mecanice compatibile într-un singur dispozitiv și apoi puteți programa comportamentul acestor piese de fier în două minute printr-un computer obișnuit, după cum avem nevoie.

Arduino este o punte de la lumea computerelor virtuale la lumea lucrurilor și dispozitivelor reale. Prin scrierea unui program pentru computer obișnuit, gestionăm cu ajutorul lui nu obiecte virtuale, ci senzori, motoare, ecrane destul de reali. Schimbăm lumea din jurul nostru - pur și simplu programând pe un computer, folosind software gratuitși multe exemple gata făcute de biblioteci.

Tehnologia și-a primit numele, așa cum se întâmplă adesea, din întâmplare. Sursa de inspirație a fost un bar în care viitorilor creatori ai Arduino le plăcea să bea o ceașcă de ceai. Instituția a fost numită așa - Arduino, după numele principalului personaj istoric al orașului Ivrea, regele Arduino. Regele nu a lăsat nicio urmă strălucitoare în istorie și a fost cunoscut ca un învins, dar datorită echipei de dezvoltare a noii platforme, a câștigat o nouă popularitate și este acum cunoscut de milioane de oameni de pe tot globul.

De ce Arduino?

Frumusețea Arduino constă în următoarele avantaje simple:

  1. Simplitate. Da, da - este simplitate (deși Lego și alte jucării sunt, fără îndoială, mai familiare, dar nu comparăm cu ele). Pentru tinerii dezvoltatori de electronice, Arduino „ascunde” un număr mare de probleme tehnice diverse. Multe proiecte destul de complexe pot fi create foarte rapid, fără o scufundare lungă în detalii. Și acest lucru este foarte important pentru un copil - să nu-și piardă interesul până la primul rezultat obținut de către sine.
  2. Popularitate. Arduino este extrem de popular, puteți găsi cu ușurință răspunsuri la orice întrebări pe numeroase forumuri sau site-uri. Comunitatea Arduino este vastă și prietenoasă - sunt relativ puțini ingineri snobi care s-au călit de viață și sunt plini de amatori și începători care își împărtășesc bucuroși bucuria de ceea ce au găsit și recunoscut. Acest lucru, desigur, lasă o amprentă asupra calității sfatului, dar, de regulă, chiar și cele mai complexe probleme pot fi rezolvate rapid folosind forumuri și site-uri web.
  3. Disponibilitate. Atât tehnologia în sine, cât și aproape toate programele sunt lansate sub licențe deschise și puteți utiliza liber dezvoltările, schemele altor persoane și, în multe cazuri, chiar și pentru uz comercial. Acest lucru economisește mult timp și vă permite să vă mișcați în pași mari, bazându-vă pe experiența cercetătorilor anteriori.
  4. Ieftinătate. Un kit pentru primele lecții de electronică și programare poate fi cumpărat pentru mai puțin de 500 de ruble. Cursurile complete de robotică sunt posibile la. Nicio altă tehnologie nu vă va permite să intrați în lumea roboticii educaționale adevărate atât de rapid și atât de eficient.

Unde sa încep?

Dacă doriți să faceți robotică folosind Arduino, atunci veți avea nevoie de un astfel de kit gentleman:

  1. cu cablu USB pentru conectarea la un computer.
  2. si fire.
  3. Set de bază componente electroniceși un adaptor pentru o baterie de tip krone.
  4. Mediu instalat pe computer

Toate echipamentele sunt vândute în seturi numite kituri de pornire -

În viitor, dacă clasele cu adevărat captivează și există dorința de a continua experimentele, atunci lista de echipamente se va extinde:

  1. Ecrane și indicatoare.
  2. Motoare și , relee și .
  3. Module de comunicare.
  4. Diverse module suplimentareși (scuturi)

Dacă primii pași dau un rezultat, în timp vei recunoaște jumătate dintre oamenii care stau la coadă la poștă (dacă încă nu îi cunoști), iar poștașii te vor recunoaște din vedere și vor alerga nervoși spre cealaltă parte a drumului.

Cum să cumpăr Arduino?

Înainte de a învăța ceva util, mai întâi trebuie să cumperi ceva util. Pentru experimente cu electronice, veți avea nevoie de aceeași electronică sub formă de designer sau plăci separate. Este recomandat să cumpărați un kit casnic nu foarte scump cu componentele principale și apoi să comandați senzori, motoare, controlere și alte comori de la Aliexpress. poate fi găsit pe Internet (nu doar pe site-ul nostru). Dacă locuiți într-un oraș mare, atunci cumpărarea a tot ce aveți nevoie va dura maximum două zile. Găsirea magazinului potrivit este ușor pe internet.

Câteva cuvinte despre Astăzi, orice producător le poate produce în condiții complet legale: atât mari, precum Intel, cât și mici furnizori noname din China. Fiabilitatea și comoditatea plăcilor Arduino „chineze” și „oficiale” sunt aceleași în majoritatea cazurilor. Prin urmare, nu este nevoie să plătiți în exces - pentru proiectele dvs. educaționale, puteți cumpăra în siguranță analogi care sunt ușor de găsit pe internet.

Cum să distingem „original” de „placă compatibilă”:

  1. Plăcile „chineze” nu au dreptul să pună sigla Arduino.
  2. Plăcile „chinezești” sunt mult mai ieftine.
  3. „Chinezul” folosește adesea un alt cip pentru a menține o conexiune cu un computer care are nevoie șoferi speciali. Driverele se instalează într-o secundă și aproape niciodată nu provoacă probleme.

Subliniem încă o dată că utilizarea plăcilor neoriginale este complet legală. Arduino este o arhitectură deschisă, iar dezvoltatorii fac posibil ca toată lumea să-și asambla propria versiune a plăcii.

Nicio oportunitate de a cumpăra?

Dacă locuiți în Antarctica sau chiar nu aveți destui bani nici măcar pentru cele mai simple kituri, atunci nu disperați - puteți începe să învățați Arduino pe simulatoare virtuale. Cea mai puternică, simplă și populară opțiune de astăzi este serviciu online Tinkercad de la cunoscuta companie Autodesk. Veți putea crea circuite electronice, conectând o mare varietate de componente, apoi „porniți” alimentarea și măsurați toți indicatorii electrici. Biblioteca dispozitivului are o placă Arduino și chiar și un editor încorporat pentru programare (inclusiv unul vizual!). Puteți găsi un articol separat pe site-ul nostru

12 02.2017

În acest articol vă voi povesti despre ceva fără de care cunoașterea celei mai interesante lumi a programării folosind platforme hardware ar fi incompletă și anume despre designerul electronic Arduino, care va fi un excelent asistent în învățare. tehnologia calculatoarelorși automatizarea diferitelor procese. Desigur, acest lucru poate fi predat pur teoretic, dar atunci când utilizați un instrument precum Arduino, primii pași în stăpânirea programării și configurarea roboticii vor fi chiar mai ușori decât cu auto-studiu cu ajutorul materialelor improvizate şi al literaturii de specialitate.

Din acest articol veți învăța:

O zi bună tuturor iubitorilor de tehnologie! Gridin Semyon este cu tine. Astăzi ne vom uita la ce echipamente vom folosi pentru a începe programarea celor mai comune plăci.

Arduino - ce esti?

Cu siguranță cititorii noștri mai în vârstă își amintesc că odată în URSS au fost produse diverse truse de dezvoltare pentru copii. Acestea includ un set de un tânăr chimist, biolog, radioamator ... Ultima variație a fost deosebit de interesantă pentru cei care aveau o slăbiciune pentru tehnologie și design independent de diverse lucruri.

Timpul a trecut, au apărut o mulțime de tehnologii și astfel de lucruri nu numai că au fost îmbunătățite, ci au devenit și accesibile oricui. Domeniul de aplicare al fanteziei de astăzi nu se limitează la cadrele software, iar Arduino este un exemplu viu în acest sens.

Kit-ul Arduino este o platformă electronică de dimensiunea unei cutii de chibrituri. La această platformă pot fi conectate diverse module - motoare, becuri, senzori, într-un cuvânt, tot ce este alimentat de electricitate și poate fi conectat la microcircuit într-un fel sau altul.

Cine este pentru?

Cine are nevoie de un Arduino?

  • Copii și adolescenți interesați de robotică;
  • Studenți ai universităților și colegiilor tehnice de specialitate;
  • Profesioniști care doresc să-și amintească vechile abilități;
  • Profesorii să-și învețe elevii;
  • Toți oamenii cunoscători de tehnologie care vor să se distreze.

Invata programarea, aplicand imediat cunostintele dobandite in practica; scrie un proiect de absolvire; crea sistem inteligent pentru locuință, care vă va permite să controlați de la distanță aparatele și iluminatul; proiectarea unui robot este departe de a fi lista plina posibilitățile oferite de Arduino. Sunt cu adevărat nelimitate și totul este limitat doar de imaginația ta! În același timp, sistemul este accesibil chiar și pentru începători datorită comunității largi și a prezenței multor lecții Arduino pe Web, inclusiv în limba rusă.

Prima intalnire. Configurarea unui computer

Înainte de a vă ocupa de problema conectării dispozitivului la un computer, ar trebui să studiați întrebarea despre care Arduino este mai bine să cumpărați, deoarece există multe versiuni ale acestui constructor pentru tociști. Cel mai popular și în același timp, care costă aproximativ 25-30 USD. Cu toate acestea, există și versiuni mai scumpe, avansate, care pot interacționa cu smartphone-urile pornite Bazat pe Android, dispozitive pe Linux, cu un număr crescut de porturi, hardware mai puternic, care sunt mai potrivite pentru utilizatorii care au deja experiență în această problemă. Pentru noi, varianta Uno sau similară cu aceasta (de exemplu, Leonardo) este mai potrivită. Nu vă lăsați intimidați de 32 de kilobytes de memorie și de un procesor cu o frecvență de doar 16 megaherți - asta este mai mult decât suficient pentru prima cercetare!

Pentru a programa platforma și a vedea toate acțiunile specificate pe afișaj, se folosește unul dintre cele mai comune limbaje de programare, C++. Lucrul cu acesta se realizează folosind shell-ul oficial Arduino IDE, este absolut gratuit pentru uz non-comercial. Există și alte opțiuni, mai complexe și mai sofisticate, dar este mai bine să începeți cu opțiunea recomandată de dezvoltator.

Conectarea și încărcarea în memoria programelor se realizează prin portul USB. Modulele pot fi conectate în mai multe moduri - inclusiv utilizarea unei plăci speciale, jumperi, fire ... Nu este necesară utilizarea unui fier de lipit. Puteți conecta aproape orice - orice gadget poate deveni o parte cu drepturi depline a designului dvs.! În același timp, puteți crea și „sandvișuri” multistrat din așa-numitele plăci suplimentare care extind capacitățile microcircuitului principal. Principalul lucru este procesul de bază din inima lui Uno, restul servește doar la obținere caracteristici suplimentare. De exemplu, ar putea fi conectarea la Internet sau conducerea unui motor puternic.

Folosind un IDE

Cele scrise pentru platforma Arduino se numesc schițe. Puteți crea o schiță folosind mediul de dezvoltare integrat, pe scurt - IDE (versiunea oficială se numește așa). Cu driverele și acest mediu instalat, puteți face primul pas.

IDE-ul vă oferă schițe simple deja scrise. Deschideți unul dintre ele și selectați-vă Arduino din lista de plăci, apoi încărcați schița pe dispozitiv folosind comanda Încărcare. Toate acestea se fac foarte simplu - interfața mediului de dezvoltare este grafică, este intuitivă.

De asemenea, pe Web există un număr mare de schițe gata făcute. De exemplu, pe Wikipedia într-un articol despre Arduino, puteți găsi un exemplu gata făcut de program care setează clipirea unui LED. Pe resurse specializate, veți găsi algoritmi incredibil de complecși care fac din Arduino un adevărat robot. Este nevoie de ceva timp și perseverență pentru a învăța cum să le scrieți, dar le puteți învăța de la bun început pentru a înțelege cât mai multe principii de programare a platformei. Dacă vrei să scrii un program elementar și nu știi cum, atunci .

Cu stimă, Gridin Semyon

Învățarea microcontrolerelor pare a fi ceva complicat și de neînțeles? Înainte de apariția lui Arudino, nu era chiar ușor și necesita un anumit set de programatori și alte echipamente.

Acesta este un fel de designer electronic. Scopul inițial al proiectului este de a permite oamenilor să învețe cu ușurință cum să programeze dispozitivele electronice, alocând în același timp un timp minim părții electronice.

Asamblarea celor mai complexe circuite și conectarea plăcilor se poate realiza fără fier de lipit, dar cu ajutorul unor jumperi cu conexiuni masculine și feminine detașabile. În acest fel, pot fi conectate atât atașamente, cât și plăci de expansiune, care în lexiconul arduinoschikov sunt numite pur și simplu „Shields” (scut).

Care este prima placă Arduino cumpărată ca începător?

Este luată în considerare placa de bază și cea mai populară. Această placă are dimensiunea Card de credit. Destul de mare. Majoritatea scuturilor care sunt la vânzare se potrivesc perfect cu el. Pe placă există prize pentru conectarea dispozitivelor externe.

În magazinele autohtone pentru 2017, prețul său este de aproximativ 4-5 dolari. Pe modelele moderne, inima sa este Atmega328.

Imaginea plăcii Arduino și decodarea funcțiilor fiecărui pin, pinout Arduino UNO

Microcontrolerul de pe această placă este un cip lung într-un pachet DIP28, ceea ce înseamnă că are 28 de pini.

Următoarea placă cea mai populară costă de aproape două ori mai ieftin decât cea anterioară - 2-3 dolari. Aceasta este o taxă. Plăcile actuale sunt construite pe același Atmega328, sunt similare funcțional cu UNO, diferențele sunt în dimensiune și soluție de potrivire USB, mai multe despre asta mai târziu. O altă diferență este că sunt prevăzute mufe sub formă de ace pentru conectarea dispozitivelor la placă.

Numărul de pini (picioare) acestei plăci este același, dar puteți vedea că microcontrolerul este realizat într-un pachet mai compact TQFP32, ADC6 și ADC7 sunt adăugate la pachet, celelalte două picioare „extra” dublează magistrala de alimentare. . Dimensiunile sale sunt destul de compacte - cam de dimensiunea degetului mare.

A treia placă cea mai populară este că nu are port USB iar pentru conectarea la un computer, vă voi spune cum se face conexiunea puțin mai târziu.

Aceasta este cea mai mică placă dintre toate cele revizuite, altfel este similară cu cele două precedente, iar inima sa este încă Atmega328. Nu vom lua în considerare alte plăci, deoarece acesta este un articol pentru începători, iar compararea plăcilor este un subiect pentru un articol separat.

În partea de sus, schema de conectare USB-UART, pinul „GRN” este conectat la circuitul de resetare al microcontrolerului, poate fi numit diferit, veți afla de ce este necesar mai târziu.

Dacă UNO este convenabil pentru breadboarding, atunci Nano și Pro Mini convenabil pentru versiuni finale proiectul tău pentru că ocupă puțin spațiu.

Cum se conectează Arduino la computer?

Arduino Uno și Nano sunt conectate la computer prin USB. În același timp, nu există suport hardware pentru portul USB; aici este utilizată o soluție de circuit de conversie a nivelului, numită de obicei USB-to-Serial sau USB-UART (rs-232). În același timp, un bootloader special Arduino este introdus în microcontroler, ceea ce vă permite să treceți prin aceste autobuze.

Arduino Uno implementează această conexiune pe un microcontroler cu suport USB - ATmega16U2 (AT16U2). Se pare că este necesar un microcontroler suplimentar pe placă pentru a flash microcontrolerul principal.

În Arduino Nano, acest lucru este implementat de cipul FT232R sau omologul său CH340. Acesta nu este un microcontroler - este un convertor de nivel, acest fapt facilitează construirea unui Arduino Nano de la zero cu propriile mâini.

De obicei, driverele sunt instalate automat atunci când conectați placa Arduino. Totuși, când am cumpărat copie chineză Arduino Nano, dispozitivul a fost recunoscut, dar nu a funcționat, pe convertor a fost lipit un autocolant rotund cu date despre data lansării, nu știu dacă asta a fost făcut intenționat, dar când l-am dezlipit, am văzut marcajul CH340.

Înainte de asta, nu am întâlnit asta și m-am gândit că toate convertoarele USB-UART au fost asamblate pe FT232, a trebuit să descarc driverele, sunt foarte ușor de găsit la cerere „Drifere Arduino ch340”. După o instalare simplă - totul a funcționat!

Microcontrolerul poate fi alimentat și prin același port USB, adică daca il conectezi la adaptor de la telefon mobil- sistemul dumneavoastră va funcționa.

Ce ar trebui să fac dacă nu există USB pe placa mea?

A plati Arduino Pro Mini are dimensiuni mai mici. Acest lucru a fost realizat prin eliminarea conectorului USB pentru firmware și același convertor USB-UART. Prin urmare, trebuie achiziționat separat. Cel mai simplu convertor de pe CH340 (cel mai ieftin), CPL2102 și FT232R, se vinde cu 1 USD.

Când cumpărați, fiți atenți la ce tensiune este proiectat acest adaptor. Pro mini vine în versiuni de 3,3 și 5 V, există adesea un jumper pe convertoare pentru a comuta tensiunea de alimentare.

La Firmware Pro Mini, chiar înainte de a începe, trebuie să apăsați RESET, dar acest lucru nu este necesar la convertoarele cu DTR, schema de conectare este în figura de mai jos.

Acestea sunt unite cu terminale speciale „Mama-Mama” (femeie-femeie).

De fapt, toate conexiunile se pot face folosind astfel de terminale (Dupont), ambele sunt pe ambele părți cu prize și cu mufe, iar pe o parte există o priză, iar pe cealaltă o mufă.

Cum se scriu programe pentru Arduino?

Pentru a lucra cu schițe (numele firmware-ului în limba arduino), există un mediu integrat special pentru dezvoltarea IDE-ului Arduino, îl puteți descărca gratuit de pe site-ul oficial sau din orice resursă tematică, de obicei există fara probleme cu instalarea.

Așa arată interfața programului. Puteți scrie programe într-un limbaj C AVR simplificat dezvoltat special pentru Arduino, de fapt este un set de biblioteci numit Wiring, precum și în C AVR pur. A cărui utilizare facilitează codul și îi accelerează activitatea.

În partea de sus a ferestrei există un meniu familiar unde puteți deschide un fișier, setări, selectați placa cu care lucrați (Uno, Nano și multe, multe altele) și, de asemenea, deschide proiecte cu exemple de cod gata făcute. Mai jos este un set de butoane pentru lucrul cu firmware-ul, veți vedea alocarea tastelor în figura de mai jos.

În partea inferioară a ferestrei există o zonă pentru afișarea informațiilor despre proiect, despre starea codului, firmware și prezența erorilor.

Bazele programării în IDE-ul Arduino

La începutul codului, trebuie să declarați variabile și să conectați biblioteci suplimentare, dacă există, acest lucru se face după cum urmează:

#include biblioteka.h; // include biblioteca numită „Biblioteka.h”

#define variabila 1234; // Declara o variabilă cu valoarea 1234

Comanda Define permite compilatorului să aleagă tipul de variabilă în sine, dar o puteți seta manual, de exemplu, un întreg int sau un float în virgulă mobilă.

int led = 13; // a creat o variabilă „led” și i-a atribuit valoarea „13”

Programul poate determina starea pinului ca 1 sau 0. 1 este o unitate logică, dacă pinul 13 este 1, atunci tensiunea de pe piciorul său fizic va fi egală cu tensiunea de alimentare a microcontrolerului (pentru arduino UNO și Nano - 5 V )

Înregistrare semnal digital se face cu comanda digitalWrite(pin, value), de exemplu:

digitalWrite(led, high); //unitatea de înregistrare în pinul 13 (am declarat-o mai sus) log. Unități.

După cum ați înțeles, apelul la porturi merge după numerotarea de pe tablă, numărul corespunzător. Iată un exemplu similar cu codul anterior:

digitalWrite(13, mare); // setați pinul 13 la unu

O funcție de întârziere frecvent solicitată este apelată cu comanda delay(), a cărei valoare este dată în milisecunde, microsecundele sunt atinse cu

delayMicroseconds() Delay(1000); //microcontrolerul va aștepta 1000 ms (1 secundă)

Setările portului pentru intrare și ieșire sunt setate în funcția void setup(), cu comanda:

pinMode(NOMERPORTA, OUTPUT/INPUT); // argumente - numele variabilei sau numărul portului, intrare sau ieșire din care să alegeți

Înțelegerea primului program Blink

Ca un fel de „Bună ziua, lume” pentru microcontrolere, există un program pentru a clipi un LED, să ne uităm la codul acestuia:

La început, cu comanda pinMode, i-am spus microcontrolerului să atribuie portul cu LED-ul la ieșire. Ați observat deja că codul nu declară variabila „LED_BUILTIN”, fapt este că în plăcile Uno, Nano și alte plăci din fabrică, un LED încorporat este conectat la pinul 13 și este lipit pe placă. Poate fi folosit de dvs. pentru indicare în proiectele dvs. sau pentru testarea simplă a programelor dvs. flasher.

Apoi, setăm pinul la care este lipit LED-ul la unul (5 V), următoarea linie face ca MK să aștepte 1 secundă, apoi setează pinul LED_BUILTIN la zero, așteaptă o secundă și programul se repetă într-un cerc, deci când LED_BUILTIN este 1 - LED (și orice altă sarcină conectată la port) este activat, când este setat la 0 este dezactivat.

Citiți valoarea de la portul analog și utilizați datele citite

Microcontrolerul AVR Atmega328 are un convertor analog-digital de 10 biți încorporat. Un ADC de 10 biți vă permite să citiți valoarea tensiunii de la 0 la 5 volți, în pași de 1/1024 din întreaga amplitudine a semnalului (5 V).

Pentru a fi mai clar, luați în considerare situația, să presupunem că valoarea tensiunii la intrarea analogică este de 2,5 V, ceea ce înseamnă că microcontrolerul va citi valoarea de la pinul "512" dacă tensiunea este 0 - "0", și dacă 5 V. - (1023). 1023 - deoarece numaratoarea incepe de la 0, i.e. 0, 1, 2, 3 etc. până la 1023 - 1024 de valori în total.

Iată cum arată în cod, folosind schița standard „analogInput” ca exemplu.

int sensorPin = A0;

int ledPin = 13;

int sensorValue = 0;

pinMode(ledPin, OUTPUT);

sensorValue = analogRead(sensorPin);

digitalWrite(ledPin, HIGH);

întârziere (sensorValue);

digitalWrite(ledPin, LOW);

întârziere (sensorValue);

Declarăm variabile:

    Ledpin - atribuiți independent un pin cu un LED încorporat la ieșire și dați un nume individual;

    sensorPin - intrare analogică, setată conform marcajului de pe placă: A0, A1, A2 etc.;

    sensorValue - o variabilă pentru a stoca valoarea întregului citit și pentru a lucra în continuare cu aceasta.

Codul funcționează astfel: sensorValue salvează valoarea analogică citită din sensorPin (comanda analogRead). - aici lucrează cu semnal analog se termină, atunci totul este ca în exemplul anterior.

Scriem o unitate pe ledPin, LED-ul se aprinde și așteptăm un timp egal cu valoarea sensorValue, adică. 0 până la 1023 milisecunde. Oprim LED-ul și așteptăm din nou această perioadă de timp, după care codul se repetă.

Astfel, prin poziția potențiometrului, setăm frecvența de clipire a LED-ului.

funcția hartă pentru Arudino

Nu toate funcțiile pentru actuatoare (nu știu de niciuna) acceptă „1023” ca argument, de exemplu, servo-ul este limitat de unghiul de rotație, adică pentru o jumătate de tură (180 de grade) (jumătate de tură) a servomotorului , argumentul maxim al funcției este „180”

Acum despre sintaxă: hartă (valoarea pe care o traducem, valoarea minimă a intrării, valoarea maximă a intrării, ieșirea minimă, valoarea maximă a ieșirii).

În cod arată așa:

(hartă(analogRead(pot), 0, 1023, 0, 180));

Citim valoarea de la potențiometru (analogRead (pot)) de la 0 la 1023, iar la ieșire obținem numere de la 0 la 180

Valorile hărții mărimii:

În practică, aplicăm acest lucru codului aceluiași servo, aruncați o privire la codul din Arduino IDE, dacă citiți cu atenție secțiunile anterioare, atunci nu necesită explicații.

Și o diagramă de cablare.

Arduino este un instrument foarte util pentru a învăța cum să lucrezi cu microcontrolere. Și dacă utilizați pur C AVR, sau așa cum se numește uneori "Pure C" - veți reduce semnificativ greutatea codului și se va potrivi mai mult în memoria microcontrolerului, ca urmare veți obține un excelent fabricat din fabrică. placă de depanare cu capacitatea de a flash prin USB.

Îmi place arduino. Este păcat că mulți programatori experimentați de microcontrolere o mustră fără niciun motiv că este prea simplificată. În principiu, doar limbajul este simplificat, dar nu te obligă nimeni să-l folosești, plus că poți să flashi microcontrolerul prin conectorul ICSP și să încarci acolo codul dorit, fără bootloader de care nu ai nevoie.

Pentru cei care vor să se joace cu electronica, ca designer avansat, va fi perfect, iar pentru programatorii experimentați, ca placă care nu necesită asamblare, va fi și utilă!

Mai multe informații despre Arduino și caracteristicile utilizării acestuia în diverse scheme vezi in e-carte - .

Arduino este foarte popular printre toți pasionații de bricolaj. Ar trebui prezentat lor și celor care nu au auzit niciodată de el.

Ce este un Arduino?

Cum poți descrie pe scurt Arduino? Cele mai bune cuvinte ar fi: Arduino este un instrument cu ajutorul căruia poți crea diverse dispozitive electronice. De fapt, aceasta este o adevărată platformă de calcul hardware pentru utilizare universală. Poate fi folosit pentru a construi circuite simpleși pentru implementarea unor proiecte destul de complexe.

Constructorul se bazează pe hardware-ul său, care este o placă I/O. Placa este programată folosind limbaje bazate pe C/C++. Au fost denumite, respectiv, Procesare/Cablare. Din grupa C, au moștenit simplitatea extremă, datorită căreia sunt stăpâniți foarte repede de orice persoană, iar aplicarea cunoștințelor în practică nu este o problemă destul de semnificativă. Pentru a vă face o idee despre cât de ușor este să lucrați, se spune adesea că Arduino este pentru vrăjitorii începători. Chiar și copiii pot face față plăcilor Arduino.

Ce se poate colecta pe el?

Utilizarea Arduino este destul de diversă, putând fi folosit atât pentru cele mai simple exemple care vor fi recomandate la sfârșitul articolului, cât și pentru mecanisme destul de complexe, inclusiv manipulatoare, roboți sau mașini de producție. Unii mesteri reusesc sa realizeze tablete, telefoane, sisteme de supraveghere si securitate a locuintei, sisteme bazate pe astfel de sisteme. casă inteligentă sau doar computere. Proiectele Arduino pentru începători, cu care poate începe chiar și cineva fără experiență, sunt la sfârșitul articolului. Ele pot fi chiar folosite pentru a crea sisteme primitive realitate virtuala. Totul datorită hardware-ului destul de versatil și posibilităților pe care le oferă programarea Arduino.

De unde să cumpăr componente?

Componentele fabricate în Italia sunt considerate originale. Dar prețul unor astfel de truse nu este mic. Prin urmare, o serie de companii sau chiar persoane individuale Dispozitivele și componentele compatibile cu Arduino sunt realizate prin metoda artizanală, care sunt numite în glumă clone de producție. La cumpărarea unor astfel de clone, este imposibil să spunem cu certitudine că vor funcționa, dar dorința de a economisi bani își face taxă.

Componentele pot fi achiziționate fie ca parte a truselor, fie separat. Există chiar și kituri pregătite în prealabil pentru a asambla mașini, elicoptere tipuri variate controale sau nave. Un set ca cel din imaginea de mai sus, fabricat în China, va costa 49 USD.

Mai multe despre hardware

Placa Arduino este un microcontroler AVR simplu care a fost flashat cu un bootloader și are portul USB-UART minim necesar. Mai sunt componente importante, dar în limitele articolului va fi mai bine să ne oprim doar pe aceste două componente.

În primul rând, despre microcontroler, un mecanism construit pe un singur circuit, în care se află programul dezvoltat. Programul poate fi influențat prin apăsarea butoanelor, primirea semnalelor de la componentele creației (rezistoare, tranzistori, senzori etc.), etc. Mai mult, senzorii pot fi foarte diferiți în scopul lor: iluminare, accelerație, temperatură, distanță, presiune, obstacole etc. Ca dispozitive de afișare, pot fi utilizate piese simple, de la LED-uri și tweetere până la dispozitive complexe, cum ar fi afișajele grafice. Deoarece sunt luate în considerare motoarele, supapele, releele, servomotoarele, electromagneții și multe altele, care sunt listate de foarte, foarte mult timp. Cu ceva din aceste liste, MK funcționează direct, folosind fire de conectare. Unele mecanisme necesită adaptoare. Dar dacă începi să proiectezi, îți va fi greu să te desprinzi. Acum să vorbim despre programarea Arduino.

Aflați mai multe despre procesul de programare a plăcii

Un program care este deja gata să funcționeze pe un microcontroler se numește firmware. Pot exista atât un singur proiect, cât și proiecte Arduino, așa că ar fi de dorit să stocați fiecare firmware într-un folder separat pentru a accelera procesul de găsire. fișierele dorite. Este cusut pe cristalul MK prin intermediul unor dispozitive specializate: programatori. Și aici „Arduino” are un avantaj - nu are nevoie de un programator. Totul este făcut pentru ca programarea Arduino pentru începători să nu fie dificilă. Codul scris poate fi descărcat pe MK printr-un cablu USB. Acest avantaj este obținut nu de un programator deja construit în avans, ci de un firmware special - un bootloader. Bootloader-ul este un program special care rulează imediat după conectare și ascultă pentru a vedea dacă există comenzi, dacă să flasheți cipul, dacă există proiecte Arduino sau nu. Există câteva avantaje foarte atractive ale utilizării unui bootloader:

  1. Folosind un singur canal de comunicare, care nu necesită costuri suplimentare de timp. Deci, proiectele Arduino nu necesită să conectați multe fire diferite și a existat confuzie atunci când le utilizați. Pentru munca de succes Un cablu USB este suficient.
  2. Protecție împotriva mâinilor strâmbe. Aducerea microcontrolerului la starea unei cărămizi folosind firmware-ul direct este destul de ușoară, nu trebuie să forțați prea mult. Când lucrați cu un bootloader, nu puteți ajunge la setări potențial periculoase (cu ajutorul unui program de dezvoltare, desigur, altfel puteți sparge totul). Prin urmare, Arduino pentru începători este destinat nu numai din punctul de vedere că este ușor de înțeles și convenabil, ci vă va permite și să evitați cheltuielile financiare nedorite asociate cu lipsa de experiență a persoanei care lucrează cu ei.

Proiecte de început

Când ați achiziționat un kit, un fier de lipit, colofoniu și lipit, nu ar trebui să sculptați imediat structuri foarte complexe. Desigur, îi puteți orbi, dar șansa de succes în Arduino pentru începători este destul de mică pentru proiectele complexe. Pentru antrenament și „umplut” mâinile, puteți încerca să implementați câteva idei mai simple care vă vor ajuta să vă ocupați de interacțiunea și funcționarea Arduino. Ca atare primii pași în lucrul cu Arduino pentru începători, vă putem sfătui să luați în considerare:

  1. Creați unul care să funcționeze datorită „Arduino”.
  2. Conectarea unui buton separat la Arduino. În acest caz, este posibil ca butonul să controleze strălucirea LED-ului din punctul nr. 1.
  3. Conexiune potențiometru.
  4. Control servo.
  5. Conectare și funcționare cu LED tricolor.
  6. Conectarea elementului piezoelectric.
  7. Conexiune fotorezistor.
  8. Conectarea unui senzor de mișcare și semnale despre funcționarea acestuia.
  9. Conectarea unui senzor de umiditate sau temperatură.

Proiecte pentru viitor

Este puțin probabil să fiți interesat de „Arduino” pentru a conecta LED-uri individuale. Cel mai probabil, ești atras de oportunitatea de a-ți crea propria mașină sau o placă turnantă zburătoare. Aceste proiecte sunt dificil de implementat și necesită mult timp și perseverență, dar odată ce le vei finaliza, vei obține ceea ce îți dorești: experiență valoroasă de proiectare Arduino pentru începători.

O zi bună, Habr. Încep o serie de articole care vă vor ajuta să vă familiarizați cu Arduino. Dar asta nu înseamnă că, dacă nu ești nou în această afacere, nu vei găsi nimic interesant pentru tine.

Introducere

Ar fi frumos să începem prin a cunoaște Arduino. Arduino - instrumente hardware și software pentru automatizarea clădirilor și sistemele robotice. Principalul avantaj este că platforma este destinată utilizatorilor neprofesioniști. Adică, oricine își poate crea propriul robot, indiferent de cunoștințele de programare și de propriile abilități.

start

Crearea unui proiect pe Arduino constă din 3 etape principale: scrierea codului, prototiparea (prototiparea) și firmware-ul. Pentru a scrie cod și apoi a flash-o pe placă, avem nevoie de un mediu de dezvoltare. De fapt, există destul de multe dintre ele, dar vom programa în mediul original - IDE-ul Arduino. Vom scrie codul în sine în C++, adaptat pentru Arduino. Puteți descărca de pe site-ul oficial. Sketch (schiță) - un program scris pe Arduino. Să ne uităm la structura codului:


main()( void setup()( ) void loop()( ) )

Este important de reținut că funcția main() obligatorie în C++ este creată de Arduino însuși. Și rezultatul a ceea ce vede programatorul este:


void setup()( ) void loop()( )

Să ne ocupăm de două funcții obligatorii. Funcția setup() este apelată o singură dată la începutul microcontrolerului. Ea expune totul setări de bază. Funcția loop() este ciclică. Este apelat într-o buclă nesfârșită pe tot parcursul timpului în care microcontrolerul funcționează.

Primul program

Pentru a înțelege mai bine cum funcționează platforma, să scriem primul program. Acest cel mai simplu program(clipi) O vom face în două versiuni. Diferența dintre ele este doar în asamblare.


int Led = 13; // declară variabila Led pe pinul 13 (ieșire) void setup()( pinMode(Led, OUTPUT); // definește variabila) void loop()( digitalWrite(Led, HIGH); // aplică tensiune la pin 13 delay(1000) ); // așteptați 1 secundă digitalWrite (Led, LOW); // nu aplicați tensiune la întârzierea pinului 13 (1000); // așteptați 1 secundă)

Principiul de funcționare al acestui program este destul de simplu: LED-ul se aprinde timp de 1 secundă și se stinge timp de 1 secundă. Pentru prima opțiune, nu trebuie să asamblam aspectul. Deoarece în platforma Arduino, un LED încorporat este conectat la pinul 13.

Firmware Arduino

Pentru a încărca schița pe Arduino, trebuie mai întâi să o salvăm pur și simplu. În continuare, pentru a evita problemele la încărcare, trebuie să verificați setările programatorului. Pentru a face acest lucru, selectați fila „Instrumente” din panoul de sus. În secțiunea Taxă, selectați taxa dvs. Poate fi Arduino Uno, Arduino Nano, Arduino Mega, Arduino Leonardo sau altele. Tot în secțiunea „Port”, trebuie să vă selectați portul de conectare (portul la care v-ați conectat platforma). După acești pași, puteți încărca schița. Pentru a face acest lucru, faceți clic pe săgeată sau în fila „Schiță”, selectați „Descărcare” (puteți folosi și comanda rapidă de la tastatură „Ctrl + U”). Firmware-ul plăcii finalizat cu succes.

Prototiparea/Prototiparea

Pentru a asambla layout-ul, avem nevoie de următoarele elemente: LED, rezistor, cablare (jumpers), breadboard (Breadboard). Pentru a nu arde nimic și pentru ca totul să funcționeze cu succes, trebuie să te ocupi de LED-ul. Are două „labe”. Scurt - minus, lung - plus. Vom conecta „masa” (GND) si rezistorul la cel scurt (pentru a reduce curentul care merge la LED pentru a nu-l arde), iar pe cel lung il vom alimenta (conectare la pin). 13). După conectare, încărcați schița pe tablă dacă nu ați făcut-o deja. Codul rămâne același.


Acesta este sfârșitul primei părți. Multumesc pentru atentie.