大部分人都知道S7協(xié)議一次性讀取有限制,但是具體是多少?怎么計(jì)算出來的?
S7協(xié)議的一次性讀取長度是根據(jù)PDU計(jì)算出來的,這個(gè)PDU的值是來自于PLC本身,不同型號的CPU,它的PDU是不一樣的,
西門子PLC的PDU大小是和CPU息息相關(guān)的,一般會有240、480、960三個(gè)檔次,知道PDU之后,那么一次性讀取的字節(jié)長度,就是在PDU的基礎(chǔ)上減去18,這個(gè)18是指包頭包尾會有18個(gè)字節(jié),這樣我們就知道了一般的PLC,一次性能讀取222個(gè)字節(jié)(240-18=222),但是對于S7-1516這樣的PLC,我們一次性是可以讀取942個(gè)字節(jié)的(960-18=942),這個(gè)一次性能讀取的字節(jié)越長,越能提高上位機(jī)的通信效率。
剛剛的方式是通過KepServer測試的,實(shí)際開發(fā)過程中,該怎么獲取CPU的PDU呢,實(shí)際上在建立連接的第二次握手時(shí),返回的報(bào)文中就包含PDU的值
對于很多其他的通信協(xié)議,當(dāng)我們遇到數(shù)據(jù)變量比較零散,同時(shí)讀取多個(gè)存儲區(qū)或者一個(gè)存儲區(qū)多個(gè)不同部分的時(shí)候,我們只能針對每個(gè)存儲區(qū)或者每塊區(qū)域做一個(gè)數(shù)據(jù)請求,但是西門子S7協(xié)議可以解決這樣的問題。
西門子S7協(xié)議有一個(gè)非常強(qiáng)大的一個(gè)地方,可以同時(shí)讀取很多個(gè)不同的存儲區(qū),大支持19種,總共讀取長度仍然受PDU的限制。
這里我們?nèi)匀灰詫?shí)驗(yàn)測試為例,體驗(yàn)多組讀取帶來的美妙體驗(yàn)。
假設(shè)我們的通信組配置如下:通信組01:讀取I區(qū)從0開始的1個(gè)字節(jié)通信組02:讀取Q區(qū)從0開始的1個(gè)字節(jié)通信組03:讀取M區(qū)從0開始的200個(gè)字節(jié)通信組04:讀取M區(qū)從500開始的50個(gè)字節(jié)通信組05:讀取M區(qū)從1000開始的60個(gè)字節(jié)通信組06:讀取DB100從0開始的20個(gè)字節(jié)通信組07:讀取DB100從20開始的20個(gè)字節(jié)
通信組08:讀取DB100從40開始的20個(gè)字節(jié)
通信組09:讀取DB100從60開始的20個(gè)字節(jié)我們采用常用S7-1200PLC,通過配置軟件實(shí)現(xiàn)配置以上9個(gè)通信組,開始通信測試,首先我們選擇的是單組讀取的方式,就是針對每個(gè)組,依次進(jìn)行讀取,結(jié)果如下,耗時(shí)大約200ms,這個(gè)時(shí)間應(yīng)該相對來說還是比較正常的。
高頻整流電抗器:
6SN1111-0AA00-0BA1
6SN1111-0AB00-0AA0
6SN1111-0AA00-0BA0
6SN1111-0AA00-0BB0
6SN1111-0AA00-0BB1
6SN1111-0AA00-0BC0
6SN1111-0AA00-0BV0
6SN1111-0AA00-0BV1
6SN1111-0AA00-0CA0
6SN1111-0AA00-0CA1
6SN1111-0AA00-0CB0
6SN1111-0AA00-0CC0
6SN1111-0AA00-0CV0
6SN1111-0AA00-0CV1
6SN1111-0AA00-0DA0
6SN1111-0AA00-0DA1
6SN1111-0AA00-0DB0
6SN1111-0AA00-0DC0
6SN1111-0AA00-0EA0
6SN1111-0AA00-0EB0
6SN1111-0AA00-0EC0
6SN1111-0AA00-0EV0
6SN1111-0AA00-0FA0
6SN1111-0AA00-0FB0
6SN1111-0AA00-0FB1
6SN1111-0AA00-0FC0
6SN1111-0AA00-1DV0
6SN1111-0AA00-1EA0
吉林6DD1807-5DA7設(shè)備
吉林6DD1807-5DA7設(shè)備
6SN1111-0AA00-1FA0
6SN1111-0AA00-1FV0
6SN1111-0AA01-0BA0
6SN1111-0AA01-0BA1
6SN1111-0AA01-0BA2
6SN1111-0AA01-0CA0
6SN1111-0AA01-0CA1
6SN1111-0AA01-0CA2
6SN1111-0AA01-0DA0
6SN1111-0AA01-1AA0
6SN1111-0AA01-1AA1
6SN1111-0AA01-1BA0
6SN1111-0AA01-1BA1
6SN1111-0AA01-1CA0
6SN1111-0AA01-1CA1
6SN1111-0AA01-2BA0
6SN1111-0AA01-2BB0
6SN1111-0AA01-2CA0
6SN1111-0AA01-2CB0
6SN1111-0AA01-2DA0
6SN1111-0AA01-2DB0
6SN1111-0AA01-2EA0
6SN1111-0AA01-2EB0
6SN1111-0AA01-2FA0
6SN1111-0AA01-2FB0
6SN1111-0AA02-0BA0
6SN1111-0AA02-0BB0
6SN1111-0AA02-0BC0
6SN1111-0AA02-0BD0
6SN1111-0AA02-0BE0
6SN1111-0AA02-0BF0
6SN1111-0AA02-0BG0
6SN1111-0AA02-0BH0
6SN1111-0AA02-0BJ0
6SN1111-0AA02-0CA0
6SN1111-0AA02-0CB0
6SN1111-0AA02-0CC0
6SN1111-0AA02-0CD0
6SN1111-0AA02-0CE0
6SN1111-0AA02-0CF0
6SN1111-0AA02-0CG0
6SN1111-0AA02-0CH0
6SN1111-0AA02-0CJ0
6SN1111-0AA02-0DA0
6SN1111-0AA02-0DB0
6SN1111-0AA02-0DC0
6SN1111-0AA02-0DD0
6SN1111-0AA02-0DE0
6SN1111-0AA02-0DF0
6SN1111-0AA02-0DG0
6SN1111-0AA02-0DH0
6SN1111-0AA02-0DJ0
6SN1111-0AA02-0EA0
6SN1111-0AA02-0EB0
6SN1111-0AA02-0EC0
6SN1111-0AA02-0ED0
6SN1111-0AA02-0EE0
6SN1111-0AA02-0EF0
6SN1111-0AA02-0EG0
6SN1111-0AA02-0EH0
6SN1111-0AA02-0EJ0
6SN1111-0AA02-0FA0
6SN1111-0AA02-0FB0
6SN1111-0AA02-0FC0
6SN1111-0AA02-0FD0
6SN1111-0AA02-0FE0
6SN1118-0AA11-0AA0
6SN1118-0AA11-0AA1
6SN1118-0AE11-0AA0
6SN1118-0BJ11-0AA0
6SN1118-0BK11-0AA0
6SN1118-0DH21-0AA0
6SN1118-0DH21-0AA1
6SN1118-0DJ21-0AA0
吉林6DD1807-5DA7設(shè)備
6SN1118-0DJ23-0AA0
6SN1118-0DJ23-0AA1
6SN1118-0DK21-0AA0
6SN1118-0DK21-0AA1
6SN1118-0DK23-0AA0
6SN1118-0NH10-0AA2
6SN1118-0NH11-0AA0
6SN1118-0DG21-0AA1
6SN1118-0DG23-0AA1
6SN1118-0DH23-0AA1
6SN1118-0AA11-0AA0
6SN1118-0AA11-0AA1
6SN1118-0AD11-0AA0
6SN1118-0AD11-0AA1
6SN1118-0AE11-0AA0
6SN1118-0AE11-0AA1
6SN1118-0BJ11-0AA0
吉林6DD1807-5DA7設(shè)備
6SN1118-0DA11-0AA0
6SN1118-0DA12-0AA0
6SN1118-0DA13-0AA0
6SN1118-0DB11-0AA0
6SN1118-0DB12-0AA0
6SN1118-0DB13-0AA0
6SN1118-0DG11-0AA0
6SN1118-0DG12-0AA0
6SN1118-0DG13-0AA0
6SN1118-0DG21-0AA0
吉林6DD1807-5DA7設(shè)備
6SN1118-0DG22-0AA0
6SN1118-0DG22-0AA1
6SN1118-0DG23-0AA0
6SN1118-0DG23-0AA1
6SN1118-0DH11-0AA0
6SN1118-0DH12-0AA0
6SN1118-0DH13-0AA0
6SN1118-0DH21-0AA0
6SN1118-0DH21-0AA1
6SN1118-0DH22-0AA0
6SN1118-0DH22-0AA1
6SN1118-0DH23-0AA0
6SN1118-0DH23-0AA1
6SN1118-0DJ21-0AA0
6SN1118-0DJ21-0AA1
6SN1118-0DJ21-0AA2
6SN1118-0DJ23-0AA0
6SN1118-0DJ23-0AA1
6SN1118-0DJ23-0AA2
6SN1118-0DK21-0AA0
6SN1118-0DK21-0AA1
6SN1118-0DK21-0AA2吉林6DD1807-5DA7設(shè)備
6SN1118-0DK23-0AA0
6SN1118-0DK23-0AA1
6SN1118-0DK23-0AA2
6SN1118-0DM11-0AA0
6SN1118-0DM11-0AA1
6SN1118-0DM13-0AA0
6SN1118-0DM13-0AA1
6SN1118-0DM21-0AA0
6SN1118-0DM23-0AA0
6SN1118-0DM31-0AA0
6SN1118-0DM31-0AA1
6SN1118-0DM31-0AA2
吉林6DD1807-5DA7設(shè)備
6SN1118-0DM33-0AA1
6SN1118-0DM33-0AA2
6SN1118-0NH00-0AA0
6SN1118-0NH00-0AA1
6SN1118-0NH00-0AA2
6SN1118-0NH00-0BA2
6SN1118-0NH01-0AA0
6SN1118-0NH01-0AA1
6SN1118-0NH10-0AA0
6SN1118-0NH10-0AA2
6SN1118-0NH11-0AA0
6SN1118-0NH11-0AA1
6SN1118-0NJ00-0AA0
6SN1118-0NJ00-0AA1
6SN1118-0NJ00-0AA2
6SN1118-0NJ01-0AA0
6SN1118-0NJ01-0AA1
吉林6DD1807-5DA7設(shè)備
6SN1118-0NK00-0AA1
6SN1118-0NK00-0AA2
6SN1118-0NK01-0AA0
6SN1118-0NK01-0AA1
6SN1118-1NH00-0AA0
6SN1118-1NH00-0AA1
6SN1118-1NH00-0AA2
6SN1118-1NH01-0AA0
6SN1118-1NH01-0AA1
6SN1118-1NJ00-0AA0
6SN1118-1NJ00-0AA1
6SN1118-1NJ00-0AA2
6SN1118-1NJ01-0AA0
6SN1118-1NJ01-0AA1
6SN1118-1NK00-0AA0
6SN1118-1NK00-0AA1
6SN1118-1NK00-0AA2
6SN1118-1NK01-0AA0
6SN1118-1NK01-0AA1
吉林6DD1807-5DA7設(shè)備
6SN1123-1AA00-0BA1
6SN1123-1AA00-0EA1
6SN1123-1AB00-0AA1
6SN1123-1AB00-0BA1
6SN1123-1AB00-0CA0
6SN1123-1AB00-0CA1
6SN1123-1AA00-0AA0
6SN1123-1AA00-0AA1
6SN1123-1AA00-0AA1
6SN1123-1AA00-0AA2
6SN1123-1AA00-0AA2
6SN1123-1AA00-0BA0
6SN1123-1AA00-0BA1
6SN1123-1AA00-0BA1
6SN1123-1AA00-0BA2
6SN1123-1AA00-0BA2
6SN1123-1AA00-0CA0
6SN1123-1AA00-0CA1
吉林6DD1807-5DA7設(shè)備將熱繼電器的常閉觸點(diǎn)并聯(lián)接入變頻器控制端子,作為變頻器的停車指令,或串接在控制電路中,直接斷開主電路。其實(shí)不然,