整數(shù)轉(zhuǎn)換成浮點數(shù)計算公式 PLC中的模擬量為什么要將整數(shù)轉(zhuǎn)換成浮點數(shù)?
PLC中的模擬量為什么要將整數(shù)轉(zhuǎn)換成浮點數(shù)?如果不轉(zhuǎn)換成浮點數(shù),重復計算的誤差會很大。另外,連續(xù)計算的次數(shù)會過多。例如,單字加號采樣數(shù)為32767。您可以想象,如果您想規(guī)范化并輸入流程數(shù)學模型,以便在
PLC中的模擬量為什么要將整數(shù)轉(zhuǎn)換成浮點數(shù)?
如果不轉(zhuǎn)換成浮點數(shù),重復計算的誤差會很大。另外,連續(xù)計算的次數(shù)會過多。例如,單字加號采樣數(shù)為32767。您可以想象,如果您想規(guī)范化并輸入流程數(shù)學模型,以便在不轉(zhuǎn)換為浮點數(shù)的情況下處理十次和八次。
西門子S7-1200PLC如何轉(zhuǎn)換模擬量?
事實上,如果您知道計算模擬量和工程量的算法步驟,您可以將模擬值轉(zhuǎn)換為整數(shù),并使用加減乘除指令進行計算。然而,它不像fc105/fc106那樣方便。
如圖所示,模擬量輸入地址piw64使用norm X指令將模擬量的值轉(zhuǎn)換為0和1之間的實數(shù),因為模擬量信號設置為4-20mA輸入,相應的數(shù)據(jù)范圍為0-27648,所以norm X指令的最大值和最小值分別為0和27648。
后面的刻度ux指令是將0-1之間的實數(shù)轉(zhuǎn)換為-5pa到5pa之間的壓力值實數(shù),轉(zhuǎn)換成工程量。
您可以看到圖片的上一行,當我強制piw64值為0時,計算結果為-5pa;當我強制piw64值為27648時,計算結果為5pa。這說明該程序可以實現(xiàn)模擬量和工程量的轉(zhuǎn)換。
僅此而已。它應該對你有幫助。謝謝您!如果您有任何疑問,請注意留言,我會及時回復
怎樣將浮點數(shù)轉(zhuǎn)換成整數(shù)?
有兩種方法:1。通過強制類型轉(zhuǎn)換
float a=1.1f//定義一個浮點變量aint B=(int)a//這里用(int)方法強制轉(zhuǎn)換float,結果是1
2。通過轉(zhuǎn)換成字符串,在截斷的整數(shù)部分
float a=1.1f//定義一個浮點變量a
使用int指令將浮點數(shù)轉(zhuǎn)換成整數(shù),使用FLT指令將整數(shù)轉(zhuǎn)換成浮點數(shù)。這說明不難理解。值得注意的是,16位整數(shù)在轉(zhuǎn)換成浮點數(shù)后會占用32位的空間。
一般來說,PLC用于浮點數(shù)運算,它是一個相對精確的值(如脈沖數(shù))和相對較大的值,所以浮點數(shù)運算一般采用長字節(jié)運算(指令前加d),即dint和dflt。此時,轉(zhuǎn)換為浮點數(shù)的32位整數(shù)占用四個16位寄存器,即64位空間