<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于S3C6410芯片實現類人機器人控制系統的設計

電子設計 ? 來源:單片機與嵌入式系統應用 ? 作者:周冬波,鄧記才 ? 2021-04-13 15:22 ? 次閱讀

智能移動機器人是近年來發展起來的一門綜合學科,涉及機械設計、傳感檢測、人工智能等多方面知識。類人機器人的控制系統分為三個層次:最上層是機器人的策略規劃層,利用各種算法實現各部分的功能;中間一層運行各類應用程序的嵌入式實時操作系統;最底層是硬件平臺,通過外圍接口獲得各類數據、信息。

自主機器人利用傳感器獲取的信息控制機器人的動作。本文根據武術擂臺機器人的實際需要,設計了機器人的控制系統,實現攝像頭圖像采集、處理和舵機控制等功能。

策略規劃層中,由于圖像信息具有信息豐富、對場景描述完全的特點,主要通過處理攝像頭采集的圖像信息實現顏色目標定位。這里采用Linux嵌入式操作系統,由于嵌入式系統資源的限制,要求目標識別算法運行效率高,占用內存空間小。硬件平臺主要是控制舵機實現機器人的運動控制。

1 系統控制電路視頻識別算法

1.1 機器人整體架構

在武術擂臺技術挑戰賽中,機器人要采集目標的位置信息。由于I/O、A/D轉換的有效檢測距離有限,機器人采用攝像頭采集場地上的圖像信息,根據目標的顏色進行識別、定位。當檢測到目標位置以后控制舵機自主運動向目標靠攏,完成自我介紹、抱繡球等動作。所設計的機器人外形如圖1所示。

從圖中可以看出,機器人頭部采用攝像頭,通過USB接口與主控板進行連接,用于采集圖像信息。機器人腰部、腿部、胳膊各關節利用舵機使其具有一定的自由度,用到的舵機為CDS系列數字舵機。它內部有ATmega8芯片,主控板通過串口與ATmega8通信,就可以實現舵機的控制。針對以上要求,同時考慮系統的實時性,采用S3C6410作為主控芯片。實際控制系統總體框圖如圖2所示。

1.2 舵機控制系統設計

主控板通過串口1完成與舵機之間的數據通信,舵機控制電路的原理圖如圖3所示。

由于半雙工數據線只有一根,所以必須在電路上實現發送和接收上的分離。這里網絡Robotis_UART一端直接接到舵機的信號線上,而另一端經過74HC126的兩個緩沖器分別與主控芯片的TXD1和RXD1相連,再通過主控芯片使能的方式來確定是發送還是接收數據。主控芯片可以使NLED1為高而NLED2為低,這時TXD1就取得了線路的控制權,主控芯片就可以發送數據到舵機了。反之,當NLED2為高而NLED1為低時,這時RXD1就取得了線路的控制權,這時舵機可以返回數據。

舵機控制的軟件方面,需要完成串口的相關配置,主要包括波特率、起始位數、數據位數、停止位數和流控制模式。這里將其配置為波特率19200、起始位1位、數據位8位、停止位1位和無流控制模式。串口的設置主要是設置struct termios結構體的各成員值,如下所示:

2 圖像識別算法

攝像頭采集到的圖像主要作如下處理:首先對數據解碼,利用查表法將RGB空間模型數據轉化為HSI空間模型,然后采用類間方差法將圖像進行二值化,再利用連通域對目標進行標定,最后對圖像進行去噪,從而實現目標的識別和定位。圖像處理程序流程圖如圖4所示。

攝像頭采集的圖像為RGB格式,但RGB模型中R、G、B值易受光線影響,不適宜進行顏色識別;HSI模型中,不同的顏色對應不同的色調參數H,并且H受外界光照影響小,因此采用HSI模型實現顏色識別。因此,要通過某種算法,先將RGB色域空間映射到HSI空間。常用的顏色空間轉換算法如下:

實現顏色空間轉換以后就要根據不同的H值對圖像進行二值化處理。二值化的實質是一分類問題,即把一幅圖像所含有的0~255的二進制像素按照某個閾值劃分成兩類。如果閾值設得太低,結果會引入過多的背景信息,但太高就會導致目標信息的丟失。類間方差法(Otsu)、最大熵方法(KSW)和直方圖平衡法(Balanced Histogram Thresholding,BHT)是目前應用較廣的自動閾值計算方法。

這里采用類間方差法,它的核心思路就是通過最大化類間方差來尋找最佳閾值。假設某一閾值T將整個二值圖像分為C0(1,…,T)和C1(T,…,255)兩類,則兩類的出現概率可以用下式計算:

如上所述,最佳閾值的判斷標準是使得類間方差最大。于是通過遍歷每一個灰度值,并計算其劃分帶來的類間方差,總能找到一個合適的閾值滿足條件。由于式(4)計算二階中心矩計算量較大,考慮到:

顯然,式(6)只需要計算類內均值,即一階矩。于是最大化 就轉化為最大化式(6)。

接下來的工作就是對圖像進行標定,這里所指的標定就是根據二值化后的圖像,計算出目標區域的外接矩形位置。在目標構成比較簡單的情況下,投影法是效率最高的方法,而當場景中存在多個目標時,多數情況下需要進行連通域計算。拓撲學中把連通性定義為,區域內任意兩點之間存在至少一條曲線可以將兩者連接。目前的連通域標記方法主要分兩類:掃描法和輪廓跟蹤法。掃描法的基本思路是逐個檢查每個像素的值和連通性,從而獲得所有的連通性描述信息,然后根據每點之間的相互關系計算出最后的區域個數和構成關系?;趻呙璧倪B通標記演示如下(以8連通為例):

首先對二值圖像進行行掃描得到線段連通標記,如圖5所示。然后檢查每行之間線段與上一行線段之間的連通關系,并更改標記。

第1行:線段1創建標記A。

第2行:線段2、1之間連通,線段2標記為A;線段3同理標記為A。

第3行:線段4、2之間連通,線段4標記為A;線段5創建標記為B。

第4行:線段6、4之間連通,線段6標記為A;線段6、5之間連通,將線段5的標記由B變為A。

第5行:線段7創建標記B;線段8、6之間連通,線段8標記為A。結果如圖6所示。

將圖像標定完畢可以去掉圖像中的噪點,并且找到目標的中心,實現目標的定位。

3 實驗與結果分析

將控制卡裝到機器人上,控制機器人運動,在運動中攝像頭采集圖像,并且用方框將目標進行標定。利用上述顏色識別算法對圖紅色繡球進行標定,得到如圖7所示的結果。

隨著機器人的運動,繡球在圖像中的位置發生變化,機器人根據標定結果,就可以得到繡球的位置,根據位置調整自己的運動準確找到繡球。圖像采集的速度達到15幀/s,舵機控制準確度達到0.32°,可以圓滿完成比賽任務。

結語

本文以S3C6410作為主控芯片,設計了具有視覺識別功能的類人機器人控制系統。改進的顏色識別算法利用查表法、類間方差法、連通域等方法對圖像進行處理,取得了良好的視頻識別效果。實踐證明,由該控制系統的設計方案制作而成的類人機器人,具有良好的自主控制穩定性和較好的視覺識別能力,能夠較出色地完成比賽。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    447

    文章

    47995

    瀏覽量

    410373
  • 控制系統
    +關注

    關注

    41

    文章

    5981

    瀏覽量

    109053
  • 機器人
    +關注

    關注

    206

    文章

    27141

    瀏覽量

    201653
收藏 人收藏

    評論

    相關推薦

    基于S3C6410芯片實現人機器人控制系統的設計

    策略規劃層中,由于圖像信息具有信息豐富、對場景描述完全的特點,主要通過處理攝像頭采集的圖像信息實現顏色目標定位。這里采用Linux嵌入式操作系統,由于嵌入式系統資源的限制,要求目標識別算法運行效率高,占用內存空間小。
    的頭像 發表于 03-31 10:46 ?3740次閱讀
    基于<b class='flag-5'>S3C6410</b><b class='flag-5'>芯片</b><b class='flag-5'>實現</b>類<b class='flag-5'>人機器人</b><b class='flag-5'>控制系統</b>的設計

    [原創]S3C6410的USB通訊小項目外包

    S3C6410的USB通訊小項目外包:硬件:S3C6410開發板(用現成的)軟件要求:通過USB線使S3C6410開發板能與PC機通訊下載文件。 說明:其實開發板上的EBOOT已經
    發表于 09-29 14:52

    遠程遙控的人機器人系統

    遠程遙控的人機器人系統
    發表于 04-14 00:57

    s3c6410支持的屏幕

    各位大俠,s3c6410支持哪些屏幕???隨便買個屏幕都可以用嗎?
    發表于 11-09 11:12

    基于S3C6410的無線視頻傳輸節點設計

    基于S3C6410的無線視頻傳輸節點設計
    發表于 03-27 14:54

    基于S3C6410的QT移植方法及源碼

    OK6410+QT移植百科全書 下載地址:基于S3C6410的QT移植方法及源碼下載地址:百度網盤:http://pan.baidu.com/s/1hqCf03q
    發表于 05-19 17:39

    三星S3C6410芯片手冊

    三星S3C6410芯片手冊
    發表于 01-29 13:47

    基于CAN總線和雙傳感器仿人機器人運動控制系統的研究

    研究的前沿,它在一定程度上代表了一個國家的高科技發展水平。運動控制系統機器人控制技術的核心,也是機器人研究領域的關鍵技術之一,在機器人
    發表于 08-19 06:57

    機器人控制系統

    1、機器人控制系統控制”的目的是使被控對象產生控制者所期望的行為方式。 .“控制”的基本條件是了解被控對象的特性。 “實質”是對驅動器輸
    發表于 09-13 08:40

    機器人是如何實現運作的呢

    若說當下的熱門科技,機器人絕對算一個。機器人作為典型的機電一體化技術密集型產品,它是如何實現運作的呢?  機器人控制分為機械本體
    發表于 09-17 08:22

    什么是機器人控制系統

    什么是機器人控制系統?機器人的運動控制系統包含哪些方面?機器人控制系統的基本功能有哪些?
    發表于 10-11 09:38

    如何在S3C6410的板子上安裝Ubuntu?

    如何在S3C6410的板子上安裝Ubuntu?
    發表于 01-13 06:12

    通過多軸工業機器人來聊聊機器人控制系統以及控制器的實現

    機器人控制系統當中。那么今天,我們就通過多軸工業機器人來聊聊機器人控制系統以及控制器的
    發表于 02-24 17:05

    基于S3C6410的視覺識別類人機器人控制系統設計

    針對傳統類人機器人控制系統實時性和視覺識別方面的不足,以S3C6410作為主控芯片,設計了具有視覺識別功能的類人機器人
    發表于 02-10 03:18 ?2325次閱讀

    S3C6410(ARM11)嵌入式控制系統液晶顯示驅動問題研究

    S3C6410(ARM11)嵌入式控制系統液晶顯示驅動問題研究(嵌入式開發工程師工作內容)-S3C6410(ARM11)嵌入式控制系統液晶顯示驅動問題研究? ? ? ? ? ? ??
    發表于 07-30 14:51 ?12次下載
    <b class='flag-5'>S3C6410</b>(ARM11)嵌入式<b class='flag-5'>控制系統</b>液晶顯示驅動問題研究
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>