版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第一屆全國(guó)大學(xué)生智能汽車邀請(qǐng)賽技術(shù)報(bào)告-1-關(guān)于技術(shù)報(bào)告和研究論文使用授權(quán)的說(shuō)明 本人完全了解第八屆“飛思卡爾”杯全國(guó)大學(xué)生智能汽車邀請(qǐng)賽關(guān)保留、使用技術(shù)報(bào)告和研究論文的規(guī)定,即:參賽作品著作權(quán)歸參賽者本人,比賽組委會(huì)和飛思卡爾半導(dǎo)體公司可以在相關(guān)主頁(yè)上收錄并公開(kāi)參賽作品的設(shè)計(jì)方案、技術(shù)報(bào)告以及參賽模型車的視頻、圖像資料,并將相關(guān)內(nèi)容編纂收錄在組委會(huì)出版論文集中。參賽隊(duì)員簽名: 帶隊(duì)教師簽名: 日期: 目錄第一章引言 -2-1.1大賽介紹 -2-1.2系統(tǒng)設(shè)計(jì)框架介紹 -3-第二章智能車機(jī)械結(jié)構(gòu)與校調(diào) -4-2.1智能車參數(shù)要求 -4-2.2智能車整體參數(shù)調(diào)校 -4-2.3舵機(jī)安裝 -4-2.4編碼器安裝 -5-2.5起跑線檢測(cè)傳感器安裝 -6-2.6智能車前輪定位 -6-2.6.1主銷后傾角 -6-2.6.2主銷內(nèi)傾角 -7-2.6.3前輪外傾角 -8-2.6.4前輪前束 -8-2.7底盤高度 -9-2.8傳感器支架 -9-第三章硬件電路設(shè)計(jì)說(shuō)明 -11-3.1電源模塊 -11-3.2單片機(jī)最小系統(tǒng)模塊 -12-3.3傳感器模塊 -13-3.4舵機(jī)模塊 -14-3.5電機(jī)模塊 -15-3.6跑道電源模塊 -17-3.7電池充放電模塊 -17-3.8系統(tǒng)主板設(shè)計(jì) -19-第四章智能車軟件系統(tǒng)設(shè)計(jì) -20-4.1程序結(jié)構(gòu)流程圖 -20-4.2提線算法 -20-4.3控制算法 -23-4.3.1方向控制算法 -23-4.3.2速度控制算法 -24-第五章系統(tǒng)開(kāi)發(fā)及調(diào)試工具 -25-5.1開(kāi)發(fā)工具 -25-5.2人機(jī)交換模塊 -25-第六章車輛主要參數(shù) -27-第七章總結(jié) -28-致謝 -29-參考文獻(xiàn) -30-附錄:部分程序源代碼 -31-
第一章引言1.1大賽介紹為加強(qiáng)大學(xué)生實(shí)踐、創(chuàng)新能力和團(tuán)隊(duì)精神的培養(yǎng),促進(jìn)高等教育教學(xué)改革,受教育部高等教育司委托,由教育部高等學(xué)校自動(dòng)化專業(yè)教學(xué)指導(dǎo)分委員會(huì)主辦全國(guó)大學(xué)生智能汽車競(jìng)賽。該競(jìng)賽是以智能汽車為研究對(duì)象的創(chuàng)意性科技競(jìng)賽,是面向全國(guó)大學(xué)生的一種具有探索性工程實(shí)踐活動(dòng),是教育部倡導(dǎo)的大學(xué)生科技競(jìng)賽之一。該競(jìng)賽以“立足培養(yǎng),重在參與,鼓勵(lì)探索,追求卓越”為指導(dǎo)思想,旨在促進(jìn)高等學(xué)校素質(zhì)教育,培養(yǎng)大學(xué)生的綜合知識(shí)運(yùn)用能力、基本工程實(shí)踐能力和創(chuàng)新意識(shí),激發(fā)大學(xué)生從事科學(xué)研究與探索的興趣和潛能,倡導(dǎo)理論聯(lián)系實(shí)際、求真務(wù)實(shí)的學(xué)風(fēng)和團(tuán)隊(duì)協(xié)作的人文精神,為優(yōu)秀人才的脫穎而出創(chuàng)造條件。全國(guó)大學(xué)生“飛思卡爾”杯智能汽車競(jìng)賽由競(jìng)賽秘書處設(shè)計(jì)、規(guī)范標(biāo)準(zhǔn)硬軟件技術(shù)平臺(tái),競(jìng)賽過(guò)程包括理論設(shè)計(jì)、實(shí)際制作、整車調(diào)試、現(xiàn)場(chǎng)比賽等環(huán)節(jié),要求學(xué)生組成團(tuán)隊(duì),協(xié)同工作,初步體會(huì)一個(gè)工程性的研究開(kāi)發(fā)項(xiàng)目從設(shè)計(jì)到實(shí)現(xiàn)的全過(guò)程。該競(jìng)賽融科學(xué)性、趣味性和觀賞性為一體,是以迅猛發(fā)展、前景廣闊的汽車電子為背景,涵蓋自動(dòng)控制、模式識(shí)別、傳感技術(shù)、電子、電氣、計(jì)算機(jī)、機(jī)械與汽車等多學(xué)科專業(yè)的創(chuàng)意性比賽。該競(jìng)賽規(guī)則透明,評(píng)價(jià)標(biāo)準(zhǔn)客觀,堅(jiān)持公開(kāi)、公平、公正的原則,力求向健康、普及、持續(xù)的方向發(fā)展。全國(guó)大學(xué)生智能汽車競(jìng)賽原則上由全國(guó)有自動(dòng)化專業(yè)的高等學(xué)校(包括港、澳地區(qū)的高校)參賽。競(jìng)賽首先在各個(gè)分賽區(qū)進(jìn)行報(bào)名、預(yù)賽,各分賽區(qū)的優(yōu)勝隊(duì)將參加全國(guó)總決賽。每屆比賽根據(jù)參賽隊(duì)伍和隊(duì)員情況,分別設(shè)立光電組、攝像頭組、電磁組、創(chuàng)意組等多個(gè)賽題組別。每個(gè)學(xué)??梢愿鶕?jù)競(jìng)賽規(guī)則選報(bào)不同組別的參賽隊(duì)伍。全國(guó)大學(xué)生智能汽車競(jìng)賽組織運(yùn)行模式貫徹“政府倡導(dǎo)、專家主辦、學(xué)生主體、社會(huì)參與”的16字方針,充分調(diào)動(dòng)各方面參與的積極性。1.2系統(tǒng)設(shè)計(jì)框架介紹系統(tǒng)是以檢測(cè)20KHZ100ma的交流電產(chǎn)生的磁場(chǎng)信號(hào)為基礎(chǔ),通過(guò)單片機(jī)處理信號(hào)實(shí)現(xiàn)對(duì)車體控制,實(shí)現(xiàn)車體能夠準(zhǔn)確沿著預(yù)設(shè)路徑尋跡。系統(tǒng)電路部分需要包括單片機(jī)控制單元、電機(jī)驅(qū)動(dòng)電路、電磁傳感器電路等部分,除此之外系統(tǒng)還需要一些外部設(shè)備,例如編碼器測(cè)速、伺服器控制轉(zhuǎn)向、直流電機(jī)驅(qū)動(dòng)車體。綜上所述,本智能車系統(tǒng)包含了以下幾個(gè)模塊:1.電源模塊2.單片機(jī)最小系統(tǒng)模塊3.傳感器模塊4.電機(jī)模塊5.舵機(jī)模塊6.測(cè)速模塊7.起跑線檢測(cè)模塊8.人機(jī)交互模塊系統(tǒng)的整體模塊如圖1.2所示:圖1.2系統(tǒng)框架圖
第二章智能車機(jī)械結(jié)構(gòu)與校調(diào)2.1智能車參數(shù)要求1.車模尺寸要求:車模尺寸寬度不超過(guò)250mm,長(zhǎng)度沒(méi)有限制,比賽過(guò)程中長(zhǎng)度不得發(fā)生改變。2.傳感器數(shù)量要求:傳感器數(shù)量不超過(guò)16個(gè):磁場(chǎng)傳感器在同一位置可以有不同方向傳感器,計(jì)為一個(gè)傳感器。3.伺服電機(jī)型號(hào):S3010模擬伺服機(jī),伺服電機(jī)數(shù)量不超過(guò)3個(gè)。4.電機(jī)型號(hào):RS3805.全部電容容量和不得超過(guò)2000微法;電容最高充電電壓不得超過(guò)25伏。2.2智能車整體參數(shù)調(diào)校智能車的整體參數(shù),包括車體重心、舵機(jī)電機(jī)放置位置、高度,傳感器排布方式等,都對(duì)整個(gè)智能車系統(tǒng)的穩(wěn)定運(yùn)行起著至關(guān)重要的作用。因此,對(duì)智能車機(jī)械系統(tǒng)的調(diào)節(jié),有助于小車更快更穩(wěn)定的運(yùn)行。小車的布局以精簡(jiǎn)、可靠、穩(wěn)定為前提,通過(guò)對(duì)小車的布局,盡量保證小車左右平衡,以及尋找一個(gè)合適的重心,保證小車既能夠可靠地抓牢地面,又能夠?qū)η拜喍鏅C(jī),后輪電機(jī)有較快的響應(yīng)。電磁組車模如圖2.2所示圖2.2車模示意圖2.3舵機(jī)安裝舵機(jī)安裝直接關(guān)系到是否能快速靈敏地轉(zhuǎn)向的問(wèn)題。如果舵機(jī)調(diào)整不到位,將很大程度上限制轉(zhuǎn)向角度和轉(zhuǎn)向響應(yīng)速度。在各個(gè)強(qiáng)隊(duì)勁旅歷年的技術(shù)報(bào)告中都對(duì)舵機(jī)安裝做了詳細(xì)的說(shuō)明在此不再贅述,舵機(jī)安裝如圖2.3所示。圖2.3舵機(jī)安裝示意圖2.4編碼器安裝選用100線的COPAL光電編碼器進(jìn)行速度的測(cè)量。由于此編碼器自帶支架安裝方便。編碼器安裝示意圖如圖2.4所示:圖2.4編碼器安裝示意圖2.5起跑線檢測(cè)傳感器安裝本小車采用的起跑線檢測(cè)傳感器為干簧管。磁鐵附近存在的強(qiáng)磁場(chǎng)引發(fā)干簧管閉合,我們將單片機(jī)的一個(gè)I/O口設(shè)置為上拉輸入來(lái)檢測(cè)干簧管是否閉合進(jìn)而判斷起跑線的所在。如圖2.5所示。圖2.5起跑線檢測(cè)模塊安裝示意圖2.6智能車前輪定位為保證智能小車直線行駛穩(wěn)定,轉(zhuǎn)向輕便靈活并盡可能的減少輪胎磨損,需要對(duì)小車的前輪參數(shù)進(jìn)行調(diào)整。前輪定位內(nèi)容主要有:主銷后傾角,主銷內(nèi)傾角,前輪外傾角,前輪前束。2.6.1主銷后傾角主銷:轉(zhuǎn)向輪圍繞主銷進(jìn)行旋轉(zhuǎn),前軸的軸荷通過(guò)主銷傳給轉(zhuǎn)向車輪,具備這兩點(diǎn)的就叫做主銷。主銷后傾角:主銷的軸線相對(duì)于車輪的中心線向后傾斜的角度。前輪重心在主銷的軸線上由于主銷向后傾斜使前輪的重心不在車輪與地面的接觸點(diǎn)上,于是產(chǎn)生了離心力,主銷后傾而形成的離心力,可以保證汽車直線行駛的穩(wěn)定性還可以幫助車輪自動(dòng)回正。主銷后傾角延長(zhǎng)線離地面實(shí)際接觸越遠(yuǎn),車速越高,離心力就越大。在高速行駛中保持汽車直線行駛的穩(wěn)定性,適當(dāng)?shù)募哟笾麂N后傾角可以幫助轉(zhuǎn)向輪自動(dòng)回正,可有效扼制轉(zhuǎn)向器的擺振,可使轉(zhuǎn)向便輕,單獨(dú)適量調(diào)一側(cè)的主銷后傾角可修理行駛跑偏。主銷后傾角靠離心力保證汽車直線行駛和車輪自動(dòng)回正。高速行駛時(shí)跑偏可通過(guò)主銷后傾角調(diào)節(jié)。但主銷后傾角過(guò)大會(huì)造成高速時(shí)轉(zhuǎn)向發(fā)飄。調(diào)整主銷后傾角為1°~3°,可通過(guò)增減黃色墊片數(shù)量來(lái)改變。如圖2.6.1所示:圖2.6.1主銷后傾角2.6.2主銷內(nèi)傾角主銷內(nèi)傾角:在小車前后方向上,主銷向內(nèi)傾斜一個(gè)角度,主銷軸線與垂線間的夾角稱為主銷內(nèi)傾角。由于主銷軸線向內(nèi)傾斜,所以使前軸荷更接近前輪中心線(前軸重心越接近前輪中心線轉(zhuǎn)向越輕)麥弗遜式懸架分為零主銷偏移和負(fù)主銷偏移兩種。當(dāng)轉(zhuǎn)向輪在外力作用下發(fā)生偏轉(zhuǎn)時(shí),由于主銷內(nèi)傾的原因,車輪連同整個(gè)汽車的前部將被抬起一定高度;當(dāng)外力消失后,車輪就會(huì)在重力作用下恢復(fù)到原來(lái)的中間位置。故主銷內(nèi)傾角可保證汽車直線行駛的穩(wěn)定性,還可幫助車輪自動(dòng)回正,主銷內(nèi)傾軸線延長(zhǎng)線在沒(méi)超過(guò)前輪中心線的前提下,離前輪中心線越近,轉(zhuǎn)向角越大,轉(zhuǎn)向輪抬起的越高,車輪的回正力矩就越大。從而使轉(zhuǎn)向操縱輕便,同時(shí)也減小了由于路面不平而從轉(zhuǎn)向輪輸出的力反饋。主銷內(nèi)傾角靠前軸軸荷保證汽車直線行駛和車輪自動(dòng)回正。但主銷內(nèi)傾角不宜過(guò)大,否則在轉(zhuǎn)向時(shí)車輪主銷偏轉(zhuǎn)的過(guò)程中,輪胎與路面將產(chǎn)生較大的滑動(dòng),從而增加輪胎與路面間的摩擦阻力,不僅會(huì)使轉(zhuǎn)向變得沉重,還將加速輪胎的磨損。通常調(diào)節(jié)主銷內(nèi)傾角不大于8度。如圖2.6.2所示:圖2.6.2主銷內(nèi)傾角2.6.3前輪外傾角前輪外傾角:在汽車的橫向平面內(nèi),前輪中心平面向外傾斜一個(gè)角度,稱為前輪外傾角。前輪外傾角一方面可以使車輪接近垂直路面滾動(dòng)而滑動(dòng)減小轉(zhuǎn)向阻力,使小車轉(zhuǎn)向輕便;另一方面減少了軸承及其鎖緊螺母的載荷,增加了使用壽命,提高了安全性。一般前輪外傾角為1°左右,但對(duì)于有高速、急轉(zhuǎn)向要求的車輛,前輪外傾角可減小甚至為負(fù)值。如圖2.6.3所示:圖2.6.3前輪外傾角2.6.4前輪前束前輪前束:俯視車輪,汽車的兩個(gè)前輪的旋轉(zhuǎn)平面并不完全平行,而是稍微帶一些角度,這種現(xiàn)象稱為前輪前束。車輪前束的作用是減輕或消除因前輪外傾角所造成的不良后果,二者相互協(xié)調(diào),使前輪在汽車行駛中滾動(dòng)而無(wú)滑動(dòng)。圖2.6.4前輪前束我們將主銷后傾設(shè)為最大來(lái)獲得足夠的穩(wěn)定性,適當(dāng)?shù)闹麂N內(nèi)傾,前輪外傾保持0度和微前束。2.7底盤高度通過(guò)前幾屆的經(jīng)驗(yàn)教訓(xùn)來(lái)看,底盤的高度對(duì)于賽車在賽道上的行駛的穩(wěn)定性和轉(zhuǎn)彎性能上有著很重要的影響,在不破壞跑道的基礎(chǔ)上底盤應(yīng)該越低越好。但是在今年的比賽中加入了0.5cm厚的障礙底盤高度受到了制約,在分賽區(qū)比賽中個(gè)別隊(duì)伍的底盤過(guò)低導(dǎo)致撞上了障礙影響了比賽成績(jī)。2.8傳感器支架對(duì)于電磁車來(lái)說(shuō)獲得較大的前瞻要么是通過(guò)長(zhǎng)長(zhǎng)的支架來(lái)獲得足夠的物理前瞻,要么是通過(guò)電感的布局方式來(lái)獲得“軟”前瞻,由于賽道電磁信號(hào)復(fù)雜多變依靠“軟”前瞻是遠(yuǎn)遠(yuǎn)不夠的,安裝長(zhǎng)長(zhǎng)的傳感器支架不可避免。今年的電磁使用的是A車比起第六屆的B車車身小重量輕,支架太重會(huì)對(duì)整車的重心帶來(lái)很大的影響。為了解決這個(gè)問(wèn)題我們采用單主桅搭配三腳架加固的方法,做好的支架既輕又牢固。圖2.8傳感器支架
第三章硬件電路設(shè)計(jì)說(shuō)明本智能車硬件系統(tǒng)以穩(wěn)定為設(shè)計(jì)的原則,在有限的條件下做到最好。單片機(jī)采用MK60DN512ZVLQ10,TPS7350串聯(lián)TPS79333產(chǎn)生的3.3伏電壓?jiǎn)为?dú)為單片機(jī)供電,使用一片LM2940-5為光電編碼器供電,在LM2940上串接RT9161輸出3.3V為按鍵液晶模塊、無(wú)線模塊和SD卡模塊供電,電機(jī)驅(qū)動(dòng)使用獨(dú)立的MOSFET搭建H橋,舵機(jī)由電池直接供電。使用液晶鍵盤和無(wú)線傳輸模塊使得調(diào)試輕松簡(jiǎn)單。3.1電源模塊對(duì)于單片機(jī)而言功耗比較小但是電源質(zhì)量要求高,因此我們采用TPS7350串聯(lián)TPS79333來(lái)為單片機(jī)供電。對(duì)于其他元件我們采用帶負(fù)載能力強(qiáng)的LM2940和RT9161來(lái)供電。MC34063輸出的12V為半橋驅(qū)動(dòng)芯片供電。圖3.1圖3.1圖3.1圖3.13.2單片機(jī)最小系統(tǒng)模塊以MK60DN512ZVLQ10為核心的單片機(jī)最小系統(tǒng)是本智能車的核心。圖3.2.1圖3.23.3傳感器模塊電磁信號(hào)的檢測(cè)是通過(guò)電感電容組成的LC諧振電路并將其輸出信號(hào)經(jīng)過(guò)檢波放大后送給單片機(jī)AD轉(zhuǎn)換并處理來(lái)達(dá)到路徑識(shí)別的目的。由于我們常用的電感電容的精度并不高因此電感電容之間的搭配顯得尤為重要。檢波運(yùn)放模塊我們采用第七屆組委會(huì)給出的方案,該方案電路簡(jiǎn)潔性能穩(wěn)定可靠。運(yùn)放芯片我們采用性能更加優(yōu)越的OPA2350,OPA2350是TIBB公司生產(chǎn)的高速、單電源、軌至軌運(yùn)放。OPA2350的增益帶寬積達(dá)到38MHz,在20KHz頻率下開(kāi)環(huán)增益為1900倍,并且是至軌輸入/輸出,性能非常的出色。在實(shí)際的測(cè)試中最大可輸出2.5V左右的電壓,放大倍數(shù)可達(dá)500倍足以滿足比賽需要。圖3.3圖3.33.4舵機(jī)模塊舵機(jī)初期使用LM2941進(jìn)行6V供電取得不錯(cuò)的效果,后期為了提高舵機(jī)的響應(yīng)速度和適應(yīng)舵機(jī)大電流的特性改為電池直接供電。圖3.43.5電機(jī)模塊在第七屆中我們采用BTS7960作為電機(jī)驅(qū)動(dòng),BTS7960電路簡(jiǎn)單內(nèi)置保護(hù)電路可靠性高非常適合作為A車和C車的電機(jī)驅(qū)動(dòng)芯片。但是由于BTS7960的停產(chǎn)和其替代品高昂的價(jià)格,另一方面為了鍛煉我們自身的能力便采用了使用獨(dú)立的MOSFET搭建H橋的方案。使用兩片IR2104型半橋驅(qū)動(dòng)芯片組成完整的直流電機(jī)H橋式驅(qū)動(dòng)電路作為MOSFET驅(qū)動(dòng)芯片。選用IRLR7843作為驅(qū)動(dòng)電機(jī)的MOSFET。圖3.5圖3.53.6跑道電源模塊在電磁組中需要一個(gè)20KHZ的信號(hào)發(fā)生器,我們根據(jù)第五屆組委會(huì)給出的方案略加修改作出了我們自己的跑道電源。圖3.6圖3.63.7電池充放電模塊在比賽中使用的鎳氫電池具有一定的記憶效應(yīng),為了合理使用電池延長(zhǎng)其壽命,我們通過(guò)查閱各方面資料獲得一個(gè)很巧妙的充放一體電路,在此我們向電路的原作者表示感謝。通過(guò)簡(jiǎn)單修改制作了一個(gè)電池充放一體小模塊。圖3.7圖3.73.8系統(tǒng)主板設(shè)計(jì)為了方便更換和減小整體體積我們的硬件電路是分模塊設(shè)計(jì)的,需要將各個(gè)模塊插接在主板上才能工作。我們的系統(tǒng)主板上主要有電源模塊、單片機(jī)最小系統(tǒng)接口、放大檢波接口、液晶接口、TF卡接口、鍵盤模塊、無(wú)線模塊接口、舵機(jī)接口。圖3.8圖3.8
第四章智能車軟件系統(tǒng)設(shè)計(jì)4.1程序結(jié)構(gòu)流程圖程序主要采用順序結(jié)構(gòu),參考第七屆直立車的1ms中斷的處理方法在一個(gè)控制周期里只處理某幾個(gè)任務(wù),減小任務(wù)之間的相互影響提高軟件的穩(wěn)定性和執(zhí)行效率。圖4.1程序結(jié)構(gòu)流程圖4.2提線算法提線算法是智能車至關(guān)重要的一個(gè)步驟,車之所以能沿著賽道快速奔跑首先要提取出車子與賽道的偏移量得到一個(gè)誤差,然后將這個(gè)誤差送給控制器處理,最后控制器輸出信號(hào)控制舵機(jī)和電機(jī)來(lái)糾正車子的姿態(tài)和控制車子的速度。如果連控制器的輸入誤差都給不對(duì)怎么能讓控制器給出正確的輸出呢!因此提線環(huán)節(jié)要做好否則控制器再牛也白搭。電磁組巡線依靠跑道中通有頻率為20KHZ電流為100MA的交變電流產(chǎn)生的磁場(chǎng),檢測(cè)磁場(chǎng)的傳感器目前基本都是10mH的工字電感和6.8nf電容構(gòu)成的諧振電路。電感的不同布局對(duì)賽道信息的采集有著很大的影響,電感的排布方式主要有以下幾種。(1)橫向水平放置。橫向水平放置的電感只能檢測(cè)到垂直于導(dǎo)線方向分量的磁能密度,因此具有很好的左右對(duì)稱性能檢測(cè)到車子相對(duì)賽道的位置但不具有前瞻性。(2)縱向水平放置??v向水平電感可以檢測(cè)到前方的彎道(對(duì)于前方彎道縱向電感的輸出就相當(dāng)于直道上橫向電感的輸出),隨著入彎程度的變化左右縱向電感的輸出差值會(huì)有明顯的變化,因此縱向電感有著良好的前瞻性能。但是縱向電感在直道上輸出不穩(wěn)定,處理縱向電感的數(shù)據(jù)比較麻煩。(3)八字形排布。八字形的電感綜合了橫向和縱向的特點(diǎn),在比賽中被廣泛的應(yīng)用。(4)多電感水平排成一排或多排,模仿之前的光電二值化循跡方法或者通過(guò)多電感精確計(jì)算導(dǎo)線位置。這種方法在第五屆比較流行,但是缺點(diǎn)之一是前瞻支架不易過(guò)長(zhǎng),最佳工作狀態(tài)時(shí)導(dǎo)線不能脫離傳感器的覆蓋范圍。目前用的最多的就是前三種排布方式以及他們的組合。電磁不同于攝像頭的主要方面是數(shù)據(jù)量小,處理也簡(jiǎn)單對(duì)于MCU性能的依賴性小。但是它的優(yōu)點(diǎn)也是它的缺點(diǎn),數(shù)據(jù)量小可發(fā)揮的空間不足如何利用有限的數(shù)據(jù)來(lái)準(zhǔn)確獲取賽道信息就成了制勝的關(guān)鍵。數(shù)據(jù)處理最簡(jiǎn)單的莫過(guò)于作差法,其圖像如圖4.2.1圖4.2.1作差法的不足從圖4.2可以明顯看出當(dāng)距離X超過(guò)一定值時(shí)Ed的大小不再增加反而減小,這種情況就造成了我們所說(shuō)的丟線。對(duì)于大前瞻來(lái)說(shuō)作差法極易導(dǎo)致丟線的情況發(fā)生,面對(duì)丟線我們就要做丟線處理而丟線處理往往又導(dǎo)致轉(zhuǎn)向不平滑賽道適應(yīng)能力和穩(wěn)定性又差,因此采用作差法或差比和法都是不可取的。為了解決賽道信息提取問(wèn)題,我們將車放置在標(biāo)有刻度的賽道上左右移動(dòng)小車每隔一段距離就記錄一下采集回來(lái)的電壓值,然后將數(shù)據(jù)通過(guò)matlab擬合得到一個(gè)公式。這樣就使得電壓值與偏移賽道中心的距離一一對(duì)應(yīng),計(jì)算出的偏移距離和真實(shí)距離呈現(xiàn)線性關(guān)系。此算法的不足之處在于電感距離導(dǎo)線的垂直距離不能有太大變化否則會(huì)引起誤判,對(duì)于放大器的放大倍數(shù)也有較高的依賴性。圖4.2.2擬合曲線在實(shí)際應(yīng)用中我們采用兩個(gè)水平電感作為循跡主電感兩個(gè)八字電感作為輔助取得了不錯(cuò)的效果。后來(lái)發(fā)現(xiàn)僅使用兩個(gè)水平電感穩(wěn)定性和抗干擾能力更好,雖然前瞻性能受到影響但是利大于弊。后期如何正確有效的使用斜置電感獲取賽道信息是小車提速的一個(gè)重要的關(guān)鍵所在。當(dāng)然,小車的自我保護(hù)也是必不可少的,自我保護(hù)可以避免賽車沖出跑道后造成損壞和損壞其他設(shè)備帶來(lái)的不必要的麻煩。我們?cè)谇拜喐浇惭b了兩個(gè)水平電感,當(dāng)兩個(gè)電感檢測(cè)到的信號(hào)強(qiáng)度都低于某個(gè)閾值時(shí)就認(rèn)為沖出跑道了然后停車。4.3控制算法在智能車中所用到的算法主要有PID算法、棒—棒算法以及模糊控制算法等。4.3.1在方向控制中我們采用不完全微分PID,即在PID控制器之后或者在微分環(huán)節(jié)上加入一個(gè)一階慣性環(huán)節(jié)。原因是PID控制中,微分作用的引入可以改善系統(tǒng)的動(dòng)態(tài)特性但也易引進(jìn)高頻干擾,加入一階慣性環(huán)節(jié)后可使系統(tǒng)性能得到改善。圖4.3.1不完全微分算法結(jié)構(gòu)圖對(duì)于PID的參數(shù)的整定遵循“誤差小控制弱,誤差大控制強(qiáng)”的原則。這樣做的目的是使小車在直道上保持穩(wěn)定,在彎道上又可以靈敏過(guò)彎,一般的做法是將Kp值分段,我們處理方法模仿北科的Kp值與偏差呈現(xiàn)二次函數(shù)增大的方法。當(dāng)然還可以使用模糊自整定。4.3.2速度控制我們模仿北科使用增量式PID控制,將誤差的大小與速度的設(shè)定值構(gòu)成二次函數(shù)關(guān)系。在比賽前可以手動(dòng)修改速度最大值和最小值來(lái)適應(yīng)不同的賽道。算法的選擇要與硬件相結(jié)合,今年我們使用的獨(dú)立的MOSFET搭建H橋作為電機(jī)驅(qū)動(dòng),驅(qū)動(dòng)能力強(qiáng)對(duì)于A車電機(jī)來(lái)說(shuō)已經(jīng)綽綽有余了。如果采用驅(qū)動(dòng)能力稍差的元件可以采用棒棒控制和PID相結(jié)合的方法來(lái)獲得理想的加減速性能。
第五章系統(tǒng)開(kāi)發(fā)及調(diào)試工具5.1開(kāi)發(fā)工具本智能車在開(kāi)發(fā)和調(diào)試中所使用開(kāi)發(fā)環(huán)境為IAREmbeddedWorkbenchIDE,使用jlink和bootloader為單片機(jī)燒寫程序。IARSystems是全球領(lǐng)先的嵌入式系統(tǒng)開(kāi)發(fā)工具和服務(wù)的供應(yīng)商。公司成立于1983年,提供的產(chǎn)品和服務(wù)涉及到嵌入式系統(tǒng)的設(shè)計(jì)、開(kāi)發(fā)和測(cè)試的每一個(gè)階段,包括:帶有C/C++編譯器和調(diào)試器的集成開(kāi)發(fā)環(huán)境(IDE)、實(shí)時(shí)操作系統(tǒng)和中間件、開(kāi)發(fā)套件、硬件仿真器以及狀態(tài)機(jī)建模工具。圖5.1IAREmbeddedWorkbenchIDE5.2人機(jī)交換模塊為了方便調(diào)試,我們特意給我們的小車裝了一塊nokia5110液晶和4個(gè)按鍵組成的鍵盤。在液晶上可以顯示一些重要的數(shù)據(jù)比如AD轉(zhuǎn)換的電壓值、小車轉(zhuǎn)速等等,在小車的靜態(tài)環(huán)境下對(duì)于調(diào)試十分有幫助;按鍵可以輸入一些參數(shù),配合液晶我們就可以現(xiàn)場(chǎng)調(diào)節(jié)任何一個(gè)參數(shù)然后將修改后的參數(shù)值寫入TF卡或者片內(nèi)flash儲(chǔ)存,而不必因?yàn)樾薷囊粋€(gè)參數(shù)需要下載一遍程序。這個(gè)模塊相較于撥碼開(kāi)關(guān)靈活性強(qiáng),可修改的參數(shù)多范圍也更大,相較于矩陣鍵盤體積小硬件電路的設(shè)計(jì)也更簡(jiǎn)單。
第六章車輛主要參數(shù)車模主要參數(shù)名稱參數(shù)車模重量1.3kg車模長(zhǎng)度7車模寬度2車模高度20傳感器種類及數(shù)量電感*6、干簧管*2、編碼器*1電路電容總量1392uf賽道信息檢測(cè)頻率1000次/秒賽道信息檢測(cè)精度5mm電路總功耗10w
第七章總結(jié)從3月份正式準(zhǔn)備智能車比賽以來(lái)我們遇到了重重困難,對(duì)于我們的能力和心理都有很大的考驗(yàn)。我們團(tuán)隊(duì)頂住了壓力一步一個(gè)腳印地前進(jìn),經(jīng)過(guò)我們不斷的努力與堅(jiān)持終于使我們的小車駛向了全國(guó)總局賽的賽場(chǎng)。這次比賽能夠取得今天的成績(jī),很大程度上是因?yàn)槲覀冋莆兆×苏_的方向和把握好了前進(jìn)的節(jié)奏有條不紊的處理各個(gè)問(wèn)題。在寒假之前我們收集各個(gè)模塊的電路,經(jīng)過(guò)對(duì)比與測(cè)試我們確立了我們的硬件電路原理圖并制作了測(cè)試電路板。在寒假里我們對(duì)各個(gè)模塊進(jìn)行測(cè)試,確定其穩(wěn)定之后便開(kāi)始繪制PCB。最終這套電路板伴隨我們進(jìn)入國(guó)賽,期間沒(méi)有出現(xiàn)過(guò)任何問(wèn)題。三月份我們正式準(zhǔn)備比賽,對(duì)于算法方面一無(wú)所有的我們開(kāi)始了艱苦的征程。我們不斷嘗試與放棄各種算法,努力調(diào)動(dòng)所學(xué)過(guò)的理論知識(shí),從雙桿到單桿從4個(gè)電感到兩個(gè)電感,最終確立了我們現(xiàn)在的算法。通過(guò)飛思卡爾智能汽車比賽,我們認(rèn)識(shí)到了硬件電路的重要性,算法是小車的靈魂,機(jī)械決定著小車的高度。在此次比賽中我們有做的比較好的地方是我們的人機(jī)接口,這個(gè)小模塊不光可以調(diào)節(jié)小車速度還可以調(diào)節(jié)其他的任意一個(gè)參數(shù),正是這一點(diǎn)在比賽中把我們的小車從死亡的邊緣拽了回來(lái)。當(dāng)然我們還有很多做的不到位的地方,首先我們小車的四輪定位做的不好小車在行駛中尤其在高速行駛中不夠穩(wěn)定還伴隨左右不對(duì)稱的情況,其次我們的控制算法做的不夠細(xì)致不能充分發(fā)揮出小車的潛力,最后我們的提線還有很大的提升空間目前只用了兩個(gè)電感如果能夠找到一個(gè)更好的算法我相信我們的小車會(huì)有一個(gè)飛躍的。智能車不光提升了我們的技術(shù)和動(dòng)手能力更教會(huì)了我們一個(gè)真理,蝸牛雖慢但只要不放棄依然可以獲得成功,更何況我們是一只瘋狂的蝸牛!
致謝首先我們要感謝飛思卡爾智能汽車比賽的組委會(huì)為我們提供了一個(gè)鍛煉自身能力展示自身風(fēng)采的平臺(tái),是我們的大學(xué)生活更加的豐富多彩留下了更多的值得回憶的經(jīng)歷。然后我們要感謝我們的學(xué)校的領(lǐng)導(dǎo),感謝我們的學(xué)校允許我們參加此次比賽并給予必要的支持,正是我們的學(xué)校教會(huì)了我們做預(yù)算節(jié)約設(shè)計(jì)成本為以后的工作打下了基礎(chǔ)。最后要感謝我們的指導(dǎo)老師的精心指導(dǎo)和我們團(tuán)隊(duì)的精誠(chéng)合作。
參考文獻(xiàn)[1]卓晴,黃開(kāi)勝,邵貝貝.學(xué)做智能車:挑戰(zhàn)“飛思卡爾”杯[M].北京:北京航空航天大出版社,2007.3.[2]譚浩強(qiáng)C語(yǔ)言程序設(shè)計(jì)[M],北京:清華大學(xué)出版社.2005年7月第三版[3]郭天祥.51單片機(jī)C語(yǔ)言教程—入門、提高、開(kāi)發(fā)、拓展全攻略.電子工業(yè)出版社2009[4]孫同景,陳貴友著.Freescale9S12十六位單片機(jī)原理及嵌入式開(kāi)發(fā)技術(shù).機(jī)械工業(yè)出版社2008[5]童詩(shī)白,華成英.模擬電子技術(shù)基礎(chǔ)[M].北京.高等教育出版社.2000[6]謝凱趙健編著.MSP430系列單片機(jī)系統(tǒng)工程設(shè)計(jì)與實(shí)踐.機(jī)械工業(yè)出版社.2010[7]邵貝貝.單片機(jī)嵌入式應(yīng)用的在線開(kāi)發(fā)方法[M].北京.清華大學(xué)出版社.2004.[8]劉金琨.先進(jìn)PID控制MATLAB仿真(第3版)[M].北京.電子工業(yè)出版社.2011
附錄:部分程序源代碼#include"common.h"#include"include.h"#include"display.h"#include"adc.h"#definethetrue2#definedelay_time50#defineBUFF_SIZE24externs16speed_set_max;//速度設(shè)定最大值externs16speed_set_min;//速度設(shè)定最小值externs16dir_KD;//externs16dir_KP_min,dir_KP_max;externs16limit;externs16speed_P,speed_i;externs32out1,out2,out3,out4,out5,out6;//externs16zuida;s16u1,u2,u3,u4;unsignedcharkeyout;unsignedcharge,shi,bai,qian,wan;uint32size,sizetmp;intres;s16buff[BUFF_SIZE];FILfdst;//文件FATFSfs;//文件系統(tǒng)UINTbr,bw;//FileWritecountvoidwelcom(void){display_hanzi(0,0,0);display_hanzi(1,1,0);display_hanzi(2,2,0);display_hanzi(3,3,0);display_hanzi(4,4,0);}///////////////////////////////////////////////////////////voidvoltagewarn(void){u16ADresult;ADresult=ad_ave(ADC1,SE15,ADC_16bit,10);//讀取ADC1_SE15,16位精度if(ADresult<46338){LCD_clear(); //清屏display_hanzi(14,0,0);display_hanzi(15,1,0);display_hanzi(16,2,0);display_hanzi(17,3,0);display_hanzi(18,4,0);display_hanzi(19,5,0);while(1);}}///////////////////////////////////////////////////////////voidvoltageprint(void){u16ADresult;//保存ADC轉(zhuǎn)換結(jié)果unsignedcharg,s;ADresult=ad_ave(ADC1,SE15,ADC_16bit,255);//讀取ADC1_SE15,16位精度ADresult=(u16)(ADresult*0.00152)-3;s=ADresult/10;g=ADresult%10;display_shuzi(s,8,5);display_shuzi(11,9,5);display_shuzi(g,10,5);display_zimu(21,11,5);}voidgetdata(void){f_mount(0,&fs);//注冊(cè)文件系統(tǒng)工作區(qū)forlogicaldrive0PTD15_OUT=0;f_open(&fdst,"0:/data.txt",FA_OPEN_ALWAYS|FA_WRITE|FA_READ);PTD13_OUT=0;size=f_size(&fdst);//獲取文件的大小if(size>BUFF_SIZE)size=BUFF_SIZE;//防止溢出f_lseek(&fdst,0);//把指針指向文件頂部f_read(&fdst,buff,size,(UINT*)&sizetmp);//讀取speed_set_max=buff[0];speed_set_min=buff[1];dir_KD=buff[2];limit=buff[3];dir_KP_max=buff[4];dir_KP_min=buff[5];speed_P=buff[6];speed_i=buff[7];u1=buff[8];u2=buff[9];u3=buff[10];u4=buff[11];f_close(&fdst);//關(guān)閉文件}voidsenddata(void){buff[0]=speed_set_max;buff[1]=speed_set_min;buff[2]=dir_KD;buff[3]=limit;buff[4]=dir_KP_max;buff[5]=dir_KP_min;buff[6]=speed_P;buff[7]=speed_i;buff[8]=u1;buff[9]=u2;buff[10]=u3;buff[11]=u4;PTD15_OUT=1;f_open(&fdst,"0:/data.txt",FA_OPEN_ALWAYS|FA_WRITE|FA_READ);PTD13_OUT=1;f_write(&fdst,buff,BUFF_SIZE,&bw);//將文件緩沖區(qū)里的數(shù)據(jù)寫入data.txtf_close(&fdst);//關(guān)閉文件LCD_clear(); //清屏display_hanzi(5,0,0);display_hanzi(6,1,0);display_hanzi(7,2,0);display_hanzi(8,3,0);display_hanzi(9,0,2);display_hanzi(10,1,2);display_hanzi(11,2,2);display_hanzi(12,3,2);display_hanzi(13,4,2);delayms(500);LCD_clear(); //清屏}//////////////////////////////////////////////////////////////voidshuzifenjie(unsignedcharnumber){bai=number/100;shi=number/10%10;ge=number%10;}voidnum_print_us(s16number,u8X,u8Y){s16xifu;xifu=number;qian=xifu/1000;bai=xifu/100%10;shi=xifu/10%10;ge=xifu%10;display_shuzi(qian,7*X+3,Y);display_shuzi(bai,7*X+4,Y);display_shuzi(shi,7*X+5,Y);display_shuzi(ge,7*X+6,Y);}voidnum_print(s16number,u8X,u8Y){s16xifu;if(number<0){xifu=-number;display_zimu(28,4*X,Y);}else{xifu=number;display_zimu(27,4*X,Y);}shuzifenjie(xifu);display_shuzi(bai,4*X+1,Y);display_shuzi(shi,2+4*X,Y);display_shuzi(ge,3+4*X,Y);}voidnum_print_XP(s32number,u8X,u8Y){s32xifu;if(number<0){xifu=-number;display_zimu(28,6*X,Y);}else{xifu=number;display_zimu(27,6*X,Y);}wan=xifu/10000;qian=xifu/1000%10;bai=xifu/100%10;shi=xifu/10%10;ge=xifu%10;display_shuzi(wan,6*X+1,Y);display_shuzi(qian,6*X+2,Y);display_shuzi(bai,6*X+3,Y);display_shuzi(shi,6*X+4,Y);display_shuzi(ge,6*X+5,Y);}voidkeypro(void){if(PTD14_IN==0){delayms(20);if(PTD14_IN==0)keyout=2;}elseif(PTD12_IN==0){delayms(20);if(PTD12_IN==0)keyout=5;}elseif(PTD10_IN==0){delayms(20);if(PTD10_IN==0)keyout=4;}elseif(PTD8_IN==0){delayms(20);if(PTD8_IN==0)keyout=1;}elsekeyout=0;}voidkeyswait(void){while(PTD14_IN==0||PTD12_IN==0||PTD10_IN==0||PTD8_IN==0);}voidadjust(void){s32diangan1,diangan2,diangan3,diangan4,diangan5,diangan6;while(PTD14_IN==1){diangan1=ad_mid(ADC1,SE8,ADC_12bit);diangan2=ad_mid(ADC1,SE9,ADC_12bit);diangan3=ad_mid(ADC1,SE10,ADC_12bit);diangan4=ad_mid(ADC1,SE11,ADC_12bit);diangan5=ad_mid(ADC1,SE12,ADC_12bit);diangan6=ad_mid(ADC1,SE13,ADC_12bit);/*out1=diangan1*1000/42000;out2=diangan2*1000/42000;out3=diangan3*1000/39000;out4=diangan4*1000/39000;out5=diangan5*1000/50000;out6=diangan6*1000/50000;*/out1=diangan1*1000/2625;out2=diangan2*1000/2625;out3=diangan3*1000/2437;out4=diangan4*1000/2437;out5=diangan5*1000/3125;out6=diangan6*1000/3125;voltageprint();voltagewarn();num_print_XP(out1,0,0);num_print_XP(out2,1,0);num_print_XP(out3,0,1);num_print_XP(out4,1,1);num_print_XP(out5,0,2);num_print_XP(out6,1,2);}LCD_clear(); //清屏}voidpasswords(void){unsignedcharflag=1;unsignedcharc=3;unsignedchari;unsignedintresult=0;voltagewarn();welcom();while(flag){voltageprint();voltagewarn();keypro();//keyswait();if(keyout==2||keyout==5){result=result*10+keyout;display_shuzi(10,c,3);c++;keyswait();}elseif(keyout==4){result=result/10;c--;LCD_POS(c*6,3); for(i=0;i<6;i++)send_comordata(0x00,data); keyswait();}elseif(keyout==1){if(result==thetrue){flag=0;LCD_clear(); //清屏}else{flag=1;LCD_clear(); //清屏welcom();c=3;result=0;}keyswait();}}}voidupdate(void){unsignedcharcounter=1;unsignedcharflag=1;unsignedchari=0;while(flag){//////////////////////////////////////////////////////// if(counter==1){while((counter==1)&&(flag==1)){display_shuzi(10,2,0);LCD_POS(9*6,5); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){speed_set_max++;delayms(delay_time);}if(keyout==5){speed_set_max--;delayms(delay_time);}num_print_us(speed_set_max,0,0);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(2*6,0); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if((counter==2)){while((counter==2)&&(flag==1)){display_shuzi(10,9,0);LCD_POS(2*6,0); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){speed_set_min++;delayms(delay_time);}if(keyout==5){speed_set_min--;delayms(delay_time);}num_print_us(speed_set_min,1,0);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(9*6,0); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if(counter==3){while((counter==3)&&(flag==1)){LCD_POS(9*6,0); for(i=0;i<6;i++) send_comordata(0x00,data); display_shuzi(10,2,1);keypro();if(keyout==2){delayms(delay_time);dir_KD+=10;}if(keyout==5){delayms(delay_time);dir_KD-=10;}num_print_us(dir_KD,0,1);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(2*6,1); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if(counter==4){while((counter==4)&&(flag==1)){display_shuzi(10,9,1);LCD_POS(2*6,1); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){delayms(delay_time);limit+=50;}if(keyout==5){delayms(delay_time);limit-=50;}num_print_us(limit,1,1);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(9*6,1); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if(counter==5){while((counter==5)&&(flag==1)){display_shuzi(10,2,2);LCD_POS(9*6,1); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){delayms(delay_time);dir_KP_max+=5;}if(keyout==5){delayms(delay_time);dir_KP_max-=5;}num_print_us(dir_KP_max,0,2);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(2*6,2); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if(counter==6){while((counter==6)&&(flag==1)){display_shuzi(10,9,2);LCD_POS(6*2,2); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){delayms(delay_time);dir_KP_min+=5;}if(keyout==5){delayms(delay_time);dir_KP_min-=5;}num_print_us(dir_KP_min,1,2);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(9*6,2); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if(counter==7){while((counter==7)&&(flag==1)){display_shuzi(10,2,3);LCD_POS(6*9,2); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){delayms(delay_time);speed_P+=50;}if(keyout==5){delayms(delay_time);speed_P-=50;}num_print_us(speed_P,0,3);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(2*6,3); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if(counter==8){while((counter==8)&&(flag==1)){display_shuzi(10,9,3);LCD_POS(6*2,3); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){delayms(delay_time);speed_i++;}if(keyout==5){delayms(delay_time);speed_i--;}num_print_us(speed_i,1,3);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(9*6,3); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if(counter==9){while((counter==9)&&(flag==1)){display_shuzi(10,2,4);LCD_POS(6*9,3); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){delayms(delay_time);u1++;}if(keyout==5){delayms(delay_time);u1--;}num_print_us(u1,0,4);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(2*6,4); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if(counter==10){while((counter==10)&&(flag==1)){display_shuzi(10,9,4);LCD_POS(6*2,4); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){delayms(delay_time);u2+=5;}if(keyout==5){delayms(delay_time);u2-=5;}num_print_us(u2,1,4);keypro();if(keyout==4){keyswait();counter++;}if(keyout==1){LCD_POS(9*6,4); for(i=0;i<6;i++) send_comordata(0x00,data); flag=0;}}}////////////////////////////////////////////////////////if(counter==11){while((counter==11)&&(flag==1)){display_shuzi(10,2,5);LCD_POS(6*9,4); for(i=0;i<6;i++) send_comordata(0x00,data); keypro();if(keyout==2){delayms(delay_time);u3+=50;}if(keyout==5){delayms(delay_time);u3-=50;}num_print_us(u3,0,5);keypro();if(keyout==4){
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024綠化工程承包合同范文
- 2024版防火卷簾門質(zhì)保期內(nèi)維修服務(wù)合同
- 2024酒店經(jīng)營(yíng)權(quán)質(zhì)押貸款合同
- 2024年虛擬現(xiàn)實(shí)游戲開(kāi)發(fā)與授權(quán)協(xié)議
- 2024生產(chǎn)車間設(shè)備銷售及安裝與環(huán)保服務(wù)合同3篇
- 2024物流設(shè)計(jì)、項(xiàng)目規(guī)劃合同
- 2024旋挖樁基礎(chǔ)施工質(zhì)量安全監(jiān)理合同范本3篇
- 2024版水電工程勞務(wù)合同
- 2024藝術(shù)品買賣合同中的真?zhèn)舞b別和交易方式
- 2024環(huán)保技術(shù)研發(fā)合同
- 責(zé)任護(hù)理組長(zhǎng)競(jìng)選
- 法人代持免責(zé)任協(xié)議書(2篇)
- 閘站監(jiān)理實(shí)施細(xì)則
- 2024-2025學(xué)年湖北省恩施土家族苗族自治州數(shù)學(xué)六上期末檢測(cè)試題含解析
- 2024年中國(guó)寵物殯葬服務(wù)行業(yè)市場(chǎng)規(guī)模及發(fā)展前景研究報(bào)告(智研咨詢)
- 礦用電纜市場(chǎng)發(fā)展預(yù)測(cè)和趨勢(shì)分析
- 失蹤老人歸家協(xié)議書模板
- 2024年初三數(shù)學(xué)競(jìng)賽考試試題
- 單位委托員工辦理水表業(yè)務(wù)委托書
- 2024年江蘇省蘇州市中考英語(yǔ)真題
- 02S501-2 雙層井蓋圖集標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論