6ES7193-6BP20-0BA0
實數(shù)轉(zhuǎn)字符串指令操作
實數(shù)轉(zhuǎn)字符串指令(RTS)將一個實數(shù)值IN轉(zhuǎn)換為一個ASCII碼字 符串。格式操作數(shù)FMT小數(shù)點右側(cè)的轉(zhuǎn)換精度和使用逗號 還是點號作為小數(shù)點。
轉(zhuǎn)換結(jié)果從OUT開始的一個字符串中。結(jié)果字符串的長度 由格式操作數(shù)給出,它可以是3到15個字符。要更多消
息,請參見第4章字符串的格式一節(jié)。
使ENO=0的錯誤條件:
■ 0006 (間接尋址)
■ 0091 (操作數(shù)超出范圍)
■ 非法格式:nnn > 5 ssss < 3
ssss < 所需字符數(shù)
S7- 200的實數(shù)格式支持多7位小數(shù)。試圖顯示7位以上的小數(shù)會產(chǎn)生一個四舍五入錯誤。
圖6--20是對實數(shù)轉(zhuǎn)字符串指令中格式操作數(shù)的描述。ssss表示輸出字符串的長度。0、1或者2個字節(jié) 的大小是無效的。nnn表示輸出緩沖區(qū)中小數(shù)點右側(cè)的數(shù)字位數(shù)。nnn域的有效范圍是0--5。十進(jìn) 制小數(shù)點右面的數(shù)字為0使數(shù)值顯示為一個沒有小數(shù)點的數(shù)值。對于nnn大于5或者的輸出緩沖區(qū) 太小以致于無法存儲轉(zhuǎn)換值的情況,輸出緩沖區(qū)會被空格鍵的ASCII碼填沖。c是用逗號(c=1)或者點號(c=0)作為整數(shù)和小數(shù)的分隔符。
圖6--20中給出了一個數(shù)值的例子,其格式為:使用點號(c=0),小數(shù)點右側(cè)有1位小數(shù)(nnn=001)和6
個字符的緩沖區(qū)大小(ssss=0110)。OUT的值為字符串的長度。輸出緩沖區(qū)的格式符合以下規(guī)則:
q 正數(shù)值寫入輸出緩沖區(qū)時沒有符號位。
q 負(fù)數(shù)值寫入輸出緩沖區(qū)時以負(fù)號(--)開頭。
q 小數(shù)點左側(cè)的開頭的0(除去靠近小數(shù)點的那個之外)被隱藏。
q 小數(shù)點右側(cè)的數(shù)值按照的小數(shù)點右側(cè)的數(shù)字位數(shù)被四舍五入。q 輸出緩沖區(qū)的大小應(yīng)至少比小數(shù)點右側(cè)的數(shù)字位數(shù)多三個字節(jié)。q 數(shù)值在輸出緩沖區(qū)中是右對齊的。
FMT
MSB LSB
7 6 5 4 3
2 1 0
輸入=1234.5 輸入=- 0.0004
ssss=輸出字符串長度c=逗號(1)或者點號(0) nnn=小數(shù)點右側(cè)的位數(shù)
圖6--20 實數(shù)轉(zhuǎn)字符串指令的FMT操作數(shù)
輸入=- 3.67526
輸入=1.95
將子字符串轉(zhuǎn)換為數(shù)字值
子字符串轉(zhuǎn)整數(shù)(STI)、子字符串轉(zhuǎn)雙整數(shù)(STD)和子字符串轉(zhuǎn) 實數(shù)(STR)指令,將從偏移量INDX開始的字符串值IN轉(zhuǎn)換成整 數(shù)/雙整數(shù)或?qū)崝?shù)值OUT。
使ENO=0的錯誤條件:
■ 0006 (間接尋址)
■ 0091 (操作數(shù)超出范圍)
■ 009B (索引 = 0)
■ SM1.1 (溢出)
子字符串轉(zhuǎn)整數(shù)和字符串轉(zhuǎn)雙整數(shù)轉(zhuǎn)換具有下列格式的 字符串:[空格] [+或--] [數(shù)字0 -- 9]
字符串轉(zhuǎn)實數(shù)指令轉(zhuǎn)換具有下列格式的字符串:
[空格] [+或--] [數(shù)字0 -- 9] [. 或,][數(shù)字0 -- 9]
INDX值通常設(shè)置為1,從字符串的個字符開始轉(zhuǎn)換。INDX可以被設(shè)置為其他值,從字符串的不同位置進(jìn)行轉(zhuǎn)換。這可以被用于字符串中包含非數(shù)值字符的情況。例如,如果輸 入字符串是“Temperature: 77.8”,則將INDX設(shè)為數(shù)值13, 跳過字符串起始字“ Temperature:”。
子字符串轉(zhuǎn)實數(shù)指令不能用于轉(zhuǎn)換以科學(xué)計數(shù)法或者指數(shù)形式 表示實數(shù)的字符串。指令不會產(chǎn)生溢出錯誤(SM1.1),但是它會將字符串轉(zhuǎn)換到指數(shù)之前,然后停止轉(zhuǎn)換。例如:字符串“1.234E6”轉(zhuǎn)換為實數(shù)值1.234,并且沒有錯誤提示。
當(dāng)?shù)竭_(dá)字符串的結(jié)尾或者遇到個字符時,轉(zhuǎn)換指令結(jié)束。字符是指任意非數(shù)字(0 - 9)
字符。
當(dāng)轉(zhuǎn)換產(chǎn)生的整數(shù)值過大以致輸出值無法表示時,溢出標(biāo)志(SM1.1)會置位。例如:當(dāng)輸入字符串產(chǎn)
生的數(shù)值大于32767或者小于- 32768時,子字符串轉(zhuǎn)整數(shù)指令會置位溢出標(biāo)志。
當(dāng)輸入字符串中并不包含可以轉(zhuǎn)換的數(shù)值時,溢出標(biāo)志(SM1.1)也會置位。例如:如果輸入字符
串的“A123”,轉(zhuǎn)換指令會置位SM1.1 (溢出)并且輸出值保持不變。
表6--20 子字符串轉(zhuǎn)換為數(shù)值指令的有效操作數(shù)
輸入/輸出 | 數(shù)據(jù)類型 | 操作數(shù) |
IN | STRING | IB、QB、VB、MB、SMB、SB、LB、*VD、*LD、*AC、常數(shù) |
INDX | BYTE | VB、IB、QB、MB、SMB、SB、LB、AC、*VD、*LD、*AC、常數(shù) |
OUT | INT DINT、REAL | VW、IW、QW、MW、SMW、SW、T、C、LW、AC、AQW、*VD、 *LD、*AC VD、ID、QD、MD、SMD、SD、LD、AC、*VD、*LD、*AC |
對于整數(shù)和雙整數(shù)的輸入字符串
輸入字符串 | 輸出整數(shù) |
‘123’ | 123 |
‘- 00456’ | - 456 |
‘123.45’ | 123 |
‘+2345’ | 2345 |
‘000000123ABCD’ | 123 |
圖6--21 和非法的輸入字符串的實例
對于實數(shù)
的輸入字符串
輸入字符串 | 輸出實數(shù) |
‘123’ | 123.0 |
‘- 00456’ | - 456.0 |
‘123.45’ | 123.45 |
‘+2345’ | 2345.0 |
‘00.’ | 0. |
非法的輸入字符串
輸入字符串 |
‘A123’ |
‘ ’ |
‘++123’ ‘+- 123 ‘+ 123’ |
![](file:///C:/Users/I~1/AppData/Local/Temp/ksohtml10448/wps354.png)
實例:字符串轉(zhuǎn)換:子字符串轉(zhuǎn)整數(shù)、長整數(shù)和實數(shù) |
| Network1 //將數(shù)字字符串轉(zhuǎn)為整數(shù)。 //將數(shù)字字符串轉(zhuǎn)為雙整數(shù)。 //將數(shù)字字符串轉(zhuǎn)為實數(shù)。 LD I0.0 STI VB0,7,VW100 STD VB0,7,VD200 STR VB0,7,VD300 |
VB0 VB11 程 序 執(zhí) 行 后 : VW100 (整數(shù))=98 VD200 (雙整數(shù))=98 VD300 (實數(shù))=98.6 |
編碼和指令
編碼
編碼指令(ENCO)將輸入字IN的有效位的位號寫入輸出字
節(jié)OUT的有效“半字節(jié)”(4位)中。
譯碼指令(DECO)根據(jù)輸入字節(jié)(IN)的低四位所表示的位號置輸 出字(OUT)的相應(yīng)位為1。輸出字的所有其他位都清0。
SM標(biāo)志位和ENO
對于編碼和譯碼指令,下列條件影響ENO。
使ENO=0的錯誤條件:
■ 0006 (間接尋址)
表6--21 編碼和指令的有效操作數(shù)
輸入/輸出 | 數(shù)據(jù)類型 | 操作數(shù) |
IN | BYTE WORD | IB、QB、VB、MB、SMB、SB、LB、AC、*VD、*LD、*AC、常數(shù) IW、QW、VW、MW、SMW、SW、LW、T、C、AC、AIW、*VD、*LD、 *AC、常數(shù) |
OUT | BYTE WORD | IB、QB、VB、MB、SMB、SB、LB、AC、*VD、*LD、*AC IW、QW、VW、MW、SMW、SW、T、C、LW、AC、AQW、*VD、 *LD、*AC |
實例:和編碼指令 |
| Network1 | //AC2中包含錯誤檢測位 //1. DECO指令置位VW40 // 中與該錯誤代碼 // 對應(yīng)的位。 //2. ENCO指令將有效位轉(zhuǎn)換為 // 存儲在 // VB50中的 // 錯誤代碼。 |
LD DECO ENCO | I3.1 AC2,VW40 AC3,VB50 |
6ES7193-6BP20-0BA0
![](https://img80.chem17.com/62b67f438055e754eef8ec5053ed8ba2ffee7856ff8d0dc8e24b8fd43ca224f235a575adda304cba.png)
基本單元 (BU) 可以卡到 DIN 安裝導(dǎo)軌上 (35 x 7.5 mm or 35 mm x 15 mm)。BU 并排安裝在接口模塊旁,因此可以保護(hù)單個系統(tǒng)組件之間的機(jī)電連接。將一個 I/O 模塊卡到 BU 上后,可以確定相應(yīng)插槽的功能和端子的電勢。對于單導(dǎo)線或多導(dǎo)線連接,提供了帶有合適端子數(shù)的 BU。
負(fù)載分組:
可擴(kuò)展的 I/O 系統(tǒng)通常為單個負(fù)載分組提供了可能。對于分布式 I/O 設(shè)備,以前需要附加的電源單元,用于與左側(cè)負(fù)載組分離,以及饋入、顯示、監(jiān)視和診斷負(fù)載電壓。它常常還具有過濾器功能,可提供極性反接保護(hù)。色 BU 可通過自組裝電壓總線前饋左側(cè)相鄰的淺色 BU 的電源。因此,只有右側(cè)下一個淺色 BU 需要新饋電。
端子的顏色標(biāo)識:
BU 的端子處的電位通過 I/O 模塊進(jìn)行定義。端子的電位也可以通過模塊特定的彩色編碼標(biāo)簽對端子的電位進(jìn)行標(biāo)識,以避免接線錯誤。與相應(yīng) I/O 模塊相匹配的彩色編碼標(biāo)簽通過 I/O 模塊的 CCxx 色碼進(jìn)行定義。該色碼也印在模塊的正面。在帶有 10 個內(nèi)置跨接 AUX 端子的 BU 中,這些端子也可以使用彩色編碼標(biāo)簽進(jìn)行標(biāo)識。對于 10 個 AUX 端子,提供了紅色、藍(lán)色、黃色/綠色編碼標(biāo)簽。
系統(tǒng)內(nèi)置屏蔽連接:
為了使電纜屏蔽線的連接能夠節(jié)省空間和提高電磁兼容性,提供了可以快捷安裝的屏蔽連接器。它包括一個屏蔽連接元件(可以插入到 BU 中)和一個可用于所有模塊的屏蔽端子。用戶無需任何附加接線即可實現(xiàn)功能性接地的低阻抗連接(DIN 導(dǎo)軌)。BU可安裝一個參考標(biāo)識板。
因以下原因而具有較高抗電磁干擾性:
自組裝屏蔽背板總線;
帶屏蔽層的多層導(dǎo)體板,可實現(xiàn)從端子至 I/O 模塊的無干擾信號傳輸;
系統(tǒng)集成的屏蔽連接組件,節(jié)省空間,安裝迅速。
自組裝式電壓組,不帶外部接線或跳線;
可更換接線盒;
并排鎖定基本單元以實現(xiàn)較高機(jī)械負(fù)荷能力;
根據(jù)色碼 CC 對端子執(zhí)行可選的模塊特定的顏色標(biāo)識;
可使用刀口寬度達(dá) 3.5 mm 的標(biāo)準(zhǔn)螺絲刀來操作彈簧型常閉觸點。
使用簡便:
· 通過總線適配器,可以靈活選擇PROFINET的連接方式。
· 直插式端子技術(shù),接線無需工具。
· 接線端子孔和彈簧下壓觸點的排布更加合理,接線更加方便。
· 彩色端子標(biāo)簽,參考標(biāo)識牌以及標(biāo)簽條,帶來了清晰明確的標(biāo)識。
· 通道級的診斷功能。
設(shè)計緊湊:
· 單站擴(kuò)展多支持64個模塊。
· 節(jié)省控制箱內(nèi)的空間。
· 外形緊湊,適用于80mm的標(biāo)準(zhǔn)控制箱。
功能強(qiáng)大:
· PROFINET高速通訊
· 電子模塊和接線端子盒部分均可以在線熱插拔
· 從導(dǎo)線,端子盒和背板總線直至PROFINET電纜采用統(tǒng)一的屏蔽設(shè)計理念
· 系統(tǒng)集成PROFIenergy帶來更高的能效