




已阅读5页,还剩52页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学号 学号 2411350153824113501538 南湖学院 毕业论文 设计 毕业论文 设计 题目题目 直线运动工作台精确定位控制直线运动工作台精确定位控制 作 者 龙罗坤 届 别 2011 级 系 别 南湖学院机电系 专 业 机械与电子工程 指导老师 余晓峰 职 称 副 教 授 完成时间 2015 年 5 月 4 日 摘摘 要要 本设计是基于单片机控制的数控系统设计 直线运动工作台精确定位设计 本控制系统采用闭环控制方式 以 AT89C51 单片机为控制器 并以显示 复位 时钟 限位等电路作为基础 通过键盘电路的给单片机输入指令 并以脉冲形式的 控制信号来驱动步进电机 并且通过旋转编码器对运动进行实时检测 并及时反馈 给执行机构是否进行 从而通过传动机构来实现直线运动工作台精确定位 程序编写完成后 在 Keil 软件进行编译和调试 并在 Proteus 环境中实现程序 及电路的仿真 关键字 数控工作台 直线运动 定位控制 步进电机 旋转编码器 II ABSTRACT This design is the numerical control system design based on single chip microcomputercontrol linear motion table precise positioning design This control system adopts the closed loop control mode AT89C51 single chip microcomputer as the controller and to display and reset clock limit such as circuit as the foundation through the keyboard circuit to MCU input instruction and in the form of pulse control signal to drive the stepper motor and real time detection of movement through rotary encoder and timely feedback to the actuator whether and through the drive mechanism to achieve linear motion table precise positioning After the completion of the program written in the Keil software compiling and debugging and implementation procedures and the simulation of the circuit in the Proteus environment Keywords CNC table linear motion positioning control stepper motor rotary encoder 目目 录录 第一章 绪论 1 1 1 课题设计研究背景 1 1 2 研究的内容 1 1 3 毕业设计的目的 意义 2 第二章 数控系统的总体方案 3 2 1 数控系统的设计总体方案图 3 2 2 数控系统的控制方式 3 2 3 伺服系统及电机的选择 3 2 4 微机控制系统的选择 3 2 5 直线运动工作台的传动方式 5 2 6 控制系统的执行 6 第三章 MCS 51 单片机工作原理 9 3 1 单片机内部组成及引脚功能 9 3 1 1 单片机的内部结构 9 3 1 2 AT89C51 单片机的主要特性 9 3 1 3 AT89C51 单片机的引脚功能 10 3 2 单片机的时钟电路 12 3 3 单片机的工作方式 14 第四章 单片机系统的设计 16 4 1 硬件配置与接口分配 16 4 1 1 存贮器空间分配 16 4 1 2 I O 口地址分配 16 4 2 硬件电路的设计 17 4 2 1 主控制器 CPU 的选择 17 4 2 2 步进电机驱动电路的设计 18 4 3 其他辅助电路设计 32 4 3 1 AT89C51 的时钟电路单片机的时钟的产生方式 32 4 3 2 AT89C51 复位电路 32 4 3 3 超程报警电路 32 4 3 4 掉电保护电路 33 4 3 5 光电隔离电路 34 第五章 基于 PROTEUS 的直线运动平台运动仿真设计 36 5 1 PROTEUS简介及仿真界面 36 5 2 KEIL简介 37 5 3 KEIL中的程序调试 38 5 4 PROTEUS仿真系统硬件原理图 39 5 5 运行调试 39 设计总结 42 致 谢 43 参考文献 44 附 录 45 附录 A 步进电机驱动数控 XY 轴仿真原理图 45 附录 B C 语言程序设计 46 1 第一章 绪论 1 1 课题设计研究背景 随着现代信息技术的进步 制造业得到了快速发展 促使机械加工技术发 生深刻的变化 企业不仅追求高效率的生产模式 更追求高标准的质量要求 因此要求机械设备的功能越来越强大 其结构及功能随之也变得更复杂 所以 能够设计出功能全面 效率高 耐压性强 加工精度高的机械加工设备是制造 业中最重要的课题之一 我们此次研究的课题 直线运动数控工作台属于高精 密加工的核心部件 它的传动部件的定位精度直接影响系统的加工精度 直线运动数控工作台是许多机电一体化设备的基本部件 如数控车床的纵 横向进刀机构 数控铣床和数控钻床的直线运动工作台 激光加工设备的工 作台等 数控工作台的运动控制精度与加工零件的精度直接相关 传统的人工 控制已无法满足要求 因而采用微机控制系统来实现精确的运动控制 本设计采用单片机来实现程序化的运动控制 此为验证性设计 通过对控 制系统的设计 掌握一些典型硬件电路的设计方法和人机接口软件的设计思路 并通过 Proteus 软件进行仿真实验 1 2 研究的内容 直线运动数控工作台是许多机电一体化设备的基本部件 通常由导轨座 滑动模块 工作平台 滚珠丝杠螺母副 以及步进电机等部件构成 控制系统 可选用标准的工业控制计算机 也可设计专用的微机控制系统 本设计用 AT89C51 组成专用单片机控制系统 来控制步进电机的正反转 进而控制直线 运动数控工作台运动 设计要求完成整个控制系统的硬件设计和完成整个控制系统的人机接口软 件设计 通过 Keil 编译和调试程序 并最终在 Proteus 软件中仿真 2 1 3 毕业设计的目的 意义 毕业设计是培养学生设计能力的重要实践性教学环节之一 是综合运用所 学过的机械 电子 自动控制 计算机等知识进行的基本设计训练 其目的是 能够正确运用大学期间所学课程的基本理论和相关知识 掌握机电一体化 系统 产品 的功能构成 特点和设计思想 设计方法 了解设计方案的拟定 比较 分析和计算 培养学生分析问题和解决问题的能力 使学生具有机电一 体化系统设计的初步能力 通过机械部分设计 掌握机电一体化系统典型机械零部件和执行元件的计 算 选型和结构设计方法和步骤 通过测试及控制系统方案设计 掌握机电一体化系统控制系统的硬件组成 工作原理 和软件编程思想 通过毕业设计提高学生应用手册 标准及编写技术说明书的能力 促进学 生在科学态度 创新精神 专业技能等方而综合素质的提高 3 第二章 数控系统的总体方案 本次设计中 数控系统总体设计内容包括 数控系统总体方案图 数控系 统控制方式的确定 伺服系统的选择 微机控制系统的选择 2 1 数控系统设计总体方案图 AT89C51 旋转编码器 检测电路 键盘 复位 时钟电路 限位开关 紧急停止 显示 驱动电路 告警 步进电动机 机床工作台 状态 执行机构 滚珠丝杠 螺母副 图 2 1 系统总体方案图 2 2 数控系统的控制方式 本数控系统要求直线运动工作台沿坐标轴方向同时具有连续的精确的运动 两坐标直线插补的基本功能 能够完成平面轮廓的加工 因而采用连续控制的 方式 该方式可对两个或两个以上的坐标轴同时进行严格连续控制系统 它不 仅能控制移动部件从某一点准确地移动到另一点 而且还能控制整个加工过程 中的每一点的速度和位移量 进而将零件加工成一定的轮廓形状 2 3 伺服系统及电机的选择 1 伺服系统的选择 4 本次设计选用开环伺服系统 在开环控制系统中 无反馈部件 不存在由 输出端到输入端的反馈通路 无法反馈信息 故而不能及时纠正系统传动误差 但是 同闭环控制系统相比 开环控制系统的结构要简单得多 调整维修方便 同时也比较经济 在速度和精度要求都不太高 而又要求降低成本的场合得到 广泛应用 2 步进电机的选择 考虑到经济性 也不需太高的运动精度 为简化结构 降低成本 采用步 进电机作为开环伺服系统的驱动装置 步进电机是由电脉冲控制的特种电动机 在非超载的情况下 电机的转速 停止的位置只取决于脉冲信号的频率和脉冲数 而不受负载变化的影响 对应 于每一个电脉冲 电动机将产生一个恒定量的步进运动 即产生一个恒定量的 角位移或线位移 步进电机运动步数由脉冲数来决定 运动方向由脉冲相序来 决定 在一定时间内转过的角度或平移的距离由脉冲数决定 借助步进电机可 以实现数字信号的变换 步进电机控制系统的原理框图如图 2 1 所示 电 源 脉冲发生器脉冲分配功率电路步进电动机工作机构 图 2 2 步进电动机系统简图 根据控制需要 本次设计选择两个90BF001型4相8拍的反应式步进电机 步进电机有关参数如表2 1 表2 1 90BF001型反应式步进电机的参数 主要技术参数 型号 相数 步距角 电压 V 最大静转矩 N m 空载启动 频率 步 s 空载运行 频率 步 s 分配 方式 90BF00140 9803 92200080004相八拍 电感 mH 外形尺寸 轴径 mm 质量 kg 转子转动惯量 10 5 kg m2 5 17 4914590 4 517 64 步进电机原理图如图 2 2 所示 图 2 3 步进电动机原理图 2 4 微机控制系统的选择 1 对于步进电动机的开环控制系统 选用 8 位单片机 AT89C51 作为控 制系统的控制器 该单片机具有集成度高 可靠性好 功能强大 处理速度快 可扩展性强 性价比较高等优点 能够很好的满足任务书给定的相关控制要求 2 要设计一个完整的控制系统 在选择 CPU 之后 还要设计步进电机 机的驱动电路 通过运行程序 单片机与驱动电路一起工作 进而驱动 X 轴步 进电机的正反转 3 合理设计电源及开关电路 与步进电动机配套使用 2 5 直线运动工作台的传动方式 为了保证直线运动工作台具有一定的传动精度和平稳性 并考虑总体结构 的紧凑性要求 采用滚珠丝杠螺母作为传动副 由于工作台的运动部件重量和 工作载荷不大 故选用滚动直线导轨副 从而减小工作台的摩擦系数 提高其 运动的可靠性和平稳性 由于步进电机的步距角和滚珠丝杠的导程是按标准选取的 为达到传动要 求 并综合考虑步进电机负载匹配 决定采用齿轮减速传动 数控系统总体框 图如图2 3所示 6 图2 4 数控系统总体框图 2 6 控制系统的执行 2 6 1 I O 分配表 表表 4 24 2 输入输出地址分配表输入输出地址分配表 代号代号地址地址说明说明 SQ1X1 左限位 SQ2X2 原点 SQ3X5 右限位 输入 输入 I I SB1X10 暂停 SB2X11 停止 SB3X12 启动 输出 输出 O O Y0 脉冲输出地址 7 SB1 Y2 脉冲输出方向 2 6 2 控制流程图 Y N 开始 上电回原点 设定循环次数 n 装料延时 3S 向工位 1 运料 到达工位 1 卸料延时 5S 返回原点 装料延时 5S 向工位 2 运料 到达工位 2 卸料延时 5S 停止 循环次数 n n 1 返回原点 n 0 图图 4 3 24 3 2 控制流程图控制流程图 8 第三章 AT89C51 单片机工作原理 3 1 单片机内部组成及引脚功能 3 1 13 1 1 单片机的内部结构单片机的内部结构 AT89C51单片机的组成 CPU 进行运算 控制 RAM 数据存储器 ROM 程序存储器 I O口 串口 并口 内部总线 和中断系统等 组成框 图如下 图3 1 MSC 51单片机结构框图 3 3 1 1 2 2 AT89C51AT89C51 单片机的主要特性 单片机的主要特性 与MCS 51 兼容 4K字节可编程闪烁存储器 全静态工作 0Hz 24Hz 寿命 1000次擦 写循环 数据的保留时间可达10年 128 8位内部RAM 9 32可编程I O线 三级程序存储器锁定 可编程的串行通道 两个16位计数器 定时器 闲置和掉电模式低功耗 5个中断源 3 1 33 1 3 AT89C51AT89C51 单片机的单片机的引脚功能引脚功能 本次选用的AT89C51单片机采用40引脚双列直插式封装 DIP 形式 引脚 排列及逻辑符号如图3 2所示 其中Vcc和Vss引脚由于分别默认接电源和地而 被隐藏 下面分别说明这些引脚的意义和功能 图3 2 AT89C51单片机引脚图 1 电源线 VCC 接 5V电源 VSS 接电源地 2 端口线 10 P0 P3口 4 8 32条 1 P0口 P0 0 P0 7 P0口是一个8位双向I O口 它的每跟管脚都可吸收8TTL的门电流 当P1口 首次写1的时候 P0口将被定义为高阻态输入 P0可用于外部程序数据存储器 此时它作为数据 地址的第八位 当FIASH进行编程时 P0 口将作为原码输入 口 FIASH校验时 P0口作为原码输出口 此时P0口必须拉高的外部 2 P1口 P1 0 P1 7 P1口是一个由单片机内部提供上拉电阻的8位双向I O口 P1口缓冲器能接 收输出4TTL门电流 P1口管脚写入1后 被内部上拉为高 可用作输入 P1口 被外部下拉为低电平时 将输出电流 这是由于内部上拉的缘故 在FLASH编 程和校验时 P1口作为第八位地址接收 3 P2口 P2 0 P2 7 P2口为一个内部上拉电阻的8位双向I O口 P2口缓冲器可接收 输出4个 TTL门电流 当P2口被写 1 时 其管脚被内部上拉电阻拉高 且作为输入 并因此作为输入时 P2口的管脚被外部拉低 将输出电流 这是由于内部上拉 的缘故 P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时 P2口输出地址的高八位 在给出地址 1 时 它利用内部上拉优势 当对外 部八位地址数据存储器进行读写时 P2口输出其特殊功能寄存器的内容 P2口 在FLASH编程和校验时接收高八位地址信号和控制信号 4 P3口 P3 0 P3 7 P3口的管脚是8个带内部上拉电阻的双向I O口 可接收输出4个TTL门电流 当P3口写入 1 后 它们被内部上拉为高电平 并用作输入 作为输入 由 于外部下拉为低电平 P3口将输出电流 ILL 这是由于上拉的缘故 P3口也可作为AT89C51的一些特殊功能口使用 各位的作用如下表3 1所示 所示 表3 1 P3各口线的第二功能表 端口第二功能信号名称 P3 0RXD串行数据接收口 P3 1TXD串行数据发送口 11 P3 2INT0外部中断0请求输入 P3 3INT1外部中断1请求输入 P3 4T0定时器 计数器0的外部输入口 P3 5T1定时器 计数器1的外部输入口 P3 6WR外部RAM写选通信号 P3 7RD外部RAM读选通信号 3 控制信号引脚 RST 复位输入引脚 当器件被振荡器复位时 必须保持RST引脚有两个机 器周期时间的高电平 ALE PROG 当单片机访问外部存储器时 地址锁存所允许的输出电平将用 来锁存地址的地位字节 在 FLASH 进行编程时 编程脉冲由此引脚输入 一般 情况下 ALE 引脚端以恒定的频率周期来输出正向脉冲信号 此时的振荡频率 是振荡器振荡频率的 1 6 因此 它可作为向外部输出脉冲或用来定时的引脚 然而要注意的是 每当用作外部数据存储器时 将跳过一个 ALE 脉冲 如想禁 止 ALE 的输出可在 SFR8EH 地址上置 0 此时 ALE 只有在执行 MOVX MOVC 指 令是 ALE 才起作用 另外 该引脚被略微拉高 如果微处理器在外部执行状态 ALE 禁止 置位无效 外部程序存储器的选通信号 在由外部程序存储器取指期间 每PSEN 个机器周期两次 PSEN 有效 但在访问外部数据存储器时 这两次有效的 PSEN 信号将不出现 当保持低电平时 则在此期间外部程序存储器 0000H EA VPPEA FFFFH 不管是否有内部程序存储器 注意加密方式 1 时 将内部锁定为EA RESET 当端保持高电平时 此间内部程序存储器 在 FLASH 编程期间 此EA 引脚也用于施加 12V 编程电源 VPP XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入 XTAL2 来自反向振荡器的输出 12 3 2 单片机的时钟电路 AT89C51 单片机芯片内部有一个高增益反相放大器 用于构成时钟振荡电 路 XTAL1 为该放大器的输入端 XTAL2 为该放大器的输出端 由该放大器构 成的振荡电路与和时钟电路一起构成了单片机的时钟方式 根据硬件电路的不 同 单片机的时钟连接方式又可分为内部时钟方式和外部时钟方式 内部时钟 方式如图 3 3 所示 外部时钟方式如图 3 4 所示 图3 3 内部时钟方式 图3 4 外部时钟方式 13 3 3 单片机的工作方式 MCS 51系列单片机的工作方式可分为 复位方式 程序执行方式 单片 执行方式 掉电保护方式 节电工作方式和EPROM编程 校验方式 复位方式 系统开始运行和重新启动靠复位电路来实现 这种工作方式为 复位方式 复位电路有两种 上电自动复位如图3 5所示 上电 按键手动复位 如图3 6所示 图 3 5 上电自动复位 图 3 6 上电 手动按键复位 14 程序执行方式 单片机基本工作方式 可分为连续执行工作方式和单步执 行工作方式 连续执行工作方式 所有单片机都需要的工作方式 单片机复位后 PC 值为0000H 因此单片机复位后立即转到0000H处执行程序 单片机按照程序 事先编排的任务 自动连续地执行下去 单步执行工作方式 用户调试程序的一种工作方式 在单片机开发系统 上有一专用的单步按键 或软件调试环境 按一次 单片机就执行一条指令 仅仅执行一条 这样就可以逐条检查程序 发现问题进行修改 单步执行 方式是利用单片机外部中断功能实现的 节电方式 一种低功耗的工作方式 分为空闲 等待 方式和掉电 停机 方式 是针对CHMOS类芯片而设计的 HMOS型单片机不能工作在节电方式 但它有一种掉电保护功能 HMOS单片机的掉电保护 当VCC突然掉电时 单片机通过中断将必须 保护的数据送入内部RAM 备用电源VPD可以维持内部RAM中的数据不丢失 CHMOS单片机的节电方式 CHMOS型单片机是一种低功耗器件 正常 工作时电流为11 22mA 空闲状态时为1 7 5mA 掉电方式为5 50 A 它 适用于低功耗应用场合 它的空闲方式和掉电方式都是由电源控制寄存器 PCON中相应的位来控制 编程和校验方式 用于内部含有EPROM的单片机芯片 一般的单片机开 发系统都提供实现这种方式的设备和功能 15 第四章 单片机系统的设计 4 1 硬件配置与接口分配 4 1 14 1 1 存贮器空间分配存贮器空间分配 单板机可寻址范围是 64K 字节 板上提供的插座占 16K 已插入的芯片占 10K 其余以备扩展使用 其存贮空间分配如下 0000H 07FFH 2KB EPROM 存储监控程序 0800H 0FFFH 2KB EPROM 存储零件加工程序 1000H 17FFH 2KB RAM 调试程序 2000H 27FFH 2KB RAM 测试程序等 4 1 24 1 2 I OI O 口地址分配口地址分配 单板机设置 I O 口地址为 80 9FH 共 32 个口地址 分配如下 80H 83H MCS 51 8031 84H 87H 字形锁存 88H 8BH 字位锁存 8CH 8FH 读键值 90H 9FH 用户使用 4 2 硬件电路的设计 数控系统硬件电路由以下几部分组成 1 主控制器 即中央处理单元 CPU 2 总线 包括数据总线 地址总线 控制总线 3 存储器 包括只读可编程序存储器和随机读写数据存储器 本次选用 的AT89C51芯片内部自带有4K字节可编程的闪烁存储器 故不需再扩展存储器 16 4 接口 即I O输入输出接口 数控系统的硬件框图如图4 1所示 中央处理器 单元 CPU 存储器 RAM ROM 输入 输出 I O 接口 信号变换 控制对象 外部设备 键盘 显示器 打印机 通信接口等 图4 1 数控系统的硬件框图 4 2 14 2 1 主控制器主控制器 CPUCPU 的选择的选择 AT89C51系列单片机是集中CPU 它有如下特点 1 可靠性高 AT89C51能很好的适应工业生产环境 与PC机相比 它具有更强的抗外界 干扰能力 并且 它的系统软件 如 程序指令 常数 表格等 均固化于 ROM中 不易受到病毒的破坏 信号通道基本上都位于同一个芯片里 运行时 系统可靠且稳定 2 便于扩展 此系列单片机片内有微机正常运行必需具备的部件 其片外还有许多供用 户扩展用的 总线 串行和并行输入 输出 管脚 很容易就能组成一定规模且 适应要求的微机系统 17 3 控制功能较强 AT89C51单片机具有丰富控制指令 如 I O 口逻辑操作指令 位处理指 令 条件分支转移指令等 4 实用性好 体积小 功耗低 价格便宜 易于产品化 综上所述 由于它具有以上优点 所以本设计选用AT89C51单片机作为主 控制芯片 其引脚图如图3 2所示 4 2 24 2 2 步进电机驱动电路的设计步进电机驱动电路的设计 步进电机是将电脉冲信号转变为角位移或线位移的开环控制步进电机元件 在非超载的情况下 电机的转速 停止的位置只取决于脉冲信号的频率和脉冲 数 而不受负载变化的影响 即给电机加一个脉冲信号 电机则转一个步距角 脉冲数越多 电机转动的角度越大 脉冲的频率越高 电机转速越快 但不能超过最高频率 否则电机的力矩 迅速减小 电机不转 所以 PLC 在控制步进电机中起到的作用就是发出可控脉冲 通过调节脉冲 频率控制步进电机速度 通过调节脉冲数量控制步进电机转动的角度 步进电机在构造上主要分为三种类型 反应式 永磁式和混合式 图图 3 3 2 两相步进电机的工作原理示意图两相步进电机的工作原理示意图 如上图 3 3 2 所示 该两相电机有两个绕组 当一个绕组通电后 其定子 磁极产生磁场 将转子吸合到此磁极处 若绕组在控制脉冲的作用下 通电方 向顺序按 AError Error BError Error Error Error A Error Error B A Error Error 四个状态周而复始 18 进行变化 电机顺时转动 通电时序为 AError Error Error Error B Error Error A BError Error A Error Error 时 电机逆时针转动 控制脉冲每作用一次 通电方向就变 化一次 使电机转动一步 此图所示只要 4 个脉冲 电机就转动一圈 脉冲频 率越高 电机转动越快 通常电机的转子为永磁体 当电流流过定子绕组时 定子绕组产生一矢量 磁场 该磁场会带动转子旋转一角度 使得转子的一对磁场方向与定子的磁场 方向一致 当定子的矢量磁场旋转一个角度 转子也随着该磁场转一个角度 每输入一个电脉冲 电动机转动一个角度前进一步 它输出的角位移与输入的 脉冲数成正比 转速与脉冲频率成正比 改变绕组通电的顺序 电机就会反转 所以可用控制脉冲数量 频率及电动机各相绕组的通电顺序来控制步进电机的 转动 1 步进电机的驱动电路如图 4 3 所示 图 4 3 步进电机驱动电路 4 2 3 键盘键盘 键盘是单片机应用系统中不可缺少的输入设备 通过键盘可向单片机应用 系统输入数据和控制命令 键盘是操作人员控制干预单片机应用系统的主要手 段 根据键盘组成形式可分为独立式键盘 矩阵式键盘及拨码式键盘几种 键 盘可工作于循环扫描方式 定时扫描方式或中断方式 键盘一般是由一组机械按键按照一定的规律组合而成 通过按键的通 断 19 作用输入开关电压信号 按键由断开到闭合及由闭合到断开时 由于机械触点 的弹性作用 按键的动作不是立刻完成的 在闭合及打开的瞬间有机械抖动的 发生 抖动时间一般为 5 10ms 表现在输入电压信号上为输入信号是抖动的 不稳定的电平信号 其信号波形见图 4 8 键 被 按 下 闭合稳态 按下抖动 释放抖动 图 4 8 按键抖动波形 按键闭合稳态时间由操作人员的按键时间决定 一般为零点几秒到几秒之 间 为了躲开键抖动的影响 保证在按键闭合稳定状态下读取键值 需要对键 盘进行削抖处理 常用的削抖措施有硬件削抖和软件削抖两种 硬件削抖是采用硬件电路的方法对键盘的按下抖动及释放抖动进行削抖 经过削抖电路后使按键的电平信号只有两种稳定的状态 常用的削抖电路有触 发器削抖电路 滤波削抖电路两种 硬件削抖电路见图 4 9 图 4 9 硬件削抖电路 20 硬件削抖电路解决了键抖动问题 但当应用系统所需按键比较多时 硬件 削抖电路将变得复杂 成本也比较高 因此硬件削抖一般只适用于按键比较少 的应用系统中 当系统中需要键盘数量比较多时可采用软件削抖方法对键盘抖 动进行消除 软件削抖的基本原理是当第一次检测到有键按下时 根据键抖动时间的统 计规律先采用软件延时的方法延时一段时间 一般可取 10ms 然后再确认键 是否仍保持闭合状态 如仍保持闭合状态则键真正被按下 此时可读取键值 否则可视为干扰 对其不予理睬 采用软件削抖方法可省去硬件削抖电路 但 键盘的工作速度将被降低 1 独立式键盘独立式键盘 图 4 10 是通过 AT89C51 单片机 P1 口组成的具有 8 个按键的独立式键盘 从图中可看出 独立式键盘的各个按键之间彼此是相互独立的 每一个按键连 接一根 I O 口线 独立式键盘电路简单 软件设计也比较方便 但由于每一个 按键均需要一根 I O 口线 当键盘按键数量比较多时 需要的 I O 口线也较多 因此独立式键盘只适合于按键较少的应用场合 独立式键盘可工作在查询方式下 通过 P1 口读入键状态 当有键被按下时 相应的 I O 口线变为低电平 而未被按下的键对应的 I O 口线保持为高电平 这样通过读 I O 口状态可判断是否有键按下和哪一个键被按下 2 矩阵式键盘矩阵式键盘 21 矩阵式键盘由行线 列线及位于行列线交叉点上的按键等部分组成 当应 用系统需要的按键数量比较多时可采用矩阵式键盘 1 1 工作原理工作原理 图 4 11 为一 4x4 矩阵式键盘的基本结构 图 4 11 矩阵式键盘工作原理 该键盘需要 4 根行线和 4 根列线共 8 根 I O 口线 由于采用矩阵式结构 与独立式按键不同 一根 I O 口线已经不能确定哪一个键被按下 需要通过联 接到键上的两根 I O 口线的状态确定键的状态 同时键的两端均接到 I O 口线 上不能一端接 I O 口线一端接地 因此必需采用行线与列线信号状态分别处理 综合考虑才能判断键闭合的位置 常用的键位置判别方法有扫描法和线反转法 两种 2 2 键识别方法键识别方法 键识别方法是指当键被按下时如何确定是哪一个键被按下 常用的键识别 方法有扫描法和线反转法 下面我们以图 4 11 为例加以说明 扫描法扫描法 设图 4 11 的行线 H1 H4 连接到 51 单片机 P1 口的 P1 0 P1 3 列线 L1 L4 连接到 P1 口的 P1 4 P1 7 上 可通过如下程序判断哪一个键被按下 22 KEY MOV P1 0FH 列输出低电平 行输出高电平 MOV A P1 读 P1 口状态 ANL A 0FH 保留行状态 CJNE A 0FH KEY0 有键按下转 KEY0 SJMP KEY 无键按下等待 转键检测 KEY0 LCALL DELAY10 调 10mS 延时取抖 MOV A P1 ANL A 0FH CJNE A 0FH KEY1 不是抖动转键值判断 SJMP KEY 是抖动到键检测 KEY1 MOV P1 11101111B 第一列键被按下判断 MOV A P1 ANL A 0FH CJNE A 0FH KEY11 第一列键被按下转 KEY11 处理 MOV P1 11011111B 第二列键被按下判断 MOV A P1 ANL A 0FH CJNE A 0FH KEY11 第二列键被按下转 KEY11 处理 MOV P1 01111111B 第四列键被按下判断 MOV A P1 ANL A 0FH CJNE A 0FH KEY11 第四列键被按下转 KEY11 处理 LJMP KEY 均不是转到键检测 KEY11 MOV A P1 读键值 键值处理 从程序中我们可看出 键扫描法实际上是先使列 行 线全输出低电平 23 然后判断行 列 线状态 若行线全为高电平 表示无键被按下 若行线不全 为高电平表示有键被按下 然后依次使列线为低电平 再判断行线状态 当行 线全为高电平时 表示被按下的键不在本列 当行线不全为高电平时 表示被 按下的键在本列 把此时的行线状态与列线状态和在一起即为被按下的键的位 置 线反转法线反转法 扫描法对键的识别采用逐行 列 扫描的方法获得键的位置 当被按下的 键在最后一行时需要扫描 N 次 N 为行数 当 N 比较大时键盘工作速度较慢 而线反转法则不论键盘有多少行和多少列只需经过两步即可获得键的位置 我 们仍以图 4 11 为例 线反转法的第一步与扫描法相同均是把列线置低电平 行置高电平然后读行状态 第二步与第一步相反把行线置低电平 列线置高电 平然后读列线状态 若有键按下则两次所读状态的结果即为键所在的位置 这 样通过两次输出和两次读入可完成键的识别 比扫描法要简单 KEY MOV P1 0FH 列输出低电平 行输出高电平 MOV A P1 读 P1 口状态 ANL A 0FH 保留行状态 CJNE A 0FH KEY0 有键按下转 KEY0 SJMP KEY 无键按下等待 转键检测 KEY0 LCALL DELAY10 调 10mS 延时取抖 MOV A P1 ANL A 0FH MOV B A CJNE A 0FH KEY1 不是抖动转键值判断 SJMP KEY 是抖动到键检测 KEY1 MOV P1 0F0H 行输出低电平 列输出高电平 MOV A P1 ANL A 0F0H ORL A B 24 键值处理 3 3 键盘工作方式键盘工作方式 在实际应用系统中 键盘只是系统的一部分 键的识别也只是 CPU 工作内 容的一部分 系统在工作中采取何种方式对键盘进行识别 读取键状态这就是 键盘工作方式 键盘工作方式主要有扫描方式和中断方式两种 扫描方式扫描方式 键盘的扫描方式又可分为编程扫描和定时扫描 编程扫描是指在特定的程 序位置段上安排键盘扫描程序读取键盘状态 此时用户可输入数据和控制命令 定时扫描是指利用单片机内部或扩展的定时器产生定时中断 在中断中进行键 盘扫描的工作方式 不论哪一种扫描方式 键盘程序都应当完成 键是否被按 下判断 按键削抖处理 求键位置等 中断方式中断方式 中断方式是指 当无键按下时 CPU 处理其他工作而不必进行键的扫描 当有键被按下时 通过硬件电路向 CPU 申请键盘中断 在键盘中断服务程序中 完成键盘处理 该种方法可提高 CPU 的工作效率 4 2 4 显示器显示器 1 七段七段 LED 显示器显示器 LED 显示器是由发光二极管按照一定的排列规律组成的显示器件 这种显 示器有共阳极和共阴极两种组成形式 常用的七段 LED 显示器的内部结构和外 引脚排列见图 4 1 在共阴极七段 LED 结构中 所有发光二极管的阴极接在一起形成公共极 COM 使用时 COM 接低电平 当某段发光二极管的阳极接高电平时 则该段二 极管发光显示字符 共阳极七段 LED 是把所有的发光二极管的阳极接在一起形 成公共端 COM 使用时 COM 端接高电平 当某段发光二极管的阴极接低电平时 25 则该段二极管发光进行显示 表 4 1 给出了七段 LED 的显示字型码 表中的字型码未包扩小数点位 Dp 段线的排列格式按 g f e d c b a 即 g 段为显示段码的最高位 a 段为显示段 码的最低位 当然段线也可按照其他方式进行排列 从表中可看出共阴极结构 与共阳极结构的显示段码互为反码 a 共阴极结构 b 共阳极结构 c 外引脚图 图 4 1 LED 结构及引脚排列图 表 4 1 七段 LED 字型码 显示字 符 共阴极字型 码 共阳极字型 码 显示字 符 共阴极字型 码 共阳极字型 码 03FHC0HA77H88H 106HF9Hb7CH83H 25BHA4HC39HC6H 34FHB0Hd5EHA1H 466H99HE79H86H 56DH92HF71H8EH 67DH82HP73H8CH 26 707HF8H 40HBFH 87FH80H 全灭 00HFFH 96FH90H 问题 单片机控制电路中 应如何选择问题 单片机控制电路中 应如何选择 LEDLED 显示器的结构 显示器的结构 2LED 显示器的显示方式显示器的显示方式 在实际应用系统中 N 片七段 LED 构成 N 位七段码显示器 LED 的公共端 COM 叫做显示器的位选线 a g 称为段选线 这样 N 位 LED 显示器有 N 根位选 线 N 8 根段选线 包括小数点位 位选线控制 LED 的每一位是否显示 段选 线控制每一位的显示字符 根据位选线与段选线的接法 LED 有两种显示方式 静态显示方式和动态显示方式 1 1 静态显示方式 静态显示方式 在静态显示方式 所有的位选线 COM 连接到一起接低电平 共阴极 或接 高电平 共阳极 每一位 LED 的段选线连接到一个 8 位显示输出口上 这样 N 位显示器共需要 8 N 根显示输出线 显示时位与位之间是相互独立的 彼此 不产生影响 图 4 2 为静态 N 位 LED 显示器原理图 图 4 2 N 位 LED 静态显示原理图 由于位选线接在一起 因此控制每一显示位的段选码即可控制每一位的显 示字符 保持段选码不变 则显示的字符也不变 当需要改变显示内容时只需 改变显示位的段码 这种显示方式具有显示亮度高 显示稳定 控制方便等优 27 点 但当显示的位数较多时 占用的 I O 口线较多 2 2 动态显示方式 动态显示方式 图 4 3 为 N 位动态显示硬件连接图 图 4 3 N 位动态 LED 显示原理图 与静态显示方式不同 动态显示方式是把段选线的对应位连接到一起 接 到一个 8 位输出 I O 口线上 每一位的位选线接到一根独立的 I O 口线上 这 样 N 位显示器共需要 8 N 根 I O 口线 8 根段选线 N 根位选线 显示时段选 码由同一 8 位 I O 口输出 具体哪一位显示由位选码决定 由于段选码并联接 在一起 因此同一时刻只能有一位 LED 显示字符 其他位不显示 即只能有一 位位选线有效 为了能显示 N 位字符 必需 N 位 LED 数码管等间隔时间轮流发 光显示 只要显示间隔时间比较短 利用人眼视觉暂留的特点可造成 N 位同时 显示的效果 动态显示与静态显示相比有需要 I O 口线少 功耗小等优点 但控制程序 较复杂 显示亮度低 3LED 显示器与单片机接口显示器与单片机接口 LED 显示电路与单片机的接口分静态显示接口电路和动态显示接口电路两 类 每一类中又可分为软件译码和硬件译码两种控制方式 由于静态显示电路 和静态显示控制程序比较简单 因此静态显示电路在此不作介绍 软件译码方 法是指将要显示的字符通过程序的方法译成七段 LED 显示字型码 通过 I O 口 28 直接输出 LED 的段选码 硬件译码是指将要显示的字符直接输出给硬件译码电 路 通过硬件译码电路再把 BCD 码或十六进制码转换成七段 LED 显示字型码 1 软件译码显示接口 图 4 4 为通过 8255A 并行可编程扩展接口构成的 8 位 LED 显示电路 其中 8255A 的 PA 口用于段选码的输出 PB 口用于位选码的输出 采用软件译码动 态显示方式 图 4 4 软件译码动态显示电路 在该硬件电路中 反相器为位驱动器 LED 的段限流电阻未画出 按图所示电路进行连接时所用 8255A 的各端口地址为 PA 口地址 7FFCH PB 口地址 7FFDH 控制口地址 7FFFH PA PB 口均设定为输出工作方式 其控制字为 10000000B 控制程序如下 DISP MOV DPTR 7FFFH 选择 8255A 的控制口 MOV A 80H PA PB 口控制字为 80H MOVX DPTR A 8255A 初始化 29 MOV R0 TAB1 指向显示字符表 MOV R7 08H 显示位数送 R7 MOV B 01H 显示初始位位选线 COM1 有效 LOOP MOV DPTR 7FFDH 指向 B 口 MOV A B MOVX DPTR A 输出位选线 RL A MOV B A MOV A R0 取显示字符 INC R0 指向下一个显示字符 MOV DPTR TAB2 指向七段 LED 显示字型表 MOVC A A DPTR 取显示七段字型码 MOV DPTR 7FFCH 指向 A 口 MOVX DPTR A 输出段显码 LCALL DELAY 调延时子程序 DJNZ R7 LOOP 8 位未显示完继续 上述程序为一次显示 8 位字符程序 若要不断显示可重复上述程序 2 硬件译码电路 硬件译码是采用硬件译码电路的方法完成显示字符到显示七段码的转换 硬件集成译码电路类型较多 有 BCD 7 段译码器 BCD 7 段译码驱动器 BCD 7 段锁存译码驱动器 十六进制 7 段锁存译码驱动器等 表 4 2 给出了常用的硬 件译码集成电路及其性能 表 4 2 常用的硬件译码集成电路 元件名 称 功能驱动能力备注 30 74LS46 47 BCD 七段译码 输出驱 动器 段驱动 8mA 输出开路 74LS48 BCD 七段译码 输出驱 动器 段驱动 8mA 输出需上拉电阻 74LS49 BCD 七段译码 输出驱 动器 段驱动 8mA OC 输出 4511 BCD 七段译码 输出驱 动器 段驱动 8mA CMOS 器件 输出锁存 MC14558 BCD 七段译码无驱动能力 MC14547 BCD 七段译码 输出驱 动器 段驱动 8mA MC14513 BCD 七段译码 输出驱 动器 段驱动 12mA 输出锁存 ICM7212 BCD 七段译码 输出驱 动器 段驱动 8mA 可静态驱动四位共阳极 LED ICM7218 8 位动态 BCD 七段译码 器 段驱动 20mA 位驱 动 170mA 可动态驱动 8 位共阳极 LED 动态扫描频率 250HZ 硬件译码驱动器与单片机及显示器的接口见图 4 5 在该图中硬件译码驱动电路采用 BCD 七段码 输出锁存 驱动集成芯片 MC14513 位选驱动采用同向驱动器 7407 BCD 码与位选信号输出均通过 P1 口 31 图 4 5 硬件译码驱动器与单片机及显示器的接口 4 3 其他辅助电路设计 4 3 14 3 1 AT89C51AT89C51 的时钟电路单片机的时钟的产生方式的时钟电路单片机的时钟的产生方式 AT89C51 的时钟电路可以由两种方式产生 外部方式和内部方式 由于内 部时钟电路结构简单 无需外部施与时钟信号 故本次设计采用内部方式 内 部时钟方式是利用的芯片内部的振荡电路 具体则是在 XTAL1 和 XTAL2 引脚 上外接一个定时元件 如图 3 3 所示 晶体的振荡频率可在 1 2 12MHz 间任 选 耦合电容在 5 30PF 之间 这种方式对时钟具有微调作用 4 3 24 3 2 AT89C51AT89C51 复位电路复位电路 单片机的复位是靠外部电路来实现的 在时钟电路工作后 只要 RST 引脚 上有 10ms 以上的高电平出现 单片机就可以实现状态复位 然后单片机便从 0000H 单元开始执行程序 单片机通常采用上电自动复位和按钮复位两种复位 方式 为了尽可能简化电路 本次设计采用上电自动复位方式 如图 3 5 所示 4 3 34 3 3 超程报警电路超程报警电路 为了防止工作台超程 可分别在极限位置安装限位开关 对于两坐标联动 32 的数控系统 4 个方向都可能超程 即 X X Y Y 当某一方向超程 时 应立即使工作台停止移动 图 4 4 为报警指示灯电路 为达到报警的效果 要用到中断方式 这里采用 AT89C51 的外部中断方式 任何一个行程开关闭合 即工作台在某一方向超程 均会产生中断信号 在电路中设置红绿灯作为 警示指示信号 正常工作时 绿灯亮 超程报警时 红灯亮 两灯均由一个 I O 口输出 图 4 4 报警指示灯电路 4 3 44 3 4 掉电保护电路掉电保护电路 半导体存储器 RAM 最怕掉电 一但掉电 则里面存储的信息就会全部丢 失 工业作业现场环境恶劣 掉电是很有可能发生的 数控系统中的一些重要 的现场参数 如几何尺寸 工艺参数等都是存储在 RAM 中的 掉电后 数据 将会丢失 为了使掉电情况下 RAM 中的信息能得以保持 就必须设置掉电 保护电路 这样 恢复供电后 系统又能马上运行 图 4 5 所示的是一种简单 掉电保护电路的工作原理 图中为电源电压 为备用电池电压 并且 V B V 为存储器 RAM 的电源端 正常通电时 二极管导通 截止 B V V cc V 1 D 2 D RAM 的工作电压由提供 同时 还通过电阻 R 对电池充电 断电后 V V 截止 导通 此时 RAM 的工作电压由电池电压由电池经二极管和 1 D 2 D B V 2 D 电阻 R 供给 值一般取 3V 时 存储器就能可靠的保持信息 B V 33 图 4 5 掉电保护电路 4 3 54 3 5 光电隔离电路光电隔离电路 在步进电机驱动电路中 脉冲信号经功率放大器后控制步进电机励磁绕组 由于步进电机需要的驱动电压较高 电流较大 如果功率放大器直接接输出信 号 将导致强电干扰 轻则影响程序的正常工作 重则导致单片机和接口电路 的损坏 所以一般在功率放大器与接口电路之间都要接上隔离电路 光电隔离是有光耦合器来完成的 光耦合器是以光为媒介传输信号的器件 其输入端配置发出光源 输出端配置接受光源 因而输入和输出在电气上是完 全隔离的 本设计将会使用开关量电路 因此设计时选择在电路中接入光耦合 器 从而使其输入侧与输出侧的信号得到了电气隔离 互补影响 1 光耦合器的选用 本案选用的是普通的信号隔离用光耦合器 TLP521 1 其内部结构形式见 图 4 6 TLP521 1 光耦合器以发光二极管为输入端 光敏晶体管为输出端 能 够隔离频率在 100kHz 以下的信号 满足我此次设计的要求 图 4 6 TLP52
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-河北-河北广播电视天线工四级(中级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-河北-河北农业技术员三级(高级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-江苏-江苏环境监测工二级(技师)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-广西-广西水利机械运行维护工五级(初级工)历年参考题库典型考点含答案解析
- 焊工安全知识培训目的
- 2025年事业单位工勤技能-广西-广西医技工五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东计算机操作员四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东房管员四级(中级工)历年参考题库典型考点含答案解析
- 2020-2025年安全员之A证(企业负责人)通关题库(附答案)
- 2025年事业单位工勤技能-北京-北京计算机文字录入处理员五级(初级工)历年参考题库典型考点含答案解析
- 金融标准化知识培训课件
- 2024年医销售药销售工作总结
- 《电力建设工程施工安全管理导则》(NB∕T 10096-2018)
- 仓库出错货款报告范文
- 银行下半年对公账户新增存款营销活动方案
- 健康管理中心运营与服务流程规范
- GB/T 2820.7-2024往复式内燃机驱动的交流发电机组第7部分:用于技术条件和设计的技术说明
- HG∕T 4281-2011 塑料焊接工艺规程
- 自考08257《舆论学》备考试题库(含答案)
- HG20202-2014 脱脂工程施工及验收规范
- 中学舆情应急处置方案
评论
0/150
提交评论