技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 應(yīng)用方案 > 單片機與組態(tài)王軟件通訊的解決方案

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

時間:2008-02-13 16:59:00來源:mawei

導(dǎo)語:?本文闡述了組態(tài)王軟件在工業(yè)控制領(lǐng)域中的應(yīng)用,組態(tài)王軟件和單片機進行通訊的兩種解決方案及其優(yōu)劣性比較
摘要:本文闡述了組態(tài)王軟件在工業(yè)控制領(lǐng)域中的應(yīng)用,組態(tài)王軟件和單片機進行通訊的兩種解決方案及其優(yōu)劣性比較,并著重闡述了基于DDE方案的數(shù)據(jù)通訊原理和代碼實現(xiàn)。 1.引言 組態(tài)王軟件作為一種工業(yè)控制組態(tài)軟件在國內(nèi)已得到了非常廣泛的應(yīng)用。其具有強大的硬件支持能力,對國內(nèi)外絕大多數(shù)PLC、變頻器、板卡、模塊、儀器儀表都編寫了相應(yīng)的驅(qū)動程序,使用起來相當方便快捷。在“農(nóng)水實驗田環(huán)境監(jiān)測”項目中,我們使用的硬件設(shè)備包括日本三菱PLC、臺灣研華亞當模塊及自行開發(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ù)器”,當它向其他程序中請求數(shù)據(jù)是,它充當?shù)氖恰翱蛻簟?,若有其他程序向它提供?shù)據(jù),它又成了“服務(wù)器”。 3.2通訊程序的數(shù)據(jù)流向 用VB編寫的數(shù)據(jù)通訊程序作為中間者傳遞組態(tài)王與單片機之間的數(shù)據(jù)。當組態(tài)王需要向單片機發(fā)送控制命令時,組態(tài)王充當服務(wù)器向VB通訊程序提供數(shù)據(jù),VB通訊程序再通過串口實現(xiàn)對單片機的遠程控制;當組態(tài)王需要向單片機采集數(shù)據(jù)時,組態(tài)王充當客戶向VB通訊程序請求數(shù)據(jù)。組態(tài)王與單片機通訊的數(shù)據(jù)流向如圖1。
圖1 組態(tài)王與單片機通訊的數(shù)據(jù)流向
3.3 代碼實現(xiàn) 1.組態(tài)王的DDE設(shè)置 組態(tài)王的DDE對話的內(nèi)容是通過三個標識名來約定的。 應(yīng)用程序名(application):進行DDE對話的雙方名稱 主題(topic) :被討論的數(shù)據(jù)域 項目 (item) :被討論的特定數(shù)據(jù)對象 為了建立DDE連接,需要在組態(tài)王的數(shù)據(jù)詞典里建立一個DDE變量,并登記三個標識名。組態(tài)王運行系統(tǒng)的程序名是“VIEW”,主題規(guī)定為“TAGNAME”,項目是在定義DDE變量時定義的項目名稱。 2.VB通訊程序中的DDE設(shè)置 在VB中DDE的連接是通過控件的屬性和方法來實現(xiàn)的。當VB充當服務(wù)器時,需要設(shè)置LinkTopic 和LinkMode屬性;當VB充當客戶時,需要設(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事件,從而進行數(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)濟效益。

標簽:

點贊

分享到:

上一篇:PLC系統(tǒng)在飼料稱重包裝中的應(yīng)用

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責(zé)任。

網(wǎng)站簡介|會員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號