PLC與PC實時通信方法

發(fā)布時間:2024-07-25
本文詳細闡述了pc與plc互連通信的一般方法,并以永宏公司的fatek-fbs plc為對象,以實際四層電梯模型監(jiān)控系統(tǒng)為例,介紹了利用大家都熟悉的編程語言visual basic 和step7,實現(xiàn)plc與上位計算機實時通信的通信過程。 1 通信方式
面對眾多生產(chǎn)廠家的各種類型plc,它們各有優(yōu)缺點,能夠滿足用戶的各種需求,但在形態(tài)、組成、功 能、編程等方面各不相同,沒有一個統(tǒng)一的標準,各廠家制訂的通信協(xié)議也千差萬別。目前,人們主要采用以下三種方式實現(xiàn)plc與pc的互聯(lián)通信:
(1) 通過使用plc開發(fā)商提供的系統(tǒng)協(xié)議和網(wǎng)絡(luò)適配器,來實現(xiàn)plc與pc機的互聯(lián)通信。但是由于其通信協(xié)議是不公開的,因此互聯(lián)通信必須使用plc開發(fā)商提供的上位機組態(tài)軟件,并采用支持相應(yīng)協(xié)議的外設(shè)??梢哉f這種方式是plc開發(fā)商為自己的產(chǎn)品量身定作的,因此難以滿足不同用戶的需求。
(2) 使用目前通用的上位機組態(tài)軟件,如組態(tài)王、intouch、wincc、力控等,來實現(xiàn)plc與pc機的互連通信。組態(tài)軟件以其功能強大、界面友好、開發(fā)簡潔等優(yōu)點目前在pc監(jiān)控領(lǐng)域已經(jīng)得到了廣泛的應(yīng)用,但是一般價格比較昂貴。組態(tài)軟件本身并不具備直接訪問plc寄存器或其它智能儀表的能力,必須借助i/o驅(qū)動程序來實現(xiàn)。也就是說,i/o驅(qū)動程序是組態(tài)軟件與plc或其它智能儀表等設(shè)備交互信息的橋梁,負責從設(shè)備采集實時數(shù)據(jù)并將操作命令下達給設(shè)備,它的可靠性將直接影響組態(tài)軟件的性能。但是在大多數(shù)情況下,i/o驅(qū)動程序是與設(shè)備相關(guān)的,即針對某種plc的驅(qū)動程序不能驅(qū)動其它種類的plc,因此組態(tài)軟件的靈活性也受到了一定的限制。
(3) 利用plc廠商所提供的標準通信端口和由用戶自定義的自由口通信方式來實現(xiàn)plc與pc機的互連通信。這種方式由用戶定義通信協(xié)議,不需要增加投資,靈活性好,特別適合于小規(guī)模的控制系統(tǒng)。
通過上述分析不難得出,掌握如何利用plc廠商提供的標準通信端口和自由口通信方式以及大家所熟悉的編程語言來實現(xiàn)pc與plc之間的實時通信是非常必要的。
2 fatek-fbs plc通信方式及原理
fatek-fbs plc內(nèi)部集成的ppi接口為用戶提供了強大的通信功能,可在多種模式下工作:ppi、profibus-dp、自由口方式等。其中自由口通信方式最具有特色,通信協(xié)議可完全由梯形圖程序控制,通過它可以實現(xiàn)plc與任何具有通信能力的設(shè)備進行互連,因而在本系統(tǒng)中選用自由口通信方式。
目前plc與pc機的鏈接通信有兩種方式,一種是pc機始終處于主導地位,數(shù)據(jù)的傳送都由pc機定時發(fā)出命令,另外一種是plc始終具有優(yōu)先權(quán)。在本電梯模型監(jiān)控系統(tǒng)中所有的控制信號均為開關(guān)量信號,考慮到上位pc機僅實時顯示電梯的運行狀態(tài),不需向plc發(fā)送控制指令,采用第二種通信方式。利用plc循環(huán)掃描的特點,設(shè)備狀態(tài)一旦改變,plc立即檢測到,并將反映系統(tǒng)狀態(tài)變化的數(shù)據(jù)存入指定的數(shù)據(jù)緩沖區(qū),通過xmt發(fā)送指令,將數(shù)據(jù)通過com口發(fā)至上位機。每個系統(tǒng)的狀態(tài)對應(yīng)于數(shù)據(jù)緩沖區(qū)中的一個指定字節(jié),所存儲數(shù)據(jù)均為16進制數(shù)據(jù),為保證通信過程的可靠性,上位機對所接受到的數(shù)據(jù)進行首尾字符校驗,如果校驗成功,則說明接收到的首末字節(jié)之間的數(shù)據(jù)是正確的,從而進行處理,否則,放棄這批數(shù)據(jù),要求對方重發(fā)。
3 應(yīng)用實例與程序設(shè)計
(1) 系統(tǒng)構(gòu)成
fatek-fbs plc內(nèi)部集成的ppi接口物理特性為rs485,而上位機的標準串口為rs232,為了實現(xiàn)兩者的通信必須進行協(xié)議轉(zhuǎn)換,永宏公司提供的pc/ppi電纜帶有rs232/rs485電平轉(zhuǎn)換器,因此再不增加任何硬件的情況下,可以方便的實現(xiàn)二者的互聯(lián)和協(xié)議轉(zhuǎn)換。
作為控制器的fatek-fbs plc利用電梯模型自帶的電源線實現(xiàn)與四層電梯模型的互連,該電梯模型為教學試驗裝置,具備一般電梯的基本功能。硬件連接如圖1所示。
500)this.width=500>
圖1 硬件連接示意圖
(2) plc部分編程
① 自由端口的初始化
在自由口通信模式下,通過設(shè)置特殊存儲器smb30(端口0),來為自由端口通信選擇波特率、奇偶校驗和數(shù)據(jù)位。這些設(shè)定必須與pc機設(shè)定值相一致。其格式如下:
smb30
pp為奇偶校驗選擇,d為數(shù)據(jù)位選擇,bbb為波特率選擇。
 00為無校驗,0為每個字符8位,000為38 400
baud,001為19 200baud;
 01為偶校驗,1為每個字符7位,010為9 600 baud,011為4 800baud;
 10為無校驗,100為2 400baud,101為1 200baud;
 11為奇校驗,110為600baud,111為300baud;
mm為協(xié)議選擇:00為ppi協(xié)議,01為自由口協(xié)議,10為ppi/主站模式,11默認為ppi/從站模式。
② fatek-fbs plc實時向上位pc機傳送數(shù)據(jù)
500)this.width=500>
圖2 下位機程序流程圖
在對電梯模型控制中,所有的控制信號均為開關(guān)量,基于這一特點,系統(tǒng)狀態(tài)的改變即為這些開關(guān)量信號狀態(tài)的改變,因此可通過跟蹤這些開關(guān)量信號的上升沿信號、下降沿信號的到來,做為系統(tǒng)狀態(tài)改變的依據(jù)。據(jù)此在本系統(tǒng)中,通過對同一個開關(guān)量信號的上升沿、下降沿分別定義不同的16進制數(shù)的方式,來代表信號的產(chǎn)生與結(jié)束,當檢測到這些信號產(chǎn)生時,便將這些數(shù)據(jù)存入指定的數(shù)據(jù)緩沖區(qū)中的字節(jié)中,并通過com口發(fā)至上位pc機,同時產(chǎn)生發(fā)送完成中斷,plc延遲等待接收來自上位機的應(yīng)答信號,通過分析存儲在接收字符緩沖器smb2中的數(shù)據(jù),判斷是否需要重新發(fā)送。下位機程序如圖2所示。
(3) 上位機部分編程
基于vb處理監(jiān)控界面圖形、數(shù)據(jù)報表及通信的方便快捷,本課題上位機的編程環(huán)境采用vb來實現(xiàn)。vb不僅提供了mscomm串行通信控件,而且也為這個控件提供了標準的事件處理函數(shù),并通過設(shè)置它的一些屬性對通信接口進行初始化,從而很容易的實現(xiàn)了串行通信的問題。
下面介紹一下有關(guān)此控件的屬性:
commport,設(shè)置通信連接端口。程序必須指定要使用的串行端口的號碼,winoows使用所設(shè)置的通信端口與外界進行通信。
settings,設(shè)置初始化參數(shù)。其格式為“bbbb,p,d,s”,其中bbbb為連接速度,p為奇偶校驗方式,d為數(shù)據(jù)位數(shù),s為停止位數(shù)。默認值是“9 600,n,8,1”。
portopen,設(shè)置通信連接端口的狀態(tài)。使用串行端口之前必須先將要使用的串行端口打開。
input,返回并刪除接收緩沖區(qū)中的數(shù)據(jù)流。
inputlen,設(shè)置從串行端口讀入的字符串長度。
rthreshold,設(shè)置引發(fā)接收事件的字符數(shù)。
inputmode,設(shè)置接收數(shù)據(jù)數(shù)據(jù)形式。
oncomm事件,用來處理所有與通信相關(guān)的事件。使用事件程序的好處是不需要一直讓程序處于檢測的狀態(tài)下,只要事先將程序代碼寫好,一有事件發(fā)生,就會直接執(zhí)行相對應(yīng)的程序代碼。可見這種事件驅(qū)動的方式也為實現(xiàn)實時通信提供了必要的條件。上位機程序如圖3所示。pc機根據(jù)接收到的信息很容易的實現(xiàn)對每個開關(guān)量的狀態(tài)進行識別,從而控制監(jiān)控界面的實時顯示。
500)this.width=500>
圖3 上位機程序流程圖
4 結(jié)語
以上是基于fatek-fbs plc自由口通信方式實現(xiàn)與上位機pc實時通信的一個簡單應(yīng)用。經(jīng)驗證,該方法簡單、實時性好,可靠性高,對于邏輯控制系統(tǒng),是能夠?qū)崿F(xiàn)對被控對象實時監(jiān)控簡單易行的方法。
上一個:果樹亦需補鈣
下一個:怎樣安裝路由器和設(shè)置密碼(怎樣安裝wifi路由器)

攜手旗安電子 艾禮安網(wǎng)絡(luò)報警方案亮相安防重鎮(zhèn)杭州
直埋熱水集中供暖聚氨酯保溫管常用規(guī)格有哪些?
半導體相關(guān)行業(yè),熱沖擊試驗,高速老化試驗箱,冷熱沖擊試驗箱等
烏海聚丙烯抗裂纖維*
市場行情價二手化工污泥烘干機
訂購旋轉(zhuǎn)反沖洗濾水器須知
洛陽有什么好玩的 洛陽兩日游攻略
冷熱沖擊試驗箱制冷系統(tǒng)和原理
松本板安裝固定的步驟有哪些?
正確管理金絲垂柳樹苗
十八禁 网站在线观看免费视频_2020av天堂网_一 级 黄 色 片免费网站_绝顶高潮合集Videos