一种轮式移动机器人的控制系统设计毕业论文

上传人:沈*** 文档编号:86547266 上传时间:2022-05-07 格式:DOC 页数:58 大小:707.50KB
返回 下载 相关 举报
一种轮式移动机器人的控制系统设计毕业论文_第1页
第1页 / 共58页
一种轮式移动机器人的控制系统设计毕业论文_第2页
第2页 / 共58页
一种轮式移动机器人的控制系统设计毕业论文_第3页
第3页 / 共58页
点击查看更多>>
资源描述
. . 一种轮式移动机器人的控制系统设计毕业论文57 / 58第一章 绪论1.1移动机器人技术概述机器人是一自动的、位置可控的、具有编程能力的多功能操作机。机器人技术涉及计算机技术、控制技术、传感器技术、通讯技术、人工智能、材料科学和仿生学等多类学科。作为机器人学的重要分支,移动机器人能够运动到特定位置,执行相应任务,具备环境感知、实时决策和行为控制等功能,拥有很高的军事、商业价值。移动机器人按运动方式分为轮式移动机器人、步行移动机器人、履带式移动机器人、爬行机器人等;按功能和用途分为医疗机器人、军用机器人、清洁机器人等;按作业空间分为陆地移动机器人、水下机器人、无人飞机和空间机器人。1.2移动机器人控制技术研究动态1.2.1移动机器人控制技术发展概况步入21世纪,随着电子技术的飞速发展,机器人用传感器的不断研制、计算机运算速度的显著提高,移动机器人控制技术逐步得到完善和发展。移动机器人从最初的示教模仿型向具备环境信息感知、在线决策等功能的自治型智能化方向发展。移动机器人控制系统性能不断提高,各类新型移动机器人也纷纷面世。步行式机器人是指按照迈步方式前进的移动机器人,由于符合动物的行进模式,可很好的在自然环境中运动,具有较强的越野性能。如美国NAAS资助研制的丹蒂行走机器人,主要用于远程机器人探险,其控制系统涉及环境感知、障碍物监测、机械臂控制和超远程遥操作等多方面技术。丹蒂计划的最终目标是,为实现在充满碎片的月球或其它星球的表面进行探险提供一种运动机器人解决方案。轮椅机器人是指使用了移动机器人技术的电动轮椅。德国乌尔姆大学开发一种智能轮椅机器人,使丧失行动能力的人也能外出走动。该轮椅机器人,能够自动识别和判断出行驶的前方是否有行人挡路,或是否可能出现行驶不通的情况,自动采取绕行动作,并能够提醒挡路的行人让开道路。该机器人的控制系统,综合运用了多传感器信息融合、模式识别、避障、电机控制和人机接口等技术。消防机器人是指能在高温、强热辐射、浓烟、地形复杂、障碍物多、化学腐蚀、易燃易爆等恶劣条件下进行灭火和救援工作的移动机器人。其控制系统的设计重点包括障碍物检测、火焰检测和系统可靠性设计等多项技术。日本投入应用的消防机器人最多,美、英等国已研制出能依靠感觉信息控制的救灾智能机器人。我国XX交大机器人研究所也在国家863计划和公安部联合投资下,与XX消防所合作开发消防机器人的产品样机。另外,随着社会老龄化程度的不断加剧,仿人机器人将弥补年轻劳动力的不足,解决老龄化社会家庭服务和医疗看护等社会问题。此类服务型机器人的控制系统则综合运用了环境感知、路径规划、地图遍历、避障、防跌落等技术,以适合在家中使用。如韩国Yujni机器人科技公司制造的家用机器人iRboot,日本欧姆龙公司开发的电子守卫恐龙,以及三菱重工推出的可协助家庭保健和看家的机器人,都为家用机器人的市场化进程发挥了重要的作用。1.2.2移动机器人控制系统关键技术目前,移动机器人控制技术的研究热点和发展趋势主要包括:运动控制中的路径规划技术。路径规划是移动机器人导航的基本环节之一,定义是按照某一性能指标搜索一条从起始状态到目标状态的最优或近似最优的无碰路径。根据机器人对环境信息感知的程度,路径规划可分为环境信息完全可知的全局路径规划;环境信息部分未知甚至完全未知,移动机器人通过传感器实时地对的工作环境进行探测,以获取障碍物的位置、形状和尺寸等信息进行的局部路径规划。控制系统中的传感技术。移动机器人传感技术主要是对机器人自身内部的位置和方向信息以及外部环境信息的检测和处理。获取真实有效的环境信息,是控制系统进行决策的保证。通常采用的传感器包括分为内部传感器和外部传感器。内部传感器主要包括:编码器、线加速度计、陀螺仪、磁罗盘等。外部传感器主要包括:视觉传感器、超声波传感器、红外传感器、接触和接近传感器等。控制系统的多传感器信息融合技术。多传感器信息融合是把分布在不同位置的传感器所提供的局部环境的不完整信息加以综合,消除多传感器之间可能存在的冗余和矛盾,以降低其不确定性,形成对系统环境的相对完整一致的感知描述,从而提高智能系统决策、规划的快速性和正确性,同时降低决策风险。控制系统的开发技术。重点研究开放式、模块化控制系统。机器人控制器结构的标准化,以及网络式控制器成为研究热点。编程技术进一步提高在线编程的可操作性,离线编程的人机界面更加友好、自然语言化编程和图形化编程的进一步推广也是今后研究的重点。控制系统的智能化技术。控制系统的智能特征包括知识理解、归纳、推断、反应和问题求解等内容。涉及领域包括图像理解、语音和文字符号的处理与理解、知识的表达和获取等方面。智能控制方法常使用神经网络和模糊控制方法,但前者往往伴随着对存储容量、运算速度的较高要求,这与移动机器人高速高精度运动控制的要求存在一定差距,故模糊控制方法在机器人控制方面有着较大的优势。1.3本课题的意义本课题设计并实现的移动机器人控制系统,具有很高的系统集成度和广泛的功能扩展空间,很好的兼顾了控制系统的通用性和实用性要求。该控制系统,适用于多种移动机器人平台,如家用娱乐机器人、展览用导游机器人等。并可通过控制单元的扩充和升级,增加语音识别、人脸识别、视觉追踪等交互性更强的功能。同时,该控制系统的设计完成,对于降低上述各类型机器人的开发难度,缩短从客户提出需求到完成最终产品的开发周期,具有很强的指导意义。另外,本课题设计的移动机器人控制系统,由于集成有通用微控制器开发平台、电机驱动模块等多种功能单元,因此,可作为数字电子技术、自动控制技术、传感器技术、路径规划及人工智能等多学科多领域的通用实验平台。1.4论文的主要内容本论文的主要内容包括以下几个部分:第1章绪论,综述了国内外移动机器人研究和应用现状,阐明本课题的研究背景和意义以及主要研究内容。第2章移动机器人的机械结构和运动学模型,分析了本课题研究的移动机器人的机械结构,结合移动机器人四轮独立式驱动机构,建立推导其运动学模型和双轮差速实现机器人运动控制的原理。第3章移动机器人控制系统设计,重点分析了移动机器人的总体控制方案,按照模块化的思路,依次详细分析了微控制器模块、电机驱动模块、遥操作模块、电源模块和串行通信接口模块等内容,最后讨论了系统设计的可靠性的问题。第4章移动机器人模糊控制研究,结合移动机器人控制存在的难点,简要概述了模糊控制的概念和特点及主要应用领域。着重分析探讨了模糊控制系统的原理和设计方法,并提出了模糊控制策略在运动控制中应用的具体方法。第5章总结,对论文所作的工作进行总结。第二章 移动机器人的机械结构和运动学模型2.1移动机器人机械结构 移动机器人运动方式有很多种,主要分为车轮式和步行式两类。车轮移动方式的技术相对成熟,控制也较为容易实现;步行式控制难度较大,但随着传感器技术和微控制器技术的快速发展,该种移动方式也得到了较大的发展。 本文研究的移动机器人采用车轮式移动机构。轮式机器人按车轮的数量可以分为单轮、三轮、四轮、五轮、六轮和多轮等类型。本文研究的是六轮摇臂探测机器人采用Rocky系列悬架系统,由车体、左悬架、右悬架和轮系四部分组成,如图2.1所示。六轮摇臂吊杠悬架由主摇臂和副摇臂组成,左、右悬架的主摇臂与车体差速齿轮的中心轴固联,借助差速轮系相对于车体转动。当在不平路面上行驶时,通过主摇臂和副摇臂的摆动,能达到地面自适应、增强越障能力和行驶平顺性的目的。图2.1六轮摇臂悬架结构六轮摇臂探测机器人对地面的自适应和越障主要通过主摇臂相对车体和副摇臂的中转动实现轮越障时。如图2.2所示,前轮越障时,副摇臂顺时针转动,前轮上升,中轮下降。副摇臂逆时针转动,前轮下降,中轮上升。后轮越障时,主摇臂逆时针转动,前轮和中轮下降,后轮上升。图2.2六轮摇臂探测机器人越障原理2.2移动机器人运动学模型 移动机器人采用四轮驱动模式,通过控制左右两方驱动轮的转速差实现前进、后退、转向等各种基本的动作,现建立坐标系说明移动机器人的运动学模型,具体坐标系和运动参量见图2.3移动机器人的运动示意图。图2.3移动机器人的运动示意图。图2. 3中,代表机器人质心的线速度;和分别是左右轮的线速度;R为左右轮的半径;L为两轮的间距;规律、运动方程x,y代表机器人质心的二维平面坐标。则移动机器人满足刚体运动和成立。, , 式和式中,和分别代表左右轮的角速度,为质心的角速度,v为质心的线速度。由式可知,当=时,质心的角速度为0,即机器人沿直线运动;当=-时,质心的线速度为0,则机器人可实现原地转身,即此时机器人将以零半径转弯。按照公式计算得到和即可实现移动机器人的运动控制。 若将式代入式,可得, 而机器人的质心运动方程为, 将式代入式得 方程中各变量相互关联,设计控制器时比较复杂,为此,先进行解耦处理。因为只与质心的角速度有关,x、y只与质心的线速度有关,故可将控制变量转为质心的线速度和角速度。方程如下: 再将左右轮角速度表示成质心的角速度和线速度,即, 由上式可知,根据移动机器人设定的目标线速度和角速度即可分别求得左右轮的实时角速度,从而通过电机驱动机构完成速度调节,实现移动机器人运动方向和速度的实时控制。 然而,在实际应用中,由于编码器检测车轮的旋转的分辨误差、负载使车轮的等效半径产生变化、加速度及旋转产生的离心力使车轮的等效半径变化以及路面的凹凸和倾斜等因素的影响,使上述公式并非严格成立。通常采用多种方法综合采用的方案来完成移动机器人的运动控制。2.3本章小节 本章首先概述了移动机器人的机械结构。然后,结合机器人的四轮驱动机构,推导了其运动学模型和六轮差速实现机器人运动控制的原理。最后,建立了机器人运动过程中线速度和角速度与左右两边驱动轮角速度之间的关系方程,为通过电机驱动机构完成速度调节,实现移动机器人运动方向和速度的实时控制提供了理论依据。第三章 移动机器人的控制系统设计3.1移动机器人控制系统方案在移动机器人系统的总体设计中,控制系统的设计尤为重要。控制系统是整个机器人系统的灵魂。控制系统的先进与否,直接决定了整个机器人系统智能化水平的高低。移动机器人的各种功能都在控制系统的统一协调下实现;控制系统设计策略也决定了整个机器人系统的功能特点和可扩展性。本课题设计的移动机器人控制系统,可进行速度检测和调节、原地零半径转向、电源低电压监测和充电等功能,并可工作于实时手动遥控、预编程路径运动及自动沿墙跟踪等多种模式,从而完成机器人的直线行走,越障和转向的功能。INTIO左轮电机右轮电机电机驱动模块电平转换RS232光电编码器遥控操作模块MCUATMEGA16AD电源模块UARTPWM/IOINTIO图3. 1移动机器人控制系统框图根据移动机器人的功能要求,本课题研究的控制系统主要包括:微控制器模块、电机驱动模块、测速模块、遥操作模块、串行通信模块及电源模块等部分。控制系统的总体框图如图3. 1所示。具体设计过程中,上述各个模块力求相对独立,以便系统日常的维护和今后的升级。其中, 微控制器模块作为控制系统的核心,主要进行各种信息、数据的处理,协调系统中各功能模块完成预定任务; 电机驱动模块负责机器人左右两方轮子的独立驱动,主要由功率转换模块和微控制器内置的PWM单元组成,实现左右轮的差速控制; 测速模块由增量式光电编码器组成,用于左右轮转速、转向的实时测量,以实现移动机器人的运动控制; 遥操作包括按键编解码和无线收发部分,用于移动机器人遥控模式; 电源模块负责整个控制系统各部分的电源供给,并实现埋电池的电量检测和充电; 串行通信模块包括异步通信、同步通信两部分,异步通信用于预编成路径的下载,同步通信用于预编成路径数据的存储和。本章将从各模块的设计原理和功能出发,阐述各模块的设计要点。3.2微控制器模块 在本课题中,采用微控制器作为移动机器人控制系统的核心。微控制器在整个系统中扮演的角色类似于人的大脑,主要完成各种信息的运算和决策。微控制器是一种嵌入式微处理器,顾名思义,就是将整个计算机系统集成到一块芯片中。微控制器一般以某一种CPU内核为核心,芯片内部集成ROM、EPROM、EEPROM、 FLASH、RAM、A/D、D/A、定时器/计数器、看门狗、I/O、串行接口、脉宽调制器等功能单元。与CPU相比,MCU的最大特点是使PC机单片化,体积大大减小,功耗和成本下降,可靠性提高。因此微控制器逐渐成为嵌入式PC系统的主流核心器件。3.2.1微控制器的选用依据微控制器是整个控制系统的核心部件,直接影响到控制系统的功能和性能。因此,合理选用控制系统的核心控制器,对系统的设计至关重要。在硬件平台的设计过程中,对微控制器的选型往往需要考虑诸多因素,本课题的微控制器选用依据主要包括以下几个方面: 对于微控制器类型,目前国内外移动机器人平台采用的微控制器有多种,如飞思卡尔微控制器、东芝微控制器,甚至有的设计采用更高档16位、32位微控制器。考虑到本文设计的移动机器人结构特点和功能要求,须在高性能计算与低功耗之间得到很好的平衡。并且该种微控制器的片内资源应当较为丰富,以减小电路板面积并提高整机稳定性。 从功能需求上,考虑到移动机器人的运动和动作大多采用直流电机驱动,因此选用的微控制器应具有高精度PWM功能,以方便实现直流电机的调速控制。此外,为便于日后扩展移动机器人的功能,微控制器应具有较强的I/O能力。 从控制软件开发支持上,应便于开发和调试应用程序,需要较大的存储空间和更高的运行速度。同时,为实现电路完成后的程序升级,微控制器需支持代码在系统下载功能。基于上述需求分析,经过全面调研、反复比较,最终选用ATMEL公司的ATMEGAI6型微控制器作为本系统的控制核心。ATmegal6是基于增强的AVR RISC结构的低功耗8位CMOS微控制器。由于其先进的指令集和单时钟周期指令执行时间,ATmegal6的数据吞吐率高达1MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。AVR内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接与算术逻辑单元相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。 通过将8位RISC CPU与系统内可编程的Flash集成在一个芯片内,ATmegal6成为一个功能强大的微控制器,为许多嵌入式控制应用提供了灵活而低成本的解决方案。3.2.2 ATMEGA16微控制器特点1997年,ATMEL挪威设计中心出于市场考虑,充分发挥其Flash技术优势,推出全新的精简指令集微控制器,简称AVR微控制器。ATMEGA16微控制器主要有以下特点:先进的RISC结构,工作于16MHz时性能高达16MIPS;四通道PWM; 8路10位ADC;片内模拟比较器;面向字节的两线接口;两个串行USART;可工作于主机/从机模式的SPI串行接口;具有独立片内振荡器的可编程看门狗定时器。3.2.3 ATMEGA16微控制器最小系统电路ATMEGA16微控制器最小系统的硬件线路,主要包括复位线路、晶振线路、AD转换滤波线路、ISP下载接口和JTAG仿真接口等几部分。复位电路的设计ATMEGA16已经内置了上电复位设计。并且在熔丝位里,可以控制复位时的额外时间,故AVR外部的复位线路在上电时,可以设计得很简单:直接拉一只l0K的电阻到VCC即可。但考虑移动机器人的可靠性要求,在设计时添加了一只0. luF的电容以消除干扰和杂波。微控制器复位电路的原理图如图3. 2所示。图3. 2复位电路的原理图D3 的作用有两个:一方面将复位输入的最高电压钳在VCC+0. 5V左右,另一方面当系统断电时,将R0 电阻短路,让C0快速放电,让下一次来电时,能产生有效的复位。当AVR在工作时,按下S0开关时,复位脚RESET变成低电平,触发AVR芯片复位。晶振电路的设计ATMEGAI6已经内置RC振荡线路,可以产生1M,2M,4M,8M的振荡频率。但内置RC振荡的误差受温度影响波动较大,并且使用内部RC振荡所产生的功耗远大于使用外部晶振,故本设计采用8M外部石英晶振作为系统振荡源。具体电路见图3. 3晶振电路示意图。图3. 3晶振电路原理图早期的90S系列微控制器,晶振两端均需要接22pF左右的电容。Mega微控制器系列实际使用中,这两只小电容不接也能正常工作。考虑到线路的规范,设计时并未省略C1、C2。 AD转换滤波电路的设计AD转换滤波电路的示意图见图3.4。为减小AD转换的电源干扰,ATMEGAI6芯片有独立的AD电源供电。官方文档推荐在VCC串上一只l0uH的电感,然后接一只0. luF的电容到地。 图3. 4 AD转换滤波电路原理图ATMEGAI6内带2.56V标准参考电压。也可以从外面输入参考电压,例如在可使用TL431基准电压源。本设计采用芯片内部自带的参考电压。在AREF脚接一只0. luF的电容到地,起到参考电压滤波的作用。ISP在系统编程和JTAG仿真接口ISP下载接口,不需要任何的外围零件,原理图见图3.5。使用双排25插座。由于没有外围零件,故PB5 、PB6 、PB7 、复位脚仍可以正常使用,不受ISP的干扰。图3. 5 ISP下载接口电路原理图JTAG仿真接口也是使用双排25插座,需要四只l0K的上拉电阻,原理图见图3. 6 。 图3. 6 JTAG仿真接口电路原理图当需要在线下载程序或调试系统时,需将下载电缆或调试接线一端插入目标板相应插座,另一端连至计算机的25针并口,之后启动相应软件即可进行操作。3.3电机驱动模块 移动机器人采用左右两方轮子独立驱动,采用差速转向机构,每个车轮分别由一个直流电机和一个步进电机单独控制。机器人的运动控制主要通过对这八个电机的驱动实现,包括速度和转向的控制。本设计选用直流力矩电机驱动车轮。该直流电机具有优良的速度控制性能,具体来说,它有下列优点: 具有较大的转矩,以克服传动装置的摩擦转矩和负载转矩; 调速范围宽,且运行速度平稳; 具有快速响应能力,可以适应复杂的速度变化; 电机的负载特性硬,有较大的过载能力,确保运行速度不受负载冲击的影响。 本设计选用的电机为XX三佳公司的12V直流电机JS-30YZJ,转速为3000r/min,配有减速比为1:30的减速器。3.3.1直流电机PWM调速 直流电动机的转速控制方法可以分为两类:调节励磁磁通的励磁控制方法和调节电枢电压的电枢控制方法。其中励磁控制方法在低速时受磁极饱和的限制,在高速时受换向火花和换向器结构强度的限制,并且励磁线圈电感较大,动态响应较差,所以这种控制方法用得很少。现在,大多数应用场合都使用电枢控制方法。而在对直流电动机电枢电压的控制和驱动中,对半导体器件的使用上又可分为两种方式:线性放大驱动和开关驱动方式。 线性放大驱动方式是使半导体功率器件工作在线性区。这种方式的优点是:控制原理简单,输出波动小,线性好,对邻近电路干扰小;但是功率器件在线性区工作时由于产生热量会消耗大部分电功率,效率和散热问题严重,因此这种方式只适合用于微小功率直流电动机的驱动。 绝大多数直流电动机采用开关驱动方式。开关驱动方式是使半导体器件工作在开关状态,通过调节电动机电枢的等效工作电压,实现电机调速。这种控制方式很容易在微控制器中实现。 可控开关S以一定时间间隔重复地接通和断开,当S接通时,供电电源Vs通过开关S施加到电动机两端,电源向电机提供能量,电动机储能;当开关S断开时,中断了供电电源Vs向电动机提供电能,但在开关S接通期间电枢电感所储存的能量此时通过续流二极管VD使电动机电流继续流通。电压平均值可用下式表示: 式中为开关每次接通的时间,为开关通断的时间周期,为占空比,。 由上式可见,改变开关接通时间和开关周期的比例亦即改变脉冲的占空比,电动机两端的电压平均值也随之改变,因而电动机转速得到了控制。 改变占空比有两种调制方法。一种是开关周期恒定,通过改变导通脉冲宽度来改变。占空比的方式,即脉冲宽度调制;另一种方式为导通脉冲宽度,恒定,通过改变开关频率来改变占空比,亦即脉冲频率调制。由于PFM控制是依靠脉冲频率来改变占空比的,当遇到某个特殊的频率下的机械谐振时,常导致系统震动和出现音频啸叫声,这一严重的缺点导致PFM控制在伺服系统中不适用。故本设计中,采用PWM控制方式实现电机调速。3.3.2电机驱动电路直流电机工作所需的电流、电压较大,且转动方向的改变需要通过调整所加电压的极性实现,因此必须通过专门的电机驱动电路进行控制。本课题采用意法半导体公司的L293D专用电机驱动芯片作为移动机器人左、右驱动轮的直流电机的核心功率模块。L293D符合TTL逻辑电平接口标准,可用来驱动大功率感性负载,比如继电器、直流和步进电机和开关电源晶体管,可以通过逻辑设定实现电机驱动电压的极性转换,从而实现转向调整。并且L293D具有发热量低、体积小以及节省印刷电路板面积等优点,因此非常适合于本文的的设计需要。L293D内部电路原理如图3. 7所示。 图3. 7 L293D内部电路原理 其中,INlIN4为电机工作控制端分,通过不同的电压逻辑组合,分别决定两个电机的转向;ENABLE 12为电机工作使能端,分别连接至微控制器的两路PWM输出信号;VS为电机的工作电源输入端,最高可达+36V,本设计按照电机的标称值采用+12V供电;VSS为L293D的芯片工作电源输入端,本设计中采用默认值,+5V供电。 L293D的电机工作控制端真值表,以第1路的控制信号为例,具体关系见表3. 1表3. 1 L293D控制端真值表控制端电平电机工作情况ENAIN1IN2HHL正转HLH反转HHH刹车HLLLXX停车 结合表3.1可知,当且仅当INl与IN2反相的情况下,电机才工作。亦即,不论电机正转还是反转,INl与IN2电平始终绝对相反,而两者同相时所达到的控制目的电机停转,完全可通过将使能端ENA的逻辑电平置零实现。 故在本设计中,在微控制器的通用IO口和L293D控制端之间添加了两个反相器,从而实现了单电机单线控制转向的功能,简化了微控制器的程序设计和硬件端口资源分配。具体电路如图3. 9所示,微控制器的硬件PWM输出端口OClA和OC1B分别接至L293D的ENl和EN2作为使能信号,通用IO口PA2和PA3通过反相器逻辑处理后,接至L293D的INlIN4控制电机转向。图3.8电机驱动电路原理图3.3.3硬件实现PWM的方法 ATMEGAI6内部集成有4通道硬件PWM单元,分别为OC0, OClA, OC1B和OC2。本设计只需对四个直流电机和四个步进电机进行调速控制,故选用同属于16位定时/计数器1的2通道PWM单元OClA,OC1B。PWM信号的分别率采用8位,可实现电机转速0255级的线性平稳调速。 设定定时/计数器1工作于快速PWM模式。其时序如图3.10所示。快速PWM模式采用其单边斜坡工作方式。计数器从BOTTOM计到TOP,然后立即回到 BOTTOM重新开始。输出比较引脚OClx在TCNTl与OCRlx匹配时置位,在TOP时清零。 由于使用了单边斜坡模式,快速PWM模式的工作频率比使用双斜坡的相位修正PWM模式高一倍。此高频操作特性使得快速PWM模式十分适合于功率调节,整流和DAC应用。高频可以减小外部元器件的物理尺寸,从而降低系统成本。 图3. 9 微控制器内置PWM信号时序图因此,在运动过程中,只需改变OCRlA/B的值就可完成对左右两个电机的实时调速。其中,产生2通道8位PWM信号的初始化代码如下:/TIMERI initialize-prescale:1024/WGM: 5PWM 8bit fast, TOP=Ox00FFvoid timedl_init DDRD=0x30; /设定PD5 PD4为输出端口TCCRIB=0x00; /关闭定时器1TCNT1=0; /设置初值OCR1A=0;OCR1B=0;TCCRlA=0x81;TCCRlB=0x09; /设置工作模式,启动定时器3.4光电编码器测速模块测速元件是速度闭环控制系统的关键元件。本设计中,采用增量式光电编码器测量移动机器人左右两方轮子的实时转速,进而通过特定算法得到实时电机驱动模块的PWM控制量,实现运动机器人运动的闭环控制。3.4.1增量式光电编码器光电编码器俗称码盘,是一种通过光电转换将轴上的机械几何位移量转换成脉冲或数字量的传感器,主要用于机械转角位置和旋转速度的检测和控制。光电编码器的基本结构由旋转轴上的编码圆盘以及装在圆盘两侧的发光元件和光敏元件组成。圆盘上规则地刻有透光和不透光的线条或孔,当圆盘随着转轴旋转时,光敏元件接收的光通量强弱随着光线条同步变化,光敏元件波形经过整形输出变为脉冲输出。一般圆盘上还设有定相标志,产生零信号,每转一圈产生一个,又称基准脉冲。本设计选用ZKX-6-50BM7型增量式光电编码器是一款高精度角位移传感器,主轴每旋转一周分两路输出500个电压脉冲信号Out_A和Out_B。其中,Out_A和Out_B两路信号相位差为90度,可通过Out_A和Out_B的相位关系,判断主轴的转动方向。3.4.2移动机器人驱动轮线速度的测量通常,根据脉冲计数来测量转速的方法有三种,分别介绍如下: M法测速:在规定的时间间隔内,测量所产生的脉冲数m,来获得被测速度值,这种方法称为M法,适合于高速测量场合。 T法测速:测量相邻两个脉冲的时间间隔来确定被测速度的方法叫做T法测速,适合于低速时测量。 M/T法测速:M/T法是同时测量检测时间和在此检测时间内脉冲发生器发送的脉冲数来确定被测转速,兼有M法和T法的优点。 本设计中基于T法测量移动机器人驱动电机的实时转速。 将光电编码器输出接至微控制器的外部中断INT2,则转动引起的每一个电压脉冲都会触发微控制器外部中断。通过编制中断子函数,就可以实现对光电编码器输出脉冲个数的准确计算,经换算后即得转动轴转过的精确角位移。 因此,根据光电编码器转动单位角位移所需的时间,就可求得转动轴的角速率,结合光电编码器同轴驱动轮的半径,就可算得移动机器人驱动轮的实时线速度。实际编程中,使用微控制器定时器0产生的1KHz时基中断产生固定时间段。设V为t时间内的平均速度,由于计算速度所需的时间段足够小,所以可将平均速度V近似为实时速度,则实时速度 式中,S为驱动轮转动产生的位移,n为所经历的固定时间段的记数,l为光电编码器驱动轮的周长,N为光电编码器旋转一周输出的脉冲数,此处N=500。3.4.3光电编码器的鉴相 光电编码器与机器人的驱动车轮同轴安装,该轴的正反转代表了移动机器人前进和后退两种相反的运动方向。因此,识别光电编码器主轴的转向是实现移动机器人运动控制的必须要求。通过对光电编码器所输出的相位差90度的两路电压脉冲信号Out_A和Out_B进行鉴相,就能够判别车轮正转或反转。具体鉴相电路原理图如图3. 11所示。图3. 10鉴相电路原理图 光电编码器输出的Out_A和Out_B分别接至D触发器时钟端Clk和控制端D。根据D触发器的功能定义,在输入时钟信号Out_A的每个脉冲上跳沿,触发器的输出W2被控制端D的输入信号Out_B置位。图3. 12示意了光电编码器正转时,Out_A、Out_B的信号波形和鉴相电路的输出。 图3. 11 光电编码器正转时鉴相电路输入输出示意 正转时,Out_A信号的相位超前Out_B信号90度,Wl输出始终为高电平。反转时,Out_A信号的相位延后Out_B信号90度,Wl输出始终为低电平。因此,通过读取Wl的电压高低,就可以判别光电编码器的转向,亦即车轮的转向。 实际电路设计中,将D触发器的输出端Wl与微控制器PBO引脚连接。3.4.4光电编码器测速的误差分析 影响光电编码器计数精度的原因在于,编码器的主码盘被激振而附加了瞬间的随机高频振动,从而引起在透光窗边沿附近发生小幅度晃动,振动的响应和频率与主码盘本身及激振的频率有关。 在瞬间高频振动的时刻,原来一个方波周期内可能包含几个高频方波脉冲,如果计数电路中不加措施就会导致计数结果偏离实际值,引起误计数。3.5遥操作模块 本课题研究的移动机器人具备多种工作模式,既可以按照预先编程的路径运动,也可以根据遥控指令,实时调整自身运动状态,完成前进、后退、停止、转向等基本动作。RF发射模块4路按键PT2262编码电路微控制器RF接收模块PT2262编码电路 图3. 12 遥操作模块工作原理图 移动机器人遥操作模块的工作原理如图3.13所示。按键的键值被编码模块编译为特定串行码,此串行码输入至发射电路,作为发射电路的控制信号。串行码由发射电路调制到高频载波,通过天线向外发射。接收部分经天线收到调制信号,该调制信号由接收电路处理为特定串行码,此串行码包含了操作者的按键信息。通过和编码模块配套使用的解码模块,即可从串行码中分离出相应键值。从而移动机器人根据操作者的按键值,做出相应动作。 其中,发射和接收电路采用模块化的315MHz超再生式RF收发模块。RF收发模块的引脚分别为DATA OUT/IN, VCC和GND三线接口。只需将编码器的数据输出端与RF发射模块的DATA IN引脚连接,RF接收模块的DATA OUT引脚与解码器的数据输入端14连接,系统即可正常工作。 编解码电路选用XX普城公司生产的PT2262/2272专用编解码芯片。PT2262/2272是一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位三态地址端管脚,任意组合可提供531441地址码。PT2262最多可有6位数据端管脚,设定的地址码和数据码从17脚串行输出,主要用于无线遥控发射电路。 编码芯片PT2262发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平。 因此,微控制器读取PT2272的数据输出端电平即可获得操作者的按键键值。 如果发送端一直按住按键,编码芯片也会连续发射。当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信号。当17脚为高电平时315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平时315MHz的高频发射电路停止振荡。所以高频发射电路完全受控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控相当于调制度为100%的调幅。 以下是主程序中检测1键是否按下的部分源码。#defiue K1 6 /PB6#defiue K2 7 /PB7#defiue K3 6 /PD6#defiue K4 7 /PD7if PINB&BIT /special functions for Klwhile PINB&BIT ;/waiting for release Kl3.6电源模块 作为无缆工作的移动机器人,必需自带能源。 本课题设计的移动机器人,能耗主要来源于机器人控制电路和驱动电机两部分。其中机器人控制电路部分使用+5V直流供电,驱动电机部分则需要+12直流供电。 综合考虑移动机器人自重、单次工作时间以及电池体积、维护成本等多方面因素,我们将单节容量600mAH,额定电压3.7V的铿电池4节串连后使用,作为移动机器人的车载能源。与密封铅酸电池、镍福电池、镍氢电池相比,埋电池具有最高的能量/重量比和能量/体积比。并且,埋电池具有输出电流大,无记忆效应、无污染、电池循环充放电次数多等优点。3.6.1移动机器人电源设计 如前文所述,采用4节3.7V埋电池串连使用可以提供14.8V直流电压。而机器人控制电路需要+5V直流供电,驱动电机部分则需要+12V直流供电。 若采用传统稳压方案,将14.8V直流电压依次通过7812,7809,7805得到+12V和+5V电压,会存在严重的能源损耗问题。这是由于78XX系列稳压块均采用线性调压原理,即输入高电压和输出稳压值之间的压差全部以发热的形式消耗。因此,这种供电方案不适合用于对能源利用效率要求相对苛刻的移动机器人系统。为了消除线性稳压的弊端,有效提高能源利用效率,本课题采用单片开关式1A稳压电路LM2575-12和LM2575-5作为系统电源的核心。 LM2575系列开关稳压集成电路由美国国家半导体公司生产,它内部集成了一个固定的振荡器,只须极少外围器件便可构成一种高效的稳压电路,可大大减小散热片的体积,而且在大多数情况下不需散热片;内部有完善的保护电路,包括电流限制及热关断电路等;芯片可提供外部控制引脚。 LM2575系列开关稳压集成电路最大输出电流1A;最大输入电压为45V;内置振荡频率54kHz;最大稳压误差4;转换效率可达75 %88%。本设计中,具体的通过LM2575实现供电的电路原理图如图3.14所示。 图3. 13移动机器人电源部分电路原理图 其中,Vin引脚是未稳压电压输入端;OUTPUT引脚是开关电压输出,接电感及肖特基二极管;GND引脚是电源地;FEEDBACK引脚是反馈输入端,将稳压输出的电压接到反馈输入端的目的是同内部电压基准比较,若电压偏低,则用放大器来控制内部振荡器以提高输出占空比,从而提高输出电压;ON/OFF引脚是控制输入端,接低电平时,稳压电路工作;接高电平时,稳压电路关断。 在使用LM2575设计电路时,着重考虑了以下几点: 电感的选择。根据输出的电压档次、最大输入电压Vin、最大负载电流等参数选择电感时可参照产品手册上相应的电感曲线图来查找所需采用的电感值。 输入输出电容的选择。输入电容应大于,并要求尽量靠近电路;而输出电容推荐使用的电容量为,其耐压值应大于额定输出的1.52倍。例如,对于V电压输出,推荐使用耐压值为16V的电容。 二极管的选择。二极管的额定电流值应大于最大负载电流的1. 2倍,但考虑到负载短路的情况,二极管的额定电流值应大于LM2575的最大电流限制;另外二极管的反向电压应大于最大输入电压的1.25倍。 控制电路中,红外一体化接收头必须有良好的电源滤波,以减少电源纹波对传感器内部电路的干扰。3.6.2充电电路设计 移动机器人工作过程中,若检测到自身电量不足,则机器人将发出声光报警,提醒操作者及时充电。设计中,上述功能主要通过电池电压检测、电池充电电路及声光报警电路三部分实现。 埋电池采用恒流充电的方法充电,最大充电电流与单节电池的容量C有关。最大充电电流往往以电池容量的数值来表示。例如,电池的容量750mAH,充电电流为750mA,则充电电流为1C ;若充电电流为C/10,则充电电流即为电池容量除以10。本设计中充电电流为0.5C,即300mA。 埋电池充电条件要求严格,充电控制要求精度高,对过充电的承受能力差。因此,埋电池的充电电路必须符合其充电特性要求,即对停止充电的判定必须严格准确。 电池的不同应用场合及工作环境限制了对判断停止充电的方法的选择。有时候温度不容易测得,但可以测得电压,或者是其他情况。常用的停止充电方法包括以下几种: t方法:时间是决定何时停止充电的最简单的方法。通常用于快速充电时的后备方案。有时也作为普通充电方法的基本方案。适用于各种电池。 V方法:当电压超出上限时停止充电。通常与恒定电流充电配合使用。最大电流由电池决定,通常为1C。为了防止充电时电流过大导致电池过热,此时电流限制是非常关键的。这个方法是埋电池的基本充电和停止方案。对于NiCd电池和NiMH电池本方法可以作为后备的判断停止充电方案。 -dV/dt方法:电压变化率这个判断停止充电的方法利用了负的电压变化率。对于某些类型的电池,当电池充满后继续充电将导致电压的下降。此时本方案就非常合适了。这个方法通常用于恒定电流充电,适用于电池的快速充电。 T方法:温度绝对温度可以作为NiCd电池和NiMH电池停止充电的依据,但是更适合于作为备份方案。温度超出设定值时任何电池都得停止充电。 本设计中采用-dV/dt方法作为停止充电的判决条件。通过微控制器内置的模数转换器实时采集电池电压,当电池电压的变化率出现负值,则通过继电器切断充电电路的输入电源,停止充电,以防止埋电池过充电。具体充电电路及电压检测电路如图3.15所示。 图3.14充电及电压检测电路示意图 其中,LM317是飞兆半导体公司出品的三端可调稳压块,如图接法作为恒流源使用。恒流大小可通过调整R的阻值实现,二者满足如下关系: 式中,R的阻值单位是欧姆,工的电流单位是安培。R的功率不小于电流的平方乘以电阻,因此必须选用合适的功率电阻,不能使用普通的1/4W电阻。 充电过程中,LM317的耗散功率为 恒流电流值,需根据计算出的功率选择合适的散热器,为LM317散热。 开关Sl为继电器的动作端,当停止充电时Sl开路。二极管Dl的作用是防止充电电源反接,损坏后续电路期间。二极管D2的作用是防止电池向LM317反向供电。 电池电压经过R1、R2分压后,送至微控制器模拟输入端。该电压值低于模数转换参考电压,符合转换要求。微控制器经过模拟转换将结果扩大10倍,即为电池当前电压。微控制器以此电压作为电压不足发送声光报警信号和停止充电的判断依据。 以下是采集电池电压的部分源代码,其中采样时对电压值进行了均值滤波的方法,以减低参考电压源波动带来的误差。unsigned int read_ adc /查询方式读取ADC单端通道 ADMUX= ;/adc_input:单端通道Ox00Ox07 /Oxc0;/选择内部2. 56V参考电压 ADCSRA=1;/启动AD转换while ADCSRA& 1=0;/等待AD转换结束ADCSRA=1;/写1清除标志位return ADC; /ADC=ADCH:ADCL/以下代码通过调用read adc函数实现电池电压采集,参考电压为2. 556Vfor sa_cnt=0;sa cntad0+= 2556*read_adc /1024;sa_cnt=0;ad=ad0*10;3.7异步串行通信模块 本课题研究的移动机器人,具备离线预定义运动路径的功能。 可通过上位机应用程序对机器人的运动路径进行预编程,然后将运动路径由异步串口下载至机器人内部存储器。之后,将机器人切换到预定义运动模式,机器人即可按照事先编程的路径运动。此功能对实现特定环境中的严格运动控制有较大的意义。 由于运动路径下载过程中,移动机器人与上位机位置相对较近,故本设计选用RS-232异步串行口实现全双工通信。两者之间使用三芯屏蔽电缆作为传输介质。 RS-232是为早期公共网数据通信制定的标准,以+5V+15V表示低电平0, -5V-15V表示高电平1,与现有微控制器逻辑电平不一致,二者之间必须进行电平转换。此处选用MAXIM公司生产的MAX232芯片实现电平转换。MAX232芯片具有两个接收发送通道,功耗低、集成度高、+5V电压供电,仅需外接少量阻容元件,就能实现微控制器标准电平与RS-232电平的转换。具体电路接法见图3. 16串行通信电路原理图。图3. 15串行通信电路原理图 其中,上位机发送的数据通过串口2针XRXD进入MAX232芯片8脚,转换后由9脚输出至ATMEGAI6的PDO,即下位机RXD。下位机ATMEGAI6发送的数据,通过PDl即下位机TXD进入MAX232芯片10脚,转换后由7脚输出到串口3针XTXD,发送至上位机。 两者之间通信采用基于帧的传输协议,即串口传输的数据以帧的格式发送接收。上位机是主控者,下位机微控制器是处于从动方式。串行通信的数据格式采用,即4800波特率,无奇偶校验,8位数据位,1位停止位。数据内容选用定长帧结构存储。 上位机发送的帧包括起始帧和数据帧。两者的帧长度都为4个字节。具体结构如表3. 2所示。表2. 3异步通信帧的组成起始标志位运动步骤数0xff0xff0xff0255左轮转速右轮转速运动时间0255025502550255其中,起始帧的前3个字节做为起始标志,填充0xff;第4个字节指明预编程运动路径中总共包括的步骤数。数据帧的第1,2个字节分别为移动机器人左右轮的转速的相对值,取值范围0250,以区别于起始标志位的255;第3,4个字节为机器人保持此种运动状态的持续时间,单位为l0ms,取值范围。0655s。 微控制器将每个帧数据接收并保存于外部存储器,当收到按照预编程路径运动的指令时,移动机器人只需依次读取每个帧的数据,并转换为后一个的运动状态就可以实现全部的运动要求。 微控制器部分采用中断方式接收上位机传输的数据,以保证通信的实时性。其中,串行通信的中断服务程序的流程如图3. 17所示:中断初始化判断是否为起始帧判断运动步骤是否为界读取运动指令保存运动指令自增运动步骤计数器中断返回运动步骤计数器清零散运动步骤存储区清零是否 是 否图3. 16异步通信程序流程图3.8系统可靠性设计 控制系统质量的高低主要表现在技术性能、可靠性、适应性和经济性四个方面,其中技术性和可靠性是最重要的方面。但在系统的具体设计工作中,往往特别强调其技术性能指标而忽视了它的可靠性。而由于可靠性设计的不周密,在偶然因素或意外事件的作用下,系统便不能正常工作,从而可能造成灾难性的后果。 系统的可靠性保证有赖于完善的可靠性设计、严格的部件制作、规范的设备安装调试、正确的操作使用和经常性的维护。3.8.1影响系统可靠性的因素 要提高控制系统运行的可靠性,必需依靠一系列可靠性技术来保证。引起系统故障的原因一般有两大方面,一是系统运行的外界环境条件通过系统内部反映出来的故障,二是系统内部自身产生的故障。由环境条件引起故障的主要因素有:工作电源的异常、环境温度的异常、电磁干扰、机械的冲击和振动等等。由系统内部引起故障的因素有:元器件的失效、焊接点的虚焊脱焊、接插件的导电接触面的氧化或腐蚀、线路连接线的开路或短路等等。 因此结合引发系统故障的原因,一般在硬件电路设计和软件程序设计中采取相应措施提高系统的可靠性。3.8.2采取的措施本运动控制系统的设计充分考虑了可靠性这一指标,主要体现在以下几个方面 屏蔽技术 本系统中,直流电机、驱动部件的PWM输出甚至是微控制器使用的振荡器,都是电磁干扰的噪声源。当距离较近时,电磁波会通过分布电容和电感藕合到信号回路而形成电磁干扰;当距离较远时,电磁波则以辐射形式构成干扰。针对上述情况,主要通过选用高导磁材料做成屏蔽体,使电磁波经屏蔽体壁的低磁阻磁路快速衰减,以降低干扰。 地线的处理 理解产生地线噪声的机制对于减小地线干扰至关重要,所有地线都有阻抗,和所有电路一样,电流必须流回其源点,电流通过地线上的有效阻抗将产生一个电压降,这些电压降就是地线干扰的原因。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!