S7-200系列PLC本身集成了一個(gè)RS485接口,通過(guò)這個(gè)RS485接口可以實(shí)現(xiàn)自由口通信、MODBUS RTU通信、USS協(xié)議通信,在這些通信中自由口通信為最基本也是最重要的通信,想要學(xué)習(xí)好S7-200系列PLC的串口通信功能,就須要掌握好自由口通信的應(yīng)用。雖然西門子有提供相應(yīng)的MODBUS庫(kù)及USS協(xié)議庫(kù)指令。讓用戶快速的掌握MODBUS及USS協(xié)議通信程序的編寫,若有研究過(guò)庫(kù)指令的朋友,其實(shí)可以發(fā)現(xiàn),庫(kù)指令也是通過(guò)自由口方式做出來(lái)的一個(gè)功能塊程序。
接下來(lái)的幾篇文章,我給大家分享下自己學(xué)習(xí)自由口通信的體會(huì),希望對(duì)大家學(xué)習(xí)自由口通信有一定的幫助。
在學(xué)習(xí)自由口程序編寫之前,我們首先要理解以下的一些基本知識(shí)內(nèi)容。
(1)通信協(xié)議
通信協(xié)議是設(shè)備與設(shè)備之間進(jìn)行信息交換的一種約定,類似于人與人交流的語(yǔ)言。通信協(xié)議有很多種。大家常常聽到的MODBUS協(xié)議,USS協(xié)議,PPI協(xié)議。MPI協(xié)議等這些都是通信協(xié)議的。
通信協(xié)議是在學(xué)習(xí)自由口通信時(shí)必須要掌握的,自由口通信的核心就是使用發(fā)送指令(XMT)和接收指令(RCV)來(lái)完成數(shù)據(jù)的發(fā)送和接收,那么發(fā)送什么數(shù)據(jù)出去,在接收回來(lái)的數(shù)據(jù)中,哪些數(shù)據(jù)是有效的數(shù)據(jù),這些都是需要從通信協(xié)議中來(lái)獲得信息的。通信協(xié)議由作為從站的通訊設(shè)備給出,如PLC與儀表通信或是變頻器通信,那么在儀表或是變頻器的說(shuō)明書上就會(huì)提供這個(gè)儀表或是變頻器所支持的通信協(xié)議。(如下圖所示為一個(gè)儀表的通信協(xié)議)
(2)信息幀格式或消息報(bào)文
說(shuō)到信息幀格式,很多人不理解什么是信息幀格式,有人也把信息幀格式叫做數(shù)據(jù)個(gè)數(shù),或是消息報(bào)文,不管怎么說(shuō),意思都是一樣的,信息幀格式表示的是我們PLC需要發(fā)送出去的數(shù)據(jù),以及接收回來(lái)的數(shù)據(jù)的是一種什么樣的格式,這個(gè)信息幀格式是根據(jù)通信協(xié)議而來(lái)的。如上面所描述的通信協(xié)議。假設(shè)規(guī)定使用ascall的字符來(lái)進(jìn)行通信的,若需要讀取站號(hào)為01的儀表的過(guò)程值數(shù)據(jù),而過(guò)程的參數(shù)名為“M1”(注:這些參數(shù)名在儀表說(shuō)明書中會(huì)給出)那么根據(jù)這個(gè)通信協(xié)議我們就可以得到兩條信息幀的格式,一條是PLC需要發(fā)送出去的信息幀格式,另外一條是PLC接收回來(lái)的信息幀格式:
(3) 起始符、結(jié)束符與起始位和停止位的區(qū)別
在自由口通信中經(jīng)常會(huì)聽到,起始位、停止位、起始符、結(jié)束符,那么他們之間有什么區(qū)別呢?
首先從字面上的理解,大家就可以知道,停止位或起始位,他是一個(gè)位。而起始符和結(jié)束符是一個(gè)字符,一條信息幀格式中包含了多個(gè)字符,一條信息幀格式中有起始符和結(jié)束符,如上面協(xié)議中的描述,起始符(EOT),結(jié)束符(ENQ)。而在這條信息幀格式的字符中,每個(gè)字符都有起始位、停止位、數(shù)據(jù)位和奇偶校驗(yàn)位組成。如圖所示:
作者:技成培訓(xùn)網(wǎng)(曾鑫)
來(lái)源微信號(hào):我愛學(xué)PLC
文章為原創(chuàng)作品,轉(zhuǎn)載請(qǐng)聯(lián)系作者!
-------------------------------
如果您喜歡此內(nèi)容歡迎點(diǎn)擊下方分享或者收藏
42次瀏覽聯(lián)系客服