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

正文內(nèi)容

智能巡線機(jī)器人設(shè)計(jì)(參考版)

2025-08-01 08:50本頁(yè)面
  

【正文】 (DE_FRONT==0X00))) //9,10,1。(DE_LEFTS_FRONT!=0X0F))||((DE_RIGHTS_BACK!=0X0F)amp。 } } else if(((DE_RIGHTS_BACK!=0X0F)amp。 break。 break。 break。 break。 //左電機(jī)全速,右電機(jī)調(diào)整 if(DE_FRONT==0X00) //FRONT在白線上 CCR2= PWM_70。amp。amp。 default: break。 case 0x07: //0111 16在白線 CCR2 = PWM_0。 case 0x0B: //1011 15在白線 CCR2 = PWM_10。 case 0x0D: //1101 14在白線 CCR2 = PWM_40。 //左電機(jī)全速,右電機(jī)調(diào)整 switch(DE_RIGHTS_FRONT) { case 0x0E: // 1110 13在白線 CCR2 = PWM_55。amp。 default: break。 case 0x0E: //1110 5在白線 CCR1 = PWM_0。 case 0x0D: //1101 6在白線 CCR1 = PWM_10。 case 0x0B: //1011 7在白線 CCR1 = PWM_40。 //右電機(jī)全速,左電機(jī)調(diào)整 switch(DE_LEFTS_FRONT) { case 0x07: // 0111 8在白線 CCR1 = PWM_55。amp。 default: break。16在白線 CCR2 = PWM_25。 break。 case 0x0B: //1011 BACKamp。14在白線 CCR2 = PWM_70。 break。 //左電機(jī)全速,右電機(jī)調(diào)整 switch(DE_RIGHTS_FRONT) { case 0x0E: // 1110 BACKamp。(DE_RIGHTS_FRONT!=0x0F)) //13,14,15,16中的傳感器有一個(gè)在白線上amp。 } } else if((DE_BACK==0X00)amp。 break。 case 0x0E: //1110 BACKamp。6在白線 CCR1 = PWM_40。 break。 case 0x0B: //1011 BACKamp。8在白線 CCR1 = PWM_85。BACK在白線上則左轉(zhuǎn) { CCR2 = PWM_100。amp。 CCR2 = PWM_100。amp。如圖所示PWM巡線流程圖: 圖76 PWM巡線流程 具體軟件編程如下:(注:CCR1,CCR2控制驅(qū)動(dòng)電路向電機(jī)供電信號(hào)的占空比)void XunJi_BackDrive(void) //后輪驅(qū)動(dòng)尋跡{ Run_BackDrive()。 雖然上述的方法也可以實(shí)現(xiàn)機(jī)器人的巡線運(yùn)動(dòng),但是它的會(huì)出現(xiàn)大幅度的晃動(dòng),主要是轉(zhuǎn)彎的時(shí)候是一個(gè)輪子停止,另一個(gè)輪子轉(zhuǎn)動(dòng)來(lái)實(shí)現(xiàn)的,使得機(jī)器人行駛的速度不快,并且由于兩側(cè)的速度差比較大,在來(lái)回調(diào)整時(shí)整個(gè)車(chē)身都可能產(chǎn)生擺動(dòng)。
}其中,Run_BackDrive()是讓后排兩個(gè)驅(qū)動(dòng)輪同時(shí)轉(zhuǎn)動(dòng);TurnRight_BackDrive()是讓后排左輪轉(zhuǎn)動(dòng),右輪停止,使機(jī)器人向右移動(dòng);TurnRight_BackDrive()是讓后排右輪轉(zhuǎn)動(dòng),左輪停止,使機(jī)器人向左移動(dòng)。FRONT)==0x00)))
//9,10,11,12中一個(gè)與5,6,7,8中一個(gè)在白線上或者9,10,11,12中一個(gè)在白線且FRONT在白線上,則左轉(zhuǎn) TurnLeft_BackDrive()。amp。amp。FRONT)==0x00)))
//1,2,3,4中的一個(gè)與13,14,15,16中的一個(gè)在白線上或者1,2,3,4中的一個(gè)在白線且FRONT在白線上,則右轉(zhuǎn)
TurnRight_BackDrive()。amp。amp。(DE_RIGHTS_FRONT!=0x0f))
//右側(cè)的傳感器9,10,11,12中的一個(gè)與13,14,15,16中的一個(gè)在白線上,則右轉(zhuǎn)
TurnRight_BackDrive()。
else if((DE_RIGHTS_BACK!=0x0f)amp。amp。BACK在白線上則右轉(zhuǎn)
TurnRight_BackDrive()。amp。
else if(((P1INamp。( P3_HIGH!=0x0f))
//前排左側(cè)的傳感器有一個(gè)在白線上amp。BACK)==0x00)amp。BACK)==0x00))
//傳感器BACK,FRONT同時(shí)在白線內(nèi)則直進(jìn)
Run_BackDrive()。amp。圖75 巡線流程圖函數(shù)實(shí)現(xiàn)如下:
void XunXian_BackDrive(void) //后輪驅(qū)動(dòng)巡跡
{if(((P1INamp。由于傳感器是檢測(cè)到白色引導(dǎo)線為低,如果DE_LEFTS_FRONT!=0X0F,則說(shuō)明、中必有一個(gè)檢測(cè)到白色引導(dǎo)線。DE_RIGHTS_BACK=P4INamp。 //將P3口的低四位值(即、)取出存于一個(gè)寄存器的低四位中//同理設(shè)置P4口DE_RIGHTS_FRONT=(P4INamp。 //將P3口的高四位值(即、)取出存于一個(gè)寄存器的低四位中DE_LEFTS_BACK=P3INamp。DE_LEFTS_FRONT=(P3INamp。左側(cè)傳感器、和接P3口;右側(cè)傳感器、和接P4口。P30~P33接~,相當(dāng)于P3的低四位讀取機(jī)器人后排左側(cè)與中心引導(dǎo)線的位置關(guān)系;P34~P37接~,相當(dāng)于P3的高四位讀取機(jī)器人前排左側(cè)與中心引導(dǎo)線的位置關(guān)系;P40~P43接~,相當(dāng)于P4的低四位讀取機(jī)器人后排右側(cè)與中心引導(dǎo)線的位置關(guān)系;P44~P47接~,相當(dāng)于P4的高四位讀取機(jī)器人前排右側(cè)與中心引導(dǎo)線的位置關(guān)系;P3低四位后排左側(cè)與中心引導(dǎo)線的位置P3高四位前排左側(cè)與中心引導(dǎo)線的位置P4低四位后排右側(cè)與中心引導(dǎo)線的位置P4高四位前排右側(cè)與中心引導(dǎo)線的位置圖74 接口設(shè)置方法7.3 MSP430實(shí)現(xiàn)巡線算法通過(guò)TI公司的MSP430F449單片機(jī)來(lái)實(shí)現(xiàn),具體實(shí)現(xiàn)算法如下。PP2具有中斷功能,雖然中斷口數(shù)量較多,還是需要為系統(tǒng)目前沒(méi)有想到的外部擴(kuò)展留下一些端口備用;傳感器、用于檢測(cè)機(jī)器人是否遇到障礙物或到達(dá)目的地,需要優(yōu)先響應(yīng),所以將這兩個(gè)信號(hào)接于中斷口可滿足這個(gè)要求。具體接口連線:P30;P31;P32;P33;P35;P35;P36;P37;P40;P41;P42;P43;P45;P45;P46;P47;(~采用查詢)P14;P15;(保留中斷的可能性,即可查詢,也可采用中斷) 。具體接口連線:P16(FRONT1);P17(FRONT2);(保留中斷的可能性,即可查詢,也可采用中斷) 。由于需要購(gòu)買(mǎi)芯片的說(shuō)明書(shū)來(lái)確定JTAG接口的具體接法(此次沒(méi)有購(gòu)買(mǎi)MSP430F449芯片),所以在圖中只是畫(huà)出了它的接線口位置。另外還加了一個(gè)備用電機(jī)的控制端口U4(BEIYONG)。輸出部分 —— 電機(jī)控制端口的確定U2是電機(jī)驅(qū)動(dòng)芯片L298N,控制電機(jī)轉(zhuǎn)換方向和轉(zhuǎn)動(dòng)速度。圖71 MSP430F44X系列單片機(jī)引腳分布圖7.2 主控單元電路設(shè)計(jì)圖72 控制原理圖電路圖72說(shuō)明如下:電源部分 —— 電源濾波和轉(zhuǎn)換U1是三端集成穩(wěn)壓器W7805,將24V的電源轉(zhuǎn)換為5V,、C2是濾波電容。方便在線調(diào)試。48個(gè)端口可以滿足采集多路信號(hào)和有足夠的擴(kuò)展口便于滿足更多的要求。底盤(pán)兩個(gè)電機(jī)需要有PWM控制, 產(chǎn)生轉(zhuǎn)速差調(diào)整底盤(pán)。定時(shí)器便于制定電機(jī)轉(zhuǎn)動(dòng)時(shí)間。在處理數(shù)據(jù)乘法時(shí)響應(yīng)很快,便于適時(shí)處理。對(duì)MSP430系列而言,由于引進(jìn)了Flash型程序存儲(chǔ)器和JTAG技術(shù),不僅使開(kāi)發(fā)工具變得簡(jiǎn)便,而且價(jià)格也相對(duì)低廉,并且還可以實(shí)現(xiàn)在線編程。對(duì)于89C51來(lái)說(shuō),由于它是最早進(jìn)入中國(guó)的單片機(jī),人們對(duì)它在熟悉不過(guò)了,再加上我國(guó)各方人士的努力,創(chuàng)造了不少適合我們使用的開(kāi)發(fā)工具。這也就是為什么 MSP430系列產(chǎn)品和其中功能部件迅速增加的原因。 3) 89C51系列單片機(jī)由于其內(nèi)部總線是8位的,其內(nèi)部功能模塊基本上都是8位的雖然經(jīng)過(guò)各種努力其內(nèi)部功能模塊有了顯著增加,但是受其結(jié)構(gòu)本身的限制很大,尤其模擬功能部件的增加更顯困難。而MSP430系列單片機(jī)在低功耗方面的優(yōu)越之處,則是89C51系列不可比擬的。 2) 89C51單片機(jī)本身的電源電壓是5伏,有兩種低功耗方式:待機(jī)方式和掉電方式。而 MSP430單片機(jī)是16位的單片機(jī),采用了精簡(jiǎn)指令集(RISC)結(jié)構(gòu),只有簡(jiǎn)潔的27條指令,大量的指令則是模擬指令,眾多的寄存器以及片內(nèi)數(shù)據(jù)存儲(chǔ)器都可參加多種運(yùn)算。89C51此列單片機(jī)的特點(diǎn)1) 89C51單片機(jī)是8位單片機(jī)。7) 適應(yīng)工業(yè)級(jí)運(yùn)行環(huán)境。開(kāi)發(fā)語(yǔ)言有匯編語(yǔ)言和C語(yǔ)言。對(duì)于OPT型和ROM型的器件是使用仿真器開(kāi)發(fā)成功之后在燒寫(xiě)或掩膜芯片;對(duì)于FLASH型則有十分方便的開(kāi)發(fā)調(diào)試環(huán)境,因?yàn)槠骷瑑?nèi)有JTAG調(diào)試接口,還有可電擦寫(xiě)的FLASH存儲(chǔ)器,因此采用先下載程序到FLASH內(nèi),再在器件內(nèi)通過(guò)軟件控制程序的運(yùn)行,由JTAG接口讀取片內(nèi)信息供設(shè)計(jì)者調(diào)試使用的方法進(jìn)行開(kāi)發(fā)。 6) 方便高效的開(kāi)發(fā)環(huán)境。其中,看門(mén)狗可以使程序失控時(shí)迅速?gòu)?fù)位;模擬比較器進(jìn)行模擬電壓的比較,配合定時(shí)器,可設(shè)計(jì)出A/D轉(zhuǎn)換器; 16位定時(shí)器(Timer_A和Timer_B)具有捕獲/比較功能,大量的捕獲/比較寄存器,可用于事件計(jì)數(shù)、時(shí)序發(fā)生、PWM等;有的器件更具有可實(shí)現(xiàn)異步、同步及多址訪問(wèn)串行通信接口可方便的實(shí)現(xiàn)多機(jī)通信等應(yīng)用;具有較多的I/O端口,最多達(dá)6*8條I/O口線;P0、PP2 端口能夠接收外部上升沿或下降沿的中斷輸入;12/14位硬件A/D轉(zhuǎn)換器有較高的轉(zhuǎn)換速率,最高可達(dá)200kb/s ,能夠滿足大多數(shù)數(shù)據(jù)采集應(yīng)用;能直接驅(qū)動(dòng)液晶多達(dá)160 段;實(shí)現(xiàn)兩路的12位D/A轉(zhuǎn)換;硬件I2C 串行總線接口實(shí)現(xiàn)存儲(chǔ)器串行擴(kuò)展;以及為了增加數(shù)據(jù)傳輸速度,而采用直接數(shù)據(jù)傳輸(DMA)模塊。MSP430系列單片機(jī)的各成員都集成了較豐富的片內(nèi)外設(shè)。4) 超低功耗 MSP430單片機(jī)之所以有超低的功耗,是因?yàn)槠湓诮档托酒碾娫措妷杭办`活而可控的運(yùn)行時(shí)鐘方面都有其獨(dú)到之處。3) MSP430系列單片機(jī)的中斷源較多,并且可以任意嵌套,使用時(shí)靈活方便。2) 在運(yùn)算速度方面, MSP430系列單片機(jī)能在8MHz晶體的驅(qū)動(dòng)下,實(shí)現(xiàn)125ns的指令周期。MSP430系列單片機(jī)是一個(gè)16位的單片機(jī),采用了精簡(jiǎn)指令集( RISC )結(jié)構(gòu),具有豐富的尋址方式(7種源操作數(shù)尋址、4種目的操作數(shù)尋址)、簡(jiǎn)潔的27條內(nèi)核指令以及大量的模擬指令;大量的寄存器以及片內(nèi)數(shù)據(jù)存儲(chǔ)器都可參加多種運(yùn)算;還有高效的查表處理指令;有較高的處理速度,在 8MHz 晶體驅(qū)動(dòng)下指令周期為125ns 。這種以 Flash 技術(shù)與 FET 開(kāi)發(fā)工具組合的開(kāi)發(fā)方式,具有方便、廉價(jià)、實(shí)用等優(yōu)點(diǎn),給用戶提供了一個(gè)較為理想的樣機(jī)開(kāi)發(fā)方式。MSP430系列由于具有Flash存儲(chǔ)器,在系統(tǒng)設(shè)計(jì)、開(kāi)發(fā)調(diào)試及實(shí)際應(yīng)用上都表現(xiàn)出較明顯的優(yōu)點(diǎn)??梢?jiàn),本設(shè)計(jì)對(duì)芯片I/O口數(shù)量要求很大,并且要響應(yīng)速度快,運(yùn)行穩(wěn)定。光電傳感器向控制系統(tǒng)輸入18路檢測(cè)信號(hào),超聲波傳感器需要2路輸入。本章中將為該主控系統(tǒng)選擇一款簡(jiǎn)潔、廉價(jià)、易于開(kāi)發(fā)的芯片MSP430F449,并在該芯片上實(shí)現(xiàn)機(jī)器人的相應(yīng)算法。第7章 主控系統(tǒng)的設(shè)計(jì)主控系統(tǒng)負(fù)責(zé)信息處理和控制外部電路,相當(dāng)于人體中的頭腦。1~5的思想是使機(jī)器人底盤(pán)的正中傳感器向引導(dǎo)線靠近,使得機(jī)器人沿著引導(dǎo)線向前移動(dòng)。圖62 (g),后排右側(cè)傳感器、中的一個(gè)與前排左側(cè)傳感器、中的一個(gè)同在引導(dǎo)線上或者后排右側(cè)傳感器、中的一個(gè)在引導(dǎo)線上且前排中心傳感器在引導(dǎo)線上,則左轉(zhuǎn)。圖62 (f),后排左側(cè)傳感器、中的一個(gè)與前排右側(cè)傳感器、中的一個(gè)同在引導(dǎo)線上或者后排左側(cè)傳感器、中的一個(gè)在引導(dǎo)線上且前排中心傳感器在引導(dǎo)線上,則右轉(zhuǎn)。機(jī)器人底盤(pán)左側(cè)大部分偏出,應(yīng)該右轉(zhuǎn)。驅(qū)動(dòng)輪左輪停,右輪轉(zhuǎn)動(dòng),車(chē)身向左移動(dòng)。圖62 (d),后排左側(cè)傳感器、中的一個(gè)與前排左側(cè)、中的一個(gè)同在引導(dǎo)線上。機(jī)器人底盤(pán)左側(cè)大部分偏出,應(yīng)該向右偏移。驅(qū)動(dòng)輪左輪停,右輪轉(zhuǎn)動(dòng),向左移動(dòng)使底盤(pán)中心
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1