《電子技術應用》
您所在的位置:首頁 > 嵌入式技术 > 设计应用 > 单片机与组态王软件通讯的解决方案
单片机与组态王软件通讯的解决方案
摘要: 组态王软件作为一种工业控制组态软件在国内已得到了非常广泛的应用。其具有强大的硬件支持能力,对国内外绝大多数PLC、变频器、板卡、模块、仪器仪表都编写了相应的驱动程序,使用起来相当方便快捷。在“农水实验田环境监测”项目中,我们使用的硬件设备包括日本三菱PLC、台湾研华亚当模块及自行开发的基于单片机的分析仪器,我们选择的软件开发平台是组态王软件。因此,实现单片机与组态王的数据通讯是一个必须解决的问题。
Abstract:
Key words :

1、引言

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

2、 單片機與組態王軟件通訊的解決方案

2.1兩種通訊解決方案

單片機與組態王軟件通訊的解決方案有兩種,其一是直接編寫支持單片機的驅動程序,就象組態王支持PLC一樣;其二是利用組態王軟件和Visual Basic都支持DDE的特點,以VB為開發平臺,寫一個數據通訊應用程序,一方面實現與單片機的連接,另一方面實現與組態王的動態數據交換。

2.2兩種方案的比較

第一種方案的優點是程序結構比較緊湊,數據通訊效率較高;缺點是必須由對組態王軟件內核比較清楚的程序員開發,開發周期較長。第二種方案可由一般的程序員開發,缺點是數據通訊效率較低。在本項目中,我們采用了第二種方案。

3、 基于DDE方案的實現

3.1 DDE的概念

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

3.2通訊程序的數據流向

用VB編寫的數據通訊程序作為中間者傳遞組態王與單片機之間的數據。當組態王需要向單片機發送控制命令時,組態王充當服務器向VB通訊程序提供數據,VB通訊程序再通過串口實現對單片機的遠程控制;當組態王需要向單片機采集數據時,組態王充當客戶向VB通訊程序請求數據。組態王與單片機通訊的數據流向如圖1。

48.gif

3.3 代碼實現

1.   組態王的DDE設置

組態王的DDE對話的內容是通過三個標識名來約定的。

應用程序名(application):進行DDE對話的雙方名稱

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

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

為了建立DDE連接,需要在組態王的數據詞典里建立一個DDE變量,并登記三個標識名。組態王運行系統的程序名是“VIEW”,主題規定為“TAGNAME”,項目是在定義DDE變量時定義的項目名稱。

2.   VB通訊程序中的DDE設置

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

3.   VB與單片機的通訊

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

4、結論

采用上述方案,我們在“農水實驗田環境監測系統”項目中,很好地解決了組態王軟件與單片機的數據通訊。一年來,系統運行穩定可靠,產生了良好的經濟效益。
 

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 91国产精品视频在线| 激情五月综合色婷婷一区二区| 99在线影院| 中文字幕精品一区日韩| 久久久久亚洲av无码专区喷水| 亚洲一区二区三区在线观看视频| 久久精品在线播放| 欧美一乱一性一交一视频| 国语自产精品视频在免费| 一区中文字幕在线观看| 国产精品大全| 狠狠色狠狠色综合人人| 久久99国产精品| 一区二区三区四区久久| 欧美日韩一区二区视频在线观看| 日韩中文字幕在线视频观看| 岛国视频一区| 日本视频一区在线观看| 日韩不卡av| 国产午夜精品一区| 久久亚洲午夜电影| 日本精品中文字幕| 日韩人妻一区二区三区蜜桃视频 | 久久国产精品偷| wwwwww欧美| 欧美久久久精品| 国产精品久久久久久久久婷婷 | 国产精品乱码一区二区三区| 久久国产色av| 久久精品在线视频| 久久综合给合久久狠狠色| 欧美二区三区在线| 欧美 日韩 国产 激情| 一级日韩一区在线观看| 日韩中文字幕在线视频观看| 日本精品久久久久久久久久| 日韩中文在线不卡| 亚洲一区二区三区在线免费观看| 91免费精品视频| 亚洲欧美日韩不卡| 日韩视频免费大全中文字幕|