基于神經(jīng)元芯片的遠(yuǎn)程水溫監(jiān)控系統(tǒng)
1 lonworks總線和神經(jīng)芯片
lonworks控制網(wǎng)絡(luò)是當(dāng)前最為流行的現(xiàn)場總線之一,它的核心是神經(jīng)元芯片(neuron chip)和lontalk通信協(xié)議。lontalk通信協(xié)議支持0si/rm的所有七層模型,使得lon網(wǎng)絡(luò)與其他網(wǎng)絡(luò)有著良好的接口和兼容性。支持多種拓?fù)浣Y(jié)構(gòu),通信介質(zhì)可選雙絞線、電力線、紅外線、光纖、同軸電纜等媒介,使得網(wǎng)絡(luò)布線更加方便。應(yīng)用程序采用面向?qū)ο蟮脑O(shè)計(jì)方法,通過網(wǎng)絡(luò)變量進(jìn)行節(jié)點(diǎn)之間的數(shù)據(jù)交換,使網(wǎng)絡(luò)通信簡化為參數(shù)設(shè)置。
本系統(tǒng)中用到兩種關(guān)鍵部件。
(1)神經(jīng)芯片
神經(jīng)元(neuron)芯片使用cmos vlsi技術(shù),允許運(yùn)行價格低廉的控制網(wǎng)絡(luò)。其主要包括mcl43150和mcl43120兩大系列。神經(jīng)元芯片的主要特點(diǎn)是:
3個8位的cpu,輸入時鐘可選擇的范圍10~625hz:
片上存儲器;
11個可編程i/o引腳(有34種可選擇的工作方式);
2個16位定時器/計(jì)數(shù)器;
15個軟定時器;
5個網(wǎng)絡(luò)通信端口,有3種方式可選擇(單端反射、差分方式和專用方式);
固件包括符合0si七層協(xié)議的lontalk協(xié)議,i/0驅(qū)動程序和事件驅(qū)動多任務(wù)調(diào)度程序;
服務(wù)引腳用于遠(yuǎn)程識別和診斷;
48位內(nèi)部neuron id用于唯一識別neuron芯片;
在兩大系列中,3120芯片內(nèi)部包含e2prom、ram和rom存儲器,而3150芯片內(nèi)部無rom,但擁有訪問外部存儲器的接口,可根據(jù)實(shí)際情況靈活配置存儲器。
(2)收發(fā)器
提供神經(jīng)芯片與lonworks網(wǎng)絡(luò)的物理通信接口。
2 水溫監(jiān)控系統(tǒng)硬件組成及工作原理
本系統(tǒng)由監(jiān)控結(jié)點(diǎn)、執(zhí)行結(jié)點(diǎn)兩個結(jié)點(diǎn)組成。它們位于lon網(wǎng)絡(luò)的兩端,結(jié)構(gòu)如圖l所示。
在每個節(jié)點(diǎn)中,選用3150芯片外加一塊a2 kb的flash存儲器芯片at29c257來存儲應(yīng)用程序、數(shù)據(jù)和通信協(xié)議等神經(jīng)芯片固件。神經(jīng)芯片和存儲器之間的連接如圖2所示。
監(jiān)控結(jié)點(diǎn)位于中心控制室,能顯示實(shí)時水溫,用戶通過它對遠(yuǎn)端加熱裝置器進(jìn)行水溫設(shè)置。監(jiān)控節(jié)點(diǎn)中神經(jīng)芯片的i/o部分電路如圖3所示。
在本電路中,用戶調(diào)節(jié)電位器來設(shè)置水溫;電位器上得到的電壓經(jīng)a/o轉(zhuǎn)換后變?yōu)閛~100之間的數(shù),發(fā)往執(zhí)行結(jié)點(diǎn),并在前兩個數(shù)碼管上顯示出來。執(zhí)行結(jié)點(diǎn)傳過來的實(shí)時水溫顯示在后兩個數(shù)碼管上。為了充分利用芯片的i/0口,使用移位計(jì)數(shù)器74hc595擴(kuò)展i/o口,采用芯片的串行輸出功能,i/o8作為時鐘信號,i/09作為數(shù)據(jù)輸出口,i/06作為數(shù)據(jù)鎖存控制端.根據(jù)實(shí)際情況的需要可用液晶顯示屏替換8段數(shù)碼管。
執(zhí)行結(jié)點(diǎn)位于加熱器端,它檢測水溫井將數(shù)值發(fā)往監(jiān)控結(jié)點(diǎn),接收監(jiān)控結(jié)點(diǎn)發(fā)來的控制溫度數(shù)據(jù)/根據(jù)情況啟動/停止熱水器工作。執(zhí)行節(jié)點(diǎn)中神經(jīng)芯片的i/o部分電路如圖4所示。
在本電路中,實(shí)時水溫由溫度傳感器檢測出,經(jīng)a/d轉(zhuǎn)換后變?yōu)?~100之間的值,保存并發(fā)往監(jiān)控結(jié)點(diǎn)。神經(jīng)芯片把從監(jiān)控結(jié)點(diǎn)收到控制溫度值與檢測溫度值相比較,若檢測值小,則閉合繼電器,加熱器開始工作;若檢測值大,則斷開繼電器,加熱器停止工作。
為避免加熱器反復(fù)通斷電工作,可以設(shè)置一個可接受的溫度控制精度區(qū)間。本電路中設(shè)置為±3℃,即加熱時,當(dāng)檢測溫度高過控制溫度3℃時才斷開繼電器;不加熱時,當(dāng)檢測溫度低于控制溫度3℃時才閉合繼電器。
3 軟件設(shè)計(jì)
本系統(tǒng)軟件部分采用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,將檢測信號、控制信號、神經(jīng)芯片i/o分別定義為不同的對象,使用neuronc進(jìn)行編程。監(jiān)控節(jié)點(diǎn)與執(zhí)行節(jié)點(diǎn)的程序見網(wǎng)站(www.dpi.com.cn)。
結(jié) 語
本文利用lonwork網(wǎng)絡(luò)在單股雙絞線上實(shí)現(xiàn)較遠(yuǎn)距離的節(jié)點(diǎn)通信,設(shè)計(jì)并實(shí)現(xiàn)了對遠(yuǎn)端水溫的監(jiān)控。本系統(tǒng)只涉及對溫度的控制,在實(shí)際應(yīng)用中,只需增加簡單的電路和程序代碼,即可實(shí)現(xiàn)對壓力、氧氣含量(如公共浴室)等其他指標(biāo)的控制。
評論