• <del id="qqie6"><sup id="qqie6"></sup></del>
  • <tfoot id="qqie6"></tfoot>
  • <ul id="qqie6"></ul>
  • 產品推薦:水表|流量計|壓力變送器|熱電偶|液位計|冷熱沖擊試驗箱|水質分析|光譜儀|試驗機|試驗箱


    儀表網>技術中心>使用指南>正文

    歡迎聯系我

    有什么可以幫您? 在線咨詢

    VB開發BACnetIP主站介紹

    來源:上海迅饒自動化科技有限公司   2013年08月06日 13:40  

    VB開發BACnetIP主站介紹
    Visual Basic開發BACnet IP主站程序方法介紹
    這里要說的方法就是調用BACnet IP主站快速開發工具OMBACnetIPMaster.dll。
    步驟1、創建通道,而通道管理所有的Bacnet屬性對象。參數分別IP地址,端口號和網絡超時時間,默認是100毫秒。
    Private Sub OpenChannelButton_Click()
    StringToByte txtIPAddress, IPAddress()
    ChannelHandle(0) = CreateBacnetChannel(IPAddress(0), CLng(txtPort), 100)
    End Sub
    通道編輯操作的相關API函數聲明如下
    ‘ 通道管理用于創建、修改、刪除通道。創建通道以后,才能創建Bacnet屬性對象
    ‘ 創建一個通道對象只要是為了設置不同設備的IP地址和端口號。網絡超時等待時間默認是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、創建Bacnet屬性對象。
    Private Sub CreateBacnetObjButton_Click()
    TagHandle(0) = CreateBacnetObj(ChannelHandle(0), 1, 1, 85)
    End Sub
    BACnet屬性對象編輯相關的API函數申明如下
    ‘ BACnet對象管理,創建、修改、刪除
    ‘參數 ChannelHandle 為通道對象的句柄
    ‘參數 nBacnetObjType 為Bacent屬性對象的類型ID,譬如0表示 Analog Input,1表示Analog Output
    ‘參數 nInstanceNum 為指明哪一個對象,譬如要訪問Analog Input 1。則 nInstanceNum為1
    ‘參數 nProperityID 為要訪問屬性的ID,譬如當前值的屬性ID是85
    ‘參數 TagHandle 為Bacnet對象的句柄
    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屬性對象的讀寫
    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對象屬性值讀寫
    ‘參數 nTagNum 為Bacnet對象的Tag Number。也就是要寫的對象屬性的數據類型。當操作過ReadBacnet以后,這個參數可以為空。
    ‘當只寫操作的時候,則需要用戶自己指明是什么數據類型。譬如Analog Output為4.也就是單精度浮點型。
    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、關閉程序時,釋放對象資源。

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

    Private Sub RemoveChannelButton_Click()
    error = RemoveChannel(ByVal ChannelHandle(0))
    End Sub
    zui后討論一下輔助函數的作用
    ‘以下是輔助函數,可以選擇性使用
    ‘設置寫操作的優先等級
    Function SetBacnetPriority Lib 'OMBacnetIPMaster.dll' Alias '_SetBacnetPriority@8' (ByVal TagHandle As Long, ByVal nPriority As Long) As Long
    ‘返回Bacnet對象屬性的數據類型,一般用于寫操作
    Function GetBacnetObjType Lib 'OMBacnetIPMaster.dll' Alias '_GetBacnetObjType@4' (ByVal TagHandle As Long) As Long
    ‘通信故障狀況回調函數
    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

    免責聲明

    • 凡本網注明“來源:儀表網”的所有作品,均為浙江興旺寶明通網絡有限公司-儀表網合法擁有版權或有權使用的作品,未經本網授權不得轉載、摘編或利用其它方式使用上述作品。已經本網授權使用作品的,應在授權范圍內使用,并注明“來源:儀表網”。違反上述聲明者,本網將追究其相關法律責任。
    • 本網轉載并注明自其它來源(非儀表網)的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或和對其真實性負責,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品第一來源,并自負版權等法律責任。
    • 如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。
    聯系我們

    客服熱線: 15024464426

    加盟熱線: 15024464426

    媒體合作: 0571-87759945

    投訴熱線: 0571-87759942

    關注我們
    • 下載儀表站APP

    • Ybzhan手機版

    • Ybzhan公眾號

    • Ybzhan小程序

    企業未開通此功能
    詳詢客服 : 0571-87759942
    主站蜘蛛池模板: 国产成人免费A在线视频| 国产成人精品A视频一区| 国产精品成人va在线播放| 爽爽爽爽爽爽爽成人免费观看| 亚洲a级成人片在线观看| 51影院成人影院| 小明天天看成人免费看| 国产成人无码精品久久二区三区| 国产成人av一区二区三区在线观看 | 欧美成人久久久| 成人免费在线播放| 久久综合欧美成人| 成人午夜小视频| 中文字幕成人乱码在线电影| 国内一级毛片成人七仙女| 亚洲av午夜成人片精品网站| 成人午夜视频免费| 久久成人免费电影| 成人免费淫片在线费观看| 亚洲AV一二三区成人影片| 成人h视频在线观看| 曰批视频免费30分钟成人| 久久成人国产精品| 免费国产成人α片| 国产精品成人va| 成人永久免费高清| 欧美成人观看免费完全| 亚洲色成人www永久网站| 国产成人精品电影| 成人做受视频试看60秒| 中文国产成人精品久久不卡| 国产成人久久精品| 国产成人精品综合在线观看| 成人综合久久综合| 欧美xxxx成人免费网站| 亚洲国产成人久久一区二区三区| 国产成人tv在线观看| 国产成人av区一区二区三| 国产一区亚洲欧美成人| 四虎亚洲国产成人久久精品| 国产成人精品亚洲一区|