標(biāo)題: 詳細(xì)的舵機(jī)控制原理資料 [打印本頁(yè)]
作者: dfevfvdvfd 時(shí)間: 2017-3-4 23:13
標(biāo)題: 詳細(xì)的舵機(jī)控制原理資料
目錄
一.舵機(jī)PWM信號(hào)介紹... 1
1.PWM信號(hào)的定義... 1
2.PWM信號(hào)控制精度制定... 2
二.單舵機(jī)拖動(dòng)及調(diào)速算法... 3
1.舵機(jī)為隨動(dòng)機(jī)構(gòu)... 3
(1)HG14-M舵機(jī)的位置控制方法... 3
(2)HG14-M舵機(jī)的運(yùn)動(dòng)協(xié)議... 4
2.目標(biāo)規(guī)劃系統(tǒng)的特征... 5
(1)舵機(jī)的追隨特性... 5
(2)舵機(jī)ω值測(cè)定... 6
(3)舵機(jī)ω值計(jì)算... 6
(4)采用雙擺試驗(yàn)驗(yàn)證... 6
3.DAV的定義... 7
4.DIV的定義... 7
5.單舵機(jī)調(diào)速算法... 8
(1)舵機(jī)轉(zhuǎn)動(dòng)時(shí)的極限下降沿PWM脈寬... 8
三.8舵機(jī)聯(lián)動(dòng)單周期PWM指令算法... 10
1.控制要求... 10
2.注意事項(xiàng)... 10
3.8路PWM信號(hào)發(fā)生算法解析... 11
4.N排序子程序RAM的制定... 12
5.N差子程序解析... 13
6.關(guān)于掃尾問(wèn)題... 14
(1)提出掃尾的概念... 14
(2)掃尾值的計(jì)算... 14
一.舵機(jī)PWM信號(hào)介紹1.PWM信號(hào)的定義PWM信號(hào)為脈寬調(diào)制信號(hào),其特點(diǎn)在于他的上升沿與下降沿之間的時(shí)間寬度。具體的時(shí)間寬窄協(xié)議參考下列講述。我們目前使用的舵機(jī)主要依賴于模型行業(yè)的標(biāo)準(zhǔn)協(xié)議,隨著機(jī)器人行業(yè)的漸漸獨(dú)立,有些廠商已經(jīng)推出全新的舵機(jī)協(xié)議,這些舵機(jī)只能應(yīng)用于機(jī)器人行業(yè),已經(jīng)不能夠應(yīng)用于傳統(tǒng)的模型上面了。
目前,北京漢庫(kù)的HG14-M舵機(jī)可能是這個(gè)過(guò)渡時(shí)期的產(chǎn)物,它采用傳統(tǒng)的PWM協(xié)議,優(yōu)缺點(diǎn)一目了然。優(yōu)點(diǎn)是已經(jīng)產(chǎn)業(yè)化,成本低,旋轉(zhuǎn)角度大(目前所生產(chǎn)的都可達(dá)到185度);缺點(diǎn)是控制比較復(fù)雜,畢竟采用PWM格式。
但是它是一款數(shù)字型的舵機(jī),其對(duì)PWM信號(hào)的要求較低:
(1) 不用隨時(shí)接收指令,減少CPU的疲勞程度;
(2) 可以位置自鎖、位置跟蹤,這方面超越了普通的步進(jìn)電機(jī);
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image002.gif |
其PWM格式注意的幾個(gè)要點(diǎn):
(1) 上升沿最少為0.5mS,為0.5mS---2.5mS之間;
(2) HG14-M數(shù)字舵機(jī)下降沿時(shí)間沒(méi)要求,目前采用0.5Ms就行;也就是說(shuō)PWM波形可以是一個(gè)周期1mS的標(biāo)準(zhǔn)方波;
(3) HG0680為塑料齒輪模擬舵機(jī),其要求連續(xù)供給PWM信號(hào);它也可以輸入一個(gè)周期為1mS的標(biāo)準(zhǔn)方波,這時(shí)表現(xiàn)出來(lái)的跟隨性能很好、很緊密。
2.PWM信號(hào)控制精度制定file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image003.gif
1 DIV = 8uS ;250DIV=2mS
時(shí)基寄存器內(nèi)的數(shù)值為:(#01H)01 ----(#0FAH)250。
共185度,分為250個(gè)位置,每個(gè)位置叫1DIV。
則:185÷250 = 0.74度 / DIV
PWM上升沿函數(shù): 0.5mS + N×DIV
0uS ≤ N×DIV ≤ 2mS
0.5mS ≤ 0.5Ms+N×DIV ≤ 2.5mS
二.單舵機(jī)拖動(dòng)及調(diào)速算法1.舵機(jī)為隨動(dòng)機(jī)構(gòu)(1)當(dāng)其未轉(zhuǎn)到目標(biāo)位置時(shí),將全速向目標(biāo)位置轉(zhuǎn)動(dòng)。
(2)當(dāng)其到達(dá)目標(biāo)位置時(shí),將自動(dòng)保持該位置。
所以對(duì)于數(shù)字舵機(jī)而言,PWM信號(hào)提供的是目標(biāo)位置,跟蹤運(yùn)動(dòng)要靠舵機(jī)本身。
(3)像HG0680這樣的模擬舵機(jī)需要時(shí)刻供給PWM信號(hào),舵機(jī)自己不能鎖定目標(biāo)位置。
所以我們的控制系統(tǒng)是一個(gè)目標(biāo)規(guī)劃系統(tǒng)。
(1)HG14-M舵機(jī)的位置控制方法舵機(jī)的轉(zhuǎn)角達(dá)到185度,由于采用8為CPU控制,所以控制精度最大為256份。目前經(jīng)過(guò)實(shí)際測(cè)試和規(guī)劃,分了250份。具體劃分參見(jiàn)《250份劃分原理》。
將0—185分為250份,每份0.74度。
控制所需的PWM寬度為0.5ms—2.5ms,寬度2ms。
2ms÷250=8us;
所以得出:PWM信號(hào) =1度/8us;
|
|
|
|
|
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image004.gif |
|
| |
|
| | PWM = 0.5 + N×DIV;(DIV=8us)
| |
(2)HG14-M舵機(jī)的運(yùn)動(dòng)協(xié)議
|
|
|
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image007.jpg |
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image008.gif |
|
運(yùn)動(dòng)時(shí)可以外接較大的轉(zhuǎn)動(dòng)負(fù)載,舵機(jī)輸出扭矩較大,而且抗抖動(dòng)性很好,電位器的線性度較高,達(dá)到極限位置時(shí)也不會(huì)偏離目標(biāo)。
2.目標(biāo)規(guī)劃系統(tǒng)的特征(1)舵機(jī)的追隨特性file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image009.gif
① 舵機(jī)穩(wěn)定在A點(diǎn)不動(dòng);
② CPU發(fā)出B點(diǎn)位置坐標(biāo)的PWM信號(hào);
③ 舵機(jī)全速由A點(diǎn)轉(zhuǎn)向B點(diǎn);
④ CPU發(fā)出B點(diǎn)PWM信號(hào)后,應(yīng)該等待一段時(shí)間,利用此時(shí)間舵機(jī)才能轉(zhuǎn)動(dòng)至B點(diǎn)。
那么,具體的保持(等待)時(shí)間如何來(lái)計(jì)算,如下講解:
令:保持時(shí)間為T(mén)w
當(dāng)Tw≥△T時(shí),舵機(jī)能夠到達(dá)目標(biāo),并有剩余時(shí)間;
當(dāng)Tw≤△T時(shí),舵機(jī)不能到達(dá)目標(biāo);
理論上:當(dāng)Tw=△T時(shí),系統(tǒng)最連貫,而且舵機(jī)運(yùn)動(dòng)的最快。
實(shí)際過(guò)程中由于2個(gè)因素:
① 1個(gè)機(jī)器人身上有多個(gè)舵機(jī),負(fù)載個(gè)不相同,所以ω不同;
② 某個(gè)舵機(jī)在不同時(shí)刻的外界環(huán)境負(fù)載也不同,所以ω不同;
則連貫運(yùn)動(dòng)時(shí)的極限△T難以計(jì)算出來(lái)。
目前采取的方法是經(jīng)驗(yàn)選取ω值。
(2)舵機(jī)ω值測(cè)定舵機(jī)的ω值隨時(shí)變化,所以只能測(cè)定一個(gè)平均值,或稱出現(xiàn)概率最高的點(diǎn)。
依據(jù) ① 廠商的經(jīng)驗(yàn)值;
② 采用HG14-M具體進(jìn)行測(cè)試;
測(cè)試實(shí)驗(yàn):① 將CPU開(kāi)通,并開(kāi)始延時(shí)Tw;
② 當(dāng)延時(shí)Tw到達(dá)后,觀察舵機(jī)是否到達(dá)目標(biāo);
測(cè)定時(shí)采用一段雙擺程序,伴隨示波器用肉眼觀察Tw與△T的關(guān)系。
(3)舵機(jī)ω值計(jì)算一般舵機(jī)定為0.16--0.22秒/60度;
取0.2秒/60度>> 1.2秒/360度>> 0.617秒/185度
則ω為360度/1.2秒,2Π/1.2秒
ω=300度/秒
那么185度轉(zhuǎn)動(dòng)的時(shí)間為185度÷360度/1.2秒 = 0.6167秒。
(4)采用雙擺試驗(yàn)驗(yàn)證
|
|
|
|
|
|
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image011.gif |
|
| | 觀察實(shí)驗(yàn)過(guò)程中的Tw與△T的關(guān)系
| |
|
|
| | 發(fā)現(xiàn):當(dāng)Tw定在0.618秒時(shí),利用示波器觀察到舵機(jī)能夠運(yùn)動(dòng)至2個(gè)目標(biāo)點(diǎn)。 則:Tw=△T= 0.618秒
| |
|
|
| | 實(shí)驗(yàn)過(guò)程中,設(shè)定舵機(jī)運(yùn)轉(zhuǎn)的目標(biāo)角度查為185度。
| |
|
|
| |
|
3.DAV的定義將185度的轉(zhuǎn)角分為250個(gè)平均小份。
則:每小份為0.74度。
定義如下:DAV =0.74度
由于:ω = 0.2秒/60度
則:運(yùn)行1 DAV所需時(shí)間為:0.72度÷0.2秒/60度 = 2.4 mS;
4.DIV的定義舵機(jī)電路支持的PWM信號(hào)為0.5mS—2.5mS,總間隔為2mS。
若分為250小份,則2mS÷250 = 0.008 mS = 8uS
定義如下:DIV = 8uS
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image012.gif
那么1 DAV(0.74度)對(duì)應(yīng)的△T為:0.74度÷60度/0.2秒 =2.4 67mS.。
5.單舵機(jī)調(diào)速算法
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image013.gif |
測(cè)試內(nèi)容:將后部下降沿的時(shí)間拉至30ms沒(méi)有問(wèn)題,舵機(jī)照樣工作。
將后部下降沿的時(shí)間拉至10ms沒(méi)有問(wèn)題,舵機(jī)照樣工作。
將后部下降沿的時(shí)間拉至2.6ms沒(méi)有問(wèn)題,舵機(jī)照樣工作。
將后部下降沿的時(shí)間拉至500us沒(méi)有問(wèn)題,舵機(jī)照樣工作。
實(shí)踐檢驗(yàn)出:下降沿時(shí)間參數(shù)可以做的很小。目前實(shí)驗(yàn)降至500uS,依然工作正常。
原因是:(1)舵機(jī)電路自動(dòng)檢測(cè)上升沿,遇上升沿就觸發(fā),以此監(jiān)測(cè)PWM脈寬“頭”。
(2)舵機(jī)電路自動(dòng)檢測(cè)下降沿,遇下降沿就觸發(fā),以此監(jiān)測(cè)PWM脈寬“尾”。
(1)舵機(jī)轉(zhuǎn)動(dòng)時(shí)的極限下降沿PWM脈寬
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image014.gif |
△T:舵機(jī)運(yùn)轉(zhuǎn)1DAV(7.4度)所需要的最小時(shí)間,目前計(jì)算出的數(shù)值為2.467mS;
△T前面的20 mS等待時(shí)間可以省略,舵機(jī)依然工作;而且得出舵機(jī)跟隨的最快驅(qū)動(dòng)方式。
|
|
|
|
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image016.jpg |
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image017.gif |
|
舵機(jī)Tw數(shù)據(jù)實(shí)驗(yàn)表格
| Tw值 | | | | |
| 500us | | | |
|
| 800us | | | |
|
| 1ms | | | |
|
|
| 1.1ms | | | | |
| 1.2ms | | | | |
| 1.6ms | | | | |
| 2ms | | | | |
| 2.6ms | | | | |
| 10ms | | | | |
| 20ms | | | | |
| 30ms | | | | |
| 40ms | | | | |
| 50ms | | | | |
|
| 70ms | | | | |
| 100ms | | | | |
|
|
|
|
|
令人質(zhì)疑的地方為1.1ms時(shí)的表現(xiàn),得出的Tw≈ △T;
也就是說(shuō)1.1ms =2.467ms,顯然存在問(wèn)題。
經(jīng)過(guò)考慮重新觀察PWM波形圖發(fā)現(xiàn),電機(jī)真正的啟動(dòng)點(diǎn)如下圖:
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image018.gif |
實(shí)際上由A到B的運(yùn)動(dòng)時(shí)間為:△T = Tw +(B點(diǎn)的)PWM
三.8舵機(jī)聯(lián)動(dòng)單周期PWM指令算法1.控制要求要求同時(shí)發(fā)給8個(gè)舵機(jī)位置目標(biāo)值,該指令的執(zhí)行周期盡量短,目的有2個(gè):
其一,是為了將來(lái)擴(kuò)充至24舵機(jī);其二,目標(biāo)越快,舵機(jī)的轉(zhuǎn)動(dòng)速度越快;
我們以8路為1組或稱1個(gè)單位,連續(xù)發(fā)出目標(biāo)位置,形成連續(xù)的目標(biāo)規(guī)劃曲線,電機(jī)在跟隨過(guò)程中自然形成了位置與速度的雙指標(biāo)曲線,實(shí)現(xiàn)8路舵機(jī)聯(lián)動(dòng)。
2.注意事項(xiàng)從24個(gè)端口,P0.0、P1.0到P2.0,單DIV循環(huán)的最小時(shí)間只有8us,所以串行運(yùn)算是不行的,那么就采用并行運(yùn)算。
目前采用的并行算法是P0.0—P0.7為一個(gè)基本單位,8位一并。
實(shí)際案例:P1口的8個(gè)位置個(gè)不相同;
| 端口 | | | | | | | | |
| N寄存器 | | | | | | | | |
| 目標(biāo)位置(度) | | | | | | | | |
| N數(shù)值(整數(shù)) | | | | | | | | |
| PWM寬度ms | | | | | | | | |
注意:N為整數(shù),依照上表看出,由于整數(shù)原因,定位不能實(shí)現(xiàn)的有45度、60度等。
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image020.gif |
3.8路PWM信號(hào)發(fā)生算法解析我們預(yù)計(jì)將整個(gè)周期控制在3.5-5ms內(nèi);
由上圖得知:P1口的8個(gè)端在不同時(shí)間產(chǎn)生下降沿。
那么由上例如:我們的P1.5口,他的N為125
那么就需要它在125個(gè)DIV后產(chǎn)生下降沿,時(shí)間為(125*8us=1000us)。
我們?cè)谄渲邪l(fā)現(xiàn)2個(gè)關(guān)鍵參數(shù):①時(shí)間參數(shù)N=125
②邏輯參數(shù) P1.5=#0DFH
邏輯參數(shù)的定義:如下,采用ANL指令,操作P1口。
| | | | | | | | | | | P1.0= # FEH | | | | | | | | |
| | P1.1= # FDH | | | | | | | | |
| | P1.2= # FBH | | | | | | | | |
| | P1.3= # F7H | | | | | | | | |
| | P1.4= # EFH | | | | | | | | |
| | P1.5= # DFH | | | | | | | | |
| | P1.6= # BFH | | | | | | | | |
| | P1.7= # 7FH | | | | | | | | |
|
| |
ANL端口邏輯參數(shù)表
例如:將P1.5口產(chǎn)生下降沿,就將# 0DFH 去“ANL” P1口。
邏輯“ANL”指令,馮“0”得“0”,不影響其他位。
具體的程序操作如下:
① 開(kāi)3.5ms定時(shí)中斷
② 取出8個(gè)端(P1.0-P1.7)的位置值,也就是8個(gè)N值;并賦予相應(yīng)的端邏輯參數(shù);
| M5=N5-N4 M6=N6-N5 M7=N7-N6 M8=N8-N7
| |
| M1=N1 M2=N2-N1 M3=N3-N2 M4=N4-N3
| |
③ 將這8個(gè)值由大到小排列,相應(yīng)端的邏輯參數(shù)值也隨著N的順序排列,一一對(duì)應(yīng);④ 將N值做減法,求得:
⑤ 取出 M1,延時(shí)M1*DIV,ANL相應(yīng)的邏輯參數(shù);
取出 M2,延時(shí)M2*DIV,ANL相應(yīng)的邏輯參數(shù);
取出 M3,延時(shí)M3*DIV,ANL相應(yīng)的邏輯參數(shù);
取出 M4,延時(shí)M4*DIV,ANL相應(yīng)的邏輯參數(shù);
取出 M5,延時(shí)M5*DIV,ANL相應(yīng)的邏輯參數(shù);
取出 M6,延時(shí)M6*DIV,ANL相應(yīng)的邏輯參數(shù);
取出 M7,延時(shí)M7*DIV,ANL相應(yīng)的邏輯參數(shù);
取出 M8,延時(shí)M8*DIV,ANL相應(yīng)的邏輯參數(shù);
⑥ 8個(gè)端的下降沿全部產(chǎn)生完畢,等待一定的Tw值,或等待3.5ms中斷的到來(lái);
⑦ 中斷到來(lái)后,清理中斷標(biāo)志,然后結(jié)束該程序。RET
注意事項(xiàng):當(dāng)進(jìn)行逐個(gè)排序延時(shí)的過(guò)程中,CPU要取出M1、M2、M3….M8,那么會(huì)有1個(gè)取數(shù)指令周期,當(dāng)CPU采用12MHz時(shí)為1us。最終應(yīng)該在第8個(gè)延時(shí),即M8時(shí)扣除掉,具體指令參見(jiàn)指令集。
4.N排序子程序RAM的制定入口處
| | | | | | | | |
| N值寄存器地址 | | | | | | | | |
| ANL邏輯數(shù)寄存器地址 | | | | | | | | |
| ANL邏輯數(shù)值 | | | | | | | | |
|
|
|
|
|
|
|
|
|
備注:37寄存器內(nèi)存放的是P1.7端口的N值;3F寄存器內(nèi)存放的是P1.7端口的ANL邏
輯參數(shù)值;
出口處
從左到右為N值從大到小排列 (大> N值 > 小)
| N值寄存器地址 | | | | | | | | |
| ANL邏輯數(shù)寄存器地址 | | | | | | | | |
| ANL邏輯數(shù)值 | | | | | | | | |
|
|
|
|
|
|
|
|
|
所謂的“未知”:由于排列按照大到小順序,“未知”內(nèi)存放的為端口信息要根據(jù)排序
做相應(yīng)的調(diào)整。
備注:30H內(nèi)存放的是某位的N值,其值最大;
37H內(nèi)存放的是某位的N值,其值最小;
38H—3FH內(nèi)存放ANL數(shù),可以根據(jù)其數(shù)值判斷出是具體那個(gè)端口的下降沿。
例如:其值為“#FBH”那么它就是P1.2;
5.N差子程序解析所謂N差子程序,要觀察PWM口的邏輯時(shí)序特性。要求連續(xù)將8位端口分別產(chǎn)生
下降沿。所以有個(gè)先后問(wèn)題,解決的方法有2種:
①打開(kāi)8個(gè)時(shí)間中斷;
②按先后順序排列,先后觸發(fā);
由于CPU不能開(kāi)啟8個(gè)中斷,所以采用后者方法,那么,就可以得出以下結(jié)論:
第1個(gè) 觸發(fā)位所用的時(shí)間為 N1- 0 =M1;
第2個(gè) 觸發(fā)位所用的時(shí)間為 N2-N1=M2;
第3個(gè) 觸發(fā)位所用的時(shí)間為 N3-N2=M3;
第4個(gè) 觸發(fā)位所用的時(shí)間為 N4-N3=M4;
第5個(gè) 觸發(fā)位所用的時(shí)間為 N5-N4=M5;
第6個(gè) 觸發(fā)位所用的時(shí)間為 N6-N5=M6;
第7個(gè) 觸發(fā)位所用的時(shí)間為 N7-N6=M7;
第8個(gè) 觸發(fā)位所用的時(shí)間為 N8-N7=M8;
大 小
入口:30H 31H 32H 33H 34H 35H 36H 37H
由于上接排序字程序,所以已經(jīng)按照從大到小排列,做減法后差所以全為正數(shù)。
大 - 小
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image021.gif30H - 31H 30H
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image021.gif31H - 32H 31H
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image022.gif32H - 33H 32H
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image023.gif33H - 34H 33H
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image024.gif34H - 35H 34H
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image021.gif35H - 36H 35H
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image021.gif36H - 37H 36H
file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image022.gif37H 37H
調(diào)用延時(shí)程序時(shí),37H最先出,30H最后出。
6.關(guān)于掃尾問(wèn)題(1)提出掃尾的概念我們提出了1個(gè)掃尾的新概念:當(dāng)CPU執(zhí)行完8個(gè)位的下降沿操作后(最多為2.5ms),會(huì)有向下1個(gè)周期過(guò)渡的時(shí)間間隔,其主要為2個(gè)功能:
①保證下降沿的準(zhǔn)確性;
②為舵機(jī)的跟蹤留出足夠的時(shí)間;
當(dāng)PWM信號(hào)以最小變化量即(1DIV=8us)依次變化時(shí),舵機(jī)的分辨率最高,但是速度會(huì)減慢。
例如:先發(fā)一個(gè)PWM信號(hào)N=125,相隔20ms后再發(fā)1個(gè)PWM信號(hào)N=126。那么舵機(jī)在20ms內(nèi)轉(zhuǎn)動(dòng)了0.74度,計(jì)算得出:ω=0.74度/20ms= 37度/秒;
HG14-M舵機(jī)空載時(shí):ω=300度/秒
發(fā)現(xiàn)與最快速度相差8倍之多!
(2)掃尾值的計(jì)算圖中有A點(diǎn)、B點(diǎn),
|
|
|
|
| file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image025.gif |
|
| | 舵機(jī)從PWM_A發(fā)出后開(kāi)始轉(zhuǎn)動(dòng),經(jīng)過(guò)△T時(shí)間后接收完畢PWM_B信號(hào)后,又重新開(kāi)始新的轉(zhuǎn)動(dòng)。
| |
|
| ∵Tw=△T - PWM_ B ∴l(xiāng)imtTw=2.467ms-0.5ms= 1.967ms
| |
PWM處在最小極限長(zhǎng)度時(shí):PWM_A = 0.5ms
PWM_B = 0.5ms
必要條件:△T≥2.467ms
| ∵Tw=△T - PWM_ B ∴l(xiāng)imtTw=2.467ms-2.5ms= -0.033ms
| |
PWM處在最長(zhǎng)極限長(zhǎng)度時(shí):PWM_A = 2.5ms
PWM_B = 2.5ms
必要條件:△T≥2.467ms
為了保證在2種極限情況下舵機(jī)都能正常工作,我們?nèi)(gè)較長(zhǎng)的延時(shí),其經(jīng)驗(yàn)值為2.8ms;這樣舵機(jī)都能正常跟隨而且速度接近最大值,采用中斷法延時(shí)2.8ms。
作者: yeyuaihaozhe 時(shí)間: 2017-9-10 12:17
樓主,可以給個(gè)完整版資料嗎,謝謝
| 歡迎光臨 (http://www.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |