女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

KUKA編程:命令通道$FCT_CALL的功能

機器人及PLC自動化應用 ? 來源:機器人及PLC自動化應用 ? 作者:機器人及PLC自動化 ? 2022-07-01 10:39 ? 次閱讀


命令通道 $FCT_CALL 的功能

使用 CWRITE 調用命令通道 $FCT_CALL 的文件系統函數。調用時,函數參數必須作為 Var1 … Var10 傳送到 CWRITE。此外,CWRITE 傳輸的寫入模式必須是#SYNC。

默認情況下,函數訪問的文件存儲在本地目錄C:KRCROBOTERUserFiles。存儲在那里的文件的最大總大小限制為 10 MB,即存儲在那里的所有文件的總大小不得超過此限制。也可以通過函數 krl_mount() 使用啟用的網絡驅動器。

可以從機器人解釋程序或提交解釋程序調用文件系統函數。不允許從一個解釋器打開文件,然后從另一個解釋器訪問它,例如 寫入或再次關閉文件。

錯誤處理

每個文件系統函數通過 CWRITE 提供一個返回值,可以在 KRL 程序中查詢和評估。返回值指示函數是成功執行還是因錯誤而中止。

調用 CWRITE 時傳遞的變量 State.RET1 用于監控是否發生錯誤:

State.RET1= #DATA_OK:函數執行成功

State.RET1= #CMD_ABORT: 函數因錯誤而取消

在發生錯誤的情況下,返回的錯誤號可用于定位原因。使用變量 State.MSG_NO 輪詢錯誤號。描述了每個功能的可能錯誤編號。

$FCT_CALL: 將字符寫入文件

e15f68cc-f8bb-11ec-ba43-dac502259ad0.png

命令通道 $FCT_CALL 的管理號(句柄)

CWRITE() 函數可用于通過 $FCT_CALL 命令通道調用函數。變量本身是寫保護的。

$FCT_CALL=Number

字符“a”將通過命令通道 $FCT_CALL 寫入文件MyTest.TXT。如果文件已經存在,則在打開文件時刪除文件的內容。 對于使用 CWRITE 的每個函數調用,都要進行檢查以查看函數是成功執行還是因錯誤而中止。如果發生錯誤,可以根據錯誤原因編程相應的錯誤處理。如果沒有發生錯誤,將寫入字符并再次關閉文件. krl_mount()創建和連接掛載點

為了從 KRL 連接到啟用的網絡驅動器,必須為掛載點分配一個名稱,并且必須知道啟用目錄的完整路徑。連接網絡驅動器也需要用戶的用戶名和加密密碼。

機器人控制器 C:KRCUTILHash 目錄下的程序 khash.exe 可用于加密密碼。程序 khash.exe 必須在 Windows shell cmdk.exe 上執行,并且需要輸入密碼。

例如,如果用戶的密碼是“kuka”,則 Windows shell 上的加密程序調用如下:khash.exe kuka

在 KRL 程序中調用 krl_mount() 時必須使用的加密密碼隨后會顯示在 Windows shell 上。

krl_mount(CHAR[] Name, CHAR[] Path, CHAR[] User, CHAR[] Password)

例:

使用名稱 TransferNet 建立到網絡驅動器 \160.160.113.23 ransfer 的掛載點。使用加密密碼為用戶“Administrator”建立連接:

CWRITE($FCT_CALL, State, Mode, "krl_mount", "/TransferNet","http://160.160.113.23/transfer","Administrator","04FF94D4B99A1153C8CF3D479089A77AFE")

krl_unmount()

刪除掛載點

此函數可用于終止與使用 krl_mount() 建立的網絡驅動器的連接。

krl_unmount(CHAR[] Name)

Name創建的掛載點名稱

名稱必須以字符“/”開頭,并且不得包含另一個“/”字符。

與掛載點 TransferNet 的連接被終止:

CWRITE($FCT_CALL, State, Mode, "krl_unmount", "/TransferNet")

krl_fopen()

打開一個文件

根據選擇的模式,文件以文本文件或二進制文件的形式打開以進行讀訪問和/或寫訪問。可用模式對應于頭文件 stdio.h 的 fopen() 函數。

在 KRL 程序中使用此功能最多可以同時打開 11 個文件。

krl_fopen(CHAR[] Name, CHAR[] Mode, INT Handle <, BUFF_MODE_T Buffering> )

Mode

“r”

作為文本文件打開以進行讀取訪問

在這種模式下,一個文件可以連續打開多次(包括由機器人和提交解釋器同時打開)而無需先關閉。在每種情況下都會返回一個不同的句柄。這些句柄中的每一個都必須在某個時候關閉,因為否則無法以不同的模式打開文件。

“w”

作為文本文件打開以進行寫訪問

在這種模式下,文件的內容在打開時被刪除。如果他的文件不存在,則創建它。

“a”

作為文本文件打開以進行寫訪問

在這種模式下,文件的內容在打開時不會被刪除;相反,寫入的值被添加到文件的末尾。如果文件不存在,則創建它。

“rb”

作為二進制文件打開以進行讀取訪問

“wb”

作為二進制文件打開以進行寫訪問

“r+”

作為文本文件打開以進行讀寫訪問

注意:打開文件后,文件指針指向文件的開頭。為確保在將數據寫入文件時不會覆蓋任何內容,必須通過函數 krl_fseek() 將文件指針放在文件末尾。

例:

文件 ROBOTERUserFilesMyFile.txt 作為文本文件打開以進行讀取訪問:

CWRITE($FCT_CALL, State, Mode, "krl_fopen", "MyFile.txt", "r", FileHandle)

文件 ROBOTERUserFiles estMyFile.txt 作為二進制文件打開,用于讀寫訪問。如果該文件已存在,則刪除該文件的內容。

如果文件不存在,則創建它:

CWRITE($FCT_CALL, State, Mode, "krl_fopen", "Test/MyFile.txt", "wb+", FileHandle)

MyFile.txt 文件作為文本文件打開,用于讀取訪問,無需在啟用的網絡驅動器上進行緩沖。名稱為 Net1 的網絡驅動器的掛載點必須首先通過 krl_mount() 創建:

CWRITE($FCT_CALL, State, Mode, "krl_fopen", "/Net1/MyFile.txt", "r",

FileHandle, #NO_BUFF)

krl_fclose()

關閉文件

該文件由傳輸的句柄明確確定。一旦文件被關閉,句柄就無效并且不能用于進一步的文件系統操作。

當文件關閉時,寫入緩沖區的內容將寫入文件。

krl_fclose(INT Handle)

文件通過文件句柄關閉:CWRITE($FCT_CALL, State, Mode, "krl_fclose", FileHandle)

krl_fputc()

將字符寫入文件

文件中寫入字符的點取決于打開文件的模式和文件指針的位置。

krl_fputc(INT Handle, CHAR Character)

字符“x”被寫入句柄傳輸的文件中:CWRITE($FCT_CALL, State, Mode, "krl_fputc", FileHandle, "x")

krl_fputs()

將字符串寫入文件

該函數可用于將常量字符串或可變字符串寫入文件。如果使用變量,則 CHAR 數組的每個元素都必須初始化并包含一個有效值。

文件中寫入字符串的點取決于打開文件的模式和文件指針的位置。

krl_fputs(INT Handle, CHAR[] String)

例:

一個常量字符串被寫入到句柄傳送的文件中:

CWRITE($FCT_CALL, State, Mode, "krl_fputs", FileHandle, "write this!")

將變量“StringVar[]”中包含的字符串寫入句柄傳送的文件中:

CWRITE($FCT_CALL, State, Mode, "krl_fputs", FileHandle, StringVar[])

krl_fwriteln()

將字符串逐行寫入文件

該函數可用于將常量字符串或可變字符串寫入文件。將行尾字符附加到要寫入的字符串。如果使用變量,則 CHAR 數組的每個元素都必須初始化并包含一個有效值。

文件中寫入字符串的行取決于打開文件的模式和文件指針的位置。

krl_fwriteln(INT Handle, CHAR[] String)

將一個空行寫入句柄傳輸的文件中:

CWRITE($FCT_CALL, State, Mode, "krl_fwriteln", FileHandle, " ")

krl_fprintf()

將字符串格式化寫入文件

要寫入的格式作為字符串傳送給函數。要寫入的值也會被傳送。

可用格式在頭文件 stdio.h 的 fprintf() 函數的文檔中列出。除了“%o”、“%p”、“%n”和列表“[List]”之外,所有格式都是允許的。

krl_fprintf(INT Handle, CHAR[] Format, Par1, … , Par8)

由字符“;”分隔的 3 個值 被寫入由句柄傳輸的文件并格式化:

CWRITE($FCT_CALL, State, Mode, "krl_fprintf", FileHandle, "%s;%x;%c", "Item1", 'HA0', CharVar)

例:

DECL INTHANDLE DECL STATE_T STAT DECL MODUS_T MODE

...

CHAR MYCHAR

...

MODE =#SYNC HANDLE = 0 MYCHAR = "a"

...

; 在 C:KRCROBOTERUserFiles 下創建一個文件

CWRITE($FCT_CALL, STAT, MODE,"krl_fopen", "MyTest.TXT", "w", HANDLE)

; 檢查是否發生錯誤

IF (STAT.RET1 == #CMD_ABORT)THEN

IF (STAT.MSG_NO == -5) THEN

; 如果有很多文件已經打開,則錯誤處理...

ELSE

; 如果需要,檢查其他錯誤代碼

... ENDIF

ELSE

; 沒有發生錯誤

; 將字符寫入文件

CWrite($FCT_CALL, STAT, MODE, "krl_fputc",HANDLE, MYCHAR) IF (STAT.RET1 == #CMD_ABORT) THEN

; 錯誤處理

... ENDIF

; 關閉文件

CWRITE($FCT_CALL, STAT, MODE,"krl_fclose", HANDLE) IF (STAT.RET1 == #CMD_ABORT) THEN

錯誤處理

... ENDIF

ENDIF

大家有空可以試試吧!

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 函數
    +關注

    關注

    3

    文章

    4371

    瀏覽量

    64230
  • KUKA
    +關注

    關注

    3

    文章

    218

    瀏覽量

    16900
  • 解釋器
    +關注

    關注

    0

    文章

    103

    瀏覽量

    6702

原文標題:也許使用它會對KUKA編程有一個突破性的認識---$FCT_CALL。

文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    KUKA機器人使用說明書

    電子發燒友網站提供《KUKA機器人使用說明書.pdf》資料免費下載
    發表于 04-17 14:07 ?0次下載

    庫卡KUKA機器人常見故障維修

    1、KUKA機器人伺服電機維修過熱原因 ①電源電壓過高; ②電源電壓過低,電機在額定負載下運行,電流過大使線圈發熱; ①修理和拆卸線圈時,熱拆卸方法不正確,會燒壞鐵芯; ①發動機過載或頻繁啟動
    的頭像 發表于 03-08 09:16 ?839次閱讀

    KUKA機器人編程說明(英文)

    電子發燒友網站提供《KUKA機器人編程說明(英文).pdf》資料免費下載
    發表于 03-07 14:05 ?0次下載

    DS2413系列雙通道編程1-Wire芯片技術手冊

    DS2413是雙通道編程I/O 1-Wire?芯片。PIO輸出配置為開漏極,提供最高20mA的吸電流能力,截止狀態工作電壓可達28V。通過專門的器件級命令協議實現PIO引腳的控制與檢測。為了在最終
    的頭像 發表于 02-26 15:12 ?360次閱讀
    DS2413系列雙<b class='flag-5'>通道</b>可<b class='flag-5'>編程</b>1-Wire芯片技術手冊

    Linux ip命令常用操作

    Linux?ip命令常用操作 在Linux系統中,ip命令是用于管理網絡接口和路由的強大工具。相比于舊的?ifconfig命令,ip命令提供了更多的
    的頭像 發表于 02-19 10:23 ?576次閱讀

    常用linux命令

    使用command A | command B | command C命令,將A命令產生的標準輸出作為B命令的標準輸入(注意只能接收前一個命令的標準輸出)。
    的頭像 發表于 01-20 14:26 ?349次閱讀

    ADS1158如何在自動掃描模式下,用通道命令,順序讀取通道轉換數值?

    ADS1158如何在自動掃描模式下,用通道(寄存器格式)讀命令,順序讀取通道轉換數值,我現在無論是采用脈沖命令方式還是START為HIGH轉換的方式讀取的
    發表于 01-17 06:54

    使用DAC53608的八通道編程比較器

    電子發燒友網站提供《使用DAC53608的八通道編程比較器.pdf》資料免費下載
    發表于 10-08 11:26 ?0次下載
    使用DAC53608的八<b class='flag-5'>通道</b>可<b class='flag-5'>編程</b>比較器

    瀚海微SD NAND存儲功能描述(14)命令類a

    命令類 SD Memory Card系統的命令集分為幾類,如下表所示。每個類都支持一組卡片功能。表4-20根據卡支持的命令進行設置。一個CCC位對應一個支持的
    的頭像 發表于 08-19 10:26 ?452次閱讀
    瀚海微SD NAND存儲<b class='flag-5'>功能</b>描述(14)<b class='flag-5'>命令</b>類a

    有沒有辦法通過AT命令啟用WPS功能

    有沒有辦法通過 AT 命令啟用 WPS 功能?如果沒有,是否有人已經為此目的創建了一些自定義 AT 命令
    發表于 07-17 08:05

    通過串行和AT命令使用wps8266,是否可以使用WPS PBC功能和AT命令

    我正在通過串行和 AT 命令使用 wps8266,是否可以使用 WPS PBC 功能和 AT 命令
    發表于 07-16 07:35

    DS32EV100可編程通道均衡器數據表

    電子發燒友網站提供《DS32EV100可編程通道均衡器數據表.pdf》資料免費下載
    發表于 07-04 11:35 ?0次下載
    DS32EV100可<b class='flag-5'>編程</b>單<b class='flag-5'>通道</b>均衡器數據表

    abb機器人編程指令詳解中的call什么意思

    ABB機器人編程指令詳解中的“call”是一個非常重要的指令,它允許程序員在程序中調用另一個程序或子程序。 概述 在ABB機器人編程中,程序是由一系列的指令組成的,這些指令可以控制機器人的運動、操作
    的頭像 發表于 06-17 09:47 ?1867次閱讀

    鴻蒙開發電話服務:【@ohos.telephony.call (撥打電話)】

    call模塊提供呼叫管理功能,包括撥打電話、跳轉到撥號界面、獲取通話狀態、格式化電話號碼等。
    的頭像 發表于 06-15 09:13 ?1355次閱讀
    鴻蒙開發電話服務:【@ohos.telephony.<b class='flag-5'>call</b> (撥打電話)】

    Kuka機器人配置Profinet通訊網關HT3S-PNS-ECS

    Kuka機器人配置Profinet通訊網關HT3S-PNS-ECS
    的頭像 發表于 06-13 15:52 ?1076次閱讀
    <b class='flag-5'>Kuka</b>機器人配置Profinet通訊網關HT3S-PNS-ECS