西門子plc字符串指令

1.求字符串長度指令

求字符串長度指令SLEN返回IN參數指定的字符串的長度值,OUT為字節類型。

2.字符串複製指令

字符串複製指令SCPY將IN參數指定的字符串複製到OUT指定的地址區中。

3.字符串連接指令

西門子plc字符串指令

字符串連接指令(SCAT)將IN參數指定的字符串連接到OUT指定的字符串的後面。

【例】 字符串指令應用舉例。

LD I0.0

STR_CPY ”HELLO ”,VB0 //將字符串“HELLO ”複製到VBO開始的存儲區

SCAT ”WORLD”,VB0 //將字符串“WORLD”複製到VBO開始的字符串的後面

STRLEN VB0,AC0 //求VB0開始的字符串的長度

字符串變量的首字節是字符串的長度,VB0開始的字符串為“HELLO”(最後有一個空格),VB0中是字符串的長度6。執行SCAT指令後,得到新的字符串為“HELLO WORLD”,STRLEN指令求出的字符串的長度為11。

西門子plc字符串指令

4.從字符串中複製子字符串指令

SSCPY指令從INDX指定的字符編號開始,將IN指定的字符串的N個字符串複製到OUT中,OUT為字節類型。

指令“SSCPY VB0,7,5,VB20”將從VB0開始的字符串中的第7個字符開始,複製5個字符到VB20開始的新字符串。

5.字符串搜索指令

SFND指令在字符串IN1中搜索字符串IN2,由字節變量OUT指定搜索的起始位置。如果在IN1中找到了與IN2中字符串相匹配的一段字符,則在OUT中存入這段字符IN1中的首個字符的位置。如果沒有找到,則OUT被清零。

西門子plc字符串指令

6.字符搜索指令

CFND指令查找在字符串IN1中是否有字符串IN2中包含的任意字符,字節變量OUT指定搜索的起始位置。如果找到了匹配的字符,字符的位置被寫入OUT中。如果沒有找到,OUT被清零。

假設存儲在VBO開始的區域的字符串包含溫度值,存儲在VB20開始的區域中的字符串包含所有的數字、“+”號和“-”號,用於識別字符串中的溫度值。下面的程序在字符串中找到數字的起始位置,並將其轉換為實數,溫度值存放在VD200中。

LD I0.0

MOVB 1,AC0 //AC0用作OUT參數並指向字符串的首個字符

CFND VB0,VB2,AC0 //在VB0字符串中尋找數字字符

STR VB0,AC0,VD200 //將字符串。中的溫度值轉換為實數


分享到:


相關文章: