沈樵综合在线,一区二区三区乱码,免费资源一区二区三区,91超碰碰,av极品一线天,日韩免费高清一区二区,国产蜜尤福利在线,嗯啊91在线观看,精品一区二三

行業(yè)產(chǎn)品

  • 行業(yè)產(chǎn)品

上海迅饒自動化科技有限公司


當(dāng)前位置:上海迅饒自動化科技有限公司>技術(shù)文章>VB開發(fā)BACnetIP主站介紹
技術(shù)文章

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

閱讀:1352發(fā)布時間:2013-8-6

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

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

Private Sub RemoveChannelButton_Click()
error = RemoveChannel(ByVal ChannelHandle(0))
End Sub
zui后討論一下輔助函數(shù)的作用
‘以下是輔助函數(shù),可以選擇性使用
‘設(shè)置寫操作的優(yōu)先等級
Function SetBacnetPriority Lib 'OMBacnetIPMaster.dll' Alias '_SetBacnetPriority@8' (ByVal TagHandle As Long, ByVal nPriority As Long) As Long
‘返回Bacnet對象屬性的數(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


儀表網(wǎng) 設(shè)計制作,未經(jīng)允許翻錄必究 .? ? ? Copyright(C)?2021 http://m.liuyangwu.com,All rights reserved.

以上信息由企業(yè)自行提供,信息內(nèi)容的真實性、準(zhǔn)確性和合法性由相關(guān)企業(yè)負(fù)責(zé),儀表網(wǎng)對此不承擔(dān)任何保證責(zé)任。 溫馨提示:為規(guī)避購買風(fēng)險,建議您在購買產(chǎn)品前務(wù)必確認(rèn)供應(yīng)商資質(zhì)及產(chǎn)品質(zhì)量。

會員登錄

×

請輸入賬號

請輸入密碼

=

請輸驗證碼

收藏該商鋪

登錄 后再收藏

提示

您的留言已提交成功!我們將在第一時間回復(fù)您~
涿州市| 巴中市| 土默特右旗| 雷波县| 八宿县| 潼南县| 武冈市| 泰兴市| 集安市| 六安市| 长治市| 邛崃市| 古丈县| 庄河市| 日照市| 汾西县| 石棉县| 吉隆县| 交口县| 咸宁市| 宁津县| 渑池县| 宜都市| 郸城县| 库伦旗| 宝坻区| 昭苏县| 墨江| 寻乌县| 许昌市| 鹤峰县| 临沭县| 定州市| 龙川县| 丹江口市| 汉源县| 九江市| 赫章县| 桐乡市| 齐齐哈尔市| 四子王旗|