• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于CAN總線的GPS傳感器應用開發(fā)研究

      2012-10-25 12:38:26羅發(fā)貴隋良紅
      中國測試 2012年2期
      關(guān)鍵詞:發(fā)送器子程序寄存器

      羅發(fā)貴,張 杰,隋良紅

      (1.中國測試技術(shù)研究院,四川 成都 610021;2.四川大學制造科學與工程學院,四川 成都 610065)

      0 引 言

      在汽車運行過程中,經(jīng)常需要知道汽車運行的基本情況,需要測量汽車的運行速度、運行距離、經(jīng)緯度位置以及所在地的海拔等,這些信息對于人車安全具有重要意義。將GPS技術(shù)用于這些參數(shù)的測量,可以達到期望的效果。但由于其測量數(shù)據(jù)量大,而且具有高速變化、不易采集、不易存儲數(shù)據(jù)等缺點,必須要配以高性能的傳輸總線[1]。在這種情況下,基于CAN總線的GPS汽車參數(shù)采集測量方案應運而生。

      在本項目中,將CAN總線技術(shù)應用于GPS汽車參數(shù)測量中,并用C8051F500作為主控芯片,把TJA1050作為其外加物理接口。同時輔以按鍵、顯示、存儲等功能,實現(xiàn)汽車行駛參數(shù)的高速采集測量。

      1 CAN總線及特點

      CAN是一種多主方式的串行通信總線,基本設計規(guī)范要求有高的位速率、高抗電磁干擾性,而且能夠檢測出產(chǎn)生的任何錯誤[2]。當信號傳輸距離達到10km時,CAN總線仍可提供高達50kb/s的數(shù)據(jù)傳輸速率。CAN通信協(xié)議主要描述設備之間的信息傳遞方式,CAN層的定義與開放系統(tǒng)互連模型一致。每一層與另一設備上相同的那一層通信,實際的通信發(fā)生在每一設備上相鄰的兩層,而設備只通過模型物理層的物理介質(zhì)互連[3]。

      CAN能夠使用多種物理介質(zhì),例如雙絞線、光纖等,其中最常用的就是雙絞線。信號使用差分電壓傳送,2條信號線被稱為CAN_H和CAN_L,靜態(tài)時均為2.5V左右,此時狀態(tài)表示為邏輯“1”,也可以叫做“隱性”。用CAN_H比CAN_L高表示邏輯“0”,稱為“顯形”;此時,通常電壓值為:CAN_H=3.5 V,CAN_L=1.5V。CAN總線成本低,具有極高的總線利用率、很遠的數(shù)據(jù)傳輸距離(長達10km)、高速的數(shù)據(jù)傳輸速率(高達1 Mb/s)、可靠的錯誤處理和檢錯機制,發(fā)送的信息遭到破壞后,可自動重發(fā),節(jié)點在錯誤嚴重的情況下具有自動退出總線的功能。

      2 GPS系統(tǒng)

      GPS系統(tǒng)包括3部分:空間部分(GPS衛(wèi)星星座);地面控制部分(地面監(jiān)控系統(tǒng));用戶設備部分(GPS信號接收機)[4]。GPS衛(wèi)星星座和地面控制部分屬于整個系統(tǒng)的運行維持部分,由美國專門的機構(gòu)維護。通常普通用戶直接使用的僅僅是GPS信號接收機[5]。

      GPS信號接收機的任務是:能夠捕獲到按一定衛(wèi)星高度截止角所選擇的待測衛(wèi)星的信號,并跟蹤這些衛(wèi)星的運行,對所接收到的GPS信號進行變換、放大和處理,以便測量出GPS信號從衛(wèi)星到接收機天線的傳播時間,解譯出GPS衛(wèi)星所發(fā)送的導航電文,實時地計算出測站的三維位置,甚至三維速度和時間[6]。接收機硬件和機內(nèi)軟件以及GPS數(shù)據(jù)的后處理軟件包,構(gòu)成完整的GPS用戶設備[7]。GPS接收機的結(jié)構(gòu)分為天線單元和接收單元2個模塊。

      3 系統(tǒng)硬件設計

      3.1 系統(tǒng)硬件總體

      系統(tǒng)硬件主要是由C8051F500單片機、TJA1050、GPS傳感器、按鍵、顯示、打印、存儲等組成,硬件組成如圖1所示。

      圖1中,單片機C8051F500是沒有CAN接口的MCU,需要通過外加TJA1050作為物理通信接口,單片機負責數(shù)據(jù)的處理計算工作,是整個系統(tǒng)的主要部分。TJA1050是控制器區(qū)域網(wǎng)絡(CAN)協(xié)議控制器和物理總線之間的接口,可以為總線提供不同的發(fā)送性能,為CAN控制器提供不同的接收性能。GPS傳感器是系統(tǒng)的主要傳感器單元,負責對被測量的測量。

      3.2 基于C8051F500的CAN實現(xiàn)

      Silicon Lab公司的C8051F500單片機內(nèi)部集成了CAN控制器,符合Bosch規(guī)范2.0A(基本CAN)和2.0B(全功能CAN),方便了CAN網(wǎng)絡通信系統(tǒng)的設計。由于C8051F500的高集成度,只需少量外圍測量電路便可組成集數(shù)據(jù)采集、控制和通信功能于一體的單片機系統(tǒng),同時還可提高系統(tǒng)的整體可靠性。另外,C8051F500內(nèi)核與普通51系列兼容,且指令簡單易學,可縮短系統(tǒng)研發(fā)周期[8]。圖2是基于C8051F500的CAN硬件電路實現(xiàn)原理圖。

      圖1 系統(tǒng)硬件組成框圖

      圖2 CAN功能節(jié)點組成原理圖

      3.2.1 C8051F500單片機

      單片機內(nèi)部集成了CAN控制器,其與收發(fā)模塊(CTM1050)共同構(gòu)成CAN節(jié)點模塊。其中CAN控制器包括CAN核、消息存儲器、消息處理器和控制寄存器。由于其MCU無法直接訪問消息RAM,因此有兩組位于控制寄存器的接口寄存器被用來控制CPU對消息RAM的訪問。接口寄存器通過緩存?zhèn)鬏攲⒁獋鬏數(shù)臄?shù)據(jù),避免了CPU訪問消息RAM時同CAN消息的發(fā)送和接收之間的沖突[9]。在單個傳輸時,一個完整的消息對象或者消息對象的一部分在消息RAM和IFx消息緩沖寄存器之間進行可靠傳輸。

      3.2.2 TJA1050高速CAN收發(fā)器

      TJA1050是CAN控制器與CAN物理總線之間的接口芯片,是CAN協(xié)議控制器和物理總線之間的接口,它最初應用于波特率范圍在60 K波特到1 M波特的高速自動化應用中。TJA1050可以為總線提供不同的發(fā)送性能,為CAN控制器提供不同的接收性能。

      TJA1050有一個電流限制電路,保護發(fā)送器的輸出級,使由正或負電源電壓意外造成的短路不會對TJA1050造成損壞(此時的功率消耗增加)。TJA1050還有一個溫度保護電路,當與發(fā)送器連接點的溫度超過165℃時,會斷開與發(fā)送器的連接。因為發(fā)送器消耗了大部分的功率,所以這個集成電路的功率消耗和溫度會較低[10],但是此時IC的其他功能仍繼續(xù)工作。當引腳TXD變高電平,發(fā)送器由關(guān)閉狀態(tài)復位。當總線短路時,尤其需要這個溫度保護電路。

      在汽車通電的瞬間,引腳 CAN_H和CAN_L也受到保護,如圖3所示。

      圖3 自動的暫態(tài)過程測試電路圖

      當引腳 TXD由于硬件和/或軟件程序的錯誤而持久為低電平時,“TXD控制超時”定時器電路可以防止總線進入這種持久的支配狀態(tài)(阻塞所有網(wǎng)絡通信),這個定時器是由引腳TXD的負跳變邊沿觸發(fā)。如果引腳TXD的低電平持續(xù)時間超過內(nèi)部定時器的值,發(fā)送器會被禁能,使總線進入隱性狀態(tài),定時器由引腳TXD的正跳變邊沿復位。

      4 項目軟件設計

      在CAN初始化時會打開CAN中斷,即CAN總線上有數(shù)據(jù)要發(fā)送時會產(chǎn)生一個中斷,此時由單片機的MCU來判斷其優(yōu)先級是否為最優(yōu),若是,則響應其中斷。此時單片機內(nèi)的CAN處理器會控制消息緩存寄存器寫入數(shù)據(jù),并按照協(xié)議對消息進行處理;等發(fā)送請求中斷產(chǎn)生,響應中斷并發(fā)送處理好的數(shù)據(jù),此為一次數(shù)據(jù)收發(fā)過程[11]。CAN總線數(shù)據(jù)收發(fā)流程如圖4所示。

      4.1 系統(tǒng)初始化

      系統(tǒng)初始化主要包括端口、時鐘和CAN控制器的初始化。其一般步驟如下:

      (1)將SFRPAGE寄存器設置為CAN0_PAGE;

      (2)將CAN0CN寄存器中的INIT和CCE位設置為‘1’;

      (3)設置位定時寄存器和BRP擴展寄存器中的時序參數(shù);

      (4)初始化每個消息對象或?qū)⑵銶sgVal位設置為 NOTVALID(無效);

      (5)將 INIT 位清零。

      其初始化部分程序如下:

      4.2 收發(fā)程序

      系統(tǒng)初始化完成后,在主程序中調(diào)用接收子程序,由接收子程序來響應總線上的消息接收請求命令。接收子程序要比發(fā)送子程序復雜一些,因為在處理接收報文的過程中,還要對諸如總線關(guān)閉、錯誤報警、接收溢出等情況進行處理。下面給出部分接收子程序:

      發(fā)送子程序負責節(jié)點報文的發(fā)送,發(fā)送時用戶只需將處理好的待發(fā)送數(shù)據(jù)按特定的格式組合成一幀報文,送入發(fā)送緩存區(qū)中,然后啟動發(fā)送即可。

      5 測試實驗與數(shù)據(jù)分析

      本項目是基于CAN總線的GPS傳感器應用,用來實時測量汽車運行中的相關(guān)動態(tài)參數(shù)。試驗前,將傳感器天線置于汽車外部(吸附于車頂),通過RF傳輸線與車內(nèi)儀器主機連接。儀器開機啟動后,當汽車運行時,儀器可以測試出汽車實時的行駛速度、里程、所在位置的經(jīng)緯度值、大地坐標以及海拔高度等參數(shù)。經(jīng)過實車道路測試,隨機列舉了4組等精度重復測量數(shù)據(jù),如表1所示。

      表1 實車路試數(shù)據(jù)

      由多次重復測量數(shù)據(jù)經(jīng)計算分析,通過標準偏差公式:

      式中:Σ——總和;

      可知表1中緯度、經(jīng)度、海拔、大地坐標X、Y的穩(wěn)定性分別為:5.776 2×10-10,6.691 67×10-11,0.870 92,0.87093,0.083833。通過該組數(shù)據(jù),并與更高精度已知數(shù)據(jù)相比較分析后,可以看出系統(tǒng)的測量結(jié)果達到了既定的精度和穩(wěn)定性要求。

      6 結(jié)束語

      本項目研究成果的實際使用與測試實驗數(shù)據(jù)證明,系統(tǒng)可以達到對汽車經(jīng)緯度、海拔、速度、里程及大地坐標X/Y的準確測量,實現(xiàn)了對汽車動態(tài)運行參數(shù)測量的實時性和靈活性。同時,拓展了基于CAN總線的傳感器在汽車領(lǐng)域中的應用,數(shù)據(jù)傳輸準確靈活,具有較好的實用意義。相比于傳統(tǒng)的傳輸方式,CAN總線減少了數(shù)據(jù)沖突和丟失,提高了信息的準確性和精確度;因此,項目具有較好的工程背景和實際應用價值。

      [1]高峰,王睿,王建.CAN總線型多功能汽車行駛記錄儀[J].廣西工學院學報,2005(4):6-9.

      [2]王黎明,夏立,邵英,等.CAN現(xiàn)場總線系統(tǒng)的設計與應用[M].北京:電子工業(yè)出版社,2008.

      [3]楊春杰,王曙光,亢紅波,等.CAN總線技術(shù)[M].北京:北京航空航天大學出版社,2010.

      [4]楊戰(zhàn)輝,蒙曉鋒,鹿曉東,等.GPS精密單點測量解算方法應用[J].測繪技術(shù)裝備,2010(3):28-30.

      [5]雷建朝,郭強,姜仕利.GPS測量與數(shù)據(jù)處理中一些問題的研究與總結(jié)[J].西北水電,2006(3):15-17.

      [6]趙軍祥,張其善,常青,等.高動態(tài)GPS衛(wèi)星信號模擬器關(guān)鍵技術(shù)分析及應用[J].電訊技術(shù),2003(3):49-54.

      [7]劉美生.全球定位系統(tǒng)及其應用綜述(三)——GPS的應用[J].中國測試技術(shù),2007(1):5-11.

      [8]鮑可進.C8051F單片機原理及應用[M].北京:中國電力出版社,2006.

      [9]吳志玲,靳鴻,馮彥君.基于C8051F500的CAN總線通信系統(tǒng)的節(jié)點設計[J].電子測試,2011(8):36-37,99.

      [10]于曉光.CAN總線隔離器的設計與應用[J].電子設計工程,2009(12):1-4.

      [11]原奕.Visual C++實踐與提高——數(shù)據(jù)庫開發(fā)與工程應用[M].北京:中國鐵道出版社,2006:277-278.

      猜你喜歡
      發(fā)送器子程序寄存器
      移頻發(fā)送器冗余切換設計研究
      Lite寄存器模型的設計與實現(xiàn)
      計算機應用(2020年5期)2020-06-07 07:06:44
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      用于獲取車輛中的旋轉(zhuǎn)構(gòu)件的旋轉(zhuǎn)角度的傳感器組件
      傳感器世界(2017年4期)2017-03-23 10:50:49
      淺談子程序在數(shù)控車編程中的應用
      從兩起故障談ZPW-2000發(fā)送盒報警檢測的改進
      子程序在數(shù)控車加工槽中的應用探索
      西門子840D系統(tǒng)JOG模式下PLC調(diào)用并執(zhí)行NC程序
      簡化編程與子程序嵌套的應用
      科技傳播(2011年24期)2011-08-29 05:39:46
      高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應用
      泸溪县| 大新县| 新干县| 东乡县| 天等县| 高雄县| 墨玉县| 阳原县| 乐亭县| 乡宁县| 湖州市| 旌德县| 定南县| 池州市| 宁海县| 海门市| 阳曲县| 青河县| 宁晋县| 华阴市| 利辛县| 奇台县| 宁强县| 刚察县| 台中县| 类乌齐县| 柳江县| 荣成市| 通辽市| 云龙县| 鄄城县| 岫岩| 佛山市| 定襄县| 桂林市| 雅安市| 凤阳县| 习水县| 海门市| 监利县| 留坝县|