2-ma`ruza: Qurilmalarni mikrokontroller yordamida analogli (pwm) signallar bilan boshqarish texnologiyalari
Download 229.5 Kb. Pdf ko'rish
|
Avtomatlashtirish masalalari bankini yaratish
2-ma`ruza: Qurilmalarni mikrokontroller yordamida analogli (PWM) signallar bilan boshqarish texnologiyalari. Mikrokontroller yordamida chiqariluvchi analogli (PWM) boshqaruv signallari oddiy diskretlangan analogli signallardan farq qiladi. Chunki, oddiy analogli signallar o`zining chastotasi va amplitudasi bilan aniqlanadi. Elektr signallari uchun amplituda asosan kuchlanishga mos keladi. Arduino Nano mikrokontrollerlar esa o`z pinlaridan faqat o`zgarmas (odatda 5 volt) kuchlanishli signallar chiqaradi. Ulardan analogli signallar sifatida foydalanish uchun signalni yuborish vaqti (puls kengligi) boshqariladi. Buning uchun signal yuborish vaqti o`zgarmas deb olinadi (kvantlarga bo`linadi) va ushbu vaqtning ma`lum bir qismida pin orqali yuqori kuchlanish (5 volt) yuboriladi, qolgan qismida esa past kuchlanish (0 volt) yuboriladi. Yuqori kuchlanish yuborilgan vaqt puls kengligi deb ataladi. Elektorodvigatellar misolida ushbu vaqtni aylanish tezlanishi uchun berilgan vaqt deb qarash mumkin. Ushbu vaqt qanchalik ko`p bo`lsa, motor shunchalik katta tezlikka erishishga ulguradi. Shunday usul bilan uning aylanish tezligi boshqariladi. Quyidagi 5.1-rasmda vaqt kvantining yuqori kuchlanish berilgan qismi foiziga mos keluvchi tasvirlar keltirilgan. 5.1-rasm. Puls kengliklari turlicha bo`lgan signallarning sxematik tasvirlari. Vaqt kvanti 255 ta teng bo`laklarga bo`linib, ularning tegishli foizida yuqori kuchlanish beriladi. Yuqoridagi rasm misolida 10% ga mos holatda 255 ta pulsning 25 tasiga yuqori, qolgan 230 tasiga past kuchlanish yuboriladi, 90% lik holatda esa aksincha, 230 tasiga yuqori kuchlanish, 25 tasiga past kuchlanish yuboriladi. Bunday usul bilan oddiy diodli lampaning yorug`lik darajasini ham boshqarish mumkin. Quyidagi misol orqali diodli lapmaning yorug`lik darajasini kenglikli pulslar yordamida boshqarish jarayonini namoyish qilamiz. // boshqarish pinini belgilaymiz. int ledPin = 9; // boshlang`ich yorug`lik darajasini o`rnatamiz. float brightness = 0.; // yoritish darajasining o`zgarish qadamini belgilaymiz. float st = 1.; void setup() { // chiqish pini deb e`lon qilamiz pinMode(ledPin, OUTPUT); } void loop() { // pinga berilgan kenglikdagi yuqori kuchlanish yuboramiz. analogWrite(ledPin, brightness); // kenglik miqdorini o`zgartiramiz. brightness=brightness+st; // agar puls kengligi 0 yoki 255 ga etib borsa, orqasiga qaytaramiz. if(brightness<=0||brightness>=255) {st=-st;} // ko`rgazmali namoyish uchun takrorlanish tezligini pasaytiramiz. delay(10); // ushbu jarayonni doimiy ravishda takrorlaymiz } Avvalgi bo`limdagi misolda diodli lampa o`rniga elektrodvigatelni ulab, uning aylanish tezligini ham boshqarish mumkin. Lekin, bunda elektrodvigatel kam quvvatli, puls bilan boshqariluvchi bo`lishi kerak. Bunday holatda elektrodvigatelni ulash sxemasini quyidagi 5.2-rasmda keltiramiz. Elektrodvigatelni mikrokontroller yordamida boshqarish sxemasi. Agar elektrodvigatel yuqori quvvatli hamda puls bilan boshqariluvchi bo`lsa, mikrokontrollerdan chiqayotgan kuchsiz signalni kuchaytirish qurilmasi (masalan, tranzistor) ning boshqaruv signali sifatida ishlatish orqali elektrodvigatelning aylanish tezligini nazorat qilish mumkin. Bunday holatda elektrodvigatelni ulash sxemasini quyidagi 5.3-rasmda keltiramiz. Elektrodvigatelni boshqarish signalini transistor orqali kuchaytirish sxemasi. Boshqa hollarda esa, qo`shimcha fizik qurilmalardan (masalan, chastotani o`zgartiruvchi qurilmadan) foydalanishga to`g`ri keladi.(5.4-rasm). Chastotani o`zgartiruvchi qurilma sxemasi. Download 229.5 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling