xiaqingasus
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 4 個
工控威望: 112 點
下載積分: 521 分
在線時間: 16(小時)
注冊時間: 2012-07-26
最后登錄: 2016-06-29
查看xiaqingasus的 主題 / 回貼
樓主  發(fā)表于: 2012-12-03 20:21
本人自學S7-300,,,看到模擬量的地方 想知道為什么 模擬量輸入需要經(jīng)過 I   DI  R這三個過程.什么道理呢 求教啊 盡量說的簡單點好了謝謝
cvlsam
富士低壓,POD(觸摸屏),PLC專賣
級別: VIP會員

精華主題: 3 篇
發(fā)帖數(shù)量: 6760 個
工控威望: 38361 點
下載積分: 923 分
在線時間: 9473(小時)
注冊時間: 2006-09-13
最后登錄: 2024-09-20
查看cvlsam的 主題 / 回貼
1樓  發(fā)表于: 2012-12-03 20:48
一般模擬量并不做這種,而是采集溫度才這樣做。

為何采集溫度會這樣做呢?因為對于7KF這種多用途模塊來說,其實際溫度值與采集數(shù)據(jù)之間的關系為  采集數(shù)據(jù)處以10就是實際溫度。

那么,當采集數(shù)據(jù)為322,明眼人一看就知道,那不就是32.2度么,是的,如果直接除以10,那么由于整形的關系,其結果0.2度被丟棄了。

所以,需要切換到浮點數(shù)除法,這樣才能保留精度。

為了轉換為浮點數(shù),浮點數(shù)的數(shù)據(jù)長度為32位,因此,必須首先擴展16位的整形到32位的長整形,因此需要ITD指令擴展。

其次才能通過DTR指令來轉換到浮點數(shù)。

如果你不在意小數(shù)點后的精度,那無需去轉換,直接整形除法即可。

Regards