新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于DSP的移動機器人設計與實現

        基于DSP的移動機器人設計與實現

        作者: 時間:2008-10-22 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/258039.htm
        4 電源模塊

        電源模塊需分別給各傳感器、芯片、其它芯片和電機供電。其中,磁羅盤、碼盤和DGPS接收機使用12V直流電壓,芯片使用3.3V直流電壓,其它芯片使用5V直流電壓,還有電機電源使用12V直流電壓。所以,采用1節12V的直流蓄電池(4AH),直流5V通過ST半導體公司的L7805和擴流用的功率管實現,芯片用3.3V電源采用ON半導體公司的1SMB5913BT3實現。F2407正常工作時,所有電源管腳都為3.3V;寫入FLASH存儲器時,VCCP引腳為5V供電;復位時,復位電路會產生一個10μs寬度的持續低電平使芯片復位。

        5 控制器程序結構

        DSP程序由五大功能模塊組成,分別為系統初始化模塊、串口通信模塊、路徑引導模塊、驅動電機控制模塊和轉向電機控制模塊。TI公司提供了用于C語言開發的CC和CCS平臺。該平臺包括了ANSIC優化編譯器,從而可以在源程序級進行開發調試。這種方式大大提高了軟件的開發速度和可讀性,方便了軟件的修改和移植。但在某些情況下,代碼的效率還是無法與手工編寫的匯編代碼的效率相比。此外,用C語言實現芯片的某些硬件控制也不如匯編程序方便,有些甚至無法用語言實現。為了充分利用芯片的資源,更好地發揮C語言和匯編語言進行軟件開發的各自優點,采用混合編程方法將兩者有機結合起來,兼顧兩者的優點,避免其弊端。系統的框架如圖5所示。下面對關鍵的幾大模塊進行簡要的闡述。

        5.1 串口通信模塊

        該模塊程序采用串口中斷方式實現,主程序主要由系統初始化、串口初始化、串口中斷設置和等待中斷組成。而中斷子程序分為發送子程序和接收子程序。本文給出發送子程序流程圖。主程序及發送子程序流程圖如圖6所示。

        5.2 路徑引導模塊

        該模塊在行駛中為其提供實時的速度和轉向指令,從而引導它沿著上位機給定的路徑行駛。主要包括行駛指令的產生和規劃路徑的跟蹤兩個環節。

        根據預瞄跟隨理論及駕駛員的開車行為特性,智能行駛和駕駛員操縱行為是內在一致的。通過研究有駕駛員操縱行為,發現主要根據兩個因素決定車輛的前進速度,這兩個因素分別是道路的彎曲程度和機器人相對參考路徑上的方向偏差。

        的前進速度的控制不需要連續變化,可設置為三檔,分別對應高、中和低三個速度。由此確定的前進速度跟蹤規則為:

        ·當方向偏差小于10度時,路徑基本為直線,前進速度設為高速;

        ·當方向偏差小于90度時,路徑彎曲較嚴重,前進速度設為低速;

        ·其它情況時,前進速度為中速。

        5.3 驅動電機和轉向電機控制模塊

        驅動電機模塊采取PID控制策略,將車速傳感器檢測的信號作為電機的反饋信號,進行PID控制,取得了很好的控制效果。轉向控制模塊的控制策略與驅動電機的類似,只是其反饋的信號為數字羅盤的方向信號。PID控制算式為:

        式中,u(k)為控制的輸出;e(k)為k時刻的偏差;Kp、Ki、Kd分別為PID控制算法的比例系數、積分常數和微分常數。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 重庆市| 新巴尔虎右旗| 海淀区| 龙井市| 牡丹江市| 西安市| 通州区| 桐庐县| 五莲县| 嵊州市| 漠河县| 金寨县| 正镶白旗| 都兰县| 贵港市| 象山县| 子长县| 武陟县| 汪清县| 田林县| 崇礼县| 大冶市| 台湾省| 台州市| 华容县| 潞西市| 外汇| 图们市| 张家港市| 利津县| 灵川县| 搜索| 阿拉善右旗| 平昌县| 普安县| 沾化县| 京山县| 缙云县| 乌审旗| 榕江县| 公安县|