wingwf2000
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 53 個
工控威望: 159 點(diǎn)
下載積分: 669 分
在線時間: 14(小時)
注冊時間: 2010-09-26
最后登錄: 2024-12-08
查看wingwf2000的 主題 / 回貼
樓主  發(fā)表于: 2019-07-20 09:12
間接訪問就是用指定存儲器的地址或索引或ID來讀寫存儲器的內(nèi)容,這里是使用索引的方式,因為輸入的數(shù)據(jù)不是存儲器的實(shí)際地址,西門子的存儲器地址比較復(fù)雜,按類區(qū)別,一般得不到存儲器的地址,但存儲器的索引也就是存儲器的號則經(jīng)常使用,一般情況下在S7-300、400中需要用STL指令寫,梯形圖是不支持的,但STL不容易學(xué),也容易出錯,所以用SCL寫了這個庫,然后在梯形圖中使用,方便了程序的編寫。
其中S7-300_1中是編譯過的庫,S7-300_4中的是SCL源代碼,由于高級語言的結(jié)構(gòu)性太強(qiáng),所以編譯后的代碼肯定沒STL直接寫的那么高效,但高級語言出錯機(jī)會小,另外就是編譯后的庫不太好監(jiān)控,因為編譯后變成了STL格式。
注意:字MW0的索引是0,字MW1的索引是1,雖然一般不會這樣用,因為字的邊界或起點(diǎn)一般定在偶數(shù),所以參數(shù)里的索引事實(shí)上指字的起點(diǎn)地址,對于雙字也是一樣的;對于Q、DB、I區(qū)的字和雙字也是這樣的;所以若是循環(huán)使用連續(xù)的字或雙字時,要注意字的索引和雙字的索引的增量分別是2和4,如果增量是1的話,就會導(dǎo)致前后的操作發(fā)生數(shù)據(jù)重疊。
[ 此帖被wingwf2000在2019-07-26 00:19重新編輯 ]
附件: 間接訪問.rar (224 K) 下載次數(shù):466
網(wǎng)站提示: 請不要用迅雷下載附件,容易出錯
wingwf2000
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 53 個
工控威望: 159 點(diǎn)
下載積分: 669 分
在線時間: 14(小時)
注冊時間: 2010-09-26
最后登錄: 2024-12-08
查看wingwf2000的 主題 / 回貼
1樓  發(fā)表于: 2019-07-20 09:14
在編譯SCL時可以關(guān)閉地址溢出的檢查選項,會減小編譯后的STL代碼量,但可能傳入的參數(shù)超范圍時導(dǎo)致錯誤,建議還是打開地址檢查選項,使程序更健壯
wingwf2000
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 53 個
工控威望: 159 點(diǎn)
下載積分: 669 分
在線時間: 14(小時)
注冊時間: 2010-09-26
最后登錄: 2024-12-08
查看wingwf2000的 主題 / 回貼
2樓  發(fā)表于: 2019-07-20 09:17
程序分為對I區(qū)、Q區(qū)、M區(qū)和DB區(qū)的位、字節(jié)、字、雙字的讀、寫,其中對位的讀寫又分兩種,一種是給出位所在字節(jié)的地址和位的位號,另一種是直接給出位的編號,也就是字節(jié)地址*8+位號,這樣便于在循環(huán)時自動修改位地址
wingwf2000
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 53 個
工控威望: 159 點(diǎn)
下載積分: 669 分
在線時間: 14(小時)
注冊時間: 2010-09-26
最后登錄: 2024-12-08
查看wingwf2000的 主題 / 回貼
3樓  發(fā)表于: 2019-07-20 09:18
呵呵,西門子的I區(qū)也是可以寫的哦,只是下個周期時新數(shù)據(jù)會覆蓋上次修改的數(shù)據(jù),但有時可能會用到修改I區(qū)數(shù)據(jù)的功能
zhoutw10
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 50 個
工控威望: 102 點(diǎn)
下載積分: 948 分
在線時間: 10(小時)
注冊時間: 2019-07-16
最后登錄: 2024-07-11
查看zhoutw10的 主題 / 回貼
4樓  發(fā)表于: 2019-07-20 17:06
日常冒泡。。。順便學(xué)習(xí)     
szg3000
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 16 個
工控威望: 135 點(diǎn)
下載積分: 594 分
在線時間: 6(小時)
注冊時間: 2011-09-17
最后登錄: 2024-06-22
查看szg3000的 主題 / 回貼
5樓  發(fā)表于: 2020-03-11 11:48
多謝!學(xué)習(xí)學(xué)習(xí)。
fzq0425
感謝遇到工控人家園
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 275 個
工控威望: 318 點(diǎn)
下載積分: 4312 分
在線時間: 19(小時)
注冊時間: 2019-09-21
最后登錄: 2020-05-29
查看fzq0425的 主題 / 回貼
6樓  發(fā)表于: 2020-03-13 09:06
樓主霸氣 英明 果敢啊佩服
來這里學(xué)習(xí)
luwenlong
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 68 個
工控威望: 177 點(diǎn)
下載積分: 32726 分
在線時間: 218(小時)
注冊時間: 2012-03-31
最后登錄: 2024-12-08
查看luwenlong的 主題 / 回貼
7樓  發(fā)表于: 2020-03-13 12:35
感謝樓主的分享!
往事如風(fēng)
科技改變制造
級別: 網(wǎng)絡(luò)英雄

精華主題: 0
發(fā)帖數(shù)量: 11284 個
工控威望: 18662 點(diǎn)
下載積分: 12397 分
在線時間: 2698(小時)
注冊時間: 2013-01-31
最后登錄: 2024-12-21
查看往事如風(fēng)的 主題 / 回貼
8樓  發(fā)表于: 2020-03-13 19:25
學(xué)習(xí)一下
三人行者必有我?guī)?,擇其善者而從之