VB開發(fā)BACnetIP主站介紹

     

    Visual Basic開發(fā)BACnet IP主站程序方法介紹

    這里要說的方法就是調(diào)用BACnet IP主站快速開發(fā)工具OMBACnetIPMaster.dll。

    步驟1、創(chuàng)建通道,而通道管理所有的Bacnet屬性對(duì)象。參數(shù)分別IP地址,端口號(hào)和網(wǎng)絡(luò)**時(shí)時(shí)間,默認(rèn)是100毫秒。

    Private Sub OpenChannelButton_Click()
    StringToByte txtIPAddress, IPAddress()
    ChannelHandle(0) = CreateBacnetChannel(IPAddress(0), CLng(txtPort), 100)
    End Sub

    通道編輯操作的相關(guān)API函數(shù)聲明如下

    ‘ 通道管理用于創(chuàng)建、修改、刪除通道。創(chuàng)建通道以后,才能創(chuàng)建Bacnet屬性對(duì)象
    ‘ 創(chuàng)建一個(gè)通道對(duì)象只要是為了設(shè)置不同設(shè)備的IP地址和端口號(hào)。網(wǎng)絡(luò)**時(shí)等待時(shí)間默認(rèn)是100毫秒

    Function CreateBacnetChannel Lib 'OMBacnetIPMaster.dll' Alias '_CreateChannel@12' (ByRef IPAddress As Byte, ByVal nPort As Long, ByVal nTimeOut As Long) As Long
    Function ConfigureChannel Lib 'OMBacnetIPMaster.dll' Alias '_ConfigureChannel@16' (ByVal ChannelHandle As Long, ByRef IPAddress As Byte, ByVal nPort As Long, ByVal nTimeOut As Long) As Long
    Function RemoveChannel Lib 'OMBacnetIPMaster.dll' Alias '_RemoveChannel@4' (ByVal ChannelHandle As Long) As Long


    步驟2、創(chuàng)建Bacnet屬性對(duì)象。

    Private Sub CreateBacnetObjButton_Click()
    TagHandle(0) = CreateBacnetObj(ChannelHandle(0), 1, 1, 85)
    End Sub

    BACnet屬性對(duì)象編輯相關(guān)的API函數(shù)申明如下

    ‘ BACnet對(duì)象管理,創(chuàng)建、修改、刪除
    ‘參數(shù) ChannelHandle 為通道對(duì)象的句柄
    ‘參數(shù) nBacnetObjType 為Bacent屬性對(duì)象的類型ID,譬如0表示 Analog Input,1表示Analog Output
    ‘參數(shù) nInstanceNum 為指明哪一個(gè)對(duì)象,譬如要訪問Analog Input 1。則 nInstanceNum為1
    ‘參數(shù) nProperityID 為要訪問屬性的ID,譬如當(dāng)前值的屬性ID是85
    ‘參數(shù) TagHandle 為Bacnet對(duì)象的句柄
    Function CreateBacnetObj Lib 'OMBacnetIPMaster.dll' Alias '_CreateBacnetObject@16' (ByVal ChannelHandle As Long, ByVal nBacnetObjType As Long, ByVal nInstanceNum As Long, ByVal nProperityID As Long) As Long
    Function ConfigureObject Lib 'OMBacnetIPMaster.dll' Alias '_ConfigureObject@16' (ByVal ChannelHandle As Long, ByVal nBacnetObjType As Long, ByVal nInstanceNum As Long, ByVal nProperityID As Long) As Long
    Function RemoveBacnetObject Lib 'OMBacnetIPMaster.dll' Alias '_RemoveBacnetObject@4' (ByVal TagHandle As Long) As Long


    步驟3、BACnet屬性對(duì)象的讀寫

    Private Sub WriteBacnetObjectButtton_Click()
    error = WriteBacnetObj(TagHandle(0), CSng(Tag2.Text), 0)
    End Sub

    Private Sub ReadBacnetObjButton_Click()
    Dim a As Variant
    error = ReadBacnetObj(TagHandle(0), a)
    Tag1.Text = a
    End Sub

    ‘ BACnet對(duì)象屬性值讀寫
    ‘參數(shù) nTagNum 為Bacnet對(duì)象的Tag Number。也就是要寫的對(duì)象屬性的數(shù)據(jù)類型。當(dāng)操作過ReadBacnet以后,這個(gè)參數(shù)可以為空。
    ‘當(dāng)只寫操作的時(shí)候,則需要用戶自己指明是什么數(shù)據(jù)類型。譬如Analog Output為4.也就是單精度浮點(diǎn)型。

    Function ReadBacnetObj Lib 'OMBacnetIPMaster.dll' Alias '_ReadBacnetObject@8' (ByVal TagHandle As Long, ByRef Value As Variant) As Long
    Function WriteBacnetObj Lib 'OMBacnetIPMaster.dll' Alias '_WriteBacnetObject@12' (ByVal TagHandle As Long, ByRef Value As Variant, ByVal nTagNum As Long) As Long

    步驟4、關(guān)閉程序時(shí),釋放對(duì)象資源。


    Private Sub RemoveBacnetObjButton_Click()
    error = RemoveBacnetObject(ByVal TagHandle(0))
    End Sub


    Private Sub RemoveChannelButton_Click()
    error = RemoveChannel(ByVal ChannelHandle(0))
    End Sub

    最后討論一下輔助函數(shù)的作用

    ‘以下是輔助函數(shù),可以選擇性使用

    ‘設(shè)置寫操作的**等級(jí)
    Function SetBacnetPriority Lib 'OMBacnetIPMaster.dll' Alias '_SetBacnetPriority@8' (ByVal TagHandle As Long, ByVal nPriority As Long) As Long

    ‘返回Bacnet對(duì)象屬性的數(shù)據(jù)類型,一般用于寫操作
    Function GetBacnetObjType Lib 'OMBacnetIPMaster.dll' Alias '_GetBacnetObjType@4' (ByVal TagHandle As Long) As Long

    ‘通信故障狀況回調(diào)函數(shù)

    Function EnableErrorMsgNofity Lib 'OMBacnetIPMaster.dll' Alias '_EnableErrorMsgNofity@4' (ByVal Callback As Long) As Long

    Function EnableAbortMsgNofity Lib 'OMBacnetIPMaster.dll' Alias '_EnableAbortMsgNofity@4' (ByVal Callback As Long) As Long

    Function EnableRejectMsgNofity Lib 'OMBacnetIPMaster.dll' Alias '_EnableRejectMsgNofity@4' (ByVal Callback As Long) As Long


    上海迅饒自動(dòng)化科技有限公司專注于BTL認(rèn)證協(xié)議BACnet網(wǎng)關(guān),Modbus轉(zhuǎn)BACnet網(wǎng)關(guān),OPC轉(zhuǎn)BACnet,協(xié)議轉(zhuǎn)換Modbus網(wǎng)關(guān),改造項(xiàng)目協(xié)議轉(zhuǎn)換HUB網(wǎng)關(guān),協(xié)議轉(zhuǎn)換WEB組態(tài)觸摸屏等

  • 詞條

    詞條說明

  • BACnet 協(xié)議介紹

    BACnet 協(xié)議介紹 樓宇自動(dòng)控制網(wǎng)絡(luò)數(shù)據(jù)通訊協(xié)議(Data Communication Protocol for Building Automation and Control Network)簡(jiǎn)稱為BACnet,是一種專門為樓宇設(shè)備的集成控制制定的數(shù)據(jù)通訊協(xié)議,是為了規(guī)范樓宇內(nèi)空調(diào)、給排水和供配電等樓宇設(shè)備自動(dòng)控制系統(tǒng)之間的互連,使之成為較具有開放性和互操作性的數(shù)據(jù)通信統(tǒng)一標(biāo)準(zhǔn)協(xié)議。 《建

  • OPCBridge應(yīng)用案例匯總

    OPCBridge應(yīng)用案例匯總 作用:把OPC協(xié)議轉(zhuǎn)換成Modbus協(xié)議 功能:解決遠(yuǎn)程OPC組態(tài)麻煩 支持:KEPWARE OPCSRVER,IFIX OPCSERVER,浙大中控 OPCSERVER,CITECT OPCSERVER,Wonderware OPCSEVER,EBI opcserver(所有的OPCSERVER) 1、避免DCOM配置 眾所周知,當(dāng)OPC服務(wù)器和OPC客戶端運(yùn)行

  • 協(xié)議網(wǎng)關(guān)在工廠自動(dòng)化中的應(yīng)用

    協(xié)議網(wǎng)關(guān)在工廠自動(dòng)化中的應(yīng)用 條形碼比對(duì)系統(tǒng)

  • 支持漢字的OPC服務(wù)器開發(fā)包

    支持漢字的OPC服務(wù)器開發(fā)包 支持漢字的OPC服務(wù)器開發(fā)包WTOPCSvr.dll 目前國內(nèi)使用WTOPCsvr.dll的大有人在,使用WTOPCSvr.dll開發(fā)OPC服務(wù)器是非常方便的,而且其源碼也是非常優(yōu)秀的,一遺憾的是這個(gè)開發(fā)包畢竟是老美開發(fā)的,他們較初的時(shí)候估計(jì)也不知道在中國的使用者會(huì)有這么多,竟然不支持漢字。解決辦法就是修改代碼了,讓它支持UNICODE就可以了。 另外VB環(huán)境里開

聯(lián)系方式 聯(lián)系我時(shí),請(qǐng)告知來自八方資源網(wǎng)!

公司名: 上海迅饒自動(dòng)化科技有限公司

聯(lián)系人: 陳沖

電 話: 021-58776098

手 機(jī): 13564889340

微 信: 13564889340

地 址: 上海浦東浦東新區(qū)金海路2588號(hào)*科技園428室

郵 編: 201209

網(wǎng) 址: sunfull2013.cn.b2b168.com

八方資源網(wǎng)提醒您:
1、本信息由八方資源網(wǎng)用戶發(fā)布,八方資源網(wǎng)不介入任何交易過程,請(qǐng)自行甄別其真實(shí)性及合法性;
2、跟進(jìn)信息之前,請(qǐng)仔細(xì)核驗(yàn)對(duì)方資質(zhì),所有預(yù)付定金或付款至個(gè)人賬戶的行為,均存在詐騙風(fēng)險(xiǎn),請(qǐng)?zhí)岣呔瑁?
    聯(lián)系方式

公司名: 上海迅饒自動(dòng)化科技有限公司

聯(lián)系人: 陳沖

手 機(jī): 13564889340

電 話: 021-58776098

地 址: 上海浦東浦東新區(qū)金海路2588號(hào)*科技園428室

郵 編: 201209

網(wǎng) 址: sunfull2013.cn.b2b168.com

    相關(guān)企業(yè)
    商家產(chǎn)品系列
  • 產(chǎn)品推薦
  • 資訊推薦
關(guān)于八方 | 八方幣 | 招商合作 | 網(wǎng)站地圖 | 免費(fèi)注冊(cè) | 一元廣告 | 友情鏈接 | 聯(lián)系我們 | 八方業(yè)務(wù)| 匯款方式 | 商務(wù)洽談室 | 投訴舉報(bào)
粵ICP備10089450號(hào)-8 - 經(jīng)營許可證編號(hào):粵B2-20130562 軟件企業(yè)認(rèn)定:深R-2013-2017 軟件產(chǎn)品登記:深DGY-2013-3594
著作權(quán)登記:2013SR134025
Copyright ? 2004 - 2025 b2b168.com All Rights Reserved