0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于S3C6410芯片實(shí)現(xiàn)類人機(jī)器人控制系統(tǒng)的設(shè)計(jì)

電子設(shè)計(jì) ? 來(lái)源:?jiǎn)纹瑱C(jī)與嵌入式系統(tǒng)應(yīng)用 ? 作者:周冬波,鄧記才 ? 2021-04-13 15:22 ? 次閱讀

智能移動(dòng)機(jī)器人是近年來(lái)發(fā)展起來(lái)的一門(mén)綜合學(xué)科,涉及機(jī)械設(shè)計(jì)、傳感檢測(cè)、人工智能等多方面知識(shí)。類人機(jī)器人的控制系統(tǒng)分為三個(gè)層次:最上層是機(jī)器人的策略規(guī)劃層,利用各種算法實(shí)現(xiàn)各部分的功能;中間一層運(yùn)行各類應(yīng)用程序的嵌入式實(shí)時(shí)操作系統(tǒng);最底層是硬件平臺(tái),通過(guò)外圍接口獲得各類數(shù)據(jù)、信息。

自主機(jī)器人利用傳感器獲取的信息控制機(jī)器人的動(dòng)作。本文根據(jù)武術(shù)擂臺(tái)機(jī)器人的實(shí)際需要,設(shè)計(jì)了機(jī)器人的控制系統(tǒng),實(shí)現(xiàn)攝像頭圖像采集、處理和舵機(jī)控制等功能。

策略規(guī)劃層中,由于圖像信息具有信息豐富、對(duì)場(chǎng)景描述完全的特點(diǎn),主要通過(guò)處理攝像頭采集的圖像信息實(shí)現(xiàn)顏色目標(biāo)定位。這里采用Linux嵌入式操作系統(tǒng),由于嵌入式系統(tǒng)資源的限制,要求目標(biāo)識(shí)別算法運(yùn)行效率高,占用內(nèi)存空間小。硬件平臺(tái)主要是控制舵機(jī)實(shí)現(xiàn)機(jī)器人的運(yùn)動(dòng)控制。

1 系統(tǒng)控制電路視頻識(shí)別算法

1.1 機(jī)器人整體架構(gòu)

在武術(shù)擂臺(tái)技術(shù)挑戰(zhàn)賽中,機(jī)器人要采集目標(biāo)的位置信息。由于I/O、A/D轉(zhuǎn)換的有效檢測(cè)距離有限,機(jī)器人采用攝像頭采集場(chǎng)地上的圖像信息,根據(jù)目標(biāo)的顏色進(jìn)行識(shí)別、定位。當(dāng)檢測(cè)到目標(biāo)位置以后控制舵機(jī)自主運(yùn)動(dòng)向目標(biāo)靠攏,完成自我介紹、抱繡球等動(dòng)作。所設(shè)計(jì)的機(jī)器人外形如圖1所示。

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

1.2 舵機(jī)控制系統(tǒng)設(shè)計(jì)

主控板通過(guò)串口1完成與舵機(jī)之間的數(shù)據(jù)通信,舵機(jī)控制電路的原理圖如圖3所示。

由于半雙工數(shù)據(jù)線只有一根,所以必須在電路上實(shí)現(xiàn)發(fā)送和接收上的分離。這里網(wǎng)絡(luò)Robotis_UART一端直接接到舵機(jī)的信號(hào)線上,而另一端經(jīng)過(guò)74HC126的兩個(gè)緩沖器分別與主控芯片的TXD1和RXD1相連,再通過(guò)主控芯片使能的方式來(lái)確定是發(fā)送還是接收數(shù)據(jù)。主控芯片可以使NLED1為高而NLED2為低,這時(shí)TXD1就取得了線路的控制權(quán),主控芯片就可以發(fā)送數(shù)據(jù)到舵機(jī)了。反之,當(dāng)NLED2為高而NLED1為低時(shí),這時(shí)RXD1就取得了線路的控制權(quán),這時(shí)舵機(jī)可以返回?cái)?shù)據(jù)。

舵機(jī)控制的軟件方面,需要完成串口的相關(guān)配置,主要包括波特率、起始位數(shù)、數(shù)據(jù)位數(shù)、停止位數(shù)和流控制模式。這里將其配置為波特率19200、起始位1位、數(shù)據(jù)位8位、停止位1位和無(wú)流控制模式。串口的設(shè)置主要是設(shè)置struct termios結(jié)構(gòu)體的各成員值,如下所示:

2 圖像識(shí)別算法

攝像頭采集到的圖像主要作如下處理:首先對(duì)數(shù)據(jù)解碼,利用查表法將RGB空間模型數(shù)據(jù)轉(zhuǎn)化為HSI空間模型,然后采用類間方差法將圖像進(jìn)行二值化,再利用連通域?qū)δ繕?biāo)進(jìn)行標(biāo)定,最后對(duì)圖像進(jìn)行去噪,從而實(shí)現(xiàn)目標(biāo)的識(shí)別和定位。圖像處理程序流程圖如圖4所示。

攝像頭采集的圖像為RGB格式,但RGB模型中R、G、B值易受光線影響,不適宜進(jìn)行顏色識(shí)別;HSI模型中,不同的顏色對(duì)應(yīng)不同的色調(diào)參數(shù)H,并且H受外界光照影響小,因此采用HSI模型實(shí)現(xiàn)顏色識(shí)別。因此,要通過(guò)某種算法,先將RGB色域空間映射到HSI空間。常用的顏色空間轉(zhuǎn)換算法如下:

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

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

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

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

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

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

第1行:線段1創(chuàng)建標(biāo)記A。

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

第3行:線段4、2之間連通,線段4標(biāo)記為A;線段5創(chuàng)建標(biāo)記為B。

第4行:線段6、4之間連通,線段6標(biāo)記為A;線段6、5之間連通,將線段5的標(biāo)記由B變?yōu)锳。

第5行:線段7創(chuàng)建標(biāo)記B;線段8、6之間連通,線段8標(biāo)記為A。結(jié)果如圖6所示。

將圖像標(biāo)定完畢可以去掉圖像中的噪點(diǎn),并且找到目標(biāo)的中心,實(shí)現(xiàn)目標(biāo)的定位。

3 實(shí)驗(yàn)與結(jié)果分析

將控制卡裝到機(jī)器人上,控制機(jī)器人運(yùn)動(dòng),在運(yùn)動(dòng)中攝像頭采集圖像,并且用方框?qū)⒛繕?biāo)進(jìn)行標(biāo)定。利用上述顏色識(shí)別算法對(duì)圖紅色繡球進(jìn)行標(biāo)定,得到如圖7所示的結(jié)果。

隨著機(jī)器人的運(yùn)動(dòng),繡球在圖像中的位置發(fā)生變化,機(jī)器人根據(jù)標(biāo)定結(jié)果,就可以得到繡球的位置,根據(jù)位置調(diào)整自己的運(yùn)動(dòng)準(zhǔn)確找到繡球。圖像采集的速度達(dá)到15幀/s,舵機(jī)控制準(zhǔn)確度達(dá)到0.32°,可以圓滿完成比賽任務(wù)。

結(jié)語(yǔ)

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

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    450

    文章

    49621

    瀏覽量

    417085
  • 控制系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    6417

    瀏覽量

    110092
  • 機(jī)器人
    +關(guān)注

    關(guān)注

    210

    文章

    27833

    瀏覽量

    204561
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于S3C6410芯片實(shí)現(xiàn)人機(jī)器人控制系統(tǒng)的設(shè)計(jì)

    策略規(guī)劃層中,由于圖像信息具有信息豐富、對(duì)場(chǎng)景描述完全的特點(diǎn),主要通過(guò)處理攝像頭采集的圖像信息實(shí)現(xiàn)顏色目標(biāo)定位。這里采用Linux嵌入式操作系統(tǒng),由于嵌入式系統(tǒng)資源的限制,要求目標(biāo)識(shí)別算法運(yùn)行效率高,占用內(nèi)存空間小。
    的頭像 發(fā)表于 03-31 10:46 ?3880次閱讀
    基于<b class='flag-5'>S3C6410</b><b class='flag-5'>芯片</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>類</b><b class='flag-5'>人機(jī)器人</b><b class='flag-5'>控制系統(tǒng)</b>的設(shè)計(jì)

    三星S3C6410芯片手冊(cè)

    三星S3C6410芯片手冊(cè)
    發(fā)表于 01-29 13:47

    什么是機(jī)器人控制系統(tǒng)

    什么是機(jī)器人控制系統(tǒng)機(jī)器人的運(yùn)動(dòng)控制系統(tǒng)包含哪些方面?機(jī)器人控制系統(tǒng)的基本功能有哪些?
    發(fā)表于 10-11 09:38

    通過(guò)多軸工業(yè)機(jī)器人來(lái)聊聊機(jī)器人控制系統(tǒng)以及控制器的實(shí)現(xiàn)

    機(jī)器人控制系統(tǒng)當(dāng)中。那么今天,我們就通過(guò)多軸工業(yè)機(jī)器人來(lái)聊聊機(jī)器人控制系統(tǒng)以及控制器的
    發(fā)表于 02-24 17:05

    s3c6410 開(kāi)發(fā)板設(shè)計(jì)

    S3C6410開(kāi)發(fā)板采用核心板加底板設(shè)計(jì),核心板上集成了Samsung 533/667M CPU S3C6410(ARM1176JZF-S內(nèi)核)、128M Mobile DDR和256M Nand Flash,通過(guò)4個(gè)1.27m
    發(fā)表于 04-29 15:25 ?0次下載
    <b class='flag-5'>s3c6410</b> 開(kāi)發(fā)板設(shè)計(jì)

    基于S3C6410的智能泵組控制器設(shè)計(jì)

    設(shè)計(jì)并實(shí)現(xiàn)了一種基于S3C6410的智能泵組控制器。該控制器是網(wǎng)絡(luò)技術(shù)與消防系統(tǒng)、遠(yuǎn)程監(jiān)控的綜合運(yùn)用,具備采集消防
    發(fā)表于 09-25 15:09 ?29次下載

    S3C6410的Jlink的調(diào)試方法介紹

    S3C6410的Jlink的調(diào)試 方 法
    發(fā)表于 10-29 10:57 ?0次下載

    三星S3C6410開(kāi)發(fā)板的PCB封裝庫(kù)

    三星S3C6410開(kāi)發(fā)板的PCB封裝庫(kù) 有需要的下來(lái)看看
    發(fā)表于 12-29 17:57 ?0次下載

    S3C6410核心板

    S3C6410核心板,PCB文件。
    發(fā)表于 04-05 15:28 ?0次下載

    S3C6410簡(jiǎn)介

    S3C6410簡(jiǎn)介,有需要的朋友可以下來(lái)看看
    發(fā)表于 08-23 16:46 ?0次下載

    S3C6410的u-boot分析與移植

    S3C6410的u-boot分析與移植
    發(fā)表于 10-31 14:44 ?28次下載
    <b class='flag-5'>S3C6410</b>的u-boot分析與移植

    基于S3C6410的視覺(jué)識(shí)別人機(jī)器人控制系統(tǒng)設(shè)計(jì)

    針對(duì)傳統(tǒng)人機(jī)器人控制系統(tǒng)實(shí)時(shí)性和視覺(jué)識(shí)別方面的不足,以S3C6410作為主控芯片,設(shè)計(jì)了具有視覺(jué)識(shí)別功能的
    發(fā)表于 02-10 03:18 ?2422次閱讀

    S3C6410開(kāi)發(fā)板S3C-U-BOOT-1.1.6的詳細(xì)資料免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是S3C6410開(kāi)發(fā)板S3C-U-BOOT-1.1.6的詳細(xì)資料免費(fèi)下載。
    發(fā)表于 09-29 09:48 ?31次下載

    S3C6410(ARM11)嵌入式控制系統(tǒng)液晶顯示驅(qū)動(dòng)問(wèn)題研究

    S3C6410(ARM11)嵌入式控制系統(tǒng)液晶顯示驅(qū)動(dòng)問(wèn)題研究(嵌入式開(kāi)發(fā)工程師工作內(nèi)容)-S3C6410(ARM11)嵌入式控制系統(tǒng)液晶顯示驅(qū)動(dòng)問(wèn)題研究? ? ? ? ? ? ??
    發(fā)表于 07-30 14:51 ?16次下載
    <b class='flag-5'>S3C6410</b>(ARM11)嵌入式<b class='flag-5'>控制系統(tǒng)</b>液晶顯示驅(qū)動(dòng)問(wèn)題研究

    基于S3C6410平臺(tái)的RFID手持終端的設(shè)計(jì)與實(shí)現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《基于S3C6410平臺(tái)的RFID手持終端的設(shè)計(jì)與實(shí)現(xiàn).pdf》資料免費(fèi)下載
    發(fā)表于 11-13 10:03 ?0次下載
    基于<b class='flag-5'>S3C6410</b>平臺(tái)的RFID手持終端的設(shè)計(jì)與<b class='flag-5'>實(shí)現(xiàn)</b>