1 — LABORATORIYA ISHI. ARDUINO QURILMASI BILAN TANISHISH. ILK DASTUR UCHUN TUSHUNCHALAR
Ishning maqsadi:
Arduino qurilmalari bilan tanishish, uning turlari va parametrlarini o’rganish, Arduino uchun dastur tushunchalari o’rganiladi.
Kerakli asbob va materiallar:
1. Arduino platasi.
2. Arduino programmasi.
3.Kompyuter.
4. USB kabel.
5.Ulovchi simlar.
6. Xavfsizlik texnikasi qoidalari bo’yicha yo‘riqnoma.
NAZARIY MA’LUMOT
Arduino qurilmasi bilan tanishish. Ilk dastur uchun tushunchalar
1.1. Arduino nima
Arduino — bu ochiq kodli platforma bo`lib elektron loyihalarni yaratish uchun ishlatiladi. Arduino dasturlashtiriladigan elektron platadan va kompyuter kodini yozish hamda dasturni plataga yuklash uchun foydalaniladigan dasturiy ta`minot IDE (Integrated Development Environment, ya`ni, o`zbekchada «Integratsiyalashgan rivojlanish muhiti», — Integratsiya (lot. integratio-tiklash, toʻldirish) dan iborat.
Arduino platformasi elektronika bilan endigina shug`ullanayotgan o`rganuvchilar hamda ushbu sohadagi tajribali mutaxassislar tomonidan turli loyihalar tayyorlashda foydalanib kelinmoqda. Arduino platasiga yangi kodni yuklash uchun USB kabelidan foydalaniladi. Bundan tashqari, Arduino IDE C++ tilining soddalashtirilgan versiyasidan foydalaniladi, bu esa dasturlashni o`rganishni osonlashtiradi.
Arduino mikrokontrolleriga yuklanadigan dastur qurilmalarni ma`lum bir algoritmga asosan boshqariladi yoki arifmetik amallarni bajaradi. Arduino dasturlash tilini tushunish juda oson, chunki bu platforma havaskorlar uchun yaratilgan. Arduino mikrokontrolleriga ko`rsatmalar to`plamini yuborish orqali kerakli vazifalarni berishingiz mumkin.
Arduinoda professional bo`lmagan foydalanuvchilar ham turli xil elektron qurilmalarni (avtomatlashtirishva robototexnika tizimlari) yaratishlari mumkin. Arduino asosidagi qurilmalar turli sensorlardan signallarni qabul qilish va turli actuator (Aktuator — bu mexanizm yoki tizimni harakatlantirish va boshqarish uchun mo’ljallangan mashinaning tarkibiy qismlarni boshqarish imkoniyatiga ega.
Yozilgan dastur Arduinoda mustaqil ishlashi mumkin yoki kompyuter hamda mobil qurilmalar bilan o`zaro aloqada bo`ladi.
Kompaniya asoschilari — Arduino platasini ishlab chiquvchilari italiyalik Massimo Banzi, Devid Kuartil, Tom Igo, Janluka Martino va Devid Mellislardir. Arduinoning nomlanishi ular uchrashgan Italyadagi bardan olingan. Arduino maxsus ochiq platforma sifatida ishlab chiqilgan, bo’lib, faqat tovar nomi patentlangan.
Arduino o`zining protsessoriga va xotirasiga ega bo`lgan kichik plata bo`lib, atrof-muhit bilan chambarchas bog`liqdir. Arduino platasida barcha turdagi komponentlar (sensorlar, matorlar, aktuatorlar va kengaytirish platalarini ulash mumkin bo`lgan o`nlab pinlar mavjud. 1.1-rasmda Arduino UNO platasi keltirilgan.
1.1-rasm.Arduino UNO platasi
Dasturlash uchun mo`ljallangan Arduino IDE dasturiy ta`minotida dasturlash tajribasiga ega bo`lmagan o`rganuvchi ham bu dasturni tushuna oladi. Arduino sizga ushbu sohada professional ko`nikmalar va ko`plab g`oyalarni amalga oshirish imkonini beradi.
Ushbu bo’limda o`z loyihalaringizni yaratish uchun turli sensorlar va qurilmalarni Arduinoga ulash bo`yicha ko`plab qo`llanmalar mavjud. bo’limni o`qish jarayonida Arduino nima ekanligi hamda sensorlar va qurilmalar bo`yicha tushunchaga ega bo`lib borasiz. Agar Arduino nima ekanligini va nima uchun kerakligi haqida ko`proq bilmoqchi bo`lsangiz, unda ushbu bo’limdagi amalga oshirilishi mumkin bo`lgan turli loyihalar bilan tanishishingiz kerak.
Omad tilaymiz va ajoyib Arduino olamiga xush kelibsiz!
1.2. Robototexnikada algoritmlarning turlari
Robotlashgan loyihalar uchun harakat algoritmini yaratish ijodiy fikrlashni talab qiladi, shuning uchun algoritmni faqat odam yaratishi yoki o`zgartirishi mumkin. Robotlar esa ko`rsatmalarni bajaradi. Robototexnikaning uchta qonunining algoritmlarini ishlab chiqish ko`p vaqt talab qiladigan vazifa bo`lib, robotlarga keng ko`lamli vazifalarni bajarishga imkon beradi.
Robototexnikaning uchta qonuni:
1. Robot insonga shikast yetkaza olmaydi yoki harakatsizlik orqali insonga zarar yetkazishi mumkin emas.
2. Robot odamlar tomonidan berilgan buyruqlarga bo’ysunishi kerak, agar bunday buyruqlar birinchi qonunga zid bo’lmasa.
3. Robot o’z mavjudligini himoya qilishi kerak, agar bunday himoya birinchi yoki Ikkinchi qonunga zid bo’lmasa.
Isaak Asimov
Dunyodagi barcha jarayonlar qonunlar va qoidalarga bo`ysunadi, olimlar tomonidani bugungi kunda juda ko`p formulalar va algoritmlar yozilgan bo`lib, ular orqali ko`plab harakatlarni hisoblashingiz va takrorlashingiz mumkin. Algoritm tushunchasi 783—850 yillarda yashab ijod qilgan vatandoshimiz matematik Muhammad ibn Muso al-Xorazmiy nomidan kelib chiqqan. Al-Xorazmiy yaratgan qo`llanmada keltirilgan o`nlik sanoq sistemasida arifmetik amallarni bajarish qoidalari soddaligi tufayli yevropada ham o`nlik sanoq sistemasi qo’llanishiga turtki bo’ldi. Bu qoidalar tarjimasida bir qoida «Al-Xorazmiy aytadiki» deb boshlangan va bora-bora talaffuz tufayli «algoritm» tarzida ifodalanib kelgan.
1.2-rasm. Vatandoshimiz matematik
Muhammad ibn Muso al-Xorazmiy
1.3.Algoritm nima?
Algoritm — bu masalani hal qilish yoki hisoblash uchun ishlatiladigan ketma-ketlik (protsedura). Algoritmlar apparati yoki dasturiy ta`minotga asoslangan tartiblarda harakatlarni bosqichma-bosqich bajaradigan ko`rsatmalarning aniq ro`yxati sifatida ishlaydi.
Algoritmlar IT (o`zb-AKT-axborot komunikatsion texnologiyalarning barcha sohalarida keng qo`llaniladi. Matematika va informatika fanlarida algoritm odatda takrorlanuvchi muammoni hal qiladigan kichik ketma- ketlikka (protseduraga) ishora qiladi. Algoritmlar ma`lumotlarni qayta ishlashni amalga oshirish uchun spetsifikatsiya sifatida ham qo`llaniladi va avtomatlashtirilgan tizimlarda katta rol o`ynaydi.
Algoritm raqamlar to`plamini saralash yoki ijtimoiy tarmoqlarda foydalanuvchi kontentini tavsiya qilish kabi murakkabroq vazifalar uchun ishlatilishi mumkin. Algoritmlar odatda dastlabki kiritish va ma`lum bir hisoblashni tavsiflovchi ko`rsatmalar bilan boshlanadi. Hisoblash amalga oshirilganda, jarayonning chiqish natijasi ko’rinadi.
1.4. Algoritmlar qanday ishlaydi?
Algoritmlar tabiiy tillar, dasturlash tillari, psevdokod, sxemalar va boshqaruv jadvallari sifatida ifodalanishi mumkin. Tabiiy tildagi iboralar noaniqroq bo’lgani uchun kamdan-kam uchraydi. Dasturlash tillari odatda kompyuter tomonidan bajariladigan algoritmlarni ifodalash uchun ishlatiladi. Algoritmlar ko`rsatmalar to`plami bilan birga dastlabki kiritishdan foydalanadi. Kirish — bu qaror qabul qilish uchun zarur bo`lgan dastlabki ma`lumotlar va raqamlar yoki so`zlar shaklida ifodalanadi. Kirish ma`lumotlari arifmetik va qaror qabul qilish jarayonlarini o`z ichiga olishi mumkin bo`lgan ko`rsatmalar yoki hisob-kitoblar to`plami orqali amalga oshiriladi. Chiqish algoritmning oxirgi bosqichi bo`lib, ma`lumot sifatida ifodalanadi.
Misol uchun, qidiruv algoritmi qidiruv so`rovini kirish sifatida qabul qiladi va uni so`rovga tegishli indikatorlarni ma`lumotlar bazasi orqali qidirish bo`yicha ko`rsatmalar to`plami orqali boshqaradi. Avtomatlashtirish dasturlari algoritmlarning yana bir misoli sifatida ishlaydi, chunki avtomatlashtirish vazifalarni bajarish uchun bir qator qoidalarga amal qilinadi. Ko`pgina algoritmlar avtomatlashtirish dasturini tashkil qiladi va ularning barchasi berilgan jarayonni avtomatlashtirish uchun ishlaydi.
1.5. Ilk dastur uchun tushunchalar
pinMode (13, OUTPUT);
Portlarning biridan foydalanish uchun Arduinoga INPUT (kirish) yoki OUTPUT (chiqish) ni e’lon qilishda pinMode () funksiyasidan foydalanamiz.
digitalWrite (13, HIGH);
Chiqish sifatida portni ishlatish uchun, unga HIGH (5 Volt), yoki LOW (0 Volt) buyruqni berish kerak.
Arduinoda svetodiodni yoqish uchun dastur:
void setup () {
pinMode (8, OUTPUT); // 8-pinni chiqish sifatida e`lon qilish
}
void loop () {
digitalWrite (8,HIGH); //Svetodiodni yoqing
delay (1000); //1 soniya kuting
digitalWrite (8,LOW); //Svetodiodni o`chiring
delay (1000); //1 soniya kuting
}
Natijada nimani ko‘ramiz:
Arduinoga programma kodni yuklaganimizdan so’ng yorug‘lik diodini miltillashini ko‘ramiz. Agar qurilma ishlamasa sxema va programma to‘g‘ri uklanganligini tekshiring va xatolikni toping va yana bir ishlatib ko‘ring.
ISHNI BAJARISH TARTIBI
1. O`qituvchi tomonidan berilgan Arduino UNO platasi bilan tanishing.
2. Arduino UNO platasidagi raqamli pinlarni o’rganing.
3. Arduino UNO platasidagi analog pinlarni o’rganing.
4. Arduino UNO platasidagi quvvatlantirish manbaini o’rganing.
5. Quvatlantirish manbaining kuchlanishini o`lchang.
6. Robototexnikaning uchta qonuni o’rganing.
7.Arduino qurilmasi bo’yicha internetdan ma’lumot oling.
8.Ilk dastur uchun tushunchalarni o’rganing.
7. Hamma tajribani kamida 3 marta bajaring.
NAZORAT SAVOLLARI
1. Arduino nima?
2. Arduino platasini ishlab chiquvchi asoschilari kimlar?
3. Algoritm nima?
4. Arduino versiyalarini sanang?
5. Robototexnikaning uchta qonuni aytib bering.
6. Isaak Asimov qonunini aytib bering.
7. Muhammad ibn Muso al-Xorazmiy algoritm tushunchasi haqida ayting.
8. Algoritmlar qanday ishlaydi?
9. Arduino UNO platasini tushuntiring.
10.pinMode nima?