一文解析51單片機(jī)PWM雙舵機(jī)控制
PWM簡介
脈沖寬度調(diào)制是利用微處理器的數(shù)字輸出來對模擬電路進(jìn)行控制的一種非常有效的技術(shù),廣泛應(yīng)用在從測量、通信到功率控制與變換的許多領(lǐng)域中。
脈沖寬度調(diào)制是一種模擬控制方式,其根據(jù)相應(yīng)載荷的變化來調(diào)制晶體管基極或MOS管柵極的偏置,來實(shí)現(xiàn)晶體管或MOS管導(dǎo)通時間的改變,從而實(shí)現(xiàn)開關(guān)穩(wěn)壓電源輸出的改變。這種方式能使電源的輸出電壓在工作條件變化時保持恒定,是利用微處理器的數(shù)字信號對模擬電路進(jìn)行控制的一種非常有效的技術(shù)。
什么是舵機(jī)
舵機(jī)是一種位置(角度)伺服的驅(qū)動器,適用于那些需要角度不斷變化并可以保持的控制系統(tǒng)。舵機(jī)是船舶上的一種大甲板機(jī)械。
本文主要介紹的是51單片機(jī)PWM雙舵機(jī)控制,具體的跟隨小編來了解一下。
51單片機(jī)PWM雙舵機(jī)控制詳解
使用的舵機(jī)——盛輝SG90舵機(jī)(標(biāo)準(zhǔn)版)
盛輝SG90舵機(jī)的工作原理
首先、在這個舵機(jī)的內(nèi)部有一個基準(zhǔn)電壓。如果我們想要控制這個舵機(jī)的轉(zhuǎn)動。那么我們就要通過一定信號線給它一個一定周期的直流偏置電壓。
最終舵機(jī)內(nèi)部會根據(jù)直流偏置電壓與內(nèi)部基準(zhǔn)電壓進(jìn)行比較,獲得電壓差輸出。最后電壓差的正負(fù)輸出到電機(jī)驅(qū)動芯片決定電機(jī)的正反轉(zhuǎn)。
經(jīng)過這樣一個簡單的敘述我們大概知道了該怎么控制舵機(jī)的正反轉(zhuǎn)。
下面我們了解一下該給它什么樣周期的直流偏置電壓呢?
下看一下占空比的概念(圖示):
如上圖:占空比 = t / T;
想要控制舵機(jī),那么我們就需要一個周期T = 20ms。高電平小t等于0.5ms-2.5ms之間的這樣一個方波。
為什么是這個參數(shù)呢?
通過上面的一下基礎(chǔ)概念性的知識我們已經(jīng)大概了解了舵機(jī)的工作原理。接下來讓我們來看一下如果用C51單片機(jī)PWM來調(diào)節(jié)控制它
對于T = 20ms 。我們可以定時器0(方式1)來計(jì)數(shù)。每次0.1ms。如果計(jì)數(shù)達(dá)到200則說明一個周期到了,計(jì)數(shù)清0
補(bǔ)充:
對于t = 0.5ms—–2.5ms我們可以采用全局變量。讓全局變量等于5—25之間,因?yàn)槲业亩鏅C(jī)的一個計(jì)數(shù)周期是0.1ms,這樣全局變量的5—25正好就是0.5ms—2.5ms
有了這個對應(yīng)關(guān)系,那么程序變的簡單起來: