機器自動化控制器——第三章 軸指令 9
- MC_Stop
- 變量
- ?輸入變量
- ?輸出變量
- ?輸入輸出變量
- 功能說明
- ?指令詳情
- ?時序圖
- ?重啟運動指令
- ?多重啟動運動指令
- ?異常
MC_Stop
- 使軸減速停止。
指令 | 名稱 | FB/ FUN | 圖形表現 | ST表現 |
---|---|---|---|---|
MC_Stop | 強制停止 | FB | ![]() | MC_Stop_instance ( Axis :=《參數》 , Execute :=《參數》 , Deceleration :=《參數》 , Jerk :=《參數》 , BufferMode :=《參數》 , Done =>《參數》 , Busy =>《參數》 , Active =>《參數》 , CommandAborted =>《參數》 , Error =>《參數》 , ErrorID =>《參數》 ); |
變量
?輸入變量
輸入變量 | 名稱 | 數據類型 | 有效范圍 | 初始值 | 內容 |
---|---|---|---|---|---|
Execute | 啟動 | BOOL | TRUE, FALSE | FALSE | 在上升沿開始指令。 |
Deceleration | 減速度 | LREAL | 正數或“0” | 0 | 指定減速度。 單位為[指令單位/s2]。 *1 |
Jerk | 躍度 | LREAL | 正數或“0” | 0 | 指定躍度。 單位為[指令單位/s3]。*1 |
- 1.關于指令單位,請參閱“NJ/NX系列CPU單元用戶手冊運動控制篇(SBCE-363)”或“NY系列工業用平板電腦/工業用臺式電腦用戶手冊運動控制篇(SBCE-379)”的“單位轉換設定”。
- 2.有效范圍為枚舉體的變量,其實際初始值不是數值,而是枚舉元素。
?輸出變量
輸出變量 | 名稱 | 數據類型 | 有效范圍 | 內容 |
---|---|---|---|---|
Done | 完成 | BOOL | TRUE, FALSE | 指令執行完畢時變為TRUE。 |
Busy | 執行中 | BOOL | TRUE, FALSE | 接收指令后變為TRUE。 |
Active | 控制中 | BOOL | TRUE, FALSE | 控制中變為TRUE。 |
CommandAborted | 執行中斷 | BOOL | TRUE, FALSE | 指令中止時,變為TRUE。 |
Error | 錯誤 | BOOL | TRUE, FALSE | 發生異常時變為TRUE。 |
ErrorID | 錯誤代碼 | WORD | *1 | 發生異常時,輸出錯誤代碼。16#0000為正常。 |
-
- 請參閱 “A-1 錯誤代碼一覽(P.A-2)”。
????? 輸出變量的反映時間
變量 | 變為TRUE的時間 | 變為FALSE的時間 |
---|---|---|
Done | 減速停止完成,速度達到“0”時 | ? Execute為TRUE時,與Execute的FALSE同時 ? Execute為FALSE時,1個周期后 |
Busy | Execute的上升沿 | ? Done變為TRUE時 ? Error變為TRUE時 ? CommandAborted變為TRUE時 |
Active | 開始指令后 | ? Done變為TRUE時 ? Error變為TRUE時 ? CommandAborted變為TRUE時 |
CommandAborted | ? 利用其它的MC_Stop(強制停止)指令多重啟動指 令(中斷),中斷本指令時 ? 因發生異常,中止本指令時 ? 發生異常過程中,啟動本指令時 | ? Execute為TRUE時,與Execute的FALSE同時 ? Execute為FALSE時,1個周期后 |
Error | 本指令的啟動條件或輸入參數中含有異常因素時 | 異常已解除時 |
?輸入輸出變量
輸入輸出變量 | 名稱 | 數據類型 | 有效范圍 | 內容 |
---|---|---|---|---|
Axis | 軸 | _sAXIS_REF | - | 指定軸。 *1 |
-
- 請使用在Sysmac Studio的軸基本設定畫面中創建的用戶定義變量的軸變量名稱(默認 “MC_Axis***”)或系統定義變量的 軸變量名稱(_MC_AX[], _MC1_AX[], _MC2_AX[*])。
功能說明
- 使軸由當前速度變為速度“0”,進行減速控制。
- 在Execute(啟動)的上升沿,開始減速停止的動作。
- 因啟動MC_Stop(強制停止)指令而處于運行中的指令執行CommandAborted(執行中斷)。
- 使用注意事項
- 表示軸狀態的Status.ErrorStop(錯誤減速停止中)為TRUE時,無法啟動本指令。
- 錯誤減速停止中使軸動作停止時,請使用MC_ImmediateStop(立即停止)指令。
?指令詳情
- 下面對指令詳細說明。
????? Deceleration(減速度)、Jerk(躍度)的指定
- 減速停止時的減速度、躍度由輸入變量的Deceleration(減速度)、Jerk(躍度)指定。
- 躍度指定為“0”和非“0”時的減速度、速度的關系如下所示。
????躍度為“0”時
- 以減速度Dt生成速度的指令值。
- Vt:減速啟動時的速度、Dt:減速度的指定值、Jt:躍度的指定值 將減速度指定
????? 躍度為非“0”時
- 以減速度的上限為Dt,以當前速度為基點,生成速度的指令值。
-
-
- Vt:減速啟動時的速度、Dt:減速度的指定值、Jt:躍度的指定值
-
- 參考
- 將減速度指定為 “0”時,即為即停指令。不減速而立即停止。僅將減速度指定為 “0”時, 執行立即停止。與[加減速超限]的設定無關。
????? BufferMode(緩存模式選擇)的指定
- 指定前一個軸動作和本次動作的連接方式。
- 本指令的BufferMode(緩存模式選擇)為將來擴展用的保留參數。
- 有以下1種。
緩存模式選擇 | 說明 |
---|---|
中斷 | 立即中止當前執行中的指令,執行本指令。 |
- 關于BufferMode(緩存模式選擇),請參閱“NJ/NX系列 CPU單元 用戶手冊 運動控制篇(SBCE-363)”或“NY系列 工業用平板電腦/工業用臺式電腦 用戶手冊 運動控制篇(SBCE-379)”。
????? 到位檢查
- 利用本指令停止時,不進行到位檢查。
?時序圖
- 在啟動Execute(啟動)的同時,Busy(執行中)變為TRUE。
- 在下一個周期Active(控制中)變為TRUE。
- 速度達到“0”時,Done(完成)變為TRUE。
- 利用其它指令中斷本指令時,CommandAborted(執行中斷)變為TRUE,Busy(執行中)、Active(控制中)變為FALSE。
?重啟運動指令
- 在本指令執行中再次啟動Execute(啟動)時,進行Deceleration(減速度)的變更。
- 重啟運動指令時,不進行Jerk(躍度)的變更。
????? 躍度為非“0”時
- 以當前速度、當前減速度為基點,以變更后減速度的上限為Dt2,生成速度的指令值。
- Vt:減速啟動時的速度、Dt:減速度的指定值、Jt:躍度的指定值
?多重啟動運動指令
*多重啟動運動指令的詳情,請參閱“NJ/NX系列 CPU單元 用戶手冊 運動控制篇(SBCE-363)”或“NY系列 工業用平板電腦/工業用臺式電腦 用戶手冊 運動控制篇(SBCE-379)”。
????? 其它指令執行中的本指令啟動
????軸組動作中
- 指定軸在軸組動作中,執行MC_Stop(強制停止)指令時,軸會發生異常。
- 軸組也發生異常,軸組動作也停止。
????軸變量Status.ErrorStop(錯誤減速停止中)為TRUE時
- 軸發生異常期間,軸變量Status.ErrorStop(錯誤減速停止中)變為TRUE。
- 錯誤減速停止中啟動MC_Stop(強制停止)指令后,無法正常啟動,CommandAborted(執行中斷)變為TRUE。
- 要使發生異常的軸停止,請使用MC_ImmediateStop(立即停止)指令。
????MC_ResetFollowingError(偏差計數器復位)指令執行中
- MC_ResetFollowingError(偏差計數器復位)指令執行中啟動MC_Stop(強制停止)指令時,MC_ResetFollowingError(偏差計數器復位)指令CommandAborted(執行中斷)變為TRUE,執行MC_Stop(強制停止)指令。
- 但是,本指令的Deceleration(減速度)不適用,表現為立即停止。
????? 本指令執行中的其它指令啟動
- 除了利用MC_Stop(強制停止)指令使軸減速停止外,啟動如下指令時,軸變量Status.Stopping(減速停止中)變為TRUE。
- MC_ResetFollowingError(偏差計數器復位)指令
- MC_TouchProbe(啟用外部鎖定)指令的立即停止中其
- 它MC_Stop(強制停止)指令的Execute(啟動)至少一個變為TRUE時
- Status.Stopping(減速停止中)對TRUE的軸表現為如下情形。
- 進行單軸定位、連續動作、同步動作、手動動作時,這些指令的CommandAborted( 執行中斷) 變為TRUE。
- MC_Stop(強制停止)指令執行中啟動MC_ResetFollowingError(偏差計數器復位)指令時,MC_Stop(強制停止)指令的Done(完成)變為TRUE,執行MC_ResetFollowingError(偏差計數器復位)指令。
- 可多重啟動多個MC_Stop(強制停止)指令。執行中的MC_Stop(強制停止)指令的Done(完成)變為TRUE。
- 啟動MC_Stop(強制停止)指令后呈如下狀態時,MC_Stop(強制停止)指令的Done(完成)變為TRUE。
- ? 將MC_Power(可運行)的輸入變量 “Enable(有效)”設為FALSE時(設為伺服OFF時)
- ? MC_TouchProbe(啟用外部鎖定)指令的輸入變量 “StopMode(停止方法選擇)”選擇[1: _mcImmediate Stop]的狀態下,觸發條件成立,歐姆龍伺服驅動器1S系列或G5系列立即停止時
?異常
- 本指令執行中,軸等發生異常時,停止動作。
- 通過軸參數,從立即停止、減速停止、伺服OFF中指定一種停止方法。
- 停止方法指定減速停止時,繼續減速停止動作。
- 關于軸參數停止方法的設定,請參閱“NJ/NX系列 CPU單元 用戶手冊 運動控制篇(SBCE-363)”或“NY系列 工業用平板電腦/工業用臺式電腦 用戶手冊 運動控制篇(SBCE-379)”。
????? 發生異常時的時序圖
- 在執行本指令中發生異常時,Error(錯誤)變為TRUE,軸停止動作。
- 可查看ErrorID(錯誤代碼)的輸出值,了解發生異常的原因。
- 版本相關信息
- 根據CPU單元的版本,異常解除時的動作如下所示。
- 請在軸停止后解除異常。
- 軸動作中無法解除異常。
- Ver.1.10以上版本的CPU單元時解除本指令的異常后,在下一個Execute(啟動)的上升沿才可啟動本指令。
- Ver.1.09以下版本的CPU單元時本指令發生異常時,如果在Execute(啟動)為TRUE的狀態下解除異常,會發生以下動作。
- 如解除了異常原因,則Error(錯誤)變為FALSE、Done(完成)變為TRUE。
- 軸變量Status.Stopping(減速停止中)與正常執行減速停止時一樣,變為TRUE。
- 未解除異常原因時,則本指令將再次變為Error(錯誤),且軸發生異常。
- 解除異常原因時的時序圖如下所示。
????? 錯誤代碼
- 關于指令發生的異常,請參閱“A-1 錯誤代碼一覽(P.A-2)”。