【正文】
采集系統(tǒng),虛擬儀器的研究中涉及的基礎(chǔ)理論主要有計(jì)算機(jī)數(shù)據(jù)采集和數(shù)字信號(hào)處理。以通用的計(jì)算機(jī)硬件及操作系統(tǒng)為依托,實(shí)現(xiàn)各種儀器功能。隨著計(jì)算機(jī)功能的日益強(qiáng)大以及其體積的日 趨縮小,這類(lèi)儀器功能也越來(lái)越強(qiáng)大,目前已經(jīng)出現(xiàn)含嵌入式系統(tǒng)的儀器。計(jì)算機(jī)和儀器的密切結(jié)合是目前儀器發(fā)展的一個(gè)重要方向。使用它進(jìn)行原理研究、設(shè)計(jì)、測(cè)試并實(shí)現(xiàn)儀器系統(tǒng)時(shí),可以大大提高工作效率。它盡可能利用 了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語(yǔ)、圖標(biāo)和概念,因此, LabVIEW 是一個(gè)面向最終用戶(hù)的工具。 圖形化的程序語(yǔ)言,又稱(chēng)為“ G”語(yǔ)言。它還內(nèi)置了便于應(yīng)用 TCP/IP、ActiveX 等軟件標(biāo)準(zhǔn)的庫(kù)函數(shù),這是一個(gè)功能強(qiáng)大且靈活的軟件。 LabVIEW 廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件。 LabVIEW 中盡可能的利用了工程師們所熟知的術(shù)語(yǔ)、圖標(biāo)和概念,是一個(gè)工業(yè)標(biāo)準(zhǔn)的開(kāi)發(fā)環(huán)境。 1..2 中國(guó)大學(xué)生智能車(chē)設(shè)計(jì)競(jìng)賽的意義 開(kāi)發(fā)工具 LabVIEW 概述 LabVIEW Laboratory Virtual Instrument Engineering Workbench 是一種圖形化的程序開(kāi)發(fā)環(huán)境,由美國(guó)國(guó)家儀器 National Instrument 公司研制開(kāi)發(fā)的,類(lèi)似于 C 和 BASIC 開(kāi)發(fā)環(huán)境,但是 LabVIEW 與其他計(jì)算機(jī)語(yǔ)言的顯著 區(qū)別是 :其他計(jì)算機(jī)語(yǔ)言都是采用基于文本的語(yǔ)言產(chǎn)生代碼,而 LabVIEW 使用的是圖形化編輯語(yǔ)言來(lái)編寫(xiě)程序,產(chǎn)生的程序是框圖的形式。 圖 1..1 中國(guó)大學(xué)生智能車(chē)設(shè)計(jì)競(jìng)賽簡(jiǎn)介 我國(guó)大學(xué)生“飛思卡爾”杯智能汽車(chē)競(jìng)賽,是在統(tǒng)一汽車(chē)模型平臺(tái)上,使用飛思卡爾半導(dǎo)體公司的 8 位、 16 位微控制器作為核心控制模塊,自主構(gòu)思控制方案進(jìn)行系統(tǒng)設(shè)計(jì),包括傳感器信號(hào)采集處理、動(dòng)力電機(jī)驅(qū)動(dòng)、轉(zhuǎn)向舵機(jī)控制以及控制算法軟件開(kāi)發(fā)等,完成智能車(chē)工程制作及調(diào)試,于指定日期與地點(diǎn)參加各分賽區(qū)的場(chǎng)地比賽,在獲得決賽資格后,參加全國(guó)決 賽區(qū)的場(chǎng)地比賽。飛思卡爾半導(dǎo)體公司作為比賽的協(xié)辦單位,從而成立里“飛思卡爾”杯大學(xué)生智能汽車(chē)設(shè)計(jì)競(jìng)賽。 最后對(duì)賽車(chē)轉(zhuǎn)彎時(shí)間最優(yōu)問(wèn)題進(jìn)行了研究,提出三種轉(zhuǎn)彎策略,通過(guò)仿真比較給出了縮短比賽時(shí)間,提高比賽成績(jī)的較好的轉(zhuǎn)彎策略。 控制算法的仿真實(shí)驗(yàn):可以設(shè)計(jì)好自己的控制算法對(duì)賽車(chē)進(jìn) 行運(yùn)行仿真。 本文對(duì)智能車(chē)的運(yùn)行過(guò)程進(jìn)行分析,研究了智能車(chē)整體運(yùn)動(dòng)過(guò)程,對(duì)其運(yùn)動(dòng)過(guò)程的各環(huán)節(jié)建立了數(shù)學(xué)模型,并且利用了虛擬儀器軟件 LabVIEW 為智能車(chē)比賽開(kāi)發(fā)了一個(gè)比賽仿真以及理論實(shí)驗(yàn)平臺(tái),以此實(shí)現(xiàn)以下幾個(gè)部分的功能: 賽道建模:可以根據(jù)實(shí)際 賽道的尺寸大小建立起軟件的比賽 賽道。這些問(wèn)題都是能夠順利完成比賽的不可避免的障礙。 2021 年 8 月在清華大學(xué)舉辦的智能車(chē)大賽就是在這樣的背景下應(yīng)運(yùn)而生的。上海交大的 CyberC3 項(xiàng)目組,開(kāi)展了面向城市環(huán)境的無(wú)人自動(dòng)駕駛車(chē)輛研究,目的是為未來(lái)的城市提供一種靈活、高效、安全、環(huán)保的新型公共交通工具。 從汽車(chē)出現(xiàn)的時(shí)候起,人們就有了 汽車(chē)自動(dòng)駕駛的設(shè)想。道路偏離系統(tǒng)、疲勞檢測(cè)系統(tǒng)、自動(dòng)巡航控制等都可以大大減輕駕駛?cè)藛T的駕駛工作,提高交通系統(tǒng)的安全性。隨著經(jīng)濟(jì)的發(fā)展,車(chē)輛擁有量的增加,非職業(yè)駕駛?cè)藛T的人數(shù)增多,是導(dǎo)致交通事故頻繁發(fā)生的又一重要原因。 Virtual instrument 目錄 摘要 I ABSTRACT II 1 課題研究的背景 1 本課題研究的內(nèi)容和意義 1 中國(guó)大學(xué)生智能車(chē)設(shè)計(jì)競(jìng)賽 3 5 開(kāi)發(fā)工具 LabVIEW 概述 5 LabVIEW 的基本概念 6 LabVIEW 的操作模板 9 LabVIEW 中的基本數(shù)據(jù)類(lèi)型及其相互轉(zhuǎn)換 17 LabVIEW 平臺(tái)的特點(diǎn) 21 23 建立賽道功能模塊 23 建立智能車(chē)功能模塊 25 仿真功能模塊 26 數(shù)據(jù)分析功能模塊 28 29 流程圖介紹 29 程序代碼及注釋 30 51 本文主要研究成果 51 下一步的研究方向 52 展望 53 參考文獻(xiàn) 54 致謝 56 附錄 57 課題研究的背景 近年來(lái),隨著經(jīng)濟(jì)的發(fā)展和社會(huì)的進(jìn)步,道路的通行能力、交通的安全性、能源的損耗、環(huán)境污染等問(wèn)題越來(lái)越突出。 simulation。 本文首先對(duì)智能車(chē)仿真模擬系統(tǒng)的運(yùn)行模型進(jìn)行了分析,主要包括賽 道設(shè)計(jì)、賽車(chē)設(shè)計(jì)、進(jìn)行仿真和結(jié)果回放四個(gè)部分,然后根據(jù)這幾部分進(jìn)行軟件開(kāi)發(fā),但在實(shí)際開(kāi)發(fā)中并沒(méi)有完成所有功能,只完成了其中智能車(chē)仿真系統(tǒng)的一部分,并對(duì)該部分的開(kāi)發(fā)過(guò)程進(jìn)行了詳細(xì)的分析。畢業(yè)設(shè)計(jì)(論文) LABVIEW 智能小車(chē)設(shè)計(jì) 摘 要 清華大學(xué)承辦的第五屆“飛思卡爾”杯全國(guó)大學(xué)生智能車(chē)大賽,要求參賽者在提供的模型車(chē)體及主控制器芯片基礎(chǔ)上,設(shè)計(jì)制作具有自主道路識(shí)別能力的智能賽車(chē),在賽道上以最快速度完成賽程者為優(yōu)勝。 本課題以智能車(chē)比賽為背景,以縮短智能車(chē)控制算法的開(kāi)發(fā)周期為目的,基于虛擬儀器 LabVIEW 開(kāi)發(fā)了智能車(chē)仿真軟件,為智能車(chē)比賽提供可以離線(xiàn)驗(yàn)證控制算法的軟件平臺(tái)。 關(guān)鍵詞: LabVIEW;仿真;智能車(chē);虛擬儀器 ABSTRACT Tsinghua University hosted the firth college student petition, the Freescale Cup. The participants are required to provide the intelligent vehicle model capacity of the selfroadrecognize based on the designed modelcar and the microcontroller chip. The winner was the first one finished the race on the right road. Based on this petition, this paper, aims at reducing the development period of the control algorithm, provides the software platform for the offline test of the race car control algorithm by using LabVIEW. This paper firstly intelligent vehicle simulation system operation model are analyzed, a simulation analysis system has four functions, namely the circuit design, the car carries on the simulation, and design, and then according to the results of playback software development, but the framework in developing and not finished all the functions of intelligence, only pleted the car mode, and the system in the development process of parts are analyzed in detail. Key word: LabVIEW。 Intelligent vehicle。車(chē)輛在交通擁擠的市區(qū)行使駕駛?cè)藛T必須完成大量的換檔和踩離合器的工作,大約在每分鐘完成 20~30 個(gè)手腳協(xié)調(diào)動(dòng),繁重的駕駛 工作和駕駛?cè)藛T的疲勞是交通事故頻發(fā)的重要原因。交通問(wèn)題已經(jīng)成為全球范圍令人困擾的嚴(yán)重問(wèn)題,因此,如何提高交通安全性己經(jīng)成為急需解決的社會(huì)性問(wèn)題。這些問(wèn)題的解決引發(fā)了新的研究和應(yīng)用的熱點(diǎn),比如自動(dòng)車(chē)輛駕駛,通過(guò)計(jì)算機(jī)控制、人工智能和通信技術(shù)實(shí)現(xiàn)更好的通行能力和更安全的行駛 [1][2]。隨著相關(guān)學(xué)科的不斷發(fā)展,使得人類(lèi)的這一夢(mèng)想逐漸成為現(xiàn)實(shí)。另外,美國(guó)國(guó)防遠(yuǎn)景研究規(guī)劃局從 2021年開(kāi)始,每年舉辦無(wú)人車(chē)大獎(jiǎng)賽,賽車(chē)需要自主地穿越沙漠地帶,總行程達(dá) 240公里。 本課題研究的內(nèi)容和意義 在智能車(chē)的實(shí)際設(shè)計(jì)過(guò)程中,面臨著如下幾個(gè)問(wèn)題:第一,為了測(cè)試賽車(chē)在不同的賽道 上都有穩(wěn)定的發(fā)揮,就不得不制作出各種形式的賽道來(lái)測(cè)試賽車(chē)的性能,但是在實(shí)際中,不可能為智能車(chē)設(shè)計(jì)各種各樣的比賽賽道來(lái)試驗(yàn)智能車(chē)的比賽效果,在經(jīng)濟(jì)上和效率上都是不能被接受的;第二,一個(gè)控制算法的實(shí)現(xiàn)和驗(yàn)證也需要有一個(gè)周期,在比賽設(shè)計(jì)的有限時(shí)間里,選擇合適的控制算法,并且試驗(yàn)它的有效性,是一個(gè)比較艱巨的任務(wù),如何快速驗(yàn)證我們所設(shè)計(jì)的控制算法,縮短開(kāi)發(fā)周期,在有限的時(shí)間里盡可能開(kāi)發(fā)出最好最優(yōu)的控制算法,對(duì)我們提出了挑戰(zhàn);第三,分析車(chē)的運(yùn)行過(guò)程進(jìn)而分析車(chē)的控制方法是分析和優(yōu)化控制算法的一個(gè)有效途徑,實(shí)際上車(chē)的運(yùn)行是 一個(gè)快速的過(guò)程,是轉(zhuǎn)瞬即逝的,很難把車(chē)的實(shí)際運(yùn)行過(guò)程復(fù)現(xiàn)出來(lái)的,這樣就缺失了有效的分析方法。 基于以上的問(wèn)題,為了能夠快速的驗(yàn)證智能車(chē)的設(shè)計(jì)方案,縮短其開(kāi)發(fā)周期,讓參賽隊(duì)伍有充足的時(shí)間來(lái)研究更合適的方案和策略,需要有一個(gè)軟件仿真平臺(tái)。 賽車(chē)建模:對(duì)賽車(chē)基本參數(shù)的設(shè)置以及路徑檢測(cè)方案的設(shè)計(jì)。 比賽仿真的后期分析:可以根據(jù)運(yùn)行過(guò)程中保存的數(shù)據(jù)對(duì)運(yùn) 行過(guò)程分析,可以對(duì)控制算法進(jìn)行優(yōu)化。 中國(guó)大學(xué)生智能車(chē)設(shè)計(jì)競(jìng)賽 在學(xué)習(xí)韓國(guó)大學(xué)生智能汽車(chē)競(jìng)賽后,我國(guó)也組織了自己的大學(xué)生智能汽車(chē)競(jìng)賽,以加強(qiáng)大學(xué)生實(shí)踐能力、創(chuàng)新能力和團(tuán) 隊(duì)精神的培養(yǎng)。所設(shè)計(jì)的智能車(chē)模型如圖 。參賽隊(duì)伍之名次(成績(jī))由賽車(chē)現(xiàn)場(chǎng)成功完成賽道比賽時(shí)間為主、技術(shù)報(bào)告和制作工程質(zhì)量評(píng)分為輔來(lái)決。在開(kāi)發(fā)過(guò)程中,用圖標(biāo)就可以代替應(yīng)用系統(tǒng)的硬件部分,這樣就可以省去了很多購(gòu)買(mǎi)硬件的資金,以節(jié)省大量的研發(fā)資金。它結(jié)合了圖形化編程方式的高性能和靈活性以及專(zhuān)為測(cè)試、測(cè)量與自動(dòng)化控制應(yīng)用設(shè)計(jì)的高端性能和配置,能為數(shù)據(jù)采集、儀器控制、測(cè)量分析與數(shù)據(jù)顯示等各種應(yīng)用提供必要的開(kāi)發(fā)工具,這能幫助工程師們提高 工作效率 [4]。 LabVIEW 集成了與滿(mǎn)足 GPIB、 VXI、 RS232 和 RS485協(xié)議的硬件及數(shù)據(jù)采集卡通訊的全部功能。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過(guò)程都生動(dòng)有趣。使用這種語(yǔ)言編程時(shí),基本上不寫(xiě)程序代碼,取而代之的是流程圖或框圖。它可以增強(qiáng)你構(gòu)建自己的科學(xué)和工程系統(tǒng)的能力,提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。 虛擬儀器 Virtual Instrumentation 是基于計(jì)算機(jī)的儀器。粗略地說(shuō)這種結(jié)合有兩種方式,一種是將計(jì)算機(jī)裝入儀器,其典型的例子就是所謂智能化的儀器。另一種方式是將儀器裝入計(jì)算機(jī)。虛擬儀器主要是指這種方式。目前在這一領(lǐng)域內(nèi),使用較為廣泛的計(jì)算機(jī)語(yǔ)言是美國(guó) NI 公司的 LabVIEW。像許多重要的軟件一樣, LabVIEW 提供了 Windows、 UNIX、 Linux、 Macintosh的多種版本 [4]。 LabVIEW 的基本概念 VI 的概念 用 LabVIEW開(kāi)發(fā)出的應(yīng)用程序被稱(chēng)作 VI Virtual Instrument的英文簡(jiǎn)寫(xiě),即虛擬儀器 ,它的表現(xiàn)形式和功能類(lèi)似于實(shí)際的儀器,也很容易改變?cè)O(shè)置和功能。 前面板是應(yīng)用程序的界面,是人機(jī)交互的窗口,主要由 Controls 控制量 和Indicators 顯示量 構(gòu)成。如果將 VI 程序比作一臺(tái)儀器的話(huà),那么,控制量就是儀器的數(shù)據(jù)輸入端口和控制開(kāi)關(guān),用于給程序提供輸入數(shù)據(jù)和控制信號(hào),而顯示量則是儀器的顯示窗口,用于顯示經(jīng)過(guò)程序分析、處 理后的結(jié)果,如圖 所示,顯然 ,并非簡(jiǎn)單地畫(huà)兩個(gè)控件就可以運(yùn)行,在前面板后還有一個(gè)與之配套的流程圖。流程圖中包括前面板上的控件的連線(xiàn)端子,還有一些前面板上沒(méi)有,但編程必須有的東西,例如函數(shù)、結(jié)構(gòu)和連線(xiàn)等。隨機(jī)數(shù)發(fā)生器通過(guò)連線(xiàn)將產(chǎn)生的隨機(jī)信號(hào)送到 顯示控件,為了使它持續(xù)工作下去,設(shè)置了一個(gè) WhileLoop 循環(huán),由開(kāi)關(guān)控制這一循環(huán)的結(jié)束。在許多情況下,使用 VI 可以仿真標(biāo)準(zhǔn)儀器,不僅在屏幕上出現(xiàn)一個(gè)惟妙惟肖的標(biāo)準(zhǔn)儀器面板,而且其功能也與標(biāo)準(zhǔn)儀器相差無(wú)幾。在程序中使用子 VI 有以下優(yōu)點(diǎn): 將一些代碼封裝成為一個(gè)子 VI 即一個(gè)圖標(biāo) ,可以使程序的結(jié)構(gòu)變得更加清晰、明了。 將一些常用的功能編制成一個(gè)子 VI,在需要的時(shí)候可以直接調(diào)用,不用重新編寫(xiě)這部分程序,因而子 VI 有利于代碼復(fù)用。這些模板集中反映了該軟件的功能與特征,對(duì) LabVIEW 程序的創(chuàng)建、設(shè)計(jì) 和調(diào)試具有重要的作用。一般在啟動(dòng) LabVIEW 時(shí),該模板就會(huì)出現(xiàn),如果該模板沒(méi)有出現(xiàn),則可以在 Windows 菜單下選擇 Show Tools Palette 命令以顯示該模板。選擇了任一種工具后,鼠標(biāo)箭頭就會(huì)變成該工具相應(yīng)的形狀。工具模板中各種不同工具的圖標(biāo)及其相應(yīng)的功能如表 所示。使用它向數(shù)字或字符串控制中鍵入值時(shí),工具會(huì)變成標(biāo)簽工具 2 Position/Size/Select 選擇 用于選擇、移動(dòng)或改變對(duì)象的大小。 3