【《基于STM微控制器的公交車自動播報系統(tǒng)設計》13000字】_第1頁
【《基于STM微控制器的公交車自動播報系統(tǒng)設計》13000字】_第2頁
【《基于STM微控制器的公交車自動播報系統(tǒng)設計》13000字】_第3頁
【《基于STM微控制器的公交車自動播報系統(tǒng)設計》13000字】_第4頁
【《基于STM微控制器的公交車自動播報系統(tǒng)設計》13000字】_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

第頁共4頁引言隨著我國現(xiàn)代社會生活的迅猛發(fā)展與進步,公交車己經(jīng)逐漸地成為了現(xiàn)代社會人們不可忽略的重要組成部分,在現(xiàn)代化的城市中,人們上班、下學、日常出行等各種日常生活行為過程中都慢慢地開始離不開公交車這種重要的交通工具。而且公交車已經(jīng)作為一種具有較高的道路資源利用率、高效益、高載客量以及較少污染和環(huán)境污染的大眾化交通工具,在我國這個道路發(fā)展迅速的當今社會和現(xiàn)代化城市里,成為了越來更多年輕人日常生活和工作的首選,越來越能夠獲得社會認可和政府支持以及推廣。因此,公交車的播報站點已經(jīng)成為一個重要的問題,公交車的播報站點最初是由手工進行播報,隨后又出現(xiàn)了自動播報器,近幾年又開始出現(xiàn)自動播報系統(tǒng)。人工播報器和手動播報器都是需要使用人工的行為才能完成,這兩種播報方式對于人力的要求都比較高,效率和精度都非常低,還容易錯報漏報站點。由此可見自動播報系統(tǒng)的重要性。1緒論近幾年,隨著全國各地都紛紛出現(xiàn)較為嚴重的交通堵塞問題,越來越多的人選擇乘坐公交車出行。老式的公交車設施較為落后,存在噪聲較大、排放量高、行駛不夠穩(wěn)定等一系列問題,播報系統(tǒng)使用人工播報,較為落后,且乘坐體驗都不是很好。近幾年以來,我國先后出現(xiàn)了純電動公交、氣電混合能源公交、和天然氣公交等一系列的新型公交車。這些新型公交車噪聲小,排放量低、低碳環(huán)保、對環(huán)境污染小,而且行駛平穩(wěn),空調(diào)、播報等設施更為先進,極大提高了乘客們的乘坐體驗。隨著高科技的逐步發(fā)展,當前國內(nèi)主要大城市的公共汽車都逐漸發(fā)展開始采用自動播報站點的系統(tǒng)進行報站,公共汽車上都普遍安裝了GPS自動播報系統(tǒng)來實現(xiàn)站點的自動播報,可以直接通過GPS定位自動分析和識別。自動播報站點系統(tǒng)具有了報站的精準性,不再需要人工操作,不需要靠任何車外的設施就能實現(xiàn)自動播報等優(yōu)勢。1.1國內(nèi)外研究現(xiàn)狀和發(fā)展趨勢在國內(nèi)外公交車主要使用的語音報站器有以下幾種:第一種是一般的語音報站儀。其工作原理是列車到站前由旅客乘務人員在列車上按動"進站"的按鈕后即可開始報站;出站時由列車的乘務員在地鐵上按下"出站",開始填寫下站的站名;通過編碼序號的方式記錄每一個站點。成本低是其主要的優(yōu)點,但也存在明顯的缺陷,需要乘務員能夠時刻地集中他們的注意力,關注在進站和出入口的情況,還必須要記住車輛在站點上的順序,這樣就會導致車輛出現(xiàn)安全隱患的問題,而且報站的位置不一定要做得足夠準確,存在的偏差取決于乘務員對此類型的報站器熟練度。其次是門控語音報站器。門控語音報站器即將語音報站器和開門、關門時產(chǎn)生的信號的設備進行連接,當公交車開門關門時會出現(xiàn)自動報站。其成本較低,但因為需要開門和關門信號,因此不能夠提前報站,如果出現(xiàn)有人需要中途下車等意外情況則會打亂播報站點的順序。無線語音報站器也是一種重要的語音報站器,這種語音報站器首先需要在所有公交車的路上途經(jīng)的每一個站點都設置一個發(fā)射的信標地點,當一輛公交車接近的站點上所接受到的信標地點時,即可以開始對其進行語音報站,當一輛公交車離開該站,接受的信標地點已經(jīng)消失時,將播報其他下一個站點的情況。此種報站器的方式應該是報站準確,不會有錯報或者漏報等情況的現(xiàn)象,但這種方式成本太高,因為我們需要在站點內(nèi)部建設一個無線接入式發(fā)射信標,建設的成本高,站點的維護成本也很昂貴,而當公交車數(shù)量過多時會出現(xiàn)較為嚴重的互相干擾頻率現(xiàn)象。GPS自動語音報站器主要是GPS全球定位系統(tǒng)技術成熟后首次出現(xiàn)的一種全自動報站器,這種全球式報站器是通過在公交車上直接安裝,實時與GPS定位系統(tǒng)進行交互,以便能夠準確地識別輸入到該站點的位置和信息并對其進行播報,其不僅不需要人工來進行操作,而且在GPS定位技術成熟的現(xiàn)在,報站可以精確到幾米之內(nèi),無須修建設其他設備,成本相對較低。GPS定位技術在現(xiàn)在已經(jīng)變得比較成熟,越來越多需要進行定位的設備都使用了GPS系統(tǒng),公交車的播報站點系統(tǒng)也不例外,在科技發(fā)達的時代,播報系統(tǒng)逐步向自動播報發(fā)展,GPS自動播報系統(tǒng)的出現(xiàn)已成必然,并且在將來應該會越做越好,功能逐漸增加,必將時未來新型公交的必然選擇。1.2公交車自動播報系統(tǒng)的研究意義隨著我國城市化的進程和經(jīng)濟發(fā)展的迅速,公共交通已經(jīng)成為大中小城市的基礎公共設施之一,現(xiàn)在城市內(nèi)公共交通的主要方式大致有兩種,分別為公交車和地鐵。兩種類型的公共交通方式都具備了各自的優(yōu)缺點和特殊性,公交車的投入很小,價格低廉,乘客換乘比較方便,建筑和維護的成本較低,但缺點也很明顯,速度慢,高峰期時候堵車現(xiàn)象嚴重,乘客在站等待時間不定,容易錯過公交車班次;地鐵的乘坐體驗較好,更加舒適安全,更加綠色環(huán)保,不會出現(xiàn)堵塞現(xiàn)象,乘客可以精準掌握出發(fā)時間和到達時間,但實際的缺陷也有很多,地鐵站的占地較大,現(xiàn)在只能在大中城市進行建設,一個地鐵站的站點和路線的建筑成本很高、建設時間長、維護成本高,在高峰期也會出現(xiàn)擠不上地鐵的情況。由此可見,每種公共交通方式都各有好壞,因此,每一種公共交通方式都還需要進一步完善。智能化社會的到來,促使了許多智能化設施的誕生,現(xiàn)在普遍提倡“科技改變生活”,智能科技也在逐漸融入我們的生活之中。公共交通也不例外,現(xiàn)在的新型能源公交車都開始使用了一些智能系統(tǒng),最具有代表性的就是自動報站系統(tǒng),不僅能夠減少人力資源的使用,而且能夠提高公交車的運行效率,為人們提供更加快速、便捷的公共服務。本次畢業(yè)設計便是利用微控制器主控芯片來設計出一種能夠在公交車上使用的自動播報站點系統(tǒng)。此設計能夠在公交車系統(tǒng)的發(fā)展中起了至關重要的作用,能夠引導乘客正確獲得站點信息,能使乘客獲得一個更好的乘坐體驗。2公交車自動播報系統(tǒng)設計方案首次看到此設計題目時,經(jīng)過自己對系統(tǒng)設計題目的分析和思考,得出如圖2-1所示為本系統(tǒng)設計的總體初步設計方案,由圖可知需要一個定位系統(tǒng)和主控芯片,現(xiàn)分別對這兩部分所需要使用的系統(tǒng)進行選擇。圖2-1初步設計方案在定位系統(tǒng)的選擇方面,首先,第一種是北斗衛(wèi)星導航系統(tǒng)(北斗系統(tǒng))。北斗系統(tǒng)是我們中國自主開發(fā)并實施建設的一款全球衛(wèi)星定位系統(tǒng),其具備定位精度高,可進行全天候、全天時的導航等一系列特點,目前在我國的交通運輸、公共安全等許多領域已經(jīng)獲得了廣泛的應用。第二種GPS全球定位系統(tǒng)(GlobalPositioningSystem)。GPS定位系統(tǒng)是很久之前美國開發(fā)的一款定位系統(tǒng),同樣具備在全天候都能夠連續(xù)不斷的進行定位的能力,且具有高精度,觀測時間短,儀器操作比較簡便。由于GPS系統(tǒng)開發(fā)時間長,目前GPS使用技術已經(jīng)變得足夠成熟,可使用的資料也比較多,因此本設計打算使用GPS系統(tǒng)來進行定位。主控芯片的選擇。FPGA(FieldProgrammableGateArray)在技術上是近年來作為一種專用于集成電路(Asic)應用領域其中的一種半定制集成電路而開始出現(xiàn)的,FPGA以并行操作和運算語音為主,以硬件描述語音操作方式來進行實現(xiàn),但與PC或者微控制器等操作方式有很大的差異性和區(qū)別,因此在技術上入門比較困難。微控制器(microcontrollerunit),也稱單片機,是現(xiàn)在電子產(chǎn)品行業(yè)應用得較多的芯片,擁有許多接口和功能,編程語言使用的是C語言,因此在現(xiàn)代生活中的越來越廣泛。由于本人的C語言有不錯的基礎,F(xiàn)PGA雖然學過但是學得不是很懂,所以本設計主控芯片選擇微控制器。2.1公交車自動播報系統(tǒng)設計要求(1)本系統(tǒng)需要以89C51或者STM32系列微控制器為主控核心,設計一款可以實現(xiàn)通過GPS系統(tǒng)自動播報站點的系統(tǒng)。要求如下:EQ\o\ac(○,1)車子到站時有到站站名播報、起步時有下個站點名播報;EQ\o\ac(○,2)位置誤差不超過15米;EQ\o\ac(○,3)公交車自動定位,并能檢測加速/減速信號,作出相應的溫馨提示等播報;EQ\o\ac(○,4)播報方式包含語音和顯示牌兩種方式,播報聲音響亮,符合實際環(huán)境的需要;EQ\o\ac(○,5)包含6個以上的公交車站點信息。(2)根據(jù)設計要求制定本設計的方案,得到本次畢業(yè)設計方案的系統(tǒng)設計框圖如圖2-2所示:圖2-2公交車自動播報系統(tǒng)設計框圖首先從GPS模塊獲取到經(jīng)緯度信息,從加速度傳感器模塊中獲取加速以及減速信號,然后分別將這些經(jīng)緯度信息和加速減速信號發(fā)送到主控芯片上進行特定地處理,經(jīng)過主控芯片處理后將所需的信號分別發(fā)送到語音播報模塊和顯示屏模塊上,使語音模塊發(fā)送出對應的語音信息、顯示屏模塊顯示出相應的站點信息,即可實現(xiàn)設計的要求。2.2公交車自動播報系統(tǒng)設計方案根據(jù)設計所需要達到的要求,經(jīng)過一段時間的研究和分析,初步對所需解決設計方案進一步進行挑選,設計方案如下:EQ\o\ac(○,1)根據(jù)設計要求選擇精度合適的GPS模塊,學習模塊的使用方法,將所需要用到的參數(shù)提取出來;EQ\o\ac(○,2)通過GPS模塊獲取GPS數(shù)據(jù),將GPS數(shù)據(jù)發(fā)送到主控芯片中進行處理;EQ\o\ac(○,3)將處理好的數(shù)據(jù)生成不同的信號,將信號發(fā)送給語音播報模塊和顯示屏模塊;EQ\o\ac(○,4)提前設置好語音播報模塊和顯示屏模塊所要輸出的內(nèi)容,檢查其輸出結果的正確性。2.3公交車自動播報系統(tǒng)模塊選擇2.3.1核心微控制器的選型(1)AT89C51或AT89C52單片機AT89C51或AT89C52單片機是最基本的、應用最廣泛的單片機,是電子方面的許多初學者第一個學習的,也是最容易上手的基礎單片機。但其運行速度相對比較慢,且對芯片的保護能力較差,容易對芯片造成損壞。(2)STM32系列微控制器STM32系列是專門為要求成本低、性能高、功耗低的各種嵌入式應用設計出來的ARM。STM32系列的程序都是模塊化的,接口相對于AT89C51和AT89C52單片機更為簡單,工作運行速度更快。綜上所述,經(jīng)過自己的分析和研究,方案一中的兩種單片機雖然成本較低、應用廣泛、使用簡單,但使用起來并沒有方案二中的STM32系列的微控制器方便,并且工作速度更為快速、工作量更加充足。因此選擇使用STM32系列微控制器。表2-1STM32系列部分U(S)ART接口數(shù)表STM32系列型號U(S)ART接口數(shù)STM32F103C4T62STM32F103R6H62STM32F103C8T63STM32F103R8H63至于STM32系列微控制器的選型,語音播報模塊有一線串口、標準串口和TTL電平三個UART接口,因此所選的STM32系列微控制器的UART接口數(shù)量也應該是三個,如表2-1所示,再通過成本、效率等因素的篩選之后,STM32系列微控制器最終選型為STM32F103C8T6。2.3.2顯示模塊的選型(1)LCD1602液晶顯示屏模塊LCD1602液晶顯示屏由字符型液晶顯示屏(LCD)、控制驅動主電路HD44780和擴展驅動電路HD44100三個主要電路模塊組成,是日常生活中常用于簡易顯示屏中的一種字符型液晶顯示模塊。LCD1602是用的字符型液晶顯示屏,控制顯示字母和數(shù)字較為簡便,且成本較低,控制較為簡單。但其顯示出來的字母和數(shù)字的大小會被顯示屏進行限制,而且最多只能夠顯示16×2個字符,以及不能夠顯示出圖像、曲線等等不規(guī)則圖形。(2)USARTHMI智能串口屏模塊USARTHMI智能串口屏是一種新型的智能顯示屏,這種顯示屏自帶顯示界面,只需要對這種串口屏進行串口通信,即可修改其內(nèi)置的各種參數(shù),還能通過串口屏內(nèi)置的一些特定的指令實現(xiàn)串口屏內(nèi)部的特定功能和特定操作,操作簡單,供電即可直接使用,使用方便,且可以通過廠家的特定的編輯軟件對其顯示屏上的圖案進行修改,還能夠顯示出特定的圖像或者曲線,顯示出來的字體大小也可以任意進行修改。綜上所述,雖然USARTHMI智能串口屏的成本較LCD1602液晶顯示屏更高一點,但其操作更為簡便,顯示出來的文字可以通過軟件進行修改,更能加入一些圖像來提高對比度。因此選擇使用USARTHMI智能串口屏。USARTHMI智能串口屏的外觀如圖2-4所示:圖2-3USARTHMI智能串口屏外觀3公交車自動播報系統(tǒng)的硬件設計3.1微控制器模塊微控制器模塊選用的STM32F103C8T6型號的微控制器,其內(nèi)核是ARMCortex-M3,是一款32位的的微控制器,工作頻率最高為72MHz,擁有64kb容量的內(nèi)部閃存程序存儲器和高達20K字節(jié)的SRAM。正常工作電壓為2.0至3.6伏特,可在-40至85攝氏度的環(huán)境下進行工作,同時還能夠支持許多外接設備,如ADC、SPI、USART、USB等等。STM32F103C8T6微控制器作為本系統(tǒng)設計的核心芯片,一是需要接收位置信息數(shù)據(jù)進行處理,二是需要將處理后的數(shù)據(jù)再輸出到后續(xù)的模塊中,起著至關重要的作用。圖3-1STM32F103C8T6實物圖經(jīng)過自己的研究和分析,在本系統(tǒng)設計中,使用的是STM32F103C8T6微控制器的最小系統(tǒng)板,STM32F103C8T6微控制器在本系統(tǒng)設計中的電路圖原理圖如圖3-2所示。圖3-2單片機模塊電路圖3.2GPS模塊GPS模塊選用的是NEO-6M模塊,如圖3-3所示為NEO-6M模塊的實物圖,其特點是靈敏度高、功耗較低、小型化、追蹤靈敏度較高,其定位的精度很高,模塊的精度是2.5mCEP,CEP是GPS模塊的定位精度單位,2.5mCEP的意思是以2.5M為半徑畫一個圓,而打在圓內(nèi)的點的數(shù)量有一半,由此可以看出模塊的精確度比較高,可以在如樓房之間的狹窄天空下、某些遮擋物較多的環(huán)境等一些老式、普通的GPS接收模塊定位不到的地方,NEO-6M也能夠擁有很高精度的定位。而模塊的高靈敏度、小靜態(tài)漂移、低功耗及輕巧的體積,使其被運用到許多小型設備上,如用在車載GPS系統(tǒng)、手機的位置定位系統(tǒng)等一些其他需要進行定位的系統(tǒng)中,是現(xiàn)在許多輕量級GPS產(chǎn)品的首選模塊。圖3-3NEO-6MGPS模塊實物圖NEO-6MGPS模塊采用了U-BLOXNEO-6M協(xié)議,通過其特定的協(xié)議即可提取其內(nèi)部數(shù)據(jù),雖體積小巧,但性能較為優(yōu)秀,還增加了信號放大電路,有助于進行天線中信號的接收。NEO-6MGPS模塊自帶TTL接口,還能夠兼容3.3伏特至5伏特的電平以連接各種不同類型和型號的微控制器;模塊還有外接接口用來連接各種有源的天線,對環(huán)境的適應能力比較強等等,是現(xiàn)在成本較低,使用較為廣泛的GPS模塊。NEO-6MGPS模塊在本設計中是接收GPS數(shù)據(jù)的模塊,GPS的數(shù)據(jù)都來源于這個模塊,是本系統(tǒng)設計主要模塊之一,其電路圖如圖3-4所示:圖3-4NEO-6MGPS模塊電路圖3.3語音播報模塊語音播報模塊選用的是JQ8900MP3語音播報模塊,其實物圖如圖3-5所示,JQ8900語音播報模塊支持MP3WAV硬件解碼,擁有多種控制模式、兩線串口模式和一線串口控制模式,能夠直接操作儲存卡內(nèi)部的特定語音,還有專用的配套上位機可以幫助初學者快速上手,并且有成熟的指令和指令解析,能夠讓硬件調(diào)試方便,應用運行更加穩(wěn)定,能夠自動生成所需要的指令。圖3-5JQ8900MP3語音播報模塊實物圖JQ8900語音播報模塊支持采樣率在6K~22KHz之間的音頻,能夠展現(xiàn)出所要加載音頻幾乎無損的音質。而且其成本較低,使用與調(diào)試簡單的特點使得此模塊被廣泛應用。此模塊現(xiàn)在在大部分車載語音播報、各種語音報警提示以及各種公共場合出入口語音提示都被持續(xù)使用。此模塊在本設計中起到了播報特定語音的作用,是本系統(tǒng)設計中極其重要的部分之一,其電路圖如圖3-6所示:圖3-6JQ8900MP3語音播報模塊電路圖3.4顯示屏模塊顯示屏模塊選用的是USARTHMI智能串口屏,其實物圖如3-7所示,是現(xiàn)在應用逐漸廣泛的一種顯示屏模塊,具有操作簡便,外觀美觀大方,顯示清晰等一系列優(yōu)點,可通過配合其廠家的軟件對顯示屏的顯示內(nèi)容進行預設,更能通過串口通信對其內(nèi)容進行相應的更改,以達到用主控芯片控制顯示出來的內(nèi)容的目的,以實現(xiàn)所需設計的功能要求。圖3-7USARTHMI智能串口屏實物圖圖3-8USARTHMI智能串口屏實物圖2USARTHMI智能串口屏模塊在本次設計中是為了顯示出所到站點的文字性信息和所需的經(jīng)緯度信息,是本系統(tǒng)設計中不可或缺的模塊之一。在本設計中的電路原理圖如圖3-9所示:圖3-9USARTHMI智能串口屏模塊電路圖3.5總體設計電路將上述所選的STM32F103C8T6微控制器、NEO-6MGPS模塊、JQ8900MP3語音播報模塊、USARTHMI智能串口屏模塊所有在本系統(tǒng)設計方案中使用到的模塊,按照上述所制定的設計方案連接成為電路,在AltiumDesigner軟件上連接成為原理圖如圖3-10所示:圖3-10總體設計原理圖4公交車自動播報系統(tǒng)軟件設計本系統(tǒng)設計的軟件設計部分主要是由三個部分組成,第一部分是GPS定位模塊部分,第二部分為顯示屏模塊顯示部分,第三部分是語音播報模塊部分,GPS負責接收GPS數(shù)據(jù),然后將GPS數(shù)據(jù)發(fā)送至STM32微控制器主控芯片,主控芯片負責接收數(shù)據(jù)和處理數(shù)據(jù),并發(fā)出相應的信號至顯示屏模塊和語音播報模塊進行可視化輸出。公交車自動播報系統(tǒng)設計的系統(tǒng)流程圖如圖4-1所示:圖4-1公交車自動播報系統(tǒng)設計總體系統(tǒng)流程圖由圖4-1可得知,本系統(tǒng)設計先初始化所有連接模塊的串口,然后初始化GPS模塊、顯示模塊、語音模塊,接著從GPS中獲取GPS定位數(shù)據(jù),再判斷接收到的GPS數(shù)據(jù)是否是有效的GPS數(shù)據(jù),如果是有效的GPS數(shù)據(jù)則將其轉換成為浮點型數(shù)據(jù),否則繼續(xù)獲取GPS數(shù)據(jù)。再進行經(jīng)緯度的判斷,判斷經(jīng)緯度數(shù)據(jù)是否在所在地點經(jīng)緯度范圍內(nèi),如果經(jīng)緯度在所在地點經(jīng)緯度范圍內(nèi),則發(fā)送信號使得顯示模塊顯示出站點信息和語音播報模塊播報出特定的站點語音信息,否則也繼續(xù)獲取GPS數(shù)據(jù)。4.1微控制器模塊設計微控制器模塊是本文軟件系統(tǒng)設計的一個核心組成部分,在軟件系統(tǒng)設計過程中使用了STM32F103C8T6微控制器的最小型系統(tǒng)模塊。在本文的設計中,STM32F103C8T6微控制器的功能和作用主要是通過處理從GPS定位模塊接收到來的GPS定位數(shù)據(jù),經(jīng)過判斷處理之后再將這些數(shù)據(jù)轉化成不同對應信號進行輸出,再將這些不同對應信息輸出的信號發(fā)送給顯示屏模塊和語音播報模塊。現(xiàn)在微控制器(MCU)開發(fā)平臺有許多種,最常用的主要有IAREmbeddedWorkbench、STM32CubeProgrammer、KeilMDK等平臺。IAREmbeddedWorkbench是一款用于對嵌入式系統(tǒng)的應用程序進行編譯和調(diào)試的開發(fā)工具,支持許多軟件編寫語言,如C++語言、匯編語言等等,還支持許多著名的國際公司生產(chǎn)的微控制器芯片,是一個比較常見的微控制器開發(fā)平臺。STM32CubeProgrammer(STM32CUBEPROG)也是一款為任意的STM32系列微控制器變成提供一體化的開發(fā)工具,可支持USB、SWD、UART、JTAG等連接方式,還支持在多種操作系統(tǒng)上安裝和操作,有著人性化的用戶使用界面,還可通過腳本進行自動操作或者手動操作。KeilMDK軟件擁有uVision3、uVision4、uVision5集成開發(fā)環(huán)境和ARM編譯器,支持ARM7、ARM9、Cortex-M3、Cortex-M4等一系列先進的內(nèi)核處理器,技術較為領先于業(yè)內(nèi)的其他開發(fā)工具。經(jīng)過對比,因為本人之前接觸過KeilMDK開發(fā)平臺,雖然IAREmbeddedWorkbench開發(fā)平臺和STM32CubeProgrammer開發(fā)平臺都很優(yōu)秀,各具特色,但對KeilMDK開發(fā)平臺更加熟悉一些,于是決定本系統(tǒng)設計的微控制器開發(fā)將使用KeilMDK開發(fā)平臺,使用的是uVision5開發(fā)環(huán)境進行對微控制器的開發(fā)。微控制器程序設計系統(tǒng)框圖如圖4-2所示:圖4-2微控制器程序設計系統(tǒng)框圖由圖4-2可得,微控制器程序一開始先將GPS模塊、顯示模塊和語音播報模塊的串口進行初始化,然后控制語音播報模塊播放一段初始的語音,接著GPS模塊開始獲取GPS定位數(shù)據(jù),判斷接收到的GPS數(shù)據(jù)是否是有效數(shù)據(jù)。如果是有效數(shù)據(jù),則將此數(shù)據(jù)轉換成浮點型數(shù)據(jù),進行后續(xù)處理,否則繼續(xù)獲取GPS定位數(shù)據(jù)。GPS定位數(shù)據(jù)轉換成浮點型數(shù)據(jù)以后,再判斷數(shù)據(jù)中的經(jīng)緯度數(shù)據(jù)是否在所在地點經(jīng)緯度范圍內(nèi),當經(jīng)緯度在所在經(jīng)緯度范圍內(nèi)時,微控制器就會通過程序用各個模塊特定的函數(shù)向顯示模塊和語音播報模塊發(fā)送相應的信號,分別讓顯示模塊顯示出相應的站點經(jīng)緯度以及站名信息和語音播報模塊發(fā)出相應的站點語音信息。4.2GPS定位模塊軟件設計本系統(tǒng)設計的第一部分就是GPS定位模塊部分,也是整個設計中極其重要的一部分,負責定位信息的接收和將數(shù)據(jù)轉移至微控制器模塊處理。本系統(tǒng)設計使用的使ATK-NEO-6MGPS模塊,通過如圖4-3所示的實物圖可以看到,模塊有PIN1-PIN5一共五個引出腳,從左到右各個引腳的描述如表4-1所示:圖4-3ATK-NEO-6MGPS模塊實物圖表4-1GPS模塊各引腳描述引腳序號引腳名描述1VCC接電源(3.3-5.0V)2GND接地3TXD模塊串口發(fā)送腳4RXD模塊串口接收腳5PPS時鐘脈沖輸出腳其中的PPS引腳連接了模塊自帶的指示燈,PPS的指示燈一共有兩種狀態(tài),可以通過指示燈的狀態(tài)來判斷此模塊是否正常工作,第一種狀態(tài)是常亮,其表示模塊已經(jīng)正常供電,開始工作,但未能接收到GPS定位信號;第二種是閃爍,表示模塊接收到了GPS定位信號,定位成功。ATK-NEO-6MGPS模塊輸出的定位數(shù)據(jù)是采用的NMEA-0183協(xié)議,此協(xié)議是用ASCII碼來傳遞GPS定位信息的一種協(xié)議,根據(jù)不同的代碼有著多種不同的命令,其常用命令和說明如表4-2所示,本系統(tǒng)設計所要使用的命令為$GPRMC的命令,目的是為了獲取推薦定位信息,首先需要在微控制器程序中先檢測命令的輸入是否是$GPRMC命令,不是此命令就會進行報錯。$GPRMC即推薦定位信息(RecommendedMinimumSpecificGPS/TransitData),此語句的基本格式為:$GPRMC,(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12)*hh(CR)(LF)(1)UTC時間,hhmmss(時分秒)(2)定位狀態(tài),A=有效定位,V=無效定位(3)緯度ddmm.mmmmm(度分)(4)緯度半球N(北半球)或S(南半球)(5)經(jīng)度dddmm.mmmmm(度分)(6)經(jīng)度半球E(東經(jīng))或W(西經(jīng))(7)地面速率(000.0~999.9節(jié))(8)地面航向(000.0~359.9度,以真北方為參考基準)(9)UTC日期,ddmmyy(日月年)(10)磁偏角(000.0~180.0度,前導位數(shù)不足則補0)(11)磁偏角方向,E(東)或W(西)(12)模式指示(A=自主定位,D=差分,E=估算,N=數(shù)據(jù)無效)此語句的基本格式如上述所示,由此可知我們需要的信息為經(jīng)度、緯度、地面速率和地面航向,因此只需要在程序中進行判斷接收到的信息是否有8個逗號即可獲取所有我們需要用到的GPS數(shù)據(jù)。表4-2NMEA-0183協(xié)議常用命令表命令說明$GPGGAGPS定位信息$GPGSA當前衛(wèi)星信息$GPGSV可見衛(wèi)星信息$GPRMC推薦定位信息$GPVTG地面速度信息$GPGLL大地坐標信息$GPZDA當前時間(UTC)信息獲取得到我們需要的GPS數(shù)據(jù)后,通過程序將經(jīng)度和緯度數(shù)據(jù)轉換成為浮點型數(shù)據(jù),以便在后續(xù)的判斷所在地點的經(jīng)緯度范圍所使用。4.3顯示模塊軟件設計本系統(tǒng)設計中的顯示模塊的作用是顯示出相應的站點信息,負責接收從主控芯片發(fā)送過來的信號并相應其程序改變字體或圖像等等。所使用的USARTHMI智能串口屏能夠通過一個專門的軟件USARTHMI對智能串口屏中顯示出的信息進行修改。USARTHMI軟件的主界面如圖4-4所示,以下需要用此軟件進行對USARTHMI智能串口屏的操作和控制。圖4-4USARTHMI主界面首先在USARTHMI軟件中新建一個后綴為.hmi的文件,選擇自己智能串口屏的型號,本系統(tǒng)設計的所使用的USARTHMI智能串口屏的型號是TJC4832K035_011,于是選擇此型號,如圖4-5所示。圖4-5USARTHMI新建文件界面選擇型號完成后,然后軟件界面中間會出現(xiàn)一個白色方框,這個白色方框即USARTHMI智能串口屏的內(nèi)部文件圖案,通過在右下角如圖4-6所示的屬性界面中“bco”處可以對中間的方框背景顏色進行修改。圖4-6文件屬性界面設置好背景的顏色以后,之后在左上角工具箱部分選擇“文本”選項即可在屏幕文件中放置文本框,也可以放置圖片充當背景圖片,使得顯示屏的背景更加好看。放置好所需要的所有文本框,完成后的串口屏文件如圖4-7所示。圖4-7串口屏顯示文件最終完成圖由上圖4-7可以看到串口屏顯示文件上每一個文本框都帶有一個自己的序號,如t0文本框顯示的內(nèi)容是“當前到站:”四個字體加一個符號,是一個固定不變的文本框,為了方便起見,將這一部分固定內(nèi)容不需要改變的文本框背景修改成淡黃色,字體顏色使用黑色,而如t1、t2、t3等文本框則是在本系統(tǒng)設計中需要實時改變的文本框將使用白色背景和紅色字體,紅色字體更能引人注意,方便使用者與乘客們的觀看。串口屏顯示屏文件完成后,即可將此文件下載至智能串口屏中,當對串口屏供電時就可以顯示出來。此外,USARTHMI智能串口屏還能夠與微控制器實現(xiàn)串口通信功能,微控制器可以通過串口通信,對智能串口屏文件上的顯示內(nèi)容進行修改,即對上圖4-7中的白色文本框通過程序進行更改。在本系統(tǒng)設計微控制器程序中,實現(xiàn)顯示站點信息功能的函數(shù)名稱是HMISendFont,實時顯示出經(jīng)緯度的函數(shù)為display_XY和實時顯示出速度的函數(shù)display_Speed。函數(shù)HMISendFont的定義如圖4-8所示,需要使用HMISendFont函數(shù)時,即可按HMISendFont(1)這種格式來進行在程序中的調(diào)用。圖4-8HMISendFont函數(shù)定義至此,串口屏顯示模塊的軟件設計部分基本完成。4.4語音播報模塊軟件設計語音播報模塊在本系統(tǒng)設計中主要是為了播放特定的語音信息,所用的JQ8900-16P模塊的實物引腳圖和電路原理圖如圖4-9所示,圖4-9JQ8900-16P模塊引腳圖由于我們需要用到不同的語音播報信息,因此在語音播報模塊軟件設計前,需要提前使用電腦上文字轉語音的軟件制作好所需要的語音播報信息,使用的是“迅捷文字轉語音”軟件,制作步驟很簡單,首先需要在軟件中輸入需要轉換的文字或者在軟件中添加示例文本,此軟件還可選擇不同的語音配置和根據(jù)意向添加背景音樂,然后選擇好輸出格式以及自定義輸出路徑,并修改其名字按照00001.mp3、00002.mp3等文件名使得調(diào)用文件更加方便,之后將所有制作好的每個站點的語音播報信息以及別的提示音信息放入TF存儲卡中,以便后面的程序調(diào)用。之后便是語音播報模塊的軟件設計部分,根據(jù)JQ8900-16P語音播報模塊的使用手冊,如果我們需要播報指定的曲目,則需要發(fā)出以下指令才可進行調(diào)用:指定曲目:AA0702曲目高曲目低SM按照上面的指令,如果指令為AA07020008BB則指定播放的時當前盤符中的第8首曲目,曲目的數(shù)木可以從1到65535。在微控制器程序方面,根據(jù)語音播報模塊的使用指令,如果要控制語音播報模塊播放聲音,首先就是要發(fā)送一個二維數(shù)組的一個成員給語音模塊,在這部分使用的數(shù)組名字為data[10][6],此數(shù)組即可以先設定好所需要播報的曲目,其內(nèi)部數(shù)據(jù)如下:u8data[10][6]={{0xAA,0x07,0x02,0x00,0x01,0xB4},{0xAA,0x07,0x02,0x00,0x02,0xB5},{0xAA,0x07,0x02,0x00,0x03,0xB6},{0xAA,0x07,0x02,0x00,0x04,0xB7},{0xAA,0x07,0x02,0x00,0x05,0xB8},{0xAA,0x07,0x02,0x00,0x06,0xB9},{0xAA,0x07,0x02,0x00,0x07,0xBA},{0xAA,0x07,0x02,0x00,0x08,0xBB},{0xAA,0x07,0x02,0x00,0x08,0xBC},{0xAA,0x07,0x02,0x00,0x0A,0xBD}}由于如上述數(shù)組所示的每組之中的第五個數(shù)據(jù)比較好進行分辨特定語音和進行調(diào)用,因此在本系統(tǒng)設計中只需要使用函數(shù)u3_printf對其行數(shù)即data數(shù)組的[10]進行操作,對其輸入不同的數(shù)據(jù)來改變行數(shù)即可播報出特定的語音信息。5公交車自動播報系統(tǒng)硬件調(diào)試和誤差分析5.1公交車自動播報系統(tǒng)硬件調(diào)試本公交車自動播報系統(tǒng)設計主要是由微控制器模塊、GPS定位模塊、語音播報模塊和顯示屏模塊連接而成,因此本系統(tǒng)的硬件調(diào)試先是需要分別對這幾個模塊進行不同模塊的調(diào)試。首先是GPS定位模塊的調(diào)試,先給GPS定位模塊進行供電,然后將天線接上GPS定位模塊的天線接口,接下來就可以在寬闊無遮擋的環(huán)境下進行調(diào)試,在前面的部分中說過GPS定位模塊的兩種狀態(tài),調(diào)試模塊時即可通過這兩種狀態(tài)來確認模塊是否在進行工作,當GPS定位模塊上的指示燈閃爍時,證明該模塊已經(jīng)在正常工作,然后將模塊接上微控制器,將GPS定位模塊內(nèi)部數(shù)據(jù)提取出來,如果提取出來的數(shù)據(jù)沒有問題,則GPS定位模塊調(diào)試完成。然后是對語音播報模塊的調(diào)試,先在語音播報模塊的觸發(fā)輸入口進行信號輸入,然后將與串口相關的端口,用USB線轉TTL模塊線連接上電腦,接著用語音播報模塊廠家自帶的串口調(diào)試軟件對語音播報模塊進行調(diào)試,看其是否能夠正常發(fā)出聲音,至此則語音播報模塊的調(diào)試完成。接下來是顯示模塊的調(diào)試,先對串口屏模塊進行通電,測試前面制作的顯示文件能否被正常的顯示出來,然后用微控制器模塊的HMISendFont函數(shù)發(fā)送某些數(shù)據(jù)進入串口屏中,看其能否進行的文字切換,如果這兩項測試都沒有問題,則顯示模塊的調(diào)試完成。各個模塊的調(diào)試在前面都已經(jīng)調(diào)試完畢,各個模塊都能夠正常工作,沒有出現(xiàn)問題以后,將各個模塊按照電路原理圖焊接在制作好的PCB板子上,對照電路原理圖無誤后,檢查PCB板上的焊接情況,檢查是否出現(xiàn)虛焊等焊接問題。接著用萬用表的蜂鳴檔對電路板連接進行測試,看看電路板上所有的導線是否都能夠正常導通。測試電路板上的導通能力無誤后,即可對整個系統(tǒng)進行通電測試,對板子通電以后,如果各個模塊都沒有出現(xiàn)異常,GPS定位模塊指示燈正常亮起,接收到信號以后閃爍,則說明整個系統(tǒng)設計的基礎硬件調(diào)試完成。經(jīng)過實物測試,發(fā)現(xiàn)各個模塊之間沒有出現(xiàn)異常,GPS定位模塊的指示燈正常亮起,到空曠地方一到兩分鐘指示燈開始閃爍,即表示GPS定位模塊可以正常接收到GPS數(shù)據(jù),智能串口屏顯示出所制作的完成的顯示文件。之后將前往所需要測試的特定站點進行實地測試數(shù)據(jù),由于程序需要判斷其是否在一個特定的范圍內(nèi),因此每一個站點處都需要測試四個點,按照矩形方式進行測試和記錄點,其數(shù)據(jù)如表5-1所示:表5-1實地測試站點經(jīng)緯度信息表科技樓站相思湖站迎賓橋站(11024.8673,2519.04402)(11024.8623,2519.03172)(11025.0027,2518.93005)(11024.9902,2518.93105)(11024.8788,2518.69651)(11024.8685,2518.69752)(11024.8812,2519.04528)(11024.8806,2519.05229)(11024.9912,2518.95140)(11024.9836,2518.95197)(11024.8808,2518.69331)(11024.8690,2518.68307)第十一教學樓站D區(qū)宿舍樓站球類館站(11024.7332,2518.89403)(11024.7403,2518.89698)(11024.4161,2518.84070)(11024.4142,2518.85162)(11024.5159,2519.07363)(11024.5256,2519.07322)(11024.7366,2518.88777)(11024.7510,2518.89453)(11024.4340,2518.84060)(11024.4337,2518.85162)(11024.5143,2519.0613)(11024.5243,2519.06004)測試完成經(jīng)緯度信息以后,即可在微控制器程序里面選取范圍內(nèi)區(qū)間最大的經(jīng)緯度完成對GPS定位數(shù)據(jù)的判斷,可以得到如表5-2所示的各個站點的經(jīng)緯度范圍。則微控制器程序中可用此表數(shù)據(jù)進行對站點位置的判斷。表5-2各個站點的經(jīng)緯度范圍站點名稱經(jīng)度范圍緯度范圍科技樓站11024.8623-11024.88122519.03172-2516.05129相思湖站11024.9836-11025.00202518.93005-2518.95197迎賓橋站11024.8685-11024.88212518.68307-2518.70441第十一教學樓站11024.7332-11024.75102518.88764-2518.89698D區(qū)宿舍樓站11024.4142-11024.43402518.84060-2518.85162球類館站11024.5143-11024.52562519.06004-2519.07363經(jīng)過實際測試,這六個站點的位置與之前測試的范圍相差很小,幾乎可以準確做到在設計所要求的偏差范圍內(nèi),能夠符合設計要求。5.2公交車自動播報系統(tǒng)誤差分析本設計由于使用了GPS定位模塊,GPS模塊在接收GPS定位數(shù)據(jù)時,會出現(xiàn)微小的偏差。在實地測試過程中,便可以發(fā)現(xiàn)出這一點,在測試經(jīng)緯度過程中,當在一個位置不動時,顯示出來的GPS定位數(shù)據(jù)的最后一位數(shù)值還是會出現(xiàn)細微的波動??梢娫诒驹O計的GPS數(shù)據(jù)可能會出現(xiàn)小小的誤差,可能會稍微的對實際結果產(chǎn)生影響,其誤差在5m左右,可能會出現(xiàn)提前報站等現(xiàn)象,但此現(xiàn)象極其少見,對本設計

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論