基于SC6121芯片的足球機(jī)器人紅外線通信系統(tǒng)
摘要:針對(duì)足球機(jī)器人的特點(diǎn),提出一種基于SC6121芯片的紅外線通信系統(tǒng)設(shè)計(jì)方案,它比以往基于芯片M50462的紅外線通信系統(tǒng)有更多的優(yōu)點(diǎn)。
本文引用地址:http://www.ex-cimer.com/article/244643.htm關(guān)鍵詞:足球機(jī)器人 紅外線 裝置
1995年9月,韓國(guó)科學(xué)技術(shù)研究院(KAIST) 金鐘煥教授提出了舉辦世界機(jī)器人足球比賽的建議,同年11月在KAIST建立了為召開微機(jī)器人世界杯足球比賽所需的國(guó)際組織委員會(huì)。1995年11月9~12日在KAIST首次舉辦微機(jī)器人世界杯足球比賽,至今已經(jīng)舉辦四次比賽。足球機(jī)器人主要由CPU板、傳感器、驅(qū)動(dòng)部分、通信系統(tǒng)、視覺系統(tǒng)、主機(jī)系統(tǒng)等部分組成。本文作者曾經(jīng)發(fā)表過文章研究足球機(jī)器人紅外線通信問題,當(dāng)時(shí)是以M50462作編碼芯片來研究的。它的缺點(diǎn)有兩個(gè),其一是可靠性不夠高;其二是M50462能夠選擇的用戶編碼只有2位,組成網(wǎng)絡(luò)通信最多只有4個(gè)用戶編碼。而SC6121可靠性高,且有8位用戶編碼可以選擇,組成通信網(wǎng)絡(luò)系統(tǒng)可以有256個(gè)用戶編碼。因此,在足球機(jī)器人紅外線通信系統(tǒng)中選擇SC6121作為編碼芯片更合適。本文將討論如何用編碼芯片SC6121實(shí)現(xiàn)足球機(jī)器人的網(wǎng)絡(luò)通信。
1 系統(tǒng)構(gòu)成
時(shí)分多址(TDMA)技術(shù)是網(wǎng)絡(luò)通信經(jīng)常采用的一種技術(shù)。在通信速率要求不高的通信系統(tǒng)里,有時(shí)將信息的接收和發(fā)射設(shè)計(jì)在同一個(gè)信道上,該技術(shù)被稱之為時(shí)分雙工(TDD)技術(shù),它是TDMA的一個(gè)變形。我們?cè)O(shè)計(jì)的基于SC6121芯片的足球機(jī)器人紅外線通信系統(tǒng)采用的就是TDD技術(shù)。在該系統(tǒng)中把與計(jì)算機(jī)RS232C相連接的通信裝置看作通信系統(tǒng)的基站,它負(fù)責(zé)對(duì)通信系統(tǒng)的控制。把足球機(jī)器人上的通信裝置看作用戶,這樣就構(gòu)成了如圖1所示的足球機(jī)器人通信系統(tǒng)。每個(gè)足球機(jī)器人通信裝置占用SC6121芯片二個(gè)用戶編碼,其中一個(gè)作為該通信裝置接收時(shí)隙的識(shí)別碼,另一個(gè)作為發(fā)送時(shí)隙的識(shí)別碼?;就ㄟ^控制芯片SC6121的用戶編碼來給各個(gè)機(jī)器人分配接收時(shí)隙和發(fā)送時(shí)隙。SC6121有256個(gè)用戶編碼,采用TDD技術(shù)可以構(gòu)成128?jìng)€(gè)通信裝置。若將其中一個(gè)用于作基站,則系統(tǒng)通信裝置數(shù)目的最大值是127,這足以滿足足球機(jī)器人通信要求。
2 編碼電路
發(fā)射部分采用SC6121紅外線遙控系統(tǒng)的專用芯片,它由振蕩電路、定時(shí)發(fā)生器及控制電路、鍵盤輸入掃描電路、鍵盤輸入/輸出掃描電路、碼產(chǎn)生電路和輸出控制電路等組成。振蕩器產(chǎn)生一個(gè)固定頻率(我們選用455kHz)的信號(hào),該信號(hào)經(jīng)過定時(shí)發(fā)生器(12分頻)選通后,產(chǎn)生時(shí)鐘脈沖和載頻信號(hào)(固定頻率為455kHz時(shí),是38kHz),其中時(shí)鐘脈沖送往碼產(chǎn)生電路;載頻信號(hào)則送往輸出控制電路,碼產(chǎn)生電路輸出的指令碼被調(diào)制在此載頻信號(hào)上,此信號(hào)再經(jīng)緩沖放大器放大后從集成電路內(nèi)輸出。輸出信號(hào)去激勵(lì)晶體管(8550),從而控制流向紅外線發(fā)光二極管(PH303)的電流。當(dāng)紅外線發(fā)光二極管(PH303)有正向電流流動(dòng)時(shí),就向外發(fā)射紅外線,進(jìn)而達(dá)到發(fā)射編碼的目的。SC6121的輸出波形參見圖2。
從圖2可以看出,SC6121所發(fā)射的一幀碼含有一個(gè)引導(dǎo)碼,16位的用戶編碼和8位的鍵數(shù)據(jù)碼。鍵數(shù)據(jù)碼的反碼也同時(shí)被傳送。引導(dǎo)碼由一個(gè)9ms的載波波形和4.5 ms的關(guān)斷時(shí)間構(gòu)成,它作為隨后發(fā)射碼的引導(dǎo)。這樣,當(dāng)接收系統(tǒng)是微處理器構(gòu)成的時(shí)候,能更有效地處理碼的接收、檢測(cè)及各項(xiàng)控制之間的時(shí)序關(guān)系。SC6121芯片編碼采用脈沖位置調(diào)制方式PPM,利用脈沖之間的時(shí)間間隔來區(qū)分“0”和“1”。在8位編碼被傳送的同時(shí),它們的反碼也被傳送,這樣就大大減少了系統(tǒng)誤碼率。M50462沒有傳送反碼,因此,從這一點(diǎn)來看,SC6121比M50462具有更高的可靠性。
SC6121發(fā)送電路原理參見圖3。從圖3可以看到,基于SC6121芯片的紅外線通信網(wǎng)絡(luò)可以有256個(gè)用戶編碼,而M50462最多只能有4個(gè)用戶編碼。由此可見,SC6121更適合網(wǎng)絡(luò)通信。
3 解碼電路
接收部分由PH302紅外線接收管及前置放大電路KA2184組成,放大后的信號(hào)直接送往AT89C51單片機(jī),由單片機(jī)進(jìn)行軟件解碼。接收電路原理參見圖4。
4 解碼軟件
根據(jù)圖2中的②可以得到“0”代碼脈沖間距為1.125ms,“1”代碼脈沖間距為2.25ms。這樣通過AT89C51單片機(jī)的定時(shí)器可以很方便地得到解碼。
SC6121編碼集成電路鍵數(shù)據(jù)碼參見表1。
表1 SC6121矩陣鍵與鍵數(shù)據(jù)碼關(guān)系
鍵盤號(hào) 矩陣接點(diǎn) 數(shù)據(jù)碼 K0 K1 K2 K3 KI/O D0 D1 D2 D3 D4 D5 D6 D7 | |||||||||||||
K1 | * | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0/1 | ||||
K2 | * | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0/1 | ||||
K3 | * | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0/1 | ||||
K4 | * | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0/1 | ||||
K5 | * | KI/01 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0/1 | |||
K6 | * | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0/1 | ||||
K7 | * | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0/1 | ||||
K8 | * | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0/1 | ||||
K9 | * | KI/O2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0/1 | |||
K10 | * | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0/1 | ||||
K11 | * | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0/1 | ||||
K12 | * | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0/1 | ||||
K13 | * | KI/O3 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0/1 | |||
K14 | * | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0/1 | ||||
K15 | * | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0/1 | ||||
K16 | * | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0/1 | ||||
K17 | * | KI/O4 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0/1 | |||
K18 | * | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0/1 | ||||
K19 | * | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0/1 | ||||
K20 | * | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0/1 | ||||
K21 | * | KI/O5 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0/1 | |||
K22 | * | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0/1 | ||||
K23 | * | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 0/1 | ||||
K24 | * | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 0/1 | ||||
K25 | * | KI/O6 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0/1 | |||
K26 | * | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0/1 | ||||
K27 | * | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 0/1 | ||||
K28 | * | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 0/1 | ||||
K29 | * | KI/O7 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0/1 | |||
K30 | * | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 0/1 | ||||
K31 | * | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0/1 | ||||
K32 | * | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0/1 |
我們用AT89C51單片機(jī)的定時(shí)器1定時(shí),用AT89C51的12腳作外部中斷,通過軟件解碼得到鍵數(shù)據(jù)碼后,再查表1,這樣就可以分析出信息含義,從而實(shí)現(xiàn)軟件解碼。中斷程序流程圖參見圖5。
有了編碼和軟件解碼后就可以實(shí)現(xiàn)通信了?;就ㄟ^編碼將信息傳送給足球機(jī)器人的通信裝置,足球機(jī)器人通信裝置通過軟件解碼得到信息內(nèi)容。反過來也一樣,足球機(jī)器人通信裝置通過編碼將信息發(fā)送出去,基站通過軟件解碼得到信息。足球機(jī)器人通信裝置、基站以及信息的傳輸方向均通過SC6121芯片的用戶編碼來區(qū)分。
評(píng)論