專利名稱:一種網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)及其控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種大型實(shí)景游藝,特別是涉及一種結(jié)合數(shù)字化網(wǎng)絡(luò)技術(shù)的大型實(shí)景游 藝及其控制方法。
背景技術(shù):
隨著計(jì)算機(jī)及網(wǎng)絡(luò)、通訊等數(shù)字化技術(shù)的不斷普及和飛速發(fā)展,很多領(lǐng)域都通過與 這些技術(shù)的結(jié)合,獲得到了更好的領(lǐng)域拓展和新品開發(fā)?,F(xiàn)在常見的游藝形式包括實(shí)景 游戲和網(wǎng)絡(luò)游戲。其中,大型實(shí)景游藝是常見的實(shí)景游戲,是由機(jī)械及電動(dòng)裝置驅(qū)動(dòng)的 遙控,這種大型實(shí)景游藝的缺點(diǎn)是玩家只能感受到單一的機(jī)械動(dòng)作,各彼此之間無法 實(shí)現(xiàn)互動(dòng),并且這種傳統(tǒng)的實(shí)景游戲方式和它所使用的已經(jīng)很多年都沒有任何創(chuàng)新,并 且在逐漸地被市場需求所冷落;.
另一種常見的游藝方式是網(wǎng)絡(luò)游戲,玩家所操作的是虛擬的游戲?qū)ο?,其所在的?戲環(huán)境也是虛擬的網(wǎng)絡(luò)環(huán)境,其缺點(diǎn)是
1、 玩家缺乏實(shí)際的操作感覺,特別是無法親手操作;
2、 網(wǎng)絡(luò)游戲由于操作場所隨意,且電腦的使用很難控制,因此,易使青少年沉迷, 而無法控制。
基于上述缺陷,本發(fā)明提出了將電腦游戲?qū)嵕盎瓦b控模型網(wǎng)絡(luò)化的創(chuàng)新模式,把 先進(jìn)的網(wǎng)絡(luò)技術(shù)和傳統(tǒng)遙控模型的有機(jī)的結(jié)合在一起,突破了原本網(wǎng)絡(luò)游戲的虛擬性和 遙控模型的單一性,打破了長年以來一直沿襲的傳統(tǒng)實(shí)景游戲模式,實(shí)現(xiàn)了游戲方式的 革新,既可以保留傳統(tǒng)實(shí)景游戲所具備的趣味性,又可以將數(shù)字化技術(shù)結(jié)合到傳統(tǒng)的十 實(shí)景游戲的通訊互動(dòng)和數(shù)字控制等方面。
發(fā)明內(nèi)容
本發(fā)明提出一種網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)及其控制方法,其通過無線 通訊網(wǎng)絡(luò)將游戲飛機(jī)的嵌入式硬件系統(tǒng)及軟件控制程序的數(shù)據(jù)信息,與服務(wù)器上的游戲 控制程序?qū)崿F(xiàn)全雙工通信及數(shù)據(jù)/指令操作,實(shí)現(xiàn)了數(shù)字化網(wǎng)控實(shí)景游戲飛機(jī)系統(tǒng)。
本發(fā)明提出了一種網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),在網(wǎng)絡(luò)環(huán)境中實(shí)現(xiàn)游 戲飛機(jī)嵌入式硬件系統(tǒng)及其控制程序與地面控制中心之間的全雙工通信及數(shù)據(jù)轉(zhuǎn)換、發(fā) 送和操作控制,該系統(tǒng)包括地面控制中心、多個(gè)游戲飛機(jī)、傳感器、隔離輸出、游戲飛 機(jī)的舵機(jī)和炮臺以及游戲飛機(jī)中的嵌入式CPLD芯片,其中地面控制中心與系統(tǒng)中的各游戲飛機(jī)的網(wǎng)絡(luò)端口連接;
游戲飛機(jī)中的嵌入式硬件系統(tǒng)采用CPLD芯片,該CPLD芯片與網(wǎng)絡(luò)端口之間采 用串行通信方式, 一方面將舵機(jī)當(dāng)前狀態(tài)轉(zhuǎn)換成符合RS232標(biāo)準(zhǔn)的串行數(shù)據(jù),另一方 面將接收的地面控制中心控制指令,轉(zhuǎn)換成符合RS232標(biāo)準(zhǔn)的串行數(shù)據(jù)的多路控制信 號,該串行數(shù)據(jù)再經(jīng)CPLD芯片解析成舵機(jī)和炮臺所能識別的可執(zhí)行指令;
所述可執(zhí)行指令隔離輸出到各游戲飛機(jī)的舵機(jī)和炮塔,驅(qū)動(dòng)電機(jī)控制模塊控制炮塔 以及舵機(jī);
傳感器設(shè)置于該系統(tǒng)中每個(gè)游戲飛機(jī)上,用于實(shí)時(shí)感測該游戲飛機(jī)的狀態(tài),并將感 應(yīng)信號經(jīng)過CPLD芯片的轉(zhuǎn)換后傳送至服務(wù)器,作為地面控制中心發(fā)出控制信號的依 據(jù)。
所述CPLD芯片進(jìn)一步包括分頻電路、采樣濾波電路、接收電路以及發(fā)送電路,其
中
分頻電路將晶振頻率進(jìn)行分頻,得到BAUD—CLK脈沖,作為發(fā)送電路和接收電路的 時(shí)鐘; .
所接收的地面控制中心信號RXD經(jīng)過采樣濾波電路,濾掉干擾信號,輸入到接收電 路的移位寄存器的串行輸入端,在移位寄存器中進(jìn)行串/并轉(zhuǎn)換后成為RXD-DATA信號輸 出至電機(jī)控制模塊;
在接收電路中設(shè)置一時(shí)間變量,每當(dāng)16個(gè)接收電路的時(shí)鐘周期到來時(shí),判斷所接 收的控制指令是否有效,如果有效,則時(shí)間的值變?yōu)閘,開始接收控制指令數(shù)據(jù),接收 到的數(shù)據(jù)裝入移位寄存器;
在發(fā)送電路中設(shè)置一時(shí)間變量,每當(dāng)16個(gè)發(fā)送電路的時(shí)鐘周期到來時(shí),判斷發(fā)送 的控制指令是否有效,如果有效,則時(shí)間變量值變?yōu)閘,開始發(fā)送控制指令數(shù)據(jù),到地 面控制中心或該系統(tǒng)中的游戲飛機(jī),所述發(fā)送電路的工作過程是所述接收電路的逆過 程。
所述接收電路的時(shí)鐘頻率采用9600*16HZ。 所述接收電路的時(shí)鐘頻率采用9600HZ。
所述網(wǎng)絡(luò)環(huán)境所采用Wi-Fi無線網(wǎng)絡(luò),所述系統(tǒng)中的游戲飛機(jī)通過無線網(wǎng)卡的嵌入
式無線局域網(wǎng)絡(luò)模塊與無線網(wǎng)絡(luò)的Wiport端口連接。
所述CPLD芯片選擇的是ALTERA公司的EPM7256AETI144-7芯片。 所述嵌入式無線局域網(wǎng)模塊與CPLD之間的接口采用JTAG接口 。 所述電機(jī)驅(qū)動(dòng)程序根據(jù)串行數(shù)據(jù)RXD一DATA的值產(chǎn)生驅(qū)動(dòng)電機(jī)的相應(yīng)波形,
RXD—DATA的前三位控制飛機(jī)的運(yùn)動(dòng)狀態(tài),接下來的兩位控制炮塔的轉(zhuǎn)動(dòng)狀態(tài),第六位
控制打炮,最后兩位控制飛機(jī)的轉(zhuǎn)速。
本發(fā)明還提供了一種網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)的控制方法,該方包括
以下步驟游戲飛機(jī)與服務(wù)器組建成所述數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),將游戲飛機(jī)/服務(wù)器發(fā)出 的控制命令經(jīng)過串行數(shù)據(jù)接收/發(fā)送程序,通過網(wǎng)絡(luò)傳輸?shù)椒?wù)器端,由服務(wù)器端游戲 控制程序進(jìn)行統(tǒng)一的游戲控制。
所述網(wǎng)絡(luò)傳輸程序包括服務(wù)端流程及客戶端流程
服務(wù)端程序,該程序安裝于地面控制中心,用于處理接收客戶端的網(wǎng)絡(luò)請求,該程 序包括以下歩驟
根據(jù)系統(tǒng)中所掛接的游戲飛機(jī)數(shù)量創(chuàng)建多個(gè)套接字;
將所創(chuàng)建的多個(gè)套接字分別與各游戲飛機(jī)相應(yīng)的本地地址和端口綁定;
將套接字設(shè)定為監(jiān)聽模式(listen),準(zhǔn)備接收來自客戶端游戲飛機(jī)的請求;
是否有客戶端請求,如有客戶端請求,接受該客戶端連接請求,返回一個(gè)新的對應(yīng)
于此次連接的套接字;
用返回的套接字和客戶端進(jìn)行通信; 返回,等待下一客戶端請求;以及
關(guān)閉當(dāng)前套接字; .
客戶端程序,該程序安裝于系統(tǒng)中的每個(gè)游戲飛機(jī)上,用于實(shí)現(xiàn)作為客戶端的該游 戲飛機(jī)分別與服務(wù)端程序通信,進(jìn)行數(shù)據(jù)的網(wǎng)絡(luò)傳輸,該客戶端程序包括以下步驟 創(chuàng)建套接字;
地面控制中心發(fā)連接請求; 與地面控制中心進(jìn)行通信;以及 關(guān)閉套接字。,
所述服務(wù)端的游戲控制程序,包括以下步驟 檢測游戲飛機(jī)是否與服務(wù)器端連接; 如果已連接,則開始游戲;
游戲開始后,接收手柄的控制操作,向受控制的游戲飛機(jī)發(fā)送手柄操作信息; 同時(shí),接收來自于該系統(tǒng)中受控游戲飛機(jī)的信息; 將上述兩種信息在服務(wù)器端進(jìn)行數(shù)據(jù)處理; 同步顯示數(shù)據(jù)處理結(jié)果。
所述串行數(shù)據(jù)及控制指令接收程序,包括以下步驟程序開始,是否成功復(fù)位?如 否,則開始接收數(shù)據(jù),并將接收到的數(shù)據(jù)裝入移位寄存器中,通過移位寄存器把RXD-DATA 信號存入數(shù)據(jù)緩存。
所述串行數(shù)據(jù)及控制指令發(fā)送程序,包括以下步驟程序開始,是否成功復(fù)位?如
否,則判斷當(dāng)前TXD—CNT的值,在TXDj:NT4時(shí),開始發(fā)送數(shù)據(jù),并將數(shù)據(jù)發(fā)送到移位 寄存器,并將TXD一CNT+1;直至TXD一CNT-IO,則控制指令及數(shù)據(jù)發(fā)送完畢,移位寄存器 全部清零,等待下一次發(fā)送時(shí)間到來。
本發(fā)明與現(xiàn)有技術(shù)相比,本發(fā)明將數(shù)字化技術(shù)與傳統(tǒng)實(shí)景游戲結(jié)合,實(shí)現(xiàn)了以往傳統(tǒng)實(shí)景所不具備的操作互動(dòng)性,將網(wǎng)絡(luò)游戲與傳統(tǒng)的實(shí)景游戲結(jié)合起來, 一方面大大提
升傳統(tǒng)實(shí)景游戲的趣味性,另一方面又避免了網(wǎng)絡(luò)游戲容易帶來的"網(wǎng)癮"問題,更利 于推廣,具有較大的經(jīng)濟(jì)和社會效益。
圖1為本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)的模塊圖; 圖2為本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)的架構(gòu)圖; 圖3為本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)控制方法的游戲控制程序 流程圖;,
圖4為本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)控制方法的網(wǎng)絡(luò)數(shù)據(jù)傳輸 服務(wù)端程序的示意圖5為本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)控制方法的網(wǎng)絡(luò)數(shù)據(jù)傳輸 客戶端程序的示意圖6為本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)控制方法的CPLD芯片上的
串行數(shù)據(jù)收發(fā)程序方框圖; '
圖7為本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)控制方法的CPLD控制指 令接收流程圖8為本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)控制系統(tǒng)的串行數(shù)據(jù)接收 電路波形仿真時(shí)序圖9為本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)控制方法的控制指令發(fā)送 流程圖10是本發(fā)明的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)控制系統(tǒng)的串行數(shù)據(jù)發(fā)送 電路波形仿真時(shí)序圖11是本發(fā)明實(shí)施例的電機(jī)驅(qū)動(dòng)程序的邏輯框圖12是本發(fā)明實(shí)施例所采用的系統(tǒng)時(shí)鐘電路設(shè)計(jì)原理圖。
圖13本發(fā)明實(shí)施例所的無線局域網(wǎng)模塊與CPLD的連接電路圖。
具體實(shí)施例方式
本發(fā)明的網(wǎng)控飛機(jī)利用802. 11b/g網(wǎng)絡(luò)把地面控制中心發(fā)送的命令傳送到戰(zhàn)機(jī)模 型,戰(zhàn)機(jī)模型利用嵌入式技術(shù)組成無線串口模塊,通過802. 11b/g網(wǎng)絡(luò)接收控制指令并 轉(zhuǎn)換成符合RS232標(biāo)準(zhǔn)的串行數(shù)據(jù),該串行數(shù)據(jù)再經(jīng)CPLD解析成舵機(jī)所能識別的可執(zhí) 行指令,這些可執(zhí)行的指令經(jīng)過舵機(jī)驅(qū)動(dòng)器驅(qū)動(dòng)舵機(jī)。戰(zhàn)機(jī)模型利用舵機(jī)控制相應(yīng)部位 的轉(zhuǎn)動(dòng)與轉(zhuǎn)動(dòng)速度,例如主翼、副翼、尾翼的轉(zhuǎn)動(dòng)方向和速度、油門的控制、發(fā)射炮 彈等。網(wǎng)控飛機(jī)系統(tǒng)是一個(gè)全雙工通信系統(tǒng),在指揮控制中心發(fā)送控制指令的同時(shí),戰(zhàn) 機(jī)可也實(shí)時(shí)的向控制中心反饋其當(dāng)前的狀態(tài),例如炮彈剩余情況和自身中彈情況等。
8該系統(tǒng)方塊圖如圖1所示,地面控制中心101通過無線網(wǎng)卡102與無線網(wǎng)絡(luò)的另 一端,即Wiport (每個(gè)Wiport也就是無線網(wǎng)絡(luò)系統(tǒng)中的每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)所對應(yīng)的游戲飛 機(jī)上的無線網(wǎng)絡(luò)端口) 103;在系統(tǒng)中的每個(gè)游戲飛機(jī)中嵌入CPLD芯片104,它與上 述Wiport之間采用串行通信,CPLD芯片104起到數(shù)據(jù)雙向轉(zhuǎn)換作用, 一方面可將舵 機(jī)當(dāng)前狀態(tài)轉(zhuǎn)換成符合RS232標(biāo)準(zhǔn)的串行數(shù)據(jù);另一方面可將接收到的自服務(wù)器端發(fā) 來的控制指令,轉(zhuǎn)換成符合RS232標(biāo)準(zhǔn)的串行數(shù)據(jù)的多路控制信號,該串行數(shù)據(jù)再經(jīng) CPLD解析成舵機(jī)和炮臺所能識別的可執(zhí)行指令,這些可執(zhí)行的指令經(jīng)過驅(qū)動(dòng)器驅(qū)動(dòng)電 機(jī)和炮塔;通過隔離輸出105,控制炮塔107以及控制舵機(jī)106;每個(gè)游戲飛機(jī)上安裝 有傳感器109,用于實(shí)時(shí)感測該游戲飛機(jī)的狀態(tài),并將感應(yīng)信號傳送至服務(wù)器,作為服 務(wù)器發(fā)出控制信號的依據(jù)。
該網(wǎng)控游戲飛機(jī)系統(tǒng)架構(gòu)如圖2所示,該系統(tǒng)包括服務(wù)器,它作為網(wǎng)控游戲飛機(jī)系 統(tǒng)的游戲控制平臺,該服務(wù)器端還可連接遙控手柄;而多個(gè)游戲飛機(jī)與服務(wù)器通過Wi-Fi 無線網(wǎng)絡(luò)通訊協(xié)議進(jìn)行遠(yuǎn)程通訊,該系統(tǒng)中的多個(gè)游戲飛機(jī),其中每一游戲飛機(jī)內(nèi)部都 包括通信模塊、嵌入式CPLD芯片,利用這些CPLD芯片驅(qū)動(dòng)電.機(jī);每個(gè)游戲飛機(jī)都 設(shè)置一個(gè)紅外感應(yīng)裝置,用于游戲飛機(jī)彼此之間的紅外通訊,可進(jìn)行彼此之間的數(shù)據(jù)傳 輸?shù)炔僮?,這個(gè)特點(diǎn)主要是可用于例如網(wǎng)控游戲飛機(jī)系統(tǒng)中結(jié)成聯(lián)盟的游戲飛機(jī)在游戲 過程中彼此傳遞所需的數(shù)據(jù)。
本發(fā)明的軟件程序分別為服務(wù)器端的游戲控制程序,服務(wù)器端通過無線網(wǎng)絡(luò)通信協(xié) 議與該系統(tǒng)中的游戲飛機(jī)之間的網(wǎng)絡(luò)傳輸程序,以及游戲飛機(jī)內(nèi)部的嵌入式CPLD芯片 的串行數(shù)據(jù)收發(fā)程序。
如圖3所示,這是作為游戲控制平臺的服務(wù)器端的游戲控制程序,其流程包括以下
步驟首先,檢測游戲飛機(jī)是否與服務(wù)器端連接,步驟301;如果未連上,則等待游戲 飛機(jī)連接,直至有連接上的游戲飛機(jī),如果巳連接,則開始游戲,步驟302;游戲開始 后, 一方面會接受手柄的控制操作,步驟303;向受控制的游戲飛機(jī)發(fā)送手柄操作信息, 步驟304;同時(shí),還接受來自于該系統(tǒng)中受控游戲飛機(jī)的信息,步驟305;對上述兩種 信息(即手柄發(fā)送信息、監(jiān)控信息)在服務(wù)器端進(jìn)行數(shù)據(jù)處理,步驟306;同步顯示數(shù) 據(jù)處理結(jié)果,步驟307;游戲是否結(jié)束,步驟308,當(dāng)前程序結(jié)束;步驟309;如游戲
未結(jié)束,則返回步驟303或步驟304,完成游戲中的信息數(shù)據(jù)處理。
根據(jù)游戲飛機(jī)系統(tǒng)的實(shí)際情況,網(wǎng)絡(luò)環(huán)境中所要傳送的數(shù)據(jù)是控制數(shù)據(jù),由于其具
有數(shù)據(jù)傳輸量小,但傳輸準(zhǔn)確度要求較高的特點(diǎn),因此,本發(fā)明的網(wǎng)絡(luò)數(shù)據(jù)傳輸選擇面
向連接的TCP/IP協(xié)議。其實(shí)現(xiàn)方法采用的是socket編程,函數(shù)調(diào)用順序如下。
網(wǎng)絡(luò)傳輸應(yīng)用程序分別由服務(wù)器端程序、客戶端程序。其中,服務(wù)器端程序包括以
下歩驟首先,根據(jù)系統(tǒng)中所掛接的游戲飛機(jī)數(shù)量創(chuàng)建多個(gè)套接字(socket),步驟401;
將所創(chuàng)建的多個(gè)套接字分別與各游戲飛機(jī)相應(yīng)的本地地址和端口綁定(bind),步驟402;
將套接字設(shè)定為監(jiān)聽模式(listen),準(zhǔn)備接收來自客戶端游戲飛機(jī)的請求,步驟403;是否有客戶端請求,步驟404;如有客戶端請求,接受該客戶端連接請求,返回一個(gè)新
的對i^于此次連接的套接字(acc印t),歩驟405;用返回的套接字和客戶端進(jìn)行通信 (send/recv),歩驟406;返回,等待下一客戶端請求,步驟407;關(guān)閉當(dāng)前套接字, 步驟408。由于本發(fā)明的網(wǎng)控游戲飛機(jī)系統(tǒng)中,連接有多個(gè)網(wǎng)絡(luò)游戲飛機(jī),它們分別具 有不同的網(wǎng)絡(luò)地址和端口,因此,需要對系統(tǒng)中的每個(gè)游戲飛機(jī)分別創(chuàng)建套接字,每個(gè) 套接字按照上述的流程,執(zhí)行服務(wù)器段的監(jiān)聽程序??蛻舳顺绦?,該程序安裝于系統(tǒng)中 的每個(gè)游戲飛機(jī)上,用于實(shí)現(xiàn)作為客戶端的該游戲飛機(jī)分別與服務(wù)端程序通信,進(jìn)行數(shù) 據(jù)的網(wǎng)絡(luò)傳輸,該客戶端程序包括以下步驟創(chuàng)建套接字(socket),步驟501;服務(wù) 器發(fā)連接請求(connect),步驟502;和服務(wù)器端進(jìn)行通信(send/recv);步驟503; 關(guān)閉套接字,步驟504。
客戶端的每臺游戲飛機(jī)都設(shè)置CPLD芯片,該芯片中,軟件部分包括串行數(shù)據(jù)收發(fā) 程序,該程序?yàn)閷?shí)現(xiàn)服務(wù)器端與客戶端各游戲飛機(jī)的無線嵌入式模塊CPLD間的雙向通 信而設(shè)置。其包括以下步驟接收該CPLD芯片下行串行接口的數(shù)據(jù);以及,將飛機(jī)狀 態(tài)信息封裝成串行數(shù)據(jù)并連接到上行串行接口。該CPLD芯片的硬.件部分采用串行數(shù)據(jù)
收發(fā)器,其框圖如圖6所示。主要由四部分構(gòu)成,g卩分頻電路;采樣濾波電路;接收
電路和發(fā)射電路。工作原理如下分頻電路將晶振頻率進(jìn)行分頻,得到BAUD—CLK脈沖, 作為發(fā)送電路和接收電路的時(shí)鐘。要接收的信號RXD經(jīng)過采樣率波電路,濾掉干擾信號, 得到RXD_SYNC,輸入到接收電路的移位寄存器的串行輸入端。在移位寄存器中進(jìn)行串并 轉(zhuǎn)換后成為RXD-DATA信號輸出至電機(jī)控制模塊。
在接收電路中,因?yàn)锽AUD—CLK時(shí)鐘是實(shí)際接收波特率9600的16倍,所以每隔16 個(gè)BAUD—CLK系統(tǒng)接收一位數(shù)據(jù)。設(shè)置一個(gè)變量TXD—CNT,每當(dāng)16個(gè)BAUD—CLK到來時(shí), 判斷接收XMIT—CMD是否有效,如果有效,則TXDj:NT的值變?yōu)?,開始接收。控制指 令接收流程如圖7所示,程序開始,是否成功復(fù)位?如否,則開始接收數(shù)據(jù),并將接收 到的數(shù)據(jù)裝入移位寄存器中,通過移位寄存器把RXD-DATA信號存入數(shù)據(jù)緩存。接收的 信號主要用來控制飛機(jī)的各種動(dòng)作,如前進(jìn)、后退、發(fā)射、旋轉(zhuǎn)炮臺等。因此還要進(jìn) 行譯碼并產(chǎn)生相應(yīng)的控制信號??刂浦噶罱邮粘绦蛄鞒虉D如圖7所示,而其波形仿真結(jié) 果如圖8所示。
游戲飛機(jī)上安裝有各類的傳感器,用以反映飛機(jī)的狀態(tài),如被炮彈擊中的次數(shù)、 飛機(jī)的能量信息、位置等。這些信息要通過無線局域網(wǎng)回傳到服務(wù)器端,用以編制各種 游戲。
串行數(shù)據(jù)發(fā)送電路是串行數(shù)據(jù)接收電路的逆過程,它把TXD—DATA數(shù)據(jù)經(jīng)移位封裝 成RS232標(biāo)準(zhǔn)的串行數(shù)據(jù),所不同的是發(fā)送電路的時(shí)鐘采用的不是9600*16HZ,而是 9600HZ。發(fā)送電路將BAUD—CLK做16分頻,得到9600HZ的脈沖,作為發(fā)送時(shí)鐘。發(fā)送 電路把傳感器輸出的信號(即圖6中的TXD—DATA數(shù)據(jù))經(jīng)移位封裝成符合RS232標(biāo)準(zhǔn)的 串行數(shù)據(jù),通過無線局域網(wǎng)模塊回傳到服務(wù)器端。圖9是CPLD中用VHDL語言編制的串行數(shù)據(jù)發(fā)送電路軟件流程圖,控制指令發(fā)送流程程序開始,是否成功復(fù)位?如否,則判 斷當(dāng)前TXD—CNT的值,在TXD一CNT4時(shí),開始發(fā)送數(shù)據(jù),并將數(shù)據(jù)發(fā)送到移位寄存器, 并將TXD一CNT+1;直至TXD_CNT=10,則控制指令及數(shù)據(jù)發(fā)送完畢,移位寄存器全部清零, 等待下一次發(fā)送時(shí)間到來。圖10是其仿真時(shí)序圖,RESET、 XMIT—CMD、 BAUD—CLK、 TXDATA 是輸入信號;TXD是輸出信號;TXD—CNT、 TXD—SHIFT是中間變量。
RESET為復(fù)位信號,當(dāng)RESET=1時(shí)系統(tǒng)復(fù)位,否則程序正常運(yùn)行。
BAUD—CLK為分頻后的系統(tǒng)時(shí)鐘。
TXDATA為要發(fā)送的數(shù)據(jù)。
XMITJM)為發(fā)送允許標(biāo)志位,當(dāng)XMIT_CMD出現(xiàn)一個(gè)脈沖后,TXD_CNT開始計(jì)數(shù), 并在下個(gè)^1期開始發(fā)送數(shù)據(jù)。
如圖11所示,為電機(jī)驅(qū)動(dòng)程序的邏輯框圖,數(shù)據(jù)RXDATA10011000經(jīng)過發(fā)送電路后, 轉(zhuǎn)化為串行數(shù)據(jù)RXD。電機(jī)驅(qū)動(dòng)程序是根據(jù)數(shù)據(jù)RXD—DATA的值來產(chǎn)生驅(qū)動(dòng)電機(jī)的相應(yīng) 波形。RXD—DATA的前三位控制飛機(jī)的運(yùn)動(dòng)情況,接下來的兩位控制炮塔的轉(zhuǎn)動(dòng)情況, 第六位控制打炮,最后兩位控制飛機(jī)的轉(zhuǎn)速,00: 0.25, 01: 0.5, 10: 0.75, 11: 1 (其中后面的數(shù)字表示電機(jī)驅(qū)動(dòng)波形的占空比)。 .
下面通過一具體實(shí)施例,說明游戲飛機(jī)硬件電路的具體設(shè)計(jì)方案。
游戲飛機(jī)的硬件電路設(shè)計(jì)主要包括系統(tǒng)時(shí)鐘設(shè)計(jì)、JTAG接口設(shè)計(jì)、嵌入式局域 網(wǎng)模塊、CPLD設(shè)計(jì)、接口設(shè)計(jì)和驅(qū)動(dòng)電路設(shè)計(jì)。系統(tǒng)串行數(shù)據(jù)傳送的速率設(shè)定為9600HZ, 晶振選擇為11. 05926MHZ,這樣經(jīng)過72分頻就能產(chǎn)生9600*16HZ的時(shí)鐘。CPLD選擇的 是ALTERA公司的EPM7256AETI144-7。時(shí)鐘電路與CPLD的連接方式如圖12所示。時(shí)鐘 電路的電源VCC接CPLD芯片的電源;時(shí)鐘的地接CPLD芯片的地;時(shí)鐘電路的時(shí)鐘脈沖 產(chǎn)生端CLK接CPLD芯片的時(shí)鐘信號輸入端。
JTAG接口用于向CPLD下載程序,連接方式采取ALTERA公司所推薦的接法,嵌入 式無線局域網(wǎng)模塊與CPLD之間的接口是硬件電路設(shè)計(jì)的關(guān)鍵,其連接方式如圖13所示。
權(quán)利要求
1.一種網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),在網(wǎng)絡(luò)環(huán)境中實(shí)現(xiàn)游戲飛機(jī)嵌入式硬件系統(tǒng)及其控制程序與地面控制中心之間的全雙工通信及數(shù)據(jù)轉(zhuǎn)換、發(fā)送和操作控制,該系統(tǒng)包括地面控制中心、多個(gè)游戲飛機(jī)、傳感器、隔離輸出、游戲飛機(jī)的舵機(jī)和炮臺以及游戲飛機(jī)中的嵌入式CPLD芯片,其中地面控制中心與系統(tǒng)中的各游戲飛機(jī)的網(wǎng)絡(luò)端口連接;游戲飛機(jī)中的嵌入式硬件系統(tǒng)采用CPLD芯片,該CPLD芯片與網(wǎng)絡(luò)端口之間采用串行通信方式,一方面將舵機(jī)當(dāng)前狀態(tài)轉(zhuǎn)換成符合RS232標(biāo)準(zhǔn)的串行數(shù)據(jù),另一方面將接收的地面控制中心控制指令,轉(zhuǎn)換成符合RS232標(biāo)準(zhǔn)的串行數(shù)據(jù)的多路控制信號,該串行數(shù)據(jù)再經(jīng)CPLD芯片解析成舵機(jī)和炮臺所能識別的可執(zhí)行指令;所述可執(zhí)行指令隔離輸出到各游戲飛機(jī)的舵機(jī)和炮塔,驅(qū)動(dòng)電機(jī)控制模塊控制炮塔以及舵機(jī);傳感器設(shè)置于該系統(tǒng)中每個(gè)游戲飛機(jī)上,用于實(shí)時(shí)感測該游戲飛機(jī)的狀態(tài),并將感應(yīng)信號經(jīng)過CPLD芯片的轉(zhuǎn)換后傳送至服務(wù)器,作為地面控制中心發(fā)出控制信號的依據(jù)。
2. 如權(quán)利要求1所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),其特征在于,所 述CPLD芯片進(jìn)一步包括分頻電路、采樣濾波電路、接收電路以及發(fā)送電路,其中.分頻電路將晶振頻率進(jìn)行分頻,得到BAUD—CLK脈沖,作為發(fā)送電路和接收電路的 時(shí)鐘;所接收的地面控制中心信號RXD經(jīng)過采樣濾波電路,濾掉干擾信號,輸入到接收電 路的移位寄存器的串行輸入端,在移位寄存器中進(jìn)行串/并轉(zhuǎn)換后成為RXD-DATA信號輸 出至電機(jī)控制模塊;在接收電路中設(shè)置一時(shí)間變量,每當(dāng)16個(gè)接收電路的時(shí)鐘周期到來時(shí),判斷所接 收的控制指令是否有效,如果有效,則時(shí)間的值變?yōu)閘,開始接收控制指令數(shù)據(jù),接收 到的數(shù)據(jù)裝入移位寄存器;在發(fā)送電路中設(shè)置一時(shí)間變量,每當(dāng)16個(gè)發(fā)送電路的時(shí)鐘周期到來時(shí),判斷發(fā)送 的控制指令是否有效,如果有效,則時(shí)間變量值變?yōu)閘,開始發(fā)送控制指令數(shù)據(jù),到地 面控制中心或該系統(tǒng)中的游戲飛機(jī),所述發(fā)送電路的工作過程是所述接收電路的逆過 程。
3. 如權(quán)利要求2所述網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),其特征在于,所述 接收電路的時(shí)鐘頻率采用9600*16HZ。
4. 如權(quán)利要求2所述網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),其特征在于,所述 接收電路的時(shí)鐘頻率采用9600HZ。
5. 如權(quán)利要求1所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),其特征在于,所述網(wǎng)絡(luò)環(huán)境所采用Wi-Fi無線網(wǎng)絡(luò),所述系統(tǒng)中的游戲飛機(jī)通過無線網(wǎng)卡(102)的嵌 入式無線局域網(wǎng)絡(luò)模塊與無線網(wǎng)絡(luò)的Wiport端口連接。
6. 如權(quán)利要求1所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),其特征在于,所 述CPLD芯片選擇的是ALTERA公司的EPM7256AETI144-7芯片。
7. 如權(quán)利要求1所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),其特征在于,所 述嵌入式無線局域網(wǎng)模塊與CPLD之間的接口采用JTAG接口 。
8. 如權(quán)利要求1所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)的控制方法,其特 征在于,該方包括以下步驟游戲飛機(jī)與服務(wù)器組建成所述數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),將游戲飛機(jī)/服務(wù)器發(fā)出 的控制命令經(jīng)過串行數(shù)據(jù)接收/發(fā)送程序,通過網(wǎng)絡(luò)傳輸?shù)椒?wù)器端,由服務(wù)器端游戲 控制程序進(jìn)行統(tǒng)一的游戲控制。
9. 如權(quán)利要求8所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)的控制方法,其特 征在于,所述網(wǎng)絡(luò)傳輸程序包括服務(wù)端流程及客戶端流程服務(wù)端程序,該程序安裝于地面控制中心,用于處理接收客戶端的網(wǎng)絡(luò)請求,該程 序包括以下步驟根據(jù)系統(tǒng)中所掛接的游戲飛機(jī)數(shù)量創(chuàng)建多個(gè)套接字; 將所創(chuàng)建的多個(gè)套接字分別與各游戲飛機(jī)相應(yīng)的本地地址和端口綁定;將套接字設(shè)定為監(jiān)聽模式(listen),準(zhǔn)備接收來自客戶端游戲飛機(jī)的請求;是否有客戶端請求,如有客戶端請求,接受該客戶端連接請求,返回一個(gè)新的對應(yīng)于此次連接的套接字;用返回的套接字和客戶端進(jìn)行通信; 返回,等待下一客戶端請求;以及關(guān)閉當(dāng)lir套接字;客戶端程序,該程序安裝于系統(tǒng)中的每個(gè)游戲飛機(jī)上,用于實(shí)現(xiàn)作為客戶端的該游 戲飛機(jī)分別與服務(wù)端程序通信,進(jìn)行數(shù)據(jù)的網(wǎng)絡(luò)傳輸,該客戶端程序包括以下步驟 創(chuàng)建套接字; 服務(wù)器發(fā)連接請求; 與地面控制中心進(jìn)行通信;以及 關(guān)閉套接字。
10. 如權(quán)利要求8所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)的控制方法,其特 征在于,所述服務(wù)端的游戲控制程序,包括以下步驟檢測游戲飛機(jī)是否與服務(wù)器端連接; 如果已連接,則開始游戲;游戲開始后,接收手柄的控制操作,向受控制的游戲飛機(jī)發(fā)送手柄操作信息; 同時(shí),接收來自于該系統(tǒng)中受控游戲飛機(jī)的信息;將上述兩種信息在服務(wù)器端進(jìn)行數(shù)據(jù)處理; 同步顯示數(shù)據(jù)處理結(jié)果。
11. 如權(quán)利要求8所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)的控制方法,其特 征在于,所述串行數(shù)據(jù)及控制指令接收程序,包括以下步驟程序開始,是否成功復(fù)位? 如否,則開始接收數(shù)據(jù),并將接收到的數(shù)據(jù)裝入移位寄存器中,通過移位寄存器把 rxd-data信號存入數(shù)據(jù)緩存。
12. 如權(quán)利要求8所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)的控制方法,其特 征在于,所述串行數(shù)據(jù)及控制指令發(fā)送程序,包括以下步驟程序開始,是否成功復(fù)位? 如否,則判斷當(dāng)前TXD—CNT的值,在TXDj:nt4時(shí),開始發(fā)送數(shù)據(jù),并將數(shù)據(jù)發(fā)送到移位寄存器,并將txdj;nt+i;直至txdj;nt^0,則控制指令及數(shù)據(jù)發(fā)送完畢,移位寄存 器全部清零,等待下一次發(fā)送時(shí)間到來。
13. 如權(quán)利要求8所述的網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng)的控制方法,其特 征在于,所述電機(jī)驅(qū)動(dòng)程序根據(jù)串行數(shù)據(jù)rxd_data的值產(chǎn)生驅(qū)動(dòng)電機(jī)的相應(yīng)波形, rxd一data的前三位控制飛機(jī)的運(yùn)動(dòng)狀態(tài),接下來的兩位控制炮塔的轉(zhuǎn)動(dòng)狀態(tài),第六位 控制打炮,最后兩位控制飛機(jī)的轉(zhuǎn)速。
全文摘要
本發(fā)明公開了一種網(wǎng)絡(luò)環(huán)境下的數(shù)字化實(shí)景游戲飛機(jī)系統(tǒng),該系統(tǒng)包括地面控制中心、多個(gè)游戲飛機(jī)、傳感器、隔離輸出、游戲飛機(jī)的舵機(jī)和炮臺以及游戲飛機(jī)中的嵌入式CPLD芯片,該CPLD芯片與網(wǎng)絡(luò)端口之間采用串行通信方式,一方面將舵機(jī)當(dāng)前狀態(tài)轉(zhuǎn)換串行數(shù)據(jù),另一方面將接收的地面控制中心控制指令轉(zhuǎn)換串行數(shù)據(jù)的多路控制信號,該串行數(shù)據(jù)再解析成可執(zhí)行指令;驅(qū)動(dòng)電機(jī)控制模塊控制炮塔以及舵機(jī);傳感器設(shè)置于游戲飛機(jī)上。與現(xiàn)有技術(shù)相比,本發(fā)明將數(shù)字化技術(shù)與傳統(tǒng)實(shí)景游戲結(jié)合,實(shí)現(xiàn)了以往傳統(tǒng)實(shí)景所不具備的操作互動(dòng)性,將網(wǎng)絡(luò)游戲與傳統(tǒng)的實(shí)景游戲結(jié)合起來,一方面大大提升傳統(tǒng)實(shí)景游戲的趣味性,另一方面又避免了網(wǎng)絡(luò)游戲容易帶來的“網(wǎng)癮”問題。
文檔編號A63H27/00GK101314077SQ20081005227
公開日2008年12月3日 申請日期2008年2月3日 優(yōu)先權(quán)日2008年2月3日
發(fā)明者蘭國梁, 珉 曹, 李文元 申請人:天津信息港智能社區(qū)科技有限公司