- 相關(guān)推薦
基于嵌入式Linux的BACnet控制器軟件設(shè)計(jì)
摘要:描述BACnet協(xié)議的體系結(jié)構(gòu),分析BACnet控制器的功能,論證基于嵌入式Linux開發(fā)BACnet控制器的可行性;給出BACnet控制器軟件的體系結(jié)構(gòu)及其軟件設(shè)計(jì)。關(guān)鍵詞:BACnet 控制器 樓宇控制設(shè)備 嵌入式Linux 體系結(jié)構(gòu)
BACnet協(xié)議是一種為樓宇自動(dòng)控制網(wǎng)絡(luò)所制定的數(shù)據(jù)通信協(xié)議。該協(xié)議已成為美國(guó)國(guó)家標(biāo)準(zhǔn)(ANSI/ASHRAE 135-1995)和歐盟標(biāo)準(zhǔn)草案,并在2000年成為草案級(jí)國(guó)際標(biāo)準(zhǔn)。其中定義了23個(gè)對(duì)象和42個(gè)服務(wù),以及5個(gè)數(shù)據(jù)鏈路的局域網(wǎng)底層網(wǎng)絡(luò)結(jié)構(gòu)。1999年1月正式發(fā)布了附錄135a,成為標(biāo)準(zhǔn)的附件J,確定BACnet/IP技術(shù)的第6個(gè)局域網(wǎng)互聯(lián)的底層技術(shù)。
1 BACnet網(wǎng)絡(luò)體系結(jié)構(gòu)和控制器功能分析
1.1 BACnet網(wǎng)絡(luò)體系結(jié)構(gòu)
BACnet建立在包含四個(gè)層次的簡(jiǎn)化分層體系結(jié)構(gòu)上。這四層相當(dāng)于OSI模型中的物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層和應(yīng)用層。BACnet標(biāo)準(zhǔn)定義自已的應(yīng)用層和簡(jiǎn)單的網(wǎng)絡(luò)層,對(duì)于其數(shù)據(jù)鏈路層和物理層,提供了五種選擇方案,在附件J-BACnet/IP中加入了對(duì)IP的支持。
圖1是BACnet/IP網(wǎng)絡(luò)體系結(jié)構(gòu)層次圖。BACnet沒有對(duì)應(yīng)于OSI的第四、五、六層,也就是說,BACnet沒有傳輸層、會(huì)話層和表示層。BACnet網(wǎng)絡(luò)層屏蔽了底層采用的網(wǎng)絡(luò)技術(shù)的差異。
1.2 BACnet控制器的功能分析
在一個(gè)BACnet控制網(wǎng)絡(luò)中,一個(gè)BACnet控制器通常和多個(gè)控制設(shè)備直接相連,負(fù)責(zé)監(jiān)控這些設(shè)備的運(yùn)行。概括起來說,BACnet控制器應(yīng)該具有三個(gè)方面的功能。①通信功能。BACnet控制器是一個(gè)網(wǎng)絡(luò)控制器,所以它必須能夠發(fā)送和接收BACnet報(bào)文,和其它BACnet設(shè)備進(jìn)行通信。②監(jiān)視功能。BACnet控制器要監(jiān)視與它直接相連的控制設(shè)備的狀態(tài)。這樣,它就要提供數(shù)據(jù)結(jié)構(gòu)來描述這種狀態(tài)。在BACnet協(xié)議中,描述這些狀態(tài)是用BACnet對(duì)象。BACnet協(xié)議提供了42個(gè)標(biāo)準(zhǔn)對(duì)象。③控制功能。BACnet控制器要控制與它相邊聽設(shè)備的運(yùn)行,不僅要使這些設(shè)備之間具有互動(dòng)能力,而且要使這些設(shè)備和系統(tǒng)的遠(yuǎn)程設(shè)備能夠互動(dòng),所以在BACnet控制器中應(yīng)該有邏輯控制模塊來實(shí)現(xiàn)這一功能。值得注意的是,不同時(shí)間、不同地點(diǎn),BACnet控制器中的控制邏輯可能是不同的,因而在BACnet控制器中要提供改變控制流程的工具。這種工具最好是圖形界面的,以方便用戶使用。
圖1 BACnet體系結(jié)構(gòu)層次圖
2 基于嵌入式Linux開發(fā)軟件的可行性
①Linux是一個(gè)和Unix相似、以核心為基礎(chǔ)的、完全內(nèi)存保護(hù)、多任務(wù)多進(jìn)程的操作系統(tǒng)。在開發(fā)過程中,可以根據(jù)實(shí)際需要,通過內(nèi)核構(gòu)筑工具對(duì)Linux內(nèi)核功能進(jìn)行裁減,做成體積很小的嵌入式操作系統(tǒng),可使其達(dá)到500KB或更小的規(guī)模。
②在實(shí)時(shí)性應(yīng)用方面,通用的Linux在強(qiáng)實(shí)時(shí)
[1] [2] [3] [4]
【基于嵌入式Linux的BACnet控制器軟件設(shè)計(jì)】相關(guān)文章:
基于Linux內(nèi)核的Netfilter框架研究04-26
基于RSMTL-CAD框架的FMECA軟件設(shè)計(jì)04-27
《嵌入式軟件設(shè)計(jì)》人才培養(yǎng)模式的探索與實(shí)踐04-26
基于DSP的自適應(yīng)桁架振動(dòng)控制器設(shè)計(jì)04-30
基于觀測(cè)融合Kalman濾波算法的PID控制器04-28
基于軟件復(fù)用技術(shù)的雷達(dá)星體標(biāo)校軟件設(shè)計(jì)04-29
基于LabWindows的實(shí)時(shí)多任務(wù)加載總控臺(tái)軟件設(shè)計(jì)04-28