Internetga ulangan buyumlarni dasturlash



Download 196,83 Kb.
bet4/5
Sana12.02.2022
Hajmi196,83 Kb.
#445252
1   2   3   4   5
Bog'liq
4-mavzu. Servos Steppers va robotlar

3-ilova.

4-ilova.

1-qadam.
Ikki g'ildirakli sxema bo'yicha qurilgan har qanday mavjud platformadan foydalanib robot-karni yarating. Elektron komponentlarning ulanish diagrammasi quyidagi rasmda ko'rsatilgan. Sizga Arduino UNO yoki mos plata, Bluetooth HC-05 (06) moduli, motor drayveri va quvvat manbai batareyasi kerak bo'ladi. Tishli dvigatellar platformaga joylashtiriladi va robot g'ildiraklarini harakatlantirishga majbur qiladi.



2-qadam.
http://remotexy.com/en/editor/ manzilidagi RemoteXY xizmati veb-saytiga o'ting va robotni boshqarish uchun grafik foydalanuvchi interfeysini yarating. Joystik uchun G-sensor yordamida boshqaruv funksiyasini o'rnating. Interfeysning namunasi quyidagi rasmda keltirilgan. "Manba kodini olish" tugmasini bosing. 

3-qadam.
GUI manba kodini yuklab oling va uni Arduino IDE da oching. Kompilyatsiya qilish uchun sizga RemoteXY.h kutubxonasi kerak; kutubxonani http://remotexy.com/en/library/ havolasidan yuklab olish mumkin . Siz allaqachon Arduino-da kodni yuklashga va mobil ilovaga ulanishga harakat qilishingiz mumkin. Ammo bu faqat bo'sh kod bo'lsa-da, grafik interfeys va motor drayverini bog'laydigan kerakli funksiyalarni qo'shishingiz kerak bo'ladi.
4-qadam.
Keyin grafik interfeys yordamida manba kodiga robotni boshqarish funksiyasini qo'shishingiz kerak. Shu maqsadda maydon RemoteXY tuzilishi. RemoteXY tuzilishi barcha GUI boshqaruvlarini ko'rsatadi.
Olingan manba kodi quyida ko'rsatilgan. Siz uni kompilyatsiya qilishingiz va Arduino-ga yuklashingiz mumkin.
5-qadam.
http://remotexy.com/en/download/ saytida RemoteXY mobil ilovasini o'rnating . Ilova mobil qurilmada ishlayotgan bo'lsa, ro'yxatdagi Bluetooth ulanish tugmachasini bosing, Bluetooth modulingiz nomini tanlang, HC-05 (06) modullari uchun nom odatda INVOR yoki HC-06 bo'ladi.
/////////////////////////////////////////
// RemoteXY kutubxonani o'z ichiga oladi //
/////////////////////////////////////////


/* RemoteXY ulanish rejimini tanlang va kutubxonani o'z ichiga oladi */
#REMOTEXY_MODE__SOFTWARESERIALni aniqlang
#include
#include


/* RemoteXY ulanish sozlamalari */
#REMOTEXY_SERIAL_RX 2 ni aniqlang
#REMOTEXY_SERIAL_TX 3 ni aniqlang
#REMOTEXY_SERIAL_SPEED 9600 ni aniqlang


/* RemoteXY konfiguratsiyasi */
unsigned char RemoteXY_CONF [] =
{ 3 , 0 , 23 , 0 , 1 , 5 , 5 , 15 , 41 , 11
, 43 , 43 , 1 , 2 , 0 , 6 , 5 , 27 , 11 , 5
, 79 , 78 , 0 , 79 , 70 , 70 , 0 };

/* bu struktura boshqaruv interfeysingizning barcha o‘zgaruvchilarini belgilaydi */
tuzilma {


/* kirish o'zgaruvchisi */
imzolangan joystick_1_x ; _ /* =-100..100 x-koordinatali joystik holati */
imzolangan joystick_1_y ; _ /* =-100..100 y-koordinatali joystik holati */
unsigned char switch_1 ; /* =1, agar o'chirilgan bo'lsa va =0 bo'lsa */


/* boshqa o‘zgaruvchi */
unsigned char connect_flag ; /* =1, agar sim ulangan bo'lsa, boshqa =0 */


} RemoteXY ;


/////////////////////////////////////////
// END RemoteXY o'z ichiga oladi //
/////////////////////////////////////////
/* to'g'ri vosita boshqaruv pinlarini aniqladi */
#PIN_MOTOR_RIGHT_UP ni aniqlang 7
#PIN_MOTOR_RIGHT_DN 6-ni aniqlang
#PIN_MOTOR_RIGHT_SPEED 10 ni aniqlang


/* chap dvigatelni boshqarish pinlarini aniqladi */
#PIN_MOTOR_LEFT_UP ni aniqlang 5
#PIN_MOTOR_LEFT_DN ni aniqlang 4
#PIN_MOTOR_CHAP_TEZLIK 9 ni aniqlang


/* LED pinini aniqladi */
#PIN_LED 13 ni aniqlang
/* har bir dvigatel uchun pinlar ro'yxati bilan ikkita massiv aniqlandi */
unsigned char RightMotor [ 3 ] =
{ PIN_MOTOR_RIGHT_UP , PIN_MOTOR_RIGHT_DN , PIN_MOTOR_RIGHT_SPEED };
unsigned char LeftMotor [ 3 ] =
{ PIN_MOTOR_LEFT_UP , PIN_MOTOR_LEFT_DN , PIN_MOTOR_LEFT_SPEED };


/*
motor tezligini nazorat qilish
motor - pinlar qatoriga ko'rsatgich
v - vosita tezligi -100 dan 100 gacha o'rnatilishi mumkin
*/
void Wheel ( insigned char * motor , int v )
{
agar ( v > 100 ) v = 100 ;
agar ( v <- 100 ) v =- 100 ;
agar ( v > 0 ) {
digitalWrite ( motor [ 0 ], YUQORI );
digitalWrite ( motor [ 1 ], LOW );
analogWrite ( motor [ 2 ], v * 2.55 );
}
Aks holda ( v < 0 ) {
digitalWrite ( motor [ 0 ], LOW );
digitalWrite ( motor [ 1 ], YUQORI );
analogWrite ( motor [ 2 ], ( - v ) * 2.55 );
}
boshqa {
digitalWrite ( motor [ 0 ], LOW );
digitalWrite ( motor [ 1 ], LOW );
analogWrite ( motor [ 2 ], 0 );
}
}


bekor o'rnatish ()
{
/* ishga tushirish pinlari */
pinMode ( PIN_MOTOR_RIGHT_UP , OUTPUT );
pinMode ( PIN_MOTOR_RIGHT_DN , OUTPUT );
pinMode ( PIN_MOTOR_LEFT_UP , OUTPUT );
pinMode ( PIN_MOTOR_LEFT_DN , OUTPUT );
pinMode ( PIN_LED , OUTPUT );


/* ishga tushirish moduli RemoteXY */
RemoteXY_Init ();


}


bo'sh pastadir ()
{
/* RemoteXY hodisalarni qayta ishlash moduli */
RemoteXY_Handler ();


/* LED pinini boshqarish */
digitalWrite ( PIN_LED , ( RemoteXY . switch_1 == 0 ) ? PAST : YUQORI );


/* to'g'ri motorni boshqaring */
G'ildirak ( RightMotor , RemoteXY . joystick_1_y - RemoteXY . joystick_1_x );
/* chap motorni boshqaring */
G'ildirak ( LeftMotor , RemoteXY . joystick_1_y + RemoteXY . joystick_1_x );
}



Download 196,83 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish