在伺服系統中的串行編碼器通信時數據采集同步的方法
【技術領域】
[0001]本發明涉及一種數據采集同步的方法,特別涉及一種在伺服系統中的串行編碼器通信時數據采集同步的方法。
【背景技術】
[0002]在當前伺服系統中,越來越多的場合需要高精度絕對值編碼器,因為有些場合需要長距離傳輸,編碼器的通信采用串行接口。串行接口在傳輸數據包時需要一定的時間,時間長短取決于數據包長度,波特率等因素。現在伺服電機絕大多數是永磁同步電機,控制策略上采用位置環路,速度環路,轉矩環路的三閉環控制。轉矩環路是伺服系統的內環,該環路響應參數對另外兩個環路有著重要影響。伺服系統轉矩環路是通過控制永磁同步電機的勵磁電流和轉矩電流實現的。需要連續不斷高速對電機繞組中的電流進行采樣,并根據轉子位置進行坐標變換解耦。為了保證繞組電流解耦的準確性,繞組電流的采集和轉子位置的采集需要保證同一時刻,所以設計一種電流數據采集和轉子位置采集的同步方法是必要的。
[0003]中國專利申請號:CN201410059326.1公開日2014年5月21日,公開了一種數據通信設備CPU收發報文保護系統,包含:接口模塊用于接收網絡驅動向CPU發送的協議報文;開關控制模塊分配各個協議對應的固定帶寬,并通過若干個開關函數開關對應的協議;資源分配模塊根據網絡驅動所發送的協議報文,確定各個協議報文的優先級,并給不同的優先級設置對應的權重;報警模塊設置警告閥值,為設定的CPU使用率的報警上限值;本發明還提供一種數據通信設備CPU收發報文保護方法。本發明能夠保證CPU正常的收發包,防止上報CPU的報文數量過多,導致CPU資源被耗盡,造成系統死機;同時,通過查詢CPU的利用率和檢測報文的當前流量,動態調整上報CHJ的帶寬,使得CPU資源得到更有效的利用。但是此技術方案,無法連續不斷高速對電機繞組中的電流進行采樣,不能根據轉子位置進行坐標變換解耦。因此為了保證繞組電流解耦的準確性,繞組電流的采集和轉子位置的采集需要保證同一時刻,
【發明內容】
[0004]本發明的目的在于解決上述現有技術存在無法連續不斷高速對電機繞組中的電流進行采樣,不能根據轉子位置進行坐標變換解耦的問題,提供了一種在伺服系統中的串行編碼器通信時數據采集同步的方法。
[0005]本發明解決其技術問題所采用的技術方案是:一種在伺服系統中的串行編碼器通信時數據采集同步的方法,所述伺服系統包括主機和FPGA、編碼器、隔離變壓器和總線收發器,所述FPGA與所述主機電連接,所述FPGA依次通過總線收發器與隔離變壓器與所述的編碼器通信連接,所述在伺服系統中的串行編碼器通信時數據采集同步的方法包括以下步驟:
[0006]步驟一:主機中的ePWM定時器產生同步信號,主機將同步信號發送給FPGA,
[0007]步驟二:經過延遲之后,主機中的ePWM定時器觸發ADC啟動電流采樣,
[0008]步驟三:FPGA收到DSP發出的同步信號后,向編碼器請求數據,當FPGA根據獲取的編碼器數據準備好后,發出數據準備好信號通知主機,主機開始接受FPGA數據,
[0009]步驟四:主機收到的FPGA數據進行轉子磁場定向運算,當主機的轉子磁場定向運算完成后更改ePWM定時器的寄存器值,
[0010]步驟五:一個在伺服系統中的串行編碼器通信時數據采集同步的控制周期的信號冋步完成。
[0011]采用本發明的方法能夠實現伺服電機的準確轉子磁場定向控制。DSP與FPGA的通信采用SPI同步串行總線,外加DSP發出的同步信號和FPGA發出的數據準備好信號輔助同步。同步信號為DSP發給FPGA的同步信號,該信號的發出由DSP的ePWM定時器觸發發出,再經過一定延遲之后,ePWM定時器觸發ADC啟動采樣。FPGA收到DSP發出的同步信號后,向編碼器請求數據,當FPGA把數據準備好后,會通過數據準備好信號通知DSP,DSP開始接受數據。DSP收到數據后再進行轉子磁場定向運算,運算完成后更改ePWM定時器的寄存器值,一個控制周期的信號同步就此完成。采用本發明的方法,不僅可以連續不斷高速對電機繞組中的電流進行采樣,并同步根據轉子位置進行坐標變換解耦。保證繞組電流的采集和轉子位置的采集需要保證同一時刻,提高了繞組電流解耦的準確性。
[0012]作為優選,所述主機為DSP芯片,所述編碼器為18位絕對值編碼器。
[0013]作為優選,DSP芯片與FPGA的通信采用SPI同步串行總線和2個1口通信。伺服驅動器與編碼器通信采用Hiperface DSL通信協議進行通信。該協議符合目前的RS485標準,傳輸速率達9.216 MBd。數據的傳輸與驅動周期同步,自動同步驅動器周期,實現了驅動器電路的優化,最短周期為12.15ys,減少電纜和布線成本。RS-485是異步串行半雙工通信,接口采用差分方式傳輸,并不需要相對于某個參照點來檢測信號,系統需檢測兩線之間的電位差來識別數據。本方案通過FPGA、RS-485收發器和總線隔離變壓器來實現伺服驅動器與反饋編碼器的接口。DSP作為伺服運算的核心,為了保證高精度的轉子磁場定向控制,需要同步采集電機轉子的位置和電機繞組中的電流數據,DSP與FPGA的接口選用SPI總線外加1 口進行輔助同步通信。FPGA的IPcore實現了反饋編碼器編碼器的通信解碼,包括RS-485數據包的接收以及控制周期的同步。
[0014]作為優選,所述DSP芯片為德州儀器公司F28M35H52C1,所述FPGA為Altera公司EP4CE30F23IN7,所述編碼器為德國西克18位絕對值編碼器EKS36-2KF0A018A,所述總線收發器為為SN65HVD10D型號的RS-485收發器。
[0015]作為優選,觸發啟動ADC電流采樣比同步信號發出需要滯后時間ΔΤ,ΔT為伺服系統電流采樣回路的總延時。
[0016]本發明的實質性效果是:采用本發明的方法,不僅可以連續不斷高速對電機繞組中的電流進行采樣,并同步根據轉子位置進行坐標變換解耦。保證繞組電流的采集和轉子位置的采集需要保證