- Какво е PWM (Pulse Width Modulation)?
- Работен цикъл на ШИМ
- Някои често възникващи въпроси относно ШИМ
Инвертори, преобразуватели, SMPS вериги и регулатори на скоростта…. Едно нещо, което е често срещано във всички тези схеми, е, че се състои от много електронни ключове вътре в него. Тези превключватели не са нищо друго освен захранващи електронни устройства като MOSFET, IGBT, TRIAC и др. За да контролираме такива силови електронни превключватели, ние обикновено използваме нещо, наречено PWM сигнали (Pulse Width Modulation). Освен това, ШИМ сигналите се използват и за задвижване на серво мотори, а също и за други прости задачи като управление на яркостта на светодиода.
В предишната ни статия научихме за ADC, докато ADC се използва за четене на аналогови сигнали от цифрово устройство като микроконтролер. ШИМ може да се счита за точно противоположна на него, ШИМ се използва за генериране на аналогови сигнали от цифрово устройство като микроконтролер. В тази статия ще научим какво е ШИМ, ШИМ сигнали и някои параметри, свързани с него, така че да бъдем уверени в използването им в нашите проекти.
Какво е PWM (Pulse Width Modulation)?
PWM означава модулация на широчината на импулса; ще разберем причината за такова име по-късно. Засега разбирайте ШИМ като тип сигнал, който може да се произвежда от цифрова интегрална схема, като микроконтролер или 555 таймер. Така произведеният сигнал ще има набор от импулси и тези импулси ще бъдат под формата на квадратна вълна. Тоест, във всеки даден момент от време вълната или ще бъде висока, или ще бъде ниска. За по-лесно разбиране нека разгледаме 5V PWM сигнал, в този случай PWM сигналът ще бъде или 5V (висок) или на нивото на земята 0V (нисък). Продължителността, при която сигналите остават високи, се нарича „ on time “, а продължителността, при която сигналът остава нисък, се нарича „ off time “.
За ШИМ сигнал трябва да разгледаме два важни параметъра, свързани с него, единият е ШИМ работен цикъл, а другият е ШИМ честотата.
Работен цикъл на ШИМ
Както беше казано по-рано, ШИМ сигналът остава включен за определено време и след това остава изключен през останалата част от периода. Това, което прави този PWM сигнал специален и по-полезен, е, че можем да зададем колко дълго да остане включен, като контролираме работния цикъл на PWM сигнала.
Процентът от времето, през което ШИМ сигналът остава ВИСОКИ (навреме) се нарича работен цикъл. Ако сигналът винаги е включен, той е в 100% работен цикъл и ако винаги е изключен, това е 0% работен цикъл. Формулите за изчисляване на работния цикъл са показани по-долу.
Работен цикъл = Време за включване / (Време за включване + Време за изключване)
Следващото изображение представлява ШИМ сигнал с 50% работен цикъл. Както можете да видите, като се има предвид цял период от време (време + изключване), ШИМ сигналът остава включен само за 50% от периода от време.
Честота = 1 / Период от време Период = Време за включване + Време за изключване
Обикновено PWM сигналите, генерирани от микроконтролера, ще бъдат около 500 Hz, такива високи честоти ще се използват във високоскоростни комутационни устройства като инвертори или преобразуватели. Но не всички приложения изискват висока честота. Например за управление на серво мотор трябва да произвеждаме ШИМ сигнали с честота 50Hz, така че честотата на ШИМ сигнал също се контролира от програма за всички микроконтролери.
Някои често възникващи въпроси относно ШИМ
Каква е разликата между работния цикъл и честотата на ШИМ сигнал?
Работният цикъл и честотата на ШИМ сигналите често се объркват. Както знаем PWM сигналът е квадратна вълна с определено време за включване и изключване. Сборът от това време и извън времето се нарича един период от време. Обратното на един период от време се нарича честота. Докато количеството време, в което PWM сигналът трябва да остане включен в един период от време, се определя от работния цикъл на PWM.
Казано по-просто, колко бързо трябва да се включва и изключва ШИМ сигналът се определя от честотата на ШИМ сигнала и в тази скорост колко дълго трябва да остане включен ШИМ сигнала се определя от работния цикъл на ШИМ сигнала.
Как да конвертирате ШИМ сигнали в аналогово напрежение?
За прости приложения като управление на скоростта на постояннотоков двигател или регулиране на яркостта на светодиода, ние трябва да преобразуваме PWM сигналите в аналогово напрежение. Това може лесно да се направи с помощта на RC филтър и обикновено се използва там, където се изисква функция DAC. Веригата за същото е показана по-долу
В графиката, показана по-горе, жълтият цвят е ШИМ сигналът, а синият цветен е изходното аналогово напрежение. Стойността на резистора R1 и кондензатора C1 може да бъде изчислена въз основа на честотата на ШИМ сигнала, но обикновено се използва 5.7K или 10K резистор и 0.1u или 1u кондензатор.
Как да изчислим изходното напрежение на ШИМ сигнала?
Изходното напрежение на ШИМ сигнал след преобразуването му в аналогов ще бъде процентът на работния цикъл. Например, ако работното напрежение е 5V, тогава ШИМ сигналът също ще има 5V, когато е висок. В такъв случай за 100% работен цикъл изходното напрежение ще бъде 5V, за 50% работен цикъл ще бъде 2.5V.
Изходно напрежение = Работен цикъл (%) * 5
Примери:
Преди това сме използвали ШИМ с различни микроконтролери в много от нашите проекти:
- Модулация с широчина на импулса с ATmega32
- ШИМ с Arduino Uno
- Генериране на ШИМ с помощта на микроконтролер PIC
- Урок за PWM на Raspberry Pi
- Серво моторно управление с Raspberry Pi
- Модулация с широчина на импулса (ШИМ) с използване на MSP430G2
- Модулация с широчина на импулса (ШИМ) в STM32F103C8
- Серво моторно управление с Raspberry Pi
- Управление на постояннотоков двигател с Raspberry Pi
- 1 вата LED димер
- LED димер, базиран на Arduino, използващ ШИМ
Допълнително проверете всички проекти, свързани с ШИМ тук.