陳 艷,李太平,朱江輝(中國飛行試驗(yàn)研究院,陜西西安,710089)
?
基于CPLD的編碼器數(shù)據(jù)采集裝置研究
陳 艷,李太平,朱江輝
(中國飛行試驗(yàn)研究院,陜西西安,710089)
摘要:絕對式光電編碼器以其可靠性好、精度高的優(yōu)良性能被廣泛應(yīng)用在高精度伺服系統(tǒng)位置檢測中。本文以一種絕對式光電編碼器為研究對象,介紹了光電編碼器的原理,以CPLD為控制器,設(shè)計(jì)了裝置的硬件電路,利用狀態(tài)機(jī),設(shè)計(jì)了裝置的控制策略。實(shí)驗(yàn)結(jié)果表明,設(shè)計(jì)合理、可行。整個(gè)裝置外圍電路少、可靠性高。
關(guān)鍵詞:CPLD,光電編碼器,數(shù)據(jù)采集,狀態(tài)機(jī)
在精密伺服系統(tǒng)控制中,位置的反饋的好壞對于整個(gè)系統(tǒng)的性能起著至關(guān)重要的作用。由于絕對式光電編碼器可靠性好、精度高,在伺服系統(tǒng)位置檢測領(lǐng)域占據(jù)著一席之地。隨著電子芯片技術(shù)的迅猛發(fā)展,復(fù)雜可編程邏輯器件(CPLD)以其可靠性高、處理邏輯能力強(qiáng)的特點(diǎn)廣泛的應(yīng)用于航天、航空等各個(gè)領(lǐng)域。本文以CPLD為控制器,設(shè)計(jì)了一種BiSS接口的絕對式光電編碼器數(shù)據(jù)讀入方法。
如圖1所示,是數(shù)據(jù)讀入設(shè)備的硬件整體架構(gòu)。CPLD發(fā)送一個(gè)時(shí)鐘刷,經(jīng)調(diào)理電路,時(shí)鐘轉(zhuǎn)換成差分信號(hào),激勵(lì)光電編碼器傳回當(dāng)前的位置數(shù)據(jù)。此位置數(shù)據(jù)符合BiSS接口規(guī)范,經(jīng)調(diào)理電路,將數(shù)據(jù)轉(zhuǎn)化為串行數(shù)據(jù)。CPLD接收數(shù)據(jù),并轉(zhuǎn)化為相應(yīng)的并行數(shù)據(jù)。
圖1 數(shù)據(jù)讀入的整體架構(gòu)
1.1光電編碼器與BiSS接口
在高精度伺服系統(tǒng)中,絕對式光電編碼器作為位置反饋裝置,其精度高、可靠性好。本設(shè)計(jì)選用的是Hengstler公司的BiSS接口編碼器AC36 。BiSS(Bidirectional Synchronous Serial Interface,簡稱BiSS)是一種標(biāo)準(zhǔn)的接口,用于控制器與光電編碼器之間的數(shù)據(jù)傳輸。
BiSS接口時(shí)序如圖2所示。整個(gè)協(xié)議分為兩個(gè)部分:時(shí)鐘刷、數(shù)據(jù)。當(dāng)光電編碼器接收到時(shí)鐘刷時(shí),發(fā)出此時(shí)的位置數(shù)據(jù)。此數(shù)據(jù)遵守BiSS協(xié)議。即: 1位的起始位,12位的位置數(shù)據(jù),2位狀態(tài)位,6位CRC校驗(yàn)位與1位多周期數(shù)據(jù)(MCD)。
圖2 BiSS接口時(shí)序
1.2CPLD
CPLD是整個(gè)設(shè)備的控制器。考慮到系統(tǒng)需要進(jìn)行復(fù)雜的邏輯運(yùn)算,選用CPLD——EPM7128AE。它發(fā)出時(shí)鐘刷,接收串行的光電編碼器數(shù)據(jù),并將串行數(shù)據(jù)轉(zhuǎn)化成并行數(shù)據(jù),并進(jìn)行校驗(yàn)。
1.3信號(hào)調(diào)理電路
由于CPLD輸出的為CMOS電平,而光電編碼器需要TTL電平,因此需要電平轉(zhuǎn)換電路。信號(hào)調(diào)理電路如圖3所示。
信號(hào)調(diào)理電路將光電編碼器與CPLD隔離,并將CPLD發(fā)出的時(shí)鐘刷轉(zhuǎn)化成差分信號(hào),并將光電編碼器反饋回的位置數(shù)據(jù)的差分信號(hào)轉(zhuǎn)化為CPLD能過接收的CMOS電平信號(hào)。
圖3 信號(hào)調(diào)理電路
數(shù)據(jù)讀入分為兩個(gè)部分:時(shí)鐘刷生成和串行數(shù)據(jù)處理。
2.1時(shí)鐘刷生成
為了得到如圖2所示的時(shí)鐘刷,將baud_clk時(shí)鐘64分頻,再將baud_clk與div_by_64相或,生成BiSS所需的時(shí)鐘刷。其生成原理圖如圖4所示。
圖4 時(shí)鐘發(fā)送原理圖
其中:baud_clk:時(shí)鐘刷的波特率時(shí)鐘
div_by_64:將baud_clk時(shí)鐘64分頻后時(shí)鐘
2.2串行數(shù)據(jù)處理
串行數(shù)據(jù)處理的狀態(tài)機(jī)如圖5所示。
圖5 串行數(shù)據(jù)處理狀態(tài)機(jī)
其中:
IDLE:空閑狀態(tài)READY:準(zhǔn)備狀態(tài)
START:開始狀態(tài)RECEIVE:數(shù)據(jù)接收狀態(tài)
STOP:停止?fàn)顟B(tài)CRC:校驗(yàn)狀態(tài)
OUTDAT:數(shù)據(jù)輸出狀態(tài)Clk_R:時(shí)鐘刷到達(dá)信號(hào)
Sta_R:開始位到達(dá)信號(hào)Sta_Over:數(shù)據(jù)接收觸發(fā)
Rec_Over:數(shù)據(jù)接收結(jié)束
St_Over:停止?fàn)顟B(tài)結(jié)束
Eur:錯(cuò)誤信號(hào)
Right:正常信號(hào)
一般情況下,處于空閑狀態(tài),當(dāng)CPLD發(fā)出時(shí)鐘刷的下降沿,觸發(fā)Clk_R信號(hào),進(jìn)入READY狀態(tài),并在此狀態(tài)等待,當(dāng)檢測到串行數(shù)據(jù)的開始位,發(fā)出Sta_R信號(hào),進(jìn)入START狀態(tài),在一個(gè)波特率時(shí)鐘后,進(jìn)入RECEIVE狀態(tài),在此狀態(tài)下,系統(tǒng)讀入串行數(shù)據(jù),并放入移位器,并用波特率時(shí)鐘觸發(fā)移位器移位,當(dāng)數(shù)據(jù)接收狀態(tài)完成時(shí),進(jìn)入STOP狀態(tài),檢測到時(shí)鐘刷結(jié)束,進(jìn)入CRC狀態(tài),進(jìn)行CRC校驗(yàn),如果數(shù)據(jù)錯(cuò)誤,進(jìn)入IDLE狀態(tài),準(zhǔn)備下次數(shù)據(jù)讀入。如果數(shù)據(jù)正確,進(jìn)入OUTDAT狀態(tài),此時(shí)將處理好的有效數(shù)據(jù)輸出給DSP備用。
如圖6所示,是BiSS時(shí)鐘刷仿真時(shí)序。
在圖6中,baud_clk為時(shí)鐘輸入信號(hào),經(jīng)過時(shí)鐘發(fā)送的處理,生成時(shí)鐘刷clk_out,從而激發(fā)光電編碼器發(fā)出串行數(shù)據(jù)。
數(shù)據(jù)讀入時(shí)序仿真圖如圖7所示。
在圖7中,RXD是輸入的無刷電機(jī)角位置串行數(shù)據(jù),經(jīng)過數(shù)據(jù)接收模塊后,將其轉(zhuǎn)化為12位并行數(shù)據(jù)addr。從而實(shí)現(xiàn)位置反饋的檢測。
圖6 BiSS時(shí)鐘刷仿真時(shí)序
圖7 數(shù)據(jù)接收模塊時(shí)序仿真圖
采用CPLD作為電路的控制器,設(shè)計(jì)了絕對式光電編碼器的數(shù)據(jù)讀入硬件電路。用狀態(tài)機(jī)的方法設(shè)計(jì)了數(shù)據(jù)讀入的程序。由于采用CPLD,系統(tǒng)能夠并行處理數(shù)據(jù)。減小了位置反饋的延遲時(shí)間,簡化了外圍電路,提高了系統(tǒng)的可靠性。
參考文獻(xiàn)
[1]高長清,林輝, 張輝. BiSS接口的光電編碼器數(shù)據(jù)讀出研究[J] 計(jì)算機(jī)測量與控制. 2009.5
[2]J. O. Krah,Software Resolver to Digital Converter for High Performance Servo Drives. PCIM Power Conversion Intelligent Motion, Nürnberg, June 1999,pp. 301-308.
[3] Hengstler, www.Hengstler.com
[4]Jens Onno Krah, Resource Optimized BiSS Master Interfacefor High Resolution Encoders, PCIM EUROPE 2006 ? PROCEEDINGS
[5]Hengstler, ACURO – SSI / BiSS Technical Datasheet Interface
陳艷(1983-),女,新疆烏魯木齊人,碩士,工程師,主要研究方向?yàn)闄C(jī)載試飛測試技術(shù)、電氣系統(tǒng)試飛技術(shù)。
Research of Data Read Device for Optical encoder Based on CPLD
Chen Yan,Li Taiping,Zhu Jianghui
(Chinese Flight Test Establishment,Xi’an,China)
Abstract:As an important position feedback device,the absolute optical encoder is widely used in servo system.In the paper,a data read device based on CPLD is designed.Using the state machine,the control strategy of the data read device is designed.The experimental results show that the performance of the data read device is excellent.
Keywords:CPLD;photoelectric encoder;data acquisition;state machine
作者簡介