新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于LON總線的圖像采集系統(tǒng)智能節(jié)點(diǎn)的開(kāi)發(fā)

基于LON總線的圖像采集系統(tǒng)智能節(jié)點(diǎn)的開(kāi)發(fā)

作者: 時(shí)間:2010-06-25 來(lái)源:網(wǎng)絡(luò) 收藏

  隨著信息產(chǎn)業(yè)的發(fā)展和數(shù)字化產(chǎn)品的不斷涌現(xiàn),人們對(duì)住宅的要求也越來(lái)越高,與此對(duì)應(yīng)的是對(duì)住宅的安全性也相應(yīng)的提出了更高的要求。在我國(guó)[1],雖然“智能住宅”已提出了很多年,技術(shù)也正在逐漸完善和成熟,現(xiàn)場(chǎng)總線技術(shù)尤其是Lon Works技術(shù),無(wú)論在智能家庭還是在別的領(lǐng)域都得到了長(zhǎng)足的發(fā)展,但是總有些不太如意的地方,普及不夠廣泛。本文通過(guò)一個(gè)具體的實(shí)例,介紹了Lon Works技術(shù)在智能家庭的具體應(yīng)用,并盡力把所需成本降到最低,以使類似的產(chǎn)品更多地應(yīng)用到普通的每個(gè)家庭中。LON總線是美國(guó)ECHELON公司1991推出的為集散式監(jiān)控系統(tǒng)提供的實(shí)現(xiàn)手段,并有一系列完整的開(kāi)發(fā)平臺(tái)。在此基礎(chǔ)上,作者采用神經(jīng)元芯片Neuron 3150并配合W77E58單片機(jī)系列開(kāi)發(fā)了低成本的,并能通過(guò)上位機(jī)向用戶發(fā)送手機(jī),有效地彌補(bǔ)了現(xiàn)在的智能住宅的不足。

1 系統(tǒng)結(jié)構(gòu)

  本系統(tǒng)是智能家庭系統(tǒng)中的子系統(tǒng),主要實(shí)現(xiàn)的是:當(dāng)有人進(jìn)入該區(qū)域時(shí)則立即進(jìn)行,通過(guò)各個(gè)模塊進(jìn)行處理后經(jīng)LON總線送入上位機(jī)并通知用戶,該系統(tǒng)屬于家庭安全防范中的一部分。由于本文的需要,只設(shè)置了1個(gè)(也可以有多個(gè))。設(shè)計(jì)中采用通用的節(jié)點(diǎn)模塊,以神經(jīng)元芯片Neuron3150作為主控制端,W77E58單片機(jī)作為受控端進(jìn)行處理。其系統(tǒng)總體框圖如圖1所示。

基于LON總線的圖像采集系統(tǒng)智能節(jié)點(diǎn)的開(kāi)發(fā)

2 硬件設(shè)計(jì)

2.1 ZM460圖像采集模塊

  ZM460圖像壓縮模塊采用JPEG壓縮技術(shù),是一種內(nèi)置JPEG壓縮功能的數(shù)字輸出嵌入式攝像設(shè)備,圖像具有多種分辨率,輸出完整的JPEG文件并結(jié)合最適應(yīng)的網(wǎng)絡(luò)協(xié)議,將圖像通過(guò)RS232/485串口輸出圖像。由于該智能節(jié)點(diǎn)實(shí)時(shí)性要求不是很高,故本文采用W77E58單片機(jī)來(lái)控制。

2.2 W77E58單片機(jī)芯片

  W77E58單片機(jī)芯片是一個(gè)快速并與8051單片機(jī)兼容的微控制器,它的內(nèi)核經(jīng)過(guò)重新設(shè)計(jì),提高了時(shí)鐘的速度和存儲(chǔ)器訪問(wèn)周期速度,W77E58的指令執(zhí)行速度是標(biāo)準(zhǔn)8051單片機(jī)的1.5~3倍。在相同的吞吐量及低頻時(shí)鐘情況下,電源消耗也比8051單片機(jī)低。W77E58內(nèi)含32 KB Flash EPROM,工作電壓為4.5V~5.5V,具有1 KB片上外部存儲(chǔ)器,當(dāng)用戶應(yīng)用時(shí)使用片上SRAM,可節(jié)省更多IO口。FIFO存儲(chǔ)器用作對(duì)ZM460圖像采集模塊所采集的圖像數(shù)據(jù)進(jìn)行緩存,調(diào)節(jié)W77E58單片機(jī)與ZM460圖像采集模塊之間速度的差異,從而采集到完整圖像。ZM460模塊與W77E58單片機(jī)之間采用的是RS232接口。

2.3 Neuron 3150芯片

  Neuron 3150芯片是LON總線的核心,內(nèi)部包括3個(gè)微處理器:MAC處理器、網(wǎng)絡(luò)處理器、應(yīng)用處理器。Neuron 3150芯片[2]的IO8、IO10通過(guò)雙排針I(yè)O口分別與W77E58單片機(jī)的串行通信口RXD、TXD連接。因?yàn)樯窠?jīng)元Neuron 3150芯片只支持半雙工異步通信,所以應(yīng)用程序處理器在處理其他事件時(shí)將不能夠再顧及串行輸入,有可能發(fā)生丟失串口字符的現(xiàn)象。為解決該問(wèn)題,可以使用硬件握手協(xié)議,Neuron 3150芯片的IO0和IO1作為RST、CTS信號(hào),分別與W77E58單片機(jī)的P2.4和P2.5引腳相連,為了增強(qiáng)驅(qū)動(dòng)能力,中間再加1個(gè)反相器。如圖2所示。

基于LON總線的圖像采集系統(tǒng)智能節(jié)點(diǎn)的開(kāi)發(fā)


2.4 Neuron 3150芯片收發(fā)器

  收發(fā)器是智能節(jié)點(diǎn)與LON網(wǎng)之間的接口,是通信電路的核心。雙絞線收發(fā)器是最通用的收發(fā)器類型。本設(shè)計(jì)采用變壓器耦合型收發(fā)器FTT-10A。神經(jīng)元芯片收發(fā)器的電路圖如圖3所示。另外,還有晶振電路、復(fù)位電路和Service電路等。晶振電路為Neuron 3150芯片提供工作時(shí)鐘。復(fù)位電路用于在智能節(jié)點(diǎn)上電時(shí)產(chǎn)生復(fù)位操作。

基于LON總線的圖像采集系統(tǒng)智能節(jié)點(diǎn)的開(kāi)發(fā)


2.5 Neuron芯片與PC機(jī)的連接

  Neuron芯片與PC機(jī)通過(guò)雙絞線連接。主機(jī)是1臺(tái)PC機(jī),通過(guò)PCLTA可以自由地在Lon Works上進(jìn)行網(wǎng)絡(luò)通信。PCLTA(PC Lon Talk Adapter)是一個(gè)網(wǎng)絡(luò)適配器,在驅(qū)動(dòng)程序的作用下,主機(jī)通過(guò)PCLTA上網(wǎng),充當(dāng)上位機(jī)的角色,它是Lon Works網(wǎng)絡(luò)的一個(gè)特殊節(jié)點(diǎn),其作用是:與神經(jīng)元芯片進(jìn)行通信及與外界進(jìn)行通信(包括手機(jī))。

3 軟件設(shè)計(jì)

單片機(jī)與Neuron 3150芯片之間的通信流程圖如圖4所示。

基于LON總線的圖像采集系統(tǒng)智能節(jié)點(diǎn)的開(kāi)發(fā)


3.1 Neuron 3150芯片程序

  在Neuron 3150芯片中,使用的IO口稱為串口(Serial)輸入/輸出對(duì)象。管腳IO8、IO10分別設(shè)置為異步串行數(shù)據(jù)的輸入線和輸出線。該IO對(duì)象類型是用于使用異步串行數(shù)據(jù)格式傳輸數(shù)據(jù)的場(chǎng)合,如RS-232通信。傳輸格式是:1個(gè)開(kāi)始位、1個(gè)數(shù)據(jù)位、1個(gè)停止位。輸入串行IO對(duì)象將等待被接收的數(shù)據(jù)幀開(kāi)始直到接收了202個(gè)以上字符所要時(shí)間才結(jié)束。限于篇幅,只給出下面接收程序:

  //接收程序:
  IO_0 output bit CTS;
  IO_1 input bit RTS;
  IO_10 input serial RXD;
  Network output int fkmingling[b];
  When (io_change(RTS)to 0)
  {
  Unsigned int num;
  Unsigned long sum,getsum;
  IO_out(CTS,1);
  Num=io_in(RXD,inputbuf,7); //串口接收
  }

3.2 上位機(jī)系統(tǒng)設(shè)計(jì)

  上位機(jī)采用VB編寫(xiě)接口程序,通過(guò)設(shè)置控件Link調(diào)用ASP內(nèi)的發(fā)送的文件,并獲取Lon Works網(wǎng)絡(luò)的節(jié)點(diǎn)的變量信息。用ASP+ADO進(jìn)行收發(fā)設(shè)計(jì),也可以使遠(yuǎn)程主機(jī)通過(guò)在瀏覽器中輸入服務(wù)器的IP地址來(lái)監(jiān)視Lon Works 設(shè)備信息。在發(fā)送短信之前先填好要發(fā)送的手機(jī)號(hào)和內(nèi)容。發(fā)送短信ASP的主要代碼(部分)如下:

%
′要發(fā)送的手機(jī)號(hào)碼、要發(fā)送的信息內(nèi)容預(yù)先設(shè)置好
SendNumber=request("SenderNumber")
Message=request("message")
if Sendnumber="" or message="" then errmsg="li>
各項(xiàng)均不能為空!"
′短消息的長(zhǎng)度不能超過(guò)140個(gè)字符
if len(message)>140 then errmsg=errmsg+"li>短信
內(nèi)容超長(zhǎng),請(qǐng)查檢!"
′更新信息發(fā)送數(shù)據(jù)表
conn.execute("insert into senddata(mobile,message)
values("+sendnumber+"," +message+ ")")
response.redirect("http: //自己的IP地址
/mt/SendServ-let?dstmobile="+cstr(sendnumber)+"feemobile="+cstr(sendnumber)+"msg="+server.URLEncode(trim(message))+"sv code=Zrr034spnum=33343457cp_id=wise
6733333000cp_pass=wtiaw6ip=211.1.607.105")
  response.write "您的消息已經(jīng)成功發(fā)出,謝謝!"
  %>
  此代碼由神經(jīng)元芯片將指令傳送到VB程序后由PC機(jī)自動(dòng)發(fā)出。

  本文所設(shè)計(jì)的基于Lon Works技術(shù)的圖像采集系統(tǒng)是智能家庭的一部分,其創(chuàng)新點(diǎn)是:利用LON網(wǎng)絡(luò),把圖像采集與Neuron芯片集于一體,并通過(guò)PC機(jī)能向手機(jī)發(fā)送短信告知。管理者可以從任何有網(wǎng)絡(luò)的地方來(lái)監(jiān)視自己的家庭情況,即使主人不在也可以通過(guò)該裝置以短信的方式向主人發(fā)出來(lái)訪者信息,極大地提高了家庭的安全性。

  在實(shí)際應(yīng)用中,本設(shè)計(jì)成本每個(gè)不超過(guò)200元,若批量生產(chǎn)成本將會(huì)大幅下降。市場(chǎng)前景良好。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉