廣西西門子V90伺服系統(tǒng)代理商
截取實(shí)數(shù)長(zhǎng)整數(shù)部分(TRUNC)指令是將實(shí)數(shù)舍棄小數(shù)部分,并將其轉(zhuǎn)換為雙整數(shù)格式。截取實(shí)數(shù)長(zhǎng)整數(shù)部分(TRUNC)指令和參數(shù)見表4-33。
表4-33 截取實(shí)數(shù)長(zhǎng)整數(shù)部分(TRUNC)指令和參數(shù)
用一個(gè)例子來說明截取實(shí)數(shù)長(zhǎng)整數(shù)部分( TRUNC)指令,梯形圖和指令表如圖4-67所示。當(dāng)I0.0閉合時(shí),激活截取實(shí)數(shù)長(zhǎng)整數(shù)部分指令,IN中的實(shí)數(shù)存儲(chǔ)在MD0中,假設(shè)這個(gè)實(shí)數(shù)為3.14,舍棄實(shí)數(shù)的小數(shù)部分后,OUT端的MD4中的雙整數(shù)是3,假設(shè)這個(gè)實(shí)數(shù)為3.88,舍棄實(shí)數(shù)的小數(shù)部分后OUT端的MD4中的雙整數(shù)是3。
圖4-67 截取實(shí)數(shù)長(zhǎng)整數(shù)部分( TRUNC)指令示例
TRUNC和ROUND指令是有區(qū)別的,前者是將實(shí)數(shù)的小數(shù)部分舍棄,而后者是四舍五入。
ROUND指令是將實(shí)數(shù)進(jìn)行四舍五入取整后轉(zhuǎn)換成雙整數(shù)的格式。實(shí)數(shù)四舍五入為雙整數(shù)指令和參數(shù)見表4-32。
表4-32 實(shí)數(shù)四舍五入為雙整數(shù)指令和參數(shù)
用一個(gè)例子來說明實(shí)數(shù)四舍五入為雙整數(shù)指令,梯形圖和指令表如圖4-66所示。當(dāng)I0.0閉合時(shí),激活實(shí)數(shù)四舍五入指令,IN中的實(shí)數(shù)存儲(chǔ)在MD0中,假設(shè)這個(gè)實(shí)數(shù)為3.14,進(jìn)行四舍五入運(yùn)算后OUT端的MD4中的雙整數(shù)是3,假設(shè)這個(gè)實(shí)數(shù)為3.88,進(jìn)行四舍五入運(yùn)算后OUT端的MD4中的雙整數(shù)是4。
圖4-66 實(shí)數(shù)四舍五入為雙整數(shù)指令示例
雙整數(shù)轉(zhuǎn)換成實(shí)數(shù)指令是將IN端的內(nèi)容以雙整數(shù)的格式讀入,然后將其轉(zhuǎn)換為實(shí)數(shù)碼格式輸出到OUT端。實(shí)數(shù)格式在后續(xù)算術(shù)計(jì)算中是很常用的,如3.14就是實(shí)數(shù)形式。雙整數(shù)轉(zhuǎn)換成實(shí)數(shù)指令和參數(shù)見表4-31。
表4-31 雙整數(shù)轉(zhuǎn)換成實(shí)數(shù)指令和參數(shù)
用一個(gè)例子來說明雙整數(shù)轉(zhuǎn)換成實(shí)數(shù)指令,梯形圖和指令表如圖4-64所示。當(dāng)I0.0閉合時(shí),激活雙整數(shù)轉(zhuǎn)換成實(shí)數(shù)指令,IN中的雙整數(shù)存儲(chǔ)在MD0中,(假設(shè)用10進(jìn)制表示為16),轉(zhuǎn)換完成后OUT端的MD4中的實(shí)數(shù)是16。一個(gè)實(shí)數(shù)要用4個(gè)字節(jié)存儲(chǔ)。
圖4-64 雙整數(shù)轉(zhuǎn)換成實(shí)數(shù)指令示例
STEP 7中沒有將整數(shù)直接轉(zhuǎn)化成實(shí)數(shù)的指令,但可以通過數(shù)次轉(zhuǎn)換將整數(shù)轉(zhuǎn)換成實(shí)數(shù),先將整數(shù)轉(zhuǎn)換成雙整數(shù),再將雙整數(shù)轉(zhuǎn)換成實(shí)數(shù)。
整數(shù)轉(zhuǎn)換成雙整數(shù)指令是將IN端的內(nèi)容以整數(shù)的格式讀入,然后將其轉(zhuǎn)換為雙整數(shù)碼格式輸出到OUT端。整數(shù)轉(zhuǎn)換成雙整數(shù)指令和參數(shù)見表4-30。
表4-30 整數(shù)轉(zhuǎn)換成雙整數(shù)指令和參數(shù)
用一個(gè)例子來說明整數(shù)轉(zhuǎn)換成雙整數(shù)指令,梯形圖和指令表如圖4-63所示。當(dāng)I0.0閉合時(shí),激活整數(shù)轉(zhuǎn)換成雙整數(shù)指令,IN中的整數(shù)存儲(chǔ)在MW0中,(假設(shè)用16進(jìn)制表示為16#0016),轉(zhuǎn)換完成后OUT端的MD4中的雙整數(shù)是16#0000 0016。
圖4-63 整數(shù)轉(zhuǎn)換成雙整數(shù)指令示例
整數(shù)轉(zhuǎn)換成BCD指令是將IN端的內(nèi)容以整數(shù)的格式讀入,然后將其轉(zhuǎn)換為BCD碼格式輸出到OUT端。如果IN端的整數(shù)大于999,PLC不停機(jī),仍然正常運(yùn)行。由于字的BCD碼大只能表示C#999(高4位為符號(hào)位)。若IN端的內(nèi)容大于999,CPU將IN端的內(nèi)容直接送到OUT端輸出,不經(jīng)過I BCD的轉(zhuǎn)換。這時(shí)OUT輸出的內(nèi)容可能超出BCD碼的范圍。另外OUT端的內(nèi)容若為BCD碼,也有可能是超過999的整數(shù)轉(zhuǎn)換出來的,例如整數(shù)2457通過I BCD指令以后,OUT的值為C#999。因此在使用I BCD指令時(shí)應(yīng)該保證整數(shù)小于等于999。此外,如果IN端的整數(shù)為負(fù)整數(shù)時(shí)。轉(zhuǎn)換出的BCD碼高4位為“1”。整數(shù)轉(zhuǎn)換成BCD指令和參數(shù)見表4-29。
表4-29 整數(shù)轉(zhuǎn)換成BCD指令和參數(shù)
用一個(gè)例子來說明整數(shù)轉(zhuǎn)換成BCD指令,梯形圖和指令表如圖4-62所示。當(dāng)I0.0閉合時(shí),激活整數(shù)轉(zhuǎn)換成BCD指令,IN中的整數(shù)存儲(chǔ)在MW0中,(假設(shè)用16進(jìn)制表示為16#16),轉(zhuǎn)換完成后OUT端的MW2中的BCD數(shù)是22。
圖4-62 整數(shù)轉(zhuǎn)換成BCD指令示例
廣西西門子V90伺服系統(tǒng)代理商