用戶組態(tài)軸的參數(shù),通過(guò)控制面板調(diào)試成功后,就可以開始根據(jù)工藝要求編寫控制程序了。
關(guān)于運(yùn)動(dòng)控制指令有幾點(diǎn)需要說(shuō)明:
1. 打開OB1塊,在Portal軟件右側(cè)“指令”中的“工藝”中找到“運(yùn)動(dòng)控制”指令文件夾,展開“S7-1200 Motion Control”可以看到所有的S7-1200 運(yùn)動(dòng)控制指令。可以使用拖拽或是雙擊的方式在程序段中插入運(yùn)動(dòng)指令,如下圖所示,以MC_Power指令為例,用拖拽方式說(shuō)明如何添加Motion Control指令。
這些Motion Control指令插入到程序中時(shí)需要背景數(shù)據(jù)塊,如下圖所示,可以選擇手動(dòng)或是自動(dòng)生成DB塊的編號(hào)。
添加好背景DB后的MC_Power指令如下圖所示。
『注意』運(yùn)動(dòng)控制指令之間不能使用相同的背景DB,最方便的操作方式就是在插入指令時(shí)讓Portal軟件自動(dòng)分配背景DB塊。
2. 運(yùn)動(dòng)控制指令的背景DB塊在“項(xiàng)目樹”--》“程序塊” --》 “系統(tǒng)塊”--》“程序資源”中找到。用戶在調(diào)試時(shí)可以直接監(jiān)控該DB塊中的數(shù)值,如下圖所示。
3. 每個(gè)軸的工藝對(duì)象都一個(gè)背景DB塊,用戶可以通過(guò)下面的方式打開這個(gè)背景DB塊:
可以對(duì)DB塊中的數(shù)值進(jìn)行監(jiān)控或是讀寫。
以實(shí)時(shí)讀取“軸_1”的當(dāng)前位置為例,如下圖所示,軸_1 的DB塊號(hào)為DB1,用戶可以在OB1 調(diào)用MOVE指令,在MOVE指令的IN端輸入:DB1.Position,則Portal軟件會(huì)自動(dòng)把DB1.Position更新成:“軸_1”.Position。用戶可以在人機(jī)界面上實(shí)時(shí)顯示該軸的實(shí)際位置。
4. 每個(gè)Motion Control指令下方都有一個(gè)黑色三角,展開后可以顯示該指令的所有輸入/輸出管腳。展開后的指令管腳有灰色的,表示該管腳是不經(jīng)常用到的指令管腳。
5. 指令右上角有兩個(gè)快捷按鈕,可以快速切換到軸的工藝對(duì)象參數(shù)配置界面和軸的診斷界面。
下圖是快速切換到診斷界面。
6. 有部分S7-1200 運(yùn)動(dòng)控制指令有一個(gè)Execute觸發(fā)管腳,該管腳需要用上升沿觸發(fā)。上升沿可以有兩種方式:
①用上升沿指令|P|。
②使用常開點(diǎn)指令,但是該點(diǎn)的實(shí)際應(yīng)用中使其成為一個(gè)上升沿信號(hào),例如用戶通過(guò)觸摸屏的按鈕來(lái)操作控制,該按鈕的有效動(dòng)作為上升沿觸發(fā)。
7. 運(yùn)動(dòng)控制指令輸入端“Execute”和輸出端“Done”和“Busy”之間的關(guān)系如下圖所示:
因此,如果用戶用|P|指令觸發(fā)帶有“Execute”管腳的指令,則該指令的“Done”只在一個(gè)掃描周期內(nèi)為1,因此在監(jiān)控程序時(shí)看不到Done位為1。
MC_Power指令
指令名稱:?jiǎn)?dòng)/禁用軸。
功能:使能軸或禁用軸。
使用要點(diǎn):在程序里一直調(diào)用,并且在其他運(yùn)動(dòng)控制指令之前調(diào)用并使能。
輸入端:
①EN:該輸入端是MC_Power指令的使能端,不是軸的使能端。
MC_Power 指令必須在程序里一直調(diào)用,并保證MC_Power指令在其他Motion Control指令的前面調(diào)用。
②Axis:軸名稱
可以有幾種方式輸入軸名稱:
a. 用鼠標(biāo)直接從Portal軟件左側(cè)項(xiàng)目樹中拖拽軸的工藝對(duì)象,如下圖所示:
b. 用鍵盤輸入字符,則Portal軟件會(huì)自動(dòng)顯示出可以添加的軸對(duì)象,如下圖所示:
c. 用拷貝的方式把軸的名稱拷貝到指令上,如下圖所示:
d. 還可以用鼠標(biāo)左鍵點(diǎn)擊“Aixs”,系統(tǒng)會(huì)出現(xiàn)帶可選按鈕的白色長(zhǎng)條框,這時(shí)用鼠標(biāo)點(diǎn)擊“選擇按鈕”,就會(huì)出現(xiàn)下圖中的列表。
③Enable:軸使能端
Enable = 0:根據(jù)組態(tài)的“StopMode”中斷當(dāng)前所有作業(yè)。停止并禁用軸。
Enable = 1:如果組態(tài)了軸的驅(qū)動(dòng)信號(hào),則Enable=1時(shí)將接通驅(qū)動(dòng)器的電源。
④StartMode:軸啟動(dòng)模式
Enable = 0:?jiǎn)⒂梦恢貌皇芸氐亩ㄎ惠S即速度控制模式。
Enable = 1:?jiǎn)⒂梦恢檬芸氐亩ㄎ惠S即位置控制(默認(rèn))
注意:1.使用帶 PTO (Pulse Train Output) 驅(qū)動(dòng)器的定位軸時(shí)忽略該參數(shù)。2. 只有在信號(hào)檢測(cè)(False 變?yōu)?True)期間才會(huì)評(píng)估 StartMode 參數(shù)。
⑤StopMode:軸停止模式
如果禁用軸的請(qǐng)求處于待決狀態(tài),則軸將以組態(tài)的急停減速度進(jìn)行制動(dòng)。軸在變?yōu)殪o止?fàn)顟B(tài)后被禁用。
如果禁用軸的請(qǐng)求處于待決狀態(tài),則會(huì)輸出該設(shè)定值 0,并禁用軸。軸將根據(jù)驅(qū)動(dòng)器中的組態(tài)進(jìn)行制動(dòng),并轉(zhuǎn)入停止?fàn)顟B(tài)。對(duì) 對(duì)于通過(guò) PTO (Pulse Train Output) 的驅(qū)動(dòng)器連接:
禁用軸時(shí),將根據(jù)基于頻率的減速度,停止脈沖輸出:
? 輸出頻率 ≥ 100 Hz
減速度:最長(zhǎng) 30 ms
? 輸出頻率 《 100 Hz
減速度:30 ms;2 Hz 時(shí),最長(zhǎng) 1.5 s
StopMode= 0:緊急停止
StopMode=1:立即停止
StopMode=2:帶有加速度變化率控制的緊急停止:
如果禁用軸的請(qǐng)求處于待決狀態(tài),則軸將以組態(tài)的急停減速度進(jìn)行制動(dòng)。如果激活了加速度變化率控制,會(huì)將已組態(tài)的加速度變化率考慮在內(nèi)。軸在變?yōu)殪o止?fàn)顟B(tài)后被禁用。
輸出端:
⑥ENO:使能輸出
⑦Status:軸的使能狀態(tài)
⑧Busy:標(biāo)記MC_Power指令是否處于活動(dòng)狀態(tài)
⑨Error:標(biāo)記MC_Power指令是否產(chǎn)生錯(cuò)誤
⑩ErrorID:當(dāng)MC_Power指令產(chǎn)生錯(cuò)誤時(shí),用ErrorID表示錯(cuò)誤號(hào)。
?ErrorInfo:當(dāng)MC_Power指令產(chǎn)生錯(cuò)誤時(shí),用ErrorInfo表示錯(cuò)誤信息 。
結(jié)合ErrorID和ErrorInfo數(shù)值,查看手冊(cè)或是Portal 軟件的幫助信息中的說(shuō)明,來(lái)得到錯(cuò)誤原因。
MC_Reset指令
指令名稱:確認(rèn)故障
功能:用來(lái)確認(rèn)“伴隨軸停止出現(xiàn)的運(yùn)行錯(cuò)誤”和“組態(tài)錯(cuò)誤”。
使用要點(diǎn):Execute用上升沿觸發(fā)。
『注意』部分輸入/輸出管腳沒有具體介紹,請(qǐng)用戶參考MC_Power指令中的說(shuō)明。
輸入端:
①EN:該輸入端是MC_Reset指令的使能端。
②Axis:軸名稱。
③Execute:MC_Reset指令的啟動(dòng)位,用上升沿觸發(fā)。
④Restart:
Restart = 0:用來(lái)確認(rèn)錯(cuò)誤。
Restart = 1:將軸的組態(tài)從裝載存儲(chǔ)器下載到工作存儲(chǔ)器(只有在禁用軸的時(shí)候才能執(zhí)行該命令)。
輸出端:除了Done指令,其他輸出管腳同MC_Power指令,這里不再贅述。
⑥D(zhuǎn)one:表示軸的錯(cuò)誤已確認(rèn)。
MC_Home指令
指令名稱:回原點(diǎn)指令
功能:使軸歸位,設(shè)置參考點(diǎn),用來(lái)將軸坐標(biāo)與實(shí)際的物理驅(qū)動(dòng)器位置進(jìn)行匹配。
使用要點(diǎn):軸做絕對(duì)位置定位前一定要觸發(fā)MC_Home指令。
『注意』部分輸入/輸出管腳沒有具體介紹,請(qǐng)用戶參考MC_Power指令中的說(shuō)明。
①Position:位置值
Mode = 1時(shí):對(duì)當(dāng)前軸位置的修正值
Mode = 0,2,3時(shí):軸的絕對(duì)位置值
②Mode:回原點(diǎn)模式值
Mode = 0:絕對(duì)式直接回零點(diǎn),軸的位置值為參數(shù)“Position”的值
Mode = 1:相對(duì)式直接回零點(diǎn),軸的位置值等于當(dāng)前軸位置 + 參數(shù)“Position”的值
Mode = 2:被動(dòng)回零點(diǎn),軸的位置值為參數(shù)“Position”的值
Mode = 3:主動(dòng)回零點(diǎn),軸的位置值為參數(shù)“Position”的值
下面詳細(xì)介紹模式0和模式1.
Mode = 0絕對(duì)式直接回原點(diǎn)
以下圖為例進(jìn)行說(shuō)明。該模式下的MC_Home指令觸發(fā)后軸并不運(yùn)行,也不會(huì)去尋找原點(diǎn)開關(guān)。指令執(zhí)行后的結(jié)果是:軸的坐標(biāo)值更直接新成新的坐標(biāo),新的坐標(biāo)值就是MC_Home指令的“Position”管腳的數(shù)值。例子中,“Position”=0.0mm,則軸的當(dāng)前坐標(biāo)值也就更新成了0.0mm。該坐標(biāo)值屬于“絕對(duì)”坐標(biāo)值,也就是相當(dāng)于軸已經(jīng)建立了絕對(duì)坐標(biāo)系,可以進(jìn)行絕對(duì)運(yùn)動(dòng)。
『優(yōu)點(diǎn)』MC_Home的該模式可以讓用戶在沒有原點(diǎn)開關(guān)的情況下,進(jìn)行絕對(duì)運(yùn)動(dòng)操作。
Mode = 1相對(duì)式直接回原點(diǎn)
與Mode = 0相同,以該模式觸發(fā)MC_Home指令后軸并不運(yùn)行,只是更新軸的當(dāng)前位置值。更新的方式與Mode = 0不同,而是在軸原來(lái)坐標(biāo)值的基礎(chǔ)上加上“Position”數(shù)值后得到的坐標(biāo)值作為軸當(dāng)前位置的新值。如下圖所示,指令MC_Home指令后,軸的位置值變成了210mm.,相應(yīng)的a和c點(diǎn)的坐標(biāo)位置值也相應(yīng)更新成新值。
Mode = 2和Mode = 3參見回原點(diǎn)。
『注意』用戶可以通過(guò)對(duì)變量 《軸名稱》.StatusBits.HomingDone = TRUE與運(yùn)動(dòng)控制指令“MC_Home”的輸出參數(shù) Done = TRUE進(jìn)行與運(yùn)算,來(lái)檢查軸是否已回原點(diǎn)。
是呢環(huán)保局:郭婷
-
plc
+關(guān)注
關(guān)注
5008文章
13151瀏覽量
462063 -
西門子
+關(guān)注
關(guān)注
93文章
3008瀏覽量
115635
原文標(biāo)題:西門子S7-1200運(yùn)動(dòng)控制指令說(shuō)明及重要指令應(yīng)用講解
文章出處:【微信號(hào):直觀學(xué)PLC,微信公眾號(hào):直觀學(xué)PLC】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論