Fanlab

Robototexnika · Mikrokontrollerlar · 7-sinf

Arduino Uno: birinchi dastur

Platani o‘zingiz yig‘ing, USB ni ulang, Blink ni yuklang — va 13-pin siri nimada?

Tajribani ochish

Vaziyat

To‘garakda birinchi robot uchun Arduino Uno kerak. Lekin avval platani o‘zingiz yig‘ib ko‘ring: yalang‘och platadan boshlab qismlarni joylang, kavsharlang, USB ni ulang va birinchi dasturni yuklang — Blink. Keyin yorqinlikni ravon o‘zgartirmoqchi bo‘lasiz, lekin 13-pindagi chiroq ravon so‘nmaydi, faqat «yonib-o‘chadi». Nega? Qaysi pinlar PWM biladi? Va agar kondensatorni teskari qo‘ysangiz yoki 5V ni GND ga tutashtirsangiz nima bo‘ladi?

Mavzu

Arduino Uno: platani yig‘ish va birinchi dastur. Yalang‘och platadan ishlayotgan Arduinogacha: qismlarni joylash, kavsharlash, USB, Blink va Fade

Asosiy tushunchalar

  • Mikrokontroller
  • Pinlar va PWM
  • setup() / loop()

Formulalar

T=tyoniq+to‘chiq

Blink davri: `delay()` lar yig‘indisi — 1000 + 1000 ms = 2 s, chastota 0,5 Hz.

D=tyoniqT=v255

PWM to‘ldirish koeffitsiyenti: `analogWrite(pin, v)` — 490 Hz chastotada chiroq vaqtning v/255 ulushida yoniq turadi; ko‘z o‘rtacha yorqinlikni ko‘radi.

I=5V−ULEDR+Rpin

Tashqi LED toki: pin ≈ 5 V beradi, o‘zining ≈ 25 Ω chiqish qarshiligi bor; pin uchun chegara 40 mA, me’yor 20 mA.

Io‘rt=D⋅I

PWM da o‘rtacha tok (va yorqinlik) to‘ldirish koeffitsiyentiga proporsional.

Nazariya

Plata nimadan iborat

Arduino Uno R3 ning yuragi — ATmega328P mikrokontrolleri (28 oyoqli DIP korpus, uyaga qo‘yilgan): 16 MHz kvars bilan sekundiga 16 million qadam. ATmega16U2 — USB orqali kompyuter bilan gaplashadigan ikkinchi chip. 5 V va 3,3 V stabilizatorlar quvvatni tayyorlaydi, 500 mA polyfuse USB portini qisqa tutashuvdan himoya qiladi. Chetlardagi qora panellar — pinlar: DIGITAL 0–13, ANALOG IN A0–A5, POWER (5V, 3V3, GND, VIN).

Yig‘ish tartibi

Zavodda avval mayda SMD qismlar (chiplar, rezistorlar, kondensatorlar) pastaga qo‘yilib, pechda 245 °C da «oqib» kavsharlanadi. Keyin katta o‘tkazma (THT) qismlar — uyalar, panellar, kondensatorlar, kvars, DIP uyasi — teshiklarga tiqiladi va pastdan kavsharlanadi. Kavsharlanmagan oyoq — tutashuv yo‘q: shunday plataga USB ulasangiz, hech narsa yonmaydi.

setup() va loop()

Har bir Arduino dasturida ikki funksiya bor: setup() bir marta (pinlarni sozlash), loop() — cheksiz takror. `pinMode(13, OUTPUT)` pinni chiqish qiladi, `digitalWrite(13, HIGH)` unga 5 V beradi (LOW — 0 V), `delay(1000)` dasturni 1000 ms to‘xtatib turadi. 13-pinga platadagi L chirog‘i ulangan — shuning uchun Blink hech qanday tashqi qismsiz ishlaydi.

PWM: nega 13-pin ravon so‘nmaydi

`analogWrite(pin, v)` analog kuchlanish bermaydi — pinni sekundiga ≈ 490 marta yoqib-o‘chiradi, yoniq ulushi v/255. Bu PWM (impuls kengligi modulyatsiyasi); ko‘z o‘rtacha yorqinlikni ko‘radi. Uno da PWM faqat ~ belgili pinlarda: 3, 5, 6, 9, 10, 11. Boshqa pinda (13 ham) `analogWrite` oddiy kalitdek ishlaydi: v<128 — LOW, v≥128 — HIGH. Shuning uchun Fade 13-pinda ravon emas, keskin.

Tashqi LED va pin chegarasi

Pin — kichik manba: ≈ 5 V va ichki ≈ 25 Ω. LED ga rezistor shart: 220 Ω bilan tok ≈ 12–13 mA. Rezistorsiz tok 100 mA dan oshadi — pin uchun mutlaq chegara 40 mA: chip qiziydi va buziladi (tutun — kristall kuygani). Kondensatorni teskari qo‘ysangiz, elektrolit qiziydi, qopqog‘i shishadi va yoriladi. 5V–GND tutashuvi — polyfuse tokni uzadi; tutashuvni olib tashlasangiz, u soviydi va yana ulanadi.

Model haqida

Dastur Arduino C ning kichik qismida ishlaydi (int/float, if, for, while, funksiyalar, Serial). `int` 16 bitli — 32 767 dan oshsa manfiyga aylanadi, xuddi haqiqiy platadagidek. Vaqt simulyatsiya soatidan: 1× tezlikda Blink haqiqiy sekundlarda. Kavsharlash, qizish va tutun — soddalashtirilgan: haqiqiy chip qisqa muddat ortiqcha tokka chidashi mumkin, lekin umri qisqaradi.

Bilasizmi?

  • Arduino 2005-yilda Italiyaning Ivrea shahrida (Interaction Design Institute Ivrea) talabalar uchun arzon o‘quv platasi sifatida boshlangan; nomi Ivreadagi «Bar di Re Arduino» kafesidan olingan.
  • ATmega328P da atigi 2 KB operativ xotira (SRAM) va 32 KB dastur xotirasi bor — oddiy smartfon xotirasidan millionlab marta kam, lekin robot uchun yetarli, chunki u sekundiga 16 million buyruq bajaradi.

Tajribada nima bor

Haqiqiy plata qo‘lda chizilgan rasmda: uni aylantirasiz, qismlarni joylaysiz, zanjirni ulaysiz, kodni yozib yuklaysiz — tok va kuchlanish o‘sha zahoti hisoblanadi, xato ulashda qism kuyadi. Ichida topshiriqlar, nazariya, test va ekskursiya bor.