weisongyuan
永遠(yuǎn)年輕
級別: 網(wǎng)絡(luò)英雄
精華主題: 0
發(fā)帖數(shù)量: 581 個
工控威望: 10117 點
下載積分: 1421 分
在線時間: 479(小時)
注冊時間: 2013-08-13
最后登錄: 2024-11-08
查看weisongyuan的 主題 / 回貼
樓主  發(fā)表于: 2024-01-11 09:57
很多網(wǎng)友疑問為什么擴展模塊尋址模擬量從AIW16或者AQW16開始;數(shù)字量擴展從地址I8或者Q8開始?而網(wǎng)上又搜不到。本人將個人理解整理以便共享。不喜勿噴。                         這是為了固定擴展模塊首地址,使擴展模塊的地址具有唯一性
數(shù)字量擴展最大32點(4個字節(jié)),模擬量擴展最大8點(16個字節(jié));CPU最大60點(8個字節(jié))。
這樣對于S7-200 SMART就是:
每一個擴展模塊最多占用字節(jié)數(shù):數(shù)字量擴展占用4個字節(jié);模擬量擴展16字節(jié)。
因為不能確定我們擴展的是什么模塊,所以系統(tǒng)默認(rèn)是最大量,一個擴展模塊(無論是什么擴展模塊)同時占用:數(shù)字量4個字節(jié),模擬量16個字節(jié)(8個點)。
這樣的結(jié)果就是:無論我們擴展的是什么模塊,也不管是多少點的模塊;只要確定了擴展模塊的位置(EM0-EM5),就決定了這個模塊的首地址。也就是說這個位置的擴展模塊的首地址是固定不變的,并且是唯一的。
這樣最大的優(yōu)點就是不會造成我們編程的時候?qū)Φ刂返腻e誤使用(硬件接線地址與程序地址不符)
由于CPU也是一個模塊(系統(tǒng)默認(rèn)數(shù)字量占用8個字節(jié),無論是20點 還是60點;模擬量不管實際模塊占用多少點,系統(tǒng)默認(rèn)都是占用16字節(jié)),這就是為什么EM0位置:數(shù)字量擴展首地址是8.0;模擬量首地址是W16,無論輸入、輸出。因為前面地址被CPU默認(rèn)占用。
       假如:你前面EM0-EM4位置都是數(shù)字量擴展,模擬量擴展在EM5,你整個系統(tǒng)的模擬量首地址就是AIW96或者是AQW96;同樣的道理,無論前面什么擴展,EM5數(shù)字量擴展模塊的首地址一定是28。這個可以自己計算,很簡單的規(guī)律。
我剛接觸SMART的時候,由于只能擴展6個模塊假如模擬量多就造成數(shù)字量不夠用的尷尬。那時候還沒有32點擴展,最大16點,我當(dāng)時的困惑,為什么這樣尋址,幾年后有了32點擴展解決了數(shù)字量不夠用的問題,同時也理解了尋址規(guī)律。心里恍然大悟:“原來如此”。

這也給了我們一個信息:無論他以后如何發(fā)展,CPU總點數(shù)不會超過8個字節(jié),一個數(shù)字量擴展模塊不會超過32點,一個模擬量擴展模塊不會超過8個信號16W
比老200的優(yōu)點是:
200數(shù)字量與模擬量擴展尋址是分開的,就是說模擬量與數(shù)字量擴展尋址是各自獨立的。后面的擴展尋址必須根據(jù)前面擴展的是模擬量還是數(shù)字量模塊決定首地址,這樣雖然也可以容易尋址,但是容易造成同一個位置的擴展模塊,由于前面擴展模塊的類型不同而首地址就不同。SMART就解決了這個問題,只要確定了擴展模塊的位置就決定了首地址,并且是唯一的。
哈哈哈 由于在線等郵件,所以無聊就啰嗦了。
敬請各位網(wǎng)友們莫怪糟老頭太啰嗦。不喜勿噴
永遠(yuǎn)年輕