基于51單片機(jī)與Lonworks的可視對(duì)講系統(tǒng)設(shè)計(jì)
4 節(jié)點(diǎn)軟件設(shè)計(jì)
4.1 Lonworks部分
Neuron芯片的編程語言為Neuron C,它是從ANSI C派生出來的,并對(duì)ANSI C進(jìn)行了刪減和增補(bǔ)。例如,Neuron C由事件的發(fā)生來驅(qū)動(dòng)任務(wù)的執(zhí)行;Neuron的芯片提供了毫秒和秒這2種類型的軟件計(jì)時(shí)器。
主程序流程如圖3所示。它主要完成的任務(wù)如下:首先對(duì)I/O對(duì)象和軟件計(jì)時(shí)器的定義以及設(shè)置變量初始值,判斷是否有“開鎖”信號(hào),并啟動(dòng)計(jì)時(shí)器開始計(jì)時(shí),計(jì)時(shí)器終止時(shí),Neuron芯片接受新的定時(shí)任務(wù) 。
圖3 主程序流程圖
神經(jīng)元芯片(neuron chip)是Lonworks技術(shù)的核心所在,它是一個(gè)帶有多個(gè)處理器、讀寫/只讀存儲(chǔ)器(RAM/ROM)以及通信和I/O接口的單芯片系統(tǒng)。只讀存儲(chǔ)器包含一個(gè)操作系統(tǒng)、LonTalk協(xié)議和I/O功能庫。Neuron C是一種基于ANSI C并為神經(jīng)元芯片設(shè)計(jì)的一種編程語言,它對(duì)ANSI C進(jìn)行了擴(kuò)展以直接支持Neuron芯片的固件例程。Neuron C語言包括一個(gè)內(nèi)部多任務(wù)調(diào)度程序、一個(gè)Run—Time函數(shù)庫,采用的是事件驅(qū)動(dòng)編程結(jié)構(gòu)。整個(gè)接點(diǎn)的軟件功能都是由若干個(gè)事件驅(qū)動(dòng)完成。
對(duì)于單個(gè)節(jié)點(diǎn),軟件設(shè)計(jì)包括初始化,讀取輸入數(shù)據(jù),更新網(wǎng)絡(luò)變量,定時(shí)控制和執(zhí)行輸出控制操作等任務(wù)。
而對(duì)于園區(qū)網(wǎng)絡(luò),則將總線控制權(quán)交由管理中心掌握,其他節(jié)點(diǎn)如有總線占用需求,需要向管理中心發(fā)出請(qǐng)求,等待管理中心發(fā)出請(qǐng)求響應(yīng)命令;而當(dāng)節(jié)點(diǎn)總線訪問程序結(jié)束后,管理中心會(huì)發(fā)出釋放總線命令,終止節(jié)點(diǎn)對(duì)總線占用,以方便其他節(jié)點(diǎn)對(duì)總線的訪問。
4.2 單片機(jī)部分
單片機(jī)部分CPU采用ATMEL公司生產(chǎn)的工業(yè)級(jí)AT89S52芯片,這種芯片是AT89C51的工業(yè)版本,具有抗干擾能力強(qiáng)和價(jià)格低廉的特點(diǎn)。單片機(jī)系統(tǒng)軟件需要實(shí)現(xiàn)的基本功能如下:
(1)待機(jī)功能。平時(shí)(無控制操作時(shí)),戶內(nèi)可視分機(jī)和單元主機(jī)均處于待機(jī)狀態(tài),射頻模塊、單元主機(jī)攝像頭以及戶內(nèi)可視分機(jī)顯示屏電源均處于關(guān)閉狀態(tài)。
(2)監(jiān)控信號(hào)采集功能。戶內(nèi)可視分機(jī)不僅是連接單元主機(jī)的節(jié)點(diǎn),更是戶內(nèi)各監(jiān)控點(diǎn)信號(hào)采集的中心,當(dāng)門磁、窗磁、戶內(nèi)紅外、煙感以及緊急信號(hào)被發(fā)出時(shí),都將首先送到戶內(nèi)可視分機(jī),由AT89S52進(jìn)行判斷和初步處理,然后轉(zhuǎn)交TMPN3150B1AF芯片送上Lonworks通信網(wǎng)絡(luò),傳送到管理中心進(jìn)行顯示和處理。
(3)開鎖功能。通過戶內(nèi)可視分機(jī),可以控制打開安裝于單元門上并與單元主機(jī)相連的電磁鎖??刂栖浖蓞R編語言編寫,分戶內(nèi)可視分機(jī)和單元主機(jī)兩部分,由系統(tǒng)不同狀態(tài)的處理和切換組成。
5 結(jié)論
采用基于單片機(jī)與Lonworks技術(shù)的可視監(jiān)控系統(tǒng),不僅不用單獨(dú)為Lonworks網(wǎng)絡(luò)設(shè)計(jì)專用的監(jiān)控設(shè)備,而且提高了通信網(wǎng)絡(luò)的使用率,簡化了網(wǎng)絡(luò)設(shè)計(jì),減少了開發(fā)和生產(chǎn)成本,使可視化監(jiān)控更加人性化。
評(píng)論