通過ENDAT接口獲取****編碼器位置
劉琳,陳建平
(上海交通大學(xué)機(jī)械與動(dòng)力工程學(xué)院,上海200240)
摘要:利用DsP的SPI接口實(shí)現(xiàn)與編碼器的通信;而ENDAT接口為數(shù)據(jù)傳輸和信號(hào)發(fā)送提供了便利。通過開機(jī)前獲取****位置值,工作時(shí)讀取增量脈沖,不僅減少了斷電干擾,省去開機(jī)歸零,而且避免了使用大體積碼盤,使得計(jì)算讀取位置值更加簡易,精確。
關(guān)鍵詞:****編碼器;DSP;串行通信
0引 言
伺服系統(tǒng)需要測(cè)量系統(tǒng)為位置和速度控制器提供反饋信號(hào)和電子換向信號(hào)。光電編碼器具有精度高、慣量小、穩(wěn)定性好的優(yōu)點(diǎn),廣泛應(yīng)用于數(shù)控機(jī)床、回轉(zhuǎn)臺(tái)、伺服傳動(dòng)、機(jī)器人、雷達(dá)、軍事目標(biāo)測(cè)定等需要檢測(cè)角度的裝置和設(shè)備中。
旋轉(zhuǎn)式增量編碼器一般需要通過歸零動(dòng)作找到機(jī)械原點(diǎn)后才能進(jìn)行工作,因此使用上有局限性。****編碼器的抗干擾特性和數(shù)據(jù)的可靠性大大提高了。但是當(dāng)****編碼器精度增加,線數(shù)也增加,碼盤增大,導(dǎo)致體積很大,安裝不便,無法在小型伺服系統(tǒng)上使用。電子式****編碼器以內(nèi)置低功耗電路來進(jìn)行位置計(jì)數(shù),采用電池來保持內(nèi)部計(jì)數(shù)值的數(shù)據(jù),不僅體積小巧,而且抗干擾性強(qiáng)。
1 Endat2.2編碼器雙向數(shù)據(jù)接口
本文采用的編碼器是Endat2.2編碼器雙向數(shù)據(jù)接口,即可傳輸****編碼器位置值也可傳輸增量式編碼器位置值,還能傳輸或更新保存在編碼器中的信息或保存新信息。它只需一個(gè)接口就能適用于所有****編碼器和增量式編碼器,方便用于小型電機(jī)和減小系統(tǒng)尺寸。cRc循環(huán)冗余檢驗(yàn)更提高了數(shù)據(jù)傳輸?shù)目煽啃裕瑢?duì)于****編碼器位置值的傳輸十分方便。本文設(shè)計(jì)DsP與****編碼器,通過Endat之間的通信,獲取****位置值。
2數(shù)據(jù)傳輸
2.1初始設(shè)置
設(shè)置DsP的串行外設(shè)接口操作控制寄存器(sPIcTL),使DsP處于主動(dòng)方式工作狀態(tài)。主動(dòng)工作方式中,串行外設(shè)接口時(shí)鐘由DSP串行外設(shè)接口產(chǎn)生并由sPIcLK引腳輸出。該時(shí)鐘信號(hào)用于編碼器同步數(shù)據(jù)傳輸。不傳輸數(shù)據(jù)時(shí),時(shí)鐘信號(hào)默認(rèn)為高電平。
2.2編碼器選型
海德漢提供了多種****編碼器類型,產(chǎn)品主要分為單轉(zhuǎn)和多轉(zhuǎn)以及內(nèi)置定子聯(lián)軸器和分離定子聯(lián)軸器等型號(hào)。輸出方式包括ENDAT和常用的SSI(串行同步傳輸),能夠滿足不同需求。2.3選擇傳輸類型
海德漢的****編碼器傳輸數(shù)據(jù)類型分為位置值和附加信息及參數(shù),需要通過模式指令用以選擇編碼器數(shù)據(jù)傳輸類型。兩個(gè)時(shí)鐘脈沖(2T)后.DSP發(fā)送3位模式指令給****編碼器,來選擇所需的數(shù)據(jù)類型。每位均采用冗余發(fā)送(反向或兩次)。
2.4數(shù)據(jù)格式
1)錯(cuò)誤信息l和2
一旦編碼器發(fā)生可能導(dǎo)致不正確位置值的故障時(shí),它將立即發(fā)出錯(cuò)誤信息;同時(shí)錯(cuò)誤原因保存在編碼器上。為安全起見,必須獨(dú)立產(chǎn)生第二個(gè)錯(cuò)誤檢測(cè)信息。錯(cuò)誤信息2用反相電平發(fā)送。
2)位置值數(shù)據(jù)
位置值數(shù)據(jù)以一個(gè)完整數(shù)據(jù)字形式傳輸,其長度取決予編碼器的分辨率。數(shù)據(jù)發(fā)送從****有效位(LsB)開始(第一個(gè)LsB、。
3)附加信息
根據(jù)發(fā)送類型,可以隨位置值發(fā)送一個(gè)到兩個(gè)附加信息。每條附加信息長度為30bit并以低電平位開始,每條附加信息均以cRc結(jié)束。相應(yīng)碼器所支持的附加信息保存在編碼器參數(shù)中。附加信息包括狀態(tài)信息、地址和數(shù)據(jù)。狀態(tài)數(shù)據(jù)中,wRN一報(bào)警表示編碼器的某公差是否已達(dá)到或超出;RM一參考點(diǎn)表示是否已執(zhí)行參考點(diǎn)回零操作;BusY一參數(shù)請(qǐng)求用于在低電平時(shí)可以請(qǐng)求發(fā)送參數(shù)。
2.5數(shù)據(jù)傳輸過程
編碼器傳輸周期從第一個(gè)時(shí)鐘脈沖下降沿開始。編碼器保存測(cè)量值并計(jì)算位置值。
兩個(gè)時(shí)鐘脈沖(2T)后,DSP發(fā)送模式指令。模式指令用以選擇編碼器數(shù)據(jù)傳輸類型。DsP發(fā)送模式指令給編碼器,編碼器發(fā)送位置值(帶或不帶附加信息)。
編碼器成功計(jì)算****位置值后,由起始位開始由編碼器向DsP傳輸數(shù)據(jù)后續(xù)“錯(cuò)誤位”一“錯(cuò)誤1”和“錯(cuò)誤2”是監(jiān)測(cè)類信號(hào),用于檢測(cè)故障。
然后編碼器從****有效位(LSB)開始發(fā)送****位置值。其長度取決與所用編碼器。發(fā)送一個(gè)位置值所需要的時(shí)鐘脈沖數(shù)保存在編碼器制造商參數(shù)中。
循環(huán)冗余檢驗(yàn)后發(fā)送附加信息1和2。每個(gè)都以cRc結(jié)束。附加信息內(nèi)容由存儲(chǔ)區(qū)選擇決定,并在下個(gè)采樣周期中發(fā)送附