System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及ethercat總線驅動控制,具體涉及一種ethercat總線驅動控制器及其同步控制方法。
技術介紹
1、采用ethercat總線的自動化控制場景,當遇到ethercat主站實時性抖動大,task任務耗時嚴重,會導致當前周期未收到位置信息,指令位置突變,進而使電機出現卡頓情況,不能連續平穩運行,嚴重時可能損害設備結構。
技術實現思路
1、本專利技術要解決的技術問題在于克服現有ethercat總線控制過程中難以保證pdi和sync0同步的問題,從而提供一種ethercat總線驅動控制器及其同步控制方法。
2、第一方面,本專利技術公開實施例提供了一種ethercat總線驅動同步控制方法,所述方法由ethercat總線驅動器實現,所述方法包括:
3、確定本周期內接收到pdi位置數據的次數和當前pdi更新狀態值;
4、按照本周期內接收pdi位置數據的次數修改pdi更新計數值,所述pdi更新計數值用于記錄本周期內pdi到來次數,在sync0中斷處理中,若所述pdi更新計數值為0,且所述pdi更新狀態值置0,則本周期內pdi位置數據晚于sync0中斷到來,若所述pdi更新計數值為1,且所述pdi更新狀態值置0,則本周期內pdi位置數據早于sync0中斷準時到來;
5、若本周期內沒有接收到pdi位置數據,且當前pdi更新狀態值為0,則在sync0中斷處理時,基于前三個周期的位置增量數據調用預置曲線補償算法計算本周期位置數據增量,所述前
6、可選地,所述曲線補償算法根據三元二次方程y=ax2+bx+c進行推理曲線補償d,曲線補償d為本周期位置數據增量,其中,a、b、c為系數,x依次代入第三數據存儲區、第四數據存儲區和第五數據存儲區的標號1、2、3,y依次代入第二緩存區內存儲的三個位置數據增量。
7、可選地,在基于前三個周期的位置增量數據調用預置曲線補償算法計算本周期位置數據增量之前,所述方法還包括:從增量雙緩存區的第二緩存區內獲取所述前三個周期的位置增量數據,所述增量雙緩存區還包括第二緩存區,所述第二緩存區包括第三數據存儲區、第四數據存儲區和第五數據存儲區,在本周期開始時,所述第三數據存儲區緩存上上上周期位置數據增量,所述第四數據存儲區緩存上上周期位置數據增量,所述第五數據存儲區緩存上周期位置數據增量,在本周期結束時,所述第三數據存儲區緩存上上周期位置數據增量,所述第四數據存儲區緩存上周期位置數據增量,所述第五數據存儲區緩存本周期位置數據增量,所述第二緩存區按照時間先后順序采用先進先出的存儲方式。
8、可選地,所述增量雙緩存區還包括第一緩存區,所述第一緩存區包括第一數據存儲區和第二數據存儲區,所述第一數據存儲區緩存第一位置增量值,所述第二數據存儲區緩存第二位置增量值,在本周期開始時,所述第一緩存區內容為空,所述方法還包括:若本周期內接收到2次pdi位置數據,第一次為上周期晚到的pdi位置數據,第二次為本周期準時收到的pdi位置數據,且當前pdi更新狀態值為1,則將第一位置增量值設置為本周期內第一次收到的pdi位置數據和上周期的pdi位置數據差值,將第二位置增量值設置為本周期內第二次收到的pdi位置數據與本周期內第一次收到的pdi位置數據的差值;在sync0中斷處理前,將pdi更新狀態值置0,同時將所述第五數據存儲區內的上周期位置數據增量值更新為當前的第一位置增量值;在sync0中斷處理時,按照先進先出的方式將本周期位置數據增量存入所述第五數據存儲區內,并將本周期位置數據增量值設置為當前的第二位置增量值,在本周期結束時,所述第三數據存儲區緩存上上周期位置數據增量,所述第四數據存儲區緩存上周期位置數據增量,所述第五數據存儲區緩存本周期位置數據增量,將第一緩存內容清空。
9、可選地,還包括:若本周期內接收到1次pdi位置數據,且當前pdi更新狀態值為1,接收到的pdi位置數據為晚到的上周期位置數據,則將第一位置增量值設置為上周期位置數據和上上周期位置數據的差值;在sync0中斷處理時,將所述第五數據存儲區內的上周期位置數據增量值更新為當前的第一位置增量值,基于所述第二緩存區的第三數據存儲區、第四數據存儲區和第五數據存儲區內的增量數據,調用預置曲線補償算法計算本周期位置數據增量值,將所述第五數據存儲區的內容按照先進先出的方式更新為本周期位置數據增量,在本周期結束時,所述第三數據存儲區緩存上上周期位置數據增量,所述第四數據存儲區緩存上周期位置數據增量,所述第五數據存儲區緩存本周期位置數據增量,將第一緩存內容清空。
10、可選地,還包括:若本周期內接收到1次pdi位置數據,且當前pdi更新狀態值為0,則將所述第五數據存儲區的內容按照先進先出的方式更新為本周期位置數據增量,本周期位置數據增量為本周期收到的位置數據減去上周期位置數據的差值,在本周期結束時,所述第三數據存儲區緩存上上周期位置數據增量,所述第四數據存儲區緩存上周期位置數據增量,所述第五數據存儲區緩存本周期位置數據增量,將第一緩存內容清空。
11、可選地,調用預置曲線補償算法計算本周期的位置增量值包括:若所述第二緩存區內的3個位置增量分別為a,b,c,將標號1、2、3代入三元二次方程y=ax2+bx+c,有:a+b+c=a,4a+2b+c=b,9a+3b+c=c;通過計算得到a=0.5a+0.5c-b,b=4b-2.5a-1.5c,c=3a-3b+c;將計算結果帶入補償d=16a+4b+c=a+c+c+c-b-b-b。
12、第二方面,本專利技術公開實施例提供了一種ethercat總線驅動器,包括:
13、狀態確定模塊,用于確定本周期內接收到pdi位置數據的次數和當前pdi更新狀態值;
14、數據記錄模塊,用于按照本周期內接收pdi位置數據的次數修改pdi更新計數值,所述pdi更新計數值用于記錄本周期內pdi到來次數,在sync0中斷處理中,若所述pdi更新計數值為0,且所述pdi更新狀態值置0,則本周期內pdi位置數據晚于sync0中斷到來,若所述pdi更新計數值為1,且所述pdi更新狀態值置0,則本周期內pdi位置數據早于sync0中斷準時到來;
15、第一位置確定模塊,用于若本周期內沒有接收到pdi位置數據,且當前pdi更新狀態值為0,則在sync0中斷處理時,基于前三個周期的位置增量數據調用預置曲線補償算法計算本周期位置數據增量,所述前三個周期的位置增量數據包括上上上周期位置數據增量、上上周期位置數據增量和上周期位置數據增量。
16、第三方面,本專利技術公開實施例還提供一種計算機設備,包括:處理器、存儲器和總線,所述存儲器存儲有所述處理器可執行的機器可讀指令,當計算機設備運行時,所述處理器與所述存儲器之間通過總線通信,所述機器可讀指令被所述處理器執行時執行上述第一方面,或第一方面中任一種可能的實施方式中的步驟。本文檔來自技高網...
【技術保護點】
1.一種EtherCAT總線驅動同步控制方法,其特征在于,所述方法由EtherCAT總線驅動器實現,所述方法包括:
2.根據權利要求1所述的EtherCAT總線驅動同步控制方法,其特征在于,所述曲線補償算法根據三元二次方程y=ax2+bx+c進行推理曲線補償D,曲線補償D為本周期位置數據增量,其中,a、b、c為系數,x依次代入第三數據存儲區、第四數據存儲區和第五數據存儲區的標號1、2、3,y依次代入第二緩存區內存儲的三個位置數據增量。
3.根據權利要求2所述的EtherCAT總線驅動同步控制方法,其特征在于,在基于前三個周期的位置增量數據調用預置曲線補償算法計算本周期位置數據增量之前,所述方法還包括:
4.根據權利要求3所述的EtherCAT總線驅動同步控制方法,其特征在于,所述增量雙緩存區還包括第一緩存區,所述第一緩存區包括第一數據存儲區和第二數據存儲區,所述第一數據存儲區緩存第一位置增量值,所述第二數據存儲區緩存第二位置增量值,在本周期開始時,所述第一緩存區內容為空,所述方法還包括:
5.根據權利要求4所述的EtherCAT總線
6.根據權利要求5所述的EtherCAT總線驅動同步控制方法,其特征在于,還包括:
7.根據權利要求6所述的EtherCAT總線驅動同步控制方法,其特征在于,調用預置曲線補償算法計算本周期的位置增量值包括:
8.一種EtherCAT總線驅動器,其特征在于,包括:
9.一種計算機設備,其特征在于,包括:處理器、存儲器和總線,所述存儲器存儲有所述處理器可執行的機器可讀指令,當計算機設備運行時,所述處理器與所述存儲器之間通過總線通信,所述機器可讀指令被所述處理器執行時執行如權利要求1至7中任一項所述EtherCAT總線驅動同步控制方法。
10.一種計算機可讀存儲介質,其特征在于,該計算機可讀存儲介質上存儲有計算機程序,該計算機程序被處理器運行時執行如權利要求1至7中任一項所述EtherCAT總線驅動同步控制方法。
...【技術特征摘要】
1.一種ethercat總線驅動同步控制方法,其特征在于,所述方法由ethercat總線驅動器實現,所述方法包括:
2.根據權利要求1所述的ethercat總線驅動同步控制方法,其特征在于,所述曲線補償算法根據三元二次方程y=ax2+bx+c進行推理曲線補償d,曲線補償d為本周期位置數據增量,其中,a、b、c為系數,x依次代入第三數據存儲區、第四數據存儲區和第五數據存儲區的標號1、2、3,y依次代入第二緩存區內存儲的三個位置數據增量。
3.根據權利要求2所述的ethercat總線驅動同步控制方法,其特征在于,在基于前三個周期的位置增量數據調用預置曲線補償算法計算本周期位置數據增量之前,所述方法還包括:
4.根據權利要求3所述的ethercat總線驅動同步控制方法,其特征在于,所述增量雙緩存區還包括第一緩存區,所述第一緩存區包括第一數據存儲區和第二數據存儲區,所述第一數據存儲區緩存第一位置增量值,所述第二數據存儲區緩存第二位置增量值,在本周期開始時,所述第一緩...
【專利技術屬性】
技術研發人員:韓騰飛,廖志輝,
申請(專利權)人:深圳市杰美康機電有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。