EKI_Check(Ret:IN,Type:IN,strChannelName[]:IN)– 檢查函數是否有錯誤
Ethernet KRL 會在出現任何錯誤時在 smartHMI 上輸出一條信息??山眯畔⒌淖詣虞敵?。
檢查運行函數時是否出錯:
? 將讀取錯誤編號并在 smartHMI 上輸出相應的信息。
? 可選:如果給出了通道名稱,則在接收數據時會詢問是否存在錯誤參數 .
參數 1 EKI_STATUS
所檢查函數的返回值
參數 2 類型:ENUM
在 smartHMI 上輸出的信息類型:
? #NOTIFY :提示信息
? #STATE:狀態信息
? #QUIT :確認信息
? #WAITING:等待信息
參數 3 (可選) 類型:CHAR應檢查的打開的通道名稱
示例 :EKI_CHECK(RET,#QUIT)
如果自動信息輸出已被禁用,建議用 EKI_CHECK() 檢查在運行函數時是否出錯:
? 將讀取錯誤編號并在 smartHMI 上輸出相應的信息。
? 如果在 EKI_CHECK() 中給出了通道名稱,則在接收數據時會詢問是否存在錯誤。
每次調用 EKI_CHECK() 時將調用程序 KRC:R1TPEthernetKRLEthernetKRL_USER.SRC。在該程序中可編程設定用戶特定的錯誤反應。
EKI_Open RET = EKI_Open(CHAR[]) 打開初始化的通道
當外部系統配置為服務器時,EKI_Open() 會中斷程序運行,直至與外部系統的連接激活為止。
只能用函數 EKI_OPEN() 恢復連接。
EKI 配置為客戶端時,EKI 將與外部系統(= 服務器)連接。
EKI 配置為服務器時,EKI 將等待外部系統 (= 客戶端)的連接問詢。
RET = EKI_Open(通道名稱)
RET 反饋值,類型:EKI_STATUS
示例 RET = EKI_Open("Channel_1")
程序結構:
GLOBALDEFFCTEKI_STATUS EKI_Open(strChannelName[]:IN)
DECLCHAR strChannelName[] 通道的名稱變量聲明
DECLSTATE_T Stat
DECLMODUS_T Mode
DECLEKI_STATUS Ret
Mode= #SYNC 工作模式:一旦伙伴控制器從接收緩沖區中獲取了傳輸的數據,就認為CWRITE語句已執行。
Ret= EKI_NULL_STATUS
CONTINUE
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Open",strChannelName[])
使用”EFC_eki_Open”打開EthernetKRL文件的通道名
Ret.Msg_No= Stat.Msg_No
IF(Ret.Msg_No == 0)THEN 如果反饋狀態信息號是0 就認為連接成功.
Ret.Connected= true
ENDIF
RETURN Ret
ENDFCT
通過命令通道$ FCT_CALL進行通信
CWRITE
觸發器中不能進行CWRITE調用。而是可以在觸發器子程序中使用CWRITE。
CWRITE將數據寫入LD_EXT_OBJ類型的已加載外部模塊。在已加載的LD_EXT_FCT類型的外部模塊中,CWRITE調用一個函數。
CWRITE將命令寫入命令通道$ CMD。
CWRITE通過命令通道$ FCT_CALL調用一個函數。
CWRITE觸發提前運行停止。
CWRITE ( HandleΙ$CMDΙ$FCT_CALL, State, Mode, Format, Var1 < ,?
…, Var10 >)
HandleΙ類型:INT
處理由COPEN傳遞給CWRITE的變量,以標識到外部模塊的通道.
$ CMD預定義句柄變量,用于寫入命令通道$ CMD
$ FCT_CALL預定義句柄變量,用于寫入命令通道$ FCT_CALL
State類型:STATE_T ; 自動返回到CWRITE的狀態
Mode類型:MODUS_T ;必須初始化寫模式。
Format類型:CHAR數組
必須先將變量Var1…Var10轉換為文本字符串,然后才能將其寫入通道。格式定義要生成的文本的格式。必須為每個變量指定一種格式。
Var1 … Var10
其數據寫入通道的變量。每個語句最多可以有10個變量。
對于類型為LD_EXT_FCT和命令通道$ FCT_CALL的外部模塊:變量Var1…Var10包含使用Format調用的函數的傳遞參數。
Format : 讀/寫的“格式”變量
$FCT_CALL
命令通道$ FCT_CALL的管理號(句柄)
CWRITE()函數可用于通過$ FCT_CALL命令通道調用函數。變量本身具有寫保護。
命令通道$ FCT_CALL的功能
使用CWRITE調用命令通道$ FCT_CALL的文件系統功能。進行調用時,必須將功能參數作為Var1…Var10傳送到CWRITE。此外,由CWRITE傳輸的寫入模式必須為#SYNC。
可以從機器人解釋程序或提交解釋程序調用文件系統功能。不允許從一個解釋器打開文件然后從另一個解釋器訪問文件,例如 寫入或再次關閉文件。
原文標題:機器人標準文件的控制 Ethernet KRL
文章出處:【微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
-
機器人
+關注
關注
210文章
28212瀏覽量
206556 -
程序
+關注
關注
116文章
3777瀏覽量
80853 -
DEF
+關注
關注
0文章
13瀏覽量
6235
原文標題:機器人標準文件的控制 Ethernet KRL
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論