0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于S3C6410芯片实现类人机器人控制系统的设计

微云疏影 来源:单片机与嵌入式系统应用 作者:单片机与嵌入式系 2022-03-31 10:46 次阅读

智能移动机器人是近年来发展起来的一门综合学科,涉及机械设计、传感检测、人工智能等多方面知识。类人机器人的控制系统分为三个层次:最上层是机器人的策略规划层,利用各种算法实现各部分的功能;中间一层运行各类应用程序的嵌入式实时操作系统;最底层是硬件平台,通过外围接口获得各类数据、信息

自主机器人利用传感器获取的信息控制机器人的动作。本文根据武术擂台机器人的实际需要,设计了机器人的控制系统,实现摄像头图像采集、处理和舵机控制等功能。

策略规划层中,由于图像信息具有信息丰富、对场景描述完全的特点,主要通过处理摄像头采集的图像信息实现颜色目标定位。这里采用Linux嵌入式操作系统,由于嵌入式系统资源的限制,要求目标识别算法运行效率高,占用内存空间小。硬件平台主要是控制舵机实现机器人的运动控制。

1 系统控制电路视频识别算法

1.1 机器人整体架构

20220329093034626.gif

从图中可以看出,机器人头部采用摄像头,通过USB接口与主控板进行连接,用于采集图像信息。机器人腰部、腿部、胳膊各关节利用舵机使其具有一定的自由度,用到的舵机为CDS系列数字舵机。它内部有ATmega8芯片,主控板通过串口与ATmega8通信,就可以实现舵机的控制。针对以上要求,同时考虑系统的实时性,采用S3C6410作为主控芯片。实际控制系统总体框图如图2所示。

1.2 舵机控制系统设计

主控板通过串口1完成与舵机之间的数据通信,舵机控制电路的原理图如图3所示。

20220329093035172.gif

由于半双工数据线只有一根,所以必须在电路上实现发送和接收上的分离。这里网络Robotis_UART一端直接接到舵机的信号线上,而另一端经过74HC126的两个缓冲器分别与主控芯片的TXD1和RXD1相连,再通过主控芯片使能的方式来确定是发送还是接收数据。主控芯片可以使NLED1为高而NLED2为低,这时TXD1就取得了线路的控制权,主控芯片就可以发送数据到舵机了。反之,当NLED2为高而NLED1为低时,这时RXD1就取得了线路的控制权,这时舵机可以返回数据。

舵机控制的软件方面,需要完成串口的相关配置,主要包括波特率、起始位数、数据位数、停止位数和流控制模式。这里将其配置为波特率19200、起始位1位、数据位8位、停止位1位和无流控制模式。串口的设置主要是设置struct termios结构体的各成员值,如下所示:

20220329093035435.gif

2 图像识别算法

摄像头采集到的图像主要作如下处理:首先对数据解码,利用查表法将RGB空间模型数据转化为HSI空间模型,然后采用类间方差法将图像进行二值化,再利用连通域对目标进行标定,最后对图像进行去噪,从而实现目标的识别和定位。图像处理程序流程图如图4所示。

20220329093035984.gif

摄像头采集的图像为RGB格式,但RGB模型中R、G、B值易受光线影响,不适宜进行颜色识别;HSI模型中,不同的颜色对应不同的色调参数H,并且H受外界光照影响小,因此采用HSI模型实现颜色识别。因此,要通过某种算法,先将RGB色域空间映射到HSI空间。常用的颜色空间转换算法如下:

20220329093035575.gif

实现颜色空间转换以后就要根据不同的H值对图像进行二值化处理。二值化的实质是一分类问题,即把一幅图像所含有的0~255的二进制像素按照某个阈值划分成两类。如果阈值设得太低,结果会引入过多的背景信息,但太高就会导致目标信息的丢失。类间方差法(Otsu)、最大熵方法(KSW)和直方图平衡法(Balanced Histogram Thresholding,BHT)是目前应用较广的自动阈值计算方法。

这里采用类间方差法,它的核心思路就是通过最大化类间方差来寻找最佳阈值。假设某一阈值T将整个二值图像分为C0(1,…,T)和C1(T,…,255)两类,则两类的出现概率可以用下式计算:

20220329093035186.gif

如上所述,最佳阈值的判断标准是使得类间方差最大。于是通过遍历每一个灰度值,并计算其划分带来的类间方差,总能找到一个合适的阈值满足条件。由于式(4)计算二阶中心矩计算量较大,考虑到:

20220329093035687.gif

显然,式(6)只需要计算类内均值,即一阶矩。于是最大化 就转化为最大化式(6)。

接下来的工作就是对图像进行标定,这里所指的标定就是根据二值化后的图像,计算出目标区域的外接矩形位置。在目标构成比较简单的情况下,投影法是效率最高的方法,而当场景中存在多个目标时,多数情况下需要进行连通域计算。拓扑学中把连通性定义为,区域内任意两点之间存在至少一条曲线可以将两者连接。目前的连通域标记方法主要分两类:扫描法和轮廓跟踪法。扫描法的基本思路是逐个检查每个像素的值和连通性,从而获得所有的连通性描述信息,然后根据每点之间的相互关系计算出最后的区域个数和构成关系。基于扫描的连通标记演示如下(以8连通为例):

首先对二值图像进行行扫描得到线段连通标记,如图5所示。然后检查每行之间线段与上一行线段之间的连通关系,并更改标记。

2022032909303661.gif

第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所示。

20220329093036237.gif

将图像标定完毕可以去掉图像中的噪点,并且找到目标的中心,实现目标的定位。

3 实验与结果分析

将控制卡装到机器人上,控制机器人运动,在运动中摄像头采集图像,并且用方框将目标进行标定。利用上述颜色识别算法对图红色绣球进行标定,得到如图7所示的结果。

20220329093036264.gif

随着机器人的运动,绣球在图像中的位置发生变化,机器人根据标定结果,就可以得到绣球的位置,根据位置调整自己的运动准确找到绣球。图像采集的速度达到15帧/s,舵机控制准确度达到0.32°,可以圆满完成比赛任务。

结语

本文以S3C6410作为主控芯片,设计了具有视觉识别功能的类人机器人控制系统。改进的颜色识别算法利用查表法、类间方差法、连通域等方法对图像进行处理,取得了良好的视频识别效果。实践证明,由该控制系统的设计方案制作而成的类人机器人,具有良好的自主控制稳定性和较好的视觉识别能力,能够较出色地完成比赛。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    458

    文章

    51385

    浏览量

    428407
  • 控制系统
    +关注

    关注

    41

    文章

    6672

    浏览量

    110981
  • 机器人
    +关注

    关注

    211

    文章

    28762

    浏览量

    208971
收藏 人收藏

    评论

    相关推荐

    Apptronik利用德州仪器技术开发人机器人

    Apptronik 的定制线性和旋转执行器,并通过 TI 的功能安全合规性、电机控制和电源管理加以改进。通过合作,Apptronik 和 TI 可以实现他们的目标 — 打造一款灵巧的人机器
    的头像 发表于 02-17 17:48 269次阅读

    【「具身智能机器人系统」阅读体验】2.具身智能机器人的基础模块

    具身智能机器人的基础模块,这个是本书的第二部分内容,主要分为四个部分:机器人计算系统,自主机器人的感知系统,自主
    发表于 01-04 19:22

    【「具身智能机器人系统」阅读体验】2.具身智能机器人大模型

    。 多模态融合的创新与突破 机器人控制技术的另一个重要突破在于多模态大模型的应用。相比于仅通过文字进行人机交互的传统方法,现代机器人能够融合视觉、声音、定位等多模态输入信息,为任务执行
    发表于 12-29 23:04

    【「具身智能机器人系统」阅读体验】1.初步理解具身智能

    (第3章到第6章)介绍具身智能机器人的基础模块,涵盖机器人计算系统、自主机器人的感知系统、定位
    发表于 12-28 21:12

    基于导纳控制机器人拖动示教原理和实现步骤

    不同的任务需求和工作环境。      5.用户互动:导纳控制常用于人机互动,用户可以通过手动操作机器人的末端或操纵杆来引导机器人的运动,实现
    的头像 发表于 10-23 15:52 422次阅读

    ROS让机器人开发更便捷,基于RK3568J+Debian系统发布!

    的快速发展,智能机器人设备已成为工业自动化体系的佼佼者,而智能机器人设备核心—ROS系统,是机器人领域的集大成者,主要应用于机器人
    发表于 07-09 11:38

    简述工业机器人控制系统的特点

    机器人控制系统的特点,包括其组成、功能、性能、可靠性、灵活性、智能化、安全性、人机交互等方面。 一、组成 工业机器人控制系统主要由以下几个部
    的头像 发表于 06-16 15:38 1800次阅读

    机器人控制系统的基本单元有哪些

    引言 机器人是一种具有高度自动化和智能化的设备,它可以模拟人类的行为和思维,完成各种复杂的任务。机器人控制系统机器人的重要组成部分,它负责接收传感器的信号,处理数据,
    的头像 发表于 06-16 15:36 1811次阅读

    机器人控制系统控制方法可哪些种类

    机器人控制系统机器人技术的核心组成部分,它负责接收外部指令,对机器人的运动和行为进行控制和调节。根据
    的头像 发表于 06-16 15:35 2186次阅读

    工业机器人电气控制系统的体系结构主要有哪些

    工业机器人电气控制系统是工业机器人的重要组成部分,它负责控制机器人的运动和执行各种任务。随着工业自动化和智能制造的发展,工业
    的头像 发表于 06-16 15:28 1974次阅读

    工业机器人控制系统的基本组成有哪些

    工业机器人控制系统是工业机器人的大脑,它负责接收输入信号、处理信息、控制机器人的运动和执行任务。一个完整的工业
    的头像 发表于 06-16 15:26 2176次阅读

    工业机器人控制系统的主要功能

    工业机器人控制系统是工业机器人的大脑,它负责接收输入信号、处理信息、发出指令,以实现机器人的精确运动和操作。 一、引言 工业
    的头像 发表于 06-16 15:16 2051次阅读

    简述机器人控制系统的组成

    机器人控制系统机器人技术的核心,它负责接收输入信号,处理信息,控制机器人的运动和执行任务。一个完整的
    的头像 发表于 06-16 15:14 1615次阅读

    基于FPGA EtherCAT的六自由度机器人视觉伺服控制设计

    和增强系统处理图像的实时性,本文提出了一种伊瑟特的六自由度机器人视觉伺服控制系统,将摄像头集成到基于 Zynq的伊瑟特主站上,提高了视觉伺服的实时性.经测试,该平台能够对视觉检测目标的变化做出及时的反应
    发表于 05-29 16:17

    基于飞凌嵌入式RK3568J核心板的工业机器人控制器应用方案

    控制系统当中。那么今天,我们就通过多轴工业机器人来聊聊机器人控制系统以及控制器的实现。 1
    发表于 05-11 09:40