遼寧西門子S7-1500PLC模塊價(jià)格(代理商)

西門子200smart modbus自由口通訊BCC校驗(yàn)方式
自由口通訊過程中很難避免通訊數(shù)據(jù)的出錯(cuò)概率,這就要求在通訊數(shù)據(jù)中增加校驗(yàn)數(shù)據(jù),以判斷數(shù)據(jù)是否是正確的。常用的校驗(yàn)方式有CRC、LRC,今天來說說BCC方式,該校驗(yàn)方式是把參與校驗(yàn)的數(shù)據(jù)進(jìn)行“異或”運(yùn)算。
BCC校驗(yàn)方式的編程思路:
將參與校驗(yàn)的數(shù)據(jù)逐個(gè)進(jìn)行異或運(yùn)算。
1) 創(chuàng)建一個(gè)BCC校驗(yàn)的子程序,以便進(jìn)行幾個(gè)或者多個(gè)數(shù)據(jù)的校驗(yàn)。
2) 在主程序或其它子程序中調(diào)用BCC校驗(yàn)
BCC子程序:
1) 創(chuàng)建接口變量并按參與通訊的數(shù)據(jù)異或運(yùn)算

創(chuàng)建接口變量并按參與通訊的數(shù)據(jù)異或運(yùn)算
為方便閱圖理解注釋,用STL方式

2) 在主程序OB1或者其它子程序中調(diào)用

3) 將程序下載到cpu驗(yàn)證
異或指令:將2個(gè)參與異或運(yùn)算的數(shù)據(jù)按二進(jìn)制方式按位進(jìn)行運(yùn)算,假如第0位數(shù)據(jù)均為0,則運(yùn)算結(jié)果為0;如果均為1,則運(yùn)算結(jié)果為0;其它狀態(tài)運(yùn)算結(jié)果均為1。
西門子PLC博途平臺(tái)的內(nèi)部寄存器尋址方法
所謂寄存器尋址,就是我們使用plc內(nèi)部寄存器的方法。如果把PLC的內(nèi)部寄存器比喻成一幢大樓,那么尋址方法就是對(duì)房間門牌的編號(hào)。只有掌握了寄存器的尋址方法,我們才能正確使用內(nèi)部寄存器。
內(nèi)部寄存器的尋址,是歐美系PLC所*的,它不同于日系的PLC。因?yàn)槿障档腜LC一般是直接使用。比如三菱的PLC,它用D0,D1來表示內(nèi)部的數(shù)據(jù)寄存器。M0,M1 表示的是位寄存器,D0 和M0之間沒有任何關(guān)系而歐系PLC與日系的*不同,是使用和計(jì)算機(jī)一樣的尋址方法。
計(jì)算機(jī)基本的存儲(chǔ)單位是位,同樣,在PLC內(nèi)也是采用位作為基本的尋址單位。八個(gè)位組成一個(gè)字節(jié),兩個(gè)字節(jié)組成一個(gè)字。西門子博途軟件平臺(tái)中,高位在低字節(jié),低位在高字節(jié)。這樣的存儲(chǔ)模式有點(diǎn)兒類似于把數(shù)據(jù)當(dāng)作字符串順序處理:地址由小向大增加,而數(shù)據(jù)從高位往低位放,這和我們的閱讀習(xí)慣*。這樣說起來可能很抽象,我們直接看圖。

如圖,這是基本的存儲(chǔ)單元,MB0.0表示的是一個(gè)基本的位,MB0表示一個(gè)字節(jié),很明顯,從MB0.0到MB0.7的八個(gè)位組成了一個(gè)字節(jié),也就是MB0。其中MB0.0相當(dāng)于三菱plc的M0,而MB0可以認(rèn)為是三菱PLC的D0,很顯然,他們是你中有我,我中有你的關(guān)系。所以,寫程序前一定要做好規(guī)劃,避免地址重疊。

這就是西門子博途軟件平臺(tái)的尋址方式,很顯然,他有重疊的部分,這是我們要注意的,也是和日系PLC大的不同,也可以說是歐系PLC的一個(gè)大陷阱。比如,MW1 和 MW0 MW2有重疊的部分,我們使用了MW1之后,為了避免地址重復(fù),就不要再使用MW0 和MW1了。MD0 同理。
遼寧西門子S7-1500PLC模塊價(jià)格(代理商)