freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

智能車軟、硬件結(jié)構(gòu)及其開(kāi)發(fā)流程技術(shù)報(bào)告-遼寧工程技術(shù)大學(xué)-預(yù)覽頁(yè)

 

【正文】 的側(cè)向反力作用在主銷的后面,使車輪有自動(dòng)回正的趨勢(shì)。由于智能車行駛的速度較低,可以適當(dāng)減小主銷后傾角。之前我們將電路板安裝在電池的上方,結(jié)果發(fā)現(xiàn)在小車在以較高速度過(guò)急彎的時(shí)候非常容易側(cè)翻,屬于較高的車模重心。而我們知道,力矩等于力乘以力臂長(zhǎng)度,即:M=LF其中M為力矩,L為力臂長(zhǎng)度,F(xiàn)為力。在對(duì)舵機(jī)力臂進(jìn)行適當(dāng)加長(zhǎng)時(shí)舵機(jī)臂的活動(dòng)范圍將會(huì)由于車模機(jī)械特性上的限制而減小,這就導(dǎo)致了舵機(jī)控制上的不連續(xù),進(jìn)而導(dǎo)致轉(zhuǎn)向時(shí)不平滑。圖27 舵機(jī)的安裝圖28 車模原有舵機(jī)安裝方式在確定了舵機(jī)的安裝方式和擺臂的長(zhǎng)度后,我們發(fā)現(xiàn),本來(lái)想要刻意設(shè)計(jì)成的阿克曼轉(zhuǎn)角由這種方式巧妙地達(dá)成了。對(duì)射式光柵的重量相對(duì)較輕,阻力也相當(dāng)?shù)男?,但由于整個(gè)裝置暴露在外界空氣中,容易受到外界光線或粉塵的影響;并且一般外置式的光電碼盤分割條數(shù)有限,返回線數(shù)較少,可能會(huì)造成計(jì)速不準(zhǔn)確,而編碼器就不存在此類問(wèn)題。當(dāng)重心高度偏高時(shí),智能車在轉(zhuǎn)彎過(guò)程中會(huì)發(fā)生后輪抬起,即‘抬腳’現(xiàn)象,嚴(yán)重時(shí)甚至翻車。但是由于賽道中坡道的限制,底盤的高度在低于5mm時(shí)將會(huì)沖撞坡道,并不使地盤受到不必要的磨損和震蕩,劇烈的沖擊甚至?xí)矇霓D(zhuǎn)向機(jī)構(gòu)。使重量的分布盡量靠近底盤。小車的性能與機(jī)械結(jié)構(gòu)有著非常密切的聯(lián)系。電池盡量安裝在靠近底盤處,由于模型車的自身特點(diǎn),模型車底盤可利用空間很小,硬件組成員改進(jìn)了電路板形狀,使電路板和模型車的底盤形成了完美契合。 系統(tǒng)硬件電路主要由以下幾個(gè)部分構(gòu)成:1)K60最小系統(tǒng):龍邱K60;2)電源電路:包括5v穩(wěn)壓電路、3V3穩(wěn)壓電路3)賽道檢測(cè)電路:采用TSL1401線性CCD傳感器;4)電機(jī)驅(qū)動(dòng)電路:電機(jī)驅(qū)動(dòng)采用全橋驅(qū)動(dòng);5)舵機(jī)驅(qū)動(dòng)電路:,不能直接適用于舵機(jī),所以需要對(duì)舵機(jī)外加穩(wěn)壓電路; 6)車速檢測(cè)電路:增量式旋轉(zhuǎn)編碼器。首先了解一下不同電源的特點(diǎn),電源分為開(kāi)關(guān)電源和線性電源,線性電源的電壓反饋電路是工作在線性狀態(tài),開(kāi)關(guān)電源是指用于電壓調(diào)整的管子工作在飽和和截至區(qū)即開(kāi)關(guān)狀態(tài)的。2A/h的可充電鎳鎘電池提供。于是我們?nèi)∠铝酥靼迳辖oCCD供電的電源線,將一個(gè)4F ,由于該電容儲(chǔ)電量巨大,所以可供CCD取電相當(dāng)長(zhǎng)的時(shí)間。之后我們將LM2940換為了TI公司的一款LDO,TPS76850,該芯片擁有超快的反應(yīng)速度,能在輸入端電壓變化劇烈時(shí)保持輸出電壓不變,經(jīng)我們示波器實(shí)際觀測(cè)在電池電壓劇烈波動(dòng)時(shí)其輸出電壓毫無(wú)波動(dòng),后來(lái)確定最終使用該穩(wěn)壓芯片。因?yàn)檫@樣只會(huì)徒增單片機(jī)的負(fù)擔(dān)。單片機(jī)供電電路如圖33所示: 圖33 單片機(jī)供電電路電機(jī)驅(qū)動(dòng)電路對(duì)于競(jìng)速賽事的重要性是不言而喻的,一個(gè)好的加速與制動(dòng)能力對(duì)小車整體速度的提升有著至關(guān)重要的作用。由于IRF3205有著較低的漏源電阻,故我們認(rèn)為驅(qū)動(dòng)性能將會(huì)很好。雖然BTN7971B驅(qū)動(dòng)能力很好,但我們?yōu)榱诉M(jìn)一步減小內(nèi)阻與芯片的發(fā)熱量,采用了4片搭建兩個(gè)并聯(lián)的H橋的形式組成電路。它能夠減少接地電流時(shí)的輸入電壓和輸出電壓之間的差,LM2940提供低靜態(tài)電流,只有當(dāng)穩(wěn)壓器在漏失模式(VINVOUT≤3V)下才存在較高的靜態(tài)電流,但由于我們覺(jué)得tps76850有較高的穩(wěn)定性,所以最終我們選用tps76850穩(wěn)壓芯片。其中,供電部分是重點(diǎn),能夠?yàn)楦鱾€(gè)傳感器及單片機(jī)提供穩(wěn)定電源,為后續(xù)軟件運(yùn)行及調(diào)試打下堅(jiān)實(shí)基礎(chǔ)。在智能車的轉(zhuǎn)向和速度控制方面,我們使用了經(jīng)典PID控制算法,配合使用理論計(jì)算和實(shí)際參數(shù)補(bǔ)償?shù)霓k法,使智能車能夠穩(wěn)定快速尋線。在提取黑線后,取兩邊黑線的平均值,提取出中線。其中,切彎路徑主要決定了車輛是選擇內(nèi)道過(guò)彎還是外道過(guò)彎。合適的轉(zhuǎn)向角度會(huì)減少車輛在轉(zhuǎn)彎時(shí)的調(diào)整,不僅路徑可以保證最優(yōu),運(yùn)動(dòng)狀態(tài)的穩(wěn)定也會(huì)帶來(lái)效率的提高,減少時(shí)間。然而,在過(guò)去幾屆比賽中,通過(guò)觀察各參賽車對(duì)彎道的處理后,我們發(fā)現(xiàn)并不是所有人都選擇了相同的方案。綜合考慮用可以接收的額外時(shí)間換回行駛穩(wěn)定性還是值得的。所以最后我們選擇了PID的控制方式。試湊法是通過(guò)閉環(huán)試驗(yàn),觀察系統(tǒng)響應(yīng)曲線,根據(jù)各控制參數(shù)對(duì)系統(tǒng)響應(yīng)的大致影響,反復(fù)試湊參數(shù),以達(dá)到滿意的響應(yīng),最后確定PID控制參數(shù)。積分調(diào)節(jié)(I)作用:是使系統(tǒng)消除穩(wěn)態(tài)誤差,提高無(wú)差度。積分作用常與另兩種調(diào)節(jié)規(guī)律結(jié)合,組成PI調(diào)節(jié)器或PID調(diào)節(jié)器。微分作用對(duì)噪聲干擾有放大作用,因此過(guò)強(qiáng)的加微分調(diào)節(jié),對(duì)系統(tǒng)抗干擾不利。如果系統(tǒng)靜差小到允許范圍,響應(yīng)曲線已屬滿意,那么只需比例控制即可,由此確定比例系數(shù)。由于CCD的前瞻性很好,故采用PD控制,基本的行駛策略是使賽車保持在引圖43 大S最優(yōu)路線圖導(dǎo)線的中心線上,但這只適用于直道,對(duì)于普通彎道與大S彎道,如果不改變策略,肯定會(huì)影響全程時(shí)間,所以根據(jù)不同道路曲率調(diào)整舵機(jī)的參數(shù),選取最優(yōu)路線以減少路程,實(shí)線為實(shí)際道路,虛線為選取的行駛路線。包括集成開(kāi)發(fā)環(huán)境、處理器專家?guī)?、全芯片仿真、可視化參?shù)顯示工具、項(xiàng)目工程管理器、C交叉編譯器、匯編器、鏈接器以及調(diào)試器。智能汽車通過(guò)無(wú)線模塊與實(shí)時(shí)監(jiān)測(cè)系統(tǒng)進(jìn)行通訊。該系統(tǒng)通過(guò)PC機(jī)串口與無(wú)線模塊連接。:圖51智能車調(diào)試工具和在該版本監(jiān)控系統(tǒng)中,我們不僅可以監(jiān)控智能汽車行駛過(guò)程中的狀態(tài),并且可以保存一些重要信息,比如各種特殊道路上傳感器的狀態(tài),速度及賽車路徑圖等。參考文獻(xiàn)[1] 卓晴,黃開(kāi)勝,——挑戰(zhàn)“飛思卡爾”杯[C].北京:北京航空航天大學(xué)出版社,2007.[2] 尹念東. 智能車輛的研究及前景[J].上海汽車 技術(shù)導(dǎo)向,1994. 2008.[3] [M].北京:清華大學(xué)出版社,2004.[4] 余星毅,徐斌,余春賢,.[5] Codewarrior使用指南.[6] [M]. 北京:中國(guó)鐵道出版社,.[7] 吳銘鴻,葉增軟,.[8] 齊鵬遠(yuǎn),易筱,.附錄:源程序代碼include struct Pid{ float SetSpeed。 //P I D signed int Integrel。 //實(shí)際角度unsigned int MidPoint。 //平均值unsigned int leftPoint。 //電機(jī)最低速度unsigned int Angle。struct Pid Motor,Motor1,Motor2,Ccd,Send,Steering,DJ,Ccd1。extern volatile unsigned int Motor1Speed。 //丟線標(biāo)志unsigned char static fastflag=0。//電機(jī)目標(biāo)速度unsigned char static highspeed=130。 //速度控制PID變量float static A=,B=35,D=70。 Dat_P=。 //舵機(jī)A B=35。 //減速 needforspeed=80。 //棒棒閾值 Stop_Enable()。 Dat_P=。 //舵機(jī)A B=35。 //減速 needforspeed=90。 //棒棒閾值 Stop_Enable()。 Dat_P=。 //舵機(jī)A B=35。 //減速 needforspeed=95。 //棒棒閾值 Stop_Enable()。}/***************MAIN二值化amp。 //掃描右起點(diǎn) unsigned char static flagleft=0。 //右邊丟線標(biāo)志位 unsigned char static HistoryData[10]={63,63,63,63,63,63,63,63,63,63}。 unsigned char static blockflag。 //速度控制I變量 = Dat_D。 break。 break。 } else lostleft=0。 =HistoryData[6]。 HistoryData[5]53) { CoordinateLeft = 61。 //重置右邊掃描位置初值 } else { CoordinateLeft = 55。 //線性補(bǔ)線 } else if(20) { =。//重置右邊掃描位置初值 =。 HistoryData[6]=HistoryData[5]。 HistoryData[2]=HistoryData[1]。 HistoryDataL[8]=HistoryDataL[7]。 HistoryDataL[4]=HistoryDataL[3]。 HistoryDataL[0]=。 HistoryDataR[6]=HistoryDataR[5]。 HistoryDataR[2]=HistoryDataR[1]。 if(Distance30 amp。 60 amp。 abs([3])5) blockflag=1。amp。 else blockflag=0。 } if(blockdelayflag0) blockdelayflag。 //中線偏差計(jì)算 else =*()。 //flag清零 flagright=0。 //MAIN舵機(jī)PD算法 if(=()) //舵機(jī)限幅 { Steering_SetRatio16()。 //記錄上一次的偏差 //LcdWriteNum(0,0,)。 /**************************電機(jī)控制******************************/ if(((abs(HistoryData[9]60)5) amp。 !lostflag) || delayflag) { delayflag=1。 if(abs(HistoryData[9]60)19 || (95 amp。 slowflag=0。i0。 } else =0。 unsigned char i,j。 //編碼器計(jì)數(shù)結(jié)算 ImageCapture()??刂扑惴? //BlackCaptureCar()。 if(j=4) { j=0。 } CcdUart_SendBlock(,132,amp。 = needforspeedPc*(unsigned char)(abs( )/Pj)。 = needforspeed+Pc*(unsigned char)(abs( )/Pj)。 Motor1_1_PutVal(0)。 } else { Motor1_SetRatio8(5)。 Motor2_1_PutVal(1)。 Motor2_1_PutVal(1)。 Motor2_1_PutVal(0)。 //上次偏差 signed int static Historyerror1_2。 //棒棒控制 } Historyerror1_2=Historyerror1_1。 return 。 //速度誤差計(jì)算 if(bangbangset) //棒棒控制判斷 { +=*()+*+ \ *(*Historyerror2_1+Historyerror2_2)。 //記錄上次偏差 if(=250)=}/********************初始化程序***********************/void Initialize(void){ TI1_Disable()。 TI1_Enable()。 LED2_PutVal(1)。}/***********************延時(shí)函數(shù)************************/void DelayModule(unsigned long time) { while(time) { __asm(nop)。 [1] = ~2。 = *Motor2Speed。 unsigned char Num。 BaQi[0] = 0。 BaQi[0] = 0。 BaQi[0]
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1