RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

舵機(jī)PWM信號(hào)介紹,單舵機(jī)拖動(dòng)及調(diào)速算法

GReq_mcu168 ? 來源:CSDN博客 ? 作者:CSDN博客 ? 2020-11-07 11:24 ? 次閱讀

一、舵機(jī)原理簡(jiǎn)述

控制信號(hào)由接收機(jī)的通道進(jìn)入信號(hào)調(diào)制芯片,獲得直流偏置電壓。它內(nèi)部有一個(gè)基準(zhǔn)電路,產(chǎn)生周期為20ms,寬度為1.5ms的基準(zhǔn)信號(hào),將獲得的直流偏置電壓與電位器的電壓比較,獲得電壓差輸出。最后,電壓差的正負(fù)輸出到電機(jī)驅(qū)動(dòng)芯片決定電機(jī)的正反轉(zhuǎn)。當(dāng)電機(jī)轉(zhuǎn)速一定時(shí),通過級(jí)聯(lián)減速齒輪帶動(dòng)電位器旋轉(zhuǎn),使得電壓差為0,電機(jī)停止轉(zhuǎn)動(dòng)。

舵機(jī)的控制一般需要一個(gè)20ms左右的時(shí)基脈沖,該脈沖的高電平部分一般為0.5ms-2.5ms范圍內(nèi)的角度控制脈沖部分,總間隔為2ms。以180度角度伺服為例,那么對(duì)應(yīng)的控制關(guān)系是這樣的:

0.5ms--------------0度;

1.0ms------------45度;

1.5ms------------90度;

2.0ms-----------135度;

2.5ms-----------180度;

(1)舵機(jī)的追隨特性

假設(shè)現(xiàn)在舵機(jī)穩(wěn)定在A點(diǎn),這時(shí)候CPU發(fā)出一個(gè)PWM信號(hào),舵機(jī)全速由A點(diǎn)轉(zhuǎn)向B點(diǎn),在這個(gè)過程中需要一段時(shí)間,舵機(jī)才能運(yùn)動(dòng)到B點(diǎn)。

保持時(shí)間為Tw

當(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í)際過程中w不盡相同,連貫運(yùn)動(dòng)時(shí)的極限△T比較難以計(jì)算出來。

當(dāng)PWM信號(hào)以最小變化量即(1DIV=8us)依次變化時(shí),舵機(jī)的分辨率最高,但是速度會(huì)減慢。

二、舵機(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)的模型上面了。目前 舵機(jī)可能是這個(gè)過渡時(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ī);


其 PWM 格式注意的幾個(gè)要點(diǎn):(1) 上升沿最少為 0.5mS,為 0.5mS---2.5mS 之間;(2) HG14-M 數(shù)字舵機(jī)下降沿時(shí)間沒要求,目前采用 0.5Ms 就行;也就是說 PWM 波形可以是一個(gè)周期 1mS 的標(biāo)準(zhǔn)方波;(3) HG0680 為塑料齒輪模擬舵機(jī),其要求連續(xù)供給 PWM 信號(hào);它也可以輸入一個(gè)周期為 1mS 的標(biāo)準(zhǔn)方波,這時(shí)表現(xiàn)出來的跟隨性能很好、很緊密。

2.PWM信號(hào)控制精度制定

如果采用的是 8 位單片機(jī)AT89C52CPU,其數(shù)據(jù)分辨率為256,那么經(jīng)過舵機(jī)極限參數(shù)實(shí)驗(yàn),得到應(yīng)該將其劃分為 250 份。那么 0.5mS---2.5Ms 的寬度為 2mS = 2000uS。2000uS÷250=8uS,則:PWM 的控制精度為 8us。我們可以以 8uS 為單位遞增控制舵機(jī)轉(zhuǎn)動(dòng)與定位。舵機(jī)可以轉(zhuǎn)動(dòng) 185 度,那么185 度÷250=0.74 度,則:舵機(jī)的控制精度為 0.74 度。


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)過實(shí)際測(cè)試和規(guī)劃,分了 250 份。將 0—185° 分為 250 份,每份 0.74 度??刂扑璧?PWM 寬度為 0.5ms—2.5ms,寬度 2ms。2ms÷250=8us;所以得出:PWM 信號(hào) = 1 度/8us;


(2)舵機(jī)的運(yùn)動(dòng)協(xié)議


運(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ī)的追隨特性


① 舵機(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);△ф = фB - фA △T = △ф÷ω ④ CPU 發(fā)出 B 點(diǎn) PWM 信號(hào)后,應(yīng)該等待一段時(shí)間,利用此時(shí)間舵機(jī)才能轉(zhuǎn)動(dòng)至 B 點(diǎn)。那么,具體的保持(等待)時(shí)間如何來計(jì)算,如下講解:令:保持時(shí)間為 Tw 當(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í)際過程中由于 2 個(gè)因素:① 1 個(gè)機(jī)器人身上有多個(gè)舵機(jī),負(fù)載個(gè)不相同,所以ω不同;② 某個(gè)舵機(jī)在不同時(shí)刻的外界環(huán)境負(fù)載也不同,所以ω不同;則連貫運(yùn)動(dòng)時(shí)的極限△T 難以計(jì)算出來。目前采取的方法是經(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 開通,并開始延時(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)證


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。


5.單舵機(jī)調(diào)速算法


測(cè)試內(nèi)容:將后部下降沿的時(shí)間拉至 30ms 沒有問題,舵機(jī)照樣工作。

將后部下降沿的時(shí)間拉至 10ms 沒有問題,舵機(jī)照樣工作。將后部下降沿的時(shí)間拉至 2.6ms 沒有問題,舵機(jī)照樣工作。將后部下降沿的時(shí)間拉至 500us 沒有問題,舵機(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脈寬


令人質(zhì)疑的地方為 1.1ms 時(shí)的表現(xiàn),得出的 Tw≈ △T;也就是說 1.1ms = 2.467ms,顯然存在問題。經(jīng)過考慮重新觀察 PWM 波形圖發(fā)現(xiàn),電機(jī)真正的啟動(dòng)點(diǎn)如下圖:


實(shí)際上由 A 到 B 的運(yùn)動(dòng)時(shí)間為:△T = Tw +(B 點(diǎn)的)PWM

責(zé)任編輯人:CC

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • PWM
    PWM
    +關(guān)注

    關(guān)注

    114

    文章

    5181

    瀏覽量

    213796
  • 舵機(jī)
    +關(guān)注

    關(guān)注

    17

    文章

    268

    瀏覽量

    41013
  • PWM信號(hào)
    +關(guān)注

    關(guān)注

    3

    文章

    95

    瀏覽量

    20141

原文標(biāo)題:舵機(jī)的原理和控制

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    控制舵機(jī)PWM信號(hào)是單個(gè)的還是連續(xù)的?

    控制舵機(jī)PWM信號(hào)是單個(gè)的還是連續(xù)的?如果是連續(xù)的PWM信號(hào)的,在轉(zhuǎn)過設(shè)定的角度后,PWM不輸
    發(fā)表于 01-08 10:30

    舵機(jī)的基本結(jié)構(gòu)和原理,如何通過PWM信號(hào)控制舵機(jī)

    就是一個(gè)閉環(huán)系統(tǒng),輸入相應(yīng)的信號(hào),就能控制舵機(jī)輸出對(duì)應(yīng)的位置量;伺服控制通過向舵機(jī)信號(hào)信號(hào)線發(fā)送PWM
    發(fā)表于 12-10 17:02

    什么是舵機(jī)?如何通過PWM信號(hào)去控制舵機(jī)?

    什么是舵機(jī)?舵機(jī)的基本結(jié)構(gòu)是怎樣構(gòu)成的?如何通過PWM信號(hào)去控制舵機(jī)?市面上有幾款比較常用的舵機(jī)
    發(fā)表于 07-13 08:24

    智能車舵機(jī)控制算法詳解

    控制信號(hào)由接收機(jī)的通道進(jìn)入信號(hào)調(diào)制芯片,獲得直流偏置電壓。本文介紹舵機(jī)的原理和控制,另外還詳細(xì)介紹了智能車
    的頭像 發(fā)表于 05-11 10:22 ?3w次閱讀
    智能車<b class='flag-5'>舵機(jī)</b>控制<b class='flag-5'>算法</b>詳解

    舵機(jī)是用來干什么的?舵機(jī)信號(hào)線有什么用

    本文首先介紹舵機(jī)的用途和舵機(jī)信號(hào)線的作用,其次介紹舵機(jī)的工作原理和工作電壓和電流,最后
    發(fā)表于 05-11 11:41 ?5.8w次閱讀

    舵機(jī)如何控制_舵機(jī)原理是什么

    本文首先介紹舵機(jī)的工作原理,其次介紹舵機(jī)的控制方法,最后闡述了舵機(jī)的速度控制。
    發(fā)表于 05-11 15:51 ?4.1w次閱讀
    <b class='flag-5'>舵機(jī)</b>如何控制_<b class='flag-5'>舵機(jī)</b>原理是什么

    舵機(jī)控制原理是什么_舵機(jī)的控制方法

    本文首先介紹舵機(jī)工作原理,其次闡述了舵機(jī)控制原理及舵機(jī)的追隨特性,最后介紹舵機(jī)的控制方法和
    的頭像 發(fā)表于 05-30 11:13 ?14.3w次閱讀
    <b class='flag-5'>舵機(jī)</b>控制原理是什么_<b class='flag-5'>舵機(jī)</b>的控制方法

    舵機(jī)原理簡(jiǎn)述!舵機(jī)PWM信號(hào)介紹

    PWM信號(hào)的定義 PWM 信號(hào)為脈寬調(diào)制信號(hào),其特點(diǎn)在于他的上升沿與下降沿之間的時(shí)間寬度。具體的時(shí)間寬窄協(xié)議參考下列講述。我們目前使用的
    的頭像 發(fā)表于 01-02 17:25 ?5.9w次閱讀

    舵機(jī)是什么_數(shù)字舵機(jī)與模擬舵機(jī)有的區(qū)別

    本文首先介紹舵機(jī)的概念,其次介紹舵機(jī)的類型,最后闡述了數(shù)字舵機(jī)與模擬舵機(jī)有的區(qū)別。
    的頭像 發(fā)表于 03-21 09:59 ?2.7w次閱讀

    舵機(jī)的基本結(jié)構(gòu)和原理,以及如何通過PWM信號(hào)控制舵機(jī)

    ? 目錄 什么是舵機(jī)? 伺服控制 硬件連接 舵機(jī)規(guī)格 SG90 MG90S MG996R 總結(jié) 什么是舵機(jī)? 舵機(jī)是伺服電機(jī)的一種,伺服電機(jī)就是帶有反饋環(huán)節(jié)的電機(jī),我們可以通過伺服電機(jī)
    的頭像 發(fā)表于 12-22 17:29 ?2.2w次閱讀

    STM32—TIM3輸出PWM信號(hào)驅(qū)動(dòng)MG996R舵機(jī)(按鍵控制)

    文章目錄**一、前言****二、MG996R舵機(jī)簡(jiǎn)介****三、通用定時(shí)器TIMx****四、TIM3輸出PWM信號(hào)代碼詳解**一、前言利用STM32的TIM3的通道1輸出PWM
    發(fā)表于 11-23 18:21 ?58次下載
    STM32—TIM3輸出<b class='flag-5'>PWM</b><b class='flag-5'>信號(hào)</b>驅(qū)動(dòng)MG996R<b class='flag-5'>舵機(jī)</b>(按鍵控制)

    STM32控制舵機(jī)的方法及實(shí)例

    時(shí)就需要STM32的引腳輸出PWM信號(hào)PWM信號(hào)可以通過定時(shí)器,delay延時(shí)函數(shù)等方式產(chǎn)生。其次,舵機(jī)
    發(fā)表于 12-24 19:30 ?127次下載
    STM32控制<b class='flag-5'>舵機(jī)</b>的方法及實(shí)例

    【K210+micropython】PWM信號(hào)控制舵機(jī)

    【K210+micropython】PWM信號(hào)控制舵機(jī)文章目錄【K210+micropython】PWM信號(hào)控制
    發(fā)表于 01-14 12:28 ?12次下載
    【K210+micropython】<b class='flag-5'>PWM</b><b class='flag-5'>信號(hào)</b>控制<b class='flag-5'>舵機(jī)</b>

    德晟舵機(jī)PWM信號(hào)控制原理

    現(xiàn)在常用的舵機(jī)控制信號(hào)主要有 PWM 信號(hào)和串口總線信號(hào)兩種:其中?PWM?
    的頭像 發(fā)表于 10-16 15:51 ?1181次閱讀
    德晟<b class='flag-5'>舵機(jī)</b><b class='flag-5'>PWM</b><b class='flag-5'>信號(hào)</b>控制原理

    PWM信號(hào)控制舵機(jī)原理

    PWM信號(hào)控制舵機(jī)原理
    發(fā)表于 09-21 09:32 ?4次下載
    RM新时代网站-首页