Келгиле, PWM аббревиатурасынын артында эмне бар, ал кандайча иштейт, эмне үчүн иштейт жана аны Arduino менен иштөөдө кандайча колдонсок боло тургандыгын аныктайлы.
Зарыл
- - Arduino;
- - Жарык чыгаруучу диод;
- - 200 Ом каршылыгы бар резистор;
- - компьютер.
Нускамалар
1 кадам
Arduino санарип төөнөгүчтөрү эки гана маани бере алат: логика 0 (LOW) жана logic 1 (HIGH). Ошондуктан алар санарип болуп саналат. Бирок Ардуинонун "өзгөчө" корутундулары бар, алар PWM деп белгиленет. Алар кээде толкундуу "~" сызыгы менен белгиленет же тегеретилген же кандайдыр бир жол менен башкалардан айырмаланган. PWM "Pulse-width modulation" же Pulse Width Modulation, PWM дегенди билдирет.
Импульстун туурасы модуляцияланган сигнал - бул туруктуу жыштыктагы импульстук сигнал, бирок өзгөрүлмө кызмат цикли (импульстун узактыгынын анын кайталануу мезгилине болгон катышы). Жаратылыштагы көпчүлүк физикалык процесстер инерцияга ээ болгондуктан, чыңалуунун 1ден 0го чейин төмөндөшү бир аз орточо мааниге ээ болуп, тегизделет. Жумуш циклин орнотуу менен, сиз PWM өндүрүшүндөгү орточо чыңалууну өзгөртө аласыз.
Эгерде жумуш цикли 100% болсо, анда Arduino санариптик чыгуусунда "1" же 5 вольттук логикалык чыңалуу болот. Эгерде сиз иштөө циклын 50% деп койсоңуз, анда чыгуунун жарымында логикалык "1", ал эми жарымында "0", ал эми орточо чыңалуу 2,5 вольт болот. Жана башка.
Программада жумуш цикли пайыз менен эмес, 0дон 255ке чейинки сан менен белгиленет. Мисалы, "analogWrite (10, 64)" буйругу микроконтроллерге 25 цикл цикл менен сигнал жөнөтүүнү айтат % 10 санариптик PWM чыгуусуна.
Импульстун туурасын модуляциялоо функциясы бар Arduino казыктары болжол менен 500 Гц жыштыкта иштейт. Бул импульстун кайталануу мезгили болжол менен 2 миллисекунданы түзөт, ал сүрөттөгү жашыл вертикалдык соккулары менен өлчөнөт.
Биз аналогдук сигналды санарип чыгарууда окшоштура алабыз! Кызыктуу, туурабы?!
Муну кантип колдонсок болот? Өтүнмөлөр көп! Мисалы, булар LED жарыктыгын башкаруу, кыймылдаткычтын ылдамдыгын башкаруу, транзистордук токту башкаруу, пьезо эмитентинен үн чыгаруу …
2-кадам
Келгиле, эң жөнөкөй мисалды карап көрөлү - жарык диодунун жарыктыгын PWM колдонуп көзөмөлдөө. Классикалык схеманы түзөлү.
3-кадам
"Fade" эскизин мисалдардан ачалы: Файл -> Үлгүлөр -> 01. Негиздери -> Fade.
4-кадам
Келгиле, аны бир аз өзгөртүп, Arduino эс тутумуна жүктөлсүн.
5-кадам
Биз кубатты күйгүзөбүз. Жарык диоду акырындык менен көбөйүп, андан кийин акырындык менен төмөндөйт. Импульстун модуляциясын колдонуп, санарип чыгарууда аналогдук сигналды окшоштурдук.