新聞中心

EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > 多網(wǎng)絡(luò)智能遠程遙控系統(tǒng)的設(shè)計與實現(xiàn)

多網(wǎng)絡(luò)智能遠程遙控系統(tǒng)的設(shè)計與實現(xiàn)

作者: 時間:2004-12-07 來源:網(wǎng)絡(luò) 收藏
摘要:介紹了以單片機AT89C52、雙音多頻解碼集成電路MT8870、語音錄放集成電路ISD4003和個人計算機為核心,通過現(xiàn)有的電信終端或互聯(lián)網(wǎng)終端來進行的多控制思路,并給出了其原理和軟件方法。

關(guān)鍵詞:控制 雙音頻解碼 計算機控制 網(wǎng)絡(luò)通訊

1 多網(wǎng)絡(luò)遠程控制

技術(shù)是通過一定的手段對被控物體實施一定距離控制的一種技術(shù),常用的方式有無線電、有線遙控、紅外線和超聲波遙控等。

而多網(wǎng)絡(luò)遙控則是一種新型控制技術(shù),它與常規(guī)的遙控方式相比,具有無需進行專門的布線,不占用無線電頻率資源,避免電磁污染等優(yōu)勢。同時,由于電信線路各地聯(lián)網(wǎng),互聯(lián)網(wǎng)遍布世界各地,因此,可以充分利用現(xiàn)有的網(wǎng)絡(luò)資源跨省市,甚至跨越國家無限長度地進行智能遙控。多網(wǎng)絡(luò)遙控這一課題目前已有涉足者,但是還只限于實驗室階段,距實際應(yīng)用,尤其是對于日常生活尚有一定的距離,并不能完全體現(xiàn)出網(wǎng)絡(luò)遙控方式的雙工通信特點。本文基于這一點進行了較大改進。該方法采用單片機進行智能控制,并利用不同的語音提示及計算機軟件來達到對于不同操作的提示及對受控方狀態(tài)信息的反饋,從而友好的人機交互界面,使操作者能夠?qū)崟r了解受控方信息,并最終使產(chǎn)品達到交互式與智能化的水平。本系統(tǒng)以CCITT及中國的部分標準程控交換信令(DTMF雙音多頻信號,振鈴信號以及Internet互聯(lián)網(wǎng)的TCP/IP通信標準等)作為系統(tǒng)控制命令及其數(shù)據(jù)傳輸標準,因而可為以后的產(chǎn)品化提供良好的基礎(chǔ)。

2 總體方案

多網(wǎng)絡(luò)智能遙控器的主控部分(即下位機工作部分)由單片機構(gòu)成,主要進行信息處理;如接收外部操作指令以形成各種控制信號,完成各種信息的記錄和信號檢測并為識別控制電路提供單片機與電話外線和計算機的接口等。同時還包括鈴流及其摘掛機檢測、摘掛機控制、雙音頻DTMF識別、串行通訊口控制電路和語音提示等電路。此外還有上位機程序編制和網(wǎng)絡(luò)通訊程序編制等(即上位機工作的互聯(lián)網(wǎng)通信部分)。圖1所示是其系統(tǒng)原理方框圖。

本系統(tǒng)中的語音提示電路受單片機的控制,能產(chǎn)生相應(yīng)的提示語音,可通過反饋電路反饋至電話外線,從而使操作者對電器的操作達到交互式,以便即時了解有關(guān)信息,并為用戶提供友好的操作界面(對電話網(wǎng)絡(luò)用戶)。該系統(tǒng)可通過串行通訊口與上位機相連接后接入Internet互聯(lián)網(wǎng),上位機的網(wǎng)絡(luò)控制程序中也設(shè)置了語音提示并且具有更加友好的控制界面以方便用戶操作(對互聯(lián)網(wǎng)用戶)。

本系統(tǒng)的每一個接口電路(振鈴檢測、模擬摘掛機、語音提示、雙音頻解碼等)都已經(jīng)過實際的交換機在線實驗,實用性很強。此外,本系統(tǒng)還有許多可以添加的功能。由于本裝置是并聯(lián)于電話機的兩端,因而不會影響電話機的正常使用。用戶通過異地的電話機撥通本裝置所連接外線的電話號碼時,便可通過市局交換機向電話機發(fā)出振鈴信號。本裝置如果檢測到三次振鈴,即三次響鈴后無人接聽,則自動摘機,進入控制環(huán)境,同時根據(jù)語音提示在用戶完成操作后退出本系統(tǒng)。用戶也可以通過互聯(lián)網(wǎng)登陸目標主機服務(wù)器來進行遠程控制。本系統(tǒng)采用Visual C++編程來上位機控制與Internet遠程遙控。它可將現(xiàn)有的電話功能加以擴展,其中公用管理部分包括繼續(xù)唿叫功能、來訪語音留言功能(可自動記錄時間和日期)等;而私用管理部分則包括收聽來訪的語音留言、控制電器、查詢電器工作狀態(tài)等。

3 設(shè)計與實踐

本系統(tǒng)所設(shè)計的電路主要包括一個語音錄放電路,一個雙音頻譯碼電路,一個鈴流檢測電路,CPU電路,串行通訊電路和繼電器控制電路。

3.1 鈴流檢測單元電路

當用戶被唿叫時,程控電話交換機發(fā)出鈴流出號。振鈴信號為253V的正弦波,揩鈴失真不大于10%,電壓有效值為9015V。振鈴為5秒為周期,即1秒送,4秒斷。因振鈴信號電壓比較高,故應(yīng)使之降壓后再輸入至光電耦合器,以通過光耦進行隔離轉(zhuǎn)換。因而光電耦合器輸出的是時通時斷的脈沖,信號可直接輸出至單片機的計數(shù)器輸入口,從而完成整個振鈴音檢測和計數(shù)的過程。電話外線信號通過0.47μF電容器的隔直和5.1kΩ電阻器的衰減加到光電耦合器的發(fā)光二極管端。與之并聯(lián)的反相二極管的作用是保護發(fā)光二極管,以免其反相電壓過高而損害發(fā)光二極管。通過試驗,最終確定選50kΩ電阻可起到拉高光耦引腳電壓的作用。

3.2 雙音頻解碼單元電路

雙音頻解碼電路由專用芯片MT8870組成。圖2所示是其外部電路,譯碼結(jié)果由數(shù)據(jù)總線提供給CPU的P1.0~P1.3口,譯碼結(jié)束后產(chǎn)生的中斷請求信號可通過T0(組成加1計數(shù)器)請求中斷,以告訴CPU轉(zhuǎn)換結(jié)束,數(shù)據(jù)等待讀入。讀入信號為四位二進制碼,碼值民電話按鍵的對應(yīng)關(guān)系如表1所列。

表1 碼值與電話按鍵的對應(yīng)關(guān)系

FLOWFHIGHDIGITD3D2D1D0
697120910001
697133620010
697147730011
770120940100
770133650101
7701477601110
852120970111
852133681000
852147791001
941133601010
9411209*1011
9411477#1100
6971633A1101
7701633B1110
8521633C1111
9411633D0000

當外線信號經(jīng)過二極管組成的橋路降壓整形后,可由0.1μF的電容進行隔直并由100kΩ的電阻進行衰減,然后便可以將其進入雙音頻譯碼芯片MT8870的輸入端。

3.3 語音電路

本系統(tǒng)選用美國ISO公司的ISD4003單片語音錄放集成電路作為語音提示電路的核心部分。ISD4003采用E2PROM存儲器,可永久保存信息,并可零功能存儲;該存儲器同時采用D/A直接模擬量存儲技術(shù),因而能較好地保留語音信息中的有效成分,提高錄放音的清晰度。ISD4003可以存儲長達8分鐘的語音,并能分段語音錄放,每段錄放音均有一個起始地址,該起始地址及其控制信號均可由單片機通過其SPI通信口給定。ISD4003的外圍電路非常簡單,只需少許阻容元件即可。由ISD4003構(gòu)成的系統(tǒng)與用戶的語音交互界面單元電路如圖3所示。

3.4 串行通訊電路和CPU單元

本系統(tǒng)中的串行通訊電路由專用的MAX202組成,主要用于系統(tǒng)與PC機的串行通信。CPU電路由AT89C52作為中央處理器并配以簡單的外圍電路組成,同時選用22μF的電容和1kΩ的電阻構(gòu)成系統(tǒng)自動上電復(fù)位電路。11.0592MHz晶振和兩個30pF的電容組成了系統(tǒng)的時鐘基準電路。由于CPU內(nèi)部就有存儲器,所以本系統(tǒng)未對其進行存儲擴展。

圖3 語音單元電路

4 軟件設(shè)計

4.1 下位機通訊軟件設(shè)計

通過receive()函數(shù)可實現(xiàn)下位機與上位機的數(shù)據(jù)接收,而send()函數(shù)則用于實現(xiàn)下拉機與位機的數(shù)據(jù)發(fā)送,bote()函數(shù)的作用是實現(xiàn)串行通訊口初始化和9600波特率的產(chǎn)生。

4.2 雙音頻識別部分軟件的設(shè)計

雙音頻信號由雙音頻譯碼單元電路檢測,當有信號將譯碼輸出到數(shù)據(jù)總線后,系統(tǒng)將產(chǎn)生中斷請求,并送到T0計數(shù)器以產(chǎn)生中斷,同時由CPU執(zhí)行T0中斷服務(wù)程序。T0中斷服務(wù)程序由firstdetect()函數(shù)和seconddetect()函數(shù)組成。Firsdetect()函數(shù)用于完成對總線(P1.0~P1.3)數(shù)據(jù)的第一層菜單值進行讀入識別;seconddetect()函數(shù)用于完成對總線數(shù)據(jù)第二層菜單值的讀入識別。由于本系統(tǒng)目前只設(shè)有兩層菜單,所以第二層也同時用作控制命令的觸發(fā)。

4.3 語音控制部分的通信軟件設(shè)計

以下的SPI通信程序是用C51語言的16位命令格式編寫的。使用時,將其高8位地址和低8位地址正確給定,即可將控制信息(包含在高8位地址的高5位)通過ISD4003的SPI口進行傳輸。詳細的SPI接口指令見ISD4003系列芯片手冊。下面給出部分語音控制部分的通信程序。

Void SPI_COM(uchar address-high,uchar address-low

{

uchar i,Bit-temp;

SCLK=0;

SS=0; /*chip selected signal*/

for(i=0;i8;i++) /*write low eight bits address */

{

SCLK=0;

Bit-temp=address-low 0x01;

/*0x01 equals to 0000 0001B;get the first bit from the right in this way */

if(Bit-temp==0)

MOSI=0; /*if it doesn't work,some nops may be needed */

Else

MOSI=1; /*if it doesn't work,some nops be needed*/

SCLK=1;

Address-low=address-low>>1;

}

for(i=0;i8;i++) /*write high eight bits address*/

{

SCLK=0;

Bit-temp=address-high0x01; /*0x01 equals to 0000 0001B;get the first bit from the right in this way*/

if(Bit-temp= =0)

MOSI=0; /*if it doesn't work,some nops may be needed*/

Else

MOSI=1; /*if it doesn't work,some nops may be needed*/

SCLK=1;

address-high=address-high>>1;

}

SS=1;

4.4 通訊軟件的設(shè)備與實現(xiàn)

通訊軟件主要由Internet網(wǎng)絡(luò)通訊軟件和本地上、下位機通訊軟件組成。Internet網(wǎng)絡(luò)通訊主要完成網(wǎng)絡(luò)控制。該部分主要由客戶端軟件和服務(wù)器軟件組成,網(wǎng)絡(luò)通訊軟件可在windows環(huán)境下用Visual C++開發(fā)完成。而上位機通訊軟件則用于完成服務(wù)器(微型計算機)和下位機的通訊。該網(wǎng)絡(luò)通訊的結(jié)構(gòu)原理如圖4所示。網(wǎng)絡(luò)通訊軟件可用Visual C++為基礎(chǔ)為設(shè)計。它通??捎煽蛻舳塑浖头?wù)器軟件來組成。

服務(wù)器作為上位機和系統(tǒng)中央控制器,通常通過串行通訊口相連接。由于本系統(tǒng)上、下位機的傳輸數(shù)據(jù)不多,所以沒有設(shè)置專門的數(shù)據(jù)庫。所得的信息只供控制用,而不必存儲成文件。上、下位機通訊時,本系統(tǒng)規(guī)定了以下協(xié)議:上位機對下位機發(fā)送字母‘A’表示空調(diào)器打開,發(fā)送'a'表示空調(diào)器關(guān)閉,下位機對上位機是同樣的對應(yīng)關(guān)系;發(fā)送‘B’表示熱水器打開,發(fā)送'b'表示熱水器關(guān)閉;發(fā)送‘C’表示電飯煲打開,發(fā)送‘c’表示電飯煲關(guān)閉??蛻舳塑浖亲鳛檫h程Internet網(wǎng)絡(luò)控制的終端軟件,系統(tǒng)通訊應(yīng)采用文本形式,命令由文本字符串組成。例如:當按下開熱水器按鈕時,客戶端軟件向服務(wù)器軟件發(fā)出命令字符串“Water Heater Is Opened”,服務(wù)器軟件端顯示:“CMD from client:Water Heater Is Opened”并在內(nèi)部解釋該字符串命令,即發(fā)送‘B’給下位機。而當中央控制器通過電話遠程控制電路來打開熱水器后,下位機將發(fā)送給上位機(服務(wù)器)一個‘A’,以表示熱水器已經(jīng)打開;當電話遠程控制關(guān)閉熱水器后,下位機則發(fā)給上位機(服務(wù)器)一個‘a(chǎn)’,以表示空調(diào)器已經(jīng)關(guān)閉。同時客戶端軟件會有相應(yīng)的提示語音,以表明家里電器的狀態(tài),以此實現(xiàn)兩種控制方式之間的信息交互。

5 系統(tǒng)聯(lián)機調(diào)試

本系統(tǒng)聯(lián)機調(diào)試所用到的設(shè)備如下:

(1)MCS-51仿真機一臺;

(2)HA6138(18)P/T雙音多頻電話機一部;

(3)微機二臺;

(4)示波器一臺;

(5)數(shù)字萬用表一臺;

本系統(tǒng)上電即可自動復(fù)位。它可采用5V蓄電池供電,實際上,該產(chǎn)品也可以由電話線饋電提供電壓。本系統(tǒng)需要一臺電話來完成其輔助功能,即語音留言和收聽留言。電話的聽筒要和本系統(tǒng)的語音錄音輸入互相連接,話筒和本系統(tǒng)的語音輸出相連接。實際產(chǎn)品可以將電話功能集成。當準備使用網(wǎng)絡(luò)功能時,用戶應(yīng)將本系統(tǒng)通過串行通訊口連接到家中的聯(lián)網(wǎng)計算機上面,然后運行本系統(tǒng)的服務(wù)器端軟件,同時指定服務(wù)器計算機的端口號。這樣,使用者在外地就可以通過客戶端軟件來訪問家中的服務(wù)器并發(fā)送控制信息。

當用戶以電話網(wǎng)絡(luò)來實現(xiàn)控制時,本的工作方式為:檢測三次振鈴信號,如無人接聽則自動摘機,同時播放語音提示:“這里是某某家中央控制系統(tǒng),請按鍵選擇功能,1繼續(xù)唿叫,2語音留言,3遠程控制……”。用戶根據(jù)語音提示選擇功能,最后按“#”鍵結(jié)束本次控制過程并掛斷。特別的是,當用戶進入遠程控制功能時,要接著輸入四位密碼否則不能完成控制,密碼正確后會有語音提示:“請選擇:1打開空調(diào)器,2關(guān)閉空調(diào)器,3打開熱水器,4關(guān)閉熱水器,5打開電飯煲,6關(guān)閉電飯煲……”。

當用戶以Internet互聯(lián)網(wǎng)來實現(xiàn)控制時,本系統(tǒng)客戶端軟件界面將十分友好。用戶可先連接到家中的服務(wù)器,然后用鼠標點擊來實現(xiàn)相應(yīng)的功能。由于進入客戶端軟件和服務(wù)器軟件都需要用戶的授權(quán)密碼,因此,該系統(tǒng)使用時非常安全。

6 結(jié)論

通過將本系統(tǒng)在實際電話網(wǎng)絡(luò)和Internet網(wǎng)絡(luò)中的運行表明,該系統(tǒng)達到了設(shè)計初期的各項要求。相信在未來的信息家電、智能小區(qū)、工業(yè)遠程控制等方向得到廣泛的應(yīng)用。為了突出本系統(tǒng)的多網(wǎng)絡(luò)遙控信息反饋功能,本系統(tǒng)采用對現(xiàn)有電話功能進行擴展的方案,而且所使用的集成電路和其它元器件都盡量選擇高性價比的。這樣,在各路終端上接上傳感器即可實現(xiàn)對環(huán)境的實時監(jiān)測;同時將系統(tǒng)上自動撥碼電路還可將預(yù)定信息轉(zhuǎn)至主人手機或某個特定電話,從而達到定時提醒主人或家庭防盜報警的目的。此外,本系統(tǒng)還可以應(yīng)用于工礦企業(yè)的遠程自動化控制等領(lǐng)域。



評論


相關(guān)推薦

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

關(guān)閉