T A D Q I Q O T L A R
jahon ilmiy – metodik jurnali
https://scientific-jl.com
63-son_2-to’plam_Iyun-2025
309
ISSN:3030-3613
PYTHON VA ARDUINO DASTURLASH TILI YORDAMIDA SUN`IY
ROBOT QO`L YARATISH TEXNOLOGIYASI
Rahimov Muzaffar Mirzohid o`g`li
Andijon davlat universiteti talabasi
Annotatsiya:
Python va Arduino dasturlash tillari haqida ma`lumotlar, ularning
tarixi, afzallik va kamchiliklari haqida ko`rib chiqiladi. Ishlab chiqilgan sun`iy qo`lni
afzalliklari va qanday maqsadda ishlatilishi haqida ma`lumotlar beriladi.
Kalit so`zlar:
Python, Arduino, Arduino IDE, Servo, Arduino Nano, Otmega
328P, controller, putty.
ТЕХНОЛОГИЯ СОЗДАНИЯ ИСКУССТВЕННЫХ РУК РОБОТА С
ИСПОЛЬЗОВАНИЕМ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ PYTHON И
ARDUINO
Рахимов Музаффар Мирзохид угли Студент Андижанского
государственного университета
Аннотация:
Рассматривается информация о языках программирования
Python и Arduino, их истории, преимуществах и недостатках. Приведена
информация о преимуществах разработанного искусственного протеза руки и
его предполагаемом использовании.
Ключевые слова:
Python, Arduino, Arduino IDE, Servo, Arduino Nano,
Otmega 328P, контроллер, putty.
TECHNOLOGY FOR CREATING ARTIFICIAL ROBOT HANDS USING
PYTHON AND ARDUINO PROGRAMMING LANGUAGES
Rakhimov Muzaffar Mirzohid ugli Student of Andijan State University
Abctract:
Information about the Python and Arduino programming languages,
their history, advantages and disadvantages are reviewed. Information about the
advantages of the developed artificial hand and its intended use is provided.
T A D Q I Q O T L A R
jahon ilmiy – metodik jurnali
https://scientific-jl.com
63-son_2-to’plam_Iyun-2025
310
ISSN:3030-3613
Keywords:
Python, Arduino, Arduino IDE, Servo, Arduino Nano, Otmega 328P,
controller, putty.
Kirish:
XXI asr – innovatsiyalar va zamonaviy texnologiyalar asri bo`lib
kelmoqda.
Bugungi dunyo tobora raqamli ko‘rinish kasb etib, hayotimizga yangi
texnologiyalar
jadal
kirib
kelmoqda.
Sun’iy
intellekt,
robototexnika,
avtomatlashtirilgan boshqaruv tizimlari, IoT (Internet of Things) kabi sohalarning
rivojlanishi inson mehnatini yengillashtirish bilan birga, sanoat, tibbiyot, ta’lim va
kundalik turmushda ham ulkan o‘zgarishlarni olib kelmoqda. Ayniqsa, robototexnika
sohasida katta yutuqlarga erishilmoqda va mexanik qo‘llar kabi aqlli tizimlar ishlab
chiqilayotgani bu borada katta e’tibor qaratilayotganini ko‘rsatadi.
Mexanik qo‘llar inson qo‘lining harakatlarini taqlid qilish uchun yaratilgan
bo‘lib, ular turli sohalarda qo‘llaniladi. Masalan, sanoatda og‘ir yuklarni ko‘tarish,
jarrohlik operatsiyalarida aniq harakatlarni amalga oshirish yoki nogironligi bor
insonlarga yordam berish uchun ishlatiladi. Ushbu robot qo‘llar odatda servo motorlar,
sensorlar va mikroprotsessorlar yordamida boshqariladi.
Robototexnika dunyosida dasturlash muhim o‘rin tutadi. Ayniqsa, Arduino va
Python tillari bu sohada juda keng qo‘llaniladi. Arduino platformasi yordamida servo
motorlarni boshqarish, turli sensorlardan ma’lumot olish va ushbu ma’lumotlarga
asoslanib harakatlarni aniqlash mumkin. Python esa ma’lumotlarni qayta ishlash, tahlil
qilish va Arduino bilan aloqa o‘rnatish uchun qulay vosita bo‘lib, oddiy dasturlardan
tortib, murakkab sun’iy intellekt tizimlariga qadar keng qo‘llaniladi.
Ushbu maqolada mexanik robot qo‘l yaratish jarayoni, uning ishlash tamoyillari,
dasturlash asoslari hamda Arduino va Python tillaridan foydalanish haqida batafsil
tushuncha beriladi. Shu orqali siz robototexnika olamiga bir qadam yaqinlashib,
o‘zingiz ham shunday loyihalarni yaratish imkoniyatiga ega bo‘lasiz.
Python daasturlash tili o`zi nima?
Python – bu yuqori darajadagi, obyektga
yo‘naltirilgan va interpretatsiya qilinadigan dasturlash tili bo‘lib, 1991-yilda Gvido van
Rossum tomonidan ishlab chiqilgan. Uning asosiy maqsadi oddiy, tushunarli va
o‘qilishi oson kod yozish uchun qulay muhit yaratishdir.
Pythonning afzalliklari
Oson sintaksis
– Python kodlari oddiy va tushunarli bo‘lib, yangi
boshlovchilar uchun qulay.
Kuchli kutubxonalar
– Keng kutubxona to‘plami tufayli turli sohalarda,
jumladan, sun’iy intellekt, ma’lumotlar tahlili va veb-ishlanmalarda ishlatiladi.
Ko‘p platformali
– Windows, macOS va Linux kabi operatsion
tizimlarda ishlaydi.
T A D Q I Q O T L A R
jahon ilmiy – metodik jurnali
https://scientific-jl.com
63-son_2-to’plam_Iyun-2025
311
ISSN:3030-3613
Keng jamoatchilik yordami
– Python dunyo bo‘ylab millionlab
dasturchilar tomonidan qo‘llab-quvvatlanadi.
Python qo‘llaniladigan sohalar
1.
Veb-dasturlash
– Django va Flask kabi freymvorklar yordamida dinamik
veb-saytlar yaratish mumkin.
2.
Ma’lumotlar tahlili va sun’iy intellekt
– Pandas, NumPy, TensorFlow
va Scikit-learn kabi kutubxonalar ilmiy hisob-kitob va AI tizimlarida ishlatiladi.
3.
Robototexnika va avtomatlashtirish
– Arduino va Raspberry Pi bilan
bog‘lanib, avtomatlashtirilgan tizimlar ishlab chiqiladi.
4.
O‘yinlar ishlab chiqish
– Pygame kabi vositalar orqali oddiy 2D o‘yinlar
yaratish mumkin.
5.
Kiberxavfsizlik
– Penetratsion testlar va tarmoq xavfsizligi uchun Python
vositalaridan foydalaniladi.
Pythonning asosiy tushunchalari
O‘zgaruvchilar va ma’lumot turlari
: Butun sonlar (int), matn (str),
ro‘yxatlar (list), lug‘atlar (dict) va boshqalar.
Shartli operatorlar
: if-else orqali turli shartlarni tekshirish.
Sikllar
: for va while yordamida kodni takroriy bajarish.
Funksiyalar
: Kodni takrorlamaslik va qulay boshqarish uchun ishlatiladi.
Python dasturlash tili sun`iy robot qo`lni boshqarishda katta ahamiayt kasb etadi.
Uning asosiy maqsadi opencv ochiq kodli kutubxona yordamida obyektning
xarakatlarini to`g`ridan-to`g`ri aniqlab uni raqamli buyruq shaklida Arduino platasiga
uzatadi. Bunda asosiy vazifani fermata kutubxonasi bajaradi. Firmata Arduino va
Python daasturlaridagi kodlarni bir-biriga adaptatsiya qilish vazifasini bajaradi. Endi
python kodiga to`xtaladigan bo`lsak,
Import cv2
import pyfirmata
import mediapipe as mp
Ushbu kodlar orqali Open CV, fermata va mediapipe kutubxonalarini chaqirib
olinadi,
Open CV
rasm va videolar bilan ishlash uchun eng mashxur kutubxona
xisoblanadi. Ushbu kutubxona asosan kompyuterli ko`rish ya`ni Computer vision
sohasida keng qo`llaniladi. Uning asosiy vazifalari yuzni aniqlash, obyektlarni kuzatish
va filtr qo`shish kabi funksiyalarni bajarish mumkin.
Pyfirmata
-Arduino va Pythonni o`zaro bog`lash uhun kerak bo`ladigan
kutubxona hisoblanadi. Ushbu kutubxona asosan Arduino platasiga buyruqlar yuborish
va undan ma`lumot olish uchun ishlatiladi. Firmata protokoli orqali Arduinoni
boshqarish imkonini beradi.
Mediapipe
-Google kompaniyasi tomonidan ishlab chiqarilgan mashinani
o`rganish (Machine Learning) kutubxonasi bo`lib, yuz, qo`l xarakatlari va tana
T A D Q I Q O T L A R
jahon ilmiy – metodik jurnali
https://scientific-jl.com
63-son_2-to’plam_Iyun-2025
312
ISSN:3030-3613
xarakatlarini aniqlash uchun ishlatiladi. Bu kutubxonaning yuz aniqlash, barmoqlarni
kuzatish, poza baholash kabi funksiyalar mavjud.
board = pyfirmata.Arduino('COM5')
servo_pins = [2, 3, 4, 5]
Kodning ushbu qismi Arduino bog`langan kompyuter porti va barmoqlarni
xarakatga keltiruvchi servo motorlarni Arduinoga ulanishi kerak bo`lgan pinlarni
tanitish va tanib olish jarayoni uchun javobgar qismi hisoblanadi.
servo_angles[0] = 180 if thumb < index else 0
servo_angles[1] = 180 if thumb < middle else 0
servo_angles[2] = 180 if thumb < ring else 0
servo_angles[3] = 180 if thumb < pinky else 0
Ushbu qismda servo motorning xarakat burchaklari buyrug`I keltirib o`tilgan va
bu yerda asosan 4 ta barmoq uchun buyruq mavjud va servo 0 dan 180 gradusgacha
xarakatlanadi.
Python kodini asosiy qismlari shulardan iborat. Ushbu qismlar yaratilayotgan
texnologiyaning asosiy vazifalari haqida gapiradi va tusuhunarli shaklgan ega.
Arduino dasturlash tili haqida gapiradigan bo`lsak, Arduino – bu ochiq kodli
elektronika platformasi bo‘lib, oddiy apparat va dasturiy ta’minot kombinatsiyasi
orqali turli elektron qurilmalarni yaratish imkonini beradi. Arduino platformasi asosan
mikroprotsessorlarga asoslangan bo‘lib, u sensorlar, aktuatorlar va boshqa elektron
komponentlar bilan ishlashga mo‘ljallangan.
Arduino dasturlash tili asosan C va C++ dasturlash tillariga asoslangan. Uning
oddiy va tushunarli sintaksisi yangi boshlovchilar uchun ham qulay bo‘lib,
mikroprotsessorlar bilan ishlashni ancha osonlashtiradi. Dasturlash uchun rasmiy
Arduino IDE muhiti ishlatiladi va unda dasturlar yozilib, qurilmaga yuklanadi.
Arduino dasturlashda asosiy tushunchalar mavjud. Birinchi navbatda setup va
loop funksiyalari muhim rol o‘ynaydi. Setup funksiyasi dastur boshida bir marta
ishlaydi va qurilmaning dastlabki sozlamalarini bajaradi. Loop funksiyasi esa doimiy
ravishda takrorlanib turadi va qurilmaning asosiy ish jarayonlarini boshqaradi.
Arduino bilan turli loyihalar yaratish mumkin. Masalan, avtomatlashtirilgan
tizimlar, aqlli uy loyihalari, robototexnika, iqlim nazorati va boshqalar. Uning
modullar va sensorlar bilan moslashuvchanligi turli sohalarda qo‘llanilishiga imkon
yaratadi.
Arduino dasturlash tili oson sintaksisga ega bo‘lib, kichik kodlar bilan katta
funksionallikni ta’minlaydi. Masalan, oddiy LED chirog‘ini yoqish yoki harorat
sensoridan ma’lumot olish kabi jarayonlar bir necha qator kod orqali amalga oshiriladi.
Xulosa qilib aytganda, Arduino dasturlash tili elektron qurilmalar bilan ishlashni
osonlashtiruvchi qulay vosita hisoblanadi. Uning ochiq kodli ekotizimi va keng
jamoatchilik tomonidan qo‘llab-quvvatlanishi turli sohalarda innovatsion loyihalarni
T A D Q I Q O T L A R
jahon ilmiy – metodik jurnali
https://scientific-jl.com
63-son_2-to’plam_Iyun-2025
313
ISSN:3030-3613
ishlab chiqish uchun keng imkoniyat yaratadi. Arduino dasturlash tilining robot qo`l
uchun foydalanishdan asosiy maqsad oson sintaksisga ega bo`lgan kod orqali servo
motorlarni oson va tushunarli tarzdan boshqarishdir. Servo motorlarga esa buyruqlar
Arduino nano platasi orqali jo`natiladi. Arduino nano platasi Otmega 328P
mikrokontrollerga ega bo`lib 30 ta kiritish va chiqarish portlarini o`z ichiga oladi.
Arduino nano platasi Arduino tilida yozilgan buyruqlarga asoslangan holda o`ziga
ulangan komponentlarni ya`ni servo motorlar, dc motorlar, sensorlar va boshqa
datchiklarni boshqaradi, ulardan ma`lumot qabul qiladi, qayta ishlaydi va chiqish
portlari orqali buyruq beradi. Sun`iy robot qo`l yaratishda Arduino nano dan
foydalanishdan asosiy maqsad shuki, uning kichik xajmdagi plataga ega ekanligi va
moslashtiruvchi controllerga ega ekanligi. Moslashtiruvchi kontrollerni asosiy afzalligi
shundaki, har portlar servo va dc motorlarga moslashtirilganligi va quvvat manbai
uchun aloxida yuqoriroq quvvat qabul qiluvchi port bilan jixozlanganligi. Qo`l yaratish
uchun o`z-o`zidan ko`p servo motorlardan foydalaniladi, shu sababdan ushbu qurilma
ko`proq quvvat talab qiladi, shu sababdan moslashtiruvchi controller ayni muddaodir.
Arduino dasturlash tilida yozilgan Arduino uchun yozilgan kodni tahlil qiladigan
bo`lsak,
#include <Servo.h>
#include <Firmata.h>
Arduino dasturlash tilida #include buyrug`i kutubxonalarni chaqirib olish uchun
ishlatiladi. Yuqoridagi kodning boshlang`ich qismida servo motorlar va Python va
Arduinoni bog`lovchi kutubxona chaqirib olingan va bundan asosiy maqsad python
tilidan yozilgan kodni Arduinoga adaptatsiya qilish va servo motorlarni Arduino
platasiga tanitib olish.
Servo servoThumb;
Servo servoIndex;
Servo servoMiddle;
Servo servoRing;
Servo servoPinky;
Ushbu 5 qatorli kod 5 ta servo uchun ishlatiladi va bu beshta servo motorlar
sun`iy qo`lning 5 ta barmog`I uchun javobgar hisoblanadi vas hu sababdan bu servo
motorlar ozi javob beruvchi barmoq nomi bilan nomlangan. Bundan asosiy maqsad
servo motorlar xarakatini boshqarishda yanglishib ketmaslikdir.
servoThumb.attach(7);
servoIndex.attach(9);
servoMiddle.attach(11);
servoRing.attach(8);
T A D Q I Q O T L A R
jahon ilmiy – metodik jurnali
https://scientific-jl.com
63-son_2-to’plam_Iyun-2025
314
ISSN:3030-3613
servoPinky.attach(10);
Bu qismdagi “attach” buyrug`i servo motor ulangan Arduino portiga buyruq
uzatadi va ko`ringanidek 7, 9, 11, 8 va 10 chi portlarga ulangan servo motorlarga
buyruq uzatilmoqda.
Arduino kodining xam asosiy qismlari shundan iborat va boshqa qislarda python
mediapipe kutubxonasidan olingan buyruqqa asoslangan xolda servo motorlarga
buyruq uzatish qismlari yoziladi.
1-rasm. Robot sun`iy qo`l
Ushbu suratda ishlab chiqilayotgan sun`iy qo`lning to`g`ridan tog`ri ko`rinishi.
Ushbu prototiv boshlanish qismi ya`ni o`z nomidan kelib chiqib prototiv xoli uchun
3D printer yordamida (PLA) filament materialidan tashkil topgan xolda 3D formati
realizatsiya qilingan. Ushbu texnologiya ishlatilish joyi, muhiti va xizmatiga qarab
ishlab chiqiluvchi material turi va xarakat aniqliklari chuqurroq va qayta ishlab
chiqiladi.
Ushbu ishlab chiqiladigan robot sun`iy qo`l ko`plab sohalarda keng qo`llanilishi
mumkin. Masalan qurilish sohasida, o`g`il bo`lgan yuklarni bir joydan boshqa joyga
ko`chirish imkonini beradi. Bu texnologiyasi yanada mukammalroq ishlab chiqish
orqali tibbiyot soxasida, nozik operatsiyalarni yuqori aniqlikda bajarish uchun ham
qo`llash mumkin. Harbiy soxada esa, juda xavfli bo`lgan topshiriqlar, jumladan
T A D Q I Q O T L A R
jahon ilmiy – metodik jurnali
https://scientific-jl.com
63-son_2-to’plam_Iyun-2025
315
ISSN:3030-3613
sapyorlik ya`ni mina va bombalarni zararsizlantirishda ushbu texnologiyadan
foydalanish bir insonning xayotini saqlab qolishiga yaqqol misol bo`lishi mumkin.
Sun`iy qo`llar kelajak texnologiyasi uchun eng asosiy misollar hsioblanadi. Ushbu
texnologiyani nerv tizimi bilan adaptatsiya qilish bilan baxtsiz hodisa oqibatida yoki
tug`ma qo`lsiz tug`ilgan insonlar uchun protez qo`l vazifasini bajaruvchi qurilma ishlab
chiqish ham mumkin va bu yo`l orqali bunday turdagi nogiron insonlarni hayotini
qisman bo`lsada osonlashtirish imkoni mavjuddir.
FOYDALANILGAN ADABIYOTLAR:
1.
"Mechatronic Hands: Prosthetic and Robotic Design" – Paul H. Chappell
2.
URL:
https://www.amazon.com/Mechatronic-Hands-Prosthetic-robotic-
3.
"The Human Hand as an Inspiration for Robot Hand Development" – Ravi
Balasubramanian va Veronica J. Santos (tahrirchilar)
https://www.amazon.com/Inspiration-Development-Springer-Advanced-
Robotics/dp/3319030167
5.
"Prosthetic Robotic Hand: Mechanical Design, Contact-Mechanics Modeling
and Experiments" – Osman H. O. Hasan
https://www.amazon.com/Prosthetic-Robotic-Hand-Contact-Mechanics-
Investigations/dp/3659645796
7.
"Design of Humanoid Robotic Hand Based on Link Underactuation" – IEEE
Conference Publication
8.
http://ieeexplore.ieee.org/document/9907550
9.
"Design and Fabrication of an Affordable, High-Performance Life-Size
Humanoid Robotic Hand with Integrated Nanocomposite Strain Sensors" –
Ahmed Attaoui va boshqalar
10.
https://link.springer.com/article/10.1007/s00170-024-14918-5