Profile - TW075


TW075

貓抓老鼠



Semi-Finals


[print]


Project Paper - view as Preliminary(2010/07/21), Final(2010/11/01), Draft, Latest

1. 設計介紹 (Preliminary Paper)

1. 作品目的:

對於男孩子的我們,小時候總是比較好動,遙控車對我們來說,正是一種適合由小到大可玩之玩具的不二人選,遙控車可以做到前進、後退、左轉、右轉,貴一點的還可以做一些特技,非常的豐富,可以滿足開車的慾望。但都因為是單方面的,我怎麼操控車子,車子就會做什麼,總覺得少了一點互動和變化性。

等你有了一台遙控車,你絕對不會想在旁邊默默的自己玩,而是希望跟別人比賽或是競爭,這都是取決於人們的好勝心。但最大的問題來了,你必須要兩個人才能實現,這就是我們需要克服的問題,如何提升操控的介面和多樣性,讓一位使用者能感受到與外在一位與多位使用者之間的互動,進而產生和樂的歡笑作用是我們的動機。

2. 應用領域:

隨著科技的進步,將科技融入生活當中也是未來休閒產業相當重要的一環。現代人往往忙碌於工作,無形中累積不少的壓力,常常忘記放鬆自己,藉由一些家庭娛樂設備來達到放鬆的效果。

現在家庭都屬於小家庭,兄弟姊妹並不多,甚至有不少家庭只有一個小孩,比起過去的大家庭,就少了許多玩伴,因此現在的小孩總是吵吵鬧鬧的要買玩具,因為玩具就是他們的玩伴;但是小孩卻常常獨自一人在玩玩具,玩久了自然會厭倦,故我們打算設計適合整個家庭都可以玩樂的玩具,小孩子喜歡,而大人也能一起參與,可在無形中增加親子的互動與感情,才不會使小孩覺得孤單寂寞。

3. 目標:

貓捉老鼠,指的是一台子車代表老鼠,一台母車代表貓咪來做鬼抓人的比賽,老鼠由使用者來控制,母車使他有較多的自動化,子車上面有一組發射訊號,藉由紅外線的發射器,來傳輸到母車的紅外線接收器,當母車收到訊號時,就會自動判斷子車的位置,並全速前進抓取子車,讓使用者一個人在家無聊時也能享受到兩人競賽的遊戲,而且不是虛擬的藉由遊戲機在螢幕上執行,而是透過真實的硬體設備,來達到實體的效果。

此兩設計的目的是為了讓一個人的遊戲也可以變得更加有互動,會讓你覺得是有個人在參與。而當有多位使用者時,我們只要再增加子車的數量,使他發出的訊號一樣,就能使母車接收到訊號,並且前來抓取他。在一個家庭裡面大家就可以一起來參與此遊戲,比賽看看誰是最後一個被抓到的,同時也能促進家庭彼此的情感。

 

(Revision: 5 / 2010-09-17 14:00:03)

2. 功能描述 (Final Project Paper)

自動化   母車()利用紅外線接收器和影像辨識,來達到訊號的輸入,使其知道如何尋得子車(老鼠) 。基於多種狀況和複雜性,我們將開發簡易邏輯於MCU板中,進行快且精確的判斷,最後再對可能的複雜環境進行去雜訊和學習判斷的能力等。

 

人機互動:使用者藉由操控子車,來影響母車,使得母車可以依子車不同的位置,有不同的動線。另外,在開發時亦能建立測試資訊,提供解決問題的支援之介面。

 

簡易操控:使用一個遙控器,控制子車,有前進、後退、左轉、右轉,再使用快速的變化和切換來提升操控性(設計良好的驅動和Driver)

 

語音運用:將來希望用語音辨識來取代手動遙控,來達到子車的前進、後退、左轉、右轉,以及語音式的回應等。

 

防撞機制:由於母車(),是由自動化去控制,所以要有避免撞到牆壁的機制,才不會使車子壞掉,除開關外,另有超音波、內部記憶體和學習機制。

 

夜光        在車上裝上光感感測器,當光源不足時,可以自動啟動車上加裝的IR燈和互/指令的效果LED等,使得在夜間也可以玩樂。

 

(Revision: 2 / 2010-06-30 23:02:23)

3. 效能參數 (Final Project Paper)

前言:

DE1為核心的控制、計算、分析、判斷和整合及協助測試之主要模組,其於本設計上整合多重周邊並有IP及介面模組都是由FPGA部分擔任。此外,還有NIOS及其程式來進行管理和決策的功能,基於VLSI設計和介面。其整合之周邊將會影響整體效能,實際參數說明如下:

1.     紅外線接收發:

紅外線接收發功能分別用於母車()子車(老鼠)感測子車所在的位置。為了使接收距離達510公尺,當我們在初步測試紅外線時,所達到之接收距離約略只有2公尺。為了解決接收距離過近的窘境,我們自行設計放大電路,增強紅外線的感測強度。並且設計紅外線發射為脈衝訊號,將能量集中,使之接收距離增加至6公尺左右,達到我們所需的範圍。此外為了使紅外線接收LED燈能夠辨識距離和判斷紅外線或其他光源,我們使用ADC將紅外線訊號數位化,並結合NIOS作為判決、整合與測試等功用,使之能夠正確辨別IR光源。並且使用NIOS作為母車決定行走方向的決策功能。其參數含IR LED的角涵蓋域、功率和時脈寬度等。

2.     RF接發收:

RF模組主要是提供貓鼠間相互戲弄和遊戲者可以操控子車及整合測試之功能,必須確保資料接收的正確性且傳送距離須達到10公尺以上。我們所使用的RF模組無任何編解碼功能,可避免受限於編解碼IC的速度與資料長度,必須自行設計IPDE1之中。我們撰寫VHDL程式來設計RF的封包格式,並燒錄至FPGA。經分析後,傳送速率達4.8Kbps、資料長度為12-bits。利用NIOS連結硬體,協助硬體測試所接收的資料是否正確。在我們觀察中發現,有些許機會造成接收資料錯誤與傳送距離只達3公尺左右。在距離方面,經過不斷測試和調整在發現到問題後,不斷地改造天線長度與形狀,使傳送達到理想距離。在資料錯誤方面,我們由NIOS平台得知錯誤的位元數都在3個錯誤以內,所以加入了QR糾錯碼。糾錯碼由Verilog撰寫而成,燒入至FPGA中,解碼速度只須20ns。而且,更確保了資料100%的正確性。

3.     直流馬達之PWM參數:

直流馬達具有高轉速且省電的優勢,適合做為簡易帶動車子的動力來源。我們將車子行走的模式撰寫至Verilog,透過DE1上的GPIO操控。由於GPIO訊號無法直接帶動直流馬達,須由達靈頓驅動電路帶動馬達。此外為避免轉彎過急的狀況發生,由NIOSPWM之技術控制馬達轉速。同時利用NIOS決定必須使用多重操控模等方式,進行速度控制決策,有效提升車子穩定度。

4.     ADC及精確度

為了使NIOS能有效讀取由各個sensor的數據,需透過ADC將資料數位化。自行撰寫控制ADCVHDL程式,來擷取sensor的數位資料。再由JTAG連結至電腦的NIOS以便測試與整合所有的sensor。由於有不少sensor都需要使用到ADC,為了降低購買ADC IC所花費的成本,我們使用多工器再配合NIOS將各sensor的數位資料依序擷取。此外不同的應用有不同的精確度,FPGA之介面IP使用所需的位元也讓IC能夠更有效地被利用,而不會有閒置的狀況產生。

5.     G sensor

G sensor主要是平衡與穩定自走車(母車)之功能,防止路面狀況不佳造成打滑或絆倒等情形發生。使用ADC先將G sensor的三軸數位化後,由NIOS讀取三軸的值來測試車子在不同路況下,三軸的變化量。再使用NIOS依據三軸不同的位移和加速信號等之變化狀況,判定車子是否打滑或快翻覆等情況,決定自走車須轉向、加速、煞車、減速或停止等動作。讓此遊戲系統能夠在更多地方使用,添加更多的歡樂。

6.     超音波測距:

為了防止自走車在追逐的過程中,擦撞到各種障礙物,我們在車子底座周圍加裝超音波sensor,用來感測與障礙物的間距。要使超音波能夠正確測試出距離的長短,必須先將超音波訊號數位化。經過NIOS計算出與障礙物間的距離後,再判定自走車該如何避開此障礙物。除了作為避開障礙物的功能外,也將超音波接收器加裝在子車上。當母車追到子車,子車上的超音波接收器收到母車超音波所發出的訊號後,NIOS會判定為遊戲結束,作為一個遊戲的END

(Revision: 2 / 2010-09-17 14:00:34)

4. 設計架構 (Preliminary Paper)

 

紅外線sensor       利用紅外線的發接收,來確定子車的位置和通訊(除錯)用途

 

超音波sensor       在母車()上加裝,感測前面是否有其他物,使其減速,判定、分

  析位置和避免撞擊等功用

 

光感sensor    感測環境的光線,陰影的運用,以及是否有足夠光源,若不足可使

      夜燈開啟

 

G sensor        加速驅動、平衡、穩定度分析以及獨輪應用

 

(Revision: 2 / 2010-06-30 23:03:12)

5. 設計方法 (Final Project Paper)

1、周邊介面設計:基於產品未來價格之考量,本案原則上使用最低階的周邊,以設計FPGAIP為介面,由NIOS整合為主要原則。因此,DE1直接與RS232 ADCIRRFAF等介面之。例如,RF模組是使用無邊解碼之模組,直接與FPGA接合。經與NIOS整合後,可分析start and stop bitsData size和設計最後之Coding IP,使NIOS對周邊之整合效率大大的提升。其他周邊亦同。

2、軟硬體共同設計:本項設計是配合DE1具發展IPCPU能力。首先,分析必要的功能,經時脈和資源分析後,將適合或必要加速之功能,以硬體IP方式實現。再考量未來省電需求,以考量使用最低時脈來節省電耗。使得NIOS所需計算和處理之工作降低,可更專注在分析、決策和創意的功能上。

3、母車()設計為了使母車能夠正確地捉到子車(老鼠),利用紅外線接收來感測子車所在的方向。母車底部周圍設有超音波,感測前面是否有其他物,使其減速,判定、分析位置和避免撞擊等功用。使用G sensor控制自走車(母車)的平衡,避免翻車等不穩狀況發生。在馬達上增加PWM的控制,防止自走車轉彎速度過快造成打滑與翻車之情形。另外加入RF和語音辨識系統,透過不同的語音指令讓母車有更多遊玩模式可以選擇,子母車間亦可聯絡和互鬪,增加遊戲時的趣味。

4、子車(老鼠)  子車是由遊戲者控制,車上設有紅外線發射燈,告知母車方向。被母車(自走車)捉到時,即遊戲結束。為了能夠使遊戲者可以控制子車,設有RF接收模組以方便控制子車行走。在馬達上增加PWM的控制,避免車速過快。加入語音辨識來控制子車,豐富遊戲的樂趣與遊玩方式。

5、發展步驟:

步驟1    由於所使用的RF接發收模組並沒有編解碼IC,需自行設計封包。經多次分析後,撰寫VHDL程式設計傳送封包,將程式燒錄至FPGA中,開發出最佳且有效率之編碼。之所以不使用編解碼IC,是因為會受限於資料一次只允許傳送固定bits。使子車控制彈性不足,不方便控制。

步驟2        測試紅外線接發收LED時,設計其脈波式發射電路與接收電路,增長發射距離。測試超音波sensor並且將其訊號數位化,透過DE1 NIOS來查看其量測距離是否正確,以達到避撞效果。DE1GPIO控制信號,使用達靈頓電路驅動直流馬達作為車子的動力驅動,透過不同PWM和模式操控訊號來控制車子。

步驟3        連結遙控器與子車(老鼠),測試RF所傳送的指令,子車是否能正確地執行。並且加入PWM的控制,使用NIOS來調整車速的快慢,測試子車是否會有翻覆的狀況。將紅外線接收LED燈和超音波與母車結合,先透過ADC將紅外線訊號數位化,利用DE1 NIOS查看所接收的數值來過濾日光燈等雜訊,使母車能夠正確辦別紅外線發射的位置。測試母車上的超音波接近障礙物多近時,需要做迴避的動作,防止其直接衝撞障礙物。

步驟4        將紅外線發射LED燈接在子車,在與母車一起測試。觀察母車是否能夠接收到子車的訊號,並做出正確的判決。再將PWM控制電路加入至母車,防止其翻覆。測試G sensor,利用ADC將其訊號數位化,透過NIOS來觀察3軸變化的情形。再把G sensor與母車結合,假使車子有快翻覆的情形NIOS會做出判決,讓車子維持平衡,增加穩定度。

步驟5        將整套系統放置在各種環境測試,並刻意製造些許障礙,測試是否能有正確地解決這些障礙。再加入語音辨識來控制子車與母車,增加其遊玩的趣味性。

步驟6        設計和分析各種情境,配合程式設計使用聲音、亮光和訊息,使得遊戲的內容能提升氛圍。增加創意,使遊戲者或親子間關係更密切。

(Revision: 2 / 2010-09-17 13:58:00)

6. 設計特點 (Preliminary Paper)

創新性:   擁有高機動性,遊戲者少至一人,多至四到五人,亦或更多。遊戲變化性高,藉由不同的規則制定,可延伸出數種遊戲玩法。一般市面遙控車,都限定於一人一台車子,與他人互動有一定的限制。然而今天我們設計了一台擁有自動化系統的車,能依據子車的所在的位子,並自動判斷出行進方向,由於並非是由使用者來控制,所以可能會有一些讓人意想不到的行為,並可以使使用者有所期待。

實用性:   有效的運用現今通俗的感測和控制器材,並以Altera DE1軟硬體共同設計來挑戰它存在的價值,我們用紅外線與超音波感測器,讓車子達到自動化的功能,藉由此效果,可以讓使用者有無法預期的結果。在一個遊戲中,最重要的就是能夠使人開心快樂,此簡單低價位的設計架構,卻可達到豐富的趣味,使大家買的便宜,玩的開心。

完整性:   依照我們所設計的遊戲,除了明暗、接觸、感應、加減速、追蹤和定位外還會考量多種問題,如目前一般玩具僅限於在平面的地上,如果今天遇到的是凹凸不平的石頭路,那可能會造成感測器感應不到的情形,使得所預期的功能無法實現。這也是在我們在此設計遊戲中加入sensor會改善的地方。

軟體方面: 利用Altera DE1所搭載的NIOS做為測試平台。

硬體方面: 利用Altera DE1上的外接PORT,以連結各sensor,來達到中央控管的整合並且以硬體作為判定、分析位置和避免撞擊等功用。運用紅外線IR sensor,來確定子車與母車的位置,使母車可自行追蹤子車,另外也可以加入影像辨識,判別子車的位置,使其判別速度能夠提升。利用超音波sensor,感測周圍是否有障礙物,使其減速。控制子車方面,使用RF傳輸模組,加上自行撰寫的編解碼,達到控制子車的目的。

 

(Revision: 2 / 2010-06-30 23:03:34)

7. 總結 (Final Project Paper)

DE1發展平台:

DE1具有CPUFPGAGPIONIOS等各種周邊控制的強大發展平台。可自行設計IP燒入置FPGA中,增加其各sensor發展的自由度,同時也可整合NIOS,利用軟硬體共同設計之概念,有效提升其整體效能,達到最佳的設計。此外,利用JTAG可以將各周邊的數據傳送至電腦。針對各周邊的數據,可以供測試、整合之作用,更快速Debug

心得:

雖然先前已有過比賽的經驗,但是在設計本案時,依然面臨著不少問題。例如,硬體無法有效達到所需效能,與理想不符。但為了在有限的經費中,達到理想的設計,需要自行設計各種電路或程式來達成。由於DE1具有軟硬體共同設計的特點與QuartusNIOS成熟的開發介面,在測試自行設計的IP和電路時,相當便利。各隊員間合作與工作的分配和各部分的整合也是相當重要的一環,利用各隊員的長處去分配其工作,再將每個部份整合,可以更快設計出此專案。往往團員間的合作狀況,決定了一個專案的成功性。透過團員間彼此的合作,也使得更了解彼此。因此無論在任何設計上,團隊合作是非常重要的關鍵之一。我們設計其遊戲最主要的目的是讓親子間關係能夠更融洽,給各個家庭帶來歡樂。現今家庭幾乎都少子化,父母由常常忙於工作,很少有閒暇時間陪伴孩子。此遊戲能讓小孩獨自一人玩,也可以讓父母輕鬆的跟孩子玩,不會使孩子疏於照顧且讓親子間關係更密切。加入各種創意的玩法,讓遊戲不再單調,為每個家庭帶來歡樂,這是我們所期盼的。

(Draft / 2010-09-17 14:46:21)