《游烽-机电控制系统设计及仿真.doc》由会员分享,可在线阅读,更多相关《游烽-机电控制系统设计及仿真.doc(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、六足机器人机电控制系统设计及仿真学 院:专 业:姓 名:指导老师:工业自动化学院机械工程游烽学 号:职 称:160406106608李 春、陈维标讲师、工程师中国珠海二二年五月北京理工大学珠海学院2020届本科生毕业设计诚信承诺书本人郑重承诺:本人承诺呈交的毕业设计六足机器人机电控制系统设计及仿真是在指导教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。本人签名: 日期: 年 月 日六足机器人机电控制系统设计及仿真摘 要六足仿生机器人可以代替人类在各种不适宜的环境中进行探测和救援。它属于是一种仿生足式机器人,并且具有良好的性能
2、。六足仿生机器人的稳定特征可以用于一些未来的太空探索、灾区搜救、人类活动和生活的其他方面,代替人类完成一些高风险和繁琐困难的任务,为减轻人类的负担,帮助科学技术的发展。该毕业设计是通过根据其预定功能设计电路原理图,并连接各种功能模块(如单片机和光电传感器以及舵机等)而设计的。自行设计的仿生机器人的框架是支撑平台。在六足仿生机器人的控制操作方向上,选择通用的廉价单片机作为软件开发平台,以转向控制舵机作为中间控制模块来控制机械足的操作和运行。关键词:六足机器人;单片机;控制系统;程序编程Design and Simulation of electromechanical control syste
3、m for hexapod robotAbstractHexapod bionic robots can replace humans for detection and rescue in various unsuitable environments. It belongs to a bionic foot robot and has good performance. The stable characteristics of the hexapod bionic robot can be used in some future space exploration, search and
4、 rescue in disaster areas, human activities and other aspects of life, replacing humans to complete some high-risk tedious and difficult tasks to reduce human burden, help science and Technology development. This graduation design is based on the pre-set functional design circuit schematic diagram,
5、and connects each functional module (such as single-chip microcomputer, photoelectric sensor, servo, etc.) for design. The frame of the self-designed bionic robot is the supporting platform. In the control operation direction of the hexapod bionic robot, the general cheap single-chip microcomputer w
6、as selected as the software development platform.Keywords: Hexapod robot; single chip microcomputer; control system; program programming 目 录1 绪论11.1本设计的背景及意义11.2本设计在国内外的发展概况及存在的问题21.3本设计应解决的主要问题42方案设计及系统模块的选型52.1机身设计52.2系统模块的选型72.2.1感知模块的选型92.2.2微控制器的选型102.2.3电机驱动模块的选型112.2.4电源模块133仿真硬件电路设计153.1Prot
7、eus软件153.1.1软件功能介绍153.1.2硬件电路设计流程153.2仿真硬件电路163.2.1最小系统163.2.2时钟电路183.2.3复位电路183.2.4电源电路模块193.2.5超声波感应电路193.2.6电机驱动电路203.2.7仿真硬件电路224软件设计234.1主程序设计234.2中断244.2.1内部定时和外部计数中断244.2.2中断控制的有关寄存器244.3子程序设计254.3.1串口驱动子程序设计254.3.2按键子程序设计254.3.3显示屏子程序设计274.4软件调试295结论30参考文献31谢 辞32附 录33附录1331 绪论六足仿生机器人属于地面多足机器
8、人中的其中一类,这种机器人有着强大的运动能力,自动化程度高,结构稳定,学习采用生物的运动模式进行工作。自然界里存在一些人类无法到达或者对人类生命有危险的地方。有如矿井、防灾救援等等环境下,足式机器人的优势在于极强的地形通过能力。并且可设计或大或小的各类型机器人,进入危险区域进行收集信息,大大的改善了人类无法活动区域的限制,在目前都比较常见的是轮式机器人和履带式机器人中。而且多足机器人的腿部具有多个自由度,利用三组步态和定点转弯等姿态控制,通过调节腿的伸展程度大大增强机器人自身的灵活性,也可以控制机身重心的位置更让机器人拥有更高的稳定性。本设计基于仿生学原理,通过51单片机的控制多个舵机的组合实
9、现其独特的特殊性能使得多足仿生机器人研究的出现更突显步行机器人的优势。1.1本设计的背景及意义六足机器人可以代替人类在各种不适宜的环境下进行探测和救援。利用六足仿生机器人的稳定性特点,我们可以代替人类完成一些高风险或者不方便不适合人类到达完成的任务,减轻人类的负担,帮助科学技术的发展。当应用于复杂的应用地形时,例如房屋倒塌、山体滑坡、矿井坍塌等废墟环境下,与轮式履带式机器人相比六足机器人能适应复杂恶劣的地形环境,识别性强,思维局限性较低,自动分析地理环境从而执行不同的步态,控制模式也更加简洁方便,对比蛇型机器人更加容易实现,本设计对机器人躯干和腿的结构、运动方式和控制系统进行了研究。为六足机器
10、人在不同结构空间和复杂环境下的控制奠定了基础。六足机器人由于其关节自由度高,运动灵活以及能够适应复杂地形并且稳定性强被应用于各种复杂多变的环境中。在全球拥有各类机器人,机器人已经变得更加多样化。综合考虑其机械机身结构和各种步态模式,避免了诸多动态平衡的问题。但是,由于许多自由度,控制系统的复杂性增加了。 因此,设计一种能够实现多自由度协调运动的柔性控制系统是关键技术。人类研制的机器人已经不仅仅是业内人士埋头地研究,人们还注重研究生物,并从自然中汲取灵感,学习它们的运动原理、运动的机制和行为的控制,使得机器人与仿生学结合,赋予其更多的使用功能,使得仿生机器人的研究更多元化。本次设计利用舵机对机器
11、人进行控制实现各种步态行走操作,舵机相当于是机器人的大脑神经,目的是对机器人各足部协调发送指令动作。机身各结构基节则是机器人的四肢和驱干,在这基础上还需要机器人的主要控制大脑,这个大脑需要对外部的信息进行接受和处理,分析需要执行的指令,并对舵机统一命令操作。该机器人对外的传感器是机器人的眼睛,本设计利用超声波的原理,范围广识别度高,它负责接收勘测到的信号。发送给大脑,而舵机并不是机器人的核心。为了实现机器人的智能,我们必须添加另一个主控件,即为机器人安装一个大脑,而单片机可以成为机器人的主控件。研究了六足仿生机器人的机械结构,控制和功能。六足仿生机器人身体和腿部结构的优化,结合机身自身重量和各
12、模块部件的装配,设计更高效率的运动结构、传动系统及控制系统,优化和丰富其探测功能,使仿生机器人达到更有效、更轻便,更具有适应性,能量消耗更低。1.2本设计在国内外的发展概况及存在的问题在众多机器人中,由昆虫运动原理而来的六足机器人在复杂环境及非结构性空间下体现出灵活与高效,代替了人完成人所不适应或力所不及的各种工作,高效的解决问题。近年来美国就机器人这一领域在国际社会频频出彩,这背后是美国对机器人研究的大力支持。美国NSF最开始建立是为了促进美国的科学进步,在机器人行业NSF投入了诸多的精力财力和人力,发展时间也经历了非常长的过程。美国前置性的早期投资,在机器人相关问题的实践下,对机器人的方向
13、的指导以及探索不断深入。最近几年,西班牙科学家利用3D打印技术创造了一款六足机器人NeuroPod,如图1.1所示。利用内置的集成人工神经网络模拟自然界的昆虫在不同的步态之间转换。根据报道这款六足机器人装配30个人工的神经元,用以接受电子刺激,以瞬间对腿部电机发送指令,完成各种步态的却换,比如从慢走到奔跑。现在科研人员还在为机器人装各种传感器以便可对外界环境做出不同的响应。图1.1 NeuroPod机器人2018年4月,德国著名自动化技术厂商费斯托公司推出一款名为BionicWheelBot的新型仿蜘蛛机器人如下图1.2所示。该仿生机器人身长约为55cm,这个机器人不仅能在地面正常行走,还能蜷
14、缩成球用腿辅助向前翻滚。该机器人具有较强的适应性,可应用于农业、探测以及战场侦查等领域。图1.2 BionicWheelBot机器人近年来,国内的阿尔戈智能机器人团队,研发出了一种具有创造性适应能力的六足轮腿混合机器人Creadapt,如下图1.3所示,这个机器人利用最新的运动学和机电一体化设计,配备了最新的适应算法,属于一款多功能的机器人,不仅可以用轮式行走,也可以使用足部,两种程序算法各自独立互不影响,并且这种算法是可以反向运作的的,即使因为环境的原因被翻转过来,依旧可以继续完成它的指令,虽然是拥有六条腿,但即使多条腿都损坏了无法行动,它还是能够继续有效的移动,Creadapt机器人是国内
15、第一个基于自适应算法设计的移动机器人。图1.3 Creadapt机器人六足仿生机器人在移动机器人这一领域是非常重要研究方向。与其他类型的移动机器人相比,仿生六角形机器人在非典型环境中具有巨大优势,可用于现场检查,救灾和崎岖不平的道路运输。在复杂的环境中,我们研究了基于仿生运动学的系统控制算法,仿生结构设计,控制系统,图形处理算法,本体结构设计以及仿生六足机器人的设计与实现。1.3本设计应解决的主要问题机器人控制技术是一项非常全面和广泛的主题技术,包括机器,自动控制,计算机,人工智能等许多科学研究领域的先进技术,六足机器人的控制系统是机器人运动部分的中心。设计出一个需要在非典型环境中满足基本的移
16、动性要求。同时满足关键零件的强度、刚度和使用寿命要求等条件,然后进行轻量化和小型化优化设计,得到基本的结构尺寸,同时考虑使用高强度和低密度特性的材料,提高机器人的运动效率。本文以统一的形式分析了六边形机器人模型,研究了机器人的节奏和步态产生,简单的控制,灵活的运动在构建控制硬件平台方面。软件系统。 需拟解决问题目前主要以下几个:1、六足机器人可以左右旋转以灵活旋转2、机器人可以越过一些简单的小障碍3、确定机械支撑架的承受范围,选择合适的驱动方式4、运用软件进行模拟仿真2方案设计及系统模块的选型2.1机身设计 在机械系统中,现今对六足机器人的研究日渐深入,机身结构的形状也层出不穷,最为典型且应用
17、最为广泛的是以下三种机身结构:对称并排分布、正六边形分布、类椭圆形六边分布。机身的形状结构影响这步行腿的分布,进而对步行腿的摆动空间和六足机器人行走运动过程中的稳定性产生较大的影响,小组对以上三种机身结构,就腿部摆动空间和行走稳定性进行对比分析。合适的机身机构可以使步行腿有更大的摆动空间,更广的触底平面,在机身总长度及步行腿长度相同的情况下,两种机身结构的步行腿进行相同摆动角度,对类椭圆形六边机身结构和对称机身结构进行步行腿摆动空间对比。在机身总长度及步行腿长度相同的情况下,两种机身结构的步行腿使用相同摆动角度,类椭圆形六边机身结构并未发生步行腿相撞的情况,但对称并排机身结构的步行腿的摆动空间
18、已发生相交,说明此角度已超出最大限制,发生步行腿相撞的情况,如图2.1所示。可由此分析得出类椭圆形六边机身结构的空间摆动范围即触地平面比对称并排机身结构大。图2.1 步行腿摆动空间对比图六足机器人在正常情况下行走时,其稳定性与步态息息相关,所以在分析稳定性前,需选择一种步态,对三种机身结构进行稳定性对比分析。三种机身结构中,正六边形机身结构和类椭圆形六边机身机构相似,都属于六边形机身结构,而对称并排结构与之相差甚远,所以需先比较六边形机身机构与对称并排机身结构的稳定性。在小组成员的分析各种对比后得出,当六边形结构越趋向类椭圆形六边形时,其稳定裕度越大,但L值的增大范围和D值的减少范围均有有限制
19、,否则会机身左端会触碰至支撑相,导致比例失调,稳定性下降,如图2.2所示。所以可知在一定的D值与L值变化范围内,类椭圆形六边机身结构的运动稳定性最高,正六边形次之。图2.2 机身部分参数示意图综合上节的步行腿稳定性分析,类椭圆形六边机身结构不仅可以减少支脚之间的干扰和碰撞,还能保证六足机器人运动的稳定性,本课题的设计的机身选择类椭圆形六边机身结构。机身结构选定为类椭圆形六边机身结构。在建模设计前,计算机身的几个重要设计参数,如图2.2所示。通过小组成员设计根据步行腿的设计可知,步行腿的总长度为258mm。为保证步行腿基节在平面摆动角度一般为前后60,但为保证有尽可能大的摆动空间及避免相撞的现象
20、发生,H的值至少要大于腿长,即260mm,设计选择的数值应更大,初始选为520mm,D的值只要大于258即可,初始选定为260mm,L初始选定为400mm。足部结构如图2.3所示。图2.3 足部结构参数示意图根据选定的尺寸,对六足机器人的机身进行参数结构设计并与步行腿进行组装,如图2.4所示,六足机器人完成基本的机身和步行腿设计。图2.4 六足机器人组装示意图2.2系统模块的选型在控制硬件方面主要分为两部分构成,一是控制系统,二是驱动系统,总体分为四大模块:感应识别模块、控制器模块、电机驱动模块和电源模块进行构成,第一步由识别模块进行障碍物的检测,然后像控制器模块发出信号,接着由控制器模块发出
21、指令控制,对驱动电机驱动系统的脉冲,通过控制电流的脉冲达到电机角度的转动,进而控制六足机器人的行走。而电源模块主要就是提供系统所需的电源,使得机器人可在不人为连线供电的情形下自身提供各系统所需的电源。其关联方式如图2.5所示:机器人行走电机驱动模块控制器模块感知模块电源模块图2.5 系统结构方式图每一个模块的功能作用如下: 1、感知模块作为功能需要去感应前方是由一个发射和接收超声波传感器以及一个单片机组成,主要负责测量一定范围内障碍物的距离,感应传感器检测到在机器人前方某个距离范围内的东西然后反馈给系统。 2、控制器模块作为控制系统的核心,进行数据的分析处理,对各子程序进行控制信号的传递,需要
22、对系统每一结构进行协调,完成事先预定的功能程序。 3、电机驱动模块对每只脚单独驱动,通过脉冲调整,这一驱动主要是由控制器进行驱动。4、电源模块就是为六足机器人的各功能模块提供能量,以此来保证机器人各系统的稳定运行。总体方案设计如下图2.6所示:直流伺服电机控制硬件设计软件设计按键直流电机驱动电路单片机C语言程序设计电机控制显示Keil软件电路原理图Proteus软件仿真调试图2.6 总体方案设计2.2.1感知模块的选型目前市面上比较普遍的传感器主要有源式传感器和无源式传感器两种类型。对各类型传感器的使用情况和作用分析,无源传感器通过吸收被测对象的能量来输出信号;而有源传感器需要由电源提供。虽然
23、无源传感器简单方便,但是会因为被测对象的影响,而导致灵敏度不高也更加容易受到干扰,在这有源传感器更具有优势,灵敏度高也不容易收到干扰,只是需要外部电源的提供。触觉传感器属于有源传感器的其中一种,通常安装在外部环境容易接近被测量物体附近的地方。主要功能是将图像转换为水平信号,即是根据时间顺序,照射到传感器感光表面的光强度信息将转换为串行输出水平信号。就目前来说,视觉传感器广泛用于工业机器人和各类型移动机器人上。传感器将超声波信号转换为其他能量信号的声波传感器。超声具有高频,方向性特别好的特点。对于液体和固体的超声波渗透非常好,尤其是对于不透光的固体。有显著的效果。但是超声波会产生大量反射,从而形
24、成反射回波,只要感应到前方存在物体,则会发生多普勒效应。在此次课题设计的探测机器人中使用超声波传感器用于检测与障碍物之间的距离,超声波传感器小巧容易安装,类型繁多购买方便,实用性强,此次实验选用超声波传感器型号为HC-SR04,如图2.7所示:产品主要参数如下表2.8所示:图2.7 HC-SR04超声波传感器表2.8 产品模块主要参数产品名称HC-SR04超声波模块使用电压DC5V静态电流小于2mA电平输出低0v感应角度不大于15度探测距离2CM-450CM高精度可达3MM该产品安装方便、尺寸更小,不易老化、材料坚固且耐腐蚀,使用寿命也长,采用IO触发测距,测距距离=(高电平时间*声速340M
25、/S/2)。比较其他超声波传感器此型号有精度高的特点,自动检测是否有信号返回。2.2.2微控制器的选型微型控制器俗称单片机,把CPU、定时器、计数器和多版本I/O接口集成在一块芯片上,构成了一个小型迷你的微电脑,可以在不同的场合控制不同的应用,它内部内部有着振荡器、RAM、ROM、并行 I/O 端口、中断系统、可编程串行口以及定时器等组成。它具有低功耗、体积小、高性能、成本低等优点,非常适用于开发。本设计基于单片机控制电机,实现足部驱动系统的运作。单片机用作中央处理器。与各种传感器模块配合。因此,选择一块好的单片机显得非常重要。由于技术成熟,51系列单片机可提供完整的信息,它为系统开发提供了极
26、大的便利。因此系统选择STC89C52RC模型与51系列内核完全兼容的单片机。这个型号单片机具有可编程可擦除只读存储器的低电压、高性能的微处理器。并且它指令简单、自学也易懂容易上手,加上程序编程等硬件设计方便,执行操作也简单,主要它价格实惠,易于购买,也可多个单片机同时操作,所以用它作为本次设计项目的主体控制部分尤为合适。此型号芯片如下图2.9所示:图2.9 STC89C52RC单片机单片机STC89C52RC工作原理为其可以不断地读取执行指令,再在寄存器中进行译码功能,最后通过其他部件完成执行指令。该芯片具有以下特征:(1)完全兼容传统8051系列产品,程序可兼容,属于升级版增强型单片机。(
27、2)相同的晶体振荡器STC89C52RC比传统的51单片机快8至12倍。 (3)内置MAX810复位通道,可进行8次高速10 A/D转换,无需外部A/D模块。(4)此系列单片机针对电机的控制,比旧版具有强的抗干扰性能。(5)比普通 51 单片机多了两个定时器,具有 PWM 功能。STC89C52RC的管脚排列如下图2.10:图2.10 单片机管脚排列图如上图所示STC89C52RC具有40个引脚,其中32个是外部双向输入/输出(I/O)端口,加上2个外部中断源、3个16位可编程定时器/计数器中断和2个串行中断。 2条读写中断线。可以根据现有方法对STC89C52RC进行编程。它结合了通用微处理
28、器和闪存,特别是可以重复擦除的微处理器,极大化的降低了开发成本。2.2.3电机驱动模块的选型作为控制机器人各角度转动的电机,现在使用最为广泛的主要为两种:其一种是步进电机,另一种为伺服电机。伺服电机又分为伺服交流电机和伺服直流电机,对机器人的控制一般使用伺服直流电机,所以另外一种在此不做深究。步进电机原理是接收到脉冲信号时,电机沿设定方向旋转固定角度,以固定角度逐步执行旋转。但是没有反馈信号,精度较低,也可以控制脉冲的频率大小控制电机转动的速度以便加速或减速,进而达到需要调整电机节奏速度的目的。伺服电机控制脉冲数,当电动机旋转时,它将发送相应数量的脉冲。在此同时驱动器也接收到反馈的信号,精确的
29、控制电机的旋转,精度可达微米级别,并且电机内部的转子是永磁体,电机自带编码器,该精度远远的高于步进电机。其电机原理图如下图2.11所示:2.11 伺服电机原理图步进电机和伺服电机的速度响应性能也不同。步进电机当从静止状态加速到工作速度时需要几百毫秒的时间距离。而伺服电机系统往往只需要几毫秒的时间,有着更加优良的加速性能,它可用于需要快速启动和停止以及高位置精度的控制站。 考虑到舵机的数量和应用的方向,小组讨论决定采用型号为AX-18伺服电机,AX-18伺服电动机具有精度高,对速度和转矩进行闭环控制的优点,并克服了步进电动机失步的问题。电机稳定性能强,无论低速还是高速都能满足要求也不会存在步进电
30、机的现象,加上及时性强的特点,电机加减速的动态相应时间短,短短在几十毫秒之内可完成。所以决定使用该型号电机AX-18电机如图2.12所示、参数如表2.13所示:图2.12 AX-18 伺服数字电机表2.13 电机参数产品尺寸40.7*19.7*42.9mm产品质量55g工作扭矩16.5kg/cm反应转速53-62r/m使用温度-5C-+85C死区设定4微秒插头类型JR、FUTABA通用转动角度180度/360度舵机类型模拟电机使用电压7-10v工作电流900mA结构材质金属铜齿、空心杯电机、双滚珠轴承伺服电机的控制通常需要大约20Ms的时基脉冲。脉冲的高电平部分通常是角度控制脉冲部分。以180
31、伺服直流电机为例,对应的关系是:0.5Ms-0、1.0Ms-45、1.5Ms-90、2.0Ms-135、2.5Ms-180。许多时候适用于机械臂的选配和航模电机的使用等。2.2.4电源模块由于需要考虑六足机器人的工作环境和自身结构可知,机器人必须自带电源。以此确保机器人的稳定运作,本课题设计的六足机器人所需的能源主要用于驱动电机和控制电路以及超声波范围。伺服电机可以直接使用通用电源,但超声波传感器和单片机控制电路则是需要5V电源。电路模块上也存在许多感性元件,不能直接通入高压电源,考虑到六足机器人的工作时间,自身重量,电池尺寸和成本,使用容量为5200 mAH的24 V 5.2 Ah锂电池。锂
32、电池在和镍镉电池和铅酸电池等类型电池相比之下,锂电池有着更高的性价比。锂电池也拥有诸多优点,比如没有污染,电池输出电流大,使用寿命长,循环次数多等优点。电池处理模块采用PCA9685芯片进行驱动伺服电机的运作,它是一个采用I2C通信 ,内置了PWM驱动器和一个时钟。和TLC5940系列有很大不同,这个芯片不需要不断发送信号占用单片机。也可有效压制输入电流来使器件不会受到输入信号的影响。它是5V的兼容,即使是3.3V的单片机控制也能安全地驱动到6V输出。相比于L298N驱动芯片,可有效控制电机正反转的效果。外部端子用于连接外围检测电阻器。另外可放置另一个输入电源,以允许逻辑在低压下工作。该驱动模
33、块如下图2.14所示:图2.14 PCA9685电机驱动模块PCA9685芯片具有更强的驱动能力。并且有着过电流保护功能,当系统出现电机卡死时,可以保护电路和电机等。模块以及各个接口如图2.15所示:图2.15 PCA9685驱动各接口功能3仿真硬件电路设计单片机作为一种典型的嵌入式系统,本身是没有带开发功能的,需要借助外部工具进行烧录程序。而寻找一种能够模拟硬件电路工作方式的平台是一种好的办法。这就需要模拟仿真器,将外围设备的功能在软件中实现。在单片机开发上,发现Proteus与Keil C联调可以进行全部的软件和大多数硬件系统的调试。以Proteus仿真实验实现系统的动态仿真时,就单片机而
34、言该软件有着显著的优势。不仅可以提高单片机系统设计效率,并且也拥有良好的灵活性方便进行各式各样的调整和实验。3.1Proteus软件3.1.1软件功能介绍Proteus软件是应用颇为广泛的电子线路仿真软件,它也是目前单片机仿真软件中较容易操作上手快可以自学的工具软件,自软件1989年问世至今经历30年的发展优化,功能不断完善,性能也越来越好,元器库储量越来越多,因为自身结构的特点,使用用户也颇为庞大遍布全球, 最方便的,是Proteus还可以仿真数码管、液晶显示器,可以仿真按容键、各种传感器等等。软件功能特点:(1)原理布图;(2)PCB自动或人工布线;(3)SPICE电路仿真。(4)各种信号
35、源和电路虚拟仪表;(5)普遍都支持第三方的软件编译和调试环境;3.1.2硬件电路设计流程打开软件后,将出现一个仿真电路窗口,用于构思设计以及设计完毕后的仿真运行。提前进行构想完成后,在提前预想好电路大致板块以及个元器件的编码,根据设计需要提取Proteus元件库中选取所需的组件,将它们放置在编辑区域中并执行电路设计,例如电路连接。设计电路之后,可以使用系统提供的电气测试工具对电路进行电气测试。如若在之前设计的过程中出现错误则会出现电气错误提示,根据该报告,可以排除电气错误直至电路完善。本课题设计的六足机器人控制系统电路主要由电源稳压电路、时钟电路、复位电路、显示系统、超声波感应系统、伺服直流电
36、机等组成,硬件仿真设计总体框图如下图3.1所示:时钟电路单片机STC89C52RC复位电路伺服直流电机按键模块显示模块感应模块电源电路模块图3.1 仿真设计总体框图3.2仿真硬件电路3.2.1最小系统单片机主机系统电路主要由单片机和稳压模块组成。工作原理为其可以不断地读取执行指令,然后再在寄存器中进行译码功能,最后通过其他的部件完成执行指令。最小系统是单片机系统中必不可少的部分,是由可以使单个芯片工作的最少设备组成的系统。 STC89C52RC已经包含8KB的程序存储器,可以轻松地构建最小的单片机系统,只需要连接电源,增加时钟电路和复位电路即可。最小系统电路图如图3.2所示,仿真图如图3.3所
37、示:图3.2 最小系统组成图3.3 最小系统滴电路仿真图3.2.2时钟电路在所有的单片机电路系统中,就算是最简单的电路,也都是需要有一个时钟电路,时钟电路由晶振组成,晶振为单片机提供基本震荡源,晶振的震荡就好比人类心脏的跳动,单片机会检测到震荡,有了心跳节拍,才可以实现各种程序运行,不然若连计数都无法完成,则单片机是无法启动的,所以在设计仿真时务必加入时钟电路并保证时钟的稳定,一旦受到干扰对系统是非常致命的。时钟电路电路图和仿真图如下图3.4所示: (a) (b)图3.4 时钟电路图3.2.3复位电路单片机的复位主要是由RST引脚的电压控制,当收到上升沿或者下降沿时,都会对系统进行一次复位,或
38、者当程序或操作不正确时,可能导致系统崩溃甚至死机结果,这时便需要通过复位操作使其重新开始工作。如下图3.5所示: (a) (b)图3.5 复位电路图3.2.4电源电路模块考虑到系统中有存在着比较感性的远件,比如电动机和继电器等等,因此感性组件的运行将拉低系统电压,导致了调节值偏离出相应范围外。它的功能是为单片机的直流电源供电,把交流电源转换为稳压直流电源。对输出的电压进行整流,经过正负电源,同时获得采样电压。为了接线简单以及节省元器件,使用桥式电路将220V电压变成整流电路要求的直流电压,从而实现220V直流稳压状态。稳压电路仿真图如下图3.6所示:图3.6 电源稳压电路图3.2.5超声波感应
39、电路超声波感应装置采用STC89C52RC单片机与相关的光电检测设备来设计类似超声波感应装置,由于Proteus系统元件库内没有超声波传感模块,也没有类似声波感应模块,所以采用ADC芯片进行代替也是一个非常好的方案。ADC芯片模拟超声波传感器采用电阻器元件作为检测元件的传感器,通过电阻器元件模拟接受外部光信号转化成电信号然后通过按键调节进行反馈,也同时拥有发射装置、接收装置和电路装置,所以采用替换且能达到一样效果的超声波传感器,从而实现通过外界环境的改变而自动控制机器人电机的转动。同时在仿真图中考虑到无法实现和实际中检测到前方信号的反馈,采取人为控制的按键模块和显示模块进行表达实际检测情况,通
40、过按键模块调节六足机器人前方障碍物的距离,并由显示板块直观表达出来,模拟机器人在实际行走中遇到的各种信号。所以超声波感应电路其功能模块主要包括检测模块、显示模块以及处理模块三类,其检测模块和处理模块电路图如下图3.7所示,显示屏模块如下图3.8所示:图3.7 信号检测与按键模块图3.8 显示模块仿真3.2.6电机驱动电路伺服直流电机通过电机驱动系统驱动,其中一端连接到12V外部电源,另一端接到STC89C52RC单片机的各个引脚上进行控制。通过控制电流脉冲的时间,对电机转动的角度进行精确控制,考虑到本次课题设计的机器人电机有18个,如果在仿真图中表示,占幅会非常大,所以未在仿真图中全部表达,由
41、于本次设计的机器人行走步态为三足步态,三只足部的控制方式相同,三组步态如下图3.9所示:图3.9 三足步态相位图在步态相同控制方式节拍相同的情形下,对六只足步分为两组,为每只脚进行编号后,如下图3.10所示,1、3、5足部定为A组,2、4、6足部定为B组,通过控制A、B组的步态节奏达到机器人各种模式的实现。电机驱动电路仿真如下图3.11所示:图3.10 各足部编号示意图图3.11 电机驱动仿真图3.2.7仿真硬件电路如下图3.12所示,是在Proteus软件中仿真的完整硬件电路的示意图。通过微控制器STC89C52RC为控制中心,选择合适的元件而形成可执行功能的仿真硬件电路。图3.12 控制仿
42、真电路图4软件设计4.1主程序设计依照提前预定好的方案设计要求,设计主程序、子程序。六足机器人控制系统上电后,首先,进行初始化,比如:定时器0、外部中断0、等。然后,感知模块和电机驱动模块工作,超声波传感器检测机器人周围环境等,该程序主要完成系统初始化和各种功能的调用,检测并处理取消中断的指示位,并监视和显示完成每个功能的工作过程。 在这个以STC89C52RC为大脑的单片机机电控制系统中,单片机需要完成的工作是通过软件编程将信号指令发送到每个功能模块以执行其功能。实现一般合作并达到最终控制目的。主程序设计的基本流程是执行功能的基本步骤。当启动后,系统自动进行初始化,包括将单片机的每个引脚端口
43、设置为高电平并清除内部存储器。然后启用系统预设,按下按钮后,系统进行识别,超声波感应器开始探测前方的环境状态,接受信号发送到单片机,大脑发出指令,脉冲计数器记录电机速度,输出在特定占空比下执行前进、后退或转向避障等模式。主流程图如下图4.1所示: 开始初始化(外部中断、定时器0)超声波传感器检测是否有障碍模式检查直行模式避障模式图4.1 主程序流程图4.2中断中断服务功能在功能模块的编程中占有非常重要的位置。可以通过在达到所需目标之前降低中断功能来解决CPU使用率过高的问题。其中,超声扫描应用于定时中断功能,速度测量适用于外部中断源和计时器,脉冲输出被添加到计时器。因为每个子功能模块都更为重要
44、,主程序仅是进行几个辅助调用,而关键部分是每个中断服务功能的使用。在继续特定的软件设计之前,有必要开发STC89C52RC中断的内容。当CPU执行某个程序时,有时会发生内部或外部紧急事件,需要CPU暂停其工作并处理紧急事件。处理事件后,返回原始中断位置。继续运行最初中断的程序。此过程称为中断。4.2.1内部定时和外部计数中断在机电控制系统中应用的中断源和中断原因如下表4.2所示:表4.2 中断源中断源名称中断引起原因INT0外部中断0引脚输入低电平或下降沿信号INT1外部中断1引脚输入低电平或下降沿信号T0定时器0中断定时计数器0计数回零溢出T1定时器1中断定时计数器1计数回零溢出T2定时器2
45、中断定时计数器2计数回零溢出单片机定时器的作用: (1)可用于精确的延迟处理,比较延迟时间为1ms。 (2)可用作计数器。例如,将此功能IO端口连接到时钟源,就可以计算出有多少个脉冲信号。4.2.2中断控制的有关寄存器CPU的打开和屏蔽中断源以及是否可以中断每个中断源均由IE中断启用寄存器。如表4.3所示:表4.3 中断允许控制寄存器IE的位位序D7D6D5D4D3D2D1D0位标志EA-ET2ESET1EX1ET0EX0中断使能控制寄存器IE在打开和关闭中断中实现两级控制。总的中断位EA。部分程序如下:void timer0() interrupt 1 TL0 = TIMER0_MODE1_INIT_VALUE_L;/设定定时器初值TH0 = TIMER0_MODE1_INIT_VALUE_H; timer0_irq();/定时器0中断处理函数 timer0_irq();/定时器0中断处理函数4.3子程序设计控制的子程序设计包括电机驱动程序设计、前进后退切换程序设计、避障程序设计、按键和显示屏程序设计、超声波距离传感程序设计等等
限制150内