《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 單片機與組態(tài)王軟件通訊的解決方案
單片機與組態(tài)王軟件通訊的解決方案
摘要: 組態(tài)王軟件作為一種工業(yè)控制組態(tài)軟件在國內(nèi)已得到了非常廣泛的應(yīng)用。其具有強大的硬件支持能力,對國內(nèi)外絕大多數(shù)PLC、變頻器、板卡、模塊、儀器儀表都編寫了相應(yīng)的驅(qū)動程序,使用起來相當(dāng)方便快捷。在“農(nóng)水實驗田環(huán)境監(jiān)測”項目中,我們使用的硬件設(shè)備包括日本三菱PLC、臺灣研華亞當(dāng)模塊及自行開發(fā)的基于單片機的分析儀器,我們選擇的軟件開發(fā)平臺是組態(tài)王軟件。因此,實現(xiàn)單片機與組態(tài)王的數(shù)據(jù)通訊是一個必須解決的問題。
Abstract:
Key words :

1、引言

組態(tài)王軟件作為一種工業(yè)控制組態(tài)軟件在國內(nèi)已得到了非常廣泛的應(yīng)用。其具有強大的硬件支持能力,對國內(nèi)外絕大多數(shù)PLC、變頻器、板卡、模塊、儀器儀表都編寫了相應(yīng)的驅(qū)動程序,使用起來相當(dāng)方便快捷。在“農(nóng)水實驗田環(huán)境監(jiān)測”項目中,我們使用的硬件設(shè)備包括日本三菱PLC、臺灣研華亞當(dāng)模塊及自行開發(fā)的基于單片機的分析儀器,我們選擇的軟件開發(fā)平臺是組態(tài)王軟件。因此,實現(xiàn)單片機與組態(tài)王的數(shù)據(jù)通訊是一個必須解決的問題。

2、 單片機與組態(tài)王軟件通訊的解決方案

2.1兩種通訊解決方案

單片機與組態(tài)王軟件通訊的解決方案有兩種,其一是直接編寫支持單片機的驅(qū)動程序,就象組態(tài)王支持PLC一樣;其二是利用組態(tài)王軟件和Visual Basic都支持DDE的特點,以VB為開發(fā)平臺,寫一個數(shù)據(jù)通訊應(yīng)用程序,一方面實現(xiàn)與單片機的連接,另一方面實現(xiàn)與組態(tài)王的動態(tài)數(shù)據(jù)交換。

2.2兩種方案的比較

第一種方案的優(yōu)點是程序結(jié)構(gòu)比較緊湊,數(shù)據(jù)通訊效率較高;缺點是必須由對組態(tài)王軟件內(nèi)核比較清楚的程序員開發(fā),開發(fā)周期較長。第二種方案可由一般的程序員開發(fā),缺點是數(shù)據(jù)通訊效率較低。在本項目中,我們采用了第二種方案。

3、 基于DDE方案的實現(xiàn)

3.1 DDE的概念

DDE是WINDOWS平臺上的一個完整通信協(xié)議,它使應(yīng)用程序能彼此交換數(shù)據(jù)和發(fā)送指令。DDE過程可以比喻為兩人對話,一方向另一方提出問題,然后等待回答。提問的一方稱為“客戶”,回答的一方稱為“服務(wù)器”。一個應(yīng)用程序可以同時是“客戶”和“服務(wù)器”,當(dāng)它向其他程序中請求數(shù)據(jù)是,它充當(dāng)?shù)氖?ldquo;客戶”,若有其他程序向它提供數(shù)據(jù),它又成了“服務(wù)器”。

3.2通訊程序的數(shù)據(jù)流向

用VB編寫的數(shù)據(jù)通訊程序作為中間者傳遞組態(tài)王與單片機之間的數(shù)據(jù)。當(dāng)組態(tài)王需要向單片機發(fā)送控制命令時,組態(tài)王充當(dāng)服務(wù)器向VB通訊程序提供數(shù)據(jù),VB通訊程序再通過串口實現(xiàn)對單片機的遠(yuǎn)程控制;當(dāng)組態(tài)王需要向單片機采集數(shù)據(jù)時,組態(tài)王充當(dāng)客戶向VB通訊程序請求數(shù)據(jù)。組態(tài)王與單片機通訊的數(shù)據(jù)流向如圖1。

48.gif

3.3 代碼實現(xiàn)

1.   組態(tài)王的DDE設(shè)置

組態(tài)王的DDE對話的內(nèi)容是通過三個標(biāo)識名來約定的。

應(yīng)用程序名(application):進(jìn)行DDE對話的雙方名稱

主題(topic) :被討論的數(shù)據(jù)域

項目 (item) :被討論的特定數(shù)據(jù)對象

為了建立DDE連接,需要在組態(tài)王的數(shù)據(jù)詞典里建立一個DDE變量,并登記三個標(biāo)識名。組態(tài)王運行系統(tǒng)的程序名是“VIEW”,主題規(guī)定為“TAGNAME”,項目是在定義DDE變量時定義的項目名稱。

2.   VB通訊程序中的DDE設(shè)置

在VB中DDE的連接是通過控件的屬性和方法來實現(xiàn)的。當(dāng)VB充當(dāng)服務(wù)器時,需要設(shè)置LinkTopic 和LinkMode屬性;當(dāng)VB充當(dāng)客戶時,需要設(shè)置LinkTopic ,LinkItem和LinkMode屬性。例如,VB通訊程序作為服務(wù)器時的設(shè)置如下:
Sub Form_Load()
LinkTopic=”form1”
LinkMode=1
End Sub

3.   VB與單片機的通訊

在VB中可用Microsoft公司的32位串口通信控件Mscomm32.ocx實現(xiàn)與單片機的通訊。在程序初始化時,設(shè)置Rthreshoid屬性為1,接收緩沖區(qū)接收到數(shù)據(jù)時觸發(fā)OnComm事件,從而進(jìn)行數(shù)據(jù)的接收和處理。
Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case Mscomm EV RECEIVE
Inbuffe= MSComm1.Input
Receivedata=Inbuffe
MSComm1 Receive=False
End Select
。。。。。。。
End Sub

4、結(jié)論

采用上述方案,我們在“農(nóng)水實驗田環(huán)境監(jiān)測系統(tǒng)”項目中,很好地解決了組態(tài)王軟件與單片機的數(shù)據(jù)通訊。一年來,系統(tǒng)運行穩(wěn)定可靠,產(chǎn)生了良好的經(jīng)濟效益。
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 久久99精品国产麻豆宅宅| 亚洲精品亚洲人成在线播放| 久草资源在线观看| 爱情论坛免费在线看| 向日葵视频app免费下载| 麻豆传煤入口麻豆公司传媒| 宝贝过来趴好张开腿让我看看| 久久久久777777人人人视频| 末成年ASS浓精PICS| 亚洲成A人片在线观看无码3D| 老张和老李互相换女| 国产精品蜜芽tv在线观看| h成人在线观看| 成人做受视频试看60秒| 久久一日本道色综合久| 日韩人妻无码一区二区三区综合部| 亚洲乱亚洲乱妇无码麻豆| 秋霞黄色一级片| 又黄又爽又色又刺激的视频| h视频在线观看免费网站| 国产高清免费视频| 中文字幕一区二区三匹| 欧美人与牲动交xxxx| 再深点灬舒服灬舒服点男同| 老阿姨哔哩哔哩b站肉片茄子芒果| 国产免费久久精品99久久| 3d精品重口littleballerina| 在线观看污污视频| eeuss中文字幕| 日本一品道门免费高清视频| 久久精品99国产精品日本| 最新中文字幕av专区| 亚洲精品字幕在线观看| 猫咪免费观看人成网站在线| 免费污视频在线| 车上做好紧我太爽了再快点| 国产成人亚洲午夜电影| 在镜子里看我怎么c你的| eeuss影院eeuss天堂| 天天影院成人免费观看| 丰满妇女强制高潮18XXXX|