1  引言
    分布式控制系統(tǒng)通常可以分為現(xiàn)場控制層、過程監(jiān)控層、生產(chǎn)管理層和市場經(jīng)營管理層四個層次,過程監(jiān)控層通過對多個控制設(shè)備的集中管理,完成監(jiān)控生產(chǎn)過程的目的。力控PCAuto監(jiān)控組態(tài)軟件是處于過程監(jiān)控層的軟件平臺,它可運行于Windows 98/NT/2000/XP操作系統(tǒng)之上,能與國內(nèi)外各工控廠家的常用設(shè)備通信,與工控機和網(wǎng)絡(luò)系統(tǒng)相">

欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

技術(shù)頻道

基于力控組態(tài)軟件的新型DCS監(jiān)控軟件設(shè)計

1 引言
分布式控制系統(tǒng)通常可以分為現(xiàn)場控制層、過程監(jiān)控層、生產(chǎn)管理層和市場經(jīng)營管理層四個層次,過程監(jiān)控層通過對多個控制設(shè)備的集中管理,完成監(jiān)控生產(chǎn)過程的目的。力控PCAuto監(jiān)控組態(tài)軟件是處于過程監(jiān)控層的軟件平臺,它可運行于Windows 98/NT/2000/XP操作系統(tǒng)之上,能與國內(nèi)外各工控廠家的常用設(shè)備通信,與工控機和網(wǎng)絡(luò)系統(tǒng)相結(jié)合,可方便、快速地構(gòu)造滿足不同需求的數(shù)據(jù)采集與監(jiān)控系統(tǒng)。
雖然力控提供了許多常用設(shè)備的驅(qū)動程序,但在實際應(yīng)用中,由于工程需要和設(shè)備的特殊性,力控所提供的現(xiàn)有驅(qū)動程序并不能滿足所有設(shè)備需要,此時便需利用力控驅(qū)動開發(fā)包提供的接口來開發(fā)新驅(qū)動程序。對于普通用戶來說,驅(qū)動開發(fā)是一項很艱難的工作,但是力控提供了多種與第三方軟件的接口,如OLE控件、內(nèi)部組件等,這就為我們提供了另外一個解決問題的思路:利用VB、VC等開發(fā)工具自行開發(fā)通信程序采集數(shù)據(jù),再利用力控提供的OLE控件等接口將通信程序與力控連接,實現(xiàn)數(shù)據(jù)共享。這樣,無需開發(fā)新驅(qū)動程序便可使力控采集到現(xiàn)場設(shè)備的數(shù)據(jù)。這種基于力控組態(tài)軟件的新型監(jiān)控軟件的結(jié)構(gòu)框圖如圖1所示:

圖1 軟件結(jié)構(gòu)框圖

本文以基于RS-485串行通信的分布式控制系統(tǒng)為應(yīng)用背景,對這種新型監(jiān)控軟件的實現(xiàn)做了探討。

2 上位機串行通信的實現(xiàn)
2.1 串行通信接口技術(shù)
串行通信常用的接口有RS-232C接口及RS-485接口。由于RS-232C接口通信距離較近,當(dāng)傳輸距離較遠(yuǎn)時,可采用RS-485串行通信接口。RS-232C接口和RS-485接口之間的轉(zhuǎn)換可采用相應(yīng)的轉(zhuǎn)換模塊。一般計算機內(nèi)都配有通信適配器,使計算機能夠與其它具有RS-232C 接口的計算機或設(shè)備進(jìn)行通信。數(shù)據(jù)通過串口一次只傳送1個字節(jié),且數(shù)據(jù)和控制信號都在單根導(dǎo)線上移動,需要應(yīng)用通信協(xié)議。常用的通信協(xié)議如下:1個起始位;7個或8個數(shù)據(jù)位;奇偶效驗位;1個或2個停止位;通信速率(單位為波特率或bit/s)。
構(gòu)成基于RS-485串行通信的分布式控制系統(tǒng)通常采用以下硬件構(gòu)成方案:計算機RS-232C接口經(jīng)RS-232C串行通信線連接RS-232C/RS-485轉(zhuǎn)換模塊,轉(zhuǎn)換模塊經(jīng)RS-485串行通信線連接各個現(xiàn)場設(shè)備的RS-485接口。再配以上位機監(jiān)控軟件,便可以從計算機串行口采集現(xiàn)場設(shè)備的數(shù)據(jù)。
串行通信可以在DOS或Windows環(huán)境下進(jìn)行,可以用匯編或高級語言編寫通信程序。本文介紹如何利用Windows的ActiveX控件進(jìn)行編程。利用ActiveX控件編寫串行通信程序,其編程步驟如下:
(1) 設(shè)置通信協(xié)議(傳輸速率、奇偶校驗、傳輸位數(shù)、終止位);
(2) 讀取線路狀態(tài),判斷是否可以通信;
(3) 發(fā)送或接收數(shù)據(jù);
(4) 重復(fù)第2和第3步,直至通信完成。
2.2 串行通信編程
在Windows環(huán)境下編寫串行通信程序,可以利用VB提供的良好界面設(shè)計能力及強大的串行通信功能。VB 6.0利用MSComm控件通過串行端口發(fā)送和接收數(shù)據(jù),為應(yīng)用程序提供串行通信能力。
MSComm控件是用于Windows環(huán)境的32位串行通信控件,每個MSComm控件對應(yīng)于一個串行端口。應(yīng)用程序中需要多個串行口時,要使用多個MSComm控件。MSComm控件的主要屬性及說明如附表所示。

附表 MSComm控件常用屬性


使用MSComm控件前,需要向工具箱添加該控件:選擇“工程”菜單中“部件”項,“控件”頁中選中“Microsoft Comm control 6.0”項,點擊“確定”,完成MSComm控件的添加。
MSComm提供兩種處理通信的方式:事件驅(qū)動通信和查詢通信方式。串口通信中每接收或發(fā)送一個字符就產(chǎn)生一個事件,事件驅(qū)動通信就是利用MSComm控件OnComm事件捕獲并處理通信事件,該事件包括了處理串口通信的各個消息。以下為采用計算機串口1發(fā)送接收數(shù)據(jù)的程序示例。
發(fā)送數(shù)據(jù):
Private Sub DataSend ( )
Dim Data(5) As Byte
MSComm1. Commport = 1
'設(shè)置MSComm1對應(yīng)Comm1
MSComm1. Settings =”96000,N,8,1”
' 9600bit/s,無奇偶效驗,8位數(shù),1位終止位
If MSComm1. PortOpen =False Then  
'打開端口
MSComm1. PortOpen = True
End If
Data (0) = CByte(TeAddr.Text)
'設(shè)備地址
Data e(1) = &H4
'功能號 讀取電力參數(shù)
Data e(2) = &H0
'數(shù)據(jù)起始地址
Data (3) = &H0
Data (4) = &H0
'數(shù)據(jù)長度
Data e(5) = &H15
MSComm1. OutBufferCount = 0  
'清除發(fā)送緩沖區(qū)
MSComm1. Output = Data  
'發(fā)送數(shù)據(jù)
MSComm1. PortOpen = False  
'關(guān)閉端口
End Sub
接收數(shù)據(jù):
Private Sub MSComm1_OnComm()
Dim rec() As Byte
Select Case MSComm1.CommEvent
Case comEvReceive
'串口接收事件
rec = MSComm1.Input
'讀輸入緩沖區(qū)
End Select
End Sub

3 力控實時數(shù)據(jù)庫與DbCom控件
力控的實時數(shù)據(jù)庫是一個開放的數(shù)據(jù)平臺。用戶可以利用數(shù)據(jù)庫提供的接口,在該平臺上進(jìn)行二次開發(fā),創(chuàng)建自己的應(yīng)用程序。實時數(shù)據(jù)庫提供的控件DbCom就是一種方便、高效的接口方式。
DbCom是一個標(biāo)準(zhǔn)OLE控件,用戶在各種常用開發(fā)環(huán)境(如C++ Builder、VC++、VB、Delphi等)下可以調(diào)用DbCom來訪問數(shù)據(jù)庫中的數(shù)據(jù)。通過DbCom,上位機通信程序不但可以讀取力控數(shù)據(jù)庫數(shù)據(jù),而且可以設(shè)置力控數(shù)據(jù)庫數(shù)據(jù)。在安裝力控時,安裝程序自動完成DbCom的安裝與注冊。DbCom是一個在程的OLE控件,在應(yīng)用程序中使用時,必須同時啟動數(shù)據(jù)庫DB。
下面給出通過DbCom控件訪問力控數(shù)據(jù)庫的兩個常用方法。
(1) 方法1:GetRealData。用于讀取多個數(shù)值型數(shù)據(jù)
語法形式:long GetRealData(long count, LPCTSTR strNames, double* data)。
參數(shù)說明:count:數(shù)據(jù)個數(shù)。
strNames:數(shù)據(jù)名字符串,字符型變量,數(shù)據(jù)名間以','號分隔。
data:雙精度浮點(Double)型指針,返回的數(shù)據(jù)數(shù)組。
返回值:長整型。0:成功;-1:失敗。
(2) 方法2: SetStringData。根據(jù)數(shù)據(jù)名稱和數(shù)據(jù)值設(shè)置數(shù)據(jù)庫
語法形式:long SetStringData(long nCount, VARIANT* pvTagPars, VARIANT* pvData)。
參數(shù)說明:nCount:數(shù)據(jù)個數(shù)。
pvTagPars:VARIANT數(shù)組,nCount個數(shù)據(jù)名稱。
pvData:VARIANT數(shù)組,nCount個數(shù)據(jù)值。
返回值:成功為0,否則為非0。
以下程序為上位機通信程序讀寫力控實時數(shù)據(jù)庫的兩種常用方法的示例。
//讀取數(shù)據(jù)庫
Private Sub GetParameters()
'讀取電度值和有功功率值
Dim count As Integer, result As Integer
Dim rdata(1) As Double
Dim pars As String
count=2
pars=”dbkWh1.PV,dbkW1.PV ”
'調(diào)用DbCom的方法
result = DbCom1. GetRealData (count, pars, rdata)
'讀取數(shù)據(jù)
If result=-1 Then
MsgBox("請先啟動力控實時數(shù)據(jù)庫!")
Else
kWh=rdata(0)
'電度值
kW=rdata(1)
'有功功率值
End If
End Sub
//設(shè)置數(shù)據(jù)庫
Private Sub SetParameters()
'將電度值和有功功率值寫入力控數(shù)據(jù)庫
Dim count As Integer, result As Integer
Dim * pTagPars(1) As VARIANT, * pVals(1) As VARIANT
count=2
pTagPars(0)=dbkWh1.PV
'數(shù)據(jù)名
pTagPars(1)=dbkW1.PV
pVals(0)=kW·h 數(shù)據(jù)值
pVals(1)=kW 調(diào)用DBcom的方法
result=DbCom1.SetStringData(count, pTagPars, pVals)
'設(shè)置數(shù)據(jù)
End Sub

4 結(jié)束語
本文提出的基于力控組態(tài)軟件的新型監(jiān)控軟件,利用了力控實時數(shù)據(jù)庫提供的OLE控件接口,將力控組態(tài)軟件的強大功能與VB自行開發(fā)程序的靈活性結(jié)合起來,更好的滿足了工業(yè)分布式控制系統(tǒng)的需要。這種新型監(jiān)控軟件已在某港口配電監(jiān)控系統(tǒng)等實際工程項目中得到成功應(yīng)用。

文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。

欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

      欧美日韩国产123| 国产亚洲亚洲| 亚洲天堂偷拍| 国产日产精品一区二区三区四区的观看方式 | 欧美日韩性视频在线| 欧美日韩国产成人在线免费| 国内精品模特av私拍在线观看| 一区二区三区高清视频在线观看| 欧美精品久久久久久久久久| 亚洲高清视频的网址| 欧美一级专区免费大片| 欧美日韩国产综合在线| 国产精品99久久久久久人 | 免费日韩av电影| 国产亚洲毛片在线| 久久激情网站| 亚洲国产精品欧美一二99| 欧美电影免费观看高清| 99riav国产精品| 国产婷婷一区二区| 免费国产一区二区| 中文国产成人精品| 国内精品99| 欧美日韩在线一区| 久久久精品一区二区三区| 亚洲电影第三页| 榴莲视频成人在线观看| 一本色道久久综合狠狠躁的推荐| 国产视频一区在线观看一区免费| 免费h精品视频在线播放| 亚洲免费综合| 99热在线精品观看| 亚洲国产欧美日韩另类综合| 国产精品天天看| 欧美日韩成人在线| 欧美+日本+国产+在线a∨观看| 亚洲综合99| 精品69视频一区二区三区| 欧美理论视频| 欧美日韩国产一区二区| 欧美第一黄色网| 欧美黄色免费网站| 久久一区中文字幕| 亚洲国产日韩一级| 国内精品久久久久久久影视麻豆| 亚洲精品四区| 久久嫩草精品久久久久| 亚洲专区在线视频| 亚洲淫性视频| 先锋亚洲精品| 亚洲欧洲av一区二区| 国产精品综合av一区二区国产馆| 午夜视频在线观看一区| 国产精品推荐精品| 国产日韩欧美黄色| 国产综合网站| 一本一本久久a久久精品牛牛影视| 伊人成年综合电影网| 亚洲精品国产精品国产自| 一区二区不卡在线视频 午夜欧美不卡在 | 亚洲激情社区| 亚洲无线视频| 久久久久久久久久久久久久一区| 久久精品国产v日韩v亚洲| 久久性色av| 国产精品v欧美精品v日韩精品| 欧美va亚洲va香蕉在线| 欧美视频在线播放| 国产香蕉97碰碰久久人人| 亚洲福利视频在线| 午夜在线一区二区| 欧美极品色图| 国产一区二区三区精品欧美日韩一区二区三区 | 国产精品xxxxx| 国内外成人在线视频| 中日韩男男gay无套| 欧美主播一区二区三区| 欧美日韩国产成人| 国模精品一区二区三区色天香| 亚洲欧洲在线看| 欧美亚洲一区二区在线| 欧美视频在线免费看| 亚洲理论在线| 欧美精品在线视频观看| 亚洲精品一区二区三| 欧美国产综合视频| 在线日韩精品视频| 久久久成人精品| 亚洲国产精品成人久久综合一区| 欧美自拍偷拍| 国产精品免费观看视频| 亚洲美女视频在线观看| 嫩草国产精品入口| 亚洲九九九在线观看| 欧美成人免费在线观看| 亚洲激情专区| 99亚洲一区二区| 正在播放欧美一区| 久久久欧美精品| 国产一区二区三区免费不卡| 久久久久久网站| 在线观看日产精品| 国产精品欧美日韩| 美女主播一区| 亚洲免费在线视频| 亚洲电影有码| 国产乱码精品一区二区三区av| 久久婷婷亚洲| 欧美在线视频不卡| 亚洲激情视频网| 国产精品va在线播放我和闺蜜| 欧美有码在线观看视频| 宅男噜噜噜66一区二区| 亚洲美洲欧洲综合国产一区| 亚洲韩国青草视频| 一色屋精品视频免费看| 国产日韩欧美一二三区| 欧美日韩一二三区| 国产精品另类一区| 国产精品欧美日韩一区二区| 欧美色中文字幕| 国产精品久久久久永久免费观看 | 小辣椒精品导航| 久久香蕉国产线看观看网| 欧美顶级艳妇交换群宴| 男女激情视频一区| 欧美日本在线视频| 国产精品一香蕉国产线看观看 | 欧美与黑人午夜性猛交久久久| 亚洲欧美日韩中文播放| 久久久精品日韩欧美| 欧美日韩国产丝袜另类| 国产精品欧美经典| 国语自产偷拍精品视频偷| 尤物精品在线| 亚洲一区二区三区四区视频| 欧美一区二区三区播放老司机 | 欧美精品 国产精品| 国产欧美精品一区二区三区介绍| 一区二区视频免费完整版观看| 亚洲人午夜精品免费| 欧美一区二区三区四区在线观看 | 亚洲在线视频网站| 麻豆精品91| 欧美四级电影网站| 亚洲毛片一区| 久久久久青草大香线综合精品| 欧美人与性动交cc0o| 好吊色欧美一区二区三区四区 | 亚洲欧美日韩区| 欧美日韩国产一区精品一区 | 亚洲三级免费观看| 久久亚洲精选| 亚洲夫妻自拍| 久久久久综合网| 狠狠狠色丁香婷婷综合久久五月| 亚洲视频axxx| 国产精品vvv| 午夜欧美大尺度福利影院在线看| 欧美日韩精品欧美日韩精品| 久久一区二区三区av| 欧美成人亚洲成人| 国产一区91| 午夜精彩视频在线观看不卡| 欧美三日本三级少妇三2023| 99re8这里有精品热视频免费 | 久久精品国产亚洲一区二区三区 | 免费中文日韩| 99国产成+人+综合+亚洲欧美| 欧美日本亚洲| 欧美伊人精品成人久久综合97| 国产欧美一区二区三区在线老狼| 小辣椒精品导航| 亚洲精品一区久久久久久| 欧美丝袜第一区| 久久视频免费观看| 亚洲视频成人| 亚洲精品视频在线看| 欧美视频日韩视频| 欧美粗暴jizz性欧美20| 亚洲天堂成人在线观看| 禁断一区二区三区在线| 国产精品福利网| 欧美激情麻豆| 嫩草影视亚洲| 久久久久欧美| 久久激情综合| 小嫩嫩精品导航| 亚洲天天影视| 一本色道久久加勒比88综合| 国产一区二区高清| 国产人成精品一区二区三| 欧美日韩国产在线播放| 久久亚洲精品网站| 久久久久99| 欧美mv日韩mv亚洲| 免费在线观看精品| 欧美另类在线观看| 欧美日韩在线一区| 国产精品美女在线观看|