ImageVerifierCode 换一换
格式:DOC , 页数:29 ,大小:957KB ,
资源ID:3065913      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/3065913.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(壁面侦察机器人控制系统设计.doc)为本站上传会员【可****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

壁面侦察机器人控制系统设计.doc

1、 毕业论文 题 目 壁面侦察机器人 控制系统设计 学 院 机械工程学院 专 业 机械工程及自动化 班 级 机升0902 学 生 靳祥强 学 号 20090404026 指导教师 赵洪华 二〇一 一年 五月 三十日

2、 第一章 前言 1.1 壁面机器人在国外发展的概况 壁面机器人是一种能够在壁面上运动的极限作业机械人,它是一种由机构学、无线通信技术、控制技术、信息技术等为一体的高科技产品,世界机器人大国日本在极限机器人的技术居世界前列。在过去的几十年里,壁面机器人的技术在全世界得到迅速的发展,不同种类的样机相继面世。 早在1966年,日本大阪府立大学工学部讲师西亮,就利用电风扇产生的负压作为吸附力制作了一台垂直壁面机器人的原理样机,这被看做是壁面机器人研究的开端。[1]日本的应用技术研究所研制出的车轮式磁吸附壁面机器人,它可以吸附在各种大型物件的表面,代替人类进行一些检查或维修等工作

3、这种机器人的特征是:行走速度很快,能适应各种表面,而且对表面的油漆没有损坏。 1997年,俄罗斯莫斯科机械力学研究所研制出的用于大型壁面和窗户清洗作业的壁面机器人采用单吸盘结构,[2]如图1.1所示,该机械人的吸附力由风机产生的真空负压来提供,吸盘腹部装有4个驱动轮,它可以做全方位的壁面移动。 日本光荣公司研制了一种多吸盘壁面机器人,它有两组真空吸盘,如图1.2所示,它的本体上自带有两个真空泵、控制系统和无线通信系统。它能在距离遥控天线10m范围内作业,最大行走速度为30 cm/min, 它一次充电能持续工作约30分钟,它可以就用高大建筑物墙壁的检测工作。[2]

4、 图1、1俄罗斯单吸盘清洗爬壁机器人 图1、2多吸盘爬壁机器人 美国密歇根州立大学研制出两种双足结构的小型壁面机器人,均采用真空吸附方式,[2]如图1.3所示。图1.3a所示机械人由一个移动关节和4个转动关节组成运动机构,共5个运动的关节。采用模糊的控制方式,机器人的外型尺寸高80mm、 宽50mm 、质量为450 g。它的步态规划采用了一种有限状态机制来描述机器人的运动状态,并以以这个为基本建立了机器人步态规划规则。图1.3b为具有4个转动关节的双足壁面机器人,两个机器人均采用欠驱动机构,减小了机器人的质量。机器人能在墙面、天花板上等地方爬行,以及在

5、两个表面之间和一些爬管道一类的障碍物间爬行。 、4.3两足壁面机器人 上世纪90年代,日本科技大学研制的NINJA-1在四只独立运动的腿上装上四个吸盘,通过四条腿不同的运动,实现机器人从地面移动到天花板,它具有很强的穿越障碍的能力,主要用于高楼工作的检查工作中。 在以后的几十年里,壁面机器人技术在世界范围内午到了迅速的发民,很多种类的样机相继研制出,并且有些已经投入实际应用中。 1.2 壁面机器人在国内的发展概况 和国外相比,国内的壁面机器人的研究起步比较晚,但是进几年已取得了很大进步。我国的工业机器人从上世纪80年代“七五”科

6、技攻关开始起步,在国家的支持下,通过科技攻关,目前已基本掌握了机器人本体设计制造技术、控制系统硬件和软件设计技术等有关的技术。图1.4为我国成功研制的第一台壁面遥控检测机器人,采用负压吸附,全方位移动轮,用于废液存罐罐壁焊缝缺陷检测。[3-7] 图1.4单吸盘负压吸附爬壁机器人 图1.5球形壁面爬壁机器人 上海大学也较早开展高楼壁面清洗作业机器人的研究,先后研制出了垂直壁面爬壁机器人和球形壁面爬壁机器人。如图1.5所示,该球形壁面机器人采用多吸盘、负压吸附、6足独立驱动腿行走方式,可用于不同曲率半径的球形外壁面。[3-7] 哈尔滨工业大学开发的CLR

7、II型壁面清洗壁面移动机器人是专为瓷砖壁面的清洗而设计制造的,通过风机的高速旋转将空气从吸盘腔内抽出,在吸盘内产 生负压,依靠吸盘内外的压差使机器人附着在壁面上,已有成品 1.3壁面机器人发展的趋势 (1)吸附技术的发展:吸附技术在壁面机器人发展中起关键的作用,它能决定机器人的应用范围。现在的吸附技术有很大的局限性,在很多情况下不能满足实际应用的要求。所以,它的发展是壁面机器人发展的一个种要方向.[2] (2)小型化、微型化:有相同功能要求的情况下,体积小、质量轻的机器人有比较小的能耗 还有比较高的灵活性,所以小型化,微型化是当前机器人发展的一个趋势。 (3)智能化: 与人

8、工智能想结合,使机器人在封闭的环境中能够具有一定的自主决策的能力,完成任务,并具有自我保护的能力,是自动机器人发展的重要方向,也是爬壁机器人的重要发展方向。 (4)模块化: 为了让机器人能在不同的场合工作,根据工作的要求,在不需要重新设计系统备件下,充分利用已有的机器人系统,就使机器人具有模块化机构,根据工作要求,把需要的模块直接连接起来组成新的机器人。 第二章 小型壁面机械人本体结构简介 2.1小型壁面机器人的总体构成 为实现壁面移动机器人在壁面上自由灵活的移动,同时能够完成工作载荷,机器人应该具备两大部分---控制系统和执行系统,这两大系统必须在辅助系统的协作下协调

9、一致。图2.1 是壁面移动机器人的总体系统示意框图。另外,要实现壁面移动机器人的安全的可控型的移动工作,还需要一套控制系统。 辅助系统 控制系统 遥控器 任务载荷

10、无线通信 传感装置 中心处理器 行走 装置 吸附 装置 任务 执行 装置 执行系统 (机器人本体) 图2.1小型壁面机器人总体系统示意图 2.2小型壁面机器人的技术要求 为了实现小型壁面机器人能在壁面上灵活高效的完成任务,对机器人提出了以下几种具体的技术要求: a、吸附方式: 临界吸附(负压吸附与反推力吸附结合),单吸盘,单风机。 b、移动方式:电机驱动两个相对独立的轮子作全方位的移动。  c、最大壁面移动速度:在0~8m/min 范围内无级可调。 d、越障能力:跨越台阶高度,壁面0~1.6 cm。 e、重量:

11、壁面机器人本体重 ≤4 kg,负重 ≤2kg。 f、大小:壁面机280×280×280 mm。 g、控制系统:由地面操作人员遥控操作。 2.3小型壁面机器人的移动机构 壁面机器人的移动一般有轮式、履带式和足式三种。 足式机器人:有较高负载能力,但是设计和制造比较困难,容易增加系统的复杂性,并且它的移动速度比较慢; 履带式机器人:履带驱动的基本设计比较简单:两条履带分别置于机器人的两侧, 作用类似于大轮子。它的接触面积比较大,适应性强,代价是要增大综的体积,它不易转弯。 轮式移动机器人:移动速度快,易控制,但是接触面积小,维持一定的磨擦有困难,灵活性好,具有高效的工作效率。 所

12、以先用轮式驱动的移动方式。机器人有两个相对独立的车轮,它们分别有两面台相对独立的电机控制,这样不但操作容易,而且能实现360度的旋转。当两台电机都不运动时,机器人处于静止的状态;当两个轮子向相同的方向运动时,机器人前进或者后退;当两个独立的轮子向相反的方向运动时,机器人做360度的旋转.[8] 2.4小型壁面机器人的吸附机构 机器人的吸附主要有负压吸附和磁极吸附两种方式。 两者中的磁极吸附结构比较简单,吸附力大,但要求壁面必须是导磁材料,适用的范围比较小。[9] 负压吸附法具有不受壁面材料限制的优点,需要注意的是当壁面凹凸不平时容易使吸盘漏气,从而使吸附力下降。考虑到本机器人结构

13、比较小,故采用单吸盘负压吸附方式。再由一个安装在机体上的真空泵持续的对吸盘抽气。保持吸盘内负压维持。 2.5小型壁面机器人的控制 a、对电机等驱动装置的控制,以实现机器人在壁面上的移动。壁面机器人采用轮移动机构,每个轮上都有一个电机驱动,通过对两个轮电机的控制来实现机器人的前进、后退、旋转等的控制。 b 吸附装置的控制,以实现机器人在壁面上的吸附,由于是单吸盘结构,机器人的 工 吸盘始终处于吸附状态,吸盘内有一个真空压力传感器,当检测到吸盘压力下降时,就加大真空泵电机的转速,保证机器人吸附在壁面上。[8] c、摄像及及传感装置的控制,实现对环境的探测,在机器人上安装有摄像头和

14、其它的传感器等,实时的将机器人的外界环境和自身的状况伟回给控制者,便于操作都对机器人所处的状态进行掌握,以便更好的控制机器人。 第三章 壁面侦察机器人无线通信系统的设计 3.1无线通信系统应该满足的要求 ( a)准确性好 机器人与操作人员之间的人机交互主要是依靠无线通信来实现,只有各种数据、信息能准确无误的在人机之间进行传送,才能保证操作人员能实时有效的来控制机器人完成各种那样的动作要求,所以准确性对无线通信来说很重要。 (b)快速性好 由于机器人在工作过程中需要对地面操作人员的命令做到快速的反应,因此就要求无线通

15、信有很好的快速性,做到反应迅速。 (c)抗干扰能力强 由于壁面机器人工作的环境比较得杂,有很多的干扰因素,像电波,电磁等。为了保证无线通信在这些干扰因素的影响下正常的进行工作,必须要在设计时对它进行抗干扰因素的测试,以求在以后的工作中,不受影响。 3.2常用的无线通信系统方案 无线收发设备的选择对于提高无线通信系统得整体操作性能及可靠性和经济性具有重要的意义,根据研究已有的无线通信方案有以下几种可供选择:无线扩频调制解调器的无线通信系统; Modem与无线车载电台的无线通信系统:采用无线数据传输模块的无线通信系统 这三种无线通信系统中,第三种方式最适合点对多点的通信方式,这种方式首先

16、需要设1个通信主机,其余为从机,所有节点都编一个唯一的地址。通信的协调完全由主机控制,主机采用带地址码的数据帧发送数据或命令,从机全部都接收,并将接收到的地址码与本地地址码比较,不同则将数据全部丢掉,不做任何响应;地址码相同,则证明数据是给本地的,从机根据传过来的数据或是命令进行不同的响应,将响应的数据发送回去。这些工作都需要上层协议来完成,并可保证在任何一个瞬间,通信网中只有一个节点处于发送状态,避免了相互干扰,而且无线数据传输模块价格便宜,有利于小型壁面机器人的产品化。 3.3 SRWF-501-50型微功率无线模块 SRWF-501-50型微功率无线数传模块是上海桑锐电子科技有限公司

17、采用高效FEC前向纠错技术结合高性能的无线射频IC CC1020, 以及高速微处理器相结合开发出的一款无线通信模块, 可与SRWF-505、SRWF-506、SRWF-507、SRWF-508进行无线通信。该无线通信模块具有很强的抗干扰能力, 全透明传输, 体积小,功耗低传输距离远的特点, 客户使用时不需要任何编码技术。它的实物图如图3.1所示。 图3.1 无线模块的实特图。 3.3.1无线模块的引脚说明 1 GND电源 模拟地 2 电源DC +3.0V~+5.0V 3 RXD/TTL 串行数据接收端 TTL TXD 4 TXD/TTL 串行数

18、据发射端 TTL RXD 5 SGND 信号地 模拟地 可与电源地相连 6 A(TX) A(RX) RS-485的A RS-232的TX 7 B(RX) B(TX) RS-485的B RS-232的RX 8 SLP 休眠控制 (输入) TTL 休眠信号 低有效t>15ms 9 RESET 复位 (输出) TTL 唤醒信号 负脉冲唤醒 >1ms 3.3.2 无线模块的使用条件 性能参数: 型号 SRWF-501-50 中心频率 433MHZ/868MHZ/915MHZ 频率范围 420~450MHZ 信道数 8/16/32信道可

19、选 调制方式 GFSK 通信距离(开放环境) >1200米 功能 双向半双工通信 波特率 1200/2400/4800/9600/19200bps 接口方式 TTL串口/RS232/RS485 发射功率 +50mW/17dbm 接收灵敏度 -118dbm 通信数据格式 8N1/8E1/8O1可调 工作电压 +3.0V~+5.0V 发射电流 < 100mA 接收电流 < 30mA 休眠电流 < 20uA 工作温度 -25℃~80℃ 工作湿度 10%~90%相对湿度 无冷凝 尺寸 47x26x10mm 型关型号 SRWF-505、SR

20、WF-506、SRWF-507、SRWF-508 3.3.3无线模块的主要功能特点 1.微发射功率:最大17dbm(50mW)的发射功率。 2. ISM频段工作频率,无需申请频点。 载频频率429-438MHz,也可提供315/868/915MHz等载频 3.高抗干扰能力和低误码率。 基于FSK的调制方式,采用高效通信协议,在信道误码率为10-2时,可得到实际误码率10-5~10-6。 4.完善的通讯协议。 5.传输距离远。 在视距情况下,天线高度>3米,可靠传输离距>1200m(BER=10-3/1200bps)。 6.透明的数据传输。 提供透明的数据接口,能

21、适应任何标准或非标准的用户协议。自动过滤掉空中产生的噪音信号及假数据(所发即所收)。 7 .多信道,多速率。 SRWF-501-50型模块标准配置提供8/16/32个信道,根据用户需要,可扩展到32信道,满足用户多种通信组合方式的需求。SRWF-501-50型模块可提供1200bps、2400bps、4800bps、9600bps、19200bps、等多种通信波特率,并且无线传输速率与接口波特率成正比,以满足客户设备对多种波特率的需要。 8 .双串口,3种接口方式。 SRWF-501型模块提供2个串口3种接口方式,COM1为TTL电平UART接口。COM2由用户自定义为标准的R

22、S-232/RS-485接口(用户只需要拔/插短路器再上电即可改变接口类型)。 9 .高速无线通讯和大的数据缓冲区。 可1次传输无限长度的数据,用户编程更加灵活。 3.3.4无线通信模块与AT89S51的连接 第四章 壁面机器人遥控器的硬件设计 4.1遥控器的硬件组成 遥控器的硬件系统主要包括:微控制芯片、人机接口、串行通信、外部存储(ROM、RAM)等。我们选择AT89S51做为遥控器的微型控制芯片,它既能满足遥控器的功能要求,而且价格比较低。在人机接口部分外扩一个8255可编程扩展芯片,用以实现键盘和LED灯接口

23、使用MAX485总线驱动芯片芯片与单片机的串行通信引脚相连。由于单片机的内存容量有限,在AT89S51芯片外接一个24C16芯片以提供足够的程序存储空间;在其外部另接一个6264芯片以提供足够的数据存储空间。为了保证等距离能正常的运行,防止程序陷入死循环,在它的外部使用了一个看门狗芯片MAX813。 AT89S51 键盘LED 24C16ROM 8255 6264RAM MAX 485 无线数据 传输模块 MAX813 图4.1遥控器总体设计方案框图 4.2微控制芯片AT89S51的介绍 AT89S51是一个低功

24、耗,高性能的 8位单片机,片内含4k的可反复擦写1000次的FLash只读程序存储器,器件采用ALMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,它在众多嵌入式控制应用系统中得到广泛应用。[9-13]实物图,如图4 .2所示 图4.2 AT89S51芯片的实物图 4.2.1 AT89S51的主要性能特点 (a) 4k可编程闪存。 (b) 128 B的内部数据存储器RAM。 (c) 32个外部双向输入/输出(I/O)口。 (d) 2个16位可编程定时器/计数器。 (e)完全

25、与Intel的MCS-51兼容。 (f)有六个中断源。 (g)共有三个阶段的程序数据保护功能。 (h看门狗电路。 4.2.2 AT89S51的管脚作用的说明 VCC: 供电电压。 GND: 接地。 P0口:P0口为一个8位漏级开路的8位准双向I/O端口,作为漏极开路的输出端品,每位能驱动8个LS型TTL负载。当P0口作为输入口使用时,应先向口锁存器写入1,此时P0口的全部引脚浮空,可作为高阻抗输入。 P1口:P1.0~P 1.7统称为P1口,可作为准双向I\O口使用. P2口:P2.0~P 2.7统称为P2口一般可为准双向I\O口使用。在接有外部存储器或扩展I\O口且范围

26、超过256B时,P2口用作高8位的地址线。 P3口:P3.0~P 3.7统称为P3口,除了可作准为双向I\O口外,还有第二功能:    P3.6 /WR(外部数据 存储器写选通)    P3.7 /RD(外部数据存储器读选通)    P3口同时为闪烁编程和编程校验接收一些控制信号。    I/O口作为输入口时有两种工作方式,即所谓的读端口与读引脚。读端口时实际上并不从外部读入数据,而是把端口锁存器的内容读入到内部总线,经过某种运算或变换后再写回到端口锁存器。只有读端口时才真

27、正地把外部的数据读入到内部总线。89C51的P0、P1、P2、P3口作为输入时都是准双向口。除了P1口外P0、P2、P3口都还有其他的功能。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,

28、ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器

29、的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 4.3时钟电路 AT89S51一般采用片内的振荡器,所以它需要在AT89S51的XTAL1和XTAL2两个引脚之间接一个晶体振荡器或陶瓷振荡器,并且并接两个小电容。如图4.4所示,。通常情况下,我们选择频率在1.2~12之间的片外的石英晶体。由于电容的大小会对振荡频率的高低等有影响,在实际的情况下,我们选择30pF的电容和12MHz的晶体。[9] 图4.3 时钟电路 4.4复位电路 电平开关与上电复位,其中上电复位是在RST引脚上外接一个电容C8到供电电源+5端,下

30、接一个电阻R16到地,当系统上电时,复位电路通过电容C8加给RST一个短的高电平信号,引高电平随着电源对电容C8的充电过程面逐渐的回落,即RST端的高电平持续时间取决于电容C8的充电时间。[9]手动复位是用开关S15开进行复位。 图4.4 复位电路4.5存储器的扩展 4.5.1外部ROM 扩展 Pin Name 管脚定义 A0~A2 地址输入 SDA 串行数据 SCL 串行时钟脉冲输入 WP 写保护 NC 无连接 GND 接地 VCC 电源 表图4.5 AT24C16 A

31、表4.1 AT24C16管脚定义 使用24C16通过I2C总线与AT89S51连接的方法[12]如图4.6所示,A0、A1、A2为芯片地址线,单片使用时接GND;SCL为串行位移时钟;SDA为串行数据或地址。通过SDA,AT89S51可以对24C16写入或读出数据;WP为写保护端,若WP接VCC,芯片只读 图4.6外部ROM的扩展 4.5.2外部RAM的扩展 AT89S51单片机内部有少量的数据存储器RAM,对于数据较少的应用系统已够用,就没有必要进行外部的扩展,但是当数据量比较大时,则必须进行外部的扩展。我们选用RAM6264进行扩展,6264是8KB静态随机存储器RAM芯片

32、由单一+5V电源供电,额定功耗为200MW,有28个引脚,如图4.7所示,各引脚定义如下。 (a)A12-A0:地址线,可寻址8KB的存储空间。 (b)D7-D0:数据线,双向,三态。 (c)OE(____):读出允许信号,输入,低电平有效。 (d)WE(____):写允许信号,输入,低电平有效。 (e)CE1(_____):片选信号1,输入,低电平有效。 (f)CE2:片选信号2,输入,高电平有交。 (g)VCC:+5V工作电源。 (h)GND:地线端。 6264设有两个片选信号端(CE1 CE2)目的是为了增强对芯片的控制,以提高可靠性,但是在实际中常把CE2接成高电平

33、常有效,在一些应用要求高的地方,6264与AT89S51的连接方式:6264有13条地址线,其中的8条通过地址锁存器74LS373与AT89S51的P0中的低8位相连,其他的5条与P2.0~P2.4相连.8条数据线与AT89S51的P0口相接.片选信号CE1接P2.5,片先信号CE2接电平+5 图4.7 6264扩展接线图 4.6 8255A可编程并行I\O的扩展 本设计中,我们采用8255A芯片进行接口的扩展,8255A共有3个8位的并行的I\O口,每个口有三种工作方式。[12] 4.6.1 8255A芯片的引脚 如图4.8所示,引脚信号如表4.2

34、 4.8 8255A引脚 引脚信号 引脚号 引脚名称和功能 VCC 26 电源的+5V端 GND 7 是源的0端 RESET 35 复位信号输入端,使的内部各寄存器清除,置A、B、C口为输入口 WR(——) 36 写信号输入端,使CPU输出信号或数据到8255A RD(——) 5 写信号输入端,使8255A送数据或状态信息到CPU CS(——) 6 片选信号控制端 A1、A0 8、9 地址总线的最低两位,用于决定端口地址, D7~D0 27~34 双向数据线 PA0~PA7 37~40 1~4 A口的8位I\O引脚 P

35、BO~PB7 18~25 B口的8位I\O引脚 PCO~PC7 14~17 13~10 C口的8位I\O引脚 表4.2 8255A芯片的引脚信号说明 4.6.2 8255A的三种工作方式 方式0(基本输入\输出方式)这种工作方式不需要任何的选通信号.A口、B口、C口的两个4们品中任何一个端中都可以由程序设定为输入或输出。作为输出口时,输出的数据被锁存,作为输入口时,输入数据不会被锁存。 方式1(选通输入\输出方式)在这种工作方式下,A、B、C被分成两组,A组包括A口和C口的高4位,A口由编程设定为输入口或输出口,C口的高4位则被用来作为A口输入或输出的控制和同步信

36、号;B组包括B口和C口的低4位,B口由编程设定为输入口或输出口,C口的低4位则被用来作为A口输入或输出的控制和同步信号。A口和B口的输入和输出数据都将被锁存。 方式3(双向传送方式)在这种工作方式下,A口可用作双向传送,C口的PC3~PC7用来作为输入和输出的同步控制信号。应该注意的是只有A口能允许用作双向传送,这时B口和PC0~PC2则可编程为方式0和方式1的传送方式。[9-13] 4.6.3 8255A的方式选择控制字. 8255A的编程选择是通过对控制口输入控制字的方式实现的,控制字有方式选择控制字和C口复位\置位控制字,本设计我们选择方式选择控制字,其结构和定义如图4.9所示.

37、 D7 D6 D5 D7 D3 D2 D1 D0 B组 下C口:1=输入 0=输出 B口: 1=输入 0=输出 方式选择 0=方式0 1=方式1 A组 上C口:1输入 0=输出 A口:1=输入 0=输出 方式选择 00=方式0 01=方式1 10=方式2 控制字标志 1=方式控制字 图4.9方式选择控制字 4.6.4 AT89S51与8255的接口电路图 因为8

38、255A芯片内部没有地址锁存能力,所以图中8255A的片选信号CS(__)及端口地址A1、A0分别由单片机的P2.6、P0.1、P0.0经地址锁存后提供。其接图如图4.10所示. 图4.10 I\O口的扩展接线 4.7键盘的连接方式 键盘的连接方式通常有两种方式,其一为独立式,这么方式的接口电路配置比较灵活,软件的结构比较简单,但是每个按键必须占用一个I\口,当按键的数量比较多时,占用的I\数量比较大,所以在按键不多时采用这种方法;另一种方式为行列式,它用IO口线组成行、列结构,把按键设置在行列式的交点上,例如4*4的行列式结构可以组成16个键的键盘.因此按键的数量比较多时

39、可以采用这种方式.本设计的按键比较多,所以采用行列式布置按键,以便节省I\O。其布线如4.11所示。图4.11 4*3行列式的接线 第五章 小型壁面机器人的遥控器软件设计 5.1遥控器的软件设计 小型壁面机器人的微型控制芯片是单片机AT89S51,它常用的编程语言主要有四种:汇编、PL|M、C语言和Basic。在实习应用中,我们主要是用汇编语言和C语言。汇编比较通难学、难用,不容易编写出精简、有效率的单片机等距离;C语言相对来说,比较容易上手,而且它的可移植性比较强。本设计中我们采用C语言来编写程序。[14-19] 遥控器的主要等程序主要包含两方面的内容:一是对行列式键盘扫描的

40、程序、二是实现串行通信的程序。 壁面机器人的软件的设计可能用图5.1所示的流程图来表示其过程.首先是开机上电,单片机从程序存储器OX00处开始取址,初始化单片机.进入正常工作时,当扩展键盘有键按下时,通过按键扫描程序读出其键值.并确定其有效性,当确定完成后,便可以用串行通信程序来发送指令. 5.2 对行列式键盘扫描的程序 首先初始化8255,并将其工作方式设置为0,把 PA口作为输入,PB口作为输出,PC口作为输入, 然后调用按键扫描程序。[14] 行列式的工作原理:本设计的键盘采用的是行列式的键盘,它的PA中接行线,PB口接的是列线;

41、当PB口输出00H时,即把所有的列线置成低电平,此时只要有按键按下,便会使PA口的输入发生变化,借此找出按下的按键所在的行,然后从PB0口开始,依次输出0,置所在的列线为低电平,再从PA口读入行线的状态,由此便可确定按键的位置。 开机上电 89S51初始化 N 是否有键按下? Y N 调用去抖动程序 有键按下? Y 读取键值 N 无效键值报错 已知键值? Y Y 发送对应命令 N N Y 是否收到应答 超时报错

42、重发次数<4 图5-1 小型壁面机器人软件设计流程图 void Init_8255A (void) { A8255_COM=0x90; // 设置工作方式为0 A8255_C=0xff; // C口输出,使得灯全灭(0灯亮,1灯灭,0xff=11111111,0x代表十六进制) } 由于键盘采用的是机器弹性的开关来反应一个电压信号的开、合。由于机械触点的弹性的作用,在开合的瞬间会有抖动发生,由于这个原因,可能会引起按键的误操作;为了防止这种情况,我们在编写程序时用了防抖的措施:当按键按下时,执行一个10~20ms的软件程序,然后再检

43、测按键的开合状态。按键的扫描程序如下: Void Key_Scan (void) { static unchar data_scan_row[3]={0x06, 0x05, 0x03}; // 这三个数分别对应第上列,第二列和第三列被按下时B口的值即00000110,00000101,00000011 unchar i; unchar key; unchar key_A; unchar j=0; A8255_B=0x00; while (1) { if ((A8255_A&0x0f)!=0x0f) // 由于A3, A2, A1, A

44、0接的是行列式键盘的行,假如有键被按下时对应的值为零,这个语句是检验是否有键被按下,并能知道是那一行的键被按下 { Delay——20us(200); //延迟200us if ((A8255_A&0x0f)!=0x0f) //判断是否仍有键被按下,这一语句与上面一句是实现防抖功能 { for (i=0; i<3; i++) {A8255_B=key_scan_row [i]; // 循环程序,从第一行,第二行,到第三行检查是不是该行被按下 if ((A8

45、255_A&0x0f)!=0x0f) {key_A=(~(A8255_A&0x0f)) key=i*16+key_A; // 判断键值的大小 j+=1; } } if (j==1) // 判断所按下的键为这十二个键中的哪一个 key_val=key; else key_val=KEY_ERR; //如果不是就报错,所按的键没有效果 return; } } } } 取得键值后,再与表5.1中的键值相比较,并将对应的命令

46、格式发送出去。 指令 键值 格式 返回 描述 前进 0x11 “FW” “OK” 控制机器人前进 后退 0x12 “BW” “OK” 控制机器人后退 左转 0x01 “LF” “OK” 控制 机器人左转 右转 0x21 “RT” “OK” 控制 机器人右转 停止 0x22 “BR” “OK” 控制 机器人停止 查询 当前工作状态 0x02

47、 “SW” “CFXX” 00 停 止 01 前 进 12 后 退 查询 当前机器人的运行状态 查询 当前转弯状态 0x03 “ST” “CLXX” 00 直 行 01 左 转 12 右 转 查询 当前机器人的转弯状态 查询 当前轮转速 0x13 “SR” “CRXXYY” XX 轮一转速 YY 轮二转速 单位R/S 查询 当前机器人的轮转速 5.3串行通信的程序 在发送数据前,就对串行通信进行初始化;我们先用定时器T1作为波特率发生器,选其工作方式为2,

48、取得定时器的控制寄存器TMOD=20H,根据波特率计算定时器的初值公式如下: 公式中已知波特率=4800b\s,振荡频率=12MHZ,串行口控制寄存器SCON最高位SMOD=1,由此能求行定时器的初值TH1=F3H,设置串行口的工作方式为3,此时,它能发送一帧信息为11位,包括一位的起始位,8位的数据位,一位的奇偶检验位,最后一位是停止位。数据由TXD端输出,发送一帧的信息,CPU执行一条SBUF的指令如MOV SBUF ,A,就启动了发送的过程,发送完成后,就会发送中断标志T1,向CPU申请中断。[17] 串行端口初始化程序: void Init (void) { TM

49、OD=0x20; //设定定计时器1工作方式在方式2 TH1=0xf3; //设置定时器时间常数 TR1=1; //启动计时器1 SCON=0xD0; //设置控制寄存器的SCON, (即 D7 D6 D5 D4 D3 D2 D1 D0 SM0 SM1 SM2 REN TB8 RB8 TI RI 1 1 0 1 0 0 0 0 SM0 SM1= 11,串行口工作模式3 SM2=0,不论接收到的第9 位数据为1 还是为0,都将会把前8 位数据装入SBUF 中,并使接收中断标志RI 置位向CPU 申请中断。

50、REN=1允许接收TB8 =“0”表示主机发送的是数据,为“1”表示发送的是地址。RB8=0 接收到的第9 位数据TI=0发送中断标志,发送停止位的开始时置位,必须由软件清“0”RI=0(SCON.0):接收中断标志。接收到停止位的中间时置位,必须由软件清“0”。) PCON=0x80; //电源控制器(SMOD =1),波特率加倍。 遥控器的设备地址为0x02, 发送程序 void transmit (unchar key_val) { unchar command; unchar j=-1; //重复传送的次数 switch(key_val)

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服