PWM Nədir Və Arduinoda Necə Istifadə Olunur

Mündəricat:

PWM Nədir Və Arduinoda Necə Istifadə Olunur
PWM Nədir Və Arduinoda Necə Istifadə Olunur

Video: PWM Nədir Və Arduinoda Necə Istifadə Olunur

Video: PWM Nədir Və Arduinoda Necə Istifadə Olunur
Video: O que é um sinal PWM? Projeto de circuito PWM variável com Tensão DC | PWM com 555 e comparador 2024, Aprel
Anonim

PWM qısaltmasının arxasında nə olduğunu, necə işlədiyini, nə üçün olduğunu və Arduino ilə işləyərkən necə istifadə edə biləcəyimizi müəyyən edək.

PWM siqnalı
PWM siqnalı

Zəruri

  • - Arduino;
  • - İşıq yayan diod;
  • - 200 Ohm müqavimət göstərən bir müqavimət;
  • - kompüter.

Təlimat

Addım 1

Arduino rəqəmsal sancaqları yalnız iki dəyər verə bilər: məntiq 0 (LOW) və məntiq 1 (HIGH). Buna görə rəqəmsaldırlar. Ancaq Arduino PWM olaraq təyin olunan "xüsusi" nəticələrə malikdir. Bəzən dalğalı bir "~" xətti ilə işarələnir və ya dairəvi və ya bir şəkildə digərlərindən fərqlənir. PWM "Pulse-width modulation" və ya Pulse Width Modulation, PWM deməkdir.

Nəbz genişliyi modulyasiya olunmuş siqnal sabit tezlikli, lakin dəyişkən vəzifə dövrü olan nəbz siqnaldır (nəbz müddətinin təkrarlanma müddətinə nisbəti). Təbiətdəki fiziki proseslərin əksəriyyətinin ətalətə malik olması səbəbindən kəskin gərginliyin 1-dən 0-a düşməsi ortalama bir dəyər alaraq düzəldiləcəkdir. Vəzifə dövrünü təyin edərək, PWM çıxışındakı orta gərginliyi dəyişdirə bilərsiniz.

Vəzifə dövrü 100% -dirsə, Arduinonun rəqəmsal çıxışında hər zaman "1" və ya 5 voltluq bir məntiqi gərginlik olacaqdır. Vəzifə dövrünü 50% -ə təyin etsəniz, çıxışdakı vaxtın yarısı məntiqi "1", yarısı məntiqi "0" olacaq və orta gərginlik 2,5 volt olacaqdır. Və sair.

Proqramda, vəzifə dövrü faizlə deyil, 0-dan 255-ə qədər bir rəqəm olaraq təyin olunur. Məsələn, "analogWrite (10, 64)" əmri mikrokontrolderə iş dövrü 25 olan bir siqnal göndərməsini söyləyəcəkdir. % 10 rəqəmsal PWM çıxışına.

Nəbz genişliyi modulyasiya funksiyasına malik Arduino sancaqları təxminən 500 Hz tezlikdə işləyir. Bu, nəbz təkrarlama müddətinin şəkildə göstərilən yaşıl şaquli vuruşlarla ölçülən təxminən 2 milisaniyəyə bərabər olduğu deməkdir.

Rəqəmsal çıxışda bir analog siqnal simulyasiya edə biləcəyimiz məlum oldu! Maraqlıdır, hə?

Bunu necə istifadə edə bilərik? Bir çox tətbiq var! Məsələn, bunlar LED parlaqlıq nəzarəti, motor sürət nəzarəti, tranzistor cərəyan nəzarəti, piezo yayıcıdan səs çıxarma …

Nəbz genişliyi modulyasiyasını anlamaq
Nəbz genişliyi modulyasiyasını anlamaq

Addım 2

Ən əsas nümunəyə nəzər salaq - PWM istifadə edərək bir LED-in parlaqlığına nəzarət. Gəlin klassik bir sxem hazırlayaq.

Arduinoda PWM nümayiş etdirmək üçün dövrə
Arduinoda PWM nümayiş etdirmək üçün dövrə

Addım 3

Nümunələrdən "Solma" eskizini açaq: Fayl -> Nümunələr -> 01. Basics -> Solğun.

Arduinoda PWM nümayiş etdirmək üçün bir nümunə açılır
Arduinoda PWM nümayiş etdirmək üçün bir nümunə açılır

Addım 4

Gəlin bir az dəyişək və Arduino yaddaşına yükləyək.

PWM nümayiş eskizi
PWM nümayiş eskizi

Addım 5

Gücü açırıq. LED tədricən parlaqlıqda artır və sonra tədricən azalır. Nəbz genişliyi modulyasiyasından istifadə edərək rəqəmsal çıxışda analog siqnal simulyasiya etdik.

Tövsiyə: