o‘zing o‘rgan
Robototexnika asoslari 1-dars / 15
Robo

Robot nima: sezish, o‘ylash, harakat

Sensor, kontroller, aktuator; robot-changyutgich misolida

1-bob. Robot qanday ishlaydi 15 daqiqa Python 4 savol

Robot — atrofni sezadigan, qaror qabul qiladigan va harakat qiladigan mashina. Har qanday robot — zavoddagi qo'l-manipulyatordan tortib uydagi robot-changyutgichgacha — bitta sikl bo'yicha ishlaydi:

  ┌──────────┐     ┌──────────┐     ┌──────────┐
  │  SEZISH  │ ──▶ │  O'YLASH │ ──▶ │  HARAKAT │
  │ sensorlar│     │ kontroller│    │ motorlar │
  └──────────┘     └──────────┘     └──────────┘
        ▲                                 │
        └──────────── qayta ──────────────┘
Qism Vazifasi Misollar
Sensor atrofni o'lchaydi masofa (ultratovush), yorug'lik, harorat, kamera, tugma
Kontroller dasturni bajaradi, qaror qiladi Arduino, Raspberry Pi, ESP32
Aktuator harakat qiladi motor, servo, dinamik, chiroq (LED)
Quvvat hammasini ta'minlaydi batareya, akkumulyator

Robot-changyutgich qanday «o'ylaydi»

Oldidagi to'siqqacha masofani o'lchaydi va qaror qiladi:

CHEGARA = 20          # sm — bundan yaqin bo'lsa, burilish kerak

masofalar = [120, 80, 45, 18, 9, 60]
for m in masofalar:
    harakat = "oldinga" if m > CHEGARA else "burilish"
    print(f"{m} sm → {harakat}")
# Natija: 120 sm → oldinga
# Natija: 80 sm → oldinga
# Natija: 45 sm → oldinga
# Natija: 18 sm → burilish
# Natija: 9 sm → burilish
# Natija: 60 sm → oldinga

Bu — robotning «miyasi»: sensor qiymati → shart → harakat. Haqiqiy robotda bu sikl soniyasiga o'nlab marta takrorlanadi.

Robototexnikaga nimalar kerak

  • Dasturlash — Python (simulyatsiya, sun'iy intellekt, Raspberry Pi) va C++ (Arduino, tezkor boshqaruv).
  • Elektronika asoslari — kuchlanish, tok, qarshilik, sxemani o'qish.
  • Matematika — geometriya va trigonometriya (burilish burchaklari, masofalar).

💡 Bu kursda haqiqiy temir shart emas: robotni Python simulyatorida boshqarasiz. Keyin xuddi shu mantiqni Arduino'ga ko'chirish oson (5-dars).

Amaliyot Python

Robot tezligini masofaga qarab tanlasin: 50 sm dan uzoq — "tez", 20–50 sm — "sekin", 20 sm dan yaqin — "to'xta":

120 sm: tez
50 sm: sekin
35 sm: sekin
12 sm: to'xta
main.py Ctrl+Enter — ishga tushirish
input() uchun ma'lumotlar
Kodni yozib, «Ishga tushirish» ni bosing. Birinchi marta Python yuklanishi bir necha soniya oladi.
Yechimni ko'rish
def tezlik(masofa):
    if masofa > 50:
        return "tez"
    if masofa >= 20:
        return "sekin"
    return "to'xta"

for m in [120, 50, 35, 12]:
    print(f"{m} sm: {tezlik(m)}")

O'zingizni tekshiring

Savol 1 / 4

Robotning asosiy ish sikli?

Variantlar

Savol 2 / 4

Motor va servo qaysi guruhga kiradi?

Variantlar

Savol 3 / 4

Ultratovushli masofa o‘lchagich nima?

Variantlar

Savol 4 / 4

Arduino robotning qaysi qismi?

Variantlar