版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于ROS的移动传送机器人系统设计摘要目前传统移动传送机器人的技术相对较为成熟,但其使用成本仍然相对较高,且容易出现传感器故障、数据处理不当等问题,从而导致移动传送机器人可能会出现避障不及时、误判障碍物等问题,导致其无法有效避免障碍物完成任务。本论文旨在研究和设计一种基于ROS的移动机器人系统,可以实现自主导航、环境感知、路径规划和任务执行等功能。硬件平台采用了搭载有超声波测距传感器、摄像头、电机驱动器等传感器和执行器的移动底盘,为机器人提供了环境感知和执行任务的能力。软件系统基于ROS框架,设计了为实现了机器人的任务执行和自主导航功能而服务的众多模块,包括导航、感知、构建地图、规划路径和任务执行等模块。最后验证了基于ROS的移动机器人系统在不同环境下的导航和任务执行性能。实验结果表明,所设计的基于ROS的移动机器人系统具有一定的应用价值。关键词:移动机器人;ROS;超声波测距传感器
目录第1章绪论 第1章绪论1.1研究目的及意义机器人越来越广泛的应用,使得它渗透到了几乎所有领域之中[1]。机器人这门学问之中有一个主要分支就是基于ROS的移动机器人。其中ROS是一种软件构架,是用来编写机器人程序的,它的一个重要特点就是灵活性相当高,能够通过ROS使用一些标准的操作系统服务[2]。并目ROS还能够在不同节点的运行过程之中接收、发出、整合各种信息[3]。想要设计一个基于ROS的移动传送机器人则需要许多方面的技术支持。首先,要考虑的就是移动传送机器人如何行动,有许多方案可以选择,比方可以选择车轮样式的、履带样式、甚至是腿式的等。其次,为使基于ROS的移动传送机器人能够达到希望它能够达到的能力程度。则需要考虑它的导航方式和行进计划方式,且还要考虑它选择哪种驱动器进行控制,而这个则需要考虑传感融合,特征提取,避障及环境映射等方面[4]。所以,可以看出基于ROS的移动传送机器人是一个综合的系统,它包括道路行进规划、周围环境信息收集、移动行为执行等许多功能于一体[5]。其中,对ROS移动传送机器人的开发设计,很多学者工程师提出了许多全新的理论与工程技术课题[6],而它在许多人不适合进入的危险恶劣环境和民间应用中物料搬运上中具有的广阔的应用前景,使得世界各国中对它的研究都普遍关注。1.2国内外研究现状近年来,随着社会经济的快速发展,国内外很多研究机构在这个领域做了诸多努力。2022年,郑为奇和汪地在《ROS室内移动机器人避障研究》中提到,当前基于ROS的移动传送机器人普遍采用的局部道路行进规划算法是动态窗口法(DynamicalWindowApproach,DWA)[7]。动态窗法通过采集许多个离散的速度,并模拟采集到的速度在一定时间内的运动轨迹,利用评价函数对模拟出的轨迹进行评定,从而得到最优路径。但DWA算法计算复杂度较高,难以实时地动态避障。而TEB算法则是将动态障碍物、运行时效、路径平滑等约束进行综合考虑,因此在复杂环境下,相较于传统的动态窗口理论有更优秀的表现,它支持几乎所有非完整约束底盘和完整约束底盘,特别是在阿克曼非完整约束底盘上表现出色。TEB算法避障首先将规划的几条能到达目标点的粗略路径作为原始路径,然后在每条路径上考虑多种约束,如时间、碰撞、速度加速度等,并利用这些约束构建优化问题,最后求解每条初始路径的优化问题,得到一条比初始化更优的路径,再从调优后的路径中选出一条更优的路径,即可得到局部路径规划的结果。机器人检测障碍物的传感器往往采用二维的激光雷达,但只能检测某个截面上的障碍物,若在室内的复杂环境中,则会使机器人导航变得不安全。所以,选择深度相机作为障碍物检测传感器,并使用时间弹性带局部路径的算法实现了ROS机器人避障功能的安全可靠。2022年,以欧阳嘉泰、王冠凌等人在《基于ROS的室内移动机器人自主导航系统设计》中针对移动机器人在建图与导航技术层面显现不足的问题,结合ROS操作系统,完成机器人自主导航系统的设计[8]。首先,使用优化过后的Gmapping算法进行室内环境二维栅格地图构建并利用AMCL算法完成机器人的准确定位。其次,使用TEB算法对当前构建的地图进行行进道路规划。然后,通过实验验证:在仿真环境中和现实环境中,移动传送机器人通过激光雷达扫描一定范围环境信息建立地图,并基于已有地图实现准确定位,自主绕过在路径中遇到的静态障碍物,且可以规划绕过动态障碍物的最优路径。2020年吴迪发表的《基于多传感器融合的智能小车SLAM导航研究》研究的机器人实验平台因未安装机械制动器,而使得机器人的多个关节在停止行动时,因受到地球引力的影响而向下坠落[3]。除了这个,还由于别的其他各个方面的影响,必须在原来的构造上尽量不增加机械制动器,所以要用软件来控制机器人关节的电气制动。因为最好机器人上不要放上机械制动器而使它的重量变重,所以最好是能够在不使驱动系统重量增加的同时又能够同时拥有制动功能,而使用电气制动器则就能满足这一点。而缺点则是:使用电气制动器对于机械制动器来说它不够稳当,它在断电的时候就会丧失制动的能力。在2021年陈鹏在《智能小车定位和路径规划系统的研究与开发》中说到,使用的工业机器人其应用场景主要在模锻压力机的上下料、机床,和喷漆,点焊这类作业环境上,它们虽然可以按照提前设置好的工作程序完成限定好的步骤,但还没有传感反馈的功能,不能应对提前规定好的程序之外的状况[9]。比方,在发生某些偏差的时候,就可能会导致零部件损毁甚至机器人本身的损坏。杨道清在2021年发表的《双目智能小车障碍物检测与避障研究》中提到,制造业机器人的系统要求具有更大的柔性和更强大的编程环境,来适应不同的应用场景和小批多品种的生的应用产过程[10]。2020年S.Escalera,O.Pujol,P.Radeva.在《VisionApple》中研究的机器人传送系统的修改封闭系统的条件要求是非常高的,只能从新设计,否则在技术上无法实现[17]。而钻研和应用有着开放结构的机器人系统是克服这些困难的有效的办法。德国开发了一种轮椅机器人,这个机器在人群十分密集且相当拥堵的情况下,做了长达六个钟头的使用实验,此机器人在这次实验中最后的实验结果相当好,其能力是其它现在有的移动机器人所达不到的。2021年在《RadevaTrafficsignrecognitionusingevolutionaryadaboostdetectionandforest-ecocclassificationIEEETrans》中其发表者X.Baro,S.Escalera,J.Vitria,Pujol,提出的计算机集成制造(CIM)要求机器人系统要能和车间中的别的自动化设备连接在一起[18]。为了提升机器人系统的机能和智能化水平高度,要求机器人系统需要拥有开放结构和集成众多外部传感器的能力。2022年S.M.Bascon,J.A.Rodriquez,S.L.Arroyo,A.F.Caballero,F.Lopez-Ferreras在《VisionImageUnderst》发表的机器人系统大多都是采用的封闭结构的专门使用的控制器,一般采用专门的计算机来作为上层的主控计算机,而且用专门的微处理器,应用专门的机器人语言来当做用来在离线情况下编程的工具,并在EPROM中固化控制算法,想集成外部硬件和软件,使用这种专用系统则很困难[19]。在2022年,WalterFetterLages在《JointLevelAdaptiveControlforMobileRobotsinROS2》中,提出了一种适用于移动机器人的自适应控制器,利用的是机器人操作系统的导航框架[20]。导航框架实现了一个运动学控制器,该控制器考虑了诸如机器人非完整约束和障碍物的运动学约束,并输出要由关节级控制器实现的线性和角速度命令。通常,关节级依赖于速度伺服,而速度伺服忽略了机器人的动力学或PID控制器,由于模型的非线性和未知参数,这些控制器很难调整。所提出的模型参考自适应控制器根据导航框架的要求接受速度参考,并输出车轮扭矩以施加指令速度。给出了稳定性的形式化证明,包括机器人动力学、控制器和自适应律。尽管这一点尚未得到证明,因为它取决于参考信号上激励的持续性,但实验结果表明,估计的参数收敛到接近实际值的值。根据国内外对于移动机器人的研究,移动机器人容易出的系统现故障和编辑程序的问题,本文设计的基于ROS的移动传送机器人控制系统设计是基于ROS进行工作的,性能稳定,价格低廉,设计成熟。1.3主要研究内容本设计是一种基于单片机技术的ROS移动传送机器人。该系统应完成的主要功能有: 1.监测到前方有障碍,移动传送机器人停止移动,蜂鸣器响;2.超声测距传感器时刻监测前方障碍情况;3.进行道路障碍学习,将观察到的情况与机器人所在位置进行比较,来提供给处理器使它根据情况操纵移动传送机器人行动;4.根据观测到的环境路况,移动传送机器人进行左转、右转、掉头、停止。第2章系统总体结构2.1设计方案本设计是一种基于单片机技术的ROS移动传送机器人。通过STM32F103RCT6单片机作为基本控制核心,采用干电池组进行供电。2.2功能需求分析移动机器人首先要有能够在从未接触过的环境中安全自如的移动的能力,所以它要能够进行自主的导航移动。要实现这一点,机器人需要装备多个各个功能的传感器,如激光雷达、摄像头、超声波等传感器,并且还要有SLAM算法和路径规划算法。然后,为了实现机器人需要处理包括使用传感器得到的指令和从远程控制端发送的指令这一点,机器人则装备了ARMCortexM系列的单片机,并且编写了用来处理各种指令的控制程序。其次,机器人为了实现交互功能,还需要配备多媒体设备和显示屏,以方便用户更加直观的与机器人进行交互。最后,机器人还要能够自我监测传感器的状态,定期维护和校准传感器设备。基于ROS的移动机器人需要具备多项功能,包括自主导航、控制处理、交互和自我维护等。而实现这些功能则需要各种程序、单片机、传感器和算法的应用。随着技术的发展进步,这些功能都将进一步得到推广和完善。2.3激光雷达在基于ROS的移动传送机器人系统设计中,激光雷达是一个十分重要的传感器。它是一种测量物体位置和距离的设备,是利用激光束进行测量的,它通过并测量激光束从发射到反射回来来回所需要的时间,来确定物体到机器人的位置距离[21]。激光雷达在ROS系统设计中有一些重要作用:驱动程序:激光雷达与ROS系统进行通信通常需要一些特定的驱动程序。ROS可以提供各种激光雷达的驱动程序包,能够与不同型号和品牌的激光雷达进行通信。数据发布:激光雷达发布数据是通过ROS的传感器消息。而erLaserScan消息最常用的消息类型,它包含了激光束的各种测量数据,如角度、强度和距离信息。而这些消息被激光雷达节点发布到ROS系统中的特定主题,之后其他节点想要获取这些激光雷达数据就可以通过订阅这些主题来完成。数据处理:激光雷达数据的各种处理和分析可以在ROS系统中进行。比如,对激光雷达数据进行降噪和滤波可以使用ROS中的滤波器节点处理,以完成去除无用的噪声和异常数据的任务。此外,还可以使用SLAM算法将机器人的运动信息与激光雷达数据相结合,以实现实时建图和定位。可视化:ROS中的可视化工具可以对激光雷达数据进行实时分析和展示。其中,ROS中常用的可视化工具RViz,可以以点云的形式将激光雷达数据显示出来,以帮助用户更加直观地了解机器人的周围环境。导航与避障:激光雷达在移动机器人系统中的导航和避障得到广泛应用。以激光雷达数据的实时获取,并使用导航堆栈中的避障算法和路径规划,机器人就能够根据周围环境的距离信息做出选择,以完成避免障碍物并导航的任务。2.4三维构图在基于ROS的移动机器人系统设计中,三维构图(3DMapping)是一个十分重要和关键的功能,它使得机器人能够从周围环境中获取到三维场景的众多信息并构建出精确的三维地图。以下是基于ROS的移动机器人系统中三维构图的一般设计流程和要素:激光雷达的环境情况获悉:一般情况下机器人获知四周情况信息的方式是用激光雷达为的感知设备。ROS提供了各种激光雷达的驱动程序包,可以方便地与不同型号和品牌的激光雷达进行通信,并获取激光扫描数据。点云数据处理:激光雷达通常以点云的形式表示返回的数据,即三维坐标数据是由大量的点构成的。在ROS中,点云数据经常使用PointCloud2消息类型来表示。对点云数据进行各种配准、滤波、分割和特征提取等处理,可以通过ROS的点云处理库处理。地图构建算法:在ROS中,用于将点云数据转换为三维地图模型的最常用的地图构建算法算法是自由空间构图和体素滤波算法。自由空间构图算法是利用激光雷达的扫描数据将环境划分为自由空间和占据空间,并以栅格地图的形式表示。体素滤波算法是将点云数据离散化为体素并进行滤波处理,从而构建出稠密的三维地图。地图更新和维护:随着机器人的位置移动,环境也会随之不断变化,所以构建出的地图也需要进行实时更新和维护。在ROS中,同时进行地图构建和机器人定位可以使用SLAM算法来完成。SLAM算法是通过激光雷达收集到的环境信息和机器人自身的的移动情况,随时进行机器人的行动和方位计算以及地图的刷新,从而实现机器人的实时位置确定和地图更新。地图可视化:ROS提供了如RViz和Gazebo等多种可视化工具,可用于实现完成三维地图。这些应用可以说明机器人的方位、地图的构建、点云数据等,并且允许用户以三维视角分析和观察地图。基于ROS的移动机器人系统中的三维构图模块为机器人提供了用于导航决策和环境感知的重要信息。它帮助机器人构建准确的环境模型,实现目标导航、路径规划、避障等高级功能。2.5单片机型号选择在进行本设计时,对于单片机的选择有两种方案,及使用51单片机或STM32单片机。方案1:51单片机说的是对兼容英特尔8051指令系统的单片机的统称[11]。51单片机它拥有着八位的CPU;而且它的数据存储器和程序储存器的寻址空间都达到了64KiB;且还有拥着四组输入输出口,每组八位共三十二个;以及五至六个中断源,它们分为2个优先级。51单片机只能做一些简单的逻辑功能代码,因为它的性能和储存空间非常有限,所以不适合做复杂的算法和大数据处理,而且51单片机接口也比较少,通信功能有限,不能支持扩展太多的功能。方案2:STM32是一款32位的微控制器,它是意法半导体公司开发出来的,是基于ARMCortex-M为内核的。STM32它的优点众多,其中包括功率耗能低、机能优秀、功能强大等,常应用在嵌入式领域。STM32很早之前就开发出来了,资料丰富,便于学习。它能够搭载高速的处理器和内存,能够轻松处理复杂应用。具有丰富的外设接口,易于调试和测试。经过比对,本设计最终选择使用STM32单片机。图2.1STM32F103RCT6原理图STM32F103RCT6是STMicroelectronics公司推出的一款32位单片机,是以ARMCortex-M3为内核开发出来的。它是STM32F1系列的一员,运行频率高达72MHz,采用了ARMCortex-M3处理器,具有丰富的外设和存储器资源。以下是STM32F103RCT6的主要特点和特性:处理器核心:STM32F103RCT6的内核采用了ARMCortex-M3,这是一种32位的低功率消耗、高机能处理的RISC处理器。它强力的计算能力和处理器核心优化的指令集,十分适合与嵌入式应用。运行频率:该单片机的运行频率最高为72MHz,它可以满足大部分情况下多数应用的需求存储器:STM32F103RCT6具有128KB的Flash存储器和20KB的SRAM。SRAM用于存储临时数据和堆栈,Flash存储器用于存储应用程序代码和数据。外设接口:它能够提供包括多个通用IO口、I2C、USB、USART、SPI、定时器、ADC等多种外设接口。电源管理:该单片机具有如待机模式、睡眠模式和停机模式等多种电源管理功能,且它支持多种低功耗模式,以优化能耗开发工具:STMicroelectronics有着了完备的软件和所需的工具,包括集成开发环境、STM32Cube软件开发平台和丰富的软件库。这些工具和资源可以帮助开发者快速启动项目并开发应用程序。
第3章系统的硬件部分设计3.1系统总体设计本设计使用的单片机是STM32F103RCT6单片机,它是操控整个系统硬件的核心,其提供电能则是选择用的干电池。其系统的主要硬件模块包括电机驱动模块、IMU模块、RaspberryPi电脑板模块、指示灯模块、MPU9250时钟模块、USB模块、舵机模块、稳压电路模块、图像采集模块、和蜂鸣器模块等。3.2系统的主要功能模块设计3.2.1舵机模块设计图3.1舵机模块原理图舵机其实就是一种驱动器,它就是一种为位置伺服的伺服马达,它适用的控制系统为位置角度可以持续变化又可以一直保持的系统。而它则普遍使用在了遥控玩具如飞机、潜艇模型,遥控机器人等之中[12]。它其工作原理就是通过信号调制芯片收到控制信号,控制信号代表着直流偏置电压,它由接收机的通道进入再进入到芯片之中。电机是正转还是反转,就看到电机芯片的电压差是正还是负,电压差是正就正转,是负就反转。电压差为零时电机停止,级联减速齿轮带动电位器旋转就能完成使电压差为零。舵机的操控:需要一个控制脉冲部分的基脉冲,它一般在20ms左右高电平部分角度一般为05ms~2.5ms范围内,这样才能控制舵机。图3.2舵机驱动模块原理图74HC245;74HCT245是一种高速硅栅CMOS器件,可以与低功率肖特基TTL(LSTL)引脚兼容。74HCT245芯片是驱动舵机采用的芯片。74HC245;74HCT245是八进制收发器,具有发送和接收方向上的非反相三态总线兼容输出。74HCT245具有用于容易级联的输出使能输入(OE)和用于方向控制的发送/接收输入(DIR)。3.2.2电机驱动模块设计图3.3电机驱动模块原理图HR8833电机驱动模块是一种常见的电机驱动器,常用于控制和驱动直流电机(DCmotor)或步进电机(steppermotor)。以下是一般情况下电机驱动模块的常见特点和功能:HR8833电机驱动模块通常需要一个适当的电源供电,以提供所需的电压和电流。输入电源范围可以根据具体模块而有所不同。该模块通常具有高电流输出能力,能够提供足够的电流给电机以实现高效的驱动。这有助于电机产生所需的转矩和速度。HR8833电机驱动模块通常提供各种控制接口,例如PWM(脉宽调制)、DIR(方向)和EN(使能)等。通过这些接口,可以实现对电机的速度、方向和使能状态进行控制。为了确保电机和驱动器的安全运行,HR8833电机驱动模块有着许多保护。它们包括过电流保护、过高温保护和电源过高压保护等,以防止电机和模块受到损坏。该模块通常支持电机的速度调节,通过调整输入信号的频率或占空比,可以控制电机的转速。这种调速控制通常通过PWM信号实现。有些HR8833电机驱动模块还配备了逆变器功能,可以将直流电源转换为交流电源,以驱动交流电机。3.2.3IMU模块设计图3.4IMU模块原理图IMU即惯性测量单元,它弥补了GPS定位的不足,其中通常封装了三轴加速度计和三轴陀螺仪,它用于测量物体的三轴姿态角以及加速度[13]。IMU在移动传送机器人上测量和收集加速度和角速度信号,加速度和角速度数据在三维空间中能够算出物体的状态位置,以起到定位导航的作用。来检测移动传送机器人有无突然碰撞,有无倾斜等。IMU提供的信息是一个相对的定位信息,它测量的是相对与起始位置的移动传送机器人所行进的道路,所以它并不是提供移动传送机器人所在的具体位置的信息,所以,它一般都与GPS一起应用,在没有GPS信号的时候,IMU能够使得移动传送机器人可以继续获得绝对位置信息,不会失去方向。3.2.4MPU9250时钟模块设计图3.5MPU9250时钟模块原理图MPU9250的传输是通过集成电路总线接口和单片机进行的,这样的话,传输速率最高可以达到400kHz/s。它的动态响应十分灵敏,静态测量的精度也很高。磁力计收集信息数据则使用高灵敏度霍尔型传感器进行,收集的信息可用于计算偏航角的辅助。3.2.5稳压电路模块设计图3.6稳压电路模块原理图本设计的稳压电路模块是使用的HT7533-1三端稳压器。HT7533-1是运用CMOS工艺开发的低能耗的高压稳压器,最高的输入电压为30V,输出电压最高为12.0V.它的输出电压精度很高、供电电流特别低、跌落电压也很低。其详细信息为1.低功耗:≤3μA2.低跌落电压:典型值0.1V3.低温漂:典型值50ppm/4.高的输入电压:最高可达30V5.高精度的输出电压:容差为+3%6.封装形式:TO-92,SOT89-3,SOT-23-33.2.6图像采集模块设计图3.7图像采集模块原理图在本设计的移动机器人中,图像采集模块使用的器件为摄像头。其作用十分重要,它负责采集机器人附近的环境图像信息,辅助其进行路径识别。其识别的准确与否能影响到移动机器人是否可以在正确地在路线上移动行进。3.2.7指示灯模块设计图3.8指示灯模块原理图本设计中移动传送机器人上所配备的LED指示灯其作用,在于表示说明机器人现在的工作状态,处于哪种工作状态;提示机器人状态不正常或操作不当,操作人员即使进行相应处理;或表示机器人出现故障,提醒尽快进行检修。3.2.8USB模块设计图3.9USB模块原理图本设计所用的充电接口是P-5-MICROUSB。MICROUSB是USB2.0规范的其中的一个版本号,它的接口比MiniUSB的接口还要小。MiniUSB的下一代型号就是MICROUSB,是由USB标准化组织二零零七年一月四日规定。它比标准USB和Mini-USB连接器更节省空间,且它包括了钢板机壳,能够达到一万次的拔插强度。3.2.9RaspberryPi电脑板模块设计图3.10RaspberryPi电脑板模块原理图RaspberryPi电脑板中文译名为“树莓派”,树莓派是一种体型小但功能完备的掌上电脑,它有包括USB接口、网线接口、Wifi、可编引脚、外接显示屏和摄像头等众多功能。树莓派由英国的EbenUpton为领导开发。它是一个基于ARM的微型电脑主板,只有银行卡大小,却能基本实现电脑的功能。它是世界上正式发售的最小的台式机,所以又被称为卡片式电脑。它是以SD/MicroSD卡为内存硬盘,它能够连接外设,拥有HDMI高清视频输出接口和视频模拟信号的电视输出接口,上面所说的全部部件都在一张银行卡大小的主板上,一张小小的主板却能够基本具备PC的所有功能[14]。只要给它接上屏幕和输入设备,它就能开始运行许多功能。只有RSComponents、Egoman和Element14/PremierFarnell这三家公司有树莓派的生产许可,且他们都在网上出售。树莓派价格低廉,体型小便于携带,运行开源的Linux操作系统。且内置包括Python2、Wolfram、Java、Python3等众多编程语言的开发环境。其主板上有GPIO引脚,通过对这些众多引脚进行编程,可以控制各种传感器、电路、电子元器件,从而对机器人进行控制。树莓派是一种卡片式电脑,是可以装操作系统的,并能直接在上面进行编程和运行[15]。树莓派是使用ARM架构的linux系统,它作为一个微型电脑,它的可操作性是十分强的。树莓派基金会提供了两个版本供人们使用,两个版本分别为:基于ARM的DEBIAN和ArchLinux。从2012年树莓派开发出来到现在,因其低成本、小体积、便携方便等特点,被全球各地使用者应用到了许许多多的项目设计之中,且广受好评[16]。3.2.10蜂鸣器模块设计图3.11蜂鸣器模块原理图在基于ROS的移动传送机器人系统设计中,蜂鸣器模块是其重要的组成部分,其主要作用是在成功连接节点后,或在其自主导航时遇到无法避让的障碍时发声提醒,和在移动传送机器人出现故障时警示报警。其作用十分重要不可或缺。蜂鸣器采用压电式蜂鸣器,它是由压电蜂鸣片、多谐振荡器、共鸣箱、阻抗匹配器和外壳等组成。由集成电路或晶体管构成多谐振荡器。其工作电压最低为1.5V,最高可以达到15V,接通电源之后,多谐振荡器开始起振,输出音频信号,压电蜂鸣片由阻抗匹配器推动发声。
第4章系统的软件设计4.1软件主流程图整个系统以单片机为核心,通过系统控制模块完成移动传送机器人的基本功能,接收指令行进或停止等;通过超声测距传感器检测前方是否有障碍;控制机器人移动。图4.1总流程图4.2超声波测距模块的软件设计图4.2超声波测距模块流程图只用有一个脉冲触发信号在10us以上,该模块就会发出八个40kHz周期的电平并测量回波。只有有回波信号它就会输出回响信号。所测量到的回响信号的脉冲宽度越宽,就代表着检测到的障碍物距离越远。距离的话,只要知道从发射到接收到信号中间的时间,就可以通过计算得知。测量周期尽量在60ms以上,要不然发射信号就会对传回的回响信号产生影响,会导致测量不准确。图4.3超声波时序图4.3GPS模块的软件设计本设计确定机器人的所在位置的方法,采取GPS系统并结合摄像头采集的画面的方法。图4.4GPS模块流程图4.4舵机模块的软件设计在本设计中,移动传送机器人的方向控制由舵机控制。图4.5舵机模块流程图4.5激光雷达模块的软件设计在基于ROS的移动机器人系统中激光雷达模块的软件设计是非常重要的。下面是激光雷达模块的软件设计流程和要素:驱动程序:首先,与激光雷达硬件进行通信需要使用适当的驱动程序。ROS提供了许多已经实现好的可以与各种激光雷达设备进行通信的激光雷达驱动程序包。选择适配特定激光雷达型号的驱动程序,配置按照ROS的驱动程序接口规范进行。数据接收和解析:驱动程序与激光雷达设备进行通信,从而接收到原始的激光雷达数据。在软件设计中,接收和解析这些数据则需要编写相应的代码。一般,激光雷达数据以二进制格式传输,所以想要获得点云数据或距离信息,则需要对数据进行解析和转换。数据处理和滤波:接收到激光雷达数据后,需要对数据进行各种处理和滤波操作。数据处理任务包括去滤除异常值、除噪声、配准和数据插值等。ROS提供的丰富的点云处理库可以方便地对点云数据进行处理和滤波。数据发布:激光雷达数据经过处理和滤波后就可以通过ROS中的传感器消息进行发布。LaserScan消息和PointCloud2消息是最常用的消息类型。发布激光雷达的扫描数据使用LaserScan消息。PointCloud2消息则用于发布点云数据。数据的可视化和调试:为了方便调整和实验激光雷达,最好数据的可视化使用ROS提供的可视化工具进行。例如,使用RViz将激光雷达数据以点云的形式进行实时显示,帮助验证激光雷达的工作是否符合预期。整合和系统交互:激光雷达模块一般需要与其他模块进行整合,如路径规划算法、SLAM算法和避障模块等。在软件设计中,为实现整个系统的功能,需要确保其他模块与激光雷达模块之间的数据交互和通信正常工作。激光雷达模块的软件设计包括数据接收与解析、数据发布、驱动程序的选择和配置、数据处理和滤波、可视化和调试,以及与其他模块的整合。通过合理的软件设计,激光雷达模块能够正常工作并为移动传送机器人系统提供准确的环境感知能力。
第5章系统测试5.1系统实物图图5.1系统完整实物图5.2测试原理(1)通过WiFi使电脑与机器人连接,打开终端输入指令,可通过键盘控制机器人移动。图5.2测试原理图(2)打开终端输入指令,使机器人能够拍摄画面传送到电脑端,开启摄像头方便查看小车所在位置。如图5.3为机器人拍摄的画面图5.3机器人拍摄画面终端输入指令,启动激光雷达。通过激光雷达收集机器人周围环境信息。图5.4机器人启动激光雷达(4)终端输入指令,启动机器人SLAM建图。通过机器人采集的画面和激光雷达收集到的环境信息,建立一个机器人所处位置的部分地图3D模型。SLAM算法即指的是同步定位与地图创建,它能够让移动传送机器人在从来没有来到过的环境中安全移动,而且还可以描绘出所处位置环境的地图。本设计采用的为基于激光雷达的SLAM。这种定位技术是比较完备的且成功的,它的建图直观、精度高、不存在累计误差。图5.5SLAM建图(5)通过输入指令后,可用手柄操控机器人移动,随着小车的移动,所创建的地图区域也会不断扩大。PS手柄的接收器与单片机连接在一起,按下手柄就会发送消息,接收器就能接收到信息再传输到单片机。图5.6手柄控制图5.7扩大后的SLAM建图(6)绿色为给机器人设置一个起点,粉色为给机器人设置一个终点,是机器人自动导航,地图中红点为障碍物,小车在自动导航时,会自动避障,到达所设定的终点区域后停止移动。图5.8设置起点图5.9设置终点
第6章总结与展望6.1总结本设计的完成过程对我我来说难度不小,在整个过程中出现了大大小小不少的问题。但好在教指导老师很负责的有耐心指导我,让我我发现了问题,并指导改正了我的设计中很多不正确的地方,并使我收获良多。在本设计中出现的问题主要是以下几个方面,在指导老师的帮助下,和我查阅资料下,针对这些问题提出了解决办法。(1)在模拟仿真时,有一些数值一直达不到设计上的规定。最后,发现电路板焊接时出现了一些技术问题,于是重新焊接。(2)在使用仿真软件进行仿真时,中间总是出现问题,最后在请教指导老师后,指导老师发现了系统代码的错误,并帮助改正。(3)在模拟时,一直都有显示逻辑错误。最后结果输出且不受影响,但实物中会危害电源。之后经过细心排差最后发现,在发送错误代码时,系统不能分辨忙碌情况。然后就在系统中添加了识别忙碌信息这一功能,就不再显示逻辑错误了,之后的实物也就不在受影响了。6.2展望设计以智能移动机器人为研究对象,在具体分析智能移动机器人在各个领域的应用问题后,明确提出了一种基于ROS的移动传送机器人。全部设计的首要工作中如下所示。(1)根据查看相关资料,确定了移动机器人在一些领域的作用,在这个基础上明确提出了以采集周围画面信息、自动移动、建图为首要目的的移动传送机器人;(2)对于上一部分提及的问题,明确提出了运用单片机实现移动传送机器人的自动控制,运用单片机设计操纵所有体系的设计计划方案。(3)硬件上电源电路是以电机模块为驱动元件,单片机作为主板芯片。模拟仿真结果表明,本设计最后的成品基本满足机器人的要求。但是本人水平学识有限,无论是系统代码还是硬件组装调试,都有可以优化而使得本设计更加完善的地方。
参考文献[1]窦新宇,王玉娜.智能信息类创新型应用人才的培养——以跨学科智能小车研究为例[J].工业技术与职业教育,2021,19(03):47-50.[2]雷斌,金彦彤,王致诚,赵蕊,胡方鑫.仓储物流机器人技术现状与发展[J].现代制造工程,2021(12):143-153.DOI:10.16731/ki.1671-3133.2021.12.022.[3]郑太雄,江明哲,冯明驰.基于视觉的采摘机器人目标识别与定位方法研究综述[J].仪器仪表学报,2021,42(09):28-51.DOI:10.19650/ki.cjsi.J2107650.[4]林韩熙,向丹,欧阳剑,兰晓东.移动机器人路径规划算法的研究综述[J].计算机工程与应用,2021,57(18):38-48.[5]王梓强,胡晓光,李晓筱,杜卓群.移动机器人全局路径规划算法综述[J].计算机科学,2021,48(10):19-29.[6]王诗宇.智能化工业机器人视觉系统关键技术研究[D].中国科学院大学(中国科学院沈阳计算技术研究所),2021.DOI:10.27587/ki.gksjs.2021.000003.[7]\t"/kns8/defaultresult/knet"郑为奇,\t"/kns8/defaultresult/knet"汪地.\t"/kns8/defaultresult/_blank"ROS室内移动机器人避障研究[J].\t"/kns8/defaultresult/_blank"ROS室内移动机器人避障研究,2022(10):72-75.[8]\t"/kns8/defaultresult/knet"赵以毛;
\t"/kns8/defaultresult/knet"欧阳嘉泰;
\t"/kns8/defaultresult/knet"王冠凌;
\t"/kns8/defaultresult/knet"代广珍.\t"/kns8/defaultresult/_blank"基于ROS的室内移动机器人自主导航系统设计[J].\t"/kns8/defaultresult/_blank"黑龙江工业学院学报(综合版),2022,12(03):24-33.[9]吴迪.基于多传感器融合的智能小车SLAM导航研究[D].天津职业技术师范大学,2020.[10]陈鹏.智能小车定位和路径规划系统的研究与开发[D].黑龙江大学,2021.[11]杨道清.双目智能小车障碍物检测与避障研究[D].昆明理工大学,2021.[12]郑辰瑛.基于单片机的多功能抢答器的设计与实现[J].中小企业管理与科技,2021,34(09):143-144+146.[13]\t"/kns8/defaultresult/knet"罗虎;
\t"/kns8/defaultresult/knet"贾瑞清.\t"/kns8/defaultresult/_blank"自适应神经模糊双电位计零死区高精度舵机[J].\t"/kns8/defaultresult/_blank"机械设计与制造,2020(30):157-159.[14]\t"/kns8/defaultresult/knet"吴鹏飞.\t"/kns8/defaultresult/_blank"基于运动模型下的惯性测量单元传感器标定方法的研究[J].\t"/kns8/defaultresult/_blank"工业控制计算机,2021(30):157-159.[15]\t"/kns8/defaultresult/knet"高松.智能安防摄像头的设计与实现[J].电脑编程技巧与维护,2021,38(10):232-233.[16]郭栋;佀秀杰;吴俊吉
.无接触配送机器人设计与仿真[J].电子世界,2022,30(07):9-19.DOI:10.16526/ki.11-4762/tp.2022.07.002.[17]S.Escalera,O.Pujol,P.Radeva.Trafficsignrecognitionsystemwithβ-correctionMach.VisionAppl.,21(2)(2021),pp.99-111[18]X.Baro,S.Escalera,J.Vitria,O.Pujol,P.RadevaTrafficsignrecognitionusingevolutionaryadaboostdetectionandforest-ecocclassificationIEEETrans.Intell.Transport.Syst.,10(1)(2021),pp.113-126.[19]S.M.Bascon,J.A.Rodriguez,S.L.Arroyo,A.F.Caballero,F.Lopez-FerrerasAnoptimizationonpictogramidentificationfortheroad-signrecognitiontaskusingSVMsComput.VisionImageUnderst.,114(3)(2022),pp.373-383.[20]D.Ciresan,U.Meier,J.Mascim,J.Schmidhuber,Acommitteeofneuralnetworksfortrafficsignclassification,in:Proc.ofInt.Joint.Conf.onNeuralNetworks(IJCNN),July2021,pp.1918–1921.[21]C.C.Chang,Y.P.HsiehAfastVQcodebooksearchwithinitializationandsearchorderInf.Sci.,183(1)(2022),pp.132-139.
附录电路图保定理工学院毕业设计源程序<?xmlversion="1.0"?><packageformat="2"><name>mediapipe_ros</name><version>0.0.0</version><description>Themediapipe_rospackage</description><!--Onemaintainertagrequired,multipleallowed,onepersonpertag--><!--Example:--><!--<maintaineremail="jane.doe@">JaneDoe</maintainer>--><maintaineremail="bingda@todo.todo">bingda</maintainer><!--Onelicensetagrequired,multipleallowed,onelicensepertag--><!--Commonlyusedlicensestrings:--><!--BSD,MIT,BoostSoftwareLicense,GPLv2,GPLv3,LGPLv2.1,LGPLv3--><license>TODO</license><!--Urltagsareoptional,butmultiple
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大庆新能源 车牌编码规则
- 2024年度如皋市城市照明系统改造合同2篇
- 认识时间(教学实录)-2024-2025学年二年级上册数学 人教版
- 10 我们不乱扔(教学实录)2023-2024学年统编版道德与法治二年级上册
- 2024年度二手房交易合同规范文本下载3篇
- 2024年标准场地租赁承包详细协议版
- 2024年标准个人委托代理协议样式版B版
- 2025版新教材高考生物微专题小练习专练24细胞呼吸有氧呼吸与无氧呼吸
- Module 8 Unit 2 Is this your grandma's umbrella (教学实录)-2024-2025学年外研版(一起)英语三年级上册
- 2024年度体育学院实习生实习合同标准文本2篇
- 道德与法治中考备考建议课件
- 财产保险退保申请范文推荐6篇
- 食品工程原理课程设计
- YYT 0325-2022 一次性使用无菌导尿管
- 羊膜在眼科临床中应用课件
- (71)第十五章15.2.3整数指数幂1-负整数指数幂-导学案
- 初步设计方案询价表
- 2022年江苏省环保集团有限公司招聘笔试题库及答案解析
- 《汽车焊接技术》试卷期末理论考试含参考答案一套
- FMEA分析经典案例【范本模板】
- 2023-2023年山东省学业水平考试英语试题及答案
评论
0/150
提交评论