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

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

3天内不再提示

基于单片机SST89E554RC和超声波传感器实现机器人测控系统的设计

电子设计 来源:科技信息 作者:赵曦,杨福兴 2021-04-13 14:53 次阅读

1 引 言

移动机构是清洁机器人的主体,决定了清洁机器人的运动空间,一般采用轮式结构。传感器系统一般采用超声波传感器、红外光电传感器、接触传感器等构成多传感器系统。随着近年来控制技术、传感技术以及移动机器人技术等技术的迅速发展,智能清洁机器人控制系统的研究和开发已具备了坚实的基础和良好的发展前景。吸尘系统在原理上与传统立式吸尘器相同,主要是在结构设计上更多考虑结构尺寸、集成度以及一些辅助机构的合理布置和利用,以此来提高能源利用率和工作效率。本文主要研究智能清洁机器人测控系统的设计与实现,最终目标是通过软硬件的合理设计,使智能清洁机器人能够自动避开障碍物,实现一般家居环境下的自主清洁工作。

2 测控系统组成及功能

智能清洁机器人测控系统主要包括控制器核心系统、传感器系统和驱动系统等。其原理如图1所示。基于清洁机器人自身体积尽可能小的原则,本设计将控制器核心系统、传感器系统、行走驱动及相关电路集成在一块电路板上。为防止干扰,通过光电隔离器件将各模块在电气上隔离开来。利用超声波传感器、红外反射式传感器和接触传感器组成多传感器系统,检测信号经调理电路处理后送控制器;采用8位单片机SST89E554RC作为控制器,控制器对传感器信号加以判断,根据判断结果,选定相应的控制策略,并控制语音系统发出相应的报警信号;在相应的控制策略下,通过专用驱动器驱动直流电机,带动驱动轮,两轮独立驱动,实现避障功能;同时,控制器控制小型双风机真空吸尘系统对经过的地面进行必要的清扫。

基于单片机SST89E554RC和超声波传感器实现机器人测控系统的设计

图1 系统原理

该新型智能清洁机器人实验平台如图2所示,该平台为圆形结构,两轮独立驱动,具备完整的吸尘系统和电源系统等功能模块。最终将在该平台上对本文所介绍的测控系统的性能进行实验验证。

3 测控系统硬件设计

3.1 CPU控制模块

CPU采用美国SST公司制造的8位单片机SST89E554RC。器件使用与8051完全相同的指令集,并与标准的8051器件管脚对管脚兼容。片内拥有1 kB字节RAM空间,3个16位定时计数器,4个8位I/O端口,拥有可编程计数阵列(PCA),可提供5路256级PWM调速,可通过全双工增强型串口实现人机通讯。

依据SST89E554RC单片机的引脚特性,在实际设计中,各电机驱动信号由单片机P1口输出,左右驱动电机占用P1.1~P1.6共6个端口(其中 P1.3和P1.6作为PWM调速信号输出端口使用),吸尘风机和起尘电机分别占用P1.0和P1.7口;红外反射式传感器和接触传感器检测信号分别送给 P2口的P2.0~P2.7共8个端口;超声波接收器信号经调理后送人外部中断INT1(P3.3口);2个触摸式选择屏的触摸信号经处理后分别送给 P3.4口和P3.5口。

3.2 驱动模块

直流电机所需的驱动电压、驱动电流均比较大,因此采用双H桥高电压大电流驱动芯片L298N作为电机驱动芯片。L298N是推挽式功率放大专用集成电路器件,直流驱动电流总和可达4A,其内部具有2个完全相同的PWM功率放大回路,拥有PWM调速功能。在控制电路中,考虑到单片机会受到驱动部分的干扰,因此采用了光电藕合器TLP521,把控制部分和驱动部分在电气上隔离开来。采用8个1N5822高速大电流肖特基二极管组成续流保护电路,消除电机在起停、制动及换向时产生的反电势。系统工作时,单片机P1口输出的控制信号经过驱动器芯片74HC245和光电拥合器之后输入电机驱动芯片L298N,控制电机动作。当需要调速时,只需改变PWM波(本设计中由单片机P1.3和P1.6端口产生)的占空比即可,理论上可以实现256级调速。

3.3 障碍物检测模块

3.3.1 超声波检浏部分

超声波是一种一定频率范围的声波,频率为40kHz的超声波信号在空气中的传播效率最佳。本文选用中心频率40kHz,测距范围在5m以内的普通超声波传感器。传感器发射探头和接收探头安装在机器人正前方,系统工作时,通过汇编程序由P3.7口产生精确的40kHz发射脉冲,每隔25ms发射一组脉冲,每组的脉冲个数取6~10个,以保证发射波具备良好的传播性和反射性。发射波遇到障碍物反射回来,被接收器接收,转变成电信号脉冲,对该信号进行放大、滤波、比较和整形等处理后送入单片机外部中断口INT1,触发单片机外部中断,进入中断处理程序,获取从发射波发出到收到反射波时的时间间隔即测距时间,由此即可根据超声波测距原理计算出障碍物的距离。主程序中设定机器人行走过程中距离障碍物的最小距离,当被测距离小于最小距离时,控制器向驱动系统发出避障指令,避开障碍物。本设计中利用软件延时去除串扰带来的误操作,即在发射波发出一段时间后,再打开外部中断,避免发射波不经反射就直接被接收器接收而引起假中断。

3.3.2 红外反射式传感器检测模块

该模块用于主动探测机器人周边障碍物和地面落差。选用JY043W型红外反射式传感器,该型传感器调理电路简单,安装调试方便,每一路的检测距离可以达到 7cm,满足本文设计的需要。该部分由6路检测单元组成,其中在机器人左前方和右前方各安装2路,配合超声波传感器实现周边障碍物的检测。另2路分别安装在机器人前端左下方和右下方,探头距离地面4cm,用于检测地面是否有台阶等落差,防止机器人跌落。红外反射式传感器具体工作过程为,发现障碍物时,发射管发出红外信号遇到障碍物反射回来,接收管接收到反射信号后导通,则信号处理电路的输出端变为低电平,该低电平直接送入控制器P2的一个端口,当控制器检测到这个端口的低电平变化时则表明该方位发现障碍物。

3.3.3 接触传感器检刚模块

接触传感器具有检测范围大、信号无需调理、占用控制器资源少等一系列优点。本文选择小型接触开关作为接触传感器,安装在机器人前端的缓冲器上,作用在于通过轻微的碰撞接触,检测那些未能被超声波传感器和红外反射式传感器检测到杆状或微小障碍物,如座椅腿等。

4 测控系统软件设计

4.1 传感器信息处理

当各路传感器检测到障碍物时,控制器必须获得障碍物的准确信息后,才能发出正确的避障指令。为了获得有效信息,程序代码中为每一路检测信息都设定一个标志位,主程序不断检测各个标志位的值的有效性,以此作为障碍物方位信息。对于不同的传感器,其信息判断标志位有效值也可能不同。在本文所提到的3种传感器中,超声波传感器的信号处理程序最为复杂,其流程如图3所示。

图3 超声波传感器信号处理程序流程

4.2 驱动控制

驱动控制模块是智能清洁机器人自主行为的执行机构。根据传感器信息判断当前环境状态,对不同的障碍物信息,控制器将调用不同的避障策略,策略与驱动控制的动作组合指令相对应,通过左右驱动电机动作的有效协作,实现机器人前进、后退、转弯等自主动作。单部电机的控制信号与电机动作之间的关系如表1所示,其中 P1.1和P1.2为电机方向控制信号端口,P1.3为PWM波调速端口,需要减速时只需要降低PWM波的占空比即可,理论上可以实现256级调速。

表1 控制信号与电机动作关系

4.3 避障算法描述

根据模糊控制思想并结合实际行走试验设计避障算法。以传感器系统9路传感器的检测距离和障碍物所在的方位为模糊控制输入量,以驱动轮的前进、旋转和后退动作为模糊控制输出量。超声波传感器检测最小距离设定为15cm,距离远;红外传感器检测距离为7cm,距离适中;接触传感器是在发生碰撞后才能检测到障碍物,因此检测距离最近。据此设距离信号(记作:D)的模糊语言集合为:

D={近,中,远}

设定其相应的语言变量,记作:

ND=近,MD=中,LD=远

以各路传感器在机器人上的安装位置作为障碍物所在方位(记作:A)。超声波传感器安装在正前方,在其左右两边依次是接触传感器、下方红外传感器和周边红外传感器。则设方位信号的模糊语言集合为:

A={最左,较左,左,左下,中,右下,右,较右,最右}

设定其相应的语言变量,记作:

BL=最左,ML=较左,L=左,LD=左下,M=中,R=右,RD=右下,MR=较右,BR=最右

设机器人驱动轮的动作集合为:

{右转,稍微右转,后退,减速,前进,稍微左转,左转}

设定其相应的语言变量,记作:

TR=右转,TRL=稍微右转,GB=后退,SD=减速,GA=前进,TLL=稍微左转,TL=左转。

对于清洁机器人来说,在避障的同时,还要能够对清洁区域进行遍历。在保证避障和遍历的前提下,为了减少控制器的计算量并避免程序复杂化,本文采用逐一查询方式获得模糊控制量之一障碍物方位,根据障碍物方位即可获得另一输入量即机器人与障碍物间的距离。容易理解,采用逐一查询方法意味着控制器获得的障碍物信息来自于最先被传感器系统检测到的障碍物,而且控制器将根据最先获得的障碍物信息来调用相应的避障策略。因此,当有2个或2个以上方位有障碍物时,执行避障策略时机器人有可能与障碍物发生碰撞。试验发现,只有当左边的最左、较左方位和右边的最右、较右方位都有一个或2个发现障碍物时,才有可能导致机器人与障碍物发生碰撞。

为了避免这种情况发生,将机器人左右两边都发现障碍物的情况也作为一个障碍物方位变量,不论机器人左右2边是同时发现一个还是2个障碍物,都仅设其模糊语言为左右,设定相应的语言变量为LR。根据有利于避碰的原则,将障碍物方位信息的查询顺序确定为:

LD,RD,LR,M,BL,BR,ML,MR,L,R(左下,右下,左右,中,最左,最右,较左,较右,左,右)

从机器人有效避障并保证尽量少的重复先前行走轨迹的角度出发,当确定了障碍物的方位和机器人离障碍物的距离后,我们希望模糊控制的输出量不仅仅是机器人动作集合中某一种动作,而是集合里某几种动作的合理组合。因此,针对不同方位的障碍物信息,对机器人左右驱动轮动作集合的7种动作 (TR,TRL,GB,SD,GA,TLL,TL)进行合理组合,即得到相应的合成输出量,记作Fi(i=1,2,3…)。根据前述方法,最终可归纳出 10种控制规则,即避障策略,如表2所示。

表2 控制规则表

按照障碍物方位信息的查询顺序,其形式是:

if(Ai and D)then Fi

i=1,2,3…10

按照此种方法,在不影响机器人有效避障和相关功能的情况下,有效避障的控制规则大大减少,使避障算法简单化。

5 实验结果

在智能清洁机器人实验平台上对整个测控系统进行测试。实验在一间约10m2的房间中进行,在房间中随机摆放几件日常物品作为障碍物,将通过智能清洁机器人的行走实验,对本文所述的智能清洁机器人测控系统的软硬件性能进行验证。实验中,智能清洁机器人始终保持直线行走,遇到障碍物时,根据障碍物信息选择合适的避障策略避开障碍物,然后继续保持直线行走,直到遇到下一个障碍物。实验结果表明,该测控系统工作可靠,避障算法有效可行,智能清洁机器人能够自动回避障碍物,可以在无人情况下自主工作,能够实现家居环境下的智能化清扫。

6 结束语

在智能清洁机器人测控系统的进一步研究中,设计信息量更加丰富的检测系统,探讨非结构化环境下机器人的导航和自主定位技术,寻找更加有效的路径规划和避障算法,将是研究的方向和重点。

责任编辑:gt

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

    关注

    2525

    文章

    48069

    浏览量

    739989
  • 单片机
    +关注

    关注

    6001

    文章

    43970

    浏览量

    620774
  • 超声波
    +关注

    关注

    63

    文章

    2808

    浏览量

    136699
收藏 人收藏

    评论

    相关推荐

    基于超声波传感器的测距系统设计

    是移动机器人研究的一个基本问题。障碍物与机器人之间距离的获得是研究安全避障的前提,超声波传感器以其信息处理简单、价格低廉、硬件容易实现等优点
    发表于 12-15 10:20

    基于超声波传感器的自主移动机器人的探测系统

    不同的单片机控制,因此感测系统与移动机器人的上位必须依靠单片机间的I/O口线及串行异步通讯实现
    发表于 01-19 13:45

    有一批旧报警主板主芯片 SST89E554RC 如何重新利用

    有一批旧报警主板主芯片 SST89E554RC如何重新利用
    发表于 02-26 09:30

    超声波传感器机器人中的应用

    )。在三方向(前、左、右)组成超声波测距系统,就是为机器人了解其前方、左侧和右侧的环境而提供一个运动距离信息。超声波传感器接上电源可以单独作
    发表于 08-09 15:19

    基于超声波传感器的自主移动机器人探测系统

    由主程序模块、中断服务程序模块、传感器发射接收模块组成。这里主要对探测系统主程序模块加以说明。主程序流程图如图5所示。  超声波传感器和步进电机测控
    发表于 11-02 16:04

    超声波传感器在智能小车避障系统中的应用

    。  一、超声波测距系统组成及工作原理  本系统由STC89C52单片机作为控制系统核心,五路
    发表于 11-09 16:13

    超声波传感器机器人避障中有什么作用

    高、硬件实现简单等优点,在移动机器人感知系统中得到了广泛的应用。但是超声波传感器也存在一定的局限性,主要是因为波束角大、方向性差、测距的不稳
    发表于 02-27 23:29

    机器人应用的超声波传感器解决方案

    机器人通过各种传感器系统感知外界环境和自身状态,在复杂的环境自主移动并完成相应的任务,在众多传感器超声波
    发表于 08-18 10:23

    单片机控制超声波测距传感器

    今天下午 接到老板的新任务,希望我完成单片机控制 超声波测距传感器,完成测距工作。那我们今天的 内容依然是 单片机 + 传感器 + led灯
    发表于 08-06 07:01

    移动机器人超声波测距功能设计

    机器人有很多种方案可以选择。机器人的每一次行为都是根据超声波传感器测得的值和当前机器人运行的即时速度来来给出将要运行的时间, 在遇到障碍物
    发表于 10-08 09:41

    基于STM32的超声波测距系统设计

    自动控制、建筑工程测量和机器人视觉识别等领域应用非常广泛。3 软件算法3.1 基本流程系统以STM32 单片机为核心,实现对各部分的控制和响应。测距软件的基本流程:首先使用美国DALA
    发表于 01-06 06:56

    基于SST89E554RC的点阵显示控制屏的设计

    介绍了以单片机SST89E554RC 为控制器的点阵中文显示控制屏的设计。详细介绍了系统硬件的结构与软件的控制,以及如何通过PC 机将要显示的汉字汉模提取出来并发送给单片机,然
    发表于 06-22 09:42 24次下载

    基于超声波传感器的液氮流量测控系统

    针对液氮冷冻治疗控制困难,本文介绍了一种利用超声波传感器和AT89C52单片机组成的液氮流量测控系统
    发表于 11-26 13:39 18次下载

    基于SST89E554RC的点阵显示控制屏的设计

    介绍了以单片机SST89E554RC 为控制器的点阵中文显示控制屏的设计。详细介绍了系统硬件的结构与软件的控制,以及如何通过PC 机将要显示的汉字汉模提取出来并发送给单片机,然
    发表于 12-23 16:59 37次下载

    利用AT89C51单片机超声波传感器测距实现超声波倒车雷达

    电子发烧友网站提供《利用AT89C51单片机超声波传感器测距实现超声波倒车雷达.rar》资料免
    发表于 11-17 15:47 0次下载
    利用AT<b class='flag-5'>89</b>C51<b class='flag-5'>单片机</b>、<b class='flag-5'>超声波</b><b class='flag-5'>传感器</b>测距<b class='flag-5'>实现</b><b class='flag-5'>超声波</b>倒车雷达