DEFEthernetKRL()文件機(jī)器人程序中的設(shè)置:
EKI_Check(Ret:IN,Type:IN,strChannelName[]:IN)–檢查函數(shù)是否有錯(cuò)誤
EthernetKRL會(huì)在出現(xiàn)任何錯(cuò)誤時(shí)在smartHMI上輸出一條信息。可禁用信息的自動(dòng)輸出。
檢查運(yùn)行函數(shù)時(shí)是否出錯(cuò):
?將讀取錯(cuò)誤編號(hào)并在smartHMI上輸出相應(yīng)的信息。
?可選:如果給出了通道名稱(chēng),則在接收數(shù)據(jù)時(shí)會(huì)詢(xún)問(wèn)是否存在錯(cuò)誤參數(shù).
參數(shù)1EKI_STATUS
所檢查函數(shù)的返回值
分揀機(jī)器人碼垛系統(tǒng)參數(shù)2類(lèi)型:ENUM
在smartHMI上輸出的信息類(lèi)型:
?#NOTIFY:提示信息
?#STATE:狀態(tài)信息
?#QUIT:確認(rèn)信息
?#WAITING:等待信息
參數(shù)3類(lèi)型:CHAR應(yīng)檢查的打開(kāi)的通道名稱(chēng)
掃碼分揀機(jī)器人設(shè)計(jì)示例:EKI_CHECK(RET,#QUIT)
如果自動(dòng)信息輸出已被禁用,建議用EKI_CHECK()檢查在運(yùn)行函數(shù)時(shí)是否出錯(cuò):
?將讀取錯(cuò)誤編號(hào)并在smartHMI上輸出相應(yīng)的信息。
?如果在EKI_CHECK()中給出了通道名稱(chēng),則在接收數(shù)據(jù)時(shí)會(huì)詢(xún)問(wèn)是否存在錯(cuò)誤。
每次調(diào)用EKI_CHECK()時(shí)將調(diào)用程序KRC:R1TPEthernetKRLEthernetKRL_。在該程序中可編程設(shè)定用戶(hù)特定的錯(cuò)誤反應(yīng)。
EKI_OpenRET=EKI_Open(CHAR[])打開(kāi)初始化的通道
當(dāng)外部系統(tǒng)配置為服務(wù)器時(shí),EKI_Open()會(huì)中斷程序運(yùn)行,直至與外部系統(tǒng)的連接激活為止。
只能用函數(shù)EKI_OPEN()恢復(fù)連接。
EKI配置為客戶(hù)端時(shí),EKI將與外部系統(tǒng)連接。
EKI配置為服務(wù)器時(shí),EKI將等待外部系統(tǒng)的連接問(wèn)詢(xún)。
RET=EKI_Open(通道名稱(chēng))
RET反饋值,類(lèi)型:EKI_STATUS
示例RET=EKI_Open("Channel_1")
程序結(jié)構(gòu):
GLOBALDEFFCTEKI_STATUSEKI_Open(strChannelName[]:IN)
DECLCHARstrChannelName[]通道的名稱(chēng)變量聲明
DECLSTATE_TStat
DECLMODUS_TMode
DECLEKI_STATUSRet
Mode=#SYNC工作模式:一旦伙伴控制器從接收緩沖區(qū)中獲取了傳輸?shù)臄?shù)據(jù),就認(rèn)為CWRITE語(yǔ)句已執(zhí)行。
Ret=EKI_NULL_STATUS
CONTINUE
CWRITE($FCT_CALL,Stat,Mode,"EFC_eki_Open",strChannelName[])
使用”EFC_eki_Open”打開(kāi)EthernetKRL文件的通道名
_No=_No
IF(_No==0)THEN如果反饋狀態(tài)信息號(hào)是0就認(rèn)為連接成功.
=true
ENDIF
RETURNRet
ENDFCT
通過(guò)命令通道$FCT_CALL進(jìn)行通信
CWRITE
物流分揀機(jī)器人設(shè)計(jì)方案觸發(fā)器中不能進(jìn)行CWRITE調(diào)用。而是可以在觸發(fā)器子程序中使用CWRITE。
CWRITE將數(shù)據(jù)寫(xiě)入LD_EXT_OBJ類(lèi)型的已加載外部模塊。在已加載的LD_EXT_FCT類(lèi)型的外部模塊中,CWRITE調(diào)用一個(gè)函數(shù)。
中國(guó)快遞分揀機(jī)器人系統(tǒng)CWRITE將命令寫(xiě)入命令通道$CMD。
CWRITE通過(guò)命令通道$FCT_CALL調(diào)用一個(gè)函數(shù)。
CWRITE觸發(fā)提前運(yùn)行停止。
CWRITE(HandleΙ$CMDΙ$FCT_CALL,State,Mode,Format,Var1,
…,Var10)
HandleΙ類(lèi)型:INT
快遞分揀機(jī)器人名稱(chēng)處理由COPEN傳遞給CWRITE的變量,以標(biāo)識(shí)到外部模塊的通道.
$CMD預(yù)定義句柄變量,用于寫(xiě)入命令通道$CMD
$FCT_CALL預(yù)定義句柄變量,用于寫(xiě)入命令通道$FCT_CALL
State類(lèi)型:STATE_T;自動(dòng)返回到CWRITE的狀態(tài)
Mode類(lèi)型:MODUS_T;必須初始化寫(xiě)模式。
Format類(lèi)型:CHAR數(shù)組
必須先將變量Var1…Var10轉(zhuǎn)換為文本字符串,然后才能將其寫(xiě)入通道。格式定義要生成的文本的格式。必須為每個(gè)變量指定一種格式。
Var1…Var10
其數(shù)據(jù)寫(xiě)入通道的變量。每個(gè)語(yǔ)句最多可以有10個(gè)變量。
對(duì)于類(lèi)型為L(zhǎng)D_EXT_FCT和命令通道$FCT_CALL的外部模塊:變量Var1…Var10包含使用Format調(diào)用的函數(shù)的傳遞參數(shù)。
Format:讀/寫(xiě)的“格式”變量
$FCT_CALL
命令通道$FCT_CALL的管理號(hào)
CWRITE函數(shù)可用于通過(guò)$FCT_CALL命令通道調(diào)用函數(shù)。變量本身具有寫(xiě)保護(hù)。
命令通道$FCT_CALL的功能
使用CWRITE調(diào)用命令通道$FCT_CALL的文件系統(tǒng)功能。進(jìn)行調(diào)用時(shí),必須將功能參數(shù)作為Var1…Var10傳送到CWRITE。此外,由CWRITE傳輸?shù)膶?xiě)入模式必須為#SYNC。
可以從機(jī)器人解釋程序或提交解釋程序調(diào)用文件系統(tǒng)功能。不允許從一個(gè)解釋器打開(kāi)文件然后從另一個(gè)解釋器訪(fǎng)問(wèn)文件,例如寫(xiě)入或再次關(guān)閉文件。
快遞分揀機(jī)器人公司瓜果分揀機(jī)器人方案湖北食品分揀機(jī)器人