色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

基于STM32的正交編碼器驅(qū)動(dòng)電機(jī)設(shè)計(jì)

西西 ? 來源:博客園 ? 作者:鴿紙 ? 2020-09-10 16:25 ? 次閱讀

1。編碼器原理

什么是正交?如果兩個(gè)信號(hào)相位相差90度,則這兩個(gè)信號(hào)稱為正交。由于兩個(gè)信號(hào)相差90度,因此可以根據(jù)兩個(gè)信號(hào)哪個(gè)先哪個(gè)后來判斷方向。

這里使用了TI12模式,例如當(dāng)T1上升沿,T2在低電平時(shí);T1下降沿,T2在高電平時(shí),向上計(jì)數(shù),這樣的好處是當(dāng)有毛刺產(chǎn)生的時(shí)候,會(huì)自動(dòng)+1 -1過濾掉毛刺。

2。編碼器的中斷

由于編碼器是基于定時(shí)器的,所以編碼器的中斷實(shí)際上就是定時(shí)器的中斷。也就是說定時(shí)器是每隔一定時(shí)間加一個(gè)數(shù)(或減一個(gè)數(shù) ),當(dāng)數(shù)到達(dá)預(yù)設(shè)值時(shí)就產(chǎn)生中斷,而編碼器是每一個(gè)有效脈沖就加一個(gè)數(shù)(或減一個(gè)數(shù) ),當(dāng)數(shù)到達(dá)預(yù)設(shè)值時(shí)就產(chǎn)生中斷。若預(yù)設(shè)值為1000則編碼器與定時(shí)器中斷不同的是,當(dāng)編碼器反轉(zhuǎn)時(shí)值到達(dá)999產(chǎn)生一次中斷,而當(dāng)編碼器正轉(zhuǎn)到達(dá)0時(shí)同 樣產(chǎn)生一次中斷。在硬件上這兩個(gè)中斷是沒法區(qū)分的,這也就造成了有種情況的誤判。

3。STM32編碼器沒有考慮的情況

想象一下,如果編碼器的預(yù)設(shè)值為1000,當(dāng)某次我們使得編碼器正轉(zhuǎn)產(chǎn)生中斷后,立即反轉(zhuǎn)則又該怎么辦呢?根據(jù)上面的說法,這時(shí)候會(huì)產(chǎn)生兩次一樣的中斷。 如果在算法上沒有處理的話,極有可能認(rèn)為是行走了兩次正向。但實(shí)際上并沒有。所以這個(gè)時(shí)候必須結(jié)合方向來判斷行走的情況(判斷方向使用的是DIR寄存器 位)或者在產(chǎn)生中斷后讀一次count寄存器位(看看是999還是0,以此來判斷當(dāng)前的方向)。只有上一次為正且這一次同樣為正,距離才是相加的。

4。STM32f1系列定時(shí)器16位的問題

我用STM32的定時(shí)器3工作于編碼器方式,可以正常得到編碼器位置,但由于現(xiàn)在只有16位計(jì)數(shù),位數(shù)不夠,我想擴(kuò)展到32位,可以先用定時(shí)器內(nèi)部連接,將定時(shí)器3 的溢出送到定時(shí)器2,用定時(shí)器2做高位,在正轉(zhuǎn)的時(shí)候正常,但反向的時(shí)候出錯(cuò)。換了個(gè)思路,做個(gè)每10ms產(chǎn)生一次的中斷,在中斷中調(diào)用下面的代碼,下述代碼中MAX_COUNT是 比 10ms內(nèi)可能出現(xiàn)的計(jì)數(shù)最大值還要大的值,ENCODER_TIM_PERIOD是定時(shí)器的period值,最好比MAX_COUNT大,然后定義一個(gè)32位的有符號(hào)變量,如currentCount,然后每隔10ms執(zhí)行一次currentCount += Enc_GetCount();只需要去讀取currentCount的值就可以得到位移信息了。

s16 Enc_GetCount(void)

{

static u16 lastCount = 0;

u16 curCount = ENCODER_TIM-》CNT;

s32 dAngle = curCount - lastCount;

if(dAngle 》= MAX_COUNT){

dAngle -= ENCODER_TIM_PERIOD;

}else if(dAngle 《 -MAX_COUNT){

dAngle += ENCODER_TIM_PERIOD;

}

lastCount = curCount;

return (s16)dAngle;

}

5。其它一些得到的信息

1.編碼器有個(gè)轉(zhuǎn)速上限,超過這個(gè)上限是不能正常工作的,這個(gè)是硬件的限制,原則上線數(shù)越多轉(zhuǎn)速就越低,這點(diǎn)在選型時(shí)要注意,編碼器的輸出一般是開漏的,所以單片機(jī)的io一定要上拉輸入狀態(tài)。

2.定時(shí)器初始化好以后,任何時(shí)候CNT寄存器的值就是編碼器的位置信息,正轉(zhuǎn)他會(huì)加反轉(zhuǎn)他會(huì)減這部分是不需要軟件干預(yù)的,初始化時(shí)給的TIM_Period 值應(yīng)該是碼盤整圈的刻度值,在減溢出會(huì)自動(dòng)修正為這個(gè)數(shù)。加超過此數(shù)值就回0.

3.如果要擴(kuò)展成多圈計(jì)數(shù)需要溢出中斷,程序上圈計(jì)數(shù)加減方向位就行了。

4.每個(gè)定時(shí)器的輸入腳可以通過軟件設(shè)定濾波

5.應(yīng)用中如果沒有絕對(duì)位置信號(hào)或者初始化完成后還沒有收到絕對(duì)位置信號(hào)前的計(jì)數(shù)只能是相對(duì)計(jì)數(shù)。收到絕對(duì)位置信號(hào)后重新修改一次CNT的值就行了。碼盤一般都有零位置信號(hào),結(jié)合到定時(shí)器捕獲輸入就行。上電以后要往返運(yùn)動(dòng)一下找到這個(gè)位置。

6.即便有濾波計(jì)數(shù)值偶爾也會(huì)有出錯(cuò)誤的情況,一圈多計(jì)一個(gè)或少計(jì)一個(gè)數(shù)都是很正常的特別是轉(zhuǎn)速比較高的時(shí)候尤其明顯,有個(gè)絕對(duì)位置信號(hào)做修正是很有必要的。絕對(duì)位置信號(hào)不需要一定在零位置點(diǎn),收到這個(gè)信號(hào)就將CNT修正為一個(gè)固定的數(shù)值即可。

7.開啟定時(shí)器的輸入中斷可以達(dá)到每個(gè)步計(jì)數(shù)都作處理的效果,但是高速運(yùn)轉(zhuǎn)的時(shí)候你可能處理不過來.

聲明:本文內(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)投訴
  • 編碼器
    +關(guān)注

    關(guān)注

    45

    文章

    3646

    瀏覽量

    134648
  • STM32
    +關(guān)注

    關(guān)注

    2270

    文章

    10904

    瀏覽量

    356338
  • 定時(shí)器
    +關(guān)注

    關(guān)注

    23

    文章

    3250

    瀏覽量

    114914
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    其利天下技術(shù)·伺服電機(jī)編碼器的作用及工作原理·低壓伺服電機(jī)驅(qū)動(dòng)方案開發(fā)

    電機(jī)系統(tǒng)中起著至關(guān)重要的作用,是實(shí)現(xiàn)高效、穩(wěn)定和精確控制的核心組件。編碼器的作用是什么呢?它的工作原理又是怎樣的?其利天下·伺服電機(jī)驅(qū)動(dòng)方案編碼器
    的頭像 發(fā)表于 11-02 10:38 ?336次閱讀
    其利天下技術(shù)·伺服<b class='flag-5'>電機(jī)</b><b class='flag-5'>編碼器</b>的作用及工作原理·低壓伺服<b class='flag-5'>電機(jī)</b><b class='flag-5'>驅(qū)動(dòng)</b>方案開發(fā)

    伺服電機(jī)編碼器種類有哪些?

    在轉(zhuǎn)速為1000 rpm以上,在高負(fù)載下有很好的性能。 這種類型的編碼器具有良好的抗振穩(wěn)定性,在高負(fù)載下保持較高性能。 該類型編碼器可以使用與交流伺服電機(jī)匹配的交流驅(qū)動(dòng)器,例如 PID
    的頭像 發(fā)表于 07-21 17:01 ?1249次閱讀

    旋轉(zhuǎn)編碼器控制電機(jī)速度

    旋轉(zhuǎn)編碼器控制電機(jī)速度
    發(fā)表于 06-24 09:16 ?4次下載

    西門子更換電機(jī)編碼器設(shè)置

    引言 西門子電機(jī)驅(qū)動(dòng)器廣泛應(yīng)用于工業(yè)自動(dòng)化領(lǐng)域,其性能和可靠性得到了廣泛認(rèn)可。 編碼器的作用 編碼器是一種將機(jī)械位置轉(zhuǎn)換為電信號(hào)的傳感
    的頭像 發(fā)表于 06-17 15:10 ?1351次閱讀

    三菱伺服電機(jī)編碼器接線方法

    引言 伺服電機(jī)是一種高精度、高響應(yīng)速度的電機(jī),廣泛應(yīng)用于工業(yè)自動(dòng)化、機(jī)器人、數(shù)控機(jī)床等領(lǐng)域。編碼器作為伺服電機(jī)的重要組成部分,其作用是檢測(cè)電機(jī)
    的頭像 發(fā)表于 06-17 14:11 ?2366次閱讀

    伺服電機(jī)編碼器的作用和功能是什么

    伺服電機(jī)編碼器是伺服電機(jī)系統(tǒng)中的重要組成部分,它的作用和功能對(duì)于整個(gè)系統(tǒng)的穩(wěn)定性、精度和可靠性具有至關(guān)重要的影響。本文將詳細(xì)介紹伺服電機(jī)編碼器
    的頭像 發(fā)表于 06-17 11:09 ?2101次閱讀

    伺服電機(jī)編碼器的型號(hào)怎么看

    伺服電機(jī)編碼器是伺服電機(jī)的重要組成部分,它能夠?qū)?b class='flag-5'>電機(jī)的旋轉(zhuǎn)角度、速度等信息轉(zhuǎn)換為電信號(hào),為控制系統(tǒng)提供精確的位置和速度反饋。 一、伺服電機(jī)
    的頭像 發(fā)表于 06-17 11:07 ?1939次閱讀

    如何判斷伺服電機(jī)編碼器故障?

    伺服電機(jī)編碼器是伺服系統(tǒng)中非常重要的部件,它用于測(cè)量電機(jī)軸的旋轉(zhuǎn)角度和速度,為控制系統(tǒng)提供反饋信號(hào)。如果編碼器出現(xiàn)故障,將直接影響伺服電機(jī)
    的頭像 發(fā)表于 06-17 11:05 ?2661次閱讀

    伺服電機(jī)編碼器怎么判斷好壞

    伺服電機(jī)編碼器是伺服系統(tǒng)中的重要組成部分,其性能的好壞直接影響到伺服系統(tǒng)的精度和穩(wěn)定性。本文將詳細(xì)介紹伺服電機(jī)編碼器的工作原理、性能指標(biāo)、故障診斷方法以及維護(hù)保養(yǎng)措施,幫助用戶更好地判
    的頭像 發(fā)表于 06-17 11:02 ?1492次閱讀

    伺服電機(jī)編碼器線怎么區(qū)分正負(fù)極

    伺服電機(jī)編碼器線是伺服系統(tǒng)中非常重要的一部分,它負(fù)責(zé)將電機(jī)的旋轉(zhuǎn)信息轉(zhuǎn)換為電信號(hào),以實(shí)現(xiàn)對(duì)電機(jī)的精確控制。在伺服電機(jī)
    的頭像 發(fā)表于 06-17 10:58 ?2384次閱讀

    伺服電機(jī)編碼器的原理及使用注意事項(xiàng)

    伺服電機(jī)編碼器作為現(xiàn)代自動(dòng)化系統(tǒng)中不可或缺的組成部分,其性能的優(yōu)劣直接影響到整個(gè)系統(tǒng)的穩(wěn)定性和精確度。本文將對(duì)伺服電機(jī)編碼器的原理進(jìn)行詳細(xì)解析,并列舉使用
    的頭像 發(fā)表于 06-13 14:49 ?1110次閱讀

    伺服電機(jī)編碼器如何調(diào)零

    伺服電機(jī)編碼器調(diào)零是確保電機(jī)精確控制的重要步驟。本文將詳細(xì)介紹伺服電機(jī)編碼器調(diào)零的原理、步驟和注意事項(xiàng),以幫助用戶更好地理解和操作。 伺服
    的頭像 發(fā)表于 06-05 15:41 ?4548次閱讀

    伺服電機(jī)編碼器故障及維修 伺服電機(jī)編碼器調(diào)零對(duì)位方法

    伺服電機(jī)編碼器是用來測(cè)量電機(jī)轉(zhuǎn)動(dòng)角度和速度的重要部件。然而,由于長時(shí)間運(yùn)行、環(huán)境因素等原因,編碼器可能會(huì)出現(xiàn)故障,影響電機(jī)的準(zhǔn)確運(yùn)行。下面
    的頭像 發(fā)表于 02-14 18:06 ?2.9w次閱讀

    磁性編碼器和光電編碼器的比較

    伺服電機(jī)編碼器是一種關(guān)鍵的反饋裝置,用于測(cè)量和控制電機(jī)的轉(zhuǎn)速和位置。在選擇伺服電機(jī)編碼器時(shí),常常面臨一個(gè)選擇:使用磁電
    的頭像 發(fā)表于 01-18 10:29 ?3256次閱讀

    編碼器種類及編碼器原理

    編碼器是一種將機(jī)械運(yùn)動(dòng)轉(zhuǎn)換為數(shù)字電信號(hào)的傳感。當(dāng)駕駛員想要控制電機(jī)旋轉(zhuǎn)時(shí),U、V、W三相電氣輸出驅(qū)動(dòng)電機(jī)運(yùn)行。為了將
    的頭像 發(fā)表于 01-17 17:02 ?1728次閱讀
    <b class='flag-5'>編碼器</b>種類及<b class='flag-5'>編碼器</b>原理
    主站蜘蛛池模板: 婷婷亚洲五月色综合久久| 欧美一级情欲片在线| www在线小视频免费| 中国特级黄色大片| 亚洲午夜精品久久久久久抢| 爽死你个放荡粗暴小淫货漫画| 蜜臀亚洲AV永久无码精品老司机| 久久99国产视频| 红桃视频国产AV| 国产又湿又黄又硬又刺激视频| 国产精品久久久久激情影院 | 俄罗斯孩交精品| 波多结衣一区二区三区| 啊轻点啊再深点视频免费| xxx日本高清视频hd| 爱看吧孕妇网| 丰满老熟女白浆直流| 国产成人精选免费视频| 国产哺乳期奶水avav| 国产精品禁18久久久夂久| 国产精品无码AV天天爽人妻蜜桃| 国产高清视频在线观看97| 国产精品久久久久久久久久久 | 快穿之诱受双性被灌满h| 久拍国产在线观看| 美女医生深夜在家裸睡惨死| 男宿舍里的呻吟h| 日本粉嫩学生毛绒绒| 色女仆影院| 新影音先锋男人色资源网| 亚洲精品国产在线观看| 一边摸一边桶一边脱免费| 在线观看国产亚洲| 99久久re6热精品首页| 大胸美女裸身色诱网站| 国产精品无码人妻在线| 精品人妻伦九区久久AAA片69| 久久久无码精品亚洲欧美| 女人高潮特级毛片| 少妇厨房愉情理9伦片视频| 亚洲高清视频免费|