999久久久精品国产消防器材,国产成人久久综合77777,√最新版天堂资源网在线,精品久久久久区二区8888,卡一卡二卡三乱码视频

技成培訓(xùn)網(wǎng) 技成學(xué)習(xí)APP 技成工具箱 技成企業(yè)服務(wù)

歡迎回到技成培訓(xùn)網(wǎng)

技成培訓(xùn)網(wǎng)

電工題庫寶典

技成電工課堂

PLC練習(xí)題

技成PLC課堂

變頻器故障查詢

技成PLC學(xué)吧

伺服驅(qū)動故障查詢

技成PLC網(wǎng)校

當(dāng)前位置:技成首頁 > 文章中心 > 西門子PLC > 西門子S7-200SMART PLC轉(zhuǎn)換指令使用方法詳解

西門子S7-200SMART PLC轉(zhuǎn)換指令使用方法詳解

王曾 發(fā)布于2023-04-10 10:18 129 3 標(biāo)簽:西門子PLC

導(dǎo)讀:

這篇文章為大家介紹200SMART的部分轉(zhuǎn)換指令,主要是字符串及字符與其它數(shù)據(jù)類型相互轉(zhuǎn)換的指令,這些指令理解起來有些難度的,雖不常用,但有時在通信交換數(shù)據(jù)時也會用到,很多初學(xué)者不知如何利用這些指令來編程,因此,本文就此介紹一下其含義和用法。注意此處說的字符串為ASCII碼字符串。

一、 所需軟件及硬件

西門子200SMART編程軟件V2.7版,200SMART ST30 CPU一臺,通信網(wǎng)線一條。

二、 轉(zhuǎn)換指令含義及用法

1. 整數(shù)、雙整數(shù)轉(zhuǎn)換為字符串

因這兩個指令的用法是類似的,因此放在一起介紹。指令的形式及在指令列表中的位置如下圖1所示:

 

1

 

 實際生產(chǎn)中配方的數(shù)據(jù)已經(jīng)定好,由圖1可知,改指令有兩個輸入管腳和一個輸出管腳,其中IN為要轉(zhuǎn)換的整數(shù)字(有符號整數(shù)),可填常數(shù)或變量,如12345VW10;OUT為輸出字符串緩沖區(qū)的首字節(jié),如VB100FMT管腳初學(xué)者很多都不知其意,故加以詳細說明。FMT即為英文單詞formatd的縮寫,翻譯成中文是“格式”的意思,此處可理解為規(guī)定字符串轉(zhuǎn)換后的格式。FMT需填寫一個字節(jié)型變量或常數(shù),如VB0或常數(shù)5,下面以圖示的方式介紹其含義,如下圖2


  2

 

FMT為以字節(jié)型變量,所以由8個二進制位組成,即0位到7位,LSB代表地位,MSB代表高位。指令規(guī)定,高四位(4-7位)必須為0,C位指定是用逗號還是小數(shù)點來作為轉(zhuǎn)換后整數(shù)部分和小數(shù)部分的分隔符:當(dāng)C=1時,使用逗號;當(dāng)C=0時,使用小數(shù)點。右邊三位nnn的有效數(shù)據(jù)為05,代表小數(shù)點后面字符的個數(shù)。nnn=000時,轉(zhuǎn)換后的值無小數(shù)點;nnn=5時,小數(shù)點右面有5個字符,如輸入的數(shù)據(jù)不在05的范圍內(nèi),則得不到正確的輸出結(jié)果。還需注意的該指令的下列幾條規(guī)定:

1)、轉(zhuǎn)換值為正寫入輸出緩沖區(qū)不帶時不帶符號,為負則需帶符號(—);

2)、輸出字符串的值為右對齊;

3)、輸出字符串的長度為8位,即8個字節(jié),加上首字節(jié)(自動填寫字符串長度“8”),以共9個字節(jié),需注意該區(qū)域地址不要重復(fù)使用。

下面用實際的案例及監(jiān)控加以說明,案例1(輸入管腳用常數(shù))如圖3所示:

 


3

 

 

3上圖的轉(zhuǎn)換值以ASCII碼的格式顯示,首字節(jié)VB10內(nèi)的數(shù)據(jù)為字符8,代表輸出字符串的長度為8為,VB16為以點標(biāo)志的小數(shù)點位,因FMT2,所以小數(shù)點后面為2位,而輸出字符串規(guī)定為右對齊,所以轉(zhuǎn)換后的值為字符串56.28,其余的字節(jié)為空格;下圖示意16進制顯示的格式,大家可以對照ASCII表,查看是否與上圖的數(shù)據(jù)一致。

案例2(輸入管腳用變量)如下圖4所示:


 4

4上圖轉(zhuǎn)換的整數(shù)VW2032767,VB302#0000_1011,高四位為031,表示小數(shù)點以逗號表示,如圖4上圖的VB105的當(dāng)前值,后三位為011,表示小數(shù)點后面有3位數(shù),所以轉(zhuǎn)換后的值為32.767;中圖中將VB30改為2#0000_1000,表示小數(shù)點后沒有數(shù)據(jù),因此監(jiān)控圖顯示轉(zhuǎn)換

后的值為32767;下圖VB302#0000_0111,后三位超出0-5的范圍,因此指令報錯。

雙整數(shù)轉(zhuǎn)換為字符串指令與單整數(shù)轉(zhuǎn)換指令類似,唯一不同的是輸出字符串的長度為12位,加上首字節(jié)一共是13個字節(jié),比如VB0VB12。這里不再贅述,大家可以舉一反三進行練習(xí)。

2. 浮點數(shù)轉(zhuǎn)換為字符串指令

浮點數(shù)數(shù)轉(zhuǎn)換為字符串的指令會將實數(shù)值 IN 轉(zhuǎn)換為 ASCII 字符串。格式 (FMT) 分配小數(shù)點右側(cè)的轉(zhuǎn)換精度、小數(shù)點顯示為逗號還是句點以及輸出字符串的長度。轉(zhuǎn)換結(jié)果放置在以 OUT 開頭的字符串中。結(jié)果字符串的長度在格式中指定,可以是 3 15 個字符。FMT圖示如下圖5所示:

 

圖5

 

   總結(jié):由圖5可見,“R_S”I_S”DI_S”FMT管腳的區(qū)別是高四位有效,字段SSSS的取值范圍是3-15,表示輸出字符串的長度,超出此范圍指令會報錯。低四位代表的含義與“I_S”DI_S”FMT相同。需要注意的是,CPU 使用的實數(shù)格式最多支持 7 位有效數(shù)字,嘗試顯示 7 位以上有效數(shù)字會產(chǎn)生舍入錯誤。請看下面的例子及監(jiān)控畫面,如圖6所示:

圖6 

 FMT管腳的VB130的值為16#A4,這就是說轉(zhuǎn)換值的格式是10個字符,小數(shù)點后有4位,所以VD120的值456.888轉(zhuǎn)化后為字符串兩個空格加456.8880,共10個字節(jié)。這個指令需謹慎使用,很容易出錯。比如輸入是456.888,VB130輸入16#74,認為能得到結(jié)果為456.8880,但指令會報錯,他因為456.8880一共占8個字節(jié),而FMT的值為16#74,只輸出7個字節(jié),因此得不到正確結(jié)果,將16#74改為16#84后,輸出結(jié)果正確,如下圖7所示。



7

點擊免費試學(xué)更多PLC精品教程


若有收獲,就點個贊吧!

文章來源于網(wǎng)絡(luò)及文獻如有侵權(quán)請聯(lián)系站長
分享到:

微信掃一掃分享

閱讀與本文標(biāo)簽相同的文章

西門子PLC

相關(guān)推薦

最新文章 熱門文章
最新課程 免費課程
PLC資料下載 電工電氣資料下載
應(yīng)用新秀
變頻器故障代碼查詢APP
伺服故障代碼查詢APP
技成
手機APP
熱門標(biāo)簽