• 
    

    
    

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

      基于J1939的車載CAN總線模擬系統(tǒng)設(shè)計(jì)

      2015-05-15 06:57:10秦亞軍康維新
      應(yīng)用科技 2015年3期
      關(guān)鍵詞:圖形化界面設(shè)計(jì)上位

      秦亞軍,康維新

      哈爾濱工程大學(xué)信息與通信工程學(xué)院,黑龍江哈爾濱 150001

      基于J1939的車載CAN總線模擬系統(tǒng)設(shè)計(jì)

      秦亞軍,康維新

      哈爾濱工程大學(xué)信息與通信工程學(xué)院,黑龍江哈爾濱 150001

      針對(duì)機(jī)動(dòng)車聯(lián)網(wǎng)終端對(duì)于測(cè)試環(huán)境的需求,應(yīng)用SAE J1939協(xié)議進(jìn)行了車載CAN總線仿真環(huán)境的設(shè)計(jì)。系統(tǒng)由PC端上位機(jī)軟件和CAN總線模塊下位機(jī)組成。PC端上位機(jī)界面由跨平臺(tái)特性優(yōu)良的Qt Craetor設(shè)計(jì)開發(fā),用于設(shè)定、顯示仿真環(huán)境的車輛參數(shù)以及串口的通信;下位機(jī)方面通過MCU完成與上位機(jī)的串口通信以及通過CAN總線模塊將仿真環(huán)境的車輛參數(shù)的傳輸?shù)紺AN總線上。經(jīng)過測(cè)試,該系統(tǒng)工作穩(wěn)定,滿足本項(xiàng)目對(duì)于測(cè)試環(huán)境的要求,同時(shí)可以模擬普通的車載網(wǎng)絡(luò),具有一定的應(yīng)用價(jià)值。

      CAN總線;SAE J1939協(xié)議;Qt;車聯(lián)網(wǎng)終端

      隨著機(jī)動(dòng)車保有量的增加,產(chǎn)生了交通堵塞、事故頻發(fā)等一系列問題。車聯(lián)網(wǎng)的研究引起各國(guó)政府和相關(guān)機(jī)構(gòu)的高度重視。為了公路運(yùn)輸進(jìn)行信息化的管理,提出了車聯(lián)網(wǎng)關(guān)鍵技術(shù)的研究課題,主要涉及車聯(lián)網(wǎng)終端的研究,課題中同時(shí)需要考慮到測(cè)試環(huán)境的搭建、以及進(jìn)行車聯(lián)網(wǎng)終端系統(tǒng)測(cè)試。SAE J1939協(xié)議基于Bosch公司開發(fā)的CAN(controller area network),作為描述重型車輛現(xiàn)場(chǎng)總線的一種網(wǎng)絡(luò)應(yīng)用,被廣泛應(yīng)用于商用車輛,如大型客車和重型貨車?,F(xiàn)在大部分的測(cè)試環(huán)境大都是基于CAN- Pro協(xié)議分析平臺(tái)和CAN總線分析儀組合搭建[1],而其存在的主要問題是現(xiàn)有的CAN總線分析儀的價(jià)格較高??紤]到研究課題的現(xiàn)實(shí)需求,本系統(tǒng)通過MCU控制CAN收發(fā)器替代CAN總線分析儀,很好地降低了項(xiàng)目成本。

      1 系統(tǒng)整體結(jié)構(gòu)

      該系統(tǒng)由主要由PC端上位機(jī)和CAN節(jié)點(diǎn)收發(fā)端2部分組成,系統(tǒng)的整體結(jié)構(gòu)圖如圖1所示。

      圖1 系統(tǒng)總體結(jié)構(gòu)框圖

      上位機(jī)方面,考慮到上位機(jī)的應(yīng)用范圍,該系統(tǒng)采用Qt這樣一款跨平臺(tái)C++圖形化界面庫開發(fā)。Qt良好的跨平臺(tái)性、豐富的API以及對(duì)于第3方類的支持使得開發(fā)更為方便,同時(shí)Qt的良好封裝機(jī)制,較好的可重用性,大量的開發(fā)文檔,使其非常便于用戶開發(fā)[2]。由于在Qt庫中沒有具體的串口控制類,在系統(tǒng)中這里使用的是第3方的qextserialport類來實(shí)現(xiàn)串口通信,將上位機(jī)車輛仿真環(huán)境數(shù)據(jù)發(fā)送到MCU。下位機(jī)方面,系統(tǒng)采用MCU、MCP2515控制器及TJA1050高速CAN收發(fā)器組合的設(shè)計(jì),進(jìn)行與上位機(jī)的通信和CAN報(bào)文的發(fā)送[3]。

      2 系統(tǒng)硬件設(shè)計(jì)

      系統(tǒng)采用STC89C52RC作為主控芯片,其作為一種低功耗、高性能CMOS 8位微控制器,具有8KB系統(tǒng)可編程Flash存儲(chǔ)器,很好地滿足系統(tǒng)編程的需求。主控芯片通過RS-232串口芯片接收串口數(shù)據(jù)并通過CAN模塊進(jìn)行報(bào)文發(fā)送,CAN總線模塊采用Microchip的MCP2515獨(dú)立CAN協(xié)議控制器芯片和Philips的CAN高速收發(fā)器TJA1050進(jìn)行組合。MCP2515完全支持CANV2.0B技術(shù)規(guī)范,并能進(jìn)行標(biāo)準(zhǔn)幀和擴(kuò)展幀的收發(fā),其自帶2個(gè)驗(yàn)收屏蔽寄存器和6個(gè)濾波寄存器,可以進(jìn)行報(bào)文有效性過濾[4]。MCU通過SPI接口與該器件進(jìn)行連接,使用標(biāo)準(zhǔn)的SPI讀/寫指令以及專門的SPI命令來讀/寫所有的寄存器[5]。TJA1050作為物理媒體連接子層連接于協(xié)議控制器和物理傳輸媒體之間,具有較好的電磁兼容性,電磁輻射極低,電磁抗干擾性極高,同時(shí)不上電的節(jié)點(diǎn)總線呈現(xiàn)無源特性。TJA1050可以為總線提供差動(dòng)發(fā)送性能,為CAN控制器提供差動(dòng)接收性能;同時(shí)TJA1050具有保護(hù)總線引腳,可防止汽車環(huán)境中的瞬態(tài)干擾,更好的應(yīng)用于汽車CAN總線的環(huán)境中[6]。具體硬件電路如圖2所示。

      圖2 系統(tǒng)硬件電路圖

      3 系統(tǒng)軟件設(shè)計(jì)

      系統(tǒng)軟件由上位機(jī)軟件和下位機(jī)軟件2部分組成。上位機(jī)主要包括基于Qt的串口通信程序和基于Qt的圖像化界面設(shè)計(jì)。由于在Qt中并沒有特定的串口控制類,所以基于Qt的串口通信程序使用第3方寫的qextserialport類進(jìn)行開發(fā),通信分為手動(dòng)發(fā)送和自動(dòng)發(fā)送。Qt的圖形化界面的設(shè)計(jì)主要是基于qwt控件進(jìn)行儀表盤的設(shè)計(jì),并完成發(fā)送數(shù)據(jù)的實(shí)時(shí)調(diào)整。下位機(jī)設(shè)計(jì)主要是以MCU作為控制芯片,完成串口數(shù)據(jù)的接收、解碼,并提取發(fā)送到CAN總線上。

      3.1 上位機(jī)程序設(shè)計(jì)

      上位機(jī)程序主要包括串口通信程序和圖形化界面設(shè)計(jì)2部分。

      3.1.1 串口通信程序設(shè)計(jì)

      為了實(shí)現(xiàn)Qt下串口通信的實(shí)現(xiàn),這里基于第3方qextserialport類進(jìn)行開發(fā)[7],下面將關(guān)鍵步驟介紹如下:

      1)由于Qt庫沒有特定的串口控制類,所以首先要下載qextserialport-1.2win-alpha.zip,并進(jìn)行解壓。由于該上位機(jī)是運(yùn)行在Windows下,這里需要將相應(yīng)的文件拷貝到工程當(dāng)中,在Windows下只需要使用其中的6個(gè)文件:qextserialbase.cpp和qextserial-base.h,qextserialport.cpp和qextserialport.h,

      win_qextserialport.cpp和win_qextserialport.h。

      2)打開QtCreator,新建工程,將上述6個(gè)文件復(fù)制到工程文件夾中,并在工程中添加這6個(gè)文件。此時(shí),串口通信的開發(fā)環(huán)境搭建完成。

      3)接下來進(jìn)行串口的設(shè)置的界面設(shè)計(jì),包括串口號(hào)、波特率、數(shù)據(jù)位、校驗(yàn)位和停止位。

      4)通過信號(hào)/槽機(jī)制編寫各個(gè)按鈕函數(shù),如打開串口按鈕、關(guān)閉串口按鈕,自動(dòng)發(fā)送按鈕對(duì)應(yīng)的函數(shù)的編寫。

      5)串口讀寫數(shù)據(jù)函數(shù)的編寫,為了方便并有效地發(fā)送數(shù)據(jù),這里通過自定義報(bào)文進(jìn)行發(fā)送并增加校驗(yàn)位,減少誤碼率。

      串口通信圖像化界面如圖3所示。

      圖3 串口通信圖形化界面

      3.1.2 圖形化界面設(shè)計(jì)

      在圖形化界面設(shè)計(jì)上,為了更直觀地顯示參數(shù),這里采用基于qwt的儀表盤設(shè)計(jì),下面將圖形化界面設(shè)計(jì)關(guān)鍵步驟介紹如下[8]。

      1)下載最新的qwt,這里下的是qwt-6.1.0.zip,并解壓后編譯,配置。

      2)注意在使用時(shí),需要設(shè)置一下pro文件,在pro文件下加入如下語句:

      include(C:/Qt/qwt-6.1.0/qwtfunctions.pri)

      DEFINES?=QWT_DLL

      CONFIG+=qwt

      INCLUDEPATH+=C:/Qt/qwt-6.1.0/src

      DEPENDPATH+=C:/Qt/qwt-6.1.0/src

      qwtAddLibrary(qwt)

      3)這里通過對(duì)QwtDial控件參數(shù)的配置獲取合適的儀表盤,如車速表、轉(zhuǎn)速表、油量表和油壓表等。并且通過QwtWheel控件進(jìn)行數(shù)據(jù)的調(diào)整。

      3.2 下位機(jī)軟件設(shè)計(jì)

      下面主要針對(duì)下位機(jī)軟件的設(shè)計(jì)流程進(jìn)行分析[9]。如圖4所示,當(dāng)函數(shù)從主函數(shù)開始運(yùn)行時(shí)首先進(jìn)行初始化程序,其包括串口初始化init_serial()來完成串口工作方式、波特率、數(shù)據(jù)位的設(shè)置,CAN模塊初始化Init_Can()來完成Mcp2515工作方式、通信速率、采用中斷方式的設(shè)置,采用串口中斷方式進(jìn)行上位機(jī)發(fā)送數(shù)據(jù)的接收,主函數(shù)對(duì)接收的報(bào)文數(shù)據(jù)進(jìn)行解析,并將解析后的CAN信息按相應(yīng)節(jié)點(diǎn)發(fā)送到CAN總線上[10]。

      圖4 軟件流程

      4 系統(tǒng)測(cè)試

      將所有硬件模塊連接好,各CAN節(jié)點(diǎn)的CAN_H端接在一起,CAN_L端接在一起,將車聯(lián)網(wǎng)系統(tǒng)連接本系統(tǒng)進(jìn)行測(cè)試。

      首先如圖5所示,發(fā)送的數(shù)據(jù)為車速60 km/h、轉(zhuǎn)速3 988 r/min、油量60%、油溫120℃、油壓600 kPa。將這些數(shù)據(jù)處理成相應(yīng)的格式進(jìn)行串口發(fā)送,其格式為“$,油溫,油壓,油量,油量,轉(zhuǎn)速,?”,對(duì)應(yīng)的數(shù)據(jù)格式為“$,120,0600,060,060,3988,?”。

      圖5 上位機(jī)發(fā)送數(shù)據(jù)顯示界面

      MCU通過串口接收到數(shù)據(jù)后進(jìn)行解析,并以對(duì)應(yīng)的SAE J1939節(jié)點(diǎn)進(jìn)行發(fā)送,發(fā)送的相應(yīng)節(jié)點(diǎn)信息如表1所示。

      表1 模擬汽車節(jié)點(diǎn)信息

      這里用項(xiàng)目中車聯(lián)網(wǎng)系統(tǒng)進(jìn)行接收本系統(tǒng)發(fā)送的CAN數(shù)據(jù)進(jìn)行測(cè)試,車聯(lián)網(wǎng)系統(tǒng)基于嵌入式系統(tǒng)開發(fā),用MCP2515模塊接收數(shù)據(jù),并顯示在Qt界面上,顯示結(jié)果如圖6所示。同時(shí)進(jìn)行了自動(dòng)發(fā)送測(cè)試,在上位機(jī)修改數(shù)據(jù)可以實(shí)時(shí)地顯示在車輛網(wǎng)系統(tǒng)上,通過長(zhǎng)時(shí)間車聯(lián)網(wǎng)終端的顯示,可以很直觀地測(cè)試了系統(tǒng)的準(zhǔn)確性、穩(wěn)定性和可靠性。

      圖6 車聯(lián)網(wǎng)系統(tǒng)顯示界面

      5 結(jié)束語

      本系統(tǒng)模擬了基于SAE J1939的車載CAN總線,充分利用Qt的圖形化界面編程的良好封裝機(jī)制,結(jié)合signals/slots機(jī)制和豐富的API,降低了用戶開發(fā)難度,更簡(jiǎn)單快捷完成串口通信和圖形化界面的開發(fā)。同時(shí)其豐富的可擴(kuò)展性使得圖形化界面更加直觀。本系統(tǒng)的工作較為直觀,并在充分滿足功能的同時(shí)大大的降低了研發(fā)成本,經(jīng)過測(cè)試該系統(tǒng)性能可靠穩(wěn)定,很好地滿足車聯(lián)網(wǎng)系統(tǒng)對(duì)于測(cè)試環(huán)境的要求,另外對(duì)該系統(tǒng)軟件進(jìn)行包裝,能夠在window系統(tǒng)下良好運(yùn)行。

      本系統(tǒng)設(shè)計(jì)在滿足項(xiàng)目需要的同時(shí),還可以應(yīng)用于簡(jiǎn)單汽車網(wǎng)絡(luò)的模擬和CAN總線培訓(xùn)教學(xué)。在整個(gè)系統(tǒng)的開發(fā)過程中,可以很好地了解并熟悉車輛儀表盤的設(shè)計(jì)和基于J1939的車輛CAN通信。

      [1]吳偉斌,李禮夫,劉落實(shí),等.基于J1939的汽車CAN總線教學(xué)實(shí)驗(yàn)系統(tǒng)[J].微計(jì)算機(jī)信息,2008,6(2):274-276.

      [2]吳迪.零基礎(chǔ)學(xué)Qt4編程[M].北京:北京航空航天大學(xué)出版社,2010:10-28.

      [3]許勇,廖爽,趙檢群,等.基于SAE J1939協(xié)議的發(fā)動(dòng)機(jī)數(shù)據(jù)采集顯示系統(tǒng)[J].桂林電子科技大學(xué)學(xué)報(bào),2013,33(3):205-209.

      [4]龔文,張輝,陳超.基于CAN總線的電動(dòng)汽車車載監(jiān)控終端[J].計(jì)算機(jī)與現(xiàn)代化,2013(11):192-195.

      [5]謝桂波.基于SPI的CAN總線控制器與MCS-51單片機(jī)的接口設(shè)計(jì)[J].電子設(shè)計(jì)應(yīng)用,2010(1):50-52.

      [6]邢洋,李立偉,張洪偉.基于STM32單片機(jī)的CAN總線分析儀的設(shè)計(jì)[J].青島大學(xué)學(xué)報(bào):工程技術(shù)版,2013,28(1):19-21.

      [7]霍亞飛.Qt編寫串口通信程序全程圖文講解[EB/OL].[2014-05-08].http://blog.csdn.net/yafeilinux/article/de-tails/4717706.

      [8]王旭峰.基于嵌入式技術(shù)的風(fēng)機(jī)運(yùn)行狀態(tài)在線監(jiān)測(cè)系統(tǒng)開發(fā)[D].北京:北京工業(yè)大學(xué),2012:45-46.

      [9]陳云芳.基于ARM-Linux的車聯(lián)網(wǎng)終端技術(shù)研究[D].哈爾濱:哈爾濱工程大學(xué),2013:61-65.

      [10]SAE J1939-71,Vehicle Application Layer[S].

      Design of CANBus simulation environment for vehicles based on J1939

      QINYajun,KANGWeixin
      College of Information and Communication Engineering,Harbin Engineering University,Harbin 150001,China

      Aiming at the demand of Internet of vehicles terminal for the test environment,a simulation environment of vehicle CANbusbased on SAE J1939 protocolwas designed.The system is composed of upper computer software on PC and lower computer of CANbusmodule.The upper computer software interface is designed by QtCreatorwith excellent cross-platform features,it sets and displays vehicle parameters of simulation system and communicates with a serial port.The lower computer platform communicates with the PC through serial ports by MCU and sends the vehicle parameters by CANbusmodule.The test results show that the system can work stably,meeting the re-quirements of the project for the testenvironment very well,and can simulate normal on-board network at the same time.The system has a certain application value in the vehicle communication system.

      CANBus;SAE J1939 protocol;Qt;Internetof vehicles terminal

      TP368.5

      A

      1009-671X(2015)03-013-04

      10.3969/j.issn.1009-671X.201404015

      2014-07-07.

      日期:2015-04-20.

      黑龍江省交通運(yùn)輸廳基金資助項(xiàng)目(G084812068).作者簡(jiǎn)介:秦亞軍(1990-),男,碩士研究生;康維新(1963-),男,教授,博士生導(dǎo)師.

      康維新,E-mail:kangweixin@hrbeu.edu.cn.

      http://www.cnki.net/kcms/detail/23.1191.U.20150420.1012.006.html

      猜你喜歡
      圖形化界面設(shè)計(jì)上位
      《京燕兒》APP界面設(shè)計(jì)
      大眾文藝(2023年22期)2023-12-10 04:27:18
      中醫(yī)養(yǎng)生APP界面設(shè)計(jì)
      大眾文藝(2022年19期)2022-10-19 08:18:18
      “共享員工”平臺(tái)界面設(shè)計(jì)
      包裝工程(2022年14期)2022-07-28 07:07:00
      面向智能手機(jī)的UI界面設(shè)計(jì)
      特斯拉 風(fēng)云之老阿姨上位
      車迷(2018年12期)2018-07-26 00:42:22
      LKJ自動(dòng)化測(cè)試系統(tǒng)圖形化技術(shù)研究
      “三扶”齊上位 決戰(zhàn)必打贏
      基于ZigBee和VC上位機(jī)的教室智能監(jiān)測(cè)管理系統(tǒng)
      運(yùn)用圖形化聽寫式復(fù)習(xí),構(gòu)建高效地理課堂
      以新思路促推現(xiàn)代農(nóng)業(yè)上位
      普安县| 海阳市| 铜鼓县| 衡阳市| 准格尔旗| 常宁市| 黑山县| 钦州市| 利津县| 大田县| 永和县| 平顺县| 怀集县| 泰和县| 栾城县| 潮安县| 土默特右旗| 西平县| 桃园市| 西青区| 张家港市| 尼勒克县| 茂名市| 乌拉特后旗| 侯马市| 西林县| 大城县| 托克逊县| 菏泽市| 冷水江市| 西宁市| 东至县| 高尔夫| 灵武市| 武威市| 黔西县| 双流县| 旌德县| 江永县| 忻州市| 河间市|