新聞中心

        EEPW首頁 > 物聯網與傳感器 > 設計應用 > 基于智能車非勻速行駛記憶算法的研究和實現

        基于智能車非勻速行駛記憶算法的研究和實現

        —— Research and Realization of Remembering Algorithm in Smart Car with Non-Fixed Speed
        作者:袁三男,汪劍光,張云峰,呂堯 時間:2009-06-19 來源:電子產品世界 收藏

          摘要: 本文對基于非勻速行駛狀態下光電的記憶算法進行了深入研究,詳細介紹了系統硬件設計、原始數據的記憶、數據處理和記憶算法的實現。實踐表明,使用記憶算法之后,由于對整個賽道有了超前的預知性,的速度有了較大幅度的提高。隨著比賽賽道的長度和復雜程度的進一步加大,記憶算法正進一步地發揮著作用。

        本文引用地址:http://www.104case.com/article/95472.htm

          1、概述:

          作者參加了第二屆“杯”全國大學生比賽,在智能車設計和比賽過程中得到了一些經驗和結果,特別是針對記憶算法進行了研究和不斷改進。按照競賽規定,智能車在以白板為背景、中間黑線作為引導線的賽道上自動行駛,在不駛離賽道的前提下,以行駛的速度快慢為比賽成績的好壞。因此必須使用采集系統將賽道信息采集后按照黑線行駛。比賽規則規定,在每輪比賽中每輛賽車在賽道上連續跑兩圈,以起始線為計時點,以用時短的一圈計單輪成績;每輛賽車以在兩個單輪成績中的較好成績為賽車成績。本文設計的賽車使用的采集系統為光電,光電只能采集當前的黑白信息,采集距離有限,無法預測前方道路,因此,為了實現各種優化算法,如轉彎走內道、前方直線則預先加速、轉彎提前減速等方法,必須借助于記憶算法,預先知道前方道路信息,而比賽規則的制訂也為記憶算法的實現成為可能。

          記憶算法的原理分兩部分,前一部分即第一圈采用邊行駛邊記憶道路信息。第二部分即第二圈按照記憶的數據就預先知道了前方的道路信息,從而可以實現各種優化算法。通常情況下,為了實現記憶算法,必須記住第一圈行使時每一點的轉彎或直行信息,因此第一圈必須按照勻速行駛。為了更好地提高速度,本文采取第一圈就按照其他各類快速算法在非預先知道道路信息的情況下快速非勻速行駛,在行駛過程中按照特定的算法和數據格式存儲道路信息,第二圈在此基礎上按照預先記憶的道路信息實現更快地行使。這樣在第一圈時就達到了最佳速度,即使第二圈由于其他原因沖出賽道,也能得到很好的成績,而第二圈按照記憶算法和其他最佳算法的實現得到更快的速度。

          2、硬件實現原理:

          按照競賽的某些規定,本文設計了如圖1所示的硬件原理框圖。  

         

          其中主控CPU規定使用Freescale的MC9SDG128B,系統供電為7.2V電池。為了提高效率,除了為MCU、Hall測速和紅外傳感器提供5V供電外,系統中還由LM2596提供6V供電給舵機,使得舵機靈敏度提高,而電機直接使用7.2V電池供電。紅外傳感器采用一排13對紅外發射接收管,利用其接收的電平大小經過MCU的ADC后由MCU判斷當前黑線所處的位置,為了降低功耗,系統中還增加了MOS開關管,當檢測某紅外傳感器時該傳感器供電打開,其余的則關閉,實驗證明,增加該功能后,系統功耗減小很大,原來開了幾圈后小車速度會因為電池供電不足而降速,而加了功率開關后開十幾圈都不會降速。

          賽道中具有十字交叉路口,同時必須判斷起始(即終止線),因此智能車預先可以配置當前賽道的總的十字交叉個數,同時通過軟件算法可以判斷出是否經過世紀交叉口(起始終止線可以作為一個十字交叉線)。

          系統運行時,按照紅外傳感器采集的信息可以判斷出當前引導線的位置,即在小車的左邊、中間或右邊,偏離多少,MCU據此以及由Hall測速傳感器獲知的當前小車的速度確定小車當前的行為,主要控制舵機即小車的方向和電機即小車的速度。

          3、軟件控制算法:

          系統軟件控制主要包括兩部分,也即記憶算法的兩個過程,從行駛過程中看即第一圈和第二圈,其流程框圖如圖2所示。  


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 五台县| 中卫市| 泾源县| 栾川县| 霍山县| 渑池县| 枣强县| 洛浦县| 襄城县| 太白县| 昭通市| 图木舒克市| 中宁县| 临洮县| 昌平区| 久治县| 孝义市| 林芝县| 綦江县| 汉川市| 丹阳市| 司法| 黄龙县| 余庆县| 兰西县| 贵德县| 烟台市| 屏东县| 长兴县| 临夏市| 南靖县| 南郑县| 兴城市| 拉孜县| 宁国市| 察雅县| 玛沁县| 广灵县| 乌兰浩特市| 博爱县| 甘孜县|