新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于ARM-Linux多功能機器人的設計

        基于ARM-Linux多功能機器人的設計

        作者: 時間:2016-09-12 來源:網絡 收藏

        摘要:針對目前機器人技術普遍存在的成本高、功耗大、實時性差的缺點,采用性能高、成本低、功耗低的S3C2440芯片作為核心處理器,移植實時性較高的操作系統,以增強系統的實時性和可靠性,實現機器人的精確實時控制。并通過設計模塊、模塊、模塊等功能模塊,使系統具有實時監控、語音控制、等功能。

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

        目前機器人技術已廣泛應用在太空探測、救災防爆、海洋開發等領域,但是其存在的成本高、功耗大、實時性差的問題一定程度上阻礙了機器人進入人們日常生活。處理器是一種高性能、低成本、低功耗的RISC芯片,并移植功能強大、運行穩定的操作系統能使系統的成本、實時性、功耗等性能指標得以改善。

        基于以上考慮,文中選用基于處理器的嵌入式平臺,通過設計模塊、模塊、模塊,構建一個相對完善的多功能機器人。可應用于無人工廠、倉庫、服務機器人、未知路線探測和人類不能存在或長期存在等環境中。

        1 系統總體設計方案

        整個系統的設計分為硬件設計和軟件設計兩部分。系統的總體結構如圖1所示。硬件部分主要包括:控制器的選擇以及控制器與外圍設備的接口電路,采用模塊化設計,主要包括電源模塊、電機驅動模塊、處理模塊、語音通信模塊等。系統軟件以操作系統作為開發平臺,設計各功能模塊具體程序以及設備的驅動程序等。

        基于ARM-Linux多功能機器人的設計

        1.1 系統硬件設計

        1.1.1 主控制板

        嵌入式處理器是一種高性能、低功耗的RISC芯片,具有性能高、成本低和功耗低的特點,不僅能完成控制功能,對運算速度要求較高的場合也能適用,還能運行如Linux、WinCE等復雜的操作系統。ARM微處理器正迅速成為多媒體數字消費、手持設備、便攜式通信設備以及嵌入式解決方案市場中RISC批量生產的標準。

        主控制板采用TQ2440開發板作為系統控制和數據處理的硬件平臺,開發板的主控制芯片S3C2440主頻400MHz,性能好、功耗低、體積小、接口豐富,是三星公司生產的一款基于ARM920T核的16/32位RISC微處理器。

        TQ2440開發板具有LCD控制器、64MB Nand Flash、64MB SDRAM控制器、一個UART擴展接口、一個五線異步串行接口、RJ45網絡接口、DM 9000E 100M網卡芯片、CMOS攝像頭接口、觸摸屏接口等,支持WinCE、Linux等操作系統。

        1.1.2 視頻采集模塊

        圖像采集設備采用OV9650 CMOS攝像頭模塊,130萬像素,最高分辨率可達1 300x1 028,敏感度高、功耗低,成像清晰,支持多種圖像格式,支持自動圖像控制,適用于手持設備、攝像監控設備,并且與TQ2440開發板完全配套。

        1.1.3 電機驅動模塊及電機

        系統采用了L298電機驅動模塊,驅動電壓為2~46 V,峰值電流為2 A,最大功率可達80 W,同時支持PWM調速;采用FAULHABER空心杯減速電機,工作電壓為12 V,空載轉速為8100RPM,減速后速為120 RPM,輸出功率為17 W。

        1.2 系統軟件設計

        系統軟件主要包括移植Linux操作系統,設備驅動的編寫,基于V4L的視頻采集程序設計,嵌入式Web服務器的設計、語音控制系統的設計等。

        1.2.1 嵌入式Linux環境的建立

        嵌入式操作系統具有處理能力強、體積小、性能強、功耗低、可靠性高等突出的特征,目前已在消費電子、網絡通信、軍事國防、工業控制等領域得到廣泛應用。Linux系統源代碼開放、內核可裁減性強,具有良好的移植性,且集成了TCP/IP協議,有較好的網絡功能,因此選用Linux嵌入式系統作為整個系統軟件開發的平臺。

        先安裝虛擬機,在虛擬機上安裝內核版本為2.6.30的Fedora 10 Linux操作系統,交叉編譯uboot、kernel、cramfs文件系統,在配置菜單中選擇相應的配置后編譯內核,得到內核鏡像文件.zImage,將其下載至開發板并完成對宿主機的tftp、nfs服務的配置后,即可控制和調試開發板。

        1.2.2 攝像頭驅動

        使用的Linux版本支持OV9650攝像頭模塊,只需在Linux Kernel中添加對模塊的支持即可成功驅動設備。通過CAMIF接口將OV9650攝像頭連接到開發板,設備的驅動程序可直接控制攝像頭并進行數據的傳輸。

        將OV9650的驅動程序載入內核時要先對其內部寄存器進行初始化操作,目的是申請所需資源并設置相關的設備;設備成功初始化之后開始進行圖像的采集。完成圖像采集過程后釋放初始化時申請的資源,然后退出并關閉設備,完成采集工作。

        1.2.3 無線網卡驅動

        無線網卡選用Ralink Rt2870 Wireless LAN Card,通過USB HOST接口將其連接到開發板,無線協議棧的接口由設備驅動提供。由于USB總線首先被CPU檢測到,其次才是無線網卡芯片,因此需要在完成Linux操作系統下USB的驅動后再進行無線網卡芯片的驅動,并且在初始化網卡時需先向USB子系統進行注冊,判斷網卡是否接入系統。無線網絡的軟、硬件層次結構圖如圖2所示。

        基于ARM-Linux多功能機器人的設計

        將USB HOST設置為內核模式,重新編譯內核后下載至開發板,啟動開發板,插入并掛載U盤。將Ralink Rt2870 Wireless LAN Card驅動保存到Linux目錄并解壓,進入到解壓之后生成的文件夾,修改驅動源碼根目錄下的Makefile文件后編譯驅動,生成.ko文件。將.ko文件復制到文件系統的/tmp目錄下,重啟開發板,進入文件系統后利用insmod命令將模塊加載至內核,完成對設備的驅動。之后插入USB無線網卡,通過#ifcontig ra0 up命令激活無線網卡,其中ra0為網卡接口。完成激活后對無線網絡進行配置,配置完成后,打開瀏覽器,輸入無線網絡的賬號、密碼即可實現網絡連接功能。

        2 功能模塊的設計

        2.1 基于V4L視頻采集模塊的設計

        V4L是Linux操作系統為視頻設備專門提供的應用程序接口,也是系統對視頻設備在內核層次上的驅動。通過標準的系統調用就可操縱視頻設備,完成打開設備、讀寫設備和關閉設備等操作。通過make memuconfig命令進入內核配置菜單,在Multimedia devices子菜單中選中Video for Linux,完成內核中對V4L模塊的加載。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 周宁县| 龙州县| 辽宁省| 湛江市| 夏邑县| 鄂伦春自治旗| 紫阳县| 临朐县| 安新县| 云南省| 镇坪县| 东明县| 凤山县| 错那县| 北宁市| 鄂温| 浮山县| 赤峰市| 彭水| 峨山| 贵阳市| 兴文县| 兴山县| 汪清县| 阜新市| 镇原县| 安阳市| 乌兰浩特市| 胶州市| 哈密市| 泾川县| 福州市| 威信县| 伊金霍洛旗| 遵义县| 民乐县| 土默特右旗| 罗江县| 剑河县| 蓝田县| 北京市|