新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 單片機與組態(tài)王軟件通訊的解決方案

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

作者: 時間:2012-03-28 來源:網絡 收藏

1、引言

本文引用地址:http://www.2s4d.com/article/171752.htm

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

2、 與組態(tài)王軟件

2.1兩種

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

2.2兩種方案的比較

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

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

3.1 DDE的概念

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

3.2通訊程序的數據流向

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

48.gif

3.3 代碼實現(xiàn)

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

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

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

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

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

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

單片機相關文章:單片機教程


單片機相關文章:單片機視頻教程


單片機相關文章:單片機工作原理


數字通信相關文章:數字通信原理


通信相關文章:通信原理



上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉