www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]隨著科學(xué)技術(shù)的發(fā)展和社會的需要,移動機器人技術(shù)得到了迅速發(fā)展,正在滲透到各行各業(yè)中,使人們的生活更加便利?,F(xiàn)今以單片機為核心的移動機器人存在處理數(shù)據(jù)量有限、控制

隨著科學(xué)技術(shù)的發(fā)展和社會的需要,移動機器人技術(shù)得到了迅速發(fā)展,正在滲透到各行各業(yè)中,使人們的生活更加便利?,F(xiàn)今以單片機為核心的移動機器人存在處理數(shù)據(jù)量有限、控制系統(tǒng)速度低、人機交互機制單一等缺點,不能滿足機器人多任務(wù)的要求。系統(tǒng)中增加協(xié)處理器的系統(tǒng)結(jié)構(gòu)也得到了廣泛應(yīng)用,雖然可以管理多種傳感器,但這種結(jié)構(gòu)卻增加了硬件的冗余度和復(fù)雜度,見參考文獻(xiàn)。為此,提出了以嵌入式處理器S3C2440為核心的多任務(wù)機器人控制系統(tǒng)。

1 控制系統(tǒng)硬件設(shè)計

控制系統(tǒng)選用兩輪獨立驅(qū)動小車為移動式機器人平臺,后輪為一個尼龍萬向輪。處理器為三星公司的S3C2440,系統(tǒng)主頻最高可達(dá)533 MHz,外接512 MB的NAND Flash和64 MB的SDRAM,支持SPI、I2C、UART等接口,滿足移動機器人控制系統(tǒng)的需求,如圖1所示。

圖1 系統(tǒng)硬件組成

整個控制系統(tǒng)工作過程如下:語音識別芯片LD3320通過SPI總線接口接人ARM 處理器,處理器可以對識別的結(jié)果進(jìn)行分析和匯總,并通過查表提取出操作人員的命令碼;同時,處理器通過串口讀取機器人當(dāng)前的航向信息;超聲波測距和紅外線地面檢測模塊由處理器的GPIO 引腳控制;通過控制兩自由度的云臺,可以進(jìn)行多方位的超聲波障礙物檢測,利用LD3320模塊的MP3播放功能播放所檢測到的障礙物距離和路況信息??刂葡到y(tǒng)根據(jù)傳感器的數(shù)據(jù)和所識別的操作人員的命令碼,利用信息融合技術(shù)提取環(huán)境特征,通過路徑規(guī)劃技術(shù)作出決策,控制電機狀態(tài),最終控制機器人的姿態(tài)。

2 控制系統(tǒng)軟件設(shè)計

在軟件設(shè)計中,將系統(tǒng)中所有要處理的任務(wù)劃分為不同的、相互獨立的任務(wù)模塊。根據(jù)系統(tǒng)的性能指標(biāo)和技術(shù)要求,可將任務(wù)劃分為:語音識別、航向測量與計算、超聲波測距、電機控制、信息處理等任務(wù)。

2.1 進(jìn)程的創(chuàng)建與狀態(tài)轉(zhuǎn)換

移動機器人控制系統(tǒng)在初始化完成后,利用系統(tǒng)調(diào)用fock機制分別為語音識別、航向測量與計算和超聲波測距等任務(wù)產(chǎn)生相應(yīng)的子進(jìn)程,實現(xiàn)方式如圖2所示。進(jìn)程創(chuàng)建成功后,操作系統(tǒng)會根據(jù)調(diào)度算法進(jìn)行進(jìn)程調(diào)度,這使系統(tǒng)在行駛過程中,能夠及時響應(yīng)語音命令。

圖2 系統(tǒng)多進(jìn)程設(shè)計的實現(xiàn)方式

2.2 進(jìn)程間通信機制

在信息處理進(jìn)程中,需要對不同任務(wù)返回的有效數(shù)據(jù)進(jìn)行信息處理和融合。由于不同進(jìn)程的數(shù)據(jù)段、堆棧段是相互隔離的,因此,采用共享內(nèi)存的進(jìn)程間通信方式,在程序中可以使用shmget從系統(tǒng)中取出一塊未使用的物理內(nèi)存并映射到用戶空間,如圖3所示。

圖3 共享內(nèi)存機制示意圖

在兩個進(jìn)程之間建立共享內(nèi)存的具體實現(xiàn)步驟如下:

① 在調(diào)用fock()前,使用shmget創(chuàng)建新的共享內(nèi)存,返回值為共享內(nèi)存標(biāo)識碼:

shmid = shmget(IPC_PRIVATE,1,PERM)

//申請一個字節(jié)共享內(nèi)存

② 調(diào)用fock()函數(shù),創(chuàng)建子進(jìn)程,根據(jù)fock()的返回值區(qū)分父進(jìn)程和子進(jìn)程,并分別在兩個進(jìn)程中使用shmat映射一塊共享內(nèi)存,即允許當(dāng)前進(jìn)程訪問創(chuàng)建的共享內(nèi)存:

if(fock()) p_addr= shmat(shmid,0,0);

//將共享內(nèi)存映射到父進(jìn)程

else{c_addr=shmat(shmid,0,0);}//將共享內(nèi)存映射到子進(jìn)程

其中,shmid為shmget()函數(shù)的返回值,即共享內(nèi)存標(biāo)識碼。

從用戶的角度看,在父進(jìn)程中可以對p_addr進(jìn)行讀寫操作,實際訪問的是申請的共享內(nèi)存。子進(jìn)程則可以對c_addr進(jìn)行讀寫,從而實現(xiàn)兩個進(jìn)程間的通信。共享內(nèi)存的映射和進(jìn)程之間的關(guān)系,如圖4所示。

圖4 進(jìn)程和共享內(nèi)存映射關(guān)系

2.3 系統(tǒng)控制流程

在程序初始化完成后,為每項任務(wù)創(chuàng)建了相應(yīng)的進(jìn)程,并建立了共享內(nèi)存,如圖5所示。在每個進(jìn)程中采用循環(huán)執(zhí)行方式,語音識別進(jìn)程中利用select函數(shù)監(jiān)控是否有識別結(jié)果輸出,并將識別結(jié)果寫入到相應(yīng)的共享內(nèi)存區(qū)。

圖5 系統(tǒng)控制流程圖

航向測量和計算進(jìn)程循環(huán)讀取陀螺儀的角度信息并存儲。超聲波測距進(jìn)程在接收到信息處理進(jìn)程的控制命令后進(jìn)行測距并將數(shù)據(jù)返回至信息處理進(jìn)程。信息處理進(jìn)程融合了多傳感器的數(shù)據(jù),根據(jù)設(shè)定的路徑規(guī)劃方案,將控制信息傳輸?shù)诫姍C控制進(jìn)程,實現(xiàn)機器人姿態(tài)的調(diào)整。

2.4 語音識別

在系統(tǒng)運行過程中,語音識別進(jìn)程獨立完成對語音模塊的初始化和讀取識別結(jié)果的任務(wù),因此,能夠及時響應(yīng)操作人員發(fā)出的語音指令。程序中使用了select()函數(shù)監(jiān)控read()是否可讀。當(dāng)語音識別模塊LD3320有識別結(jié)果時,將在中斷引腳輸出高電平以觸發(fā)系統(tǒng)中斷,結(jié)束驅(qū)動程序中的等待狀態(tài),同時應(yīng)用程序可以通過read()函數(shù)讀取LD332O的識別結(jié)果,并寫入到相應(yīng)共享內(nèi)存區(qū)M中。在沒有中斷時,read()函數(shù)將被阻塞,如圖6所示。

圖6 語音識別進(jìn)程流程圖

使用select機制監(jiān)控是否語音識別結(jié)果,在超出等待時間后,會退出等待并重新初始化語音模塊LD3320,釋放公共資源,這樣也使得系統(tǒng)能夠及時響應(yīng)LD332O的MP3播放功能,避免了在長時間沒有語音識別結(jié)果時,系統(tǒng)進(jìn)入卡死狀態(tài)。

2.5 航向測量

為了使移動機器人能夠沿指定的方向行駛并能修正由外界干擾因素產(chǎn)生的航向偏差,系統(tǒng)采用陀螺儀航向測量模塊MPU - 6050,該模塊將其測量的模擬量轉(zhuǎn)換為可輸出的數(shù)字量,并通過串口發(fā)送到S3C2440.系統(tǒng)通過read(fd_uartl,bur,10)函數(shù)讀取相應(yīng)串El,得到航向數(shù)據(jù)并寫人到共享內(nèi)存區(qū)S中。

2.6 超聲波測距

本系統(tǒng)采用渡越時間法,超聲波測距模塊在收到發(fā)射控制信號時,換能器將發(fā)出40 kHz的連續(xù)脈沖信號。接收器的輸出高電平時間和距離成正比,同時觸發(fā)處理器的中斷,上升沿中斷開啟定時器,下降沿關(guān)閉定時器,利用處理器內(nèi)部的定時器1測量出輸出信號的高電平的持續(xù)時間△T,經(jīng)過式(1)的計算,可得到檢測距離S:

S- V × △T/2 (1)

式中,V 為超聲波的傳播速度,常溫下超聲波在空氣中的傳播速度是340 m/s.程序中根據(jù)所編寫的驅(qū)動程序,使用ioctl(fd_chao,SEND_BEGIN)、ioctl(fd_chao,SEND_STOP)控制GPIO以實現(xiàn)超聲波的發(fā)射和停止。系統(tǒng)中對某個方向連續(xù)測量5次,進(jìn)行中值濾波并將濾波后數(shù)據(jù)傳遞到信息處理進(jìn)程。

2.7 電機控制

移動平臺中采用L298驅(qū)動直流減速電機,平臺尚未安裝速度反饋單元,簡化了控制模式。程序通過ioctl()控制L298以實現(xiàn)電機的正反轉(zhuǎn)以及停止操作。

在電機驅(qū)動程序中定義了相應(yīng)GPIO的輸入/輸出方式:ioctl(fd,TURN_LEFT)中,fd為驅(qū)動程序的文件描述符;TURN_LEFT 是命令掩碼CMD,驅(qū)動程序根據(jù)命令掩碼CMD對相應(yīng)的GPIO賦值以控制L298的狀態(tài)。

3 路徑規(guī)劃和避障算法

根據(jù)模糊邏輯法,移動平臺能夠在不確定環(huán)境中實現(xiàn)局部路徑規(guī)劃和避障。

3.1 輸入輸出變量的模糊化

在路徑規(guī)劃過程中,信息分析模塊的輸入量為移動平臺的行駛方向信息、與障礙物之間的相對位移信息;輸出量為移動平臺的旋轉(zhuǎn)角度和平動位移信息。

① 定義移動平臺與左側(cè)障礙物的距離為DL、與右側(cè)障礙物的距離為DR、前方障礙物的距離為DF.模糊子集定義為{S,M,B},分別表示小、中、大,相應(yīng)的距離隸屬度函數(shù)如圖7所示。

圖7 距離隸屬度函數(shù)

② 定義移動平臺和目標(biāo)點之間夾角為了,模糊子集定義為{LB,LS,Z,RS,RB},分別表示左大、左小、零、有小和右大。相應(yīng)的角度隸屬度函數(shù)如圖8所示。

③ 移動平臺的旋轉(zhuǎn)角度φ的模糊子集定義為{TIB,TLS,TZ,TRS,TRB}.分別表示左轉(zhuǎn)大、左轉(zhuǎn)小、不旋轉(zhuǎn)、右轉(zhuǎn)小、右轉(zhuǎn)大,相應(yīng)的輸出隸屬度函數(shù)如圖9所示。

3.2 建立模糊控制規(guī)則

在移動機器人遠(yuǎn)離障礙物或不存在障礙物的情況下,依據(jù)移動平臺的行駛軌跡,可以先對行駛方向進(jìn)行調(diào)整。當(dāng)檢測到障礙物接近移動平臺時,移動平臺應(yīng)改變行駛軌跡,避免發(fā)生碰撞。移動平臺的部分模糊控制規(guī)則如表1所列。

圖8 角度隸屬度函數(shù)

圖9 輸出隸屬度函數(shù)

  表1 模糊控制規(guī)則

3.3 模糊推理和解模糊化

根據(jù)距離隸屬度函數(shù),將超聲波測量得到的不同方位的距離數(shù)據(jù)轉(zhuǎn)換為模糊邏輯狀態(tài),再查找模糊控制規(guī)則,查表得到相應(yīng)的輸出模糊量。

解模糊化是輸出模糊量映射到動作行為的過程。模糊控制器對移動平臺的動作進(jìn)行了分解并編碼,將復(fù)雜的動作分解為一系列簡單動作的疊加,使得每一個輸出模糊量對應(yīng)一套動作。

例如在檢測到前方有障礙物并確定左轉(zhuǎn)時,可以將機器人動作分解為:后退(左轉(zhuǎn),即先后退,再左轉(zhuǎn)。這樣可以減小機器人觸碰到前方障礙物的概率。

4 實驗測試

使用menuconfig命令為嵌入式Linux系統(tǒng)內(nèi)核配置添加相應(yīng)驅(qū)動程序后,進(jìn)行make編譯生產(chǎn)zImage文件。啟動移動機器人系統(tǒng)并進(jìn)入BIOS模式,將配置好的內(nèi)核通過Supervivi工具燒寫到NAND Flash.在系統(tǒng)啟動后,配置Linux目錄中的/etc/init.d文件,使系統(tǒng)啟動后,自動運行所設(shè)計的程序。

如果系統(tǒng)初始化正常,將聽到由語音模塊發(fā)出的提示聲:“校準(zhǔn)完成”.此時,操作人員可以下達(dá)“前進(jìn)”、“后退”或“測距”等設(shè)計好的語音指令,機器人將按照操作人員的指令完成相應(yīng)的動作,還可以通過語音模塊播放出測量到的距離。

  結(jié)語

系統(tǒng)利用了Linux系統(tǒng)支持多任務(wù)和可裁剪的特點,結(jié)合處理器豐富的接口資源,實現(xiàn)了多方位超聲波測距、電機控制等功能,通過對多傳感器信息的融合和分析,為模糊邏輯法進(jìn)行路徑規(guī)劃提供了判斷依據(jù)。語音識別功能使得機器人和操作人員之間的人機交互變得更靈活方便。在此基礎(chǔ)上,可以利用Linux操作系統(tǒng)強大的網(wǎng)絡(luò)功能,為進(jìn)一步研究服務(wù)機器人、機器人聯(lián)網(wǎng)、機器人與機器人通信等提供了一種方案。

0次

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉