Научная статья на тему 'Arduino mikrokontroller platasini o’rganish'

Arduino mikrokontroller platasini o’rganish Текст научной статьи по специальности «Техника и технологии»

CC BY
859
498
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Science and Education
Область наук
Ключевые слова
Arduino / mikrokontroller / qurilma / dasturiy ta’minot / ochiq kodli platforma / sensorlar

Аннотация научной статьи по технике и технологии, автор научной работы — Alisher Shakirovich Ismailov, Gulnoza To’xtasinjon Qizi Qodirova, Maftuna Yigitaliyeva

Ushbu maqolada Arduino mikrokontrollerining ishlash prinsipi va ilovalari muhokama qilinadi. Ushbu maqolada, shuningdek, Arduino mikrokontrolleri o’rganish va tadqiqot ishlari uchun vosita sifatida qanday foydalanish mumkinligini ham muhokama qilamiz. Arduino mikrokontrolleri sensorlarni o’z ichiga olgan kichik loyihalarni ishlab chiqish uchun tezkor vositani taqdim etishi mumkin. Arduino mikrokontrolleri o’rganish oson va dasturlash oson hisoblanadi. Arduino IDE Arduino mikrokontrollerini dasturlash uchun ishlatilishi mumkin. Arduino IDE bu Arduino platalari uchun dastur yozish vositasi hisoblanadi. Arduino IDE ochiq kodli dasturiy ta’minot bo’lib, uni bepul yuklab olish va kompyuterga o’rnatish mumkin. Arduino IDE ko’plab foydalanishga tayyor kutubxonalarni ham taqdim etadi. Arduino foydalanuvchilari ushbu kutubxonalardan foydalanishi vaqtni ancha tejaydi. Ushbu maqolada Arduino platalarining turi, ishlash tamoyillari, dasturiy ta’minotni amalga oshirish va Arduino ilovalari haqida qisqacha ma’lumot berilgan.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Arduino mikrokontroller platasini o’rganish»

Arduino mikrokontroller platasini o'rganish

Alisher Shakirovich Ismailov Gulnoza To'xtasinjon qizi Qodirova Maftuna Yigitaliyeva Toshkent moliya instituti

Annotatsiya: Ushbu maqolada Arduino mikrokontrollerining ishlash prinsipi va ilovalari muhokama qilinadi. Ushbu maqolada, shuningdek, Arduino mikrokontrolleri o'rganish va tadqiqot ishlari uchun vosita sifatida qanday foydalanish mumkinligini ham muhokama qilamiz. Arduino mikrokontrolleri sensorlarni o'z ichiga olgan kichik loyihalarni ishlab chiqish uchun tezkor vositani taqdim etishi mumkin. Arduino mikrokontrolleri o'rganish oson va dasturlash oson hisoblanadi. Arduino IDE Arduino mikrokontrollerini dasturlash uchun ishlatilishi mumkin. Arduino IDE - bu Arduino platalari uchun dastur yozish vositasi hisoblanadi. Arduino IDE ochiq kodli dasturiy ta'minot bo'lib, uni bepul yuklab olish va kompyuterga o'rnatish mumkin. Arduino IDE ko'plab foydalanishga tayyor kutubxonalarni ham taqdim etadi. Arduino foydalanuvchilari ushbu kutubxonalardan foydalanishi vaqtni ancha tejaydi. Ushbu maqolada Arduino platalarining turi, ishlash tamoyillari, dasturiy ta'minotni amalga oshirish va Arduino ilovalari haqida qisqacha ma'lumot berilgan.

Kalit so'zlar: Arduino, mikrokontroller, qurilma, dasturiy ta'minot, ochiq kodli platforma, sensorlar

Learning the Arduino microcontroller board

Alisher Shakirovich Ismailov Gulnoza Tokhtasinjan kizi Kadirova Maftuna Yigitaliyeva Tashkent Financial Institute

Abstract: This article discusses the working principle and applications of Arduino microcontroller. In this article, we will also discuss how the Arduino microcontroller can be used as a tool for learning and research. An Arduino microcontroller can provide a quick tool for developing small projects involving sensors. Arduino microcontroller is easy to learn and easy to program. Arduino IDE can be used to program Arduino microcontroller. Arduino IDE is a programming tool for Arduino boards. The Arduino IDE is open source software that can be downloaded and installed on a computer for free. The Arduino IDE also provides many ready-to-

use libraries. Using these libraries will save a lot of time for Arduino users. This article provides a brief overview of Arduino board types, operating principles, software implementations, and Arduino applications.

Keywords: Arduino, microcontroller, device, software, open source platform, sensors

KIRISH

Arduino mikrokontrolleri oson dasturlashtiriladigan va istalgan vaqtda yangilanishi mumkin bo'lgan ochiq manba hisoblanadi. Birinchi Arduino 2005-yilda taqdim etilgan. Arduino mikrokontrolleri dastlab mutaxassislar va talabalar uchun sensorlar yordamida atrof-muhit bilan o'zaro aloqada bo'ladigan qurilmalarni ishlab chiqish uchun mo'ljallangan.

Arduino mikrokontrollerlari ma'lumot olish uchun ishlatilishi mumkin bo'lgan kirish va chiqishlar (pinlar)ga ega va olingan ma'lumotlarga asoslanib Arduino chiqishni yuborishi mumkin. Arduino mikrokontrollerlari HTTP so'rovlari yordamida internet orqali ma'lumotlarni ham yuborishi va qabul qilishi mumkin. Internetga ulanishi mumkin bo'lgan oddiy mikrokontroller Esp platalari hisoblanadi. Esp mikrokontrollerlari Wi-Fi serveriga ulanishi mumkin yoki ular Wi-Fi serveri vazifasini ham bajarishi mumkin.

| ESP-07 ESP-08 ESP-09 ESP-10 ESP-11

Arduino platformasini ikkiga bo'lish mumkin: qurilma va dasturiy ta'minot. Dasturiy kodni ishlab chiqish uchun Arduino dasturi Arduino IDE (Integrated Development Environment) deb nomlanuvchi dasturdan foydalanadi. Atmel yoki 32-bitli Atmel ARM tomonidan ishlab chiqarilgan 8-bitli Atmel AVR mikrokontrollerlari

bilan qurilgan ushbu mikrokontrollerlar Arduino IDE-da C yoki C++ dasturlash tillari yordamida osongina dasturlashtirilishi mumkin.

Arduino platasi, shuningdek, yuklash uchun USB kabelidan foydalanib, Arduino platasiga yangi kodni yuklash uchun ham ishlatilishi mumkin. Arduino IDE deyarli barcha shaxsiy kompyuterlarda ishlay oladigan soddalashtirilgan integratsiyalangan platformani taqdim etadi va foydalanuvchilar C yoki C++ dasturlash tillaridan foydalangan holda Arduino platasi uchun dasturlar yozishlari mumkin.

Bozorda ko'plab Arduino mikrokontroller platalari mavjud. Loyiha talabiga qarab Arduino platasidan to'g'ri foydalanish kerak bo'ladi. Har bir Arduino platasi har xil spetsifikatsiya va imkoniyatlarga ega.

Boshqa mikrokontrollerlar o'rniga Arduino mikrokontrolörlarini ishlatish uchun ko'p sabablar mavjud. Arduino asoschilaridan biri Massimo Banzi Arduino platalaridan foydalanishning juda muhim sabablarini aytib o'tgan.

•Faol foydalanuvchilar hamjamiyati: Arduino foydalanuvchilari xabar yuborishlari va o'z tajribalari bilan o'rtoqlashishlari mumkin. Agar muammo yuzaga kelsa, Arduino platasidan foydalanib, muammoingizni jamoat platformasiga joylashtirasiz, keyin boshqa foydalanuvchilar odatda muammoni hal qilish bo'yicha yechimlar yoki ko'rsatmalar beradi [1].

•Arduinoning o'sishi: Arduino mikrokontrollerlari raqobatchilarga qaraganda arzonroq. Bu yangi kelganlar uchun tez boshlash uchun yaxshi taklif hisoblanadi [1].

•Arzon uskuna: Arduino platformasidan rasmiy veb-saytdan foydalanish bepul. Foydalanuvchilar to'laydigan yagona narsa Arduino platasi uchundir [1].

•Ko'p platformali muhit: Arduino IDE ko'p platformali dasturiy ta'minot bo'lib, u Microsoft, Linux va Mac OS X kabi bir nechta platformalarda ishlay oladi va foydalanuvchi hamjamiyatini yanada kengaytiradi [1].

ARDUINO PLATALARINING TURLARI

Arduino platalarining ko'p turlari mavjud. Simsiz aloqa uchun Arduino BT kabi platalar o'rnatilgan Bluetooth moduli bilan birga keladi. Ushbu o'rnatilgan modullar alohida-alohida mavjud bo'lishi mumkin, ular keyinchalik ular bilan bog'lanishi mumkin. Ushbu modullar Shield deb nomlanadi.

Ba'zi mashhur Arduino platalari:

• Arduino Ethernet qalqoni: Bu qalqon Arduino platasiga Ethernet kutubxonasi orqali internetga ulanish va SD kutubxonasi [2] yordamida SD kartani o'qish va yozish imkonini beradi.

• Arduino Wireless qalqoni: bu qalqon Arduino platasiga Zigbee [2] yordamida simsiz aloqa qilish imkonini beradi.

• Arduino Dvigatel drayveri qalqoni: bu qalqon Arduino platalariga motor drayverlari va boshqalar bilan interfeys o'rnatish imkonini beradi [2].

Arduino qalqonlari - Ethernet, simsiz va motor drayveri.

Bu yerda mikrokontroller turi, kristall chastotasi va avtomatik qayta o'rnatish imkoniyati mavjud bo'lgan turli xil Arduino platalarining ro'yxati keltirilgan:

Jadval 1.

Sarlavha va matn shriftlari

Arduino turi Mikrokontroller tezligi

Arduino Uno ATmega328 Avtomatik tiklash bilan 16 MHz

Arduino Duemilanove / ATmega328 Avtomatik tiklash bilan 16 MHz

ATmega328

Arduino Nano ATmega328 Avtomatik tiklash bilan 16 MHz

Arduino Mega 2560 yoki Mega ADK ATmega2560 Avtomatik tiklash bilan 16 MHz

Arduino Leonardo ATmega32u4 Avtomatik tiklash bilan 16 MHz

ATmega328 bilan Arduino Mini ATmega328 Avtomatik tiklash bilan 16 MHz

Arduino Fio. ATmega328 Avtomatik tiklash bilan 8 MHz

ATmega328 bilan Arduino BT ATmega328 Avtomatik tiklash bilan 16 MHz

Lily Pad Arduino w/ ATmega328 ATmega328 Avtomatik tiklash bilan 8 MHz

Arduino Pro yoki Pro Mini ATmega328 Avtomatik tiklash bilan 16 MHz

Arduino NG ATmega8 Avtomatik tiklash bilan 16 MHz

ARDUINO PLATALARINING Elementlari

Arduino platasi elementlari ikki toifaga bo'linishi mumkin:

• Qurilma

• Dasturiy ta'minot

Qurilma

Arduino mikrokontrolleri ko'plab komponentlardan iborat. Quyida ushbu asosiy komponentlar va ularning funksiyalari keltirilgan:

• Mikrokontroller: Bu rivojlanish kengashining miyasi bo'lib, unga ulangan periferik qurilmalarga ma'lumot yoki buyruqni qabul qilishi va yuborishi mumkin. Mikrokontroller platadan plataga farq qiladi; u ham turli spetsifikatsiyalarga ega.

• Tashqi quvvat manbai: Bu quvvat manbai Arduino mikrokontrollerini 9 - 12 voltgacha bo'lgan doimiy kuchlanish bilan quvvatlantirish uchun ishlatiladi.

• USB porti: Bu usb porti Arduino platasining juda muhim portidir. U USB kabeli yordamida mikrokontrollerga dasturni yuklash uchun ishlatiladi. USB kabeli tashqi quvvat manbai bo'lmagan hollarda Arduino platasini quvvatlaydigan 5 V DC quvvatiga ega.

• Qayta tiklash tugmasi

• Analog pinlar: Bu pinlar analog kirish/chiqish uchun ishlatiladi. Analog pinlar soni ham platadan plataga farq qiladi.

• Raqamli kirish/chiqish pinlari: Bu pinlar raqamli kirish/chiqish uchun ishlatiladi. Ushbu raqamli pinlarning soni ham platadan plataga farq qiladi.

• Quvvat va GND pinlari: ishlab chiqish platasida 3.3 volt, 5 volt pinlar mavjud.

7 to 12VDC input 2.1mm x 5.5mm Male center positive -

Voltage 16MHz regulator crystal

. ATmegal6U2 microcontroller IC/USB controller

Not connected ■

I/O Reference voltage •

Reset • 3.3V Output • 5V Output ■

Ground •

Ground ■

Input voltage ■

Analog pin 0 -Analog pin 1 • Analog pin 2 ■ Analog pin 3 • (I2C) SDA ■ (I2C) SCL ■

! «»

!H1 11 -

UÇ^àt

■mi ii^iitu

-s , 1,

|— Reset button

. (I2C) SCL - Serial clock

- (I2C) SDA - Serial data

- Pin-13 LED

■ (SPI) SCK - Serial dock

- (SPI) MISO - Master-in, slave-out

■ (SPI) MOSI - Master-out, slave-in

- (SPI) SS - Slave select

/""N S 1

'1*' <= 3-6

i % z ?-«

s n î!'

; If I

i 8 Iff I1 2

! r^.; t

S y. y - J %

Note: Pins denoted with " are PWM supported

ATmega328 microcontroller IC

Arduino platasi va IDEning yorliqli diagrammasi. Dasturiy ta'minot

Arduino platasi uchun yozilgan dastur kodi sketch deb ataladi. Arduino uchun bunday sketchlarni ishlab chiqishda foydalaniladigan dastur Arduino IDE hisoblanadi. Bu IDEda quyidagi qismlar mavjud:

• Matn muharriri: Bu yerda dasturlash kodini C/C++ dasturlash tilida yozish mumkin.

• Xabar maydoni: U xatoni ko'rsatadi va kodni saqlash va eksport qilish bo'yicha fikr-mulohaza beradi.

• Matn: Konsol to'liq xato xabarlari va boshqa ma'lumotlarni o'z ichiga olgan Arduino muhiti tomonidan matn chiqishini ko'rsatadi

• Konsol asboblar paneli: Bu asboblar paneli Kompilyatsiya, Yuklash, Yangi, Oyna Ochish, Saqlash va Serial Monitor kabi ba'zi tugmalarni o'z ichiga oladi.

DASTURLASH ASOSLARI

Arduino IDE platformasida Arduino sketchini dasturlash texnikasini muhokama qilamiz. Har bir sketch har doim ikkita asosiy funksiyaga ega bo'ladi:

• void setup()

• void loop()

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1) void setup() funksiyasi

Bu Arduino ishlay boshlaganda boshlanadigan birinchi jarayon hisoblanadi. Ushbu funksiya dasturning butun faoliyati davomida faqat bir marta bajariladi. O'rnatish funksiyasi loyihada kirish yoki chiqish uchun foydalanmoqchi bo'lgan har bir pinni ishga tushirishni o'z ichiga oladi. Buni qanday yozish kerakligiga misol keltiramiz:

void setup () {

// put your setup code here, to run once pinMode(2, INPUT); pinMode(3, OUTPUT);

Ushbu misolda biz 2-pinni KIRISH va 3-pinni CHIQISH sifatida o'rnatdik. Shuningdek, u ketma-ket monitorni ishga tushirishni ham o'z ichiga oladi. Har qanday

periferik qurilmaga ketma-ket yuborilayotgan ma'lumotlarni bilish uchun ketma-ket monitor ishlatiladi.

// put your setup code here, to run once:

Eslatma: Har qanday o'zgaruvchilarni dasturlash uchun ishlatishdan oldin ularni "void setup()" funksiyasi ustida aniqlash kerak.

2) void loop() funksiyasi

Bu funksiya sketchdagi keyingi muhim funksiya hisobalandi. void loop() sketchi cheksiz ishlaydi. void loop() funksiyasiga kod yozganingizdan so'ng u hech qachon to'xtamaydi.

Arduino IDE-da bir nechta o'rnatilgan funksiyalar ham mavjud. Quyida har bir o'rnatilgan funksiya tushuntiriladi:

digitalWrite() funksiyasi

digitalWrite() funksiyasi ikkita parametrni qabul qiladi; birinchi parametr raqamli pin raqami va raqamli pin uchun HIGH yoki LOW qiymatlari. Masalan: digitalWrite(2, HIGH);

Agar pin pinMode() bilan OUTPUT (chiqish) sifatida o'rnatilgan bo'lsa, uning kuchlanishi o'rnatiladi.

Tegishli qiymat: HIGH uchun 5 V va LOW uchun 0V hisoblanadi. Misol:

//put your^main code^here, to run repeated]

Yuqoridagi kodda raqamli pin 3, 1 soniya davomida yonadi va 1 soniya davomida o'chiriladi.

digitalRead() funktsiyasi

Agar pin INPUT(kirish) sifatida o'rnatilgan bo'lsa, digitalWrite() kirish pinini yoqadi (HIGH) yoki o'chiradi (LOW).

analogWrite() funksiyasi

Pinga analog qiymatni (PWM to'lqini) yozadi. Turli yorqinlikdagi LEDni yoqish yoki motorni turli tezliklarda boshqarish uchun ishlatilishi mumkin.

analogRead()

Belgilangan analog pindan qiymatni o'qiydi. Arduino Uno platasida 6 ta kanal (Arduino Mini va Arduino Nanoda 8 ta kanal, Arduino Megada 16 ta), 10-bitli analog-raqamli konvertorlar mavjud.

Bu shuni anglatadiki, u 0 dan 5 voltgacha bo'lgan kirish kuchlanishlarini 0 va 1023 oralig'idagi butun qiymatlarga ko'rsatadi. Bu 5 volt / 1024 birlik ko'rsatkichlari o'rtasidagi ruxsatni beradi, muqobil ravishda, har bir birlik uchun .0049 volt (4,9 mV).

Analog kirish qiymatini o'qish uchun taxminan 100 mikrosekund (0,0001 s) kerak bo'ladi, shuning uchun maksimal o'qish tezligi soniyada taxminan 10 000 marta.

XULOSA

Ushbu maqolada biz Arduinoning ishlash prinsipini, uning qurilma/dasturiy ta'minoti xususiyatlarini va hozirda qayerda qo'llanilishi va qayerdan foydalanish mumkinligini o'rganib chiqdik. Shuningdek, biz Arduino uchun IDE (dasturiy ta'minot) da sketchlar yozishni o'rgandik.

Arduino bilan yangi g'oyalarni ishlab chiqish cheksizdir, bu maqola yordamida biz innovatsion narsalarni yaratish va amalga oshirish uchun o'zimizning yangi qurilmalarimizni yaratishni o'rgandik.

Foydalanilgan adabiyotlar

1. ARDUINO.CC, "Arduino - Kirish", 2015 [Onlayn] http://arduino.cc/en/Guide/Introduction. [Kirishilgan: 25-fevral - 2015].

2. Arduino.cc, 'Arduino - Mahsulotlar', 2015. [Onlayn]. http: // arduino. cc/en/Main/Products. [Kirishilgan: 25 -fevral-2015].

3. ArduPilot Mega, 'ArduPilot Mega', 2015. [Onlayn]. http://www.ardupilot.co.uk/. [Kirishilgan: 23-noyabr- 2015-yil].

4. Vikipediya, 'ArduSat', 2015. [Onlayn]. http://en.wikipedia.org/wiki/ArduSat. [Kirishgan: 23- Fevral- 2015].

5. Kickstarter, 'ArduSat - Kosmosdagi Arduino tajribangiz', 2015. [Onlayn]. Mavjud: https://www.kickstarter.com/projects/575960623/ardusat-your-arduino-экспернмент-in-space. [Kirishilgan: 23-fevral-2015].

6. Koinotni o'z qo'llaringiz bilan o'rganish, "Ardusat - Arduino-da qurilgan shaxsiy sun'iy yo'ldoshingiz", 2013. [Onlayn]. Mavjud: http://www.diyspaceexploration.com/ardusat-your- personal-satellite. [Kirishilgan: 13-sentabr-2015].

7. J. Brodkin, 'Katta xakerlik ko'nikmalarini talab qiladigan 11 ta Arduino loyihasi yoki biroz aqlsizlik', Ars Technica, 2013. [Onlayn]. Mavjud: http://arstechnica.com/information-technology/2013/05/11-arduino- projects-that-require-major-hacking-skills-or-a-bit- of-insanity/2/. [Kirishilgan: 25-noyabr- 2015-

yil].

8. Galadima, A.A., "Arduino o'rganish vositasi sifatida", Electronics, Computer and Computation (ICECCO), 2014 yil 11-xalqaro konferentsiya, jild, №, 1-4-betlar, 2014 29 sentyabr - oktyabr. 1 2014. doi: 10.1109/ICECTO.2014.6997577

Mavjud: Mavjud: Mavjud: Mavjud:

9. Badamasi, Y.A., "Arduinoning ishlash printsipi", Electronics, Computer and Computation (ICECCO), 2014 11th International Conference on , jild, №, pp.1-4, 29-sentabr 2014-okt. . 1 2014. doi: 10.1109/ICECCO.2014.6997578

10. LilyPad Arduino, 'LilyPad Arduino', 2015. [Onlayn]. Mavjud: http://lilypadarduino.org/. [Kirishilgan: 13-sentabr-2015].

11. Ismailov, A. S., & Jo'Rayev, Z. B. (2022). Study of arduino microcontroller board. Science and Education, 3(3), 172-179.

12. Ismailov AS. Smart car security system based Arduino and GSM. Science and Education. 2021;2(2):99-102.

13. Ismailov AS, Abdurakhmonova N, Tojiboyev GO. Wireless traffic light controller. Science and Education. 2021 Dec 28;2(12):249-53.

14. Ismoilov AS, o'g'li Xasanov JN. DENGIZ CHIQINDISINI YIG'UVCHI ARDUINOGA ASOSLANGAN ROBOTNI MODELLASHTIRISH. Science and Education. 2020 Oct 22;1(3):133-8.

i Надоели баннеры? Вы всегда можете отключить рекламу.