基于STM32巡线机器人软件系统研究与分析.docVIP

基于STM32巡线机器人软件系统研究与分析.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于STM32巡线机器人软件系统研究与分析

基于STM32巡线机器人软件系统研究与分析   本文主要论述基于STM32的智能巡线机器人的软件系统的设计思路与研发流程,阐述此过程中所遇到的各种问题以及解决方法和改进方案,对比不同方案间的优劣,与此同时对机器人的硬件系统做出了简要的说明。软件系统主要包括视觉识别检测系统和动力控制系统,本文会对其中相应的算法尤其是巡线算法做出深入分析与探讨。   【关键词】STM32 巡线机器人 视觉识别 动力控制   机电一体化是综合应用机械技术、微电子技术、信息技术、自动控制技术、传感测试技术、电力电子技术、接口技术及软件编程技术等,机器人则是机电一体化的显著代表。机器人技术作为20世纪人类最伟大的发明之一,自1960年代初问世以来,经历40年的发展已取得长足的进步。机器人的出现并高速发展是社会和经济发展的必然,是为了提高社会的生产水平和人类的生活质量,让机器人代替人干那些人干不了、干不好的工作。在现实生活中有些工作会对人体造成伤害,比如喷漆、重物搬运等;有些工作要求质量很高,人难以长时间胜任,比如汽车焊接、精密装配等;有些工作人无法身临其境,比如火山探险、深海探密、空间探索等;有些工作不适合人去干,比如一些恶劣的环境、一些枯燥单调的重复性劳作等;这些都是机器人大显身手的地方。   巡线机器人是工业中运用得非常广泛的一类机器人,它是以可见光摄像机、红外热成像仪、其它检测仪器作为载荷系统,以机器视觉―电磁场―GPS――GIS的多场信息融合作为机器人自主移动与自主巡检的导航系统,以嵌入式计算机作为控制系统的软硬件开发平台;具有障碍物检测识别与定位、自主作业规划、自主越障、及其线路走廊自主巡检、巡检图像和数据的机器人本体自动存储与远程无线传输、地面远程无线遥控、后台巡检作业管理与分析诊断等功能。   本文所论述的自主研发的基于STM32巡线机器人具有自主搜寻地面上黑线并自主巡线行走的功能,正文中展示相关的软件系统的全面分析结果,并对未来应用做出一系列展望。   1 硬件系统概述   1.1 视觉识别部分   巡线机器人完成巡线功能的前提是能够得到黑线的位置,此机器人采用的是自制红外扫描板,它是由15对ST188红外传感器和STM32芯片以及其他相关元器件所构成。其中ST188传感器分别由红外发射管和红外接收管组成,发射管发出的红外光经过地面反射被接收管接收,经过放大电路的调制被STM32单片机采样。单片机系统根据15个接收管的数据经行分析处理最终得出地面黑线的位置。如图1所示。   1.2 动力部分   采用BTN7971芯片作为电机驱动芯片,机器人采用后轮差动的方式进行一系列运动姿态矫正。STM32单片机引脚向BTN7971输出一定占空比的PWM波,驱动电机以一定大小的速度正反转。驱动PCB图如图2所示。   1.3 整体系统   一个完整的巡线系统大致由右图组成:后轮(动力部分)、主控部分、扫描器、黑线。机器人在通过扫描器得到黑线的位置数据后,通过特定的通信协议传输至主控电路板,主控通过一系列的位置姿态解算最终输出相应的运动调整量到两个后轮电机。整个系统在不断地计算与调整,最终实现了机器人在黑线上连贯而流畅的运动。如图3所示。   2 软件系统分析   2.1 扫描算法   2.1.1 算法流程图解   如图4所示。   2.1.2 算法思路理解   扫描算法的应用首先需采集各红外传感器在环境中动态值的变化范围,而后利用各红外接收头ADC采样范围的大小的变化量,即差分来进行计算和处理。黑线处的变化最为明显,然而由于环境中的未知因素的影响,常常需要对的最大值所对应的探头旁边的两个探头同时进行处理以修正外界的因素对结果产生的干扰,与此同时引入卡尔曼滤波算法(Kalman filtering),它是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于得到的数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。于是我们将最终得到的扫描值Position经过卡尔曼滤波算法修正输出。   2.2 运动控制算法   2.2.1 PID控制器   PID控制器(Proportion Integration Differentiation.比例-积分-微分控制器),由比例单元 P、积分单元 I 和微分单元 D 组成。通过Kp, Ki和Kd三个参数的设定。PID控制器主要适用于基本线性和动态特性不随时间变化的系统。如图5所示。   PID 控制器是一个在工业控制应用中常见的反馈回路部件。这个控制器把收集到的数据和一个参考值进行比较,然后把这个差别用于计算新的输入值,这个新的输入值的目的是可以让系统的数据达到或者保持在参考值。和其他简单的控制运算不同,PID控制器可以根

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档