<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > PLC與上位PC機的高速通信的設計與實(shí)現

PLC與上位PC機的高速通信的設計與實(shí)現

作者: 時(shí)間:2010-11-17 來(lái)源:網(wǎng)絡(luò ) 收藏

0、引言

  工業(yè)控制領(lǐng)域中作為一種高效、靈活、可靠的控制器,有著(zhù)廣泛的應用。以控制器為核心,上位PC機為實(shí)時(shí)監控體的控制系統已成為工業(yè)自動(dòng)化控制系統的一個(gè)發(fā)展方向。實(shí)現PLC與PC的通信可以實(shí)現向上級提供諸如工藝流程圖、動(dòng)態(tài)數據畫(huà)面、報表顯示等多種窗口技術(shù),使PLC控制系統具有良好的人機界面,通過(guò)上位機對PLC數據的讀寫(xiě)監控實(shí)現現場(chǎng)數據的采集、傳送以及生產(chǎn)過(guò)程調度的自動(dòng)化和信息化,其應用前景十分廣闊。常用的各種PLC網(wǎng)絡(luò )有差異,但表現在 PLC 通信程序、系統聯(lián)結和系統配置等方面,通信機理有統一性。目前市場(chǎng)上通信組態(tài)系統結構復雜,價(jià)格昂貴,應用繁瑣,不適應用戶(hù)使用。針對上述問(wèn)題筆者以西門(mén)子公司的S7-200系列的PLC為研究對象,提出了一種用實(shí)現上位機與PLC的高速可靠的通信方法。

1、S7-200系列PLC通信方式

  西門(mén)子S7-200系列性能優(yōu)良,性?xún)r(jià)比較高,適用范圍很廣,因此本文主要討論西門(mén)子7-200系列與計算機之間的通信。S7-200系列通信方式有三種:

 ?。?) 點(diǎn)對點(diǎn)PPI方式與上位機通信:用于與西門(mén)子公司的PLC編程器或其他該公司人機接口產(chǎn)品的通信。該種通信方式采用的是MSComm ActivcX控件。PPI是主/從協(xié)議,網(wǎng)絡(luò )上的S7-200均為從站,其他CPU、SIMATIC編程器或TD200為主站。如果在用戶(hù)程序中允許PPI主站模式,一些S7-200CPU在RUN模式下可以作主站,它們可以用網(wǎng)絡(luò )讀和網(wǎng)絡(luò )寫(xiě)指令讀寫(xiě)其他CPU中的數據。PPI沒(méi)有限制可以有多少個(gè)主站與一個(gè)從站通信,但是在網(wǎng)絡(luò )中最多只能有32個(gè)從站。PPI通信協(xié)議是不公開(kāi)的;

 ?。?) Freeport方式與上位機通信:Freeport方式具有與外圍設備通信方便、自由,易于微機開(kāi)發(fā)等特點(diǎn),因此使用自由口方式實(shí)現與上位機通信的控制方案較多。但在該通信方式下,上位機與PLC的最大通信能力為128bit/s,這無(wú)法滿(mǎn)足的需要;

 ?。?) Profibus-DP方式與上位機通信:Profibus協(xié)議用于幾分布式I/O設備的。S7-200CPU需通過(guò)EM277。Profibus-DP模塊接入Profibus網(wǎng)絡(luò ),網(wǎng)絡(luò )通常有一個(gè)主站和幾個(gè)I/O從站。這種方式使得PLC可以通過(guò)Profibus的DP通信接口接入Profibus現場(chǎng)總線(xiàn)網(wǎng)絡(luò ),從而擴大PLC的使用范圍。PPI協(xié)議和Profibus協(xié)議的結構模型都是基于開(kāi)放系統互連參考模型的7層通信結構。

2、PLC網(wǎng)絡(luò )通信標準簡(jiǎn)介

 ?。?) RS-232C標準

  通信的連接接口與連接電纜的相互兼容是通信得以保證的前提。它的實(shí)現方法發(fā)展迅速,型式較多。其中RS-232C就是實(shí)際應用較多的標準之一,它是計算機或終端與調制解調器之間的標準接口。RS-232C功能規范定義了電路之間的連接,以及它的含義。RS-232C的規程規范定義的是協(xié)議,即事件出現的正確順序。RS-232C的缺點(diǎn)是數據傳輸率低傳輸距離短。

 ?。?) RS-485標準

  在許多工業(yè)環(huán)境中,要求用最少的信號連線(xiàn)來(lái)完成通信任務(wù)。日前廣泛應用的是RS-485串行接口總線(xiàn),RS-485支持半雙工通信,分時(shí)使用一對雙絞信號線(xiàn)進(jìn)行發(fā)送或接收。RS-485用于多站互聯(lián)時(shí)實(shí)現簡(jiǎn)單,節省材料,可以滿(mǎn)足高速遠距離傳送,構成分布式網(wǎng)絡(luò )控制系統十分方便。

3、通信網(wǎng)絡(luò )接口的設計

  在本工程中,我們采用的PLC為CPU224型,該可編程控制器的通信端口為RS-485接口,由于PC機的串行端口為RS-232接口,且遠離控制現場(chǎng)(PLC位置),因此PC機的RS-232接口必須通過(guò)RS-232/RS-485轉換器轉換后才能與PLC通信端口連接,這種通信方式可以實(shí)現最遠1.2Krn的遠程通信。

  PC機的標準串口為RS232。S7-200系列CPU226提供2個(gè)串口,其中一個(gè)端口Portl作為DP口,另一個(gè)端口Port0為自由口,自由口為標準RS485串口。西門(mén)子公司提供的PC/PPI電纜帶有RS232/RS485電平轉換器,因此在不增加任何硬件的情況下,可以很方便地將PLC和PC機互聯(lián)。

4、通信程序設計

 ?。?) 上位機部分程序

  單命令把MSComm控件加入到工程中。MSComm控件通信功能的實(shí)現實(shí)際上是調用了API函數。而API函數是由Comm.drv解釋并傳遞給設備驅動(dòng)程序進(jìn)行的。即MSComm控件的屬性提供了通信接口的參數設置,能實(shí)現。MSComm控件有關(guān)屬性如下:

  CommPort:設置并返回通信端口號。Window系統將會(huì )利用該端口與外界通信;

  Setings:設置并返回初始化參數。其組成格式為“BBBB。P。D。S”。BBBB為數據速率。P為奇偶校驗。D為數據比特。S為停止位;

  PortOpen:設置并返回通信端口的狀態(tài)。也可以打開(kāi)和關(guān)閉端口;

  Ouptut:向傳輸緩沖區寫(xiě)1B的數據;

  Input:將傳送到輸入緩沖區的字符讀到程序里;

  RThreshold:設置在產(chǎn)生OnComm之前要接受的字符數;

  InputLen:設置并返回Input屬性從接收緩沖區讀取的字符數;

  InBbuffersize:設置或返回輸入緩沖區的大小;

  InBufferCount:返回輸入緩沖區內等待讀區的字節個(gè)數??赏ㄟ^(guò)設置該屬性值為0來(lái)清除接收緩沖區;

  InputMode:設置或返回傳輸數據的類(lèi)型;

  CommEvent:傳回OnComm事件發(fā)生時(shí)的數值碼;

  軟件通信流程圖如圖1 。


圖1 :通信流程圖

  在實(shí)際應用中,從站被動(dòng)的接收上位機發(fā)出的指令后做出響應,然后將信息傳回上位機,由于上位機在整個(gè)通信的過(guò)程中不能被中斷,因此上位機在接收與發(fā)送數據過(guò)程中采用了不可中斷的方法。

 ?。?) 從站PLC程序

  S72200系列PLC選擇了自由口通信方式后,在程序中就可以使用接收中斷、發(fā)送中斷、接收指令(RCV)、發(fā)送指令(XMT)來(lái)控制通信操作,當處于時(shí)通信協(xié)議完全由用戶(hù)程序指令控制。SMB30被用于選擇比特率和校驗類(lèi)型,各個(gè)位的配置為:


圖2:SMB30的位配置

  pp,校驗選擇:00為不校驗,01為偶校驗,10為不校驗,11為奇校驗;

  d,每個(gè)字符的數據位數:0,每個(gè)數字符8位;1,每個(gè)數字符7位。

  bbb,自由口比特率,kbit/s:000為3814,001為1912,010為916,011為418,100為214,101為112,110為11512,111為5716。

  mm,協(xié)議選擇:00,PPI/從站模式;01,;10,PPI/從站模式;11,保留。

  接收指令(RCV)啟動(dòng)或終止接收信息功能,必須為接收操作指定開(kāi)始和結束條件。發(fā)送指令(XMT)在下依靠通訊口發(fā)送數據。

  PLC程序分為主程序和中斷程序。主程序完成初始化通信口、開(kāi)中斷、判斷、發(fā)送數據等功能,中斷程序完成接收和發(fā)送數據的功能。

5、設計及檢驗

 ?。?) 高速接口設計

  PC機采用400MHz的CPU以及256M的RAM,應用++6.0開(kāi)發(fā)軟件和Sicmcns SIMATIC Microcomputing軟件進(jìn)行開(kāi)發(fā)設計。使用PC/PPI電纜可實(shí)現計算機的RS232接口與PLC通信。但該方式下只能使用PPI協(xié)議或自山通信。要使用PROFIBUS協(xié)議通信。上位機應有PROFIBUS DP模塊。同時(shí)S7- 200 PLC應連接通信模塊。這里上位機使用的是CP5611 PROFIBUS DP模塊。安裝的是SicmcnsSIMATIC Micro computing軟件;下位機使用的是EM277 PROFIBUS DP模塊和S7-200 224PLC組建的通信網(wǎng)絡(luò )。

 ?。?) 速度仿真與檢測

  Siemens SIMATIC Microcomputing軟件使用ActiveX技術(shù)提供對數據的訪(fǎng)問(wèn)控制。 Microcomputing軟件由2部分組成:第一部分,一系列的SIMATIC ActiveX控件,用于對PLC的數據操作,主要包括數據控件!按鈕控件!編輯控件!標簽控件和滑塊控件;另一部分,一個(gè)容器,用于創(chuàng )建使用ActiveX控件的處理界面[7-8]。

  上位機用Micro computing configuration設定通信協(xié)議和波特率。 Siemens Micro computing提供PPI, MPI, PROFIBUS-I辦議支持Data Control與PLC通信。PPI協(xié)議支持的最高通信速率為187.5KbpsMPI和PROFIBUS都支持9.6kbps-12Mbps的速率通信。PROFIBUS包含PROFIBUS-DP協(xié)議、PROFIBUS-Standard協(xié)議、PROFIBUS-User-defined協(xié)議和PROFIBUS-Universal協(xié)議(該協(xié)議只支持9.6kbps-1.5Mbps的通信)。用Micro computing configuration設定相應的應用程序接口點(diǎn)和協(xié)議。檢測實(shí)驗中表示應用程序接口點(diǎn)為CP5611協(xié)議為PROFIBUS基木實(shí)現流程圖如4所示。


圖3:檢測實(shí)驗流程圖

  對PLC數據的讀寫(xiě)。Data Control提供了4個(gè)函數:Write Variable(對單存儲單元寫(xiě)),Write Multi Variable(對多存儲單元寫(xiě)),Read Variable(對單存儲單元讀),Read Multi Variable(對多存儲單元讀)。

  表1是在WIN2000系統下,針對PROFIBUS的不同協(xié)議,Data Control使用自動(dòng)連接,自動(dòng)超時(shí)設為100ms,用Write Multi Variable函數對一個(gè)S7- 200PLC的V存儲區10個(gè)存儲單元進(jìn)行20個(gè)字節寫(xiě)1000次的測試數據見(jiàn)表1。從表1數據可知,PROFIBUS-DP協(xié)議,PROFI-BUS-Standard協(xié)議、PROFIBUS-User-defined協(xié)議和PROFIBUS-Universal協(xié)議在1.5 M的波特率下,其寫(xiě)操作時(shí)間最短的是PROFIBUS-Universal協(xié)議,時(shí)間為31.61ms。

表1:不同協(xié)議下對PLC寫(xiě)數據時(shí)間

6、結束語(yǔ)

  本系統通過(guò)現場(chǎng)調試實(shí)驗,功能達到設計要求。試驗結果表明,當數據傳輸速率為916kbit/s時(shí)誤碼率 ,能夠實(shí)現現場(chǎng)網(wǎng)絡(luò )的在線(xiàn)監控、調試及數據修改。由于程序中采用了以16進(jìn)制ASCII碼描述數據傳輸格式,因此一條指令中的數據字節和控制字節不可能發(fā)生混淆,通信更加可靠。同時(shí)采用了PROFIBUS-Universal協(xié)議,實(shí)現了上位機和PLC之間的高速通信,并用實(shí)驗證實(shí)了該協(xié)議的優(yōu)越性。對于其它品牌的PLC,盡管通信規范及初始化有所不同,可以參照本系統方法進(jìn)行編程,稍做修改即可應用。本系統的成功研制將對工業(yè)控制系統的自動(dòng)化、智能化、網(wǎng)絡(luò )化的發(fā)展提供有益的借鑒。

西門(mén)子plc相關(guān)文章:西門(mén)子plc視頻教程


數字通信相關(guān)文章:數字通信原理


通信相關(guān)文章:通信原理




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>