自动搬运机器人控制系统的设计说明书.doc_第1页
自动搬运机器人控制系统的设计说明书.doc_第2页
自动搬运机器人控制系统的设计说明书.doc_第3页
自动搬运机器人控制系统的设计说明书.doc_第4页
自动搬运机器人控制系统的设计说明书.doc_第5页
免费预览已结束,剩余45页可下载查看

下载本文档

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

文档简介

1 自动搬运机器人控制系统的设计自动搬运机器人控制系统的设计 摘 要 实现一种基于为核心控制器用于比赛的自动搬运机器人控制系统的设计 系统主要包括两个部分 一是被控制部分 主要是系统物理组成形式 包括摆架构成 传 感器与电机的安装 二是控制部分 主要是选择用于控制被控对象的微处理器类型以及软 件的控制规律 关键词 搬运机器人 ATmega128 单片机 设计 控制系统 The Design of the Automatically Handling Robot Control System Abstract For the game auto handling robot control system design based on the ATmega128 MCU as the core controller System mainly consists of two parts First be part of the control system the physical composition of placed architecture into the sensor and motor installation control section choose the type of microprocessor used to control the controlled object as well as the software of the control law Key Words Handling robot ATmega128 MCU Design Control system 1 前言 机器人学是近 40 年来发展起来的一们交叉性学科 它涉及电子学 计算机 科学 控制理论 传感器技术 机械学 仿生学 人工只能等学科领域 目前 工业机器人与其他设备组成的生产线极大地提高了企业的生产率 提高和稳定 2 了产品质量 大大缩短了产品更新换代的周期 机器人的出现和发展已使传统 工业生产的面貌发生了根本性变化 使人类的生产方式从手工作业 机械化 自动化到智能化的新时代 1 机器人竞赛是一项学科高度交叉 技术层次较高 充分锻炼参与者动手动 脑能力和团队协作精神的科技活动 同时也是基础研究的一个大舞台 竞赛机 器人涉及人工智能 机器人学 通信 传感 精密机械和仿生材料等诸多领域 的前沿研究和技术集成 实际上是人类高智能技术之间的对抗赛 我国改革开放及加入世界贸易组织以来 已成为世界产品的制造中心 为 了不断推出新产品及提高产品的性能 国家把机电一体化技术作为了关键发展 战略 其中机器人技术成为该项战略的一个重点 站在科技前沿的高校 利所 应当要根据国家的发鏖战战略及社会的需求 把培养具备创新能力的机电技术 人才作为了工作重点 中央电视台也应形势专门成立了全国高校大学生自制机 器人比赛组委会 并将其制成了金牌节目 在中央七套 十套滚动播出 该项 赛事也成为了全国有实力的工科院校同场竞技及交流的重要场所 参赛学校为 此成立了专门的竞赛知道领导小组及创新研发基地 而成功参加该项赛事不但 大大提高了学校的知名度 更重要的是为国家及社会培养了大批理论扎实 动 手能力强 具备创新思维的高素质工程技术人才 2 比赛规则介绍 2 1 场地介绍 该场地是由一个尺寸面积为12000mm 12000mm毫米的被高100mm 厚50mm木 栅栏围成的区域 比赛场由一个高度为100mm米 50mm厚度的栅栏队均分两队 参赛队伍有红色和蓝队 在比赛区 用30毫宽度米的有光泽的贴纸贴在了非白线绘制在地板上 比赛区域由一个普通区 一个组装点 一个流域地表 启动区 制备点和 储存点构成 共同区是一个用浅绿色画出的长为3500毫米 宽为500mm的矩形区域 六根 柱子位于共同开发区中间 放置敬香壶 两根柱子之间的距离是500mm 每队最 多可领取9个元宝蜡烛来组装水灯 组装点是一个高度为300mm 阔度为4000mm和长度5000 mm的平台 它被平 均分为红色和蓝色队伍 每个部分有一个装饰点 它是一个直径为510mm 周围 有高10mm 厚度为10mm的高度木栅栏围绕的圆形 为了方便移动自动机器人 3 组装点两侧每侧都有一个长度为1000毫米的斜坡 河面位于组装点的中间 它可以在有下落物下落时摇摆水灯 河面是一个木制的 厚度为4mm 宽度700mm 长度为2400 mm平台 它是一 个280毫米的从组装点到较低水平的缓冲区 该平台的表面由不锈钢的四线直径 为1 5毫米 长度为350毫米构成的 所有部件和机制 形成流域地表的视为流 域地表 他们不能被锁定 也不能被任何机器人所接触 河岸是由高度为180毫米和厚度为10毫米的木栅栏构成的 有4双方围绕流 域地表 在河边可用油漆或装饰来代表水或河流 每队有3个启动区 2自动启动区和一个手动启动区 每个启动区是一个边 长为1000毫米边长的正方形 红队启动区为红色区 蓝队启动区为蓝色区 储存点和准备区是由 木材 钢材 金属构成 用来存储一些竞赛的工具 每个存储点和制备点包括两部分 下游和上游部分 较低的部分是一个直径为100mm和高为800mm的圆柱体 上层部分总高度为 100mm 顶部在上段部分圆锥形直径从 40mm至60mm 最高的位置的测量值为 60mm 在距离顶部为30mm的位置测量值为40mm 在上层区域底部分有一个直径 为60mm的圆柱形状 然而 每个火焰的蜡烛光储存点极科只有一 个直径为 60mm 高度为35mm的圆柱体 图1 比赛场地 Figure1 Venue 2 2 大赛工具及水灯规则 蜡烛基地 水灯花瓣 花 元宝蜡烛 敬香花盆 蜡烛点亮火焰在比赛中 使用的是由组织者提供 一个蜡烛基地重量约为800克 水灯的一个花瓣的重量 4 约为250克 一花的重量约250克 一个敬香的重量约为100克 在烛光火焰的重 量约为200克 蜡烛基的上表面 水灯的花瓣 花或盆栽的敬香是由橡胶 塑料或纸板上 剪了一个厚度为3毫米甜甜圈形状 表面上的颜色是粉色是红队的 天蓝色是蓝 队的 较低的水灯花瓣 花或盆栽的敬香是由橡胶 塑料或纸板上剪了一个厚度 为3毫米甜甜圈形状 表面上的颜色是粉色是红队的 天蓝色是蓝队的 水灯由一个蜡烛基地 一水灯花瓣和花构成 对每一个细节部分解释如下 蜡烛的基础包括四个部分 1 基本是木质或塑料为4毫米的圆形切割厚度形成一个500毫米直径 2 圆柱泡沫与基地粘有一个内径70毫米和1500毫米 外径100毫米的高度 3 上 表面覆盖了圆柱泡沫顶部 4 蜡烛固定在基地是一个中空的塑料或木管作出的 一测量高度503毫米从基地和一个60毫米直径 顶级的蜡烛都有一个圆板用橡胶 木材 塑料 或硬纸板做成4mm厚半黑半白的 底端的蜡烛插进一个外径70毫米 高 度70毫米厚度5mm的塑料帽子 帽子是由螺钉固定在基地 莲花灯是由一个圆柱形泡沫内部直径76毫米与外部的直径400毫米 高度为 100毫米 一个空心塑料管外径与76毫米和厚度2毫米 高度100毫米固定中心的 泡沫 便于插入 花灯的表面盖上花瓣 又装饰着四辬 花朵一个圆柱形泡沫具有内径的76毫米和一个外径280毫米 高度为100毫 米做成 一个空心塑料管道规格是外径76毫米和厚度2毫米 高度为100毫米固 定的中心泡沫方便插入 插三香柱的三个孔每个距离中心85毫米 成120度间距 用来插花 一个空心塑料管道和外径42毫米和厚度2毫米高度100毫米固定在每Joss贴 的中心孔方便插入 花的顶部用顶层覆盖着 每个小组是鼓励用鲜花装饰这表 层 这个装饰的花卉仅可用于装饰目的和不可使用战略性参加比赛 花的底部 用底层覆盖 香柱是由一个空心塑料或木制的管道规格是250毫米和34毫米直径 香柱两 端都封闭 可以用塑料 木材 橡胶 制片做成3毫米厚 上方描绘了红色或蓝 色区分团队 高度50毫米 敬香花坛是由一个圆柱形泡沫内部直径和76毫米外径280毫米 高度为100 5 毫米做成一个中空的塑料管道规格是76毫米的外径和厚度2毫米 高度为100毫 米固定在这个中心的泡沫方便插入 香柱对着的孔距离中心85毫米成120度角每 一个孔的内径42毫米 一个空心塑料管道用一个外径42毫米和厚度2毫米 高度 为100毫米固定的中心孔以便插入 敬香花坛用上表层用顶层覆盖 下表层用底 层覆盖 它的重量是大约250克 烛光火焰由两个部分构成 基地是一个圆柱形空心塑料管道的外径和 76 毫米 高度 55 毫米和厚度 2 毫 米做成 顶级的塑料管道是一圆板的塑料制成的 厚度为 3 毫米 圣火是由泡 沫塑料 橡胶 塑料 橡胶 纸或玻璃纤维的锥形 高度 100 毫米 图 2 比赛用莲花灯 Figure2 Competition lights 3 机器人设计与方案 3 1 机器人一般组成 机器人一般由执行机构 驱动装置 检测装置和控制系统和复杂机械等组 成 执行机构即机器人本体 其臂部一般采用空间开链连杆机构 其中的运动 副 转动副或移动副 常称为关节 关节个数通常急为机器人的自由度数 根 据关节配置型式和运动坐标形式的不同 机器人执行机构可分为直角坐标式 圆柱坐标式 极坐标式和关节坐标式等类型 2 驱动装置是驱使执行机构运动的机构 按照控制系统发出的指令信号 借 助于动力元件使机器人进行动作 它输入的是电信号 输出的是线 角位移量 机器人使用的驱动装置主要是电力驱动装置 如步进电机 伺服电机等 此外 也有采用液压 气动等驱动装置 检测装置的作用是实时检测机器人的运动及工作情况 根据需要反馈给控 制系统 与设定信息进行比较后 对执行机构进行调整 以保证机器人的动作 符合预定的要求 3 6 控制系统有两种方式 一种是集中式控制 即机器人的全部控制由一台微 型计算机完成 另一种是分散式控制 即采用多台微机来分担机器人的控制 如当采用上 下两级微机共同完成机器人的控制时 主机常用于负责系统的管 理 通讯 运动学和动力学计算 并向下级微机发送指令信息 作为下级从机 各关节分别对应一个CPU 进行插补运算和伺服控制处理 实现给定的运动 并 向主机反馈信息 4 3 2 机器人设计原则 对于此次比赛的机器人来说 主要考验的是机器人的行走路线 机器人运 行的稳定性 快速性 准确性以及可操作性 通过总结往届的经验 小组制定 了如下机器人设计原则 5 1 机器人必须与大赛的主题相吻合 创意独到 在遵循规则的前提下能巧 妙地合理地利用规则 2 机器人必须具有较高的速度 包括加速度 兵贵神速 谁的速度快 谁 就能在更短的时间内完成组装搬运工作 抢得比赛的先机 因此小组制定了速 战速决的战术 3 机器人必须稳 准 指机器人运动的机动性 稳定性和安放水灯的准确 性 速度只有与机动性 灵巧性和准确性结合才能相得益彰 才能在竞争激烈 赛况瞬息万变的比赛中获得胜利 4 机器人应具有高智能 目前大部分自动机器人尚处于预编程的水平上 无法达到高要求的定位标准 如果机器人的智能水平能够有所提高 能够正确 的处理瞬息万变的赛场信提高定位能力 那么就能更快更好的完成组装和搬运 5 机器人代表队的配合默契程度 指自动机器人 手控机器人的动态配合 要好 因为比赛不是比拼单台机器人的功能 因此 小组特别强调机器人团队 之间的协同作战 3 3 比赛策略 在比赛一开始机器人就以最短路线运动到组装区域 并利用编码盘导引调 整行动误差保证最后准确的定位在组装区中心位置 3 4 研制概要 根据大赛主题以及规则 小组初步确定了控制系统的设计方案 控制系统 要求精确度高 简单可靠 稳定性好 速度可调 7 硬件电路包括电机驱动电路 功率驱动电路 单片机或DSP系统电路等 软件设计包括编码盘位置识别 场效应管逻辑控制 PWM速度调节 数据显 示等 4 总体方案及设计思路 本设计是基于 ATMEGA128 单片机的智能电动小车 本系统主要由中央处理 模块 直流电机驱动模块 光电传感器检测模块 编码盘采样模块 速度检测 模块 人机交互模块与电源模块等组成 6 光电传感器检测模块 编码盘采样模块 速度检测模块等传感器部分对系 统外界信息采集后 将数据通过异步串行通信方式送入中央处理模块进行数据 分析 然后做出相应的处理 再得到相关的输出操作 通过输出 PWM 波对电机 驱动模块进行控制 再驱动直流电机模块进行工作 整个过程实现闭环操作 其对应的系统方框图如图 3 所示 图 3 总体方案 Figure3 The overall program 5 功能模块简介及硬件选择 5 1 中央处理器模块 中央处理器模块是整个自动搬运机器人的核心环节 它是实现信息处理 命令输出与智能算法等的场所 在此我提出两种单片机进去选择 最终我采用 AVR 系列的 ATmega128 单片机作为其处理器 它具有更优良的性能 更强大的 数据处理能力和丰富的内部硬件资源 5 1 1 CUP 的论证与选择 电机驱动模块 中央处理模块 ATmega128 电源模块 电机 人机通信模块 速度检测模块 避障模块 8 1 采用 ATMEL 公司的 AT89C51 AT89C51 提供以下标准功能 4k 字 节 Flash 闪速存储器 128 字节内部 RAM 32 个 I O 口线 两个 16 位定 时 计数器 一个 5 向量两级中断结构 一个全双工串行通信口 片内振荡 器及时钟电路 同时 AT89C51 可降至 0Hz 的静态逻辑操作 并支持两种软 件可选的节电工作模式 空闲方式停止CPU 的工作 但允许 RAM 定时 计 数器 串行通信口及中断系统继续工作 掉电方式保存RAM 中的内容 但 振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位 产品特性 7 与 MCS 51 兼容 4K 字节可编程 FLASH 存储器 寿命 1000 写 擦循环 数据保留时间 10 年 全静态工作 0Hz 24MHz 三级程序存储器锁定 128 8 位内部 RAM 32 可编程 I O 线 两个 16 位定时器 计数器 5 个中断源 可编程串行通道 低功耗的闲置和掉电模式 2 ATMEGA128 图 4 为基于 AVR RISC 结构的 8 位低功耗 CMOS 微处理器 产品特点 7 高性能 低功耗的 AVR 8 位微处理器 先进的 RISC 结构 133 条指令 大多数可以在一个时钟周期内完成 32 X 8 通用工作寄存器 外设控制寄存器 全静态工作 工作于 16 MHZ 时性能高达 16 MIPS 只需两个时钟周期的硬件乘法器 非易失性的程序和数据存储器 128K 字节的系统内可编程 FLASH 9 寿命 10 000 次写 擦除周期 具有独立锁定位 可选择的启动代码区 通过片内的启动程序实现系统内编程 真正的读 修改 写操作 4K 字节的 EEPROM 寿命 100 000 次写 擦除周期 4K 字节的内部 SRAM 多达 64K 字节的优化的外部存储器空间 可以对锁定位进行编程以实现软件加密 可以通过 SPI 实现系统内编程 图 4 Atmega128 单片机 Figure4 Atmega128 microcontroller 5 2 电机控制模块 电机模块是小车的动力系统 本设计采用具有十分突出节能 控制和拖动 特性的空心杯电机 在闭环的控制系统后 能达到更高的精度 与其相对应的 电机驱动模块通过论证决定采用市场上常见的 L297 和 L298 组成 它能通过简 单的电路较好地驱动电机 8 5 2 1 电机论证与选择 1 采用空心杯直流伺服控制小车运动 空心杯电动机具有突出的节能特性 灵敏方便的控制特性和稳定的运行特性 作为高效率的能量转换装置 代表了 电动机的发展方向 空心杯电机具有十分突出的节能 控制和拖动特性 而直 10 流减速电机力矩大转动速度快 采用闭环的控制控制系统后 能达到更高的精 度 2 采用步进电机来实现对小车运动的控制 步进电机有较高的定位精度 无位置累积误差 但如果控制不当容易产生共振 难以运转到较高的转速 另 外 步进电机在体积重量方面没有优势 能源利用率低 由于步进电机在重量 高速转动和能源利用率方面不如空心杯直流伺服电 机 图 5 本系统最终选择了方案 1 图 5 步进电机 Figure5 Stepper motor 5 2 2 驱动方案的论证与选择 1 采用线性驱动方式 线性驱动方式可以看做是个数控电压源 其中该 驱动方式的优点是驱动电机的力矩纹波很小 可应用于对电机转速精度要求非 常高的地方 但是实现它的成本较高 比较复杂 由于线性放大驱动方式效率 和散热问题严重 尤其是要提高电机的驱动功率 相应的成本将大幅度的增加 需要耗费大量的时间精力来完成 2 采用达林顿管或 MOS 管搭制 H 桥的开关驱动方式 采用达林顿管或 MOS 管搭制 H 桥 PWM 脉宽调制体积较大 由于分立元器件的特性不同 使得驱 动器具有一定的离散性 此外 由于功率管的开关电阻比较大 因此功耗也很 大 需要散热片 这无疑进一步加大了驱动器的体积 3 采用驱动芯片 L297 L298 来驱动电机的开关驱动方式 随着技术的 迅猛发展 基于大功率 MOS 管的 H 桥驱动芯片逐渐显示出了它的优势 L298 是 11 SGS 公司的产品 内部包含 4 通道逻辑驱动电路 是一种二相和四相电机的专 用驱动芯片 即内部含有两个 H 桥高压大电流双全桥式驱动器 接收标准 TTL 逻辑电平信号 可驱动 46V 2A 以下的电机 由于方案 3 的芯片 L297 图 6 L298 不仅能满足电路本身的功能 其 集成的电路使得它的体积很小 失真度底 功耗也很小 这正符合电路设计中 节能和稳定的基本要求 我们最终选择方案 3 图 6 L297 芯片 Figure6 L297 chip 5 3 传感器模块 为了保证搬运机器人能够在场地中找到自己的位置并精确移动 应采用一 定数量的红外传感器 接触类传感器来感知机械手的位置信息 再加以速度检 测模块保证对自身参数的不间断监控以确保顺利完成抓取和安放任务 8 5 3 1 避障方式 避障模块主要由光电开关组成 属于光电接近开关 它是利用被检测物体 对红外光束的遮光或反射 由同步回路选通而检测物体的有无 其物体不限于 金属 对所有能反射光线的物体均可检测 根据光电开关在检测物体时 发射器所发出的光线被折射回接到接收器的 途径的不同 可分为 1 漫反射式 它是一种集发射器和接收器于一体的传感器 当有被检测 物体经过时 物体将光电开关发射器发射的足够量的光线反射到接收器 于是 光电开关就产生了开关信号 当被检测物体的表面光亮或其反光率极高时 漫 反射式的光电开关是首选的检测模式 12 2 镜反射式 它亦集发射器与接收器于一体 光电开关发射器发出的光 线经过反射镜反射回接收器 当被检测物体经过且完全阻断光线时 光电开关 就产生了检测开关信号 3 对射式 它包含了在结构上相互分离且光轴相对放置的发射器和接收 器 发射器发出的光线直接进入接收器 当被检测物体经过发射器和接收器之 间且阻断光线时 光电开关就产生了开关信号 当检测物体为不透明时 对射 式光电开关是最可靠的检测装置 4 槽式 它通常采用标准的 U 字型结构 其发射器和接收器分别位于 U 型槽的两边 并形成一光轴 当被检测物体经过 U 型槽且阻断光轴时 光电开 关就产生了开关量信号 槽式光电开关比较适合检测高速运动的物体 并且它 能分辨透明与半透明物体 使用安全可靠 5 光纤式 它采用塑料或玻璃光纤传感器来引导光线 可以对距离远的 被检测物体进行检测 通常光纤传感器分为对射式和漫反射式 它们的工作光线示意图如图 7 所示 图 7 光电开关工作示意图 Figure7 The photoelectric switch diagram 综合考虑到本设计中需要面对的障碍物的复杂多样性 因此本设计采用的 为漫反射式 5 3 2 速度检测方式 随着电池电压的逐渐下降 电机供给电压也会随之降低 导致电机的转速 不断下降 若采用闭环控制 将车轮转速信息反馈给控制器 从而使电机的实 际转速值等于指令转速值 就能提高速度的准确性 常用的有以下两种测速传 感器 13 1 轴编码器 它常被用来测量旋转轴的位置和转速 绝对式位置编码 器 被用来测量轴的实际位置 这种编码器长被用于伺服系统中来获得一定的 转轴位置 增量式轴编码器 常被用来测量转轴的转速 速率和方向 增量 式轴编码器可以产生直接对应于轴转速的脉冲序列 如果采用有两相信号输出 的增量式轴编码器实际只能称之为转速计 工程中应用最多的是光学编码器 但也有一些利用电磁原理制成的霍尔效应编码器 8 2 模拟转速计 它也被安装到电机的输出轴上 但输出的是正比于电机 转速的电压 比较两种方式 从输出信号的格式看 轴编码器输出的是方波信号 很容 易输入到控制器中 而模拟转速器输出的是模拟信号 还需 AD 转换 另外 模拟转速器对动力大小也有影响 而轴编码器对它几乎没有影响 要对智能车 进行速度的测量 故比较之下选用增量式轴编码器 5 3 3 编码盘的工作原理 编码盘或编码尺是一种按一定的编码形式 如二进制编码 二 十进制编 码 格莱码或余三码等 将一个圆盘或直尺分成若干等分 并利用电子 光电 或电磁器件 把代表被测位移量大小的各等分上的编码转换成便于应用的其他 二进制表达方式的测量装置 下面以接触式编码盘为例说明其工作原理 图 8 所示是一个 4 位二进制编码盘 图中涂黑部分是绝缘的 码盘的外 4 圈按导电为 1 绝缘为 0 组成二进制码 通常 我们把组成编码的各圈 称为码道 对应 4 个码道并排安装有 4 个电刷 电刷经电阻接到电源正极 编 码盘的最里一圈是公用的 与 4 个码道上的导电部分连在一起 而与绝缘部分 断开 该圈接到电源的负极 地 编码盘的转轴与被测对象连在一起 如机床丝 杠 编码盘的电刷则装在一个不随被测对象一起运动的部件 如机床本体 上 当被测对象带动编码盘一起转动时 根据与电刷串联的电阻上有无电流流过 可用相应的二进制代码表示 如图 9 所示 若编码盘沿顺时针方向转动 就可 依次得到 0000 0001 0100 1111 的二进制输出 14 图 8 编码盘 图 9 编码盘 Figure8 Encoding plate Figure9 Encoding plate 5 3 4 编码盘的运用 编码盘随着自身的转动发出一个频率变化的脉冲信号 该信号的频率可以 表现此时机体的运动速度 脉冲个数可以变现所走过的距离 这样我们使用 CPU 采样这些脉冲信号就能对运动状态有一个很好的了解 从而更好的控制机 器人的运动与动作 10 5 4 电源模块 如图 8 所示电源模块我选择 REG1117 5 芯片 此芯片是高压差的稳压电源 输入 电压范围大输出电压稳定 此电源模块主要是通过开关稳压电源芯片进 行稳压 5V 单片机 ATMEGA 128 供电 电路的基本工作原理 此电路有两个输出结口 J1 为电源座子输入 12V J2 为 USB 接口 可以通 过电脑或其他稳压器件输入 5V 此两种电源可以任选一种工作 9 如果由 J1 输入 12V 当开关 S1 闭合时 12V 的电源就会接到 REG1117 5 的 输入端 通过 REG1117 5 稳压成 5V 输出 输出端又通过电容 C9 C10 进一步 去除干扰和毛刺 二极管 D3 是防止输出电压大于输入电压 因为开关稳压电源 芯片 REG1117 5 属于降压型 如果所示当使用 USB 供电时 就可以接通 P1 直接为单片机供电 15 100uF 16V C9 104 C10 D3 1N4007 100uF 50V C7 104 C8 GND 1 IN 3 OUT 2 OUT 4 U3 REG1117 5 5V电源电路 1 2 3 J1 PWR2 5 S1 SW DPDT VBUS 1 D 2 D 3 GND 4 J2 USB 2 0 1 2 P1 Header 2 GND GND GND GND GND GND VCC VCC 图 10 5V 电源电路 Figure10 5V Power supply circuit 5 5 人机通信模块 如图 11 所示为人及交互界面的硬件设计其中包括键盘输入和 12864 液晶中文显 示模块 按键接入上拉电阻 按键按下时为低电平 5 5 1 液晶中文显示模块 12864 液晶显示模块是128 64点阵的汉字图形型液晶显示模块 可显示汉字及图 形 内置8192个中文汉字 16X16点阵 128个字符 8X16点阵 及64X256点 阵显示RAM GDRAM 可与CPU直接接口 提供两种界面来连接微处理机 8 位 并行及串行两种连接方式 11 具有多种功能 光标显示 画面移位 睡眠模式 等 下列表格为液晶中文显示模块12864的指令集 图 11 键盘 显示部分 Figure11 Keyboard splay section 16 表 1 液晶屏清除功能指令 Table1 The LCD screen clear instructions 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 清除显示0 0 0 0 0 0 0 0 0 1 功能 清除显示屏幕 把 DDRAM 位址计数器调整为 00H 表 2 液晶屏地址归位指令 Table2 The LCD address return command 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 地址归位0 0 0 0 0 0 0 0 1 X 功能 把 DDRAM 位址计数器调整为 00H 游标回原点 该功能不影响显示 DDRAM 表 3 液晶屏地址归位指令 Table3 The LCD address return command 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 地址归位0 0 0 0 0 0 0 1 I D S 功能 把 DDRAM 位址计数器调整为 00H 游标回原点 该功能不影响显示 DDRAM 功能 执行该命令后 所设置的行将显示在屏幕的第一行 表 4 显示状态指令 Table4 Display the status instruction 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 显示状态开 关0 0 0 0 0 0 1 D C B 功能 D 1 整体显示 ON C 1 游标 ON B 1 游标位置 ON 表 5 游标显示指令 Table5 Cursor shows where the instruction 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 游标显示移位0 0 0 0 0 0 S C R L X X 功能 设定游标的移动与显示的移位控制位 这个指令并不改变 DDRAM 的内容 表 6 功能设定 Table6 The setting of function 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 功能设定0 0 0 0 1 DL X RE X X 17 功能 DL 1 必须设为 1 RE 1 扩充指令集动作 RE 0 基本指令集动作 表 7 CGRAM 地址设定 Table 7 CGRAM address setting 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 CGRAM 地址设定 0 0 0 1 AC5 AC4 AC3 AC2 AC1 AC0 功能 设定 CGRAM 位址到位址计数器 AC 表 8 DDRAM 地址设定 Table 8 DDRAM address setting 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 DDRAM 地址设定 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 AC0 功能 设定 DDRAM 位址到位址计数器 AC 表 9 读取忙状态 Table 9 To read the busy state 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 读取忙状态0 1 BF AC6 AC5 AC4 AC3 AC2 AC1 AC0 功能 读取忙碌状态 BF 可以确认内部动作是否完成 同时读出位址计数器 AC 的值 表 10 读取忙状态 Table 10 Writing data to RAM 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 写资料到 RAM1 0 D7 D6 D5 D4 D3 D2 D1 D0 功能 写入资料到内部的 RAM DDRAM CGRAM TRAM GDRAM 表 11 读取 RAM 的值 Table 11 Read the value of RAM 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 读取 RAM 的值1 1 D7 D6 D5 D4 D3 D2 D1 D0 功能 从内部 RAM 读取资料 DDRAM CGRAM TRAM GDRAM 表 12 待命模式 12H Table 12 Standby mode 12H 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 待命模式 12H 0 0 0 0 0 0 0 0 0 1 18 功能 进入待命模式 执行其他命令都可终止待命模式 表 13 反白选择 14H Table 13 Anti white selection 14H 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 反白选择 14H 0 0 0 0 0 0 0 1 R1 R0 功能 选择 4 行中的任一行作反白显示 并可决定反白的与否 表 14 睡眠模式 15H Table 14 Sleep mode 15H 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 睡眠模式 15H 0 0 0 0 0 0 1 SL X X 功能 SL 1 脱离睡眠模式 SL 0 进入睡眠模式 表 15 扩充功能 16H Table 15 Expansion of the function 16H 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 扩充功能 16H 0 0 0 0 1 1 X 1RE G 0 功能 RE 1 扩充指令集动作 RE 0 基本指令集动作 G 1 绘图显示 ON G 0 绘图显示 OFF 表 16 IRAM 地址 17H Table 16 The IRAM Address 17H 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 IRAM 地址 17H 0 0 0 1 AC5 AC4 AC3 AC2 AC1 AC0 功能 SR 1 AC5 AC0 为垂直卷动位址 SR 0 AC3 AC0 写 ICONRAM 位址 表 17 设定绘图 17H Table 17 Setting Drawing 17H 基本指令 RS RW DB7 DB6 DB5 DB4 DB3 BD2 BD1 BD0 设定绘图 17H 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 AC0 功能 设定 GDRAM 位址到位址计数器 AC 5 5 2 通信模式 AVR 单片机自带有三个外部通信接口 SPI USART 和 TWI 本方案选择的 是 USART 模式下的串行通信 19 5 5 3 USART 简介 USART 是一个全双工通用同步 异步串行收发模块 该接口是一个高度灵活 的串行通信设备 主要特点为 12 全双工操作 独立的串行接收和发送寄存器 异步或同步操作 主机或从机提供时钟的同步操作 高精度的波特率发生器 支持5 6 7 8 或9 个数据位和1 个或2 个停止位 硬件支持的奇偶校验操作 数据过速检测 帧错误检测 噪声滤波 包括错误的起始位检测 以及数字低通滤波器 三个独立的中断 发送结 断 发送数据寄存器空中断 以及接收结束中断 多处理器通讯模式 5 5 4 USART 寄存器说明与选择 下列表格为 USART 相关寄存器对应说明 表 18 VDRn 寄存器简介 Table18 Introduction of VDRn registers 位 7 6 5 4 3 2 1 0 名 称 ICNC3 ICES3 WGM33 WGM32 CS32 CS31 CS30 读 写 R W R W R W R W R W R W R W R W 初始值 0 0 0 0 0 0 0 0 表 19 UCSRnA 寄存器简介 Table19 Introduction of UCSRnA registers 位 7 6 5 4 3 2 1 0 名 称 RXCn TXCn VDREn FEn DORn UPEn U2Xn MPCMn 读 写 R R W R R R R R W R W 初始值 0 0 0 0 0 0 0 0 表 20 UCSRnB 寄存器简介 Table20 Introduction of UCSRnB registers 位 7 6 5 4 3 2 1 0 名 称 RXCIEn TXCIEn VDRIEn RXENn TXENn UCSZn2 RXB8n TXB8n 读 写 R W R W R W R W R W R W R R W 20 位 7 6 5 4 3 2 1 0 初始值 0 0 0 0 0 0 0 0 寄存器具体功能详见 ATMEGA128芯片数据手册 初始化 c代码如下 void USART Init unsigned int baud 设置波特率 UBRRH unsigned char baud 8 UBRRL unsigned char baud 接收器与发送器使能 UCSRB 1 RXEN 1 TXEN 设置帧格式 8 个数据位 2 个停止位 UCSRC 1 USBS 3 UCSZ0 发送数据的 c 代码 void USART Transmit unsigned char data 等待发送缓冲器为空 while UCSRA 将数据放入缓冲器 发送数据 UDR data 接收数据的 c 代码 unsigned char USART Receive void 等待接收数据 while UCSRA 从缓冲器中获取并返回数据 21 return UDR 5 5 5 串口通讯 随着计算机系统的应用和微机网络的发展 通信功能越来越显得重要 这 里所说的通信是指计算机与外界的信息交换 因此 通信既包括计算机与 外部设备之间 也包括计算机和计算机之间的信息交换 由于串行通信是 在一根传输线上一位一位的传送信息 所用的传输线少 并且可以借助现成的 电话网进行信息传送 因此 特别适合于远距离传输 对于那些与计算机 相距不远的人 机交换设备和串行存储的外部设备如终端 打印机 逻辑分 析仪 磁盘等 采用串行方式交换数据也很普遍 在实时控制和管理方面 采用多台微机处理机组成分级分布控制系统中 各 CPU 之间的通信一般都 是串行方式 所以串行接口是微机应用系统常用的接口 许多外设和计算机 按串行方式进行通信 这里所说的串行方式 是指外设与接口电路之间的 信息传送方式 实际上 CPU 与接口之间仍按并行方式工作 6 控制系统设计 本搬运机器人以 ATMEGA128 为主控芯片 通过正交编码盘产生的反馈信息 和光电的信号控制伺服器控制电机转动 使搬运工作按要求进行 如图 12 所示 为自动搬运机器人控制原理图 AGND TXD0 RXD0 AGND TXD1 RXD1 1 2 3 P10 Header 3H 1 2 3 P12 Header 3H 图 12 串口通信 Figure12 Serial communication 22 图 13 控制原理图 Figure13 Control schematic diagram 6 1 系统软件架构 要使控制系统对机器人的各个环节进行有效的管理控制 除了有合理的硬 件电路外 还有有高质量的软家支持 因为控制功能的最终实现还要靠软家的 运行来完成 应用软件的质量好坏直接决定了整个系统的控制效果 因此在软 家设计时还要考虑到以下几点 14 1 实时性 机器人的控制讲究快速的实时控制 控制软家必须具有实时性 所谓 实 时性 是指微控制器必须在一定的时间限制内 完成一系列的软家处理过程 例如对电机被控参数的反馈采样 计算 逻辑判断必须能按规定的控制算法进 行计算 输出控制信号 以及时应对出现的各种突发事件 2 可靠性 所有的 可靠性 是指软件在运行中避免发生故障的能力 以及一旦发生 故障口的解脱和排除故障的能力 因此 为了提高软件的可靠性 软件设计时 应靠各种可能出现的问题 3 易维护性和程序的可移植性 应用软件在设计之初能够设计一个好的组织结构 可以在应用中反复地加 以修改完善 而且具有通用性 移植性 15 6 2 程序功能描述与设计思路 本系统的程序主要能实现对电机的控制和对寻迹模块的信号采集与分析 使用 ATmage128 作为主控芯片 再由主控板对模块化的伺服器进行控制 伺服 器把信号输出给电机驱动模块 通过驱动模块把驱动能力放大 整个程序有模 块化的设计风格 通过各个模块规范化的连接 从而实现系统工程快速稳定的 实现 整体流程图如图 16 16 23 图 14 整体流程图 Figure14 Overall flow chart 6 3 扩展口 Atmega128 具 53 可编程双向 I O 口 具有可编程的内部上拉电阻 其输出 缓冲器具有对称的驱动特性 可以输出和吸收大电流 作为输入使用时 若内 部上拉电阻使能 端口被外部电路拉低时将输出电流 在复位过程中 即使系 统时钟还未起振 端口 处于高阻状态 将 AVR 单片机所有的 IO 口都引出 此 系统板将所有的 IO 口都引出 24 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 P14 Header 16 RESET A 5V AGND XTAL1 XTAL2 TXD1 RXD1 ICP1 PD0 PD1 P PD6 PD7 PWM 4 DIR 4 DIR 5 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 P15 Header 16 RS R W PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 EN AD3 AD4 A AD6 AD7 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 P16 Header 16 AD0 AD1 AD2 A 5V AGND TCK TMS TDO TDI KEY1 KEY2 KEY3 KEY4 AVCC AGND AGND 图 15 扩展口 Figure15 Expansion port 6 4 PMW 的产生 电机驱动在本系统中有重要的作用 本设计采用 PWM 信号控制电机运转 比较匹配置位输出 选择 PE3 PE4 PE5 所对应的第二功能 OC3A OC3B OC3C 输出三路 PWM 波 所以此时的设置为 TCCR3A 0 xFB 1111 1100 表 21 TCCR3A 寄存器简介 Table21 Introduction of TCCR3A registers 位 7 6 5 4 3 2 1 0 名 称 COM3A1 COM3A0 COM3B1 COM3B0 COM3C1 COM3C0 WGM31 WGM30 读 写 R W R W R W R W R W R W R W R W 初始值 0 0 0 0 0 0 0 0 表 22 比较匹配输出模式表 Table22 table of comparison matching output model COMnA1 COMnB1 COMnA0 COMnB0 说 明 COMnC1 COMnC0 0 0 普通端口操作 OCnA OCnB OCnC 未连接 0 1 比较匹配时 OCnA OCnB OCnC 电平取反 1 0 比较匹配时清零 OCnA OCnB OCn 输出低电平 1 1 比较匹配时置位 OCnA OCnB OCn 输出高电平 时钟的选择 本设计选择预分频为 8 所以 TCCR3B 0X20 表 23 TCCR3B 寄存器简介 25 Table23 Introduction of TCCR3B registers 位 7 6 5 4 3 2 1 0 名 称 ICNC3 ICES3 WGM33 WGM32 CS32 CS31 CS30 读 写 R W R W R W R W R W R W R W R W 初始值 0 0 0 0 0 0 0 0 表 24 时钟选择位描述 Table24 The description of clock choose CSn2 CSn1 CSn0 说 明 0 0 0 无时钟源 T C 停止 0 0 1 无预分频 1 I O clk 0 1 0 来自预分频器 8 I O clk 0 1 1 来自预分频器 64 I O clk 1 0 0 来自预分频器 256 I O clk 1 0 1 来自预分频器 1024 I O clk 1 1 0 外部 Tn 引脚 下降沿驱动 1 1 1 外部 Tn 引脚 上升沿驱动 表25 波形产生模式表 Table25 Waveform mode table 模式 WGMn3 WGMn2 WGMn1 WGMn0 定时器 计数 TOP OCRnx 更新 TOVn 置位 器工作模式 时刻 时刻 0 0 0 0 0 普通模式 0XFFFF 立即更新 MAX 1 0 0 0 1 8 位相位修正 PWM 0X00FF TOP BUTTOM 2 0 0 1 0 9 位相位修正 PWM 0X01FF TOP BUTTOM 3 0 0 1 1 10 位相位修正 PWM 0X03FF TOP BUTTOM 4 0 1 0 0 CTC OCRnA 立即更新 MAX 5 0 1 0 1 8 位快速 PWM 0X00FF TOP TOP 6 0 1 1 0 9 位快速 PWM 0X01FF TOP TOP 7 0 1 1 1 10 位快速 PWM 0X03FF TOP TOP 8 1 0 0 0 相频修正 PWM ICRn BUTTOM BUTTOM 9 1 0 0 1 相频修正 PWM OCRnA BUTTOM BUTTOM 10 1 0 1 0 相位修正 PWM ICRn TOP BUTTOM 11 1 0 1 1 相位修正 PWM OCRnA TOP BUTTOM 12 1 1 0 0 CTC ICRn 立即更新 MAX 13 1 1 0 1 保留 14 1 1 1 0 快速 PWM ICRn TOP TOP 15 1 1 1 1 快速 PWM OCRnA TOP TOP 说明 选择使用外部时钟源后 即使 Tn 引脚被定义为输出 其 n 引脚上的逻辑信号电 平变化仍然会驱动 T Cn 计数 这个特性允许用户通过

温馨提示

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

最新文档

评论

0/150

提交评论