Lietuvių

Atskleiskite Arduino galią! Šis vadovas apima viską nuo pagrindų iki pažangių technikų, įgalindamas novatorius visame pasaulyje.

Arduino programavimas: išsamus vadovas pasaulio novatoriams

Sveiki atvykę į jaudinantį Arduino programavimo pasaulį! Šis išsamus vadovas skirtas visų lygių asmenims, nuo pradedančiųjų, žengiančių pirmuosius žingsnius elektronikoje, iki patyrusių inžinierių, norinčių praplėsti savo įgūdžius. Mes išnagrinėsime Arduino pagrindus, gilinsimės į programavimo koncepcijas ir pateiksime praktinių pavyzdžių, kurie padės jums įgyvendinti savo kūrybines idėjas. Šis vadovas pritaikytas pasaulinei auditorijai, užtikrinant prieinamumą ir aktualumą, nepriklausomai nuo jūsų buvimo vietos ar patirties.

Kas yra Arduino?

Arduino yra atvirojo kodo elektronikos platforma, pagrįsta lengvai naudojama aparatine ir programine įranga. Ji skirta visiems, norintiems kurti interaktyvius objektus ar aplinkas. Arduino plokštės gali nuskaityti įvesties signalus – šviesą jutiklyje, piršto paspaudimą ant mygtuko ar „Twitter“ žinutę – ir paversti juos išvesties signalu – variklio aktyvavimu, šviesos diodo įjungimu, informacijos paskelbimu internete. Galite nurodyti savo plokštei, ką daryti, nusiųsdami instrukcijų rinkinį į plokštėje esantį mikrovaldiklį. Tam naudojate Arduino programavimo kalbą (pagrįstą C++) ir Arduino IDE (integruotą kūrimo aplinką), pagrįstą „Processing“.

Kodėl Arduino toks populiarus visame pasaulyje?

Arduino aplinkos paruošimas

Prieš pradedant programuoti, turėsite paruošti savo Arduino aplinką. Štai žingsnis po žingsnio vadovas:

1. Atsisiųskite Arduino IDE

Apsilankykite oficialioje Arduino svetainėje (arduino.cc) ir atsisiųskite naujausią Arduino IDE versiją, skirtą jūsų operacinei sistemai. Įsitikinkite, kad atsisiunčiate versiją, tinkamą jūsų operacinei sistemai („Windows“, „macOS“ ar „Linux“). Svetainėje pateikiamos aiškios diegimo instrukcijos kiekvienai platformai.

2. Įdiekite Arduino IDE

Vykdykite ekrane pateikiamas instrukcijas, kad įdiegtumėte Arduino IDE. Diegimo procesas yra paprastas ir paprastai apima sutikimą su licencijos sutartimi bei diegimo katalogo pasirinkimą.

3. Prijunkite savo Arduino plokštę

Prijunkite savo Arduino plokštę prie kompiuterio naudodami USB kabelį. Plokštę turėtų automatiškai atpažinti jūsų operacinė sistema. Jei ne, gali tekti įdiegti tvarkykles. Arduino svetainėje pateikiami išsamūs tvarkyklių diegimo vadovai skirtingoms operacinėms sistemoms.

4. Pasirinkite savo plokštę ir prievadą

Atidarykite Arduino IDE. Eikite į Tools > Board (Įrankiai > Plokštė) ir pasirinkite savo Arduino plokštės modelį (pvz., Arduino Uno, Arduino Nano, Arduino Mega). Tada eikite į Tools > Port (Įrankiai > Prievadas) ir pasirinkite nuoseklųjį prievadą, prie kurio prijungta jūsų Arduino plokštė. Teisingas prievado numeris priklausys nuo jūsų operacinės sistemos ir prie kompiuterio prijungtų nuosekliųjų įrenginių skaičiaus.

5. Išbandykite savo sąranką

Norėdami patikrinti, ar jūsų sąranka veikia teisingai, įkelkite paprastą eskizą, pvz., „Blink“ (Mirksėjimas), į savo Arduino plokštę. Šis pavyzdys tiesiog mirksi įmontuotu plokštės šviesos diodu. Norėdami įkelti eskizą, eikite į File > Examples > 01.Basics > Blink (Failas > Pavyzdžiai > 01.Pagrindai > Mirksėjimas). Tada spustelėkite mygtuką „Upload“ (Įkelti) (rodyklės į dešinę piktograma), kad sukompiliuotumėte ir įkeltumėte eskizą į savo plokštę. Jei šviesos diodas pradeda mirksėti, jūsų sąranka veikia teisingai!

Arduino programavimo pagrindai

Arduino programavimas pagrįstas C++ programavimo kalba. Tačiau Arduino supaprastina sintaksę ir pateikia bibliotekų rinkinį, kuris palengvina sąveiką su aparatine įranga. Panagrinėkime keletą pagrindinių programavimo koncepcijų:

1. Pagrindinė Arduino eskizo struktūra

Arduino eskizą (programą) paprastai sudaro dvi pagrindinės funkcijos:

Štai pagrindinis pavyzdys:

void setup() {
 // čia įrašykite savo sąrankos kodą, kuris bus paleistas vieną kartą:
 pinMode(13, OUTPUT);
}

void loop() {
 // čia įrašykite savo pagrindinį kodą, kuris bus vykdomas nuolat:
 digitalWrite(13, HIGH);   // įjunkite šviesos diodą (HIGH yra įtampos lygis)
 delay(1000);               // palaukite sekundę
 digitalWrite(13, LOW);    // išjunkite šviesos diodą, nustatydami žemą įtampos lygį (LOW)
 delay(1000);               // palaukite sekundę
}

Šis kodas sukonfigūruoja 13-ąjį kontaktą kaip išvestį ir po to nuolat įjungia ir išjungia prie to kontakto prijungtą šviesos diodą su 1 sekundės delsa.

2. Kintamieji ir duomenų tipai

Kintamieji naudojami duomenims saugoti jūsų programoje. Arduino palaiko įvairius duomenų tipus, įskaitant:

Pavyzdys:

int ledPin = 13;      // Apibrėžkite kontaktą, prijungtą prie šviesos diodo
int delayTime = 1000;  // Apibrėžkite delsos laiką milisekundėmis

3. Valdymo struktūros

Valdymo struktūros leidžia valdyti jūsų programos eigą. Įprastos valdymo struktūros apima:

4. Funkcijos

Funkcijos leidžia jums apgaubti pakartotinai naudojamus kodo blokus. Galite apibrėžti savo funkcijas, kad atliktumėte konkrečias užduotis.

int readSensor() {
 int sensorValue = analogRead(A0); // Nuskaitykite jutiklio reikšmę
 return sensorValue;
}

void loop() {
 int value = readSensor();    // Iškvieskite readSensor funkciją
 Serial.println(value);       // Spausdinkite jutiklio reikšmę
 delay(100);            // Palaukite 100 milisekundžių
}

5. Skaitmeninė ir analoginė įvestis/išvestis (I/O)

Arduino plokštės turi skaitmeninius ir analoginius įvesties/išvesties (I/O) kontaktus, kurie leidžia jums sąveikauti su išoriniais įrenginiais.

Pažangūs Arduino programavimo metodai

Kai gerai suprasite pagrindus, galėsite tyrinėti pažangesnius metodus:

1. Bibliotekos

Bibliotekos yra iš anksto parašyto kodo rinkiniai, kurie supaprastina įprastas užduotis. Arduino turi didžiulę bibliotekų kolekciją, skirtą viskam nuo variklių valdymo iki prisijungimo prie interneto. Galite įtraukti bibliotekas į savo eskizą naudodami direktyvą #include.

Populiarių bibliotekų pavyzdžiai:

Pavyzdys naudojant Servo biblioteką:

#include 

Servo myservo;

int potpin = A0;
int val;

void setup() {
 myservo.attach(9);
}

void loop() {
 val = analogRead(potpin);
 val = map(val, 0, 1023, 0, 180);
 myservo.write(val);
 delay(15);
}

2. Pertrauktys

Pertrauktys leidžia jums reaguoti į išorinius įvykius realiuoju laiku. Kai įvyksta pertrauktis, Arduino plokštė sustabdo dabartinį vykdymą ir pereina prie specialios funkcijos, vadinamos pertraukties aptarnavimo rutina (ISR). Baigus ISR, programa tęsia darbą nuo ten, kur buvo sustojusi.

Pertrauktys yra naudingos užduotims, reikalaujančioms neatidėliotino dėmesio, pvz., reaguojant į mygtukų paspaudimus ar aptinkant jutiklių reikšmių pokyčius.

volatile int state = LOW;

void setup() {
 pinMode(13, OUTPUT);
 pinMode(2, INPUT_PULLUP);
 attachInterrupt(digitalPinToInterrupt(2), blink, CHANGE);
}

void loop() {
 digitalWrite(13, state);
}

void blink() {
 state = !state;
}

3. Nuoseklioji komunikacija

Nuoseklioji komunikacija leidžia siųsti ir gauti duomenis tarp jūsų Arduino plokštės ir kompiuterio ar kitų įrenginių. Galite naudoti Serial objektą duomenims spausdinti į nuoseklųjį monitorių arba siųsti duomenis kitiems įrenginiams per nuoseklųjį prievadą.

Nuoseklioji komunikacija naudinga derinti kodą, rodyti jutiklių reikšmes arba valdyti Arduino plokštę iš kompiuterio.

void setup() {
 Serial.begin(9600);
}

void loop() {
 Serial.println("Sveikas, pasauli!");
 delay(1000);
}

4. Kelių failų naudojimas

Didesniems projektams dažnai naudinga padalinti kodą į kelis failus. Tai daro jūsų kodą tvarkingesnį ir lengviau prižiūrimą. Galite sukurti atskirus failus skirtingiems moduliams ar funkcijoms ir tada juos įtraukti į savo pagrindinį eskizą naudodami direktyvą #include.

Tai padeda didelių projektų organizavimui ir skaitomumui.

Arduino projektų idėjos pasaulio novatoriams

Štai keletas projektų idėjų, kurios jus įkvėps:

Ištekliai tolesniam mokymuisi

Štai keletas išteklių, padėsiančių tęsti jūsų Arduino kelionę:

Išvada

Arduino yra galingas įrankis, kurį galima naudoti kuriant platų interaktyvių projektų spektrą. Išmokę Arduino programavimo pagrindus ir ištyrę turimus išteklius, galite atskleisti savo kūrybiškumą ir įgyvendinti savo idėjas. Raginame jus eksperimentuoti, bendradarbiauti ir dalintis savo kūriniais su pasauline Arduino bendruomene. Sėkmingos kūrybos!