西門子CPU模塊6ES7231-7PF22-0XA0西門子CPU模塊6ES7231-7PF22-0XA0
雙精度整數(shù)到字符串轉(zhuǎn)換
LAD/FBD STL 說明
DTS IN, OUT, FMT
雙整數(shù)轉(zhuǎn)換為字符串的指令會將雙整數(shù) IN 轉(zhuǎn)換為長度為 12 個
字符的 ASCII 字符串。格式 (FMT) 分配小數(shù)點右側(cè)的轉(zhuǎn)換精
數(shù)點顯示為逗號還是句點。結(jié)果字符串會寫入從
OUT 處開始的 13 個連續(xù)字節(jié)中。
ENO = 0 時的非致命錯誤條件 受影響的 SM 位
• 0006H 間接地址
• 0091H 操作數(shù)超出范圍
• 格式非法 (nnn > 5)
• FMT 字節(jié)的四個有效位的 FMT
位不為零
西門子S7-2006ES72881SR400AA0批發(fā)
西門子S7-200
批發(fā)
無
輸入/ / 輸出 數(shù)據(jù)類型 操作數(shù)
IN DINT ID、QD, VD, MD, SMD, SD, LD, AC, HC, *VD, *LD, *AC、常數(shù)
FMT BYTE IB, QB, VB, MB, SMB, SB, LB, AC, *VD, *LD, *AC, 常數(shù)
OUT STRING VB, LB, *VD, *LD, *AC
輸出字符串的長度始終為 12 個字符。輸出緩沖區(qū)中小數(shù)點右側(cè)的位數(shù)由 nnn 字
nnn 字段的有效范圍是 0 到 5。如果分配 0 位數(shù)到小數(shù)點右側(cè),則該值不顯示小數(shù)點。對
于 nnn 大于 5 的值,輸出為 12 個 ASCII 空格字符組成的字符串用逗號
(c=1) 還是小數(shù)點 (c=0) 作為整數(shù)與小數(shù)部分之間的分隔符。格式的高 4 位必須是零。
程序指令
7.5 轉(zhuǎn)換
S7-200 SMART
260 系統(tǒng)手冊, V2.5, 01/2020, A5E03822234-AI
下圖還給出了一個值的示例,其格式為:使用小數(shù)點 (c = 0),小數(shù)點右側(cè)有四位數(shù) (nnn
= 100)。OUT 處的值為下一字節(jié)地址中存儲的字符串的長度。
雙整數(shù)轉(zhuǎn)換為字符串指令的 FMT 操作數(shù)
實 數(shù)到字符串轉(zhuǎn)換
LAD/FBD 說明
RTS IN, OUT, FMT
實數(shù)轉(zhuǎn)換為字符串的指令會將實數(shù)值 IN 轉(zhuǎn)換為 ASCII 字符串。格
式 (FMT) 分配小數(shù)點右側(cè)的轉(zhuǎn)換精度、小數(shù)點顯示為逗號還是句
點以及輸出字符串的長度。轉(zhuǎn)換結(jié)果放置在以 OUT 開頭的字符串
中。結(jié)果字符串的長度在格,可以是 3 到 15 個字符。
ENO = 0 時的非致命錯誤條件 受影響的 SM 位
• 0006H 間接地址
• 0091H 操作數(shù)超出范圍
• 格式非法
– (nnn > 5)
西門子S7-2006ES72881SR400AA0批發(fā)
西門子S7-200
6ES72881SR400AA0
– ssss < 3
– ssss < 所需字符數(shù)
無
輸入/ / 輸出 數(shù)據(jù)類型 操作數(shù)
IN REAL ID、QD, VD, MD, SMD, SD, LD, AC, *VD, *LD, *AC、常數(shù)
FMT BYTE IB、QB、VB, MB, SMB, SB, LB, AC, *VD, *LD, *AC、常數(shù)
OUT STRING VB, LB, *VD, *LD, *AC
CPU 使用的實數(shù)格式多支持 7 位有效數(shù)字。嘗試顯示 7 位以上有效數(shù)字會產(chǎn)生舍入錯
誤。
程序指令
7.5 轉(zhuǎn)換
S7-200 SMART
系統(tǒng)手冊, V2.5, 01/2020, A5E03822234-AI 261
輸出字符串的長度由 ssss。0、1 或 2 個字節(jié)大小無效。輸出緩沖區(qū)中小數(shù)點右
側(cè)的位數(shù)由 nnn 字段分配。nnn 字段的有效范圍是 0 到 5。如果分配 0 位數(shù)到小數(shù)點右
側(cè),則該值不顯示小數(shù)點。如果 nnn 大于 5,或者因分配的輸出字符串長度太小而無法存
儲轉(zhuǎn)換的值,則會用 ASCII 空格字符填充輸出字符串。c 位用逗號 (c=1) 還是小數(shù)
點 (c=0) 作為整數(shù)與小數(shù)部分之間的分隔符。
下圖還給出了一個值的示例,其格式為:小數(shù)點 (c = 0),小數(shù)點右側(cè)有一位數(shù) (nnn =
001),輸出字符串的長度為 6 個字符 (ssss = 0110)。OUT 處的值為下一字節(jié)地址中存儲
的字符串的長度。
實數(shù)轉(zhuǎn)換為字符串指令的 FMT 操作數(shù)
另請參見
分配指令的常數(shù)值 (頁 85)
程序指令
7.5 轉(zhuǎn)換
S7-200 SMART
262 系統(tǒng)手冊, V2.5, 01/2020, A5E03822234-AI
7.5.4 ASCII 子字符串轉(zhuǎn)換為數(shù)值
LAD/FBD STL 說明
STI IN, INDX, OUT
ASCII 子字符串轉(zhuǎn)換為整數(shù)值
STD IN, INDX, OUT
ASCII 子字符串轉(zhuǎn)換為雙整數(shù)值
STR IN, INDX, OUT
ASCII 子字符串轉(zhuǎn)換為實數(shù)值
ENO = 0 時的非致命錯誤條件 受影響的 SM 位
• 0006H 間接地址
• 0091H 操作數(shù)超出范圍
• 009BH 索引 = 0
• SM1.1 溢出或非法值
• SM1.1 溢出或非法值
輸入/ / 輸出 數(shù)據(jù)類型 操作數(shù)
IN STRING VB、LB、*VD、*LD、*AC、常數(shù)字符串
INDX BYTE VB、IB、QB、MB、SMB、SB、LB、AC、*VD、*LD、*AC、常數(shù)
OUT INT VW、IW、QW、MW、SMW、SW、T、C、LW、AC、AQW、
*VD、*LD、*AC
DINT、REAL VD、ID、QD、MD、SMD、SD、LD、AC、*VD、*LD、*AC
S_I (整數(shù))和 S_DI (雙整數(shù))的字符串輸入格式
[空格] [+ 或 -] [數(shù)字 0 - 9]
程序指令
7.5 轉(zhuǎn)換
S7-200 SMART
系統(tǒng)手冊, V2.5, 01/2020, A5E03822234-AI 263
S_R (實數(shù))的字符串輸入格式
[空格] [+ 或 -] [數(shù)字 0 - 9] [. 或 ,] [數(shù)字 0 - 9]
INDX 參數(shù)
西門子S7-2006ES72881SR400AA0批發(fā)
西門子S7-200