智能化自寻迹程控车模外形及其控制系统设计_第1页
智能化自寻迹程控车模外形及其控制系统设计_第2页
智能化自寻迹程控车模外形及其控制系统设计_第3页
智能化自寻迹程控车模外形及其控制系统设计_第4页
智能化自寻迹程控车模外形及其控制系统设计_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要:本文介绍了利用红外反射式传感器实现小车自动寻迹导航的设计与实现。自动寻迹是基于自动导引小车(AGVauto-guided vehicle)机器人系统,用以实现小车自动识别路线,判断并自动规避障碍,以及选择正确的路线。实验中采用与地面颜色有较大差别的线条作引导,使用反射式红外传感器感知导引线和判断障碍物。系统控制核心采用 AT89S51 单片机,系统驱动采用控制方式为单向 PWM的直流电机。该技术可以应用于无人驾驶机动车,无人工厂、仓库、服务机器人等领域关键词:自动寻迹;红外传感器 ;单片机Abstrct:This article introduces the design and execution of auto-searching for track by usage of the reflected infrared sensor on the auto-guided car. The auto-searching for track is on the base of the AGV-auto-guided vehicle system. It makes the car discern the routs, judge and evade the obstacles automatically. So the car can choose the right routes. In the experiment we take use of the guiding wire whose color distinguishes from the background to guide the car and the inflected infrared sensor to discern the guiding wire and obstacles. The AT89S51 Single Chip Microcomputer is used for the control core in this system, and the one-way PWM direct current electromotor for the motive force or power system. This technology could serve to driverless mobile, robot factory, warehouse, service robot and etc.Key Word:Auto-searching for track; infrared sensor; Single Chip Microcomputer目 录引言.1第一章 设计方案论证.2第二章 外形设计.3 2.1 绘图软件的选择.32.2 设计方法分析.42.3 产品外观造型的三大美学因素 42.3.1 造型.42.3.2 颜色.52.3.4 材料与结构 5第三章 单片机介绍.6第四章 电机驱动及控制.204.1 H 型桥式驱动电路 204.2 PWM 控制.244.3 通过软件避免直通短路 254.4 小结.26第五章 单元电路的设计.275.1 黑带检测方案选择.275.2 传感器选择.285.3 红外反射式光电传感器特性与工件原理 295.4 具体设计与实现 305.4.1 硬件结构.315.4.2 电路原理.32第六章 操作说明 406.1 总结 40红外线接收程序.41英文科技文翻译.43参考文献.49致谢.50引言自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。随着科学技术的发展,机器人的感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的目标。视觉传感器的核心器件是摄像管或 CCD,目前的 CCD 已能做到自动聚焦。但 CCD 传感器的价格、体积和使用方式上并不占优势,因此在不要求清晰图像只需要粗略感觉的系统中考虑使用接近觉传感器是一种实用有效的方法。机器人要实现自动导引功能和避障功能就必须要感知导引线和障碍物,感知导引线相当给机器人一个视觉功能。自动寻迹是基于自动导引小车(AGVauto-guided vehicle)系统,实现小车自动识别路线,判断并自动规避障碍,选择正确的行进路线。采用与地面颜色有较大差别的线条作引导,使用传感器感知导引线和障碍判断第一章设计方案与论证采用 ATMEL 公司生产的 AT89S51 型单片机作为我们的控制单元,因为该型单片机价格便宜,功能比较强大,性价比高,而且在市场上很容易买到。通过红外传感器、电感式接触开关等器件来采集各类信息,送入主控单元单片机,处理数据后完成相应动作,以达到自身控制。其中寻迹(黑带检测)采用市面上通用的发射管及接收头,经过单片机调制后发射。铁片检测采用电感式接近开关LJ18A3-8- Z/BX 检测。此系统比较灵活,更重要的是采用软件方法来解决复杂的硬件电路部分,使系统硬件简洁化,各类功能易于实现,能很好地满足题目的要求。黑带寻迹采用红外线发射和接受原理。铁片检测采用电感式接近开关LJ18A3-8-Z/BX 检测,产生的高低电平信号经过处理后控制小车停转。此系统比较灵活,采用软件方法来解决复杂的硬件电路部分,使系统硬件简洁化,各类功能易于实现。第二章 外形设计图.1最终效果如图.1 所示。.1 绘图软件的选择我选用的是现在最流行的三维绘图软件 PRO/E,这是一个方位的 3D 产品开发软件,它集零件设计、产品装配、墨菊开发、NC 加工、钣金件设计、铸造件设计、造型设计、逆向工程、自动测量、机构模拟、压力分析、产品数据管理等功能于一体。其中工业设计模块(CAID)主要用于对产品进行几何设计。以前在零件未制造出来时,是无法观看零件的形状的,只能通过二维平面图形进行想象。现在,随着三维软件的出现,设计者可以在零件未制造出来之前,观看和评价零件的几何外形,现在,3ds max 软件可以生成实体模型,但用 3ds max 软件生成的模型在实际工程中是“中看不中用” 。用 PRO/E 软件生成的试题模型,不仅外观真实,而且相当实用,PRO/E 中文野火版中各阶段的的各个工作数据库的产生都要依赖与实体建模生成的数据。而该课题设计的遥控玩具汽车,又涉及到大量的曲面设计,而 PRO/E 正好有着强大的曲面设计功能,故在遥控玩具汽车外形设计这块,我主要是选用 PRO/E 来进行设计。2.2 设计方法分析设计准备:先得到扫描的数据库,将数据资料导入 Pro/ENGINEER 软件进行描线。制作结构外观设计时,首先根据产品需求,确定它的整体外观尺寸。设计内部结构时,需要考虑硬件尺寸,因为在外壳里面需要放置所有零件,例如定位 PCB的孔位、指示灯的位置,上下盖的固定位置等。然后在基础线上取面,拆分出各个零部件,拆分方式以 ID 的外形图为依据,若担心强度不足,可以通过在内部拉加强筋来解决,效果远远好过单一的增加壁厚。然后制作装配图,将拆分出的各个零部件按装配顺序分别引入,选择用参考中心重合的对齐方式,放入电子内部零件。将各个零件引入装配图时,应根据需要将有些零部件先做成一个组件,然后再把组件引入装配图。遥控玩具汽车外型设计总图复杂,用到的建模功能非常多,需要使用扫描特征、混合特征、延伸、拉伸曲面以及曲面合并等工具来实现2.3 产品外观造型的三大美学因素一件产品的美并不是由唯一的因素造成的,它会牵涉到造型、色彩、材质、结构等多方面的美学因素,以及受到独特的地区生活习惯,社会文化和流行特征的影响。我们很难用一套固定的模式,表达所有不同种类产品的造型美感,只能用以下的三大美学因素分类说明。2.3.1 造型造型就是外型,产品造型是否美观,总是客户第一眼看见的。所以,造型将是产品设计的核心而造型设计所需的基础几何技法有点、线、面、形状韵律、造型、模块、纹理、对称、平衡、统一、空间和体积。这是第一阶段的美学规律。而造型设计第二阶段所需的高级技法有对比、调和、渐变、质量和重点。 ,当然,还有一部分的造型美技法,需要我们在生活中的美学体验,以上的技法必须予以混合运用,才能达到良好的效果。2.3.2 颜色颜色就是色彩,它是构成产品形态的美的重要组成部分,而造型设计也需要熟悉色彩学。色彩的配置在产品造型设计中是非常重要的部分,有一些应用,如对比,调和等。对造型设计者而言,除了需要了解色彩的基本常识以外,我们还必须了解色彩心理学,这更加有助于设计时的配色参考重点。色彩的心理感受有以下几类,冷暖色感、轻重色感、软硬色感、前后色感、大小色感、华朴色感、活沉色感和燥静色感。基于我们这个设计是遥控玩具汽车,它的消费群体主要是广大的儿童,所以在它外型的颜色搭配上,我们应该更多地选用暖色调。而在配色时,针对它的消费群体的特殊性,配色的主题应该为动感,这种最鲜艳的色彩组合通常中央都有原色(黄色) 。黄色代表带给万物生机的太阳,活力和永恒的动感。当黄色加入白色后,它的光亮的特质就会增加,并产生出格外耀眼的全盘效果,动感色的应用:高度对比的配色设计,如黄色和它的补色紫色,就含有活力和行动的意味,尤其是出现在圆形的空间里面,身处于黄色或其它的任何一个明色的环境,几乎是不会感到沮丧的,这点很符合小朋友的心理。2.3.3 材料与结构商品的美感与构成它的材料、结构和质感是分不开的。由于本设计的材料比较明确,那就是塑料。所以在材料对造型美感的影响我们可以忽略。第三章 单片机介绍AT89S51 是美国 ATMEL 公司生产的低功耗,高性能 CMOS 8 位单片机,片内含4k bytes 的可系统编程的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准 8051 指令系统及弓脚。它集 Flash 程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用 8 位微处理器于单片芯片中,ATMEL 公司的功能强大,低价位 AT89S51 单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。主要性能参数:MCS-51 产品指令系统完全兼容4k 字节在系统编程(ISP)Flash 闪速存储器1000 次擦写周期 4. 0-5.5V 的工作电压范围全静态工作模式:OHz-33MHz三级程序加密锁128X8 字节内部 RAM32 个可编程 I/0 口线2 个 16 位定时/计数器6 个中断源全双工串行 UART 通道低功耗空闲和掉电模式中断可从空闲模唤醒系统看门狗(WDT)及双数据指针掉电标识和快速编程特性灵活的在系统编程(ISP 一字节或页写模式) 图 3.1功能特性概述:AT89S51 提供以下标准功能:4k 字竹 Flash 闪速存储器,128 字节内部 RAM, 32 个 I/O 口线,看门狗(WDT ),两个数据指针,两个 16 位定时/计数器,一个 5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89S51 可降至 OHz 的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止 CPU 的工作,但允许 RAM,定时/计数器,串行通信口及中断系统继续工作。掉电力式保存 RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。图 3.2逻辑门电路,对端口写1”可一作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低 8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 Flash 编程时,PO 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。Pl 口:P1 是一个带内部上拉电阻的 8 位双向 I/O 口,P1 的输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对端口写“1” ,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL),Flash 编程和程序校验期间,P1 接收低 8 位地址。表 3.1P2 口:P2 是一个带有内部上拉电组的 8 位双向 I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对端口写“1” ,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(I)。在访问外部程序存储器或 16 位地址的外部数据存储器(例如执行 MOVX DPTR指令)时,P2 口送出高 8 位地址数据。在访问 8 位地址的外部数据存储器(如执行MOVX Ri 指令)时,P2 口线上的内容(也即特殊功能寄存器(SFR)区中 P2 寄存器的内容),在整个访问期间小改变。Flash 编程或校验时,P2 亦接收高位地址和其它控制信号P3 口:P3 口是一组带有内部上拉电阻的 8 位双向 I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对 P3 口写“1”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的 P3 口将用上拉电阻输出电流(I)。P3 口除了作为一般的 I/0 口线外,更重要的用途是它的第二功能,如下表所示:P3 口还接收一此用于 Flash 闪速存储器编程和程序校验的控制信号。表 3.2RST:复位输入。当振荡器工作时,RST 引脚出现两个机器周期以上高电平将使单片机复位。WDT 溢出将使该引脚输出高电平,设置 SFR AUXR 的 DISRTO 位(地址8EH )可打开或关闭该功能。DISRTO 位缺省为 RESET 输出高电平打开状态。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低 8 位字节。即使不访问外部存储器,ALE 仍以时钟振荡频率的 1/6 输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个 ALE 脉冲。对 Flash 存储器编程期间,该引脚还用于输入编程脉冲(PROG )如有必要,可通过对特殊功能寄存器(SFR)的 8FH 单元的 DO 位置位,可禁止 ALE 操作。该位置位后,只有一条 MOVX 和 MOVC 指令 ALE 才会被激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置 ALE 无效。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当 AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次 PSEN 有效,即输出两个脉冲。当访问外部数据存储器,没有两次有效的 PSET 信号。EA/VPP:外部访问允许。欲使 CPU 仅访问外部程序存储器(地址为 OOOOH-FFFFH ) , EA 端必须保持低电平(接地)。需注意的是: 如果加密位 LB1 被编程,复位时内部会锁存 EA 端状态 如 EA 端为高电平(接 Vcc 端),CPU 则执行内部程序存储器中的指令。Flash 存储器编程时,该引脚加上+12V 的编程电压 Vpp。XTAL1:振荡器反相放人器及内部时钟发生器的输入端。XTAL2:振荡器反相放人器的输出端特殊功能寄存器:特殊功能寄存器的于片内的空间分布如表 3.3 所示 这此地址并没有全部占用,没有占用的地址亦小可使用,读这此地址将得到一个随意的数值。而写这此地址单元将不能得到预期的结果。表 3.3 AT89S51 特殊功能寄存器分布图及复位值表 3.3不要软件访问这些未定义的单元,这些单元是留作以后产品扩展用途的,复位后这此新的位将为 0。中断寄存器:各中断允许控制位于 IE 寄存器,5 个中断源的中断优先级控制位于 IP 寄存器。表 3.4 AUXR 辅助寄存器表 3.4双时钟指针寄存器:为更方便地访问内部和外部数据存储器,提供了两个 16位数据指针寄存器:DPO 位于 SFR(特殊功能寄存器)区块中的地址 82H, 83H 和 DPl位于地址 84H, 85H, 当 SFR 中的位 DPS=0 选择 DPO,而 DPS=1 则选择 DPlo 用户应在访问相应的数据指针寄存器前初始化 DPS 位。表 3.5电源空闲标志:电源空闲标志(POF)在特殊功能寄存器 SFR 中 PCON 的第 4 位(PCON. 4 ),电源打开时 POF 置“1” ,它可山软件设置睡眠状态并不为复位所影响。存储器结构:MCS-51 单片机内核采用程序存储器和数据存储器空间分开的结构,均具有 64KB 外部程序和数据的寻址空间。程序存储器:如果 EA 引脚接地(GND ),全部程序均执行外部存储器在AT89S51,假如 EA 接至 Vcc(电源+),程序首先执行地址从 OOOOH-OFFFH (4KB)内部程序存储器,再执行地址为 1000H-FFFFH (60KB)的外部程序存储器。数据存储器:AT89S51 的具有 128 字节的内部 RAM,这 128 字节可利用直接或间接寻址方式访问,堆栈操作可利用间接寻址方式进行,128 字节均可设置为堆栈区空间。看门狗定时器(WDT ):WDT 是为了解决 CPU 程序运行时可能进入混乱或死循环而设置,它山一个 14bit 计数器和看门狗复位 SFR (WDTRST)构成。外部复位时,WDT 默认为关闭状态,要打开 WDT,用户必须按顺序将 O1EH 和 OE1H 写到 WDTRST寄存器(SFR 地址为 0A6H ) ,当启动了 WDT,它会随晶体振荡器在每个机器周期计数,除硬件复位或 WDT 溢出复位外没有其它力法关闭 WDT,当 WDT 溢出,将使 RST引脚输出高电平的复位脉冲使用看门狗(WDT ):打开 WDT 需按次序写 O1EH 和 OE1H 到 WDTRST 寄存器(SFR的地址为 OA6H ),当 WDT 打开后,需在一定的时候写 O1EH 和 OE1H 到 WDTRST 寄存器以避免 WDT 计数溢出。14 位 WDT 计数器计数达到 16383 (3FFFH), WDT 将溢出并使器件复位。WDT 打开时,它会随晶体振荡器在每个机器周期计数,这意味着用户必须在小于每个 16383 机器周期内复位 WDT,也即写 O1EH 和 OE1H 到 WDTRST寄存器,WDTRST 为只写寄存器 o WDT 计数器既不可读也不可写,当 WDT 溢出时,通常将使 RST 引脚输出高电平的复位脉冲。复位脉冲持续时间为 98xTOSC,而TOSC=1/FOSC(晶体振荡频率)为使 WDT 工作最优化,必须在合适的程序代码时间段周期地复位 WDT 防止 WDT 溢出。掉电和空闲状态时的 WDT:掉电时期,晶体振荡停止, WDT 也停止。掉电模式下,用户不能再复位 WDT。有两种方法可退出掉电模式:硬件复位或通过激活外部中断。当硬件复位退出掉电模式时,处理 WDT 可通常的上电复位一样。当由中断退出掉电模式则有所不同,中断低电平状态持续到晶体振荡稳定,当中断电平变为高即响应中断服务。为防止中断误复位,当器件复位,中断引脚持续为低时,WDT 并未开始计数,直到中断引脚被拉高为止。这为在掉电模式下的中断执行中断服务程序而设置为保证 WDT 在退出掉电模式时极端情况下溢出,最好在进入掉电模式前复位 WDT 在进入空闲模式前,WDT 打开时,WDT 是否继续计数由 SFR 中的AUXR 的 WDIDLE 位决定,在 IDLE 期间(位 WDIDLE=0)默认状态是继续计数。为防止AT89S51 从空闲模式中复位,用户应周期性地设置定时器,重新进入空闲模式。当位 WDIDLE 被置位,在空闲模式中 WDT 将停止计数,直到从空闲(IDLE)模式中退出重新开始计数UAR7,一通用异步通信:AT89S51 的 DART 操作与 AT89C51 一样,有关更详细的资料请参考 ATMEL 公司的网站(),从主页选择“Products8051-Architecture Flash MicrocontrollerProduct Overview定时器 0 和定时器 1:AT89S51 的定时器 0 和定时器 1 操作与 AT89C51 一样,有关更详细的资料请参考 ATMEL 公司的网站(),从主页选择“Products8051-Architecture Flash MicrocontrollerProduct Overview。中断:AT89S51 共有 5 个中断向量: 2 个外中断(INTO 和 INT1),2 个定时中断(TimerO 和 Timer1)和一个串行中断。这些中断如图 1。这些中断源各自的禁止和使能位参见特殊功能寄存器的 IE。 IE 也包含总中断控制位 EA, EA 清 0,将关闭所有中断。值得注意的是表 4 中的 IE.6 和 IE.5 没有定义,用户不要访问这些位,它是保留为以后的 AT89 产品作扩展用途定时器 0 和定时器 1 的中断标志TFO 和 TF1,它是定时器溢出时的 S5P2 时序周期被置位,该标志保留至下个时序周期。表 3.6:中断控制寄存器表 3.6图 3.3 中断源方框图图 3.3 品体振荡器特性:AT89S51 中有一个用于构成内部振荡器的高增益反相放大器,引脚 XTAL1 和XTAL2 分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路参见图 5 外接石英晶体(或陶瓷谐振器)及电容 C1, C2 接在放大器的反馈回路中构成并联振荡电路。对外接电容 C1, C2 虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性。如果使用石英晶体,我们推荐电容使用 30pF 士 10pF,而如使用陶瓷谐振器建议选择 40pF 士 lOpF。用户也可以采用外部时钟。采用外部时钟的电路如图 5 右图所示。这种情况下,外部时钟脉冲接到 XTAL1 端,即内部时钟,发生器的输入端,XTAL2 则悬空。由于外部时钟信号是通过一个 2 分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。图 3.4 晶体接线图和外接时钟线路图图 3.4空闲节电模式:在空闲工作模式状态,CPU 保持睡眠状态而所有片内的外设仍保持激活状态,这种方式由软件产生。此时片内 RAM 和所有特殊功能寄存器的内容保持不变。空闲模式可由任何允许的中断请求或硬件复位终止。需要注意的是,当硬件复位来终止空闲工作模式时,CPU 通常是从激活空闲模式那条指令的下一条指令开始继续执行程序的,要完成内部复位操作,硬件复位脉冲要保持两个机器周期(24 个时钟周期)有效,在这种情况下,内部禁止 CPU 访问片内 RAM,而允许访问其它端口。为了避免在复位结束时可能对端口产生意外写入,激活空闲模式的那条指令后一条指令不应是一条对端口或外部存储器的写入指令。掉电模式: 在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内 RAM 和特殊功能寄存器的内容在终止掉电模式前被冻结。退出掉电模式的方法是硬件复位或山处于使能状态的外中断 INTO 和 INT1 激活。复位后将重新定义全部特殊功能寄存器但不改变 RAM 中的内容,在 Vcc 恢复到正常工作电平前,复位应无效,且必须保持一定时间以使振荡器重启动并稳定工作。表 3.7 空闲和掉电期间外部引脚状态表 3.7程序存储器的加密:AT89S51 可使用对芯片上的 3 个加密位 LB1, LB2, LB3进行编程(P 或不编程(U)来得到如下表所示的功能:注:表中的 U表示未编程,P表示编程表 3.8当加密位 LB1 被编程时,在复位期间,EA 端的逻辑电平被采样并锁存,如果单片机上电后一直没有复位,则锁存起的初始值是一个随机数,且这个随机数会一直保存到真正复位为止。为使单片机能正常工作,被锁存的 EA 电平值必须与该引脚当前的逻辑电平一致。此外,加密位只能通过整片擦除的方法清除。Flash 闪速存储器的并行编程:AT89S51 单片机内部有 4k 字节的可快速编程的 Flash 存储阵列。编程方法可通过传统的 EPROM 编程器使用高电压(+12V)和协调的控制信号进行编程 AT89S51 的代码是逐一字节进行编程的。编程方法:编程前,须按编程模式表所示设置好地址、数据及控制信号,AT89S51 编程方法如下:1.在地址线上加上要编程单元的地址信号。2.在数据线上加上要写入的数据字节。3.激活相应的控制信号。4.将 EA/Vpp 端加上+12V 编程电压。5.每对 Flash 存储阵列写入一个字节或每写入一个程序加密位,加上一个ALE/PROG 编程脉冲。每个字节写入周期是自身定时的,人多数约为 50us。改变编程单元的地址和写入的数据,重复 1-5 步骤,直到全部文件编程结束。数据查询:AT89S51 单片机用数据查询方式来检测一个写周期是否结束,在一个写周期中,如需读取最后写入的那个字节,则读出的数据的最高位(P0.7)是原来写入字节最高位的反码。写周期完成后,有效的数据就会出现在所有输出端上,此时,可进入下一个字节的写周期,写周期开始后,可在任意时刻进行数据查询。 Ready/Busy:字节编程的进度可通过“RDY/BSY 输出信号监测,编程期间,ALE 变为高电平“H”后 P3.0 端电平被拉低,表示正在编程状态(忙状态)。编程完成后,P3.0 变为高电平表示准备就绪状态。程序校验:如果加密位 LB1, LB2 没有进行编程,则代码数据可通过地址和数据线读回原编写的数据,各加密位也可通过直接回读进行校验。读片内签名字节: AT89S51 单片机内有 3 个签名字节,地址为 OOOH, 100H和 200H。用于声明该器件的厂商和型号等信息,读签名字节的过程和正常校验相仿,只需将 P3.6 和 P3.7 保持低电平,返回值意义如下:(OOOH) =1EH 声明产品由 ATMEL 公司制造(100H) =51H 声明为 AT89S51 单片机(200H) =06H芯片擦除:在并行编程模式,利用控制信号的正确组合并保持 ALE/PROG 引脚 200ns-500ns 的低电平脉冲宽度即可完成擦除操作。在串行编程模式,芯片擦除操作是利用擦除指令进行。在这种力式,擦除周期是自身定时的,人约为500ms 擦除期间,用串行方式读任何地址数据,返回值均为 OOH。Flash 闪速存储器的串行编程:将 RST 接至 Vcc,程序代码存储阵列可通过串行 ISP 接口进行编程,串行接口包含 SCK 线、MOSI(输入)和 MISO 输出)线。将RST 拉高后,在其它操作前必须发出编程使能指令,编程前需将芯片擦除。芯片擦除则将存储代码阵列全写为 FFH 外部系统时钟信号需接至 XTAL1 端或在 XTAL1和 XTAL2 接上晶体振荡器。最高的串行时钟(SCK)不超过 1/16 晶体时钟,当晶体为33MHz 时,最大 SCK 频率为 2MHz。第四章 电机驱动及控制一个电动小车整体的运行性能,首 先取决于它的电池系统和电机驱动系统。电动小车的驱动系统一般由控制器、功率变换器及电动机三个主要部分组成。 电动小车的驱动不但要求电机驱动系统 具有高转矩重量比、宽调速范围、高可靠 性,而且电机的转矩 -转速特性受电源功 率的影响,这就要求驱动具有尽可能宽 的高效率区。我们所使用的电机一般为 直流电机,主要用到永磁直流电机、伺服 电机及步进电机三种。直流电机的控制 很简单,性能出众,直流电源也容易实 现。这里主要介绍这种直流电机的驱 动及控制。4.1H 型桥式驱动电路 直流电机驱动电路使用最广泛的就 是 H 型全桥式电路,这种驱动电路可以 很方便实现直流电机的四象限运行,分 别对应正转、正转制动、反转、反转制动。 它的基本原理图如图 4.1 所示。全桥式驱动电路的 4 只开关管都工 作在斩波状态,S1、S2 为一组,S3、S4 为另一组,两组的状态互补,一组导通则 另一组必须关断。当 S1、S2 导通时,S3、 S4 关断,电机两端加正向电压,可以实 现电机的正转或反转制动;当S3、S4 导 通时,S1、S2 关断,电机两端为反向电 压,电机反转或正转制动。图 4.1在小车动作的过程中,我们要不断 地使电机在四个象限之间切换,即在正 转和反转之间切换,也就是在 S1、S2 导 通且 S3、S4 关断,到 S1、S2 关断且S3、 S4 导通,这两种状态之间转换。在这种 情况下,理论上要求两组控制信号完全 互补,但是,由于实际的开关器件都存在 开通和关断时间,绝对的互补控制逻辑 必然导致上下桥臂直通短路,比如在上 桥臂关断的过程中,下桥臂导通了。这个过程可用图 4.2 说明。图 4.2因此,为了避免直通 短路且保证各个开关管动作之间的协同 性和同步性,两组控制信号在理论上要 求互为倒相的逻辑关系,而实际上却必须相差一个足够的死区时间,这个矫正过程既可以通过硬件实现,即在上下桥 臂的两组控制信号之间增加延时,也可 以通过软件实现(具体方法参看后文)。驱动电流不仅可以通过主开关管流通,而且还可以通过续流二极管流通。当电机处于制动状态时,电机便工作在发电状态,转子电流必须通过续流二极管流通,否则电机就会发热,严重时烧毁。开关管的选择对驱动电路的影响很大,开关管的选择宜遵循以下原则:(1)由于驱动电路是功率输出,要求开关管输出功率较大;(2)开关管的开通 和关断时间应尽可能小;(3)小车使用的电源电压不高,因此开关管的饱和压降应该尽量低。在实际制作中,我们选用大功率达林顿管 TIP122 或场效应管 IRF530,效果都还不错,为了使电路简化,建议使用集成有桥式电路的电机专用驱动芯片,如L298、LMD18200,性能比较稳定可靠。由于电机在正常工作时对电源的干扰很大,如果只用一组电源时会影响单片机的正常工作,所以我们选用双电源供电。一组 5V 给单片机和控制电路供电, 另外一组 9V 给电机供电。在控制部分和电机驱动部分之间用光耦隔开,以免影响控制部分电源的品质,并在达林顿管的基极加三极管驱动,可以给达林顿管提供足 够大的基极电流。图 4.3 所示为采用 TIP122 的驱动电机电路,IOB8 口为“0”,IOB9 口输入 PWM 波时,电机正转,通过 改变 PWM 的占空比可以调节电机的速度。而当 IOB9 口为“0”,IOB8 口输入 PWM 波时,电机反转,同样通过改变 PWM 的占空比来调节电机的速度。图 4.3图 4.4 为采用内部集成有两个桥式电 路的专用芯片 L298 所组成的电机驱动电路。驱动芯片 L298 是驱动二相和四相步进电机的专用芯片,我们利用它内部的 桥式电路来驱动直流电机,这种方法有一系列的优点。每一组 PWM 波用来控制一个电机的速度,而另外两个 I/O 口可以控制电机的正反转,控制比较简单,电路 也很简单,一个芯片内包含有 8 个功率管,这样简化了电路的复杂性,如图所示 IOB10、IOB11 控制第一个电机的方向,IOB8 输入的 PWM 控制第一个 电机的速度;IOB12、IOB13 控制第二个电机的方向,IOB9 输入的 PWM 控制第二个电机的速度。图 4.4LMD18200 是美国国家半导体公司推出的专用于直流电动机驱动的 H 桥组件,同一芯片上集成有 CMOS 控制电路和 DMOS 功率器件。此种芯片瞬间驱动电 流可达 6A,正常工作电流可达 3A,具有很强的驱动能力,无“shot-through”电流,而且此种芯片内部还具有过流保护的测量电路,只需要在 LMD18200 的 8 脚输出端测出电压和给定的电压比较即可保护电路过流,从而实现电路的过流保护功能。由 LMD18200 组成的电机驱动电路如图 5 所 示。LMD18200 的 5 脚为 PWM 波输入端,通过改变 PWM 的占空比就可调节电机的速度,改变 3 脚的高低电平即可控制电机的正反转。此电路和以上几种驱动电路比较具有明显的优点,驱动功率 大,稳定性好,实现方便,安全可靠。图 4.54.2P W M 控制 PWM(脉冲宽度调制)控制,通常 配合桥式驱动电路实现直流电机调速, 非常简单,且调速范围大,它的原理就 是直流斩波原理。如图 1 所示,若S3、S4 关断,S1、S2 受 PWM 控制,假设高电平 导通,忽略开关管损耗,则在一个周期 内的导通时间为 t,周期为 T,波形如图 4.6,则电机两端的平均电压为:U=Vcc t/ T=Vcc ,其中,=t/T 称为占空比,Vcc 为电源电压(电源电压减去两个开关 管的饱和压降)。图 4.6电机的转速与电机两端的电压成比例,而电机两端的电压与控制波形的占空比成正比,因此电机的速度与占空比成比例,占空比越大,电机转得越快,当占空比 1 时,电机转速最大。PWM 控制波形的实现可以通过模拟 电路或数字电路实现,例如用 555 搭成的触发电路,但是,这种电路的占空比不能自动调节,不能用于自动控制小车的调 速。而目前使用的大多数单片机都可以直接输出这种 PWM 波形,或通过时序模拟输出,最适合小车的调速。我们使用的是 ATMEL 公司的 AT89S51 单片机,它是 16 位单片机,频率最高达到 49MHz,可提供 2 路 PWM 直接输出,频率可调,占空比 16 级可调,控制电机的调速范围大,使用方便。SPCE061 单片机有 32 个 I/O口, 内部设有 2 个独立的计数器,完全可以模拟任意频率、占空比随意调节的PWM 信号输出,用以控制电机调速。在实际制作过程中,我们认为控制信号的频率不需要太高,一般在 400Hz 以下为宜,占空比 16 级调节也完全可以满足调速要求,并且在小车行进的过程中,占 空比不应该太高,在直线前进和转弯 的时候应该区别对待。若车速太快,则在 转弯的时候,方向不易控制;而车速太慢,则很浪费时间。这时图 6 可以根据具体情况慢慢调节。在 2003 年“简易智能电动车”的实际制作中,我们的小车驱动 信号的占空比一般在 8/16 以下。4.3 通过软件避免直通短路 从前面的分析可知,桥式驱动电路中,由于开关管有开通和关断时间,因此存在上下桥臂直通 短路的问题。直通短路的存在,容易使开关管发热,严重时烧毁开关管,同时也增加了开关管的能量损耗,浪费了小车宝贵的能量。由于现在的许多集成驱动芯片内 部已经内置了死区保护(如 LMD18200),这里主要介绍的是利用开关管等分立元件以及没有死区保护的集成芯片制作驱动电路时增加死区的方法。死区时间的问题,只有在正转变为反转的时候才存在,而在正转启动或反转启动的时候并没有,因此不需要修正。如果开关 管的开通和关断时间非常小,或者在硬件电路中增加延时环节,都可以降低开关管的损耗和发热。当然,通过软件避免直通短路是最好的办法,它的操作简单,控制 灵活。通过软件实现死区时间,就是在突然换向的时候,插入一个延时的环节,待开关管关断之后,再开通应该开通的开关管。图 2.1 为利用软件修正死区时间的流程 图,在开关管每次换向的时候,不立即进行方向的切换,而是先使开关管关断一段时间,使其完全关断后再换向打开另外的开关管。这个关断时间由单片机软件延时 实现。 图 4.74.4 小结 以上主要分析了电机的全桥式驱动电路,这是直流电机调速使用最多的调速方法。目前市场上 有很多种电机驱动的集成电路,效率高,电路简单,使用也比较广泛,但是其驱动方法大多与全桥式驱动一样。PWM 控制方法配合桥式驱动电路,是目前直流电机 调速最普遍的方法。第五章 单元电路的设计5.1 黑带检测方案选择方案一:采用发光二极管发光,用光敏二极管接收。当发光二极管发出的可见光照射到黑带时,光线被黑带吸收,光敏二极管为检测到信号,呈高阻抗,使输出端为低电平。当发光二极管发出的可见光照射到地面时,它发出的可见光反射回来被光敏二极管检测到,其阻抗迅速降低,此时输出端为高电平。但是由于光敏二极管受环境中可见光影响较大,电路的稳定性很差。方案二:采用光敏电阻接受可见光检测。该电路采用 T 性网络,可避免使用太大的反馈电阻,并且便于提高输入阻抗。六组光敏电阻用于检测可见光信号。但光敏电阻检测到黑带时,输出端为低电平,但用光是电路输出端显示为高电平,信号返回给单片机,通过单片机控制前轮的转向。但由于需要正负电源,同时光敏电阻易受环境影响,稳定性也很差。图 3 光敏电阻检测黑带方案三:利用红外线发射管发射红外线,红外线二极管进行接收。采用六组红外光敏耦合三极管发射和接受红外信号,外面可见光对接收信号的影响较小,再用射极输出器对信号进行隔离。接收的红外信号转换为电压信号经 LM339 进行比较,产生高电平或低电平返回给 AT89S51。LM339 集成块采用 C-14 型封装,图为其外型及管脚排列图。LM339 类似于增益不可调的运算放大器。每个比较器有两个输入端和一个输出端。两个输入端一个称为同相输入端,用“+”表示,另一个称为反相输入端,用“-”表示。用作比较两个电压时,任意一个输入端加一个固定电压做参考电压(也称为门限电平,它可选择 LM339 输入共模范围的任何一点),另一端加一个待比较的信号电压。当“+”端电压高于“-”端时,输出管截止,相当于输出端开路。当 “-”端电压高于“+”端时,输出管饱和,相当于输出端接低电位。两个输入端电压差别大于 10mV 就能确保输出能从一种状态可靠地转换到另一种状态,把 LM339用在弱信号检测等场合是比较理想的。LM339 的输出端相当于一只不接集电极电阻的晶体三极管,在使用时输出端到正电源一般须接一只上拉电阻。输入信号Uin,即待比较电压,它加到同相输入端,在反相输入端接一个参考电压(门限电平)Ur。当输入电压 Uin>Ur 时,输出为高电平 UOH。本方案经济实惠,易于实现,可靠性好,因此采用方案三。黑带检测电路图如图 2.2 所示。输出信号进入 LM339。稳定性能得到提升。当小车低部的某边红外线收发对管遇到黑带时输入电平为低电平,反之为高电平。结合中断查询方式,通过程序控制小车往哪个方向行走。图 5.1LM339 外型及管脚排列图5.2 传感器选择实现机器人的视觉和接近觉功能有多种方式:1)可使用 CCD 摄像头进行图象采集和识别方法,但是不适用在小体积系统使用,并且还涉及图象采集、图象识别等领域。2)电容式接近传感器,基于检测对象表面靠近传感元件时的电容变化。3)超声波传感器,根据波从发射到接收的传播过程中所受到的影响来检测物体的接近程度。4)红外反射式光电传感器,它包括一个可以发射红外光的固态发光二极管和一个用作接收器的固态光敏二极管(或光敏三极管)。根据使用场合的具体情况,传感器要感知的对象是物体的有无和物体的接近程度,与精确的测距系统有相似之处,但又有不同,只要求判断出简单的阈值或提供远、近分档的距离。因此使用较简单的接近传感器实现小车寻迹和避障是有依据可循的并且是可行的。为了简单起见,系统中使用了八个红外反射式光电传感器,其中三个用于寻迹,三个用于障碍判断,两个用于主动轮测速。自单片机问世以来,的确给人们的生产,生活带来很大方便,现如今的智能化时代,由单片机派生出的各类程序控制器也应接不暇。为此,我采用微型可编程控制器 PROG-110 设计并制作了此自寻迹程控车。该实验车是基于闭环控制原理设计制作的,它能够检测并且跟踪已有的轨迹(指白色亮线) ,达到自动寻迹目的。产品还具有音乐、闪光、讯响等多种功能,是集机械、电子、编程和娱乐于一体的智能玩具车模。5.3 红外反射式光电传感器特性与工作原理反射式光电传感器的光源有多种,常用的有红外发光二极管,普通发光二极管,以及激光二极管,前两种光源容易受到外界光源的干扰,而激光二极管发出的光的频率较集中,传感器只接收很窄的频率范围信号,不容易被干扰但价格较贵。理论上光电传感器只要位于被测区域反射表面可受到光源照射同时又能被接收管接收到的范围就能进行检测,然而这是一种理想的结果。因为光的反射受到多种因素的影响,如反射表面的形状、颜色、光洁度,日光、日光灯照射等不确定因素。如果直接用发射和接收管进行测量将因为干扰产生错误信号,采用对反射光强进行测量的方法可以提高系统的可靠性和准确性。红外反射光强法的测量原理是将发射信号经调制后送红外管发射,光敏管接收调制的红外信号,原理如图 2.3 所示。vout反 4射表面 x/mmx 10 红外发射接收原理 光强度相应曲线图 5.2反射光强度的输出信号电压 Vout 是反射面与传感器之间距离 x 的函数,设反射面物质为同种物质时,x 与 Vout 的响应曲线是非线性的,如图 2.3 所示。设定输出电压达到某一阈值时作为目标,不同的目标距离阈值电压是不同的。5.4 具体设计与实现接近觉传感器应用场合不同选择不同,感觉的距离范围不同,可从几毫米到几米。对于自动寻迹和小车轮子的测速传感器,反射距离都在cm 左右,探测环境都在阴影之下,不易受到日光的干扰。因此,这两种探测的传感器都选用 FS-359F 反射红外传感器,048W 型封装。该封装形状规则,便于安装。对于障碍物的检测,可以使用超声波传感器,效果也较好,但电路系统庞大,还需占用大量MCU 时间。 上文的激光传感器虽然性能不错,但价格较贵。从需要 510cm 垂直探测距离的要求来看,普通的红外反射式传感器又很难胜任。在对个型号的传感器测试后,选用了价格、性能基本适合的 043W 封装的反射红外传感器。在使用约40A 的发射电流,没有强烈日光干扰(在有日光灯的房间里)探测距离能达cm,完全能满足探测距离要求。红外传感器的电路有多种形式,在这里为了安装调试方便,我们采用了图 2.4 的电路形式发 射接收电路 图 5.3 红外光电传感器传感器的使用数量应该尽量少以减少单片机的信号处理量,寻迹小车一共安装有八个红外光电传感器,选用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论