999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

K64和MQXLite的直立智能循跡小車設(shè)計(jì)

2018-04-11 09:14:02,,

,,

(蘇州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,蘇州215006)

引 言

隨著現(xiàn)代計(jì)算機(jī)、電子、自動(dòng)化等技術(shù)的發(fā)展,越來越多的智能設(shè)備進(jìn)入人們的生活。智能汽車作為近些年來的研究熱點(diǎn),其無人駕駛技術(shù)具有良好的應(yīng)用前景。而直立智能車由于具有靈活、占地面積小等特點(diǎn),在擁擠的地方有較大用途。

小車設(shè)計(jì)遵循第十二屆全國(guó)大學(xué)生智能汽車競(jìng)賽技術(shù)規(guī)范,使用E型車模作為基礎(chǔ)機(jī)械結(jié)構(gòu),完成硬件電路設(shè)計(jì),并基于實(shí)時(shí)操作系統(tǒng)MQXLite設(shè)計(jì)了控制算法,實(shí)現(xiàn)小車直立行駛,自動(dòng)循跡功能。

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

系統(tǒng)硬件架構(gòu)圖如圖1所示,小車硬件系統(tǒng)由輸入部分、微控制器、輸出部分和供電模塊組成。輸入部分的陀螺儀和加速度傳感器、編碼器、攝像頭作為信息采集設(shè)備,實(shí)時(shí)采集小車狀態(tài)信息,經(jīng)微控制器處理后,微控制器輸出PWM波至電機(jī)驅(qū)動(dòng)模塊,控制電機(jī)轉(zhuǎn)速,實(shí)現(xiàn)自動(dòng)循跡。而迷你鍵盤和OLED顯示屏作為人機(jī)交互設(shè)備,方便調(diào)試和獲取信息。

圖1 系統(tǒng)硬件架構(gòu)圖

1.1 微控制器

微控制器選用恩智浦半導(dǎo)體公司生產(chǎn)的MK64FX512VLL12(K64),其特點(diǎn)為高性能,主頻可達(dá)120 MHz,且有FTM、ADC、SPI、I2C、UART等豐富接口。作為智能車的核心控制模塊,微控制器需要獲取各傳感器的輸入信息,轉(zhuǎn)換為可處理的數(shù)字量,并由控制算法計(jì)算出PWM占空比,輸出PWM波至電機(jī)驅(qū)動(dòng)模塊。一款高性能的微控制器可以快速完成控制任務(wù),使系統(tǒng)更加穩(wěn)定。

1.2 供電模塊

小車使用7.2 V、2 000 mAh的鎳鎘電池供電,而陀螺儀、加速度傳感器、攝像頭的工作電壓為3.3 V,編碼器的工作電壓為5 V,因此需要設(shè)計(jì)降壓電路,獲得各設(shè)備的工作電壓。

TPS系列低壓差線性穩(wěn)壓芯片的工作壓降較低,靜態(tài)工作電流較小,且具有過載保護(hù)功能[1]。利用TPS7333和TPS7350兩款芯片,完成了電路設(shè)計(jì),具有較高的穩(wěn)定性。其中,TPS7350電路原理圖如圖2所示,TPS7333電路原理圖與其類似。

圖2 TPS7350電路原理圖

1.3 輸入部分

輸入部分包含陀螺儀和加速度傳感器、編碼器、攝像頭和迷你鍵盤。它們?yōu)檎麄€(gè)系統(tǒng)采集信息,是一切控制的基礎(chǔ)。

我們選用的陀螺儀型號(hào)為ENC-03,加速度傳感器型號(hào)為MMA7361,它們集成在一個(gè)模塊上,通過兩個(gè)ADC接口與微控制器連接,將采集到的角速度和加速度模擬量傳輸至微控制器處理。

對(duì)于編碼器,選用了歐姆龍公司生產(chǎn)的500線編碼器,通過齒輪與電機(jī)連接,這樣電機(jī)旋轉(zhuǎn)時(shí),編碼器便會(huì)產(chǎn)生脈沖,脈沖數(shù)與電機(jī)轉(zhuǎn)速成正比。K64的FTM模塊有正交解碼功能,可以利用該模塊捕獲編碼器脈沖。

OV7725是由Omnivision公司生產(chǎn)的圖像感光器件,與OV7620、OV7670這些型號(hào)相比,OV7725信噪比更高、速度更快、穩(wěn)定性更好、微光靈敏度更高[2]。我們選用的鷹眼攝像頭既使用了OV7725芯片,又設(shè)計(jì)了硬件二值化電路,可直接將攝像頭采集到的二值化圖像傳輸至微控制器。

迷你鍵盤為人機(jī)交互設(shè)備的一部分,它是一個(gè)4×4的矩陣鍵盤,可以自定義按鍵功能,完成參數(shù)的錄入與修改。

1.4 輸出部分

輸出部分包含電機(jī)驅(qū)動(dòng)模塊和OLED顯示屏。

在設(shè)計(jì)電機(jī)驅(qū)動(dòng)模塊時(shí),我們使用兩片IR2104S芯片和4個(gè)MOSFET組成全橋驅(qū)動(dòng)電路,利用MOSFET的通斷來控制兩個(gè)電機(jī)的轉(zhuǎn)動(dòng)方向與轉(zhuǎn)速。其中,IR2104S芯片為IR公司生產(chǎn)的半橋驅(qū)動(dòng)芯片。

OLED顯示屏為人機(jī)交互設(shè)備的另一部分,其分辨率為128×64,可以顯示攝像頭拍攝的圖像、采集到的數(shù)據(jù)等,方便調(diào)試。

2 控制算法設(shè)計(jì)

直立小車運(yùn)動(dòng)控制任務(wù)可以分解成以下三個(gè)基本任務(wù)[3]:

① 直立控制。根據(jù)小車當(dāng)前的角度和角速度,控制電機(jī)正反轉(zhuǎn),使小車保持平衡。

② 速度控制。根據(jù)小車當(dāng)前的速度,調(diào)整小車傾角,使小車按設(shè)定速度行駛。

③ 方向控制。根據(jù)攝像頭采集到的圖像,計(jì)算離中心線的偏離程度,控制兩個(gè)電機(jī)之間的轉(zhuǎn)動(dòng)差速,使小車轉(zhuǎn)向。

這三個(gè)控制會(huì)分別輸出對(duì)電機(jī)轉(zhuǎn)向和轉(zhuǎn)速的控制量,通過線性疊加,得到PWM占空比,最終輸出PWM波至電機(jī)驅(qū)動(dòng)模塊。

2.1 直立控制

可以將直立小車看成一個(gè)倒立的單擺,當(dāng)它往一個(gè)方向傾倒時(shí),在它的底部提供一個(gè)同向的加速度,便可以使它回到平衡位置,如圖3所示。

圖3 直立控制原理

加速度傳感器采集到小車加速度a后,由下式可以得到小車當(dāng)前角度θ1:

(1)

其中,g為重力加速度單位。另外,將陀螺儀采集到的角速度ω積分,可以得到角度θ2。通過卡爾曼濾波,可以將θ1和θ2融合為變化平滑的角度θ。

利用PD控制,得到直立控制的控制量Ca:

Ca=Kpa×(θ-θ0)+Kda×ω

(2)

其中,Kpa為直立控制比例系數(shù),Kda為直立控制微分系數(shù),θ0為小車平衡時(shí)的角度。Kpa和Kda均需通過實(shí)驗(yàn)得到。

2.2 速度控制

為了使系統(tǒng)更加穩(wěn)定,我們希望小車勻速行駛。完成直立控制后,若想讓小車加速,則僅需使其前傾。通過不斷調(diào)整傾角,便可以使其按設(shè)定速度行駛。

利用編碼器獲得左右輪的速度后,先由式(3)得到速度差值ve:

(3)

其中,vl為左輪速度,vr為右輪速度,v0為設(shè)定速度。再將ve積分,得到總的距離偏差d。最后利用PI控制,由式(4)得到速度控制的控制量Cs:

Cs=Kps×ve+Kis×d

(4)

其中,Kps為速度控制比例系數(shù),Kis為速度控制積分系數(shù),它們均需通過實(shí)驗(yàn)得到。這樣,當(dāng)小車速度低于設(shè)定速度時(shí),Cs為負(fù),小車前傾,而直立控制為了使小車保持平衡,便會(huì)給小車一個(gè)向前的加速度,使小車加速。

2.3 方向控制

為了使小車能夠沿指定道路行駛,還需要進(jìn)行方向控制,根據(jù)道路情況及時(shí)調(diào)整小車的前進(jìn)方向。

圖4 中線提取效果

中線提取效果如圖4所示,在攝像頭采集到的二值化圖像上,道路中間為白色,邊緣為黑色。使用中線提取算法,找出圖像上每行的左右邊線,進(jìn)而求出道路中心線的位置。對(duì)每行中點(diǎn)位置進(jìn)行加權(quán)平均,得到表示小車位置的量,用這個(gè)量減去小車目標(biāo)位置,得到小車離中心線的偏離度me。再計(jì)算me的微分量Δme,Δme表示小車方向的變化率。利用PD控制,由式(5)得到方向控制的控制量Ct:

Ct=Kpt×me+Kdt×Δme

(5)

其中,Kpt為方向控制比例系數(shù),Kdt為方向控制微分系數(shù),它們均需通過實(shí)驗(yàn)得到。當(dāng)小車在道路左側(cè)時(shí),拍攝到的圖像向右移動(dòng),me為正,因而Ct為正。線性疊加控制量時(shí),左輪加Ct,而右輪減Ct,這樣,小車會(huì)向右轉(zhuǎn)向,恢復(fù)至道路中心位置。

2.4 控制融合

在完成了直立、速度和方向控制后,線性疊加Ca、Cs和Ct,為了使小車能夠轉(zhuǎn)向,在疊加Ct時(shí),左輪加Ct,而右輪減Ct。線性疊加的結(jié)果即為PWM占空比,根據(jù)這個(gè)占空比,微控制器輸出PWM波至電機(jī)驅(qū)動(dòng)模塊,控制小車行駛。

3 基于MQXLite的軟件設(shè)計(jì)

為了使系統(tǒng)獲得更好的實(shí)時(shí)性和穩(wěn)定性,我們使用了實(shí)時(shí)操作系統(tǒng)MQXLite。與無操作系統(tǒng)時(shí)不同,操作系統(tǒng)下的編程是以任務(wù)為單位的,每一個(gè)任務(wù)完成一個(gè)特定功能,各個(gè)任務(wù)之間相互獨(dú)立。編寫完各個(gè)任務(wù)后,交由操作系統(tǒng)調(diào)度運(yùn)行,降低了程序設(shè)計(jì)的難度。

3.1 MQXLite簡(jiǎn)介

MQXLite是標(biāo)準(zhǔn)MQX(Message Queue eXecutive)嵌入式實(shí)時(shí)操作系統(tǒng)的輕量級(jí)版本,它支持多任務(wù)、優(yōu)先級(jí)調(diào)度、同步訪問資源、任務(wù)間通信、中斷處理,具有實(shí)時(shí)性高、內(nèi)核精簡(jiǎn)、資源占用低等特點(diǎn)[4]。

3.2 任務(wù)劃分

MQXLite中,任務(wù)的基本形式按其執(zhí)行方式分為單次執(zhí)行任務(wù)、周期執(zhí)行任務(wù),以及資源驅(qū)動(dòng)任務(wù)[5]。

單次執(zhí)行任務(wù)在創(chuàng)建后,只執(zhí)行一次,之后便被銷毀或阻塞;周期執(zhí)行任務(wù)按照一定周期執(zhí)行一次;資源驅(qū)動(dòng)任務(wù)僅在它等待的資源可用時(shí),才可能被執(zhí)行。

根據(jù)設(shè)計(jì)的控制算法,我們劃分了5個(gè)任務(wù):task_main、task_angle、task_speed、task_turn和task_comm。

task_main為單次執(zhí)行任務(wù),它是MQXLite啟動(dòng)后執(zhí)行的第一個(gè)任務(wù),用于初始化全局變量、初始化外設(shè)、創(chuàng)建其他任務(wù)和安裝用戶中斷服務(wù)例程。

task_angle為5 ms執(zhí)行一次的周期性任務(wù),該任務(wù)用于直立控制。首先,它獲取陀螺儀和加速度傳感器采集到的角速度和加速度,再通過直立控制算法,計(jì)算得到直立控制的控制量。最后,在該任務(wù)中還完成控制量的線性疊加,更新左右電機(jī)PWM占空比,以變更小車行駛狀態(tài)。

task_speed為20 ms執(zhí)行一次的周期性任務(wù),該任務(wù)用于速度控制。在獲取左右輪速度后,根據(jù)速度控制算法,更新速度控制的控制量。

task_turn為資源驅(qū)動(dòng)任務(wù),用于方向控制。攝像頭采集完畢圖像后,會(huì)觸發(fā)一個(gè)中斷,在該中斷的中斷服務(wù)例程中,置輕量級(jí)事件位,觸發(fā)task_turn任務(wù)。該任務(wù)中,對(duì)采集到的圖像使用方向控制算法,更新方向控制的控制量。

task_comm為資源驅(qū)動(dòng)任務(wù),主要用于與上位機(jī)的通信,進(jìn)行調(diào)試。在收到上位機(jī)的命令后,該任務(wù)被觸發(fā),將小車的參數(shù)發(fā)送至上位機(jī),用于調(diào)試與分析。

另外,由于各控制量被多個(gè)任務(wù)使用,在更新控制量時(shí),還需要使用互斥體來保證對(duì)它們的同步訪問。

各任務(wù)優(yōu)先級(jí)從高到低依次為:task_main、task_turn、task_speed、task_angle和task_comm。由于圖像采集的時(shí)間較長(zhǎng),在圖像采集完畢后,我們希望能夠盡快更新方向信息,所以task_turn優(yōu)先級(jí)較高。task_speed和task_angle同理。而task_comm并不是特別重要,優(yōu)先級(jí)最低。這樣設(shè)置任務(wù)優(yōu)先級(jí)后,對(duì)方向、速度控制的響應(yīng)會(huì)比無操作系統(tǒng)時(shí)快,使整個(gè)系統(tǒng)獲得了更好的實(shí)時(shí)性和穩(wěn)定性。

結(jié) 語

[1] Texas Instruments. Low-Dropout Voltage Regulators With Integrated Delayed Reset Function (Rev. F)[EB/OL]. (1999-01-01) [2018-01-31].http://www.ti.com/lit/ds/symlink/tps73.pdf.

[2] Omnivision. OV7725 datasheet[EB/OL]. (2007-12-17) [2018-01-31].http://www.zhopper.narod.ru/mobile/ov7725_full.pdf.

[3] 劉明,王洪軍,李永科.直立行走的智能車設(shè)計(jì)方案[J].科技信息,2012,29(20):122.

[4] Freesca1e Semiconductor. MQXLite Real-Time Operating System User Guide. Rev 1.1[EB/OL]. (2014-02-01) [2018-01-31].http://cache.freescale.com/files/soft_dev_tools/doc/user_guide/MQXLITEUG.pdf.

[5] 王宜懷,朱仕浪,姚望舒.嵌入式實(shí)時(shí)操作系統(tǒng)MQX應(yīng)用開發(fā)技術(shù)—ARM Cortex-M微處理器[M]. 北京:電子工業(yè)出版社,2014.

[6] 卓晴,黃開勝,邵貝貝.學(xué)做智能車:挑戰(zhàn)“飛思卡爾”杯[M]. 北京:北京航空航天大學(xué)出版社,2007.

趙俊杰、高曉雅(本科),物聯(lián)網(wǎng)工程專業(yè);張建(講師),主要研究方向?yàn)镸IS系統(tǒng)開發(fā)、嵌入式系統(tǒng)應(yīng)用。

主站蜘蛛池模板: 92午夜福利影院一区二区三区| 美女国内精品自产拍在线播放 | 国产永久在线观看| 91久久国产综合精品| 青青青亚洲精品国产| 欧美激情一区二区三区成人| 中文字幕精品一区二区三区视频| 欧美伊人色综合久久天天| 亚洲第一视频网| 免费一级大毛片a一观看不卡| 国产chinese男男gay视频网| 亚洲欧美在线看片AI| 欧美在线视频a| 亚洲乱亚洲乱妇24p| 欧美性精品不卡在线观看| 成人国产三级在线播放| 99热这里只有精品5| 高潮毛片免费观看| 伊人久久大香线蕉综合影视| 欧美伦理一区| 国产麻豆永久视频| 无码AV高清毛片中国一级毛片| 在线亚洲天堂| 日韩欧美国产区| 精品国产成人a在线观看| 国产精品精品视频| 亚洲黄网视频| 亚洲中文字幕国产av| 国产激情无码一区二区三区免费| 国产综合在线观看视频| 国产一区二区在线视频观看| 亚洲一区二区约美女探花| 国产成年女人特黄特色大片免费| 久草青青在线视频| 黄色网址免费在线| 亚洲欧美成人网| 成人精品在线观看| 国产h视频免费观看| 91精品国产福利| 国产一区自拍视频| 成人日韩精品| 亚洲综合极品香蕉久久网| 免费观看男人免费桶女人视频| 日日拍夜夜操| 性色一区| 天堂在线视频精品| 亚洲综合精品香蕉久久网| 亚洲AV无码久久精品色欲| 欧美v在线| 三级欧美在线| 亚洲欧美激情另类| 黄色免费在线网址| 免费在线视频a| 成人在线第一页| 91成人在线观看视频| 国产亚洲欧美日本一二三本道| 四虎永久在线| 97精品国产高清久久久久蜜芽| 欧美在线黄| 欧美成人免费午夜全| 好紧太爽了视频免费无码| 国产高颜值露脸在线观看| 亚洲欧美成人综合| 一区二区三区四区日韩| 四虎国产永久在线观看| AV网站中文| 极品私人尤物在线精品首页| 国产99精品久久| 亚洲成人77777| 欧美日韩v| 一级一级一片免费| 伊人91在线| 国产精品yjizz视频网一二区| 国产成人凹凸视频在线| 久久国产精品夜色| 国产91无码福利在线| 国产精品自在线天天看片| 无码中文AⅤ在线观看| 欧美日韩中文字幕在线| 丰满人妻一区二区三区视频| 97国内精品久久久久不卡| 日韩成人在线一区二区|