《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 基于Siemems S7-200 PLC的遠程測控的實現(xiàn)
基于Siemems S7-200 PLC的遠程測控的實現(xiàn)
摘要: 隨著中國工業(yè)經(jīng)濟的發(fā)展,PLC在中小型自動化設(shè)備的日益普及應(yīng)用,對于設(shè)備制造廠商或生產(chǎn)技術(shù)管理部門來說,如何以最快捷的方式響應(yīng)現(xiàn)場設(shè)備維護方面的需求,迅速檢測生產(chǎn)現(xiàn)場運行設(shè)備的狀態(tài),及時解決生產(chǎn)現(xiàn)場反映的問題,已是多數(shù)上位技術(shù)管理者的切實需求。如何采用經(jīng)濟實用的方式來實施遠程PLC設(shè)備數(shù)據(jù)采集或測控,這也是探索解決此問題的初衷。
關(guān)鍵詞: 接口IC
Abstract:
Key words :

 隨著中國工業(yè)經(jīng)濟的發(fā)展,PLC在中小型自動化設(shè)備的日益普及應(yīng)用,對于設(shè)備制造廠商或生產(chǎn)技術(shù)管理部門來說,如何以最快捷的方式響應(yīng)現(xiàn)場設(shè)備維護方面的需求,迅速檢測生產(chǎn)現(xiàn)場運行設(shè)備的狀態(tài),及時解決生產(chǎn)現(xiàn)場反映的問題,已是多數(shù)上位技術(shù)管理者的切實需求。如何采用經(jīng)濟實用的方式來實施遠程PLC設(shè)備數(shù)據(jù)采集或測控,這也是探索解決此問題的初衷。

  1 系統(tǒng)組成概述

  系統(tǒng)硬件主要由上位計算機、TC35iGSM MODEM無線通訊模塊和遠程Siemens S7—200 PLC 3部分組成,具體結(jié)構(gòu)如圖1所示。系統(tǒng)軟件分為上位PC和下位PLC兩部分,上位PC部分提供人機交互操作界面和相應(yīng)的數(shù)據(jù)選擇、處理等;下位PLC則通過自由口通訊,以中斷方式快速響應(yīng)上位機對PLC變量存儲器數(shù)據(jù)的讀寫操作或?qū)/0口讀寫操作需求。由于上位計算機與遠程PLC的通訊載體是通過TC35i建立在GSM網(wǎng)絡(luò)基礎(chǔ)上的,從而打破了地域的限制,即便遠端PLC設(shè)備在千里之遙,實施數(shù)據(jù)采集、測控的如同咫尺。

  

系統(tǒng)組成概述 www.elecfans.com


 

  2 系統(tǒng)硬件設(shè)計

  2.1 TC35i無線通訊模塊

  系統(tǒng)組成如圖1所示,系統(tǒng)硬件主要是TC5i無線通訊模塊的應(yīng)用。TC35i是Siemens公司推出的新一代無線通信GSM模塊,TC35i雙頻工作(EGSM900/GSMl800),電源范圍在3.3~4.8 V,發(fā)送功率分別為2W(Class4 EGSM900)和lW(Classl GSMl800 MHz),TC35i的數(shù)據(jù)接口采用串行異步收發(fā),符合ITU-TRS-232接口電路標準。數(shù)據(jù)接口配置為8位數(shù)據(jù)位、1位停止位、無校驗位,可以在300~115 kb/s的波特率下運行,支持的自動波特率為4.8~115 kb/s,符合ETSI標準GSM0707和GSM0705,且易于升級為GPRS模塊。該模塊集射頻電路和基帶于一體,向用戶提供標準的AT命令接口。為數(shù)據(jù)、語音和短消息提供快速、可靠、安全的傳輸,方便用戶的應(yīng)用開發(fā)及設(shè)計。TC35i有40個引腳,通過ZIF連接器引出。這些引腳可劃分為5類,即電源、數(shù)據(jù)輸入/輸出、SIM卡、音頻接口和控制。TC35i內(nèi)部電路如圖2所示?! ?/p>

TC35i內(nèi)部電路 www.elecfans.com

 

  ZIF40PIN的引腳1~14為電源部分,其中引腳l~5為電源電壓輸入端VBATT+,引腳6~10為電源地GND,引腳11~12為充電端,引腳13為對外輸出電壓(供外部電路使用),引腳14 ACCU/TEMP接負溫度系數(shù)的熱敏電阻;引腳24~29為SIM卡連接端;引腳33~40為語音接口用來接電話手柄。引腳15、30、31和32為控制部分,引腳15為啟動線IGT(Ig-niTIon)。當TC35i通電后必須給IGT一個大于100 mV的低電平,模塊才能啟動。引腳30為RTC back up;引腳3l為掉電控制:引腳32為SYNC,引腳16~23為數(shù)據(jù)輸入/輸出端。TC5i無線通訊模塊的主要外圍電路的連接如圖3所示。數(shù)據(jù)通信電路以MAX232為核心實現(xiàn)電平轉(zhuǎn)換及串口通信。

  

 

  2.2 系統(tǒng)硬件連接

  系統(tǒng)硬件的連接可參考圖1可知,上位計算機的串口輸出與由TC35i構(gòu)成的GSM MODEM中的9芯RS232口直接連接;遠程的GSM MODEM與PLC連接時則必須通過RS232到RS485的轉(zhuǎn)換,這是Siemens PLC的通訊口數(shù)據(jù)和PPI編程電纜連接的必要條件。另一方面必須注意的是,在與遠程GSM MODEM的RS-232串口連接時,還必須將RS232串口中的RXD和TXD對換連接,否則將不能正常通訊。

  2.3 遠程PLC的選型

  該系統(tǒng)選用西門子S7—200 PLC,在西門子PLC中SIMATIC S7—200是一個系列,其中包括多種型號的CPU,這里選用CPU-222,由于CPU不提供模擬量的輸入輸出,為檢測對模擬量數(shù)據(jù)的遠程讀寫。因此在遠程PLC系統(tǒng)中擴展一型號為EM-235的4輸入1輸出模擬量模塊。

  3 系統(tǒng)軟件設(shè)計

  3.1 系統(tǒng)上位計算機人機界面

  系統(tǒng)上位的人機界面是用VB編程,提供人機交互操作界面及數(shù)據(jù)選擇和相應(yīng)的數(shù)據(jù)處理等功能。系統(tǒng)上位的操作界面如圖4所示。在操作界面的左上部是通訊鏈接控制框,這里只需要正確選擇PC的串口并輸入遠程PLC所連接的電話號碼后即可撥號鏈接,遠程的無線GSM MODEM模塊摘機響應(yīng)一般設(shè)置為鈴響后自動摘機,通訊鏈接建立后,當上位PC檢測到串口端的數(shù)據(jù)載波DCD信號后,通訊鏈接控制框中的“鏈接狀態(tài)”指示燈由紅變綠,表示通訊鏈路已成功建立。撥號或掛機的操作均是通過對GSM MODEM模塊發(fā)送AT指令執(zhí)行的?! ?/p>

 

  對PLC數(shù)據(jù)的讀寫操作如操作界面的右上部所示,在相應(yīng)文本框內(nèi)填寫好數(shù)據(jù)的類型、地址、數(shù)值和操作方式后點擊“發(fā)送”即可執(zhí)行對PLC的讀或?qū)懖僮鳌=缑娴南掳氩糠诛@示的是PC串口發(fā)送和接收的代碼以及當前操作的結(jié)果。

  3.2 系統(tǒng)上位計算機的串口設(shè)置

  在上位PC的人機界面中,串口的設(shè)置是通過下拉選擇框選擇出所連接的串口后由程序自動讀取。在使用GSM MODEM無線模塊時,上位PC對遠程PLC鏈接呼叫時采用的是AT指令。程序語句為:MSComm1.Output=“ATDT”&Trim (Text1.Text)& vbCrLf//Text1文本框內(nèi)為欲連接的電話號碼。掛機的AT指令為:MSComml.Output=“ATDT”&“+++”& vbCrLf。串口數(shù)據(jù)格式的設(shè)定語句為:MSComml.SetTIngs=“9600. N,8.1”,與TC35iGSM MODEM無線通訊模塊和遠程PLC自由口的串行數(shù)據(jù)通訊格式一致。

  3.3 通訊數(shù)據(jù)格式的約定

  由于遠程PLC采用的是自由口用戶通訊方式,這里對每次收發(fā)數(shù)據(jù)字節(jié)暫約定為18個字節(jié),數(shù)據(jù)字節(jié)的多少可根據(jù)實際需要而酌情約定。本系統(tǒng)中18個字節(jié)的約定:Bytel為數(shù)據(jù)的總字節(jié)數(shù);Bvte2為數(shù)據(jù)開始特征字;Bvte3為數(shù)據(jù)讀或?qū)懱卣髯郑築yte4為數(shù)據(jù)類型特征字;Bvte5~Byte8為PLC數(shù)據(jù)地址;Bvte9~Bytel6為PLC數(shù)據(jù)的數(shù)值;Bytel7為收發(fā)數(shù)據(jù)的校驗碼;Bvtel8為數(shù)據(jù)結(jié)束特征字。串口數(shù)據(jù)的傳輸除數(shù)據(jù)地址字節(jié)和數(shù)據(jù)數(shù)值字節(jié)用ASCII碼表示外,其他均以十六進制方式表示。因而在上位PC的編程中需涉及大量的進制轉(zhuǎn)換操作。特別要注意的是由于PLC中的實數(shù)采用32位單精度數(shù)表示,并按照ANSI/IEEE745 1985標準格式以雙字長度來存取,所以無論是上位的PC或是下位的PLC在編程時對實數(shù)數(shù)據(jù)的處理均需嚴格遵循ANSI/IEEE7451985標準格式的規(guī)定,否則將不可能讀到正確的數(shù)據(jù)。

  通訊數(shù)據(jù)的校驗方式采用BCC塊進行XOR校驗,即約定為從每次數(shù)據(jù)包的Byte2到Bytel6的字節(jié)進行校驗,Bvtel7存放校驗結(jié)果。上位或下位在接收數(shù)據(jù)時,首先對所接收的數(shù)據(jù)進行校驗并將計算結(jié)果與Bvtel7所存放的數(shù)值進行比較,如不一致時則按約定要求重發(fā),以保障每次傳輸數(shù)據(jù)的正確性。

  3.4 遠程PLC自由口通訊初始化編程

  由于遠程PLC采用的是自由口用戶通訊協(xié)議,所以對PLC的自由口通訊必須做如下初始化設(shè)置:

  

 

  遠程PLC經(jīng)上述設(shè)置后,在其運行期間每當接收到一組數(shù)據(jù)后便自動產(chǎn)生中斷請求,在中斷服務(wù)的子程序中,設(shè)定一標志位(如MO.0)置位,用來表示允許進入中斷服務(wù),在主程序中通過檢測M0.O的狀態(tài)來確定是否轉(zhuǎn)入讀數(shù)據(jù)操作的子程序,讀數(shù)據(jù)操作完畢后及時將接收數(shù)據(jù)標志M0.0復(fù)位,從而完成一次讀數(shù)據(jù)過程。PLC數(shù)據(jù)的上傳則是根據(jù)所讀數(shù)據(jù)的內(nèi)容來響應(yīng)上位的請求,上傳數(shù)據(jù)的編碼和字節(jié)均依照約定的格式寫入,每次的讀寫操作僅在PLC一個掃描周期內(nèi)(數(shù)毫秒)完成,系統(tǒng)的響應(yīng)是實時的。

  3.5 遠程PLC數(shù)據(jù)的讀寫操作

  PLC數(shù)據(jù)的讀寫是依據(jù)約定的數(shù)據(jù)類型實施操作的。對于字節(jié)、字、雙字、實數(shù)及I/0端口各自有約定的數(shù)據(jù)類型特征字,在下位PLC程序中通過對數(shù)據(jù)類型特征字的解析后來確定讀取數(shù)據(jù)的字節(jié)數(shù)。對I/0端口的讀寫操作則是根據(jù)約定的地址編碼直接讀寫出相應(yīng)的狀態(tài)信息。每組收發(fā)數(shù)據(jù)的存儲單元從VBl00到VBll7共18個字節(jié)。由前述的數(shù)據(jù)發(fā)送量的約定可知,每組數(shù)據(jù)的Byte5~Byte8表示PLC數(shù)據(jù)的地址,由于每次讀寫的地址是不同的,所以Byte5~Byte8字節(jié)給定的就是地址指針,在PLC編程中就要以此指針采用間接尋址的方式,假設(shè)Byte5~Byte8存放在PLC的VB104~VBl07單元,其間址指令則為:

  MOVD &VBl04,ACl讀取該地址內(nèi)容時則根據(jù)數(shù)據(jù)類型的不同而有所區(qū)別,假如讀寫字節(jié)時指令為:MOVB*ACl,VBl60;則讀寫字的指令為:MOVW *ACl,VWl60;讀寫雙字的指令為:MOVD *ACl,VDl60;讀寫實數(shù)的指令則為:MOVR *ACl,VDl60。

  4 結(jié)束語

  本系統(tǒng)經(jīng)實際測試基本達到了預(yù)期效果。遠程PLC在省際間距離的測控響應(yīng)與在本市區(qū)地域的測控響應(yīng)基本相同,通過對PLC I/O的讀寫、模擬量數(shù)據(jù)的讀寫、單字節(jié)、雙字節(jié)及實數(shù)的讀寫,均未出現(xiàn)數(shù)據(jù)差錯現(xiàn)象,遠程的響應(yīng)速度基本上是對上位的指令立即響應(yīng),操作人基本感覺不出時間的延時。在PLC中,由于本遠程測控程序字節(jié)量較少,完全可以嵌入在PLC的過程控制程序中運行,由于在自由口通訊中,

  對上位PC讀寫的響應(yīng)采用的是中斷方式快速響應(yīng),所以對PLC的過程控制程序的實時性基本無影響。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。