1 – laboratoriya ishi. Arduino IDE dasturiy muhitlarida loyiha yaratish
Arduino - bu unchalik katta bo'lmagan plata bo'lib o'zining protsessori
(mikrokontrolleri) va xotirasiga ega bo'lgan qurilma hisoblanadi.
Arduino platasining birinchi shakli 2005 yil IVREA Italiya instituti tomonidan
tayyorlangan.
Plataning
yutuqlaridan
biri
mikrokontroller
yordamida
aktivlashtirish (actuator) qurilmalari va datchik (sensor) larga ulanish soddaligidir.
Bu esa turli shakldagi soda robotlarni yaratish imkoniyatini beradi. Arduino
tizimining g‘oyasi ―O‘zing bajar‖ (Do it yourself).
Arduino — elektronik loyihalarini yaratish uchun foydalaniladigan open
source platformasi hisoblanadi. Arduino kompyuter kodini fizik qurilmalarga yozib
olish uchun ishlatiladigan elektron mikrokontrollerdan va dasturiy ta‘minot
yoki
IDE
(Integrated Development Environment) komponentidan iborat.
Arduino ning ko'plab turlari mavjud bo'lib bularga misol qilib: Arduino Yun,
Arduino Uno, Arduino Duemilanove, Arduino Diecimila, Arduino Nano, Arduino
Mega, Mega 2560, Mega ADK, Arduino Leonardo, Arduino Micro va h.k larni
olishimiz mumkin. Arduino robototexnika va elektronikiga qiziquvchi va
izlanuvchi yoshlarga juda qo'l keladi chunki bu qurilmada kichik va katta bo'lgan
dastur, algoritmlar yaratgan holda xar hil qurilmalar, robotlar va boshqa qiziq
amaliyotlarni bajarsa bo'ladi. Boshqacha qilib aytganda, Arduino dasturiy va
texnik qismlarni birlashtirib beruvchi qurilmadir. Yuqorida keltirib o'tganimizdek
Arduino ning juda ko'p turlari mavjud bo'lib, Arduinoni o'rganishni boshlovchilar
asosan Arduinoning Uno yoki Nano turidan foydalanishni boshlashadi.
Arduinoning Uno va Nano turini yaxshilab o'rganib bo'lgan yoshlar endi
Arduinoning bu turiga qoniqmay Arduinoning Mega yoki Mega 2560 turini sotib
olishga oshiqishadi. Chunki, endi Arduino Uno, Nano turining xarakteristikasi
(texnik ko'rsatkichlari) bizning robototexnik uchun pastlik qiladi! Ayrim
robototexniklar esa Arduino Uno bilan tanishib chiqib uni imkoniyatlaridan
foydalanib bo'lgandan so'ng, Arduinoning Mega turini sotib olib o'tirmay o'zlari
yasab tayyorlab ko'rishga harakat qilishadi. To'g'rida chunki endi ular
dasturchi,robototexnik
bemalol
mikrokontrollerga
dastur
yozib
uni
mikrokontrollerga yuklay oladi. Arduino Uno ning boshqa turlaridan farqi
protsessori,mikrokontrolleri,raqamli va analog chiqishlarning ko'p yoki kamligi
bilan farqlanadi. Arduinodan foydalanayotgan kishi unga har xil elektr
komponentalar va modullarni ulash imkoniyatiga ega bo'ladi,masalan:led
chiroqlar,datchiklar,rele modullari tarmoq (Wi-fi,Bluetooth,Ethernet) modullari,
sensorlar, motorlar, magnit eshik qulflari va elektr energiyasi bilan ishlaydigan
barcha narsalar. Yuqorida aytilgandek Arduino texnik va dasturiy qismni
birlashtirib beruvchi qurilma.Demak dastur tuzish kerak ! Qanday dastur tuzamiz?
Qaysi dasturlash tili orqali? Arduino uchun dasturlar odatiy C ++ da yoziladi,
kontaktlarda I / O (Input-kirish,Output-chiqish) ni boshqarish uchun oddiy va
tushunarli algoritmlar va dasturlar tuziladi. Agar siz allaqachon C ++ ni bilsangiz -
Arduino va dunyo eshiklari siz uchun ochiq. Agar siz dasturlash uchun yangi
bo'lsangiz bu muammo emas osonlikcha o'rganishingiz mumkin, bu oson.Bundan
tashqari Arduino ni o'rganish va dasturlar yozish uchun Windows, Mac OS va
Linux
operatsion
tizimlarida
ishlovchi
Arduino
IDE
(Arduino
dasturi,kompilyatori) mavjud va siz undan mutlaqo bepul foydalanishingiz
mumkin. Arduino IDE dasturida algoritmlar va dasturlar yaratish juda oson va
ishlash qulay. Arduino IDE da tayyor amaliyotlar (loyihalar) ham mavjud siz
o'rganishingiz uchun"Uno" so'zi italyanchada bir degan ma'noni anglatadi. Bu bejis
emas, Arduino Uno yaratuvchilari bu yangi kontroller Arduino kontrollerlar
oilasida yangi burilish va yangi flagman yaratishga harakat qilishgan va buni
uddalaganlar. Sababi, Arduino Uno Arduino kontrollerlar oilasidagi boshqa
"aka"lariga nisbatan ancha ixcham, qulay, tez, oddiy va albatta arzonroq
hisoblanadi.
Arduino Uno - bu kontroller ATmega328 mikrokontrolleri asosida yaratilgan
bo'lib, platforma 14 ta raqamli kirish/chiqish,(ulardan 6 tasi KIM(Широтно-
Импульсная модуляция) sifatida foydalanish mumkin), 6 analog kirish, 16MGsli
kvarsli generator, USB porti, kuchlanish porti, ICSP porti va qayta yuklash
tugmasidan iborat.
Arduino Uno haqida qisqacha:
Mikrokontroller
ATmega328
Ishlash kuchlanishi
5 V
Kirish
kuchlanishi(tavsiya etilgani)
7-12 V
Kirish
kuchlanishi(eng
6-20 V
yuqori)
Raqamli kirish/chiqish
14
ta(ulardan
6tasi
KIM(Широтно-
Импульсная
модуляция)
sifatida foydalanish mumkin)
Analog kirish
6 ta
Kirish/chiqish
orqali
o'zgarmas tok
40 mA
3.3 V kiritish uchun
o'zgarmas tok
50 mA
Flesh xotira
32 KB(ATmega328) undan 0.5 KB yuklovchi
sifatida foydalaniladi
Tezkor xotira
2 KB(ATmega328)
EEPROM
1 KB(ATmega328)
Chastota
16 MGs
Bundan tashqari, Arduino Uno qurilmasi unga ulangan USB yoki tashqi
manbadan kuchlanish olishi mumkin. Bunda, agar manba bir nechta bo'lsa, ulardan
biri avtomatik tanlanadi.
Arduino Uno kontrolleri asosi ATmega328 mikrokontrolleridan tashkil topgan.
Bu mikrokontroller 32 kB flesh xotiraga, undan 0.5 kB qismi yuklovchi uchun
ajratilgan, bundan tashqari 2 kB tezkor xotiraga va 1 kB EEPROMga ega.
14 ta raqamli chiqishning har biri yoki kirish yoki chiqish uchun sozlash
mumkin.
Bunda pinMode(), digitalWrite() va digitalRead() funksiyalaridan
foydalaniladi. Bunda har bitta chiqish joyi 20-50 kOm qarshilikka va 40 mAgacha
tok kuchi o'tkazishi mumkin.
Yuqorida aytilganidek, bu kontroller juda ixcham o'lchamlarga ega bo'lib,
uning tomonlari 6.9 va 5.3 smga teng. Bu esa o'z navbatida uni yanada qiziqarli
qiladi.
Arduino Uno kontrolleriga Arduino dasturi yordamida dastur yaratiladi.
1. Windows uchun Arduino IDE dasturini ishga tushirish
1 – qadam.
Arduino IDE dasturini ishga tushiring
2 – qadam.
Arduino platasini kompyuterga ulang:
1. Arduino platasini kompyuterning qaysidir COM portiga USB kabel orqali
ulang. Ushbu platformani Инструменты – Плата bo‘limidan Arduino Unoni
tanlab qo‘yamiz.
2. Инструменты – Порт ga kirib qaysi COM portga ulagan bo‘lsak o‘shani
belgilab qo‘yamiz.
1-Amaliy mashg‘ulot.
1 - topshiriq. Arduino platasi yordamida svetodiod yoqilsin.
Birinchi amaliy mashg‘ulotni boshlash uchun avval ―Arduino sketcheni‖ ishga
tushiramiz.
bu yerda setup () – bu tayyorlash bo‗lsa, loop () – bajarish. Ikkala funksiya
dastur ishlashi uchun talab etiladi.
Setup funksiyasidan oldin – dasturning eng boshida odatda barcha
o‗zgaruvchilar e‗lon qilinadi. Setup – dastur bajaradigan birinchi funksiyasidir va u
bir marta bajariladi, chunki u portlarning ishlash rejimini o‗rnatish (pin Model)
yoki ketma ket ulanishi initsializatsiya qilish uchun ishlatiladi. Keyingi loop
funksiya doimo bajariladigan koddan iborat bo‗ladi, kirishlar o‗qiladi, chiqishlar
uzib ulanadi va x.k.z. Bu funksiya Arduino barcha dastur yadroli bo‗ladi va asosiy
ishni bajaradi.
Setup ()
Setup () funksiyasi dastur boshlanishida bir marta chaqiriladi. Undan chiqishlar
rejimlarini o‗rnatish yoki ketma ket ulanishni initsializatsiya qilish uchun
foydalaniladi. U dasturga, xatto xech narsa bo‗lmaganda xam kiritilishi kerak.
Void setup ()
{
Pin Mode (pin, OUITPUT); // ‗pin‗ chiqish sifatida o‗rnatadi.
}
Setup () funksiyasi chaqirilganidan so‗ng boshqarish loop () funksiyasiga
o‗tadi. U o‗zining nomi nimani anglatsa, o‗sha aniqlik bilan bajaradi – uzluksiz
ravishda dasturga Arduino platasini boshqarish, javob berish va nimalarnidir
o‗zgartirishga imkon bergan holda bajariladi.
Void loop ()
{
digitalWrite (pin, HIGH); //‗pin‗ ni ulash
delay (1000) //sekundli to‗xtalish
digitalWrite (pin, LOW); //‗pin‗ ni uzish
delay (1000); //sekundli to‗xtalish
}
Keyin quyidagi kodni kiritamiz:
Bu yerda:
" { } " - bu belgi dasturdagi boshqaruvchilar(operatorlar) ishining qayerdan
boshlanib va qayerda tugashini belgilashda qo'llaniladi
"pinMode" - inglizcha so'z bo'lib, " pin " - oyoq ( bu yerda tirqish,
kovakcha(разъём)) ma'nosida, " Mode " – inglizchada usul ,yo‘l degan ma‘noda
kelib, bu yerda kirish yoki chiqish yo‘lini o‘rnatish ma'nosida kelgan. Bu kodni
"OUTPUT" - inglizchada "chiqishni o'rnatish" ma'nosida keladi.
Yuqoridagi dasturimizda biz pin(oyoq yoki razyem)lardan birini
kushlanish(signali) chiqadigan holatga sozladik va uni 13-pin ekanligini e‘lon
qildik.
" ; " - bu belgi ya'ni "nuqta-vergul" belgisi dasturlash tilida buyrug' tugaganini
bildiradi, shuning uchun bu belgi buyrug'(kod) oxiriga yoziladi.
Svetodiodni raqamli(digital) pinlar yordamida boshqaramiz. Shuning uchun
keyingi kod shu so'z bilan boshlanadi.
"digitalWrite" inglizcha so'z bo'lib, "digital" - raqamli, "write" - yozish
ma'nosida keladi.
Arduinoni USB kabel( "USB kabel"- ikki qurilma o'rtasida bo'glovchi
vazifasini bajaradi) yordamida kompyuterga ulaymiz.
Agar dasturlash amaliyoti to'g'ri bo'lsa svetodiod yonadi.
Endi svetodiodni o‘chirish uchun quyidagicha o‘zgartirish kiritamiz:
Agar dasturlash amaliyoti to'g'ri bo'lsa svetodiod yonib o‘chadi.
Topshiriqlar:
Arduino platasiga sakkizta svetodiod ulang. Variant asosida svetiodlarni
boshqaring:
Variant
Topshiriq
Variant
Topshiriq
1, 11
Sakkizta svetodiodli qatorda
bitta svetodiodli yuruvchi
olovning chapdan o‘ngga
yugurib yurishi.
6, 16
Markazdan chetga qarab
yuruvchi olov.
2, 12
Sakkizta svetodiodli qatorda
bitta svetodiodli yuruvchi
olovning o‘ngdan chapga
yugurib yurishi.
7, 17
Ikki chetdan markazga qarab
yuruvchi olov
3, 13
Sakkizta svetodiodli qatorda
bitta svetodiodli yuruvchi
olovning chapdan o‘ngga va
o‘ngdan chapga yugurib
yurishi.
8, 18
1-svetodioda bir marta
o‘chib yonadi, 2-svetodiod
ikki marta o‘chib yonadi, 3-
svetodiod uch marta o‘chib
yonadi ........ 8-sida sakkiz
marta o‘chib yonadi.
4, 14
Sakkizta svetodiodli qatorda
ikkita svetodiodli yuruvchi
olovning chapdan o‘ngga
yugurib yurishi.
9, 19
Sakkizta svetodiodli qatorda
ikkita svetodiodli yuruvchi
olovning chapdan o‘ngga va
o‘ngdan chapga yugurib
yurishi.
5, 15
Sakkizta svetodiodli qatorda
ikkita svetodiodli yuruvchi
olovning o‘ngdan chapga
yugurib yurishi.
10, 20
Svetodiodlarning davriy
ketma-ket yonishi va
o‘chishini tashkil qilish.
Do'stlaringiz bilan baham: |