Biz Arduinoni sof S da dasturlashtiramiz. Arduino yangi boshlanuvchilar uchun: asta-sekin ko'rsatmalar. Arduino dasturlash va loyihalari: qaerdan boshlash kerak

Yangi boshlanuvchilar uchun Arduino dasturlash tili quyidagi jadvalda batafsil berilgan. Arduino mikrokontroleri C / C ++ asosida maxsus dasturlash tilida dasturlashtirilgan. Arduino dasturlash tili C ++ ning bir turidir, boshqacha aytganda Arduino uchun alohida dasturlash tili mavjud emas. PDF-kitobni sahifaning oxirida yuklab olishingiz mumkin.

Arduino IDE-da barcha yozilgan eskizlar C / C ++ dasturida minimal o'zgarishlar bilan tuziladi. Arduino IDE kompilyatori ushbu platforma uchun dasturlarni yozishni ancha soddalashtiradi va Arduino-da qurilmalar yaratish C / C ++ tilini yaxshi bilmaydigan odamlar uchun juda qulayroq bo'ladi. Biz Arduino tilining asosiy funktsiyalarini misollar bilan tavsiflash uchun biroz ko'proq yordam beramiz.

Arduino tilining batafsil ma'lumotnomasi

Tilni to'rtta bo'limga bo'lish mumkin: operatorlar, ma'lumotlar, funktsiyalar va kutubxonalar.

Arduino tili Misol Tavsif

Operatorlar

sozlash () bekor o'rnatish ()
{
pinMode (3, INPUT);
}
Funktsiya o'zgaruvchilarni ishga tushirish, taxtadagi pimlarning ishlash rejimlarini aniqlash va h.k. Funktsiya faqat bir marta ishlaydi, har bir mikrokontrolderni elektr ta'minotidan keyin.
pastadir () bo'sh halqa ()
{
digitalWrite (3, HIGH);
kechikish (1000);
digitalWrite (3, LOW);
kechikish (1000);
}
Dasturning hisob-kitoblarini amalga oshirishga va ularga javob berishga imkon beradigan tsikl funktsiyasi atrofida aylanadi. Setup () va loop () funktsiyalari har bir eskizda bo'lishi kerak, hatto ushbu bayonotlar dasturda ishlatilmasa ham.

Operatorlarni boshqarish

agar
agar (x\u003e
agar (x< 100) digitalWrite (3, LOW );
If operatori taqqoslash operatorlari bilan birgalikda ishlatiladi (\u003d\u003d ,! \u003d,<, >) va shartning to'g'riligini tekshiradi. Masalan, x o'zgaruvchining qiymati 100 dan katta bo'lsa, u holda 13 chiqishda LED yonadi, agar u kam bo'lsa, LED o'chadi.
agar..hatto
agar (x\u003e 100) digitalWrite (3, HIGH);
aks holda digitalWrite (3, LOW);
Else buyrug'i, bir-birini istisno qiladigan bir nechta tekshiruvlarni amalga oshirish uchun, if-da ko'rsatilganidan boshqacha tekshiruv o'tkazishga imkon beradi. Agar tekshiruvlarning hech biri TRUE natijasini olmagan bo'lsa, u holda else tarkibidagi so'zlar bloki bajariladi.
switch ... case
kalit (x)
{


3-holat: tanaffus;

}
If operatori singari, switch operatori ham har xil sharoitda bajariladigan amallarni belgilashga imkon beradigan dasturni boshqaradi. Break - bu bayonotdan chiqish buyrug'i, muqobil variant tanlanmasa, sukut bo'yicha bajariladi.
uchun bekor o'rnatish ()
{
pinMode (3, OUTPUT);
}
bo'sh halqa ()
{
uchun (int i \u003d 0; i<= 255; i++){
analogWrite (3, i);
kechikish (10);
}
}
For bandi jingalak qavs ichiga olingan gaplarni takrorlash uchun ishlatiladi. Masalan, LEDning silliq xiralashishi. For loop sarlavhasi uch qismdan iborat: for (ishga tushirish; shart; o'sish) - ishga tushirish bir marta bajariladi, so'ngra shart tekshiriladi, agar shart to'g'ri bo'lsa, unda o'sish bajariladi. Vaziyat yolg'on bo'lguncha tsikl takrorlanadi.
esa bo'sh halqa ()
{
esa (x< 10)
{
x \u003d x + 1;
Serial.println (x);
kechikish (200);
}
}
While operatori qavs ichidagi shart to'g'ri bo'lgan vaqtgacha bajariladigan tsikl sifatida ishlatiladi. Misolda while loop bayonoti qavs ichidagi kodni x 10 dan kam bo'lguncha cheksiz takrorlaydi.
qil ... esa bo'sh halqa ()
{
qil
{
x \u003d x + 1;
kechikish (100);
Serial.println (x);
}
esa (x< 10);
kechikish (900);
}
Do ... while loop operatori while sikli bilan bir xil ishlaydi. Ammo, agar qavs ichidagi ifoda to'g'ri bo'lsa, tsikl davom etadi va tsikldan chiqmaydi. Yuqoridagi misolda, 10 dan katta x uchun qo'shimcha operatsiyasi davom etadi, ammo pauza 1000 ms.
tanaffus
davom eting
kalit (x)
{
1-holat: digitalWrite (3, HIGH);
2-holat: digitalWrite (3, LOW);
3-holat: tanaffus;
4-holat: davom ettirish;
sukut bo'yicha: digitalWrite (4, HIGH);
}
Break, tugmachaning tugashini kutmasdan, tugmachani tugmachani bajarish uchun, bajarish uchun, bajarish uchun ishlatiladi.
Davom etish davomiyligi amaldagi davr bosqichida qolgan gaplarni o'tkazib yuboradi.

Sintaksis

;
(vergul)

digitalWrite (3, HIGH);
Nuqtali vergul bayonotning oxirini belgilash uchun ishlatiladi. Satr oxirida unutilgan nuqta-vergul kompilyatsiya xatosiga olib keladi.
{}
(qavs)
bekor o'rnatish ()
{
pinMode (3, INPUT);
}
Ochiq qavs "(" ortidan yopiladigan qavs "" "bilan to'ldirilishi kerak. Juftlashtirilmagan qavslar eskizni tuzishda yashirin va tushunarsiz xatolarga olib kelishi mumkin.
//
(izoh)
x \u003d 5; // sharh

Salom! Men Aleksandr Sergeevich Alikin, qo'shimcha ta'lim o'qituvchisiman, Labinskdagi Markaziy bolalar musiqa maktabida "Robotika" va "Radiotexnika" to'garaklariga rahbarlik qilaman. Men sizga "ArduBlosk" dasturi yordamida Arduino dasturining soddalashtirilgan usuli haqida qisqacha gapirib bermoqchiman.

Men ushbu dasturni o'quv jarayoniga kiritdim va natijadan mamnunman, bu bolalar orasida, ayniqsa, eng sodda dasturlarni yozishda yoki murakkab dasturlarning dastlabki bosqichini yaratishda katta talabga ega. ArduBlosk - bu grafik dasturlash muhiti, ya'ni barcha harakatlar Arduino platformasini o'rganishni ancha osonlashtiradigan rus tilidagi imzolangan harakatlar bilan chizilgan rasmlar bilan amalga oshiriladi. Ushbu dastur tufayli 2-sinfdan boshlab bolalar Arduino bilan ishlashni osonlikcha o'zlashtiradilar.

Ha, kimdir hali ham Scratch bor deb aytishi mumkin va bu Arduino dasturlash uchun juda oddiy grafik muhit. Ammo Scratch Arduino-ni o'chirmaydi, uni faqat USB kabeli orqali boshqaradi. Arduino kompyuterga bog'liq va yakka o'zi turolmaydi. O'zingizning loyihalaringizni yaratishda Arduino uchun avtonomiya asosiy narsa, ayniqsa robotik qurilmalarni yaratishda.

NXT yoki EV3 kabi taniqli LEGO robotlari ham bizning o'quvchilarimiz uchun Arduino dasturida paydo bo'lgan ArduBlossk dasturi bilan endi unchalik qiziq emas. Arduino har qanday LEGO konstruktoriga qaraganda ancha arzon va ko'plab komponentlarni eski maishiy elektronikadan olish mumkin. ArduBlosk dasturi nafaqat yangi boshlanuvchilarga, balki Arduino platformasining faol foydalanuvchilariga ham ishlashga yordam beradi.

Xo'sh, ArduBlock nima? Aytganimdek, bu grafik dasturlash muhiti. Deyarli to'liq rus tiliga tarjima qilingan. Ammo ArduBlosk-da eng muhim narsa nafaqat bu, balki biz yozgan ArduBlosk dasturi Arduino IDE kodiga aylanishi. Ushbu dastur Arduino IDE dasturlash muhitiga kiritilgan, ya'ni bu plagin.

Quyida Arduino IDE-da miltillovchi LED va o'zgartirilgan dasturning misoli keltirilgan. Dastur bilan ishlash juda oddiy va har qanday maktab o'quvchisi buni tushunishi mumkin.

Dasturda ishlash natijasida siz nafaqat Arduino dasturini amalga oshirishingiz, balki Arduino IDE ning matn formatida biz tushunmaydigan buyruqlarni o'rganishingiz mumkin, ammo agar siz standart buyruqlarni yozish uchun "juda dangasa" bo'lsangiz, tezda sichqoncha bilan ArduBlok-dagi oddiy dasturni eskizini tuzishingiz va Arduino IDE-da disk raskadrovka qilishingiz kerak. ...

ArduBlok-ni o'rnatish uchun avval Arduino IDE-ni rasmiy Arduino veb-saytidan yuklab olishingiz va o'rnatishingiz va Arduino UNO kengashi bilan ishlashda sozlamalarni aniqlab olishingiz kerak. Qanday qilib buni o'sha saytda yoki Amperka-da yoki YouTube-da tomosha qilish mumkin. Xo'sh, biz bularning barchasini aniqlaganimizda, ArduBlok-ni rasmiy saytdan yuklab olishingiz kerak, bu erda. Men so'nggi versiyalarni yuklab olishni tavsiya etmayman, chunki yangi boshlanuvchilar uchun ular juda qiyin, ammo 2013-07-12 yillardagi versiyasi juda muhimdir, bu fayl u erda eng ommabop.

Keyin, yuklab olingan faylning nomini ardublock-all va "hujjatlar" papkasida o'zgartiring. Biz quyidagi papkalarni yaratamiz: Arduino\u003e vositalari\u003e ArduBlockTool\u003e vositasi va ikkinchisida biz yuklab olingan va qayta nomlangan faylni tashlaymiz. ArduBlok barcha operatsion tizimlarda, hattoki Linuxda ishlaydi, uni shaxsan XP, Win7, Win8, Win7 uchun barcha misollarda sinab ko'rdi. Dasturning o'rnatilishi barcha tizimlar uchun bir xil.

Agar osonroq bo'lsa, men Mail-disk 7z-da \u200b\u200barxiv tayyorladim, uni ochib, 2 ta papkani topasiz. Birida Arduino IDE allaqachon ishlamoqda va boshqa papkada tarkib papkaga yuborilishi kerak.

ArduBlok bilan ishlash uchun siz Arduino IDE dasturini ishga tushirishingiz kerak. Keyin biz "Asboblar" yorlig'iga o'tamiz va u erda "ArduBlok" elementini topamiz, ustiga bosing - va mana bu bizning maqsadimiz.

Endi dastur interfeysi bilan shug'ullanamiz. Siz allaqachon tushunganingizdek, unda hech qanday sozlamalar yo'q, lekin dasturlash uchun juda ko'p piktogramma mavjud va ularning har biri Arduino IDE matn formatida buyruqni bajaradi. Yangi versiyalarda yana piktogramma mavjud, shuning uchun ArduBlok-ning so'nggi versiyasini tushunish qiyin va ba'zi piktogrammalar rus tiliga tarjima qilinmagan.

"Menejment" bo'limida biz turli xil tsikllarni topamiz.

"Portlar" bo'limida biz siz bilan portlarning qiymatlarini, shuningdek ularga ulangan ovoz chiqaruvchi, servo yoki ultratovushli yaqinlik sensori bilan boshqarishimiz mumkin.

"Raqamlar / Konstantalar" bo'limida biz siz bilan raqamli qiymatlarni tanlashimiz yoki o'zgaruvchini yaratishimiz mumkin, ammo siz quyida keltirilgan qiymatdan deyarli foydalana olmaysiz.

"Operatorlar" bo'limida biz siz bilan barcha kerakli taqqoslash va hisoblash operatorlarini topamiz.

Kommunal xizmatlar bo'limida asosan vaqt o'tishi bilan piktogramma ishlatiladi.

TinkerKit Bloks - sotib olingan TinkerKit datchiklari uchun bo'lim. Bizda, albatta, bunday to'plam yo'q, lekin bu ikonkalar boshqa to'plamlar uchun ishlamaydi degani emas, aksincha - yigitlar uchun LED yoki tugmachani yoqish kabi ikonkalardan foydalanish juda qulaydir. Ushbu belgilar deyarli barcha dasturlarda qo'llaniladi. Ammo ularning o'ziga xos xususiyati bor - ular tanlanganida, portlarni ko'rsatadigan noto'g'ri piktogramma mavjud, shuning uchun ularni olib tashlash kerak va "raqamlar / doimiylar" bo'limidagi belgi ro'yxatdagi birinchi o'rinda turadi.

"DF Robot" - agar ushbu bo'limda datchiklar mavjud bo'lsa, ular ba'zida uchrab turadigan bo'lsa, ushbu bo'lim ishlatiladi. Va bizning bugungi misolimiz istisno emas, bizda "Sozlanuvchi IQ kaliti" va "Line Sensor" mavjud. "Chiziq sensori" rasmdagi rasmdan farq qiladi, chunki u Amperkadan. Ularning harakatlari bir xil, ammo Amperkaning sensori ancha yaxshi, chunki u sezgirlik regulyatoriga ega.

Seeedstudio Grove - Men hech qachon ushbu bo'limda datchiklardan foydalanmaganman, lekin faqat joystiklar mavjud. Ushbu bo'lim yangi versiyalarda kengaytirildi.

Va oxirgi bo'lim Linker to'plamidir. Unda taqdim etilgan sensorlar menga duch kelmadi.

Ip bo'yicha harakatlanadigan robotdagi dasturning namunasini ko'rsatmoqchiman. Robot yig'ishda ham, sotib olishda ham juda sodda, lekin birinchi navbatda. Uni sotib olish va yig'ishdan boshlaylik.

Bu erda ehtiyot qismlar to'plami, barchasi Amperka veb-saytida sotib olingan.

  1. AMP-B001 Motor Shield (2 kanal, 2 A) 1 890 rubl
  2. AMP-B017 Troyka qalqoni 1 690 rub
  3. AMP-X053 Batareya bo'limi 3 × 2 AA 1 60 rubl
  4. AMP-B018 Line sensor raqamli 2 580 rubl
  5. ROB0049 Ikki g'ildirakli platforma miniQ 1 1890 rub
  6. SEN0019 infraqizil to'siq sensori 1 390 rubl
  7. FIT0032 infraqizil to'siq sensori uchun o'rnatish 1 90 rubl
  8. A000066 Arduino Uno 1 1150 rub

Birinchidan, g'ildirakli platformani yig'amiz va simlarni motorlarga lehimlaymiz.

Keyin biz Arduino UNO taxtasini eski anakartdan yoki boshqa shunga o'xshash tokchalardan olingan taxtalarni o'rnatamiz.

Keyin biz Arduino UNO taxtasini ushbu tokchalarga biriktiramiz, lekin bitta murvatni burama olmaymiz - ulagichlar xalaqit beradi. Siz, albatta, ularni hal qila olasiz, ammo bu sizning xohishingizga ko'ra.

Keyinchalik, biz infraqizil to'siq sensorini maxsus mahkamlagichga biriktiramiz. Iltimos, sezgirlikni boshqarish tepada, bu sozlash uchun qulaylik ekanligini unutmang.

Endi biz raqamli chiziqli datchiklarni o'rnatamiz, bu erda ular uchun bir nechta bolt va 4 ta yong'oqni qidirishimiz kerak, biz platformaning o'zi va chiziq sensori orasiga ikkita yong'oqni o'rnatamiz, qolganlari bilan datchiklarni o'rnatamiz.

Keyinchalik, Motor Shield-ni o'rnating, aks holda siz haydovchiga qo'ng'iroq qilishingiz mumkin. Bizning holatlarimizda, jumperga e'tibor bering. Biz dvigatellar uchun alohida quvvat manbaidan foydalanmaymiz, shuning uchun u ushbu holatga o'rnatiladi. Arduino UNO ning USB ulagichidan tasodifiy qisqa shimlar bo'lmasligi uchun pastki qismi elektr lenta bilan muhrlangan.

Troyka Shield-ni Motor Shield ustiga qo'ying. Bu datchiklarni ulash qulayligi uchun zarur. Biz foydalanadigan barcha sensorlar raqamli, shuning uchun chiziqli datchiklar 8 va 9-portlarga ulangan, chunki ular pinlar deb ham ataladi va infraqizil to'siq sensori 12-portga ulangan. 4, 5, 6, 7 portlaridan foydalanish mumkin emasligini unutmang, chunki ular Motor Shield tomonidan dvigatellarni boshqarish uchun ishlatiladi. O'quvchilar buni tushunib olishlari uchun men hatto ushbu portlarni qizil marker bilan maxsus bo'yab chiqardim.

Agar siz allaqachon sezgan bo'lsangiz, men qora yengni qo'shdim, bu biz o'rnatgan batareyalar bo'lagi uchib ketmasligi uchun. Va nihoyat, biz butun tuzilishni muntazam elastik tasma bilan tuzatamiz.

Batareya bo'linmasi ulanishlari 2 xil bo'lishi mumkin. Troyka Shield-ga simlarning birinchi ulanishi. Elektr vilkasini lehimlash va uni Arduino UNO taxtasining o'ziga ulash mumkin.

Endi bizning robotimiz tayyor. Dasturlashni boshlashdan oldin, siz hamma narsaning qanday ishlashini bilib olishingiz kerak bo'ladi, ya'ni:
- Motors:
4 va 5-portlar bitta dvigatelni boshqarish uchun, 6 va 7-ni boshqasi boshqarish uchun ishlatiladi;
Biz 5 va 6 portlarda PWM tomonidan dvigatellarning aylanish tezligini sozlaymiz;
4 va 7 portlarni signalizatsiya qilish orqali oldinga yoki orqaga.
- Datchiklar:
Barchamiz raqamli, shuning uchun ular mantiqiy signallarni 1 yoki 0 shaklida beradi;
Va ularni sozlash uchun ular maxsus regulyatorlarga ega va ular mos tornavida yordamida sozlanishi mumkin.

Tafsilotlarni Amperkada topishingiz mumkin. Nima uchun bu erda? Chunki Arduino bilan ishlash bo'yicha juda ko'p ma'lumotlar mavjud.

Ehtimol, biz hamma narsaga yuzaki qaradik, o'rganib chiqdik va albatta robotni yig'dik. Endi uni dasturlash kerak, mana bu - uzoq kutilgan dastur!

Va dastur Arduino IDE-ga aylantirildi:

Void setup () (pinMode (8, INPUT); pinMode (12, INPUT); pinMode (9, INPUT); pinMode (4, OUTPUT); pinMode (7, OUTPUT); pinMode (5, OUTPUT); pinMode (6) , OUTPUT);) bo'sh halqa () (agar (digitalRead (12)) (agar (digitalRead (8)) (agar (digitalRead (9)) (digitalWrite (4, HIGH)) analogWrite (5, 255); analogWrite ( 6, 255); digitalWrite (7, HIGH);) else (digitalWrite (4, HIGH); analogWrite (5, 255); analogWrite (6, 50); digitalWrite (7, LOW);)) boshqa (agar (digitalRead (9)) (digitalWrite (4, LOW); analogWrite (5, 50); analogWrite (6, 255); digitalWrite (7, HIGH);) boshqa (digitalWrite (4, HIGH); analogWrite (5, 255); analogWrite (6, 255); digitalWrite (7, HIGH);))) else (digitalWrite (4, HIGH); analogWrite (5, 0); analogWrite (6, 0); digitalWrite (7, HIGH);))

Xulosa qilib aytmoqchimanki, ushbu dastur nafaqat ta'lim olish uchun xudo, hatto o'z-o'zini o'rganish uchun ham yordam beradi, bu sizga Arduino IDE buyruqlarini o'rganishga yordam beradi. Asosiy ta'kidlash shundaki, 50 dan ortiq o'rnatish piktogrammasi mavjud, u "nosozlik" qila boshlaydi. Ha, haqiqatan ham bu muhim voqea, chunki faqat ArduBlok-da doimiy dasturlash sizga Arduino IDE-da qanday dasturlashni o'rgatmaydi. "Nosozlik" deb nomlangan narsa dasturlarni aniq disk raskadrovka qilish uchun o'ylash va buyruqlarni yodlashga harakat qilish imkonini beradi.

Omad tilayman.

Arduinoning asosiy elementlari bilan tanishib chiqib, "Salom Dunyo!" dasturlash tili bilan tanishish vaqti keldi.

Tilning tuzilishi asosan C / C ++ ga asoslangan, shuning uchun ilgari ushbu tilda dasturlashtirilganlar Arduino dasturini o'zlashtirishda qiynalmaydilar. Qolganlari boshqaruv buyruqlari, ma'lumotlar turlari va funktsiyalari haqida asosiy ma'lumotlarni o'zlashtirishi kerak.

Bu erda joylashgan ma'lumotlarning aksariyati har qanday C / C ++ kurslariga mos keladi, chunki ma'lumotlar turidagi farqlar va shuningdek, I / U portlarini dasturlash bo'yicha bir nechta aniq ko'rsatmalar mavjud.

Asosiy asoslar

Bir nechta rasmiy narsalar, ya'ni hamma biladigan narsalar, lekin ba'zan ular unutishadi ...

Arduino IDE-da, C / C ++ da bo'lgani kabi, belgilar uchun ham eslashingiz kerak. If, for kabi kalit so'zlar har doim kichik harflar bilan yoziladi. Har bir ko'rsatma ";" bilan tugaydi. Nuqta vergul kompilyatorga qaysi qismni ko'rsatma sifatida talqin qilish kerakligini aytadi.

Qavslar (..) dastur bloklarini ko'rsatish uchun ishlatiladi. Biz ularni funktsiya tanasini (pastroqqa qarang) cheklash uchun ishlatamiz, ko'chadan va shartli bayonotlar.

Kodni tushunishni osonlashtirish uchun dastur tarkibiga sharhlar qo'shish yaxshi amaliyotdir. Bir qatorli sharhlar bilan boshlanadi // (ikki tomonlama chiziq) Ko'p qatorli sharhlar bilan boshlanadi /* va bilan tugaydi */

Agar biz dasturimizga biron bir kutubxonani qo'shmoqchi bo'lsak, biz include buyrug'idan foydalanamiz. Kutubxonalarni ulashning misollari:

# shu jumladan // standart kutubxona #include "svoya_biblioteka.h" // kutubxona loyiha katalogiga

Arduino-dagi funktsiyalar

Funksiya (subroutine) - bu ba'zi bir operatsiyalarni bajaradigan dasturning alohida qismi. Funksiyalar asosiy dasturni soddalashtirish va kodning o'qilishini yaxshilash uchun ishlatiladi. Funksiyalar foydalidir, chunki biz ularni ko'plab loyihalarimizda bemalol ishlatishimiz mumkin.

Standart dasturlash kursi quyidagi maqolalarda keltirilgan funktsiyalar haqida ma'lumotni o'z ichiga oladi. Arduino bilan bog'liq holda, funktsiyalar boshida muhokama qilinadi, chunki eng oddiy dasturda ham ikkita maxsus funktsiya bo'lishi kerak. Bu haqda avvalgi maqolalarda aytib o'tilgan edi, ammo bu erda biz ushbu ma'lumotlarni tartibga solamiz.

Funktsiya deklaratsiyasi

Funktsiyalarni e'lon qilish sxemasi quyidagicha:

Function_name (parametr) yozing (// bajariladigan ko'rsatmalar (funktsiya tanasi) return (/ * return value * /);)

turi Ushbu dasturlash tilida mavjud bo'lgan har qanday ma'lumot turining nomi. Arduino dasturlashda mavjud bo'lgan turlarning ro'yxati alohida maqolada keltirilgan.

Amalga oshirilgandan so'ng, funktsiya e'lon qilingan turdagi qiymatni qaytaradi. Agar funktsiya hech qanday qaytarish qiymatini qabul qilmasa, u holda ma'lumotlar turi "bekor" bo'ladi.

function_name uni noyob tarzda aniqlashga imkon beradi. Funksiyani chaqirish (ishga tushirish) uchun biz unga nom beramiz.

parametr - funktsiyani chaqirish parametri. Parametrlar talab qilinmaydi, lekin ular ko'pincha foydalidir. Agar argumenti bo'lmagan funktsiyani yozsak, qavslarni bo'sh qoldiramiz.

Qavslar ichida "(...)" biz bajarmoqchi bo'lgan funktsiya yoki ko'rsatmaning haqiqiy tanasi joylashgan. Biz alohida ko'rsatmalarning tavsifini alohida maqolada ko'rsatamiz.

Qiymatni qaytaradigan barcha funktsiyalar qaytarish iborasi bilan yakunlanadi, so'ngra qaytish qiymati. Faqat bo'sh ko'rsatgich bilan e'lon qilingan funktsiyalarda ("void") qaytarish iborasi mavjud emas. Qaytish operatori joylashuvidan qat'i nazar, funktsiyani bajarilishini to'xtatishini unutmang.

Quyida funktsiyalarni e'lon qilishning ba'zi bir misollari keltirilgan.

Bo'shliq f1 () (// funktsiya tanasi) ——————————————— int minus () (// funktsiya tanasining qaytishi (0);) ——————————— ——— int plyus (int a, int b) (qaytish (a + b);)

Misollardan ko'rinib turibdiki, funktsiya deklaratsiyasi sizning ehtiyojlaringizga qarab turli shakllarda bo'lishi mumkin.

O'zingizning dasturlaringizni yozishda funktsiyalarni o'rganishingiz va qo'llashingiz tavsiya etiladi. Vaqt o'tishi bilan har bir dasturchida "barcha holatlar uchun" funktsiyalar kutubxonasi mavjud bo'lib, bu yangi dasturlarni yozishni osonlashtiradi va tezlashtiradi.

Endi biz o'z vazifamizni qanday yozishimiz mumkinligini bilsak, undan qanday foydalanishni o'rganishimiz kerak.

Funktsiya qo'ng'irog'i

Barcha funktsiyalarni bitta faylga / dasturga yozamiz. Albatta, yanada oqlangan echim bor, lekin biz buni keyingi safar ta'riflashga harakat qilamiz.

Funktsiyani e'lon qilib, biz uni boshqa funktsiyalarda tegishli nom va kerakli parametrlar bilan ishlatishimiz mumkin. Quyida biz bergan funktsiyalarni chaqirishga misollar keltirilgan:

F1 (); ortiqcha (2.2); y \u003d ortiqcha (1,5);

Misollardan ko'rinib turibdiki, funktsiya uning nomini va kerakli parametrlar sonini ko'rsatib chaqiriladi. Funktsiyani har doim uning deklaratsiyasiga muvofiq chaqirish muhimdir.

Agar f1 () funktsiyasi parametrlarsiz e'lon qilingan bo'lsa, uni chaqirishda hech qanday parametrlarni ko'rsatish mumkin emas, ya'ni. f1 (0) funktsiya chaqiruvi noto'g'ri bo'ladi.

Plyus (int a, int b) funktsiyasi to'liq ikkita parametrni talab qiladi, shuning uchun bitta yoki uchta parametr bilan qo'ng'iroq qilish mumkin emas.

Y \u003d plyus (1,5) ga qo'ng'iroq qilish "1" va "5" parametrlari bilan "plyus" funktsiyasini bajaradi va qaytarilgan qiymatni "y" o'zgaruvchida saqlaydi.

O'rnatish () va loop () funktsiyalari.

Funktsiyalarni e'lon qilish va chaqirish haqida ma'lumotga ega bo'lib, biz Arduino tizimining funktsiyalariga o'tishimiz mumkin: sozlash () va pastadir ()... Ushbu ikki funktsiyani e'lon qilish uchun Arduino IDE talab qilinadi.

setup () - bu quvvat yoqilganda yoki RESET tugmasi bosilganda avtomatik ravishda chaqiriladigan funktsiya.

Uning nomidan ko'rinib turibdiki, u odatda boshlang'ich parametrlarda o'rnatiladigan o'zgaruvchilarning boshlang'ich qiymatlarini, tizimning kirish va chiqish deklaratsiyalarini o'rnatish uchun ishlatiladi. O'ziga xosligi sababli, bu funktsiya qiymatni qaytarmaydi va parametrlar bilan chaqirilmaydi. To'g'ri setup () funktsiyasi deklaratsiyasi quyida ko'rsatilgan:

Void setup () (// funktsiya tanasi - tizimni ishga tushirish)

loop () - bu cheksiz tsiklda chaqiriladigan funktsiya. Ushbu funktsiya, shuningdek, qiymatni qaytarmaydi va parametrlar bilan chaqirilmaydi. To'g'ri loop () funktsiyasi deklaratsiyasi quyida ko'rsatilgan:

Void loop () (// funktsiya tanasi - dastur kodi)

Ko'rib turganingizdek, loop () funktsiya deklaratsiyasi setup () funktsiya deklaratsiyasiga o'xshashdir. Farqi ushbu funktsiyalarni mikrokontroller tomonidan bajarilishida.

Endi biz quyidagi psevdokodni tahlil qilamiz:

Void setup () (on_led1 (); // LED led1-ni yoqing off_led1 (); // LED-ni o'chirib qo'ying) bo'sh halqa () (on_led2 (); // LED-ni yoqing off_led2 (); // LED-ni o'chirib qo'ying)

Setup () funktsiyasida ikkita ko'rsatma mavjud: birinchisi plataga ulangan led1 LEDni yoqadi (masalan, pin 13), ikkinchisi led1 LEDni o'chiradi.

Loop () funktsiyasi plataga ulangan led2 ni yoqish va o'chirish bo'yicha bir xil ko'rsatmalarga ega (masalan, pin 12).

Dasturni ishga tushirish natijasida led1 bir marta yonib-o'chib turadi, led2 esa Arduino yoqilganda o'chadi va o'chadi.

RESET tugmachasini bosish natijasida led1 yana bir bor yonadi va led2 yana doimiy ravishda yonadi.

Xulosa:

  • Setup () va loop () funktsiyalari har bir loyihada aniqlanishi kerak bo'lgan tizim funktsiyalari. Ularning birida biz hech qanday kod yozmaydigan vaziyatda ham, biz ushbu ikkita funktsiyani e'lon qilishimiz kerak;
  • Setup () bir marta ishlaydi, loop () doimiy ishlaydi;
  • Biz bitta faylda o'z funktsiyalarimizni yaratamiz;
  • Biz ikkala setup () va loop () va boshqa funktsiyalardan funktsiyalarimizni chaqira olamiz;
  • O'z funktsiyalarimiz parametrlar bilan chaqirilishi va qiymatni qaytarishi mumkin;
  • Funktsiya chaqiruvi uning deklaratsiyasiga muvofiq amalga oshirilishi kerak.

"Arduino-ni yangi boshlanuvchilar uchun o'quv qo'llanma bilan tanishtiradi. Ushbu ketma-ketlik 10 ta dars, shuningdek qo'shimcha materiallar bilan namoyish etilgan. Darslarga matnli ko'rsatmalar, fotosuratlar va o'quv videolari kiradi. Har bir darsda siz kerakli komponentlarning ro'yxatini, dasturlarning ro'yxatini va elektr uzatish sxemasini topasiz. Ushbu 10 ta asosiy darsni tugatgandan so'ng siz yanada qiziqarli modellar va Arduino asosidagi robotlarni yig'ish bilan boshlashingiz mumkin. Kurs yangi boshlanuvchilar uchun mo'ljallangan, uni boshlash uchun sizga elektrotexnika yoki robototexnika bo'yicha qo'shimcha ma'lumot kerak emas.

Arduino bir qarashda

Arduino nima?

Arduino (Arduino) - asosiy komponentlari I / U platasi va rivojlanish muhiti bo'lgan apparat hisoblash platformasi. Arduino-dan mustaqil interaktiv ob'ektlarni yaratish va kompyuterda ishlaydigan dasturlarga ulanish uchun ham foydalanish mumkin. Arduino bitta taxtali kompyuterga o'xshaydi.

Arduino va robotlar qanday bog'liq?

Javob juda oddiy - Arduino ko'pincha ishlatiladi robotning miyasi.

Arduino taxtalarining o'xshash platformalardan ustunligi bu nisbatan past narx va havaskorlar va robototexnika va elektrotexnika mutaxassislari o'rtasida deyarli tarqalishdir. Arduino bilan aloqani o'rnatgan holda, siz har qanday tilda va savollarga javob beradigan va o'zingizning ishlanmalaringizni kim bilan muhokama qilishingiz mumkin bo'lgan fikrdosh odamlarda yordam topasiz.

Dars 1. Arduino-da miltillovchi LED

Birinchi darsda siz LEDni Arduino-ga qanday ulashni va uni miltillatishni boshqarishni o'rganasiz. Bu eng sodda va eng asosiy model.

Yorug'lik chiqaradigan diod - oldinga yo'nalishda elektr toki o'tayotganda optik nurlanish hosil qiluvchi yarimo'tkazgichli qurilma.

2-dars. Tugmani Arduino bilan bog'lash

Ushbu qo'llanmada siz tugmani va LEDni Arduino-ga qanday ulashni o'rganasiz.

Tugma bosilganda LED yonadi, bo'shatilgandan keyin yonmaydi. Bu ham asosiy model.

3-dars. Potensiometrni Arduinoga ulash

Ushbu qo'llanmada siz potentsiometrni Arduino-ga qanday ulashni o'rganasiz.

Potansiyometr- bu sozlanishi qarshilik bilan qarshilik.Potansiyometrlar turli xil parametrlarni - ovoz balandligi, quvvat, kuchlanish va boshqalarni boshqaruvchi sifatida ishlatiladi.Bu ham asosiy sxemalardan biridir. Bizning modelimizda potansiyometr tugmachasini burablEDning yorqinligi bog'liq bo'ladi.

4-dars. Arduino-da Servoni boshqarish

Ushbu qo'llanmada siz servoni Arduino-ga qanday ulashni o'rganasiz.

ServoBurilish burchagini o'rnatish orqali milning holatini boshqarish mumkin bo'lgan vosita.

Servolar robotlarning turli mexanik harakatlarini simulyatsiya qilish uchun ishlatiladi.

5-dars. Arduino-da uch rangli LED

Ushbu qo'llanmada siz 3 rangli LEDni Arduino-ga qanday ulashni o'rganasiz.

Uch rangli LED (rgb olib keldi) - bu bitta korpusdagi har xil rangdagi uchta LED. Ular rezistorli yoki o'rnatilgan rezistorlarsiz kichik bosilgan elektron platalar bilan ta'minlangan. Ushbu dars ikkala variantni ham qamrab oladi.

6-dars. Arduino bo'yicha piezoelektrik element

Ushbu darsda siz piezoelektr elementini Arduinoga qanday ulashni o'rganasiz.

Pyezoelektrik element- tarjima qiladigan elektromexanik konvertorelektr kuchlanishi membrananing tebranishi. Ushbu tebranishlar tovush hosil qiladi.

Bizning modelimizda dasturning tegishli parametrlarini o'rnatish orqali ovoz chastotasini sozlash mumkin.

7-dars. Arduinodagi fotorezistor

Kursimizning ushbu darsida siz fotorezistorni Arduino-ga qanday ulashni o'rganasiz.

Fotoresistor - qarshilik unga tushadigan yorug'likning yorqinligiga bog'liq bo'lgan qarshilik.

Bizning modelimizda LED faqat fotorezistor ustidagi yorug'likning yorug'ligi ma'lum darajadan kam bo'lsa yonadi, bu yorqinlikni dasturda sozlash mumkin.

8-dars. Arduino-da harakat sensori (PIR). Elektron pochtani avtomatik yuborish

Kursimizning ushbu darsida siz harakat sensori (PIR) ni Arduino-ga qanday ulashni, shuningdek elektron pochta xabarlarini avtomatik ravishda yuborishni tashkil qilishni o'rganasiz.

Harakat sensori (PIR) - harakatlanishni yoki odamlar yoki hayvonlar mavjudligini aniqlash uchun infraqizil sensor.

Bizning modelimizda, PIR sensoridan odam harakati to'g'risida signal olganda, Arduino kompyuterga elektron pochta xabarini yuborish buyrug'ini yuboradi va xat avtomatik ravishda yuboriladi.

Dars 9. DHT11 yoki DHT22 harorat va namlik sezgichini ulash

Bizning ushbu darsimizda siz DHT11 yoki DHT22 harorat va namlik sezgichini Arduino-ga qanday ulashni o'rganasiz, shuningdek ularning xususiyatlaridagi farqlar haqida bilib olasiz.

Harorat va namlik sensori Sig'imli namlik sensori va haroratni o'lchash uchun termistordan tashkil topgan kompozit raqamli sensor.

Bizning modelimizda Arduino datchik ko'rsatkichlarini o'qiydi va ko'rsatkichlarni kompyuter ekranida aks ettiradi.

10-dars. Matritsali klaviaturani ulash

Kursimizning ushbu darsida siz matritsali klaviaturani Arduino doskasiga qanday ulashni o'rganasiz, shuningdek har xil qiziqarli sxemalar bilan tanishasiz.

Matritsali klaviatura juda ko'p sonli tugmachalarni ulashni osonlashtirish uchun mo'ljallangan. Bunday qurilmalar hamma joyda - kompyuter klaviaturalarida, kalkulyatorlarda va boshqalarda uchraydi.

Dars 11. DS3231 real vaqtda soat modulini ulash

Kursimizning so'nggi darsida siz real vaqtda soat modulini oiladan qanday ulashni o'rganasiz
Arduino platasiga DS, shuningdek turli xil qiziqarli sxemalar bilan tanishing.

Haqiqiy vaqtda soat moduli bu xronometrik ma'lumotlarni yozib olish uchun mo'ljallangan elektron zanjir (joriy vaqt, sana, haftaning kuni va boshqalar), bu avtonom quvvat manbai va yozib olish moslamasi.

Ilova. Arduino tayyor ramkalar va robotlar


Siz Arduino-ni nafaqat taxtadan, balki ushbu taxta asosida tayyor to'laqonli robot - o'rgimchak robot, robot-mashina, toshbaqa roboti va boshqalarni sotib olishdan boshlashingiz mumkin. Bundayyo'l ayniqsa, elektr zanjirlariga jalb qilinmaydiganlar uchun javob beradi.

Ishlaydigan robot modelini sotib olish orqali, ya'ni. aslida, tugallangan yuqori texnologiyali o'yinchoq, siz o'zingizni loyihalashtirish va robototexnikaga qiziqishni uyg'otishingiz mumkin. Arduino platformasining ochiqligi xuddi shu komponentlardan o'zingiz uchun yangi o'yinchoqlar yasashga imkon beradi.

Boshqa variant - robot ramkasini yoki tanasini sotib olish: g'ildiraklardagi platforma yoki tırtıl, gumanoid, o'rgimchak va boshqalar. Bunday holda siz robotni to'ldirishni o'zingiz qilishingiz kerak bo'ladi.

Ilova. Mobil katalog


- Arduino platformasi algoritmlarini ishlab chiquvchilar uchun yordamchi, uning maqsadi oxirgi foydalanuvchiga o'zi bilan mobil buyruqlar to'plamiga (ma'lumotnomaga) ega bo'lish imkoniyatini berishdir.

Ilova uchta asosiy bo'limdan iborat:

  • Operatorlar;
  • Ma'lumotlar;
  • Vazifalar.

Arduino-ni qaerdan sotib olish mumkin


Arduino to'plamlari

Kursga qo'shimcha darslar qo'shiladi. Bizga obuna bo'ling

Ushbu kirish maqola allaqachon dizaynerlardan o'nlab yoki ikkita rangli qutilarni bolasi bilan ochib, yuzlab turli xil dizaynlarni qurgan va shkafdagi barcha idishlarni Lego qismlari bilan to'ldirganlarga mo'ljallangan. Agar siz uni keyingi darajaga ko'tarishga tayyor bo'lsangiz: elektronika, mikrokontroller, datchiklar va aqlli qurilmalar bilan - Arduino bilan tajriba o'tkazish vaqti keldi!

Ushbu ketma-ket maqolalarda biz bolalar bilan mustaqil ravishda mashq qilishni boshlash uchun Arduino haqida bilishingiz kerak bo'lgan eng muhim narsalarni to'playmiz. Agar siz hech qachon lehim dazmolini olmagan bo'lsangiz ham va "boshqaruvchi" va "boshqaruvchi" so'zlari siz uchun taxminan bir xil ma'noga ega bo'lsa ham, baribir muvaffaqiyatga erishishingizga amin bo'lishingiz mumkin! Elektron va robototexnika dunyosi bugungi kunda juda qiziqarli loyihalarni noldan yaratishga imkon beradigan oddiy va juda qulay echimlarga to'la. Bizning o'quv qo'llanmamiz sizga tezda harakat qilishingiz va birinchi qadamlarni qo'yishingizga yordam beradi.

Kundalik tilda Arduino - bu juda ko'p turli xil qurilmalarni ulashingiz va ularni maxsus dasturlash muhitida Arduino tilida yozilgan dastur yordamida birgalikda ishlashingiz mumkin bo'lgan qurilma.

Ko'pincha taxta quyidagicha ko'rinadi:

Rasmda Arduino taxtalaridan biri - Arduino Uno ko'rsatilgan. Buni keyingi darslarda batafsil o'rganib chiqamiz.

Siz simlarni taxtaga yopishtirishingiz va turli xil elementlarni ulashingiz mumkin. Ko'pincha ulanish uchun lehimsiz o'rnatish uchun taxta plitasi ishlatiladi. Siz LEDlarni, datchiklarni, tugmachalarni, motorlarni, aloqa modullarini, o'rni qo'shishingiz va yuzlab qiziqarli aqlli qurilmalar dizaynlarini yaratishingiz mumkin. Arduino taxtasi - bu aqlli vilka bo'lib, u qanday qilib dasturlanganiga qarab hamma narsani yoqadi va o'chiradi.




Loyihadagi barcha ishlar quyidagi bosqichlarga bo'lingan:

  1. Biz g'oya va dizaynni taklif qilamiz.
  2. Elektr zanjirini birlashtirish. Bu erda biz elementlarni o'rnatishni soddalashtiradigan nonvoyxonaga muhtojmiz. Shubhasiz, sizga elektron qurilmalar bilan ishlash ko'nikmalari va mahorat kerak bo'ladi.
  3. Biz kompyuterga USB orqali ulanamiz.
  4. va uni ekrandagi bitta tugmani to'g'ridan-to'g'ri bosib doskaga yozing.
  5. Kompyuterdan uzing. Endi qurilma avtonom ishlaydi - quvvat yoqilganda uni biz yozgan dastur boshqaradi.

Dastur va dasturlash muhiti quyidagicha:

Ekranda dastur ko'rsatiladi (Arduino jargonida dastur matni "eskiz" deb nomlanadi), u Arduino UNO platasidagi 13-kirishga ulangan chiroq bilan yonib-o'chib turadi. Ko'rib turganingizdek, dastur juda sodda va ingliz tilini biladiganlar uchun tushunarli bo'lgan ko'rsatmalardan iborat. Arduino dasturlash tili C ++ tilining o'ziga xos shevasini ishlatadi, ammo barcha C ++ funktsiyalari qo'llab-quvvatlanadi.

Kod yozish uchun yana bir variant mavjud - ingl. Bu erda hech narsa yozishning hojati yo'q - siz shunchaki bloklarni siljitib, ulardan kerakli algoritmni qo'shishingiz mumkin. Sichqonchani bir marta bosish bilan dastur ulangan doskaga yuklanadi!

Umuman olganda, bu juda sodda ko'rinadi, shunday emasmi? Tafsilotlarni aniqlash kerak.

Arduino bilan tez boshlang

Birinchidan, nima va nima qilishimiz kerakligini tushunib olaylik. Arduino nima va uni qanday ishlatish kerak? Agar siz allaqachon mavzu bilan tanish bo'lsangiz, oldinga o'tishingiz mumkin. Agar yo'q bo'lsa, keling, birgalikda qisqa sho'ng'in qilaylik.

Arduino bu ...

Arduino - bu tovar ishlab chiqaruvchisi brendi yoki nomi emas. Bu har xil texnologiyalar oilasining umumiy nomi va apparatni boshqarish uchun mo'ljallangan dasturiy ta'minotni (boshqaruv panellari va mos keladigan uskunalar) va dasturiy ta'minotni o'z ichiga olgan ochiq platforma. Aslida, Arduino - bu mos keluvchi elektron va mexanik qismlarni bitta qurilmaga to'plashingiz mumkin bo'lgan infratuzilma va atrof-muhit, so'ngra oddiy kompyuter orqali ikki minut ichida aynan shu uskuna qismlarining xatti-harakatlarini kerakli darajada dasturlashingiz mumkin.

Arduino - bu virtual kompyuter dunyosidan haqiqiy narsalar va qurilmalar dunyosiga ko'prik. Oddiy kompyuterda dastur yozib, biz uni virtual ob'ektlarni emas, balki juda aniq sensorlar, motorlar, ekranlarni boshqarish uchun ishlatamiz. Biz atrofimizdagi dunyoni o'zgartirmoqdamiz - oddiygina kompyuterda dasturlash, bepul dasturiy ta'minot va ko'plab tayyor kutubxonalar yordamida.

Texnologiya tez-tez uchraydigan kabi tasodifan o'z nomini oldi. Ilhom manbai Arduinoning kelajakdagi yaratuvchilari bir piyola choy ichishni yaxshi ko'radigan bar edi. Muassasa nomi aynan shu - Arduino, Ivreya shahrining asosiy tarixiy shaxsi, qirol Arduino nomi bilan atalgan. Qirol tarixda hech qanday yorqin iz qoldirmadi va yutqazuvchi sifatida tanildi, ammo yangi platformani ishlab chiquvchilar jamoasi tufayli u yangi mashhurlikka erishdi va endi butun dunyo bo'ylab millionlab odamlarga ma'lum.

Nima uchun Arduino?

Arduinoning go'zalligi quyidagi oddiy afzalliklarga bog'liq:

  1. Oddiylik. Ha, ha - shunchaki soddalik (garchi Lego va boshqa o'yinchoqlar, shubhasiz, tanishroq, ammo biz ular bilan taqqoslamaymiz). Yosh elektronika ishlab chiqaruvchilari uchun Arduino juda ko'p turli xil texnik masalalarni "yashiradi". Ko'pgina murakkab loyihalar juda tez, tafsilotlarga uzoq vaqt botmasdan yaratilishi mumkin. Va bu bola uchun juda muhimdir - o'z qo'llari bilan olingan birinchi natijadan oldin qiziqishni yo'qotmaslik.
  2. Ommaboplik. Arduino juda mashhur, siz ko'plab forumlarda yoki saytlarda har qanday savolga osongina javob topishingiz mumkin. Arduino hamjamiyati keng va do'stona - hayotni boshdan kechirgan va havaskorlar va yangi boshlovchilar bilan to'la bo'lgan snob-muhandislar ozgina topilgan va taniganlaridan quvonch bilan baham ko'rishadi. Bu, albatta, maslahatlarning sifatiga iz qoldiradi, ammo qoida tariqasida forumlar va saytlar yordamida eng qiyin masalalarni ham tezda hal qilish mumkin.
  3. Mavjudligi. Ham texnologiyaning o'zi, ham deyarli barcha dasturiy ta'minot ochiq litsenziyalar ostida chiqariladi va siz boshqalarning ishlanmalaridan, sxemalaridan va ko'p hollarda hatto tijorat maqsadlarida ham bemalol foydalanishingiz mumkin. Bu ko'p vaqtni tejaydi va avvalgi tadqiqotchilar tajribasidan kelib chiqib, katta yutuqlarga erishishga imkon beradi.
  4. Arzonlik. Elektronika va dasturlash bo'yicha birinchi darslar uchun to'plamni 500 rubldan kamiga sotib olish mumkin. Robototexnika bo'yicha to'liq kurslar mavjud. Hech qanday boshqa texnologiya sizga haqiqiy ta'lim robotlari dunyosiga shunchalik tez va samarali kirishingizga imkon bermaydi.

Nimadan boshlash kerak?

Agar siz Arduino yordamida robototexnika bilan shug'ullanmoqchi bo'lsangiz, unda sizga ushbu janoblar to'plami kerak:

  1. kompyuterga ulanish uchun USB kabeli bilan.
  2. va simlar.
  3. Asosiy elektron komponentlar to'plami va kron batareyasi uchun adapter.
  4. Kompyuterga o'rnatilgan muhit

Barcha jihozlar boshlang'ich to'plamlari deb nomlangan to'plamlarda sotiladi -

Kelajakda, agar darslar chindan ham jozibali bo'lsa va eksperimentlarni davom ettirish istagi bo'lsa, unda uskunalar ro'yxati kengayadi:

  1. Ekranlar va ko'rsatkichlar.
  2. Motorlar va, o'rni va boshqalar.
  3. Aloqa modullari.
  4. Turli xil qo'shimcha modullar va (qalqonlar)

Agar birinchi qadamlar natija bersa, vaqt o'tishi bilan siz pochta bo'limida navbatda turganlarning yarmini taniysiz (agar siz hali ham ularni bilmasangiz) va pochtachilar sizni ko'rish orqali taniydilar va asabiylashib yo'lning narigi tomoniga o'tishadi.

Arduino-ni qanday sotib olish mumkin?

Siz foydali narsani o'rganishdan oldin, avval foydali narsani sotib olishingiz kerak. Elektronika bilan tajriba o'tkazish uchun sizga ushbu elektronikaning o'zi dizayner yoki alohida taxtalar ko'rinishida kerak bo'ladi. Asosiy komponentlar bilan juda qimmat bo'lmagan mahalliy to'plamni sotib olish tavsiya etiladi, so'ngra datchiklar, motorlar, kontrollerlar va boshqa xazinalarni Aliexpress-ga buyurtma qiling. Internetda topish mumkin (nafaqat bizning veb-saytimizda). Agar siz katta shaharda yashasangiz, unda kerak bo'lgan hamma narsani sotib olish maksimal ikki kun davom etadi. Internetda kerakli do'konni topish oson.

Bir necha so'z haqida. Bugungi kunda ular har qanday ishlab chiqaruvchi tomonidan to'liq qonuniy sharoitlarda amalga oshirilishi mumkin: Intel kabi yirik va Xitoydan noname etkazib beruvchilar. "Xitoy" va "rasmiy" Arduino taxtalarining ishonchliligi va qulayligi ko'p hollarda bir xil. Shuning uchun ortiqcha pul to'lashning hojati yo'q - ta'lim loyihalaringiz uchun Internetda topish oson bo'lgan analoglarni xavfsiz sotib olishingiz mumkin.

"Mos keladigan taxta" dan "original" ni qanday ajratish mumkin:

  1. "Xitoy" taxtalariga Arduino logotipini qo'yishga ruxsat berilmaydi.
  2. "Xitoy" taxtalari ancha arzon.
  3. Kompyuterga ulanishni saqlab qolish uchun "xitoyliklar" ko'pincha boshqa chipdan foydalanadilar, buning uchun maxsus drayverlar kerak. Drayvlar bir soniyada o'rnatiladi va deyarli hech qachon muammo tug'dirmaydi.

Asl bo'lmagan taxtalardan foydalanish to'liq qonuniy ekanligini yana bir bor ta'kidlaymiz. Arduino - bu ochiq arxitektura va ishlab chiquvchilar har kimga taxtaning o'z versiyasini yaratish imkoniyatini beradi.

Sotib olmaysizmi?

Agar siz Antarktidada yashasangiz yoki haqiqatan ham eng oddiy to'plamlar uchun etarli mablag'ga ega bo'lmasangiz, unda umidingizni yo'qotmang - siz virtual simulyatorlarda Arduino-ni o'rganishni boshlashingiz mumkin. Bugungi kunda eng kuchli, sodda va ommabop variant bu taniqli Autodesk kompaniyasining Tinkercad onlayn xizmati. Siz turli xil tarkibiy qismlarni ulab, elektron zanjirlarni yaratishingiz mumkin, so'ngra quvvatni "yoqing" va barcha elektr ko'rsatkichlarini o'lchaysiz. Qurilmalar kutubxonasida Arduino taxtasi va hattoki dasturlash uchun o'rnatilgan muharriri ham mavjud (vizual ham!). Bizning veb-saytimizda alohida maqola topishingiz mumkin

Maqola sizga yoqdimi? Do'stlar bilan bo'lishish uchun: