歡迎(yíng)您訪問河南省鲁大师官方网站自動化係統有限公司官方網站! 控製工程、物聯網、機(jī)器人、智能製造
谘詢熱線:0371-60298207 13383812899

LXM28多圈位置(zhì)溢出功能塊的編程與現場調(diào)試(二)

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

本文來源於:施家邦 工控邦

 

3.功能(néng)塊的接口變量如圖所示

創建的【overflow_compensate】功能塊的(de)接口變量,如圖5所示。

圖片(piàn)

圖5  功能塊的接口變(biàn)量

 

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

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

圖片

圖6  LXM28S多圈位置溢出功能塊(kuài)的ST程序和注釋

 

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

 

功能塊編寫完(wán)成後要(yào)進行編譯和糾錯,然後在程序(xù)中調用即可。

 

5.功能塊的管腳定義

▼  功能塊的輸入管腳如表1所示。

 

表1 功能塊的輸入管腳

管腳名稱

管腳變量(liàng)

類型

說明(míng)

i_ifAxis

DAL.IF_DeviceAccess

28S的伺服軸

i_diDrivePosition

DINT

28S反饋給M262的位置

i_iP5_82

INT

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

i_xP5_82_OK

BOOL

讀取圈數有效(xiào)

i_diGearIn

UDINT

設置成軸配置的GearIn參數

i_diGearOut

UDINT

設置成軸配置的GearOut參數(shù)

i_lrPositionResolution

LREAL

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

i_LrModulo

LREAL

設(shè)置(zhì)成模(mó)數值

i_xDirection

BOOL

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

i_xPowerEnable

BOOL

伺服使能(néng)輸入(rù)信號,使能後自動完成位置補償

i_xHomeDoneFlag

BOOL

使用P8-44鍵盤回原點,完成後將此標誌位為真

 

▼  功能塊(kuài)的輸入輸出管腳,如表2所(suǒ)示。

 

表2 功能(néng)塊的輸入輸出管腳

管腳名稱

管腳變(biàn)量

類型

說明

IO_diLastPostion_Persist

DINT

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

IO_iLastP5_82_Persist

INT

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

IO_diOverflowTurn_Persist

INT

用於記憶溢出次數,斷電保持變量

 

▼  功能塊(kuài)的輸出管腳,如表3所示。

 

表3 功能塊的輸出管腳

管腳名稱

管腳變量

類型(xíng)

說明(míng)

q_xSercosCommunicationState_OK: 

BOOL

Sercos狀態為4時為真,否則為假

q_diPowerOff_EnocoderCounter: 

UDINT

斷電時(shí)的編碼器圈數

q_diPowerUp_EnocoderCounter:

UDINT

上電時的編碼器圈數

q_xPowerEnabled:

BOOL

28伺服的使能參數

q_xRestored:

BOOL

位置(zhì)補償完成標誌位

 

6.測試平(píng)台軟件版本

1. LMCM262和28S的固件(jiàn)版本

 

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

 

2. SoMove調試軟件和DTM版本

 

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

 

3. Lexiumstudio 調試軟(ruǎn)件版本

 

使用lexium studio V1.15.0,主(zhǔ)要用於檢查伺服驅動器和電機(jī)。

 

7.調試和參數設置

 

(1) TM262在線做初始值(zhí)複(fù)位或做Reset Persistent Variables時,需要對所有采用功能塊的軸重新尋原點,或者使用其它方式(shì)複(fù)位溢出圈(quān)數(shù)值等變量。

 

(2) 28S的位置、速度、同步運動時,注意速度給定值不(bú)要超過P1-55的最大(dà)速度值,筆者對此進行了極限實驗,設置速度給定值超過了P1-55的最大速度值,實驗結果是28S停機時會失(shī)控,斷開伺服使(shǐ)能才能停止電機,同時,功能(néng)塊存儲的位置也會失效。

 

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

 

(4) 建議讀者在程序中采用非(fēi)周(zhōu)期讀取參數功(gōng)能塊(kuài)來讀取P5-82的參數值,此參數雖然並不參與控製,但可以(yǐ)直觀(guān)的看出是否錯誤的設置了P5-79=1,因為這個參數可以讓多圈電機按單圈電機進行工(gōng)作,讀者在使用(yòng)我創建的這個【overflow_compensate】的FB功能塊時是(shì)不能設置P5-79=1的,否則會導致驅動器的位置不能保(bǎo)存,應予以重視。

 

往(wǎng)期回顧

LXM28多圈(quān)位置溢出功能塊的編程與現(xiàn)場調試(一)

 

上一篇:LXM28多圈位置溢(yì)出功能塊的編程與現場調試(三)

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

相關(guān)推薦

鲁大师官方网站-鲁大师免费观看日韩-鲁大师免费mv在线观看网站-鲁大师APP免费下载