時(shí)間:2015-08-04 15:25:28來(lái)源:胡勝方 厲紅婭
摘要:本文主要介紹了S7-200自由口通訊協(xié)議的特點(diǎn),大致闡述了S7-200與安全監(jiān)控系統(tǒng)的通訊過(guò)程,具體描述了S7-200與安全監(jiān)控系統(tǒng)通訊格式的組成以及通訊幀協(xié)議的含義,簡(jiǎn)單介紹了通訊編程步驟,并針對(duì)通訊中最常見的故障提出了解決方法。
關(guān)鍵詞:S7-200;安全監(jiān)控系統(tǒng);自由口通訊;通訊格式;通訊幀協(xié)議;故障
1引言
起重機(jī)作為重大物體的搬運(yùn)設(shè)備,在生產(chǎn)過(guò)程中起著至關(guān)重要的作用。它要遵循高效率、高可靠性、高安全性等生產(chǎn)相關(guān)規(guī)則與要求。然而面對(duì)近年來(lái)頻繁出現(xiàn)的起重機(jī)安全事故,如何提高安全性,如何提高效率就成為我們急需解決的任務(wù)。為了解決這一難題,我單位為觀音巖水電站自主研發(fā)設(shè)計(jì)的2×1600KN尾水起重機(jī)安全監(jiān)控管理系統(tǒng)首頁(yè)
門機(jī)已經(jīng)成功研發(fā)設(shè)計(jì)出起重機(jī)安全監(jiān)控管理系統(tǒng),并已經(jīng)順利通過(guò)驗(yàn)收和投入使用,安全監(jiān)控管理系統(tǒng)首頁(yè)見圖一。
圖一
在PLC與起重機(jī)安全監(jiān)控管理系統(tǒng)的通訊中,利用S7-200PLC自帶的RS485接口與起重機(jī)安全監(jiān)控系統(tǒng)進(jìn)行自由口通訊,S7-200PLC將安全監(jiān)控系統(tǒng)所需數(shù)據(jù)通過(guò)RS485自由口發(fā)送給起重機(jī)安全監(jiān)控管理系統(tǒng)。
2S7-200自由口通訊協(xié)議的特點(diǎn)
自由口通訊是指PLC提供了串行的通訊硬件,和用于定制通訊協(xié)議的相關(guān)指令,在控制系統(tǒng)中,當(dāng)要和PLC連接的控制設(shè)備的通訊協(xié)議已知時(shí),可以在PLC中進(jìn)行編程定制通訊協(xié)議,和控制設(shè)備進(jìn)行數(shù)據(jù)通訊。
S7-200CPU上的通信口在電氣上是標(biāo)準(zhǔn)的RS-485半雙工串行通信口,此串行字符通信的格式可以包括:一個(gè)起始位、7或8位字符(數(shù)據(jù)字節(jié))、一個(gè)奇/偶校驗(yàn)位,或者沒有校驗(yàn)位、一個(gè)停止位。自由口通信速波特率可以設(shè)置為1200、2400、4800、9600、19200、38400、57600或112500。采用自由口通訊方式時(shí),S7-200上的RS485口完全由用戶控制,可以與任何協(xié)議已知的設(shè)備進(jìn)行通訊,在這種情況下通訊協(xié)議完全由用戶制定,為此,S7-200提供了用于進(jìn)行通訊協(xié)議定制的特殊標(biāo)志位以及相關(guān)的通訊指令。
3S7-200與安全監(jiān)控系統(tǒng)的通訊過(guò)程
S7-200利用PLC自身自帶的RS485端口將起重機(jī)安全監(jiān)控系統(tǒng)需要的數(shù)據(jù)以16進(jìn)制的格式發(fā)送給安全監(jiān)控系統(tǒng)。當(dāng)PLC準(zhǔn)備開始發(fā)送數(shù)據(jù)時(shí),首先發(fā)送2個(gè)開始字符給起重機(jī)安全監(jiān)控系統(tǒng),安全監(jiān)控系統(tǒng)收到這兩個(gè)開始字符后與自身的開始字符相比較,如果相等就認(rèn)為PLC已經(jīng)開始發(fā)送數(shù)據(jù)了,安全監(jiān)控系統(tǒng)就接收從PLC發(fā)過(guò)來(lái)的數(shù)據(jù)并且將接收到的數(shù)據(jù)存儲(chǔ)到自己的寄存器中。當(dāng)PLC把起重機(jī)安全監(jiān)控系統(tǒng)所需的數(shù)據(jù)全部發(fā)送完后再發(fā)送一個(gè)檢驗(yàn)字符給安全監(jiān)控系統(tǒng),安全監(jiān)控系統(tǒng)將接收到的字符進(jìn)行計(jì)算并與PLC發(fā)送過(guò)來(lái)的檢驗(yàn)字符比較,如果這兩個(gè)字符一致,則表示通訊無(wú)誤。最后PLC發(fā)送一個(gè)結(jié)束字符給起重機(jī)安全監(jiān)控系統(tǒng),安全監(jiān)控系統(tǒng)收到后與自己的結(jié)束字符相比較,如果相等則表示PLC這一輪的數(shù)據(jù)已經(jīng)發(fā)送完畢。安全監(jiān)控系統(tǒng)接收到PLC數(shù)據(jù)的主畫面之一如圖二所示。
圖二監(jiān)控管理系統(tǒng)主畫面
4S7-200與安全監(jiān)控系統(tǒng)通訊格式的組成
通訊設(shè)置:9600,none,8,1
數(shù)據(jù)格式:
波特率:9600
奇偶校驗(yàn):none
數(shù)據(jù)位:8bit
停止位:1bit
通訊幀格式:AA55W1W2W3W4h1h2F1F2S1S2S3S4checksum0D
通訊幀格式說(shuō)明:
AA55為起始字節(jié)。在每一輪的數(shù)據(jù)準(zhǔn)備開始發(fā)送的時(shí)候,PLC將這兩個(gè)起始字符通過(guò)RS485接口發(fā)出去,告知遠(yuǎn)方安全監(jiān)控系統(tǒng)PLC要開始發(fā)送數(shù)據(jù)了,監(jiān)控系統(tǒng)開始要接收數(shù)據(jù)了。
W1、W2、W3、W4、h1、h2、F1、F2、S1、S2、S3、S4為字節(jié)數(shù)據(jù),其中W1、W2、W3、W4代表雙吊點(diǎn)的各自實(shí)際載荷,h1、h2代表起升高度,F(xiàn)1、F2代表外部環(huán)境風(fēng)速,S1、S2、S3、S4由32個(gè)開關(guān)量組成,代表著門機(jī)的32個(gè)動(dòng)作。具體信號(hào)含義在這里不再闡述。checksum為和檢驗(yàn)值,由PLC自動(dòng)進(jìn)行計(jì)算通過(guò)RS485口發(fā)給遠(yuǎn)方安全監(jiān)控系統(tǒng)。0D為結(jié)束字符,每當(dāng)一輪數(shù)據(jù)發(fā)送完畢,PLC則發(fā)送一個(gè)字符,告知安全監(jiān)控系統(tǒng)數(shù)據(jù)已發(fā)送完畢。
注意:①這里定義通訊協(xié)議與通訊幀格式的時(shí)候要與安全監(jiān)控系統(tǒng)定義的通訊協(xié)議與通訊幀格式一致;
②checksum為和檢驗(yàn)。在傳輸過(guò)程中,指令有可能受到任何的干擾而使原來(lái)的數(shù)據(jù)信號(hào)發(fā)生扭曲,此時(shí)的指令當(dāng)然是錯(cuò)誤的,為了偵測(cè)指令在傳輸過(guò)程中發(fā)生的錯(cuò)誤,接收方必須對(duì)指令作進(jìn)一步的確認(rèn)工作,以防止錯(cuò)誤的指令被執(zhí)行,最簡(jiǎn)單的方法就是使用校驗(yàn)碼。checksum校驗(yàn)碼的方法就是將要傳送的字符串的16進(jìn)制碼以字節(jié)為單位作和校驗(yàn),并將此和校驗(yàn)作為指令的一部分傳送出去;同樣地,接收方在接到指令后,以相同的方式對(duì)接收到的字符串作和校驗(yàn),并與傳送方所送過(guò)來(lái)的值作對(duì)比,若其值相等,則代表接收到的指令是正確的,反之則是錯(cuò)誤的。
5編程步驟
應(yīng)用自由口通信首先要把通信口定義為自由口模式,同時(shí)設(shè)置相應(yīng)的通信波特率和上述通信格式。用戶程序通過(guò)特殊存儲(chǔ)器SMB30(對(duì)端口0)、SMB130(對(duì)端口1)控制通信口的工作模式。
CPU通信口工作在自由口模式時(shí),通信口就不支持其他通信協(xié)議(比如PPI),此通信口不能再與編程軟件Micro/WIN通信。CPU停止時(shí),自由口不能工作,Micro/WIN就可以與CPU通信。
通信口的工作模式,是可以在運(yùn)行過(guò)程中由用戶程序重復(fù)定義的。
自由口通信的核心指令是發(fā)送(XMT)和接收(RCV)指令。在自由口通信常用的中斷有“接收指令結(jié)束中斷”、“發(fā)送指令結(jié)束中斷”,以及通信端口緩沖區(qū)接收中斷。XMT和RCV指令的數(shù)據(jù)緩沖區(qū)類似,起始字節(jié)為需要發(fā)送的或接收的字符個(gè)數(shù),隨后是數(shù)據(jù)字節(jié)本身。如果接收的消息中包括了起始或結(jié)束字符,則它們也算數(shù)據(jù)字節(jié)。
調(diào)用XMT和RCV指令時(shí)只需要指定通信口和數(shù)據(jù)緩沖區(qū)的起始字節(jié)地址。由于S7-200的通信端口是半雙工RS-485芯片,XMT指令和RCV指令不能同時(shí)有效。
這里利用S7-200自帶的RS485接口與起重機(jī)安全監(jiān)控管理系統(tǒng)進(jìn)行自由口協(xié)議通訊。
自由口協(xié)議通訊使用SMB30(口0)和SMB130(口1)來(lái)定義通訊口的工作模式。這里使用端口0,且PLC只進(jìn)行發(fā)送數(shù)據(jù),不進(jìn)行接收數(shù)據(jù)。SMB30各位的定義如下表1所示:
表1SMB30各位的定義
SMB34:定時(shí)中斷0:時(shí)間間隔數(shù)值(以1毫秒為增量,從1毫秒至255毫秒)。在S7-200中對(duì)應(yīng)的事件號(hào)為10。
SMB89:信息字符結(jié)束。(如發(fā)送的信息有停止位,將把此寄存器的內(nèi)容和接受信息的每一字節(jié)相比較來(lái),檢測(cè)確認(rèn)信息是否已傳送完畢。因此,在編程時(shí),需要在通訊初始化時(shí),把信息啟動(dòng)位字節(jié)傳入SMB89)。
發(fā)送緩沖區(qū)的格式如下表2所示:
T+0 |
發(fā)送字節(jié)的個(gè)數(shù) |
T+1 |
數(shù)據(jù)字節(jié) |
T+2 |
數(shù)據(jù)字節(jié) |
T+3 |
數(shù)據(jù)字節(jié) |
… |
… |
T+255 |
數(shù)據(jù)字節(jié) |
表2發(fā)送緩沖區(qū)的格式
說(shuō)明:
T+0:發(fā)送信息的位元組個(gè)數(shù)需要提前定義。
T+1~T+255:要發(fā)送的數(shù)據(jù)字節(jié)
5.1利用SM0.1初始化通訊參數(shù)。
①使用SMB30(端口0)選擇自由口通訊模式,并選定自由口通訊的波特率,數(shù)據(jù)位元元數(shù)和校驗(yàn)方式。
②設(shè)定結(jié)束位SMB89。
③一般還要利用SMB34定義一個(gè)定時(shí)中斷,來(lái)定時(shí)發(fā)送數(shù)據(jù)(一般為50ms,即間隔發(fā)送數(shù)據(jù)的時(shí)間)。這里為了降低反安全監(jiān)控系統(tǒng)的接收信息的頻率設(shè)置為255。
④利用完定時(shí)中斷0后選擇開中斷(ENI)。
5.2編寫主程序
自由口通訊程序的任務(wù)是把要發(fā)送的數(shù)據(jù)放到發(fā)送區(qū),這里我們把這個(gè)需要發(fā)送給安全監(jiān)控系統(tǒng)的數(shù)據(jù)以一個(gè)子程序的形式來(lái)編程,然后在主程序里面調(diào)用。程序編寫完后可以利用串口調(diào)試軟件驗(yàn)證程序的正確性,通訊的具體程序在這里不再列出。
6故障與解決辦法
在S7-200PLC與安全監(jiān)控系統(tǒng)通訊過(guò)程中,最常見也是最主要最容易出現(xiàn)的問(wèn)題就是PLC發(fā)送的數(shù)據(jù)與起重機(jī)安全監(jiān)控管理系統(tǒng)接收到的信息不一致。造成這種現(xiàn)象的原因最有可能兩種情況:①DB9針插頭3與8線接反;②PLC中定義的通信協(xié)議、通訊幀格式與起重機(jī)安全監(jiān)控定義的通訊協(xié)議、通訊幀格式不一致。
7結(jié)束語(yǔ)
S7-200PLC與起重機(jī)安全監(jiān)控系統(tǒng)通訊的成功設(shè)計(jì)保證了觀音巖水電站2×1600KN尾水門機(jī)安全監(jiān)控系統(tǒng)的順利投入使用。我單位自主研發(fā)的這一套通訊協(xié)議通訊過(guò)程穩(wěn)定、簡(jiǎn)單、可靠性極高,受到業(yè)主的高度贊揚(yáng)和一致好評(píng)。
標(biāo)簽:
中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.wangxinlc.cn)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
相關(guān)資訊
產(chǎn)品新聞
更多>2025-04-30
性能躍升20%!維宏NK300CX Plus數(shù)控系統(tǒng)...
2025-04-11
rpi-image-gen:樹莓派軟件鏡像構(gòu)建的終...
2025-04-08
【產(chǎn)品解讀】全面提升精密制造檢測(cè)節(jié)拍...
2025-03-31
激光閃耀 智慧引領(lǐng) | WISE MASER 黑武士...
2025-03-20