基於ARM9 Linux平台的車載導航系統設計

2021-04-25 23:45:50 字數 3472 閱讀 2626

1. 前言

近 年來,隨著國民經濟的迅速發展,人民生活水平的日益提高,各種機動車輛的數量急劇增加,同時對汽車導航系統的需求數量也急劇增加。本文採用了基於 arm9-linux 平台的嵌入式系統作為系統的控制平台,提高系統的效能、整合度以及可擴充套件性;運用gps 定位技術和先進的gprs 無線通訊技術相結合的方案,以實現車輛電子地圖導航和短訊息報警;通過lcd 模組的設計實現了車輛各種資訊的靈活顯示,豐富了人機互動介面,使得系統更加智慧型化。本文所研究的車載gps 導航系統是智慧型交通系統(its,intelligent transportation system)的乙個重要分支,對解決城市交通問題具有重要意義。

2. gps 全球定位系統(1)

gps(global positioning system)系統包括三大部分:空間部分—衛星星座、地面控制部分—地面監控系統和使用者裝置部分-訊號接收機。gps 全球定位系統是隨著現代科學技術的發展而建立起來的一種高精度、全天候和全球性的無線電導航定位、定時的多功能系統。它利用位於距地球2 萬多公里高、由24 顆人造衛星組成的衛星網,向地球源源不斷的發射定位訊號。地球上的任何一台gps 接收機,只要接收到任意四顆以上的衛星訊號,經過計算後,就可以得到gps 接收機的位置(經度、緯度、高度)、時間和運動狀態等資訊。gps 系統具有高精度、全天候、高效率、多功能、操作簡便、應用廣泛等特點。

3.系統總體設計

系統主要實現汽車導航和基於手機的車輛防盜功能。 整個系統包括兩大部分:一是車主手機,二是車載部分。手機部分只是一部手機,用來收發短訊息。車載部分主要實現車量的定位導航功能。車載部分具有兩種工作 模式:第一種為「駕駛模式」,這種模式落車主自己駕駛汽車,車主可以方便的利用車載導航系統的人機互動介面進行導航;當車主需要離開自己的汽車時,按下「 安全模式」鍵,啟動第二種工作模式,啟動該模式後,系統不斷利用gps定位技術,判斷車輛的當前位置是否發生變化。如果有人偷盜車輛,駕駛汽車後汽車位置 發生變化,此時系統發現汽車位置的經緯度發生變化後,系統將通過gprs 網路實時地向車主傳送短訊息報告汽車當前所在位置。

4.系統硬體設計

本系統的硬體主要由主控模組和擴充套件模組兩大部分組成,其中擴充套件模組主要包括gps模組、lcd 模組和gprs 模組系統硬體的結構框圖如圖1 所示:

4.1 主控模組設計(2)

主 控模組設計是硬體設計的核心,其主要包括電源電路、時鐘電路、復位電路、儲存模組電路、jtag 介面電路、序列口電路、lcd 介面、spi 介面以及按鍵電路的設計。本文的處理器採用三星公司的s3c2410,主控模組通過序列口、spi 介面、lcd 介面與擴充套件模組相連線構成整個硬體系統。

4.2 gps 模組選用

gps 模組主要完成gps 定位資訊的接收和處理。選用的就是garmin 公司的gps25-lvc 接收機。gps25 的oem 介面訊號如表1 所示:

4.3 gprs 模組選用

gprs 模組可以用來進行無線通訊,包括語音通訊、收發簡訊息以及無線上網等。本系統選用mc35,主要使用其來完成短訊息的功能。其硬體連線如圖2 所示:

5.軟體設計

車載導航系統的硬體為基本功能和擴充套件功能的實現奠定了牢固的基礎,軟體系統的設計,就是要充分利用硬體平台提供的資源,實現業務流程的有序執行,是整個系統設計的重要組成部分。軟體部分的設計主要有(3):

(1)建立交叉編譯環境;(2)bootloader 的移植;(3)linux 作業系統包括驅動的移植; (4)gps 定位模組程式設計; (5) gprs 通訊模組程式設計;(6) 顯示介面設計,本文基於minigui實現了上述介面的設計;

5.1 gps 模組軟體設計

gps 模組主要完成車輛位置資訊的採集、處理與儲存。由於gps 採用序列口通訊,所以本文在序列口通訊的基礎上實現了對gps 資料的接收、處理和儲存。該模組軟體設計的基本思想是這樣的:首先接收完整的nmea0183 語句,然後提取相關的資料,如時間、經緯度、速度等,再將這些資料送去顯示或者傳送出去,並且儲存以便日後檢視。

本文系統選用gps25-lvc 串列埠1 輸出的nmea0183 語句。格式如:$gprmc,082 004,a,3990.347 2,n,11 953.099 0 e,000.0,000.0 130 807 002.5,w*71,表示目前的時間是07 年08 月13 日8 點20 分04 秒(這是utc 時間,不是本地時間,兩者大約相差8 小時),位置是北緯39 度90.347 2 分、東經119 度53.099 0 分,速度為o。

5.2 gprs 無線通訊模組的軟體設計

在對mc35模組的軟體控制中,主要使用的是標準v.25 ter at命令,為系統開發中所使用到的相關at命令如表2所示(4)。

at命令的具體的執行過程如下:

atok

at +csca = +8613800773500/ r

okat +cmgf = 1 / r

okat +cmgs = + 861348137…/ r

> your car is being stolen! /x1a

+cmgs: 206

ok在 執行報警功能時,待執行完以上步驟後,報警短訊息即發出,車主手機將接收到一條簡訊,其內容為「your car is being stolen!」。然後,mc35模組在mcu的控制下去相應儲存區中實時讀取當前的地理位置,以短訊息的形式不斷報告給車主,以幫助車主和**追繳車 輛。

5.3介面顯示的軟體設計(5)

嵌入式應用的開發是在宿主機(如pc機)上完成的,在宿主機上調試執行嵌入式應用,再將嵌入式應用編 譯鏈結成可在目標平台上執行的二進位制目標**。由於用到了minigui庫,所以要將minigui庫編譯鏈結成可在目標平台上執行的二進位制目標**庫。 當乙個minigui應用被部署到目標平台上並可靠執行時,開發過程才結束。定位資訊介面顯示通過gps接收的車輛的位置等資訊,再通過擴充套件電子地圖以便 更直觀地顯示這些資訊。圖3描述了基於

minigui的軟體開發流程:

基於arm目標平台的建立

tar xfz qt embedded 2.3.10 free.tar.gz 解壓後qt 2.3.10 改名為qt 2.3.10 target export qtedir pwd qt 2.3.10 target tar xfz qt x11 2.3.2.tar.gz export qt2dir p...

基於ARM9和Linux的嵌入式列印終端系統

張 臻碩士研究生 南京資訊工程大學601信箱,南京210044 0 引言 隨 著開放源 運動的飛速發展,linux作業系統越來越受到人們的重視。其良好的可裁減性與可移植性,卓越的效率和穩定性,以及支援多種處理器體系架構的 特點,使得linux越來越廣泛的應用於嵌入式領域。同時,arm9處理器高主頻的...

基於ARM開發平台的uboot映象編譯與燒寫

在基於arm的開發平台下,系統啟動需要核心,bootloader,根檔案系統三大塊,今天博主記錄給arm開發平台編譯並燒寫uboot的步驟 ps 在本次過程開始前,務必安裝對應版本的arm linux gcc交叉編譯器 如若不是自己設計的開發板,一般廠家會提供配套的開發原始碼,可以針對soc進行配置...