基于FPGA的RCN226絕對式編碼器通信接口設計
0 引言
光電碼盤是一種基本的位置、速度檢測反饋單元,非常廣泛地應用于變頻器、直流伺服、交流伺服等系統的閉環控制中。為了減小體積,絕對式編碼器一般采用串行通信方式輸出絕對編碼,針對伺服電機控制等高端場合,為了滿足快速的電流環、速度環、位置環的控制需要,編碼輸出的速度又應該非常快,這些不利因素都對絕對式編碼的接收增加了難度。
絕對式編碼器廠家大多為其編碼器配套了接收芯片,實現串行編碼到并行編碼的轉換,便于控制器的讀取操作。但是此類芯片通常價格比較昂貴,大約占絕對式編碼器價格的四分之一。目前國內外高端交流伺服系統中普遍采用FPGA+DSP結構。DSP用來實現矢量變換和其它算法流程;FPGA用以實現譯碼、A、B、 Z信號輸出、I/O擴展等功能,FPGA中尚有很多資源沒有得到充分利用。本文研制了一種用于交流伺服系統中的基于FPGA的絕對式編碼器智能接口,實現與絕對式編碼器的雙工通信,接收高速數據流,同時在FPGA內部開辟RAM空間,將收到的編碼器數據存入RAM中,DSP可以以訪問內存的方式讀取數據,提高了工作速度。同時,該接口還具有奇偶校驗等糾錯功能,完全可以替代廠家提供的接收芯片,大幅度降低了產品成本。
1 RCN226型絕對式編碼器
國內外絕對式編碼器生產廠商很多,如日本的多摩川精機、德國的海德漢、國產的長春三峰等。其中海德漢的RCN226型絕對式編碼器采用的是海德漢公司專用的EnDat2.2一位置編碼器雙向數字接口,它傳輸的數據類型分為位置值、位置值及附加信息或參數。發送的信息類型由模式指令選擇。模式指令決定被發送信息的內容。每個模式指令包括三個位。為確保可靠發送信息,每個位均采用冗余發送(反相或兩次)。其發送位置值的模式指令為000111。信號傳輸格式如圖1所示。
數據包發送與數據傳輸同步。傳輸周期從第一個時鐘下降沿開始。編碼器保存測量值并計算位置值。兩個時鐘周期后,后續電子設備發送模式指令。編碼器發送位置值后,從起始位開始由編碼器向后續電子設備傳輸數據。后續錯誤位-錯誤1和錯誤2是檢測類信號,用于監測故障。這兩個信號相互獨立地生成,它表示編碼器發生可導致不正確位置值的故障。發生故障的確切原因保存在工作狀態存儲器中,并可被詳細地查詢。
fpga相關文章:fpga是什么
伺服電機相關文章:伺服電機工作原理
評論