AXV

Mikrokontroller va IoT (2-qism)

Sensor–CPU–aktuator zanjiri, raqamli va analog signal, ADC, PWM, IoT'da mikrokontrollerning ikki roli

9-sinfIoT6-hafta · 16-dars

Bugun nimalarni o'rganamiz?

IoT'da MCU roli

Ikki vazifa

Signallar

Raqamli, analog, ADC

PWM va dastur

Chegara dasturi

Takrorlash

Tok o'chsa, qaysi xotiradagi ma'lumot yo'qoladi?

RAM vaqtinchalik; Flash va EEPROM saqlanadi.
01

IoT'da MCU roli

Ikki vazifa

IoT qurilmasidagi zanjir

Sensor Mikrokontroller Aktuator Bulut /telefon Mikrokontroller — markaziy tugun

IoT qurilmasi sxemasi


[Sensor] --signal--> [MIKROKONTROLLER] --buyruq--> [Aktuator]
                          |   ^
                  ma'lumot|   |buyruq
                          v   |
                     [Wi-Fi / Bluetooth]
                          |
                       [Bulut] <----> [Telefon]
  
Oddiy qoida: sensor — «quloq», mikrokontroller — «miya», aktuator — «qo'l», Wi-Fi — «ovoz».

Mini-test

Mikrokontroller IoT dagi qaysi ikki vazifani bajaradi?

Atrof-muhitni sezish va tarmoq bilan aloqa.
02

Signallar

Raqamli, analog, ADC

Analog signalning yo'li

Fizik kattalik Sensorkuchlanishi ADC: 0–1023 Dastur qarori Analog → raqam → qaror

ADC qiymati va kuchlanish


Arduino Uno: 10-bit ADC, 5 V

qiymat    kuchlanish (U = 5 * qiymat / 1023)
   0      0.00 V
 256      1.25 V
 512      2.50 V
 768      3.75 V
1023      5.00 V
  
Formulani yodlash shart emas: «5 V ni 1023 ga bo'ldik» — har birlik ≈ 0,0049 V (taxminan 4,9 mV).

Mini-test

Arduino Uno ADC qiymati 1023 bo'lsa, kuchlanish qancha?

Eng yuqori qiymat — 5 V.
03

PWM va dastur

Chegara dasturi

Dastur hayoti

Kod yoziladi Kompilyatsiya USB orqaliyuklash Flash'danishga tushadi Yuklangan dastur tok o'chganda ham saqlanadi

Chegara dasturi


const int SENSOR = A0;     // analog kirish
const int LED = 9;         // chiqish (PWM pin)
const int CHEGARA = 512;   // ~2,5 V

void setup() {
  pinMode(LED, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int qiymat = analogRead(SENSOR);   // 0..1023
  Serial.println(qiymat);
  if (qiymat > CHEGARA) {
    analogWrite(LED, 255);           // to'liq yorqin
  } else {
    analogWrite(LED, 40);            // xira
  }
  delay(200);
}
  
Chegarani o'zgartirib ko'ring: 300, 700. Serial Monitor'da qiymat o'zgarishini kuzating — shunda sensor «tilini» tushunasiz.

Mini-test

analogWrite(LED, 128) LEDni qanday yoqadi?

128/255 ≈ 50%.

Raqamli va analog signal

Raqamli

Ikki holat: HIGH yoki LOW (tugma)
VS

Analog

Uzluksiz qiymat, ADC orqali 0–1023 (harorat)

Analogni ADC raqamga o'giradi.

Atamalar. Bosing

ADC

bosing

Analog-raqamli o'zgartirgich

PWM

bosing

Kenglik-impulsli modulyatsiya

Aktuator

bosing

Ijrochi qurilma (LED, motor)

Protokol

bosing

Ma'lumot almashish qoidasi (MQTT, HTTP)

Sezish, o'ylash, harakat

1. Sezish

Sensor signali.

2. O'ylash

Dastur va chegara.

3. Harakat

Aktuator.

Sensor va aktuatorlar

QurilmaTuriSignal
TugmaSensorRaqamli
PotensiometrSensorAnalog
LEDAktuatorRaqamli / PWM
MotorAktuatorPWM
ReleAktuatorRaqamli

Qurilmalar va signal turlari

Chegara tajribasi

  1. Potensiometrni A0 ga, LEDni 9-pinga (220 Ω orqali) ulang yoki Tinkercad'da yig'ing.
  2. Chegara dasturini yuklab, Serial Monitor'da qiymatni kuzating.
  3. Potensiometrni buring: qaysi qiymatda LED yorqinlashadi? Chegarani o'zgartiring.

LED yorqinligi


digitalWrite(LED, 128);
  

LED yorqinligi


analogWrite(LED, 128);
  

Raqamlar

0
ADC ning eng katta qiymati
0
PWM ning eng katta qiymati
0
ta analog pin (A0–A5)

10-bit ADC: 2^10 = 1024 daraja.

Amaliy topshiriq 20 daqiqa

OsonRolni toping: Mikrokontrollerning IoT dagi ikki vazifasini yozing.
OsonSignal turi: Tugma, harorat sensori, yorug'lik sensori, masofa sensori — qaysi biri raqamli, qaysi biri analog?
O'rtaKuchlanish: ADC qiymati 256 va 768 bo'lsa, kuchlanish qancha? (U = 5 × qiymat / 1023)
O'rtaPWM hisobi: analogWrite(LED, 64) taxminan necha foiz yorqinlik beradi?
QiyinChegara dasturi: Qiymat 700 dan oshsa LED yonsin, aks holda o'chsin. Dasturning loop() qismini yozing.
BonusTarjimon: Nega sensor to'g'ridan-to'g'ri internetga ulanmaydi? Mikrokontroller qanday yordam beradi?

Dars xulosasi

IoT roli

Sezish va ma'lumot almashish.

Signallar

Raqamli va analog (ADC).

PWM

Yorqinlikni silliq boshqarish.

Uyga vazifa: Sensor, ADC va PWM bo'yicha masalalar.

Keyingi dars: ESP8266 va ESP32

Umumiy tushuncha

6-hafta · 17-dars