色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

CWRITE或SWRITE的格式規范介紹

機器人及PLC自動化應用 ? 來源:機器人及PLC自動化應用 ? 2022-12-27 15:23 ? 次閱讀

CWRITE 或 SWRITE 的格式規范具有以下結構:“%U”

F:格式化字符。可選的。

W:要輸出的最小位置數。可選的。

G:精度規格

U:轉換字符

例1:

整數變量 VI 的值以十進制和十六進制 ASCII 表示法傳輸。第一個 CWRITE 語句傳送字符 123。第二個 CWRITE 語句傳送字符 7B。

pYYBAGOqnbuASwo-AAG-_6BY9PA778.jpg
poYBAGOqncSADSzxAAFv3bm6IwU900.jpg

命令通道 $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: 將字符寫入文件

c25c9dc6-8535-11ed-bfe3-dac502259ad0.png

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

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

$FCT_CALL=Number

字符“a”將通過命令通道 $FCT_CALL 寫入文件MyTest.TXT。如果文件已經存在,則在打開文件時刪除文件的內容。

對于使用 CWRITE 的每個函數調用,都要進行檢查以查看函數是成功執行還是因錯誤而中止。如果發生錯誤,可以根據錯誤原因編程相應的錯誤處理。如果沒有發生錯誤,將寫入字符并再次關閉文件.

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)

krl_fsizeget()

確定文件大小,文件大小以字節為單位。此函數只能用于確定首先使用 krl_fopen() 打開的文件的大小。

krl_fsizeget(INT Handle, INT Size )

由句柄傳輸的文件的大小被確定并寫入變量“IntVar”:

CWRITE($FCT_CALL, State, Mode, "krl_fsizeget", FileHandle, IntVar)

例:

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

大家有空可以試試吧!







審核編輯:劉清

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

    關注

    52

    文章

    8226

    瀏覽量

    146253
  • ASCII
    +關注

    關注

    5

    文章

    172

    瀏覽量

    35089
  • CMD文件
    +關注

    關注

    0

    文章

    5

    瀏覽量

    7435

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

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

收藏 人收藏

    評論

    相關推薦

    KUKA機器人高級編程SWRITE的用法案例

    CWRITE 結合在程序中。好處: l CWRITE 可以限制為將數據寫入通道。SWRITE 可以執行更復雜的格式化任務。這使得程序更加靈活。 l
    發表于 07-05 17:39 ?3084次閱讀

    視頻格式介紹

    即使能夠播放,但存在不能調節播放進度和播放時只有聲音沒有圖像等一些莫名其妙的問題,如果用戶在進行AVI格式的視頻播放時遇到了這些問題,可以通過下載相應的解碼器來解決。  ●nAVI格式:nAVI
    發表于 12-30 09:29

    inc格式的HSPICE模型怎么轉換成ciirspmodlibnet格式的spice模型?

    inc格式的HSPICE模型怎么轉換成ciirspmodlibnet格式的spice模型
    發表于 09-12 16:02

    OpenHarmony elf格式介紹【干貨分享】

    。ELF 文件通常是編譯器鏈接器的輸出,并且是二進制格式。2 elf格式介紹elf文件是linux操作系統加載的可執行文件,操作系統運行程序如下圖所示:我們需要從兩方面來理解elf,
    發表于 04-01 09:39

    廣播音頻數據文件格式規范—廣播波形格式(BWF) GY T

    廣播音頻數據文件格式規范—廣播波形格式(BWF) GY T 168-2001
    發表于 11-22 16:55 ?39次下載

    規范的參考文獻格式

    規范的參考文獻格式 參考文獻(即引文出處)的類型以單字母方式標識:M——專著,C——論文集,N——報紙文章,J——期刊文章,D——學位論文,R——報告,S——標準
    發表于 06-12 23:41 ?15次下載

    視頻格式的分類及介紹

    視頻格式的分類及介紹   目前,視頻格式可以分為適合本地播放的本地影像視頻和適合在網絡中播放的網絡流媒體影像視頻兩大類,這
    發表于 12-30 09:30 ?1919次閱讀

    KUKA-C4機器人SWRITE函數的用法說明

    SWRITE具有與CWRITE類似的功能和語法。但是,與CWRITE不同,SWRITE不會將數據寫入通道,而是寫入CHAR數組。
    的頭像 發表于 06-12 10:15 ?5486次閱讀
    KUKA-C4機器人<b class='flag-5'>SWRITE</b>函數的用法說明

    KUKA機器人高級編程SWRITE的用法

    偏移量在寫入期間遞增。如果在另一個 SWRITE 語句的情況下,要從第一個位置重新開始寫入,則必須在此語句之前將偏移量設置為 0。否則,將接受前一條語句的增量偏移量。
    的頭像 發表于 03-28 10:54 ?1690次閱讀

    KUKA機器人高級編程CWRITE的用法

    CWRITE 將數據寫入打開的串行接口加載的 LD_EXT_OBJ 類型的外部模塊。在加載的 LD_EXT_FCT 類型的外部模塊中,CWRITE 調用一個函數。
    的頭像 發表于 03-28 14:20 ?1903次閱讀

    KUKA機器人高級編程CWRITE的用法

    CWRITE 將數據寫入打開的串行接口加載的 LD_EXT_OBJ 類型的外部模塊。在加載的 LD_EXT_FCT 類型的外部模塊中,CWRITE 調用一個函數。
    的頭像 發表于 04-12 09:41 ?1249次閱讀

    KUKA機器人高級編程SWRITE的使用方法和示例

    SWRITE 具有與 CWRITE 類似的功能和語法。但是,與 CWRITE 不同的是,SWRITE 不會將數據寫入通道,而是寫入 CHAR 數組。
    的頭像 發表于 07-08 09:07 ?3188次閱讀
    KUKA機器人高級編程<b class='flag-5'>SWRITE</b>的使用方法和示例

    教你如何去使用KUKA機器人高級編程CWRITE

    CWRITE 將數據寫入打開的串行接口加載的 LD_EXT_OBJ 類型的外部模塊。在加載的 LD_EXT_FCT 類型的外部模塊中,CWRITE 調用一個函數。
    的頭像 發表于 02-12 11:32 ?1802次閱讀

    KUKA機器人高級編程CWRITE的用法

    CWRITE 將數據寫入打開的串行接口加載的 LD_EXT_OBJ 類型的外部模塊。在加載的 LD_EXT_FCT 類型的外部模塊中,CWRITE 調用一個函數。
    的頭像 發表于 04-03 18:00 ?1410次閱讀

    KUKA CWRITE:對單一提交模式的更改方法

    CWRITE可以通過$CMD命令通道將指令傳遞給解釋器。與Single Submit模式相比,Multi-Submit模式中某些命令的含義發生了變化。
    的頭像 發表于 09-21 09:49 ?1682次閱讀
    主站蜘蛛池模板: 日日夜夜影院在线播放| 国产精品大陆在线视频| 忘忧草在线影院WWW日本动漫| 久久人妻熟女中文字幕AV蜜芽| 国产精品俺来也在线观看| 99久久久无码国产精品AAA| 亚洲中文无码AV在线观看| 特级黑人三人共一女| 十分钟视频影院免费| 色网址在线观看| 无码乱人伦一区二区亚洲| 双性将军粗壮H灌满怀孕| 无遮18禁在线永久免费观看挡| 色小姐.com| 婷婷五月久久精品国产亚洲| 伊人久综合| 欧美 亚洲 日韩 中文2019 | 国产自产第一区c国产| 国产精品亚洲专一区二区三区| 国产精品视频在线自在线| 国产女人91精品嗷嗷嗷嗷| 好男人好资源在线播放| 精品少妇高潮蜜臀涩涩AV| 久久偷拍人| 尿孔 调教 扩张| 日本女人bbb| 五花大绑esebdsm国产| 亚洲蜜桃AV色情精品成人| 永久免费看mv网站入口| 97在线观看免费| 成人伦理影院| 国产区在线不卡视频观看| 精品手机在线1卡二卡3卡四卡| 久久亚洲一级α片| 热热久久超碰精品中文字幕 | 欧美午夜精品一区区电影| 日本女人下面毛茸茸| 性欧美FREE少妇XXX| 伊人久久综合谁合综合久久| 99久久国产综合精品国| 冈本视频黄页正版|