精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

STRING的使用方法

機器人及PLC自動化應用 ? 來源:機器人及PLC自動化應用 ? 2023-06-18 10:34 ? 次閱讀

說明

數據類型為 STRING 的操作數在一個字符串中存儲多個字符,最多可包括 254 個字符。在一個字符串中,可使用系統所創建代碼頁的所有字符。字符在單引號中指定。

字符串中還可包含特殊字符。轉義字符 $ 可用于標識控制字符、美元符號和單引號。

說明
不同代碼頁
請注意,在 Windows 系統中,特殊字符使用當前設置的代碼頁進行編碼。即,由于各操作系統使用的代碼頁不同,因此包含有特殊字符的字符串的顯示也將不同。
正是因為代碼頁對所在系統的依賴性,用戶程序的國際通用性變得極為困難。目前,僅 7 位 ASCII 編碼中的字符才具有國際通用性。

下表列出了 STRING 變量的屬性:

長度(字節) 格式 值范圍 輸入值示例
n + 2 1) ASCII 字符串,包括特殊字符 0 到 254 個字符 'Name'
STRING#'NAME'
STRING#'Na...(該字符串的實際長度超出了屏幕空間。)
STRING#'' (該字符串為空。)
1) 數據類型為 STRING 的操作數在內存中占用的字節數比指定的最大長度要多 2 個字節。

下表給出了特殊字符表示法示例:

字符 十六進制 含義 示例
$L 或 $l 0A 換行 '$LText', '$0AText'
$N 0A 和 0D 斷行
斷行在字符串中占用 2 個字符,在編輯器的顯示畫面中將轉換為 $R$L。
'$NText', '$0A$0DText'
$P 或 $p 0C 分頁 '$PText', '$0CText'
$R 或 $r 0D 回車 (CR) '$RText','$0DText'
$T 或 $t 09 切換 '$TText', '$09Text'
$$ 24 美元符號 '100$$', '100$24'
$' 27 單引號 '$'Text$'','$27Text$27'

如果轉義字符 $ 后面跟有該表格中的某個字母,則表格中指定該字符將包含在字符串中。如果轉義字符 $ 后面跟隨的字母不在該表格中,則該字母將包含在該字符串中。如果轉義字符 $ 后跟隨兩個或一個十六進制數字,該代碼將包含在字符串中。

監控表中的應用

以下示例適用于 S7-300/400 系列 CPU:監視一個數據類型為 STRING 的變量時,將僅顯示前 30 個字符。如果實際長度大于 30 個字符,則將顯示一個省略號 (…) 而非閉合撇號 (')。當 STRING 的值超過 30 個字符時,無法進行更改。

字符串的最大長度

在操作數的聲明過程中,可在關鍵字 STRING 后使用方括號指定字符串的最大長度(如,STRING[4])。也可以使用局部或全局常量聲明字符串的最大長度(如,STRING[#loc_const] 或 STRING["glob_const"])。如果未指定最大長度,則相應的操作數長度設置為標準的 254 個字符。

如果指定字符串的實際長度小于所聲明的最大長度,則字符將以左對齊方式寫入字符串,并將剩余的字符空間保持為未定義。在值處理和各種顯示過程中,僅涉及可確定字符串實際長度的所有字符空間量。

說明 對于 S7-300/400 CPU,請注意:如果定義了 STRING 數據類型的臨時變量,則在用戶程序中使用變量之前必須使用指定的長度定義 BYTE“字符串最大長度”。
傳遞 STRING 或 WSTRING 數據類型的變量

說明

可以將 STRING 或 WSTRING 數據類型的變量作為參數進行傳遞下表列出了不同 CPU 系列中 (W)STRING 的傳遞規則:

CPU 系列 數據類型 塊調用中的傳遞規則
S7-300/400 STRING 聲明的形參和實參長度必須相同。
S7-1200/1500 STRING
WSTRING
聲明的形參和實參長度可以不同。在運行過程中,如果目標參數的聲明長度小于接收的 (W)STRING 參數長度,則截斷 (W)STRING 參數并將使能輸出 ENO 設置為 FALSE。
在程序編輯器中,參數處的灰色矩形表示 (W)STRING 在運行過程中可能被截斷。
例外:
調用 STL 塊時,形參和實參的聲明長度必須始終相同。

下圖顯示了一個塊調用中,聲明的形參和實參長度不同。由于聲明的長度不同,在運行過程中,“Input_String_20”和“Output_String_10”可能會截斷。

1067a072-0c42-11ee-962d-dac502259ad0.png

聲明 STRING 和 WSTRING 數據類型的變量 要聲明 STRING 或 WSTRING 數據類型的變量,請按以下步驟操作:

選擇接口中的相應聲明區域。
在“名稱”(Name) 列中輸入一個變量名稱。
在“數據類型”(Data type) 列中輸入“STRING”或“WSTRING”。輸入時系統將提供自動完成功能。
可選:在關鍵字 STRING 或 WSTRING 后面,使用方括號指定字符串的最大長度。如果未指定最大長度,則字符串的默認長度為 254 個字符。 最大長度為 4 的 WSTRING 示例: WSTRING[4] 使用局部常量定義字符串最大長度的示例: STRING[#My_local_const1] 使用全局常量定義字符串最大長度的示例: STRING["My_global_const1"]

CHAR 隱式轉換

隱式轉換選項

下表列出了 CHAR 數據類型的隱式轉換選項:

目標 進行
IEC 檢查
不進行
IEC 檢查
說明
CHAR BOOL - - 不能進行隱式轉換
BYTE - X 源值的位模式以右對齊方式原樣傳遞到目標數據類型。其余位從左邊開始填充 0。
WORD - X
DWORD - X
SINT - X
USINT - X
INT - X
UINT - X
DINT - X
UDINT - X
REAL - - 不能進行隱式轉換
LREAL - -
TIME - -
DTL - -
TOD - -
DATE - -
WCHAR - -
STRING X X 該 STRING 長度變短為 1 并包含該字符。
WSTRING - - 不能進行隱式轉換
x:可以轉換
-: 不可轉換

顯式轉換選項 下表列出了 CHAR 數據類型的顯式轉換選項和指令:

目標 轉換 說明 指令助記符
CHAR BOOL - 不能進行顯式轉換 -
BYTE1) X 源值的位模式以右對齊方式原樣傳遞到目標數據類型。 CHAR_TO_BYTE
WORD1) X CHAR_TO_WORD
DWORD1) X CHAR_TO_DWORD
SINT X CHAR_TO_SINT
USINT X CHAR_TO_USINT
INT X CHAR_TO_INT
UINT X CHAR_TO_UINT
DINT X CHAR_TO_DINT
UDINT X CHAR_TO_UDINT
REAL - 不能進行顯式轉換 -
LREAL - -
TIME - -
DTL - -
TOD - -
DATE - -
STRING X 值將轉換為字符串 (STRING) 的第一個字符。若未定義字符串的長度,則轉換后長度設置為“1”。如果已定義字符串的長度,則它在轉換后保持不變。 CHAR_TO_STRING
WSTRING - 不能進行顯式轉換 -
WCHAR X CHAR_TO_WCHAR
x:可以轉換 - : 不可轉換 1) 位串 (BYTE、WORD、DWORD) 和數據類型 CHAR 一開始就擴展成所需的寬度,然后再復制這些位。源類型決定了解釋方法。

移動和轉換字符串

1. 移動和轉換字符串指令的調用,如圖1所示。

107c8924-0c42-11ee-962d-dac502259ad0.jpg

圖1. 移動和轉換字符串指令

2. 移動和轉換字符串指令的使用。

(1)移動字符串指令S_MOVE。

S_MOVE指令可以將參數IN中的字符串寫入到參數OUT中的指定數據區域。

在全局DB中創建兩個String類型變量,用來保存數據,如圖2所示:

10988d22-0c42-11ee-962d-dac502259ad0.jpg

圖2. 在全局DB中創建變量

在OB1中調用S_MOVE指令,并連接參數,如圖3所示:

10a8f82e-0c42-11ee-962d-dac502259ad0.jpg

圖3. 在OB1中調用S_MOVE指令

將需要復制的字符串("StringInput")通過輸出參數OUT("StringOutput")輸出,如圖4所示:

10c7d9ec-0c42-11ee-962d-dac502259ad0.jpg

圖4. S_MOVE指令執行結果

(2)轉換字符串指令S_CONV。

S_CONV指令可以將參數IN中的數值轉換為OUT輸出中指定的數據格式,下面列出了可能進行數值轉換的數據類型:

1)將字符串轉換為數字值

參數IN中的數值數據類型為STRING,WSTRING;參數OUT中數值的數據類型為CHAR,WCHAR,USINT,UINT,UDINT,SINT,INT,DINT,REAL,LREAL。

2)將字符串轉換為字符串

參數IN中的數值數據類型為STRING,WSTRING;參數OUT中數值的數據類型為STRING,WSTRING。

3)將數字值或字符轉換為字符串

參數IN中的數值數據類型為CHAR,WCHAR,USINT,UINT,UDINT,SINT,INT,DINT,REAL,LREAL;參數OUT中數值的數據類型為STRING,WSTRING。

4)將字符轉換為字符

參數IN中的數值數據類型為CHAR,WCHAR;參數OUT中數值的數據類型為CHAR,WCHAR。

在全局DB中創建四個變量,用來保存數據,如圖5所示:

10d29eae-0c42-11ee-962d-dac502259ad0.jpg

圖5. 在全局DB中創建變量

在OB1中調用S_CONV指令,并連接參數,選擇數據類型。在第一個選項中選擇待轉換的數據類型("ValueInput"),本例中為Int類型;在第二個選項中選擇待生成字符串的數據類型("StringOutput"),本例中為String類型,如圖6所示:

10e7b712-0c42-11ee-962d-dac502259ad0.jpg

圖6. 在OB1中調用S_CONV指令

將需要轉換的數值("ValueInput")轉換為輸出格式,在字符串開頭處的空白區域寫入空格,轉換結果以字符串形式通過輸出參數OUT("StringOutput")輸出,如圖7所示:

10fba0ba-0c42-11ee-962d-dac502259ad0.jpg

圖7. S_CONV指令執行結果(LAD語言)

注:如果使用SCL語言調用S_CONV指令,當數字值轉換為字符串時,字符串的第一個字符不會使用空格進行填充,如圖8所示:

110c83a8-0c42-11ee-962d-dac502259ad0.jpg

圖8. S_CONV指令執行結果(SCL語言)





審核編輯:劉清

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

    關注

    0

    文章

    85

    瀏覽量

    18300
  • S7-300
    +關注

    關注

    8

    文章

    225

    瀏覽量

    34249
  • ASCII碼
    +關注

    關注

    0

    文章

    51

    瀏覽量

    17298

原文標題:西門子博途: STRING的使用

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

收藏 人收藏

    評論

    相關推薦

    示波器的使用方法

    示波器的使用:作用;原理;使用方法。萬用表的使用:作用;原理;使用方法。 一、示波器的作用1.廣泛的電子測量儀器;2.測量電信號的波形(電壓與時間關系)
    發表于 12-03 14:10 ?0次下載
    示波器的<b class='flag-5'>使用方法</b>

    示波器的使用方法

    示波器的使用方法 1 示波器使用        本節介紹示波器的使用方法。示波器種類、型號很多,功能也不同。
    發表于 01-14 13:06 ?1.8w次閱讀

    Matlab使用方法和程序設計

    Matlab使用方法和程序設計 實驗一 Matlab使用方法和程序設計一、
    發表于 10-17 00:18 ?5378次閱讀
    Matlab<b class='flag-5'>使用方法</b>和程序設計

    多路輸出的使用方法

    多路輸出的使用方法  
    發表于 10-27 14:20 ?1633次閱讀

    示波器的使用方法

    數字萬用表使用方法和示波器的使用方法詳解。
    發表于 03-14 10:38 ?32次下載

    AT指令使用方法

    AT指令使用方法
    發表于 07-21 14:18 ?23次下載

    xilinx 原語使用方法

    xilinx 原語使用方法
    發表于 10-17 08:57 ?11次下載
    xilinx 原語<b class='flag-5'>使用方法</b>

    CC debuger的使用方法

    CC debuger的使用方法
    發表于 10-18 10:07 ?5次下載

    ORCAD PSPICE 使用方法

    ORCAD PSPICE 使用方法
    發表于 10-18 14:52 ?39次下載
    ORCAD PSPICE <b class='flag-5'>使用方法</b>

    xilinx原語使用方法

    xilinx原語使用方法
    發表于 10-19 08:50 ?15次下載
    xilinx原語<b class='flag-5'>使用方法</b>

    git使用方法

    git使用方法
    發表于 10-24 09:45 ?19次下載
    git<b class='flag-5'>使用方法</b>

    示波器的使用方法(三):示波器的使用方法詳解

    示波器的使用方法并非很難,重點在于正確使用示波器的使用方法。往期文章中,小編對模擬示波器的使用方法和數字示波器的使用方法均有所介紹。為增進大家對示波器的
    的頭像 發表于 12-24 20:37 ?3190次閱讀

    ORCADCapture_使用方法與概念

    ORCADCapture_使用方法與概念(深圳市核達中遠通電源技術股份有限公司怎么樣)-ORCADCapture_使用方法與概念? ? ? ? ? ?
    發表于 09-18 09:53 ?31次下載
    ORCADCapture_<b class='flag-5'>使用方法</b>與概念

    字符串string對象操作的全面總結

    ? ? 字符串操作看似簡單,其實非常重要,不注意的話,經常出現代碼運行結果和自己想要的不一致,甚至崩潰。本文總結了一些構建string對象方法、修改string對象的方法
    的頭像 發表于 11-11 11:23 ?1911次閱讀
    字符串<b class='flag-5'>string</b>對象操作的全面總結

    bigdecimal轉string類型

    中,可以使用toString()方法將BigDecimal對象轉換為String類型。toString()方法是Object類的方法,在BigDecimal類中進行了重寫。因此,調用
    的頭像 發表于 11-30 11:09 ?6294次閱讀