Puls kengligi modulyatsiyasi yordamida motor tezligini boshqarish
Birinchidan , siz dvigatel tezligini sozlash uchun avvalgi darslarda tungi yorug'lik LED
yoritilishini sozlashda ishlatilgan dasturga juda o'xshash dasturdan foydalanishingiz mumkin.
Tomonidan tranzistorlar uchun turli vazifa-asr signallari yuborib, orqali joriy oqimi motor tez
boshlanadi va tezligi o'zgarishi natijasida to'xtaydi. Dvigatel tezligini tez-tez ko'tarish va tushirish
uchun quyidagi dasturni sinab ko'ring .
//Motor tezligini boshqarish dasturi
const int MOTOR=9; //9-pinga motor ulangan
void setup()
{
pinMode (MOTOR, OUTPUT);
}
void loop()
{
for (int i=0; i<256; i++)
{
analogWrite(MOTOR, i);
delay(10);
}
delay(2000);
for (int i=255; i>=0; i--)
{
analogWrite(MOTOR, i);
delay(10);
}
delay(2000);
}
Agar hamma narsa to'g'ri ulangan bo'lsa, bu kod dvigatel tezligini asta -sekin oshirib , keyin asta
orqaga qaytarishi kerak. Ushbu texnikadan foydalanib, siz oddiy aravachali robot yasashingiz
mumkin.
Keyinchalik, siz O’zgarmas tok motorlari haqidagi yangi bilimlaringizni analog sensorlar haqidagi
bilimlaringiz bilan birlashtira olasiz . Potansiyometr yordamida siz motor tezligini qo'lda
sozlashingiz mumkin . Boshlash uchun 4-4-rasmda ko'rsatilgandek, analog pin 0 ga potentsiometr
qo'shing . E'tibor bering, agar siz potentsiometrni bortdagi o'sha qatorga ulashni xohlasangiz ,
Arduino -dan 5V -pinni taxtadagi elektr rayıga ulashingiz kerak .
Potentsiometrni qo'shish
Siz potentsiometrning hozirgi sozlamalari asosida motor tezligini boshqarish uchun dasturni
o'zgartirishingiz mumkin . Potentsiometr nol bo'lsa, vosita to'xtaydi; potentsiometr to'liq
aylantirilganda, vosita to'liq tezlikda ishlaydi. Eslatib o'tamiz , Arduino juda tez ishlaydi;
aslida har soniyada bir necha ming marta aylana bo'ylab harakat qiladi ! Shunday qilib, siz
potentsiometr tezligini har safar pastadir orqali tekshirishingiz va har bir tekshiruvdan keyin vosita
tezligini sozlashingiz mumkin . Dvigatel tezligi potentsiometr yordamida real vaqtda sozlanishini
tez -tez tekshiradi . Quyidagi kod bu hiylani bajaradi. Yangi eskiz yarating (yoki oldingi eskizni
ushbu kodga mos keladigan tarzda yangilang) va uni Arduinoga o'rnatilgan ishlab chiqish
muhitidan (IDE) yuklang .
// Potensiometr yordamida motor tezligini boshqarish dasturi
const int MOTOR=9; //Motor on Digital Pin 9
const int POT=0; //POT on Analog Pin 0
int val = 0;
void setup()
{
pinMode (MOTOR, OUTPUT);
}
void loop()
{
val = analogRead(POT);
val = map(val, 0, 1023, 0, 255);
analogWrite(MOTOR, val);
}
Ushbu kodning ko'p qismi analog sensorlar bilan ishlash tajribangizdan tanish bo'lishi kerak.
E'tibor bering, potentsiometrdan foydalanishda cheklash funktsiyasi talab qilinmaydi , chunki siz
butun kirish diapazonidan foydalanishingiz mumkin va bu qiymat hech qachon 023 dan past yoki
1023 dan past bo'lmaydi. Arduino -ga kodni yuklaganingizdan so'ng , potni rostlang va tezlikni
kuzating. Dvigatel shunga mos ravishda o'zgaradi.
Dostları ilə paylaş: |