|
第一:舵機(jī)基本簡(jiǎn)介5 A j) F6 f$ [" ~' s4 A
+ g E6 z; Z8 f3 U 在電子開(kāi)發(fā)過(guò)程中,舵機(jī)是比較常用的電子元器件,價(jià)格也比較便宜,非常好找。金屬齒要比塑料齒要貴些,數(shù)字舵機(jī)比模擬舵機(jī)要貴些。7 E; R% e# _2 \
p, ^/ m, \: F& E- `) Z
舵機(jī)基本原理與使用方法-1.jpg (280.9 KB, 下載次數(shù): 0)
下載附件
保存到相冊(cè)
2022-6-16 14:17 上傳
! \, V3 J: m+ b! y3 l8 M7 T r
[/ s1 j4 J, k& _) d
( P, W }* N' q8 H) t( u% N) R! {) E
0 I' `7 j/ `/ m7 V$ `2 L第二:舵機(jī)的作用1 }! Y" P4 ?" ]( N3 k
在機(jī)器人電控系統(tǒng)中,舵機(jī)控制效果是性能的重要影響因素。舵機(jī)可以在微機(jī)電系統(tǒng)中作為基本的輸出執(zhí)行機(jī)構(gòu),其簡(jiǎn)單的控制和輸出使得單片機(jī)系統(tǒng)非常容易與之對(duì)接。
' ^7 W% \* _7 c" B7 Z, M7 w, G4 R2 ~' J
舵機(jī)基本原理與使用方法-2.jpg (74.63 KB, 下載次數(shù): 1)
下載附件
保存到相冊(cè)
2022-6-16 14:17 上傳
3 S/ W1 Z$ l1 @2 |. E! ~$ {' c
$ M6 y/ ~. ]7 H B 舵機(jī)是一種位置(角度)伺服的驅(qū)動(dòng)器,適用于那些需要角度不斷變化并可以保持的控制系統(tǒng)。目前,在高檔遙控玩具,如飛機(jī)、潛艇模型,遙控機(jī)器人中已經(jīng)得到了普遍應(yīng)用。
. `. A& J; T/ Z& U1 H5 o" V- ]主要用于需要輸出某一控制角度的場(chǎng)合,舵機(jī)可以根據(jù)控制信號(hào)來(lái)輸出指定的角度,常見(jiàn)的有0-90°、0-180°、0-360°,舵機(jī)除了能夠輸出最大角度不同之外,價(jià)格和性能參數(shù)沒(méi)有任何區(qū)別(同一型號(hào)而言)。
' n( `% m b) x$ F- i: E; G5 O0 a+ O1 Q: g+ u; S1 n V
U6 O ?4 X; P3 X N4 t第三:數(shù)字舵機(jī)和模擬舵機(jī)的區(qū)別是什么?模擬舵機(jī)和數(shù)字舵機(jī)接口是否通用?4 u2 y4 l8 Y/ s& z7 J0 n
數(shù)字舵機(jī)(Digital Servo)和模擬舵機(jī)(Analog Servo)在基本的機(jī)械結(jié)構(gòu)方面是完全一樣的,主要由馬達(dá)、減速齒輪、控制電路等組成,而數(shù)字舵機(jī)和模擬舵機(jī)的最大區(qū)別則體現(xiàn)在控制電路上,數(shù)字舵機(jī)的控制電路比模擬舵機(jī)的多了微處理器和晶振。不要小看這一點(diǎn)改變,它對(duì)提高舵機(jī)的性能有著決定性的影響。
6 r! L0 g! Q) Y' `% b0 a①處理接收機(jī)的輸入信號(hào)的方式。' t3 m9 d6 i1 a3 P9 ~0 `; T. ~0 X6 L$ B
②控制舵機(jī)馬達(dá)初始電流的方式,減少無(wú)反應(yīng)區(qū)(對(duì)小量信號(hào)無(wú)反應(yīng)的控制區(qū)域),增加分辨率以及產(chǎn)生更大的固定力量。2 g, R2 S/ C: Y! H Z$ a; A8 P
③實(shí)際應(yīng)用不同,數(shù)字舵機(jī)在位置準(zhǔn)確度方面要高于模擬舵機(jī)。在同樣標(biāo)稱1.6公斤的舵機(jī)面前數(shù)字舵機(jī)在實(shí)際表現(xiàn)中會(huì)感覺(jué)更加“力氣大”而模擬舵機(jī)就會(huì)“肉”點(diǎn)。模擬舵機(jī)由于控制芯片是模擬電路,所以即便是相同型號(hào)的舵機(jī)會(huì)存在小小的性能差異,而數(shù)字舵機(jī)在一致性方面就非常好。( g1 M: q% `5 w2 M" w. o
1 X3 @4 N2 I( s/ M' c: V' L; s8 a8 m7 a6 W; E o$ E& j- L
第四:舵機(jī)的工作原理. x. o( t4 T) E+ Z$ c" \
舵機(jī)主要是由外殼、電路板、驅(qū)動(dòng)馬達(dá)、減速器與位置檢測(cè)元件所構(gòu)成。其工作原理是由接收機(jī)發(fā)出訊號(hào)給舵機(jī),經(jīng)由電路板上的 IC驅(qū)動(dòng)無(wú)核心馬達(dá)開(kāi)始轉(zhuǎn)動(dòng),透過(guò)減速齒輪將動(dòng)力傳至擺臂,同時(shí)由位置檢測(cè)器送回訊號(hào),判斷是否已經(jīng)到達(dá)定位。位置檢測(cè)器其實(shí)就是可變電阻,當(dāng)舵機(jī)轉(zhuǎn)動(dòng)時(shí)電阻值也會(huì)隨之改變,此時(shí)由檢測(cè)電阻值便可知轉(zhuǎn)動(dòng)的角度。一般的伺服馬達(dá)是將細(xì)銅線纏繞在三極轉(zhuǎn)子上,當(dāng)電流流經(jīng)線圈時(shí)便會(huì)產(chǎn)生磁場(chǎng),與轉(zhuǎn)子外圍的磁鐵產(chǎn)生排斥作用,進(jìn)而產(chǎn)生轉(zhuǎn)動(dòng)的作用力。依據(jù)物理學(xué)原理,物體的轉(zhuǎn)動(dòng)慣量與質(zhì)量成正比,因此要轉(zhuǎn)動(dòng)質(zhì)量愈大的物體,所需的作用力也愈大。舵機(jī)為求轉(zhuǎn)速快、耗電小,于是將細(xì)銅線纏繞成極薄的中空?qǐng)A柱體,形成一個(gè)重量極輕的無(wú)極中空轉(zhuǎn)子,并將磁鐵置於圓柱體內(nèi),這就是空心杯馬達(dá)。
+ d8 \, N/ k& J5 j
# R3 ?! o: Y7 H* ~$ t& G- i
. w5 i b& ?. \9 B; c下面咱們針對(duì)具體型號(hào),比如SG90模擬舵機(jī)和MG90S數(shù)字舵機(jī),來(lái)看看這兩者之間的區(qū)別。) A A7 N2 a1 ~6 V& x: e/ L* I
首先,引腳都是兼容的三根線排列一致,分別是GND(棕色)、VCC(紅色)、PWM(黃色),控制方式也是一樣的PWM時(shí)序,具體對(duì)應(yīng)角度如下:
( i9 V5 A0 r: m& P9 H7 l; T" l+ X
; o- x' ~* Z( x3 {$ ^; p, u
舵機(jī)基本原理與使用方法-3.jpg (55.54 KB, 下載次數(shù): 0)
下載附件
保存到相冊(cè)
2022-6-16 14:17 上傳
; m, k$ |+ a% v. C; {( o
6 N+ a) f _9 s3 z; T- ~ 這里要注意,PWM波的頻率不能太高,大約50HZ,即周期0.02s,20ms左右,(為了方便大家使用,筆者已經(jīng)將驅(qū)動(dòng)程序整理好,供大家點(diǎn)擊下載舵機(jī)驅(qū)動(dòng)程序)
1 |. X5 p3 c& k: e2 D, W6 L/ o' r$ N3 ~) \
0 }. n6 a4 [' M所以如果要用12C5A60S2的PCA產(chǎn)生PWM波的話輸出頻率最低只能達(dá)到10khz左右,還是太高,無(wú)法驅(qū)動(dòng)舵機(jī),因此需要使用定時(shí)器來(lái)實(shí)現(xiàn)。實(shí)際波形像下面這樣:
5 f% U# N3 h: v/ w1 B+ h$ e
, o4 W: l1 k' S) \! h5 r2 n% j
舵機(jī)基本原理與使用方法-4.jpg (190.31 KB, 下載次數(shù): 1)
下載附件
保存到相冊(cè)
2022-6-16 14:17 上傳
$ s6 K8 @0 @# H- c& n) ~
& M1 C; j5 U2 r2 R. [# t! F# a
& A+ \+ @) X1 U& C( _; p) T- m6 a! D5 I/ S
9 R* @1 I; U% ^) t7 u) _
為了更加形象地了解pwm波形和輸出角度的對(duì)應(yīng)關(guān)系,我們來(lái)看一張動(dòng)圖,非常形象:4 n& V; j" c# [3 `, s! W- z
# \' v( T/ z) g. {7 B' n
舵機(jī)基本原理與使用方法-5.jpg (49.16 KB, 下載次數(shù): 0)
下載附件
保存到相冊(cè)
2022-6-16 14:17 上傳
+ @1 |" g" F1 p/ o
& f% F7 C: f$ x9 i# m& I
! U& r2 |1 G- ]& S" C6 F B
) \8 r; O7 t& S9 Q, s0 x因?yàn)橐紤]能耗問(wèn)題,所以關(guān)于SG90模擬舵機(jī)和MG90S數(shù)字舵機(jī)工作電流可以分為幾種狀態(tài)。
& B7 D; n% {- z; ^7 E* s! X t# d① 舵機(jī)上電,無(wú)pwm控制信號(hào)
7 y- m e+ z r- ]- E此時(shí)舵機(jī)不工作,靜態(tài)電流均為4mA左右,舵機(jī)不會(huì)自動(dòng)復(fù)位,完全不動(dòng)作。
* g2 w6 w* S d6 O② 舵機(jī)上電,有pwm控制信號(hào),舵機(jī)工作在輸出到指定角度的過(guò)程中 D k2 H/ I% e& M' C
此時(shí)舵機(jī)工作,需要消耗大約300mA的工作電流。
' l) W; H: M0 N" v③舵機(jī)上電,有pwm控制信號(hào),舵機(jī)已工作至指定角度
) ? |2 l8 k2 v i" u此時(shí),舵機(jī)主要工作是維持指定角度,如果無(wú)外力抗拒,則消耗電流較小,SG90大約需要5mA,MG90S大約需要8mA左右。當(dāng)然如果有外力抗拒的話則輸出電流增大以抗拒外力。
* [: ^$ Y- ~2 J3 |% n
8 _/ s8 {( `# p1 K
7 } F$ j, J( l/ E% R& [7 k第五:舵機(jī)是否需要驅(qū)動(dòng)電路?; e6 d7 X* j' |2 E9 P4 w1 n- r4 W
一般來(lái)講,舵機(jī)不需要特別的驅(qū)動(dòng)電路,因?yàn)槎鏅C(jī)內(nèi)部已經(jīng)有驅(qū)動(dòng)電路了,一般單片機(jī)IO口輸出的PWM波都可以驅(qū)動(dòng)舵機(jī)。下圖是12C5A60S2驅(qū)動(dòng)舵機(jī)的電路圖(p1.2沒(méi)用到)。
4 R5 J4 f9 K9 e# y4 `
: n. z7 l" m4 p
舵機(jī)基本原理與使用方法-6.jpg (23.25 KB, 下載次數(shù): 1)
下載附件
保存到相冊(cè)
2022-6-16 14:17 上傳
0 I* ?5 o) @. `# j" Z! E
6 H9 O) j& y% I* J9 E& P$ t1 c* @' H) \. `
- b6 p V1 F3 Z8 o! p7 N& W第六:舵機(jī)代碼實(shí)現(xiàn)參考
7 F8 G7 b7 _- Q+ y% O/ a
% Z- y9 o: t# @; u; `; b! l& u/ L2 w) K7 m0 N
) i9 ]3 y8 i& H$ W9 q9 A! M. _6 U* f9 S9 s3 _4 @+ f
Q+ J% D" w) O& `4 p0 p/ S' B# ^+ b1 @; X/ J
1 d- s* }. G/ B0 M$ V/ X2 m; {1 g, R9 C. V9 w/ k& \/ x4 A, q
) j* U4 N9 p* c; k8 E* ?( q& D: k* ~$ p
3 H9 ~& i; P$ G0 F1 y3 Q# B' `; g! f& r8 K9 g4 U
; g5 A& e* O8 ]/ |" {9 a9 Q! z! [; Y( U) d! i! X" Y
7 Y& m" C8 u, @* |3 C# ?8 J
pwm_init(PWM1_P11, 50, 0); while(1) { pwm_duty(PWM1_P11, 250); //0° delay_ms(1000); pwm_duty(PWM1_P11, 500); //45° delay_ms(1000); pwm_duty(PWM1_P11, 750); //90° delay_ms(1000); pwm_duty(PWM1_P11, 1000); //135° delay_ms(1000); pwm_duty(PWM1_P11, 1250); //180° delay_ms(1000); }# X! u# s' }- }# L: J$ c, Q
( t' [" ~0 F9 ?/ f" ? H; h' M7 P1 C8 } @# n* C
5 [$ d1 x8 `5 t
總結(jié):舵機(jī)是常用的傳感器器件,一般需要采用一個(gè)20ms的時(shí)基脈沖,該脈沖的高電平部分一般為0.5ms-2.5ms范圍內(nèi)的角度控制,總間隔為2ms。多實(shí)踐,方能走的更遠(yuǎn)。 |
|