歡迎您訪問河南省猫咪官网社区(hé)自動化係統有限公司官方網(wǎng)站! 控製工程、物聯網、機器人、智能製造
谘詢熱線:0371-60298207 13383812899
您的位置:首頁 > 新聞動態 > 行業動態

LXM28多圈位置溢出功能塊(kuài)的編程與現場調試(二)

發布日期:2022-12-03 11:24:33   來源(yuán):行業動態   瀏覽量:

本文來源於:施家邦 工(gōng)控邦

 

3.功能塊的接口變量如圖所示

創建(jiàn)的【overflow_compensate】功能塊的接口變量,如(rú)圖5所示。

圖片(piàn)

圖5  功能塊的接口變量

 

4.LXM28S多圈位置溢出功能塊的ST程序編寫

雙擊打開【overflow_compensate】的FB功能塊(kuài)編寫程序,功能塊的編程思路就是程(chéng)序不僅記錄正常運行的每次溢出,再利用一個掉電保存(cún)的persistent變量記錄(lù)位(wèi)置溢出的次數,在上電時判斷斷電(diàn)後電機是否發生移動並導致了新的溢出,將兩者的變化量加到一起得到總的溢出次數,並按總(zǒng)的溢出次數做對應補償,然後給伺服軸加上使能後,判斷軸處於停止位置後再使用MC_Setpostion功能塊完成(chéng)位置補(bǔ)償。LXM28S多圈位置(zhì)溢出功能塊的ST程序和注釋如圖(tú)6所(suǒ)示。

圖片

圖(tú)6  LXM28S多圈位置(zhì)溢出功能(néng)塊的ST程序和注釋

 

溢出圈數的補償值有一定的周期性,讀者也可以(yǐ)把每(měi)圈(quān)的補償計算出來,在軸配置參數和模數值不變的前提下,使用Case語句來補償(cháng)也是可以的。

 

功(gōng)能塊編寫完成後要進(jìn)行編譯和糾錯,然後(hòu)在(zài)程(chéng)序中調用即可。

 

5.功能塊的管腳定義

▼  功能塊的輸入(rù)管(guǎn)腳如表1所示。

 

表1 功能塊的輸入管腳

管腳名稱

管腳變量

類型

說明

i_ifAxis

DAL.IF_DeviceAccess

28S的伺服軸

i_diDrivePosition

DINT

28S反饋給M262的位置

i_iP5_82

INT

多圈編碼器的圈數P5-82參數值

i_xP5_82_OK

BOOL

讀取圈數有效

i_diGearIn

UDINT

設置(zhì)成軸配置的(de)GearIn參數

i_diGearOut

UDINT

設置成軸(zhóu)配置的GearOut參數

i_lrPositionResolution

LREAL

設置成軸配置的PositionResolution參(cān)數

i_LrModulo

LREAL

設置成模數值

i_xDirection

BOOL

此處必須設成true,讀者必須確認工作方向是位置遞增方向

i_xPowerEnable

BOOL

伺服使能輸入信號,使能後自(zì)動完成位置補償

i_xHomeDoneFlag

BOOL

使(shǐ)用P8-44鍵盤回原點,完成後將此標(biāo)誌位為真(zhēn)

 

▼  功能塊的輸入輸出管腳,如表2所示。

 

表2 功能塊的輸入輸出(chū)管(guǎn)腳

管腳名(míng)稱

管腳變量

類型

說明

IO_diLastPostion_Persist

DINT

用於記憶(yì)斷電前的28S反饋位置,斷電(diàn)保持變量

IO_iLastP5_82_Persist

INT

用於記憶斷電前的圈數,斷電保持變量

IO_diOverflowTurn_Persist

INT

用於記憶溢出次(cì)數,斷電保持變量

 

▼  功能(néng)塊的輸出管(guǎn)腳,如表3所示。

 

表3 功能塊的(de)輸出管(guǎn)腳

管腳名稱

管腳變量

類型

說明

q_xSercosCommunicationState_OK: 

BOOL

Sercos狀態為4時為真(zhēn),否則為假

q_diPowerOff_EnocoderCounter: 

UDINT

斷電時的(de)編碼器圈(quān)數

q_diPowerUp_EnocoderCounter:

UDINT

上電時的編碼(mǎ)器(qì)圈數

q_xPowerEnabled:

BOOL

28伺(sì)服(fú)的使能參數

q_xRestored:

BOOL

位置補(bǔ)償完成標誌位

 

6.測試平台軟件版本

1. LMCM262和28S的固件版本

 

在實驗室中ESME軟件(jiàn)采用的版本是(shì)2.01,28S的固件測(cè)試為版本2.78.3。

 

2. SoMove調試軟件和DTM版本

 

使用SoMove軟件2.8.4+V1.6.12版本的DTM文件進行了【overflow_compensate】的FB功能塊的調試(shì)。

 

3. Lexiumstudio 調(diào)試軟件版本

 

使用(yòng)lexium studio V1.15.0,主要用於檢查伺服驅動器和電機。

 

7.調試和參數設置(zhì)

 

(1) TM262在線(xiàn)做初(chū)始值複(fù)位或做Reset Persistent Variables時,需要對所有(yǒu)采用功(gōng)能塊的軸重新尋原點,或者使用其它方式複位溢出圈(quān)數值等變量(liàng)。

 

(2) 28S的(de)位置、速(sù)度、同步運動時,注意速度給定(dìng)值不要超(chāo)過P1-55的最大速度值(zhí),筆者對此進行了極限實驗,設置速度(dù)給定值超過了P1-55的最大速度值,實驗結果是28S停機時會失控,斷開(kāi)伺(sì)服使能才能停止電機,同(tóng)時,功能塊存儲的(de)位置也(yě)會失效。

 

(3) 在張江研發實驗室,我對不(bú)同固(gù)件版本也進行了相對實驗,其中,固(gù)件版本2.78.3的28S,多圈編碼器設置原點操作流程與之前(qián)的版(bǎn)本(běn)不(bú)同,需要將參數P8-44設3然後再設2,而之前的版本僅(jǐn)需把P8-44設2即可。

 

(4) 建議(yì)讀(dú)者在程序中采用非周期讀取參數功能塊來讀取P5-82的(de)參數值,此參數雖(suī)然並不(bú)參與控製(zhì),但可以直觀的看出是否錯誤(wù)的設置(zhì)了P5-79=1,因為這個參數可(kě)以讓多圈電機按(àn)單圈電機進行工作(zuò),讀者(zhě)在(zài)使用我創建(jiàn)的(de)這個【overflow_compensate】的FB功能塊時是不能設(shè)置P5-79=1的(de),否則(zé)會導致驅(qū)動器的位置不能保存,應予以重視。

 

往期回顧

LXM28多(duō)圈位置溢出功能(néng)塊的編程(chéng)與現場調試(一)

 

上(shàng)一篇:LXM28多圈位置溢出功能塊(kuài)的編(biān)程與現場調試(三)

下一篇:LXM28多圈位置溢出功(gōng)能塊的編程與現場調試(一)

相關推薦

猫咪官网社区-成版人猫咪APP-猫咪社区在线观看-猫咪社区在线入口