国产精品成人网站,亚洲欧美精品在线,色一情一乱一伦,又大又紧又粉嫩18P少妇

產(chǎn)品推薦:水表|流量計(jì)|壓力變送器|熱電偶|液位計(jì)|冷熱沖擊試驗(yàn)箱|水質(zhì)分析|光譜儀|試驗(yàn)機(jī)|試驗(yàn)箱


儀表網(wǎng)>技術(shù)中心>使用指南>正文

歡迎聯(lián)系我

有什么可以幫您? 在線咨詢

基于組態(tài)王和VB的智能儀表實(shí)時(shí)監(jiān)控系統(tǒng)

   2013年01月30日 14:51  
  摘要:針對(duì)目前組態(tài)王與智能化儀表通信時(shí)存在的問題,基于VB和動(dòng)態(tài)數(shù)據(jù)交換技術(shù)DDE,研究了組態(tài)王與VB數(shù)據(jù)交換的方法,并采用VB可視化的編程方法,編寫了上位機(jī)與智能化儀表間的串口通信程序及組態(tài)軟件與VB間的OLE數(shù)據(jù)交換程序。實(shí)現(xiàn)了組態(tài)王與智能化儀表的實(shí)時(shí)通信,間接擴(kuò)展了組態(tài)王的驅(qū)動(dòng)程序庫(kù)。另外,設(shè)計(jì)完成了基于組態(tài)王和VB的智能化儀表監(jiān)控系統(tǒng)。運(yùn)行結(jié)果表明,該系統(tǒng)具有良好的穩(wěn)定性、實(shí)時(shí)性,可以較好地實(shí)現(xiàn)工業(yè)現(xiàn)場(chǎng)的實(shí)時(shí)監(jiān)控。
  
  引言
  
  隨著科學(xué)技術(shù)的不斷發(fā)展,計(jì)算機(jī)測(cè)控技術(shù)在工業(yè)現(xiàn)場(chǎng)的各種測(cè)量及控制系統(tǒng)中應(yīng)用越來越廣泛。通常情況下,工業(yè)現(xiàn)場(chǎng)的各種測(cè)控系統(tǒng)需要上位計(jì)算機(jī)與工業(yè)現(xiàn)場(chǎng)各種智能化儀表進(jìn)行通信,以便及時(shí)了解現(xiàn)場(chǎng)儀表的運(yùn)行情況,從而實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)各種狀態(tài)的實(shí)時(shí)監(jiān)控。
  
  組態(tài)王軟件作為一種的上位機(jī)監(jiān)控軟件,在許多領(lǐng)域的遠(yuǎn)程監(jiān)控中都得到了廣泛的應(yīng)用。然而,組態(tài)王為數(shù)據(jù)采集和控制提供的大量底層設(shè)備驅(qū)動(dòng)程序,主要是針對(duì)較大規(guī)模廠商的板卡和模塊,對(duì)于較小規(guī)模廠商開發(fā)的各種智能化儀表及用戶自己設(shè)計(jì)的板卡,卻沒有現(xiàn)成的驅(qū)動(dòng)程序提供。因此,利用組態(tài)王與智能化儀表及用戶自己設(shè)計(jì)的板卡進(jìn)行通信時(shí),往往需要用戶自己開發(fā)底層的驅(qū)動(dòng)程序,給用戶的使用帶來了諸多的不便。為了解決上述問題,組態(tài)王專門提供了一種DDE技術(shù),能夠使用戶方便地實(shí)現(xiàn)組態(tài)王與其它支持動(dòng)態(tài)數(shù)據(jù)交換的應(yīng)用程序進(jìn)行數(shù)據(jù)交換。
  
  VisualBasic6.0(簡(jiǎn)稱VB)是一款簡(jiǎn)單、易用的可視化編程語(yǔ)言,可以方便地利用其提供的組件快速建立一個(gè)應(yīng)用程序。因而,在各種程序開發(fā)中,VB得到了廣泛的應(yīng)用,同時(shí)在VB中提供的串行通信控件MSComm,為實(shí)現(xiàn)上位計(jì)算機(jī)與現(xiàn)場(chǎng)各種儀表進(jìn)行通信提供了一種有效途徑。另外,VB還支持DDE技術(shù),利用該技術(shù)可以方便地開發(fā)出Windows環(huán)境下的DDE程序。
  
  本文針對(duì)目前組態(tài)王與智能化儀表通信時(shí)存在的問題,給出了一種基于VB和DDE技術(shù)的上位計(jì)算機(jī)與現(xiàn)場(chǎng)智能儀表進(jìn)行通信的方法。開發(fā)了一套組態(tài)王與VB相結(jié)合的智能化儀表監(jiān)控系統(tǒng),較好地實(shí)現(xiàn)了工業(yè)現(xiàn)場(chǎng)各種智能化設(shè)備運(yùn)行狀態(tài)的實(shí)時(shí)監(jiān)控。
  
  1、系統(tǒng)的基本結(jié)構(gòu)
  
  基于組態(tài)王和VB的智能化儀表監(jiān)控系統(tǒng)的結(jié)構(gòu)如圖1所示。由圖1可知,該系統(tǒng)由上位計(jì)算機(jī)、RS2232/485通信電纜和現(xiàn)場(chǎng)各種智能化儀表構(gòu)成,該系統(tǒng)采用的是一對(duì)多的通信鏈接形式,即現(xiàn)場(chǎng)多種智能化儀表掛接在RS2485總線上,然后再由RS2232/485轉(zhuǎn)換器轉(zhuǎn)換后,連接到上位計(jì)算機(jī)。
  
  圖1系統(tǒng)基本原理圖。
  
  2、系統(tǒng)的工作原理
  
  組態(tài)王與現(xiàn)場(chǎng)智能儀表的通信原理如圖2所示。
  
  由圖2可以看出,該系統(tǒng)的通信包括兩部分:組態(tài)王與VB程序的DDE通信;VB程序通過RS2232/485與現(xiàn)場(chǎng)智能儀表的通信。
  
  圖2組態(tài)王與現(xiàn)場(chǎng)智能儀表通信原理
  
  2.1組態(tài)王與VB的動(dòng)態(tài)數(shù)據(jù)交換
  
  動(dòng)態(tài)數(shù)據(jù)交換(DDE)是Windows平臺(tái)上的一個(gè)完整通信協(xié)議,該協(xié)議使應(yīng)用程序能彼此交換數(shù)據(jù)和發(fā)送指令。組態(tài)王和VB進(jìn)行DDE通信的過程中,請(qǐng)求發(fā)送數(shù)據(jù)的一方稱為"客戶",被請(qǐng)求的一方稱為"服務(wù)器".由于DDE通信時(shí),交換雙方需實(shí)現(xiàn)數(shù)據(jù)或控制命令的雙向傳輸。因此,它們既是"客戶",又是"服務(wù)器".
  
  2.1.1DDE通信時(shí)組態(tài)王的設(shè)定
  
  組態(tài)王與VB之間數(shù)據(jù)交換內(nèi)容是通過三個(gè)標(biāo)志名來約定的:
  
 ?、賾?yīng)用程序名。進(jìn)行DDE對(duì)話的雙方的名稱。
  
  組態(tài)王運(yùn)行系統(tǒng)的程序名是View.
  
  ②主題。被討論的數(shù)據(jù)域。組態(tài)王主題規(guī)定為tagname.
  
 ?、垌?xiàng)目。被討論的特定數(shù)據(jù)對(duì)象。在組態(tài)王的數(shù)據(jù)詞典里,定義I/O變量的同時(shí),也定義了項(xiàng)目名稱。
  
  為了建立DDE鏈接,需要在組態(tài)王的數(shù)據(jù)詞典里建立一個(gè)I/O變量,并登記服務(wù)器程序的三個(gè)標(biāo)志名。
  
  本系統(tǒng)中應(yīng)用程序名為VBDDE,話題名為form1,項(xiàng)目名為INCREA100,程序交換的方式為標(biāo)準(zhǔn)WindowsDDE交換。
  
  2.1.2DDE通信時(shí)VB的設(shè)定
  
  在VB編程軟件中,DDE連接主要是通過控件的屬性和方法實(shí)現(xiàn)的。通常情況下,DDE通信主要是通過文本框、標(biāo)簽或圖片框等控件進(jìn)行。
  
  如果VB作為顧客,數(shù)據(jù)交換時(shí),則需要對(duì)上述控件的LinkTopic、LinkItem、LinkMode屬性進(jìn)行如下設(shè)置:
  
  Control.LinkTopic=服務(wù)器程序名|主題名
  
  Control.LinkItem=項(xiàng)目名
  
  Control.LinkMode有四種選擇:0表示關(guān)閉DDE;
  
  1表示熱鏈接;2表示冷鏈接;3表示通告鏈接。
  
  其中,Control表示文本框、標(biāo)簽或圖片框的名字。
  
  本系統(tǒng)中Control表示文本框Text1,LinkTopic設(shè)置為View|Tagname,LinkItem設(shè)置為PLC1.INCREA100,LinkMode設(shè)置為1.
  
  如果組態(tài)王作為顧客,只要把VB應(yīng)用程序中提供數(shù)據(jù)窗體的LinkMode屬性設(shè)置為1,其它無需再在VB中增加任何程序。
  
  在對(duì)組態(tài)王和VB的初始設(shè)置完成后,結(jié)合VB編寫的與智能儀表的通信程序,分別按照服務(wù)器和顧客運(yùn)行應(yīng)用程序,即可實(shí)現(xiàn)組態(tài)王與VB的自動(dòng)數(shù)據(jù)交換。
  
  2.2VB與智能儀表的通信
  
  本系統(tǒng)采用VB專業(yè)版的MSComm控件與VB模塊化編程相結(jié)合,實(shí)現(xiàn)了VB與智能儀表間的通信,主要程序模塊及部分程序如下:
  
 ?、俪绦虺跏蓟K。主要完成串口的選擇、波特率、幀結(jié)構(gòu)設(shè)置、打開串口等串口的設(shè)置工作。
  
 ?、诎l(fā)送數(shù)據(jù)模塊。由手動(dòng)發(fā)送控制命令字和自動(dòng)發(fā)送控制命令字兩種方式,實(shí)現(xiàn)手動(dòng)采集數(shù)據(jù)和自動(dòng)采集數(shù)據(jù)。其中,自動(dòng)發(fā)送數(shù)據(jù)方式包括一個(gè)定時(shí)器發(fā)送程序和一個(gè)定時(shí)器時(shí)間響應(yīng)程序;定時(shí)器發(fā)送程序用來控制控制命令字的發(fā)送周期,定時(shí)器響應(yīng)程序用來完成現(xiàn)場(chǎng)各智能化儀表地址的循環(huán)賦值及控制命令字的發(fā)送。
  
  上述模塊中定時(shí)器響應(yīng)程序的部分程序如下:
  
  PrivateSubTimer1Timer
  
  Timer1.Enabled=False
  
  Text_SEND.Text=""∥清空發(fā)送文本框
  
  MSComm.OutBufferCount=0∥清除發(fā)送緩沖區(qū)數(shù)據(jù)
  
  DimOutByte(1To3)AsByte
  
  IfNotMSComm.PortOpenThen∥保證串口打開
  
  MSComm.PortOpen=True
  
  EndIf
  
  '24臺(tái)積算儀循環(huán)數(shù)據(jù)采集
  
  Ifk=1Then
  
  OutByte(1)=&HCA
  
  OutByte(2)=0
  
  OutByte(3)=1
  
  EndIf
  
  Ifk=2Then
  
  OutByte(1)=&HCA
  
  OutByte(2)=0
  
  OutByte(3)=2
  
  EndIf
  
  ??
  
  k=k+1
  
  Ifk>24Then
  
  k=1
  
  EndIf
  
  MSComm.InBufferCount=0∥清除接收緩沖區(qū)數(shù)據(jù)
  
  MSComm.OutBufferCount=0∥清除發(fā)送緩沖區(qū)數(shù)據(jù)
  
  MSComm.Output=OutByte
  
  Forj=1To3
  
  OutByteagain(j)=OutByte(j)
  
  Next
  
  Fori=1To50000000
  
  '延時(shí)Next
  
  EndSub
  
  ③接收數(shù)據(jù)模塊。通過事件響應(yīng)的方式來完成現(xiàn)場(chǎng)數(shù)據(jù)的接收。如果串口收到現(xiàn)場(chǎng)數(shù)據(jù),并且使得數(shù)據(jù)緩沖區(qū)中的內(nèi)容超過一個(gè)字節(jié)時(shí),就會(huì)引發(fā)com2EvReceive事件。OnComm函數(shù)用來負(fù)責(zé)捕捉com2EvReceive事件,并且將發(fā)送緩沖區(qū)中的現(xiàn)場(chǎng)內(nèi)容寫入VB的文本框進(jìn)行顯示,同時(shí)與組態(tài)王進(jìn)行DDE數(shù)據(jù)交換。
  
  該模塊中的OnComm函數(shù)響應(yīng)程序如下:
  
  PrivateSubTimer1Timer
  
  Timer1.Enabled=False
  
  Text_SEND.Text=""∥清空發(fā)送文本框
  
  MSComm.OutBufferCount=0∥清除發(fā)送緩沖區(qū)數(shù)據(jù)
  
  DimOutByte(1To3)AsByte
  
  IfNotMSComm.PortOpenThen∥保證串口打開
  
  MSComm.PortOpen=True
  
  EndIf
  
  '24臺(tái)積算儀循環(huán)數(shù)據(jù)采集
  
  Ifk=1Then
  
  OutByte(1)=&HCA
  
  OutByte(2)=0
  
  OutByte(3)=1
  
  EndIf
  
  Ifk=2Then
  
  OutByte(1)=&HCA
  
  OutByte(2)=0
  
  OutByte(3)=2
  
  EndIf
  
  k=k+1
  
  Ifk>24Then
  
  k=1
  
  EndIf
  
  MSComm.InBufferCount=0∥清除接收緩沖區(qū)數(shù)據(jù)
  
  MSComm.OutBufferCount=0∥清除發(fā)送緩沖區(qū)數(shù)據(jù)
  
  MSComm.Output=OutByte
  
  Forj=1To3
  
  OutByteagain(j)=OutByte(j)
  
  Next
  
  Fori=1To50000000
  
  '延時(shí)Next
  
  EndSub
  
  PrivateSubTimer1Timer
  
  Timer1.Enabled=False
  
  Text_SEND.Text=""∥清空發(fā)送文本框
  
  MSComm.OutBufferCount=0∥清除發(fā)送緩沖區(qū)數(shù)據(jù)
  
  DimOutByte(1To3)AsByte
  
  IfNotMSComm.PortOpenThen∥保證串口打開
  
  MSComm.PortOpen=True
  
  EndIf
  
  '24臺(tái)積算儀循環(huán)數(shù)據(jù)采集
  
  Ifk=1Then
  
  OutByte(1)=&HCA
  
  OutByte(2)=0
  
  OutByte(3)=1
  
  EndIf
  
  Ifk=2Then
  
  OutByte(1)=&HCA
  
  OutByte(2)=0
  
  OutByte(3)=2
  
  EndIf
  
  ??
  
  k=k+1
  
  Ifk>24Then
  
  k=1
  
  EndIf
  
  MSComm.InBufferCount=0∥清除接收緩沖區(qū)數(shù)據(jù)
  
  MSComm.OutBufferCount=0∥清除發(fā)送緩沖區(qū)數(shù)據(jù)
  
  MSComm.Output=OutByte
  
  Forj=1To3
  
  OutByteagain(j)=OutByte(j)
  
  Next
  
  Fori=1To50000000
  
  '延時(shí)Next
  
  EndSub
  
  ④容錯(cuò)模塊。通過增加數(shù)據(jù)采集容錯(cuò)模塊,保證數(shù)據(jù)采集的實(shí)時(shí)性、準(zhǔn)確性,提高系統(tǒng)工作可靠性。
  
 ?、輸?shù)據(jù)庫(kù)模塊。主要利用Access數(shù)據(jù)庫(kù),實(shí)現(xiàn)對(duì)計(jì)算機(jī)采集數(shù)據(jù)存儲(chǔ)、管理、分析及歷史數(shù)據(jù)的查詢等。
  
 ?、奁渌绦蚰K。主要完成發(fā)送、接收文本框的清空工作等。
  
  通過上述幾個(gè)模塊的協(xié)調(diào)工作,就可以較好地實(shí)現(xiàn)VB與智能儀表間的串行通信、數(shù)據(jù)分析及歷史數(shù)據(jù)查詢等。
  
  3、結(jié)束語(yǔ)
  
  通過VB與智能儀表間的串行通信及組態(tài)王與VB間的DDE通信,并利用組態(tài)王豐富的圖形和組態(tài)工藝,較好地完成了數(shù)據(jù)的實(shí)時(shí)刷新、各種曲線、報(bào)警的顯示。運(yùn)行結(jié)果表明,該系統(tǒng)具有友好的人機(jī)界面,良好的穩(wěn)定性、可靠性,較好地解決了組態(tài)王與一般智能儀表間的實(shí)時(shí)通信問題,實(shí)現(xiàn)了組態(tài)王對(duì)智能化儀表的實(shí)時(shí)監(jiān)控。

免責(zé)聲明

  • 凡本網(wǎng)注明“來源:儀表網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡(luò)有限公司-儀表網(wǎng)合法擁有版權(quán)或有權(quán)使用的作品,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使用,并注明“來源:儀表網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)法律責(zé)任。
  • 本網(wǎng)轉(zhuǎn)載并注明自其它來源(非儀表網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或和對(duì)其真實(shí)性負(fù)責(zé),不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品第一來源,并自負(fù)版權(quán)等法律責(zé)任。
  • 如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
聯(lián)系我們

客服熱線: 13199863987

加盟熱線: 13199863987

媒體合作: 0571-87759945

投訴熱線: 0571-87759942

關(guān)注我們
  • 下載儀表站APP

  • Ybzhan手機(jī)版

  • Ybzhan公眾號(hào)

  • Ybzhan小程序

企業(yè)未開通此功能
詳詢客服 : 0571-87759942