已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计 论文 毕业设计 论文 专专 业业 无线电技术无线电技术 班班 次次 姓姓 名名 指导老师指导老师 成都成都电电子机械高等子机械高等专专科学校科学校 二 0 一一 年 液体点滴速度监控装置液体点滴速度监控装置 摘要 摘要 利用单片机设计并制作一个智能化的液体点滴速度监测与控制装置 该装置 由水滴速度测试系统 水速控制系统 显示装置 单片机装置 键盘和报 警系统等系统组成 应用水的压强随着高度差的变化而变化的原理 利用控制步进 电动机的升降来控制点滴速度 点滴速度可用键盘来设定 设定范围为 20 150 滴 分 控制误差范围在 10 1 滴左右 从改变设定值起到点滴速度基本稳定整个过 程的调整时间小于 3 分钟 同时在水到达警戒线以下时能发出报警信号 关键词关键词 点滴速度 红外线传感 步进电动机 51 单片机 目目 录录 第第 1 1 章章 绪论绪论 1 1 1 1 引 言 1 1 2 单片机应用系统概述 1 1 2 1 单片机及其特点 1 1 2 2 单片机的一般结构 1 1 2 3 单片机的应用领域 2 1 2 4 单片机的发展 2 1 2 5 单片机点滴的研究意义及发展方向 2 第第 2 2 章章 系统基本总体设计系统基本总体设计 4 4 2 1 设计要求 4 2 1 1 基本要求 4 2 1 2 发挥部分 4 2 1 3 说明 4 2 2 系统各个模块的选择与论证 5 第第 3 3 章章 系统的硬件设计系统的硬件设计 7 7 3 1 系统硬件的基本组成部分 7 3 1 1 系统基本方案 7 3 2 主要单元电路设计 7 3 2 1 点滴速度测量电路设计 7 3 2 2 点滴速度控制电路设计 8 3 2 3 键盘显示电路 9 第第 4 4 章章 系统的软件设计系统的软件设计 1111 4 1 系统的主程序设计 11 4 2 检测点滴速度子程序 13 4 3 点滴速度控制子程序 14 4 4 键盘显示子程序 15 4 5 程序设计 19 第 1 章 绪论 1 11 1 引引 言言 目前大小医院中所使用的静脉输液器都是悬挂在病人的上首才能输液 输液速 度难以准确限制 这对特护病人和对输液速度有较严格的病人是不方便的 目前的 输液监控报警器笨重 体积大 价格太高 增加医院和病人的费用 所以如果有液 体点滴装置 必将深受医务人员和病人的欢迎 因为它有很多的优点 如 可以用 按键速度准确控制速度 可以报警 设备结构简单 费用低等 所以对液体点滴速 度监控的研究十分有意义 1 21 2 单片机应用系统概述单片机应用系统概述 1 2 1 单片机及其特点 随着半导体大规模集成电路的不断发展 将计算机的 CPU RAM ROM 定时 计 数器和多种 I O 接口集成在一片芯片上 形成了芯片级的计算机 因此单片机的早 期含义为单片微型计算机 准确反映单片机的本质叫法应为微处理器 一块单片机芯片就是一台计算机 由于单片机的这种特殊结构形式 在某些应 用领域中 它承担了大中型计算机和通用的微型计算机无法完成的一些工作 使起 具有很多显著的优点和特点 因此在各个领域中都得到的迅猛的发展 单片机的特 点可归纳为以下几个方面 1 性能价格比高 2 控制功能强 3 低电压 低功耗 4 集成度及可靠性高 1 2 2 单片机的一般结构 单片机通常由 CPU 存储器 包括 RAM 和 ROM I O 接口 定时 计数器 中断 控制功能等均集成在一块芯片上 片内各功能部件通过内部总线相互连接起来 如 图 1 1 所示 图 1 1 单片机典型结构框图 1 2 3 单片机的应用领域 由于单片机具有上述显著特点 其应用领域无所不至 无论是工业部门 民用 部门乃至事业部门 到处都有它的摄影 现将单片机的应用大致归纳为以下几个方 面 1 在智能仪器仪表中的应用 在各类仪器仪表中引入单片机 使仪器仪表智 能化 提高测试的自动化程度和精度 简化仪器仪表的硬件结构 提高其性能价格 比 2 在机电一体化中的应用 如数控机械 缝纫机械 医疗设备等领域 3 在实时过程控制中的应用 如工业过程控制 过程监测 航空航天 尖端 武器 机器人系统等各种实时控制系统 4 在人类生活中的应用 目前国内外各种家用电器已普遍采用单片机代替传 统的控制电路 如洗衣机 电冰箱 空调机 微波炉 电饭煲 收音机 音响 电 风扇及许多高级电子玩具都配上了单片机 5 在其他方面的应用 单片机除以上各方面的应用之外 它还广泛应用于办 公自动化领域 商业营销领域 汽车及通信系统 计算机外部设备 模糊控制等各 领域中 1 2 4 单片机的发展 单片机的发展经历了三个阶段 第一代单片机始于 1976 年 以 Intel 公司的 MCS 48 系列为代表 其特点是采用 专门的结构设计 这个系列的弹片机在片内集成了 8 位 并行 I O 口 8 位定时计数器 RAM ROM 等 无串行 I O 口 中断处理较简单 片内 RAM ROM 容量较小 且寻址范围小 于 4KB 多用于家用电器 计算器和高级玩具 第二代单片机以 Intel 公司的 MCS 51 系列为代表 其技术特点是完善了外部总 线 并确立的单片机的控制功能 外部并行总线规范化为 16 位地址总线 用以寻址外 部 64KB 的程序存储器和数据存储器空间 8 位数据总线及相应的控制总线 形成完 整的并行三总线结构 同时还提供了多机通讯功能的串行 I O 口 具有多级中断处 理 16 位的定时 计数器 片内的 RAM 和 ROM 容量增大 有的片内还带有 A D 转换 接口 第三代单片机的显著技术特点是全速发展单片机的控制功能 是 8 位单片机的高 性能阶段及 16 位单片机发展阶段 另外技术学科的边缘性以及电气商的广泛介入是 第三代单片机的重要标志 从单片机的结构功能上看 单片机的发展趋势将向大容量高性能 小容量低价格 和外围电路内装化等几个方面发展 单片机只需要和适当的软件及外部设备相结合 便可成为一个单片机控制 系 统 单片机应用系统就是利用单片机位某目的而设计的单片机专用系统 单片机应 用系统和一般的计算机应用系统一样 也是由硬件和软件所组成 硬件和软件只有 紧密相结合 协调一致 才能组成高性能的单片机应用系统 单片机应用系统的研 制过程包括总体设计 硬件设计 软件设计 在线仿真调试 程序固化等几个阶段 1 2 5 单片机点滴的研究意义及发展方向 单片机的发展前景颇为广阔 在各个领域中都用到了单片机控制 如 工业控 制 交通控制 信息方面等 随着科学技术的进步 我们在各方面都采用了自动控 制取代人工控制 医疗事业的发展是顺应科学技术而发展的 医疗的安全和医疗水 平的提高都离不开科学技术 把高科技应用到医疗事业上是对医疗事业的一大促进 与补充 点滴输液是医院常用的医疗手段 医院对病人进行输液治疗过程中 需要 根据输液的药物和患者的病情选择 医院的护士站要管理整个科室所有的患者 患者 人数多 治疗护理忙 管理困难 为了解决这个问题 使患者得到及时地救助而开发了 该护士站监管系统 该系统可实时监控各个病床的点滴情况 如液体剩余量 滴速 等 同时 可以实现患者药液接近滴完或液滴滴速过慢时的提醒 以以便护士在护士站 上位机集中监视各个病人的输液状态 智能化是当前和今后医疗卫生技术发展的热点 重点 是 21 世纪经济技术的制 高点 在工业控制的领域 由单片机的系统很多 如大规模测控系统 大型车辆控 制系统 集散控制系统 机器人控制系统等 单个单片机在这些应用场合往往仅负 责某一个点或某个子系统的控制 对整个系统中各点的监测或各个子系统的协调控 制则由一个功能更强的中央处理器如 PC 机来完成 单片机的弱点是运算速度较慢 在要求响应速度快 实时性强 控制量多的应用场合 如机器人控制 单个单片机 难以胜任 此时虽然也可以选用高速微处理器如 DSP 等 但综合考虑性能价格比和 开发的难易程度 多单片机系统往往是一种合适的选择 国外对点滴输液监控装置 的研制较早 如日本 美国和德国等国家上世纪 80 年代末就进行了这方面的研制 现在市场上流行的大多是国外产品 类型多样 性能较好 如日本 JMS 株式会社的 OT 601 型输液泵 控制精度为 10 和 SP 500 型注射泵 还有 TOP 型输液器 美国 IMED 公司 Gemini PC 2TX 型输液器可实现四路控制 还有德国贝朗 B BRAUN 公 司的 Multifuse 型 Perfusor Compact 型 控制精度可达到 2 Infusomat P 型 和 Infusomat fmS 型 以色列也有相应的产品 型号众多 性能较好 但是这些产 品在国内只有一些大型医院引进 因其价格昂主要用于危重病人 国内对输液装置 的研制起步较晚 大都在 90 年代中期开始研究 市场上也有一些国产输液装置 如 北京科力丰高科技发展有限责任公司的 ZNB 系列产品 深圳康福特公司也有输液装 置产品 不过总体来说 种类较少 性能也需改进 我国的点滴输液自动化程度得 到普及 还需要很长的路要走 第 2 章 系统基本总体设计 2 2 1 1 设计要求设计要求 设计并制作一个液体点滴速度监测与控制装置 如图 2 1 所示 2 1 1 基本要求 1 在漏斗处检测点滴速度 并制作一个数显装置 能动态显示点滴速度 滴 分 2 通过改变 H2 控制点滴速度 也可以通过控制输液软管夹头的松紧等 其他方式来控制点滴速度 点滴速度可 用键盘设定并显示 设定范围为 20 150 滴 分 控制误差范围为设 定值 10 1 滴 3 调整时间 3min 从改变设 定值起到点滴速度基本稳定 能人工读 出数据为止 4 当 H1 降到警戒值 2 3cm 时 能发出报警信号 2 1 2 发挥部分 设计并制作一个有主站控制 16 个 从站的有线监控系统 16 个从站中 只有一个从站是按基本要求制作的一套 点滴速度监控装置 其他从站为模拟从 站 仅要求制作一个模拟从站 1 主站功能 具有定点和巡回检测两种方 式 图 2 1 液体点滴 a 可以显示从站传过来的从站号和点滴速度 b 在巡回检测时 主站能任意设定要查询的从站数量 从站号和各个从站 的点滴速度 c 能收到从站发出来的报警信号后 能声光报警并能显示相应的从站号 可以手动方式解除报警状态 2 从站功能 a 能够输出从站号 点滴速度和报警信号 从站号和点滴速度可以任意设 定 b 接收主站设定的点滴速度信息并显示 c 对异常情况进行报警 3 主站和从站家的通信方式不限 通信协议自定 但应该尽量减少信号传输 线的数量 4 其他 h1 h2 电动机 滑轮 点滴移动支架 储液瓶 瓶 受液瓶 滴斗 滴速夹 2 1 3 说明 1 控制电机类型不限 其安装位置与安装方式自定 2 储液瓶用医用 250ml 注射页玻璃瓶 瓶中为无色透明液体 3 受液瓶用 1 25L 的饮料瓶 4 点滴器采用针柄颜色为深蓝色的医用一次性输液器 滴管滴出 20 点水相 当与 1ml 0 1ml 5 赛区测试时 仅提供医用移动式点滴支架 其高度约为 1 8m 也可以自带 支架 测试所需其他设备自备 6 滴速夹在测试开始后不允许调节 7 发挥部分第 2 项从站功能中 c 中的异常情况自行确定 2 2 2 2 系统各个模块的选择与论证系统各个模块的选择与论证 1 点滴速度测量 方案一 采用电感式传感器测量点滴速度 在输液器的漏斗外围绕线圈作为敏 感元件 当液滴滴下是电感量发生变化 通过 LC 振荡电路后输出变化的频率值 经 过 F V 变换电路及电压比较后输出 TTL 电平信号来检测点滴速度 此方案测量精度 比较高 但是外围电路比较复杂 方案二 采用超声波传感器 在滴斗的外壁上固定对超声波发射和接收的传感 器 用 39 8KHZ 的脉冲调制发射 发射和接收头对称放置在滴斗两侧 让两者正对 放置 当点滴落下经过传感器之间时 挡住接收头接收信号 将产生一个低电平的 脉冲信号 在接收头接收解调 用施密特触发器检出该信号 送单片机计数一次 这样也是建立液滴与电脉冲信号的对应关系 实现点滴计数 但由于超声波装置的 调试麻烦 一般的超声波传感器相对液体体积太大 即使液滴垂直落下 所能阻挡 的超声波信号也有限 使得接收到的电信号极其微弱 受外界干扰太大 而且滴斗 壁对超声波的反映较强 使信号穿透滴斗在另一边接收比较困难 要保证信号强度 需要较高电压 这对病人以及医护人员的操作也会造成一定的危险 方案三 采用红外发射 接收管作为传感器来检测点滴 采用断续式工作方式 在点滴落下时阻挡了接收管接收红外线 产生高电平的脉冲信号 由于红外对管的 发射口直径较小 单光束发射 液体相对红外装置正交落下时 产生的信号很强 很容易检测处理 考虑到环境光干扰主要是直流分量 如果采用带有交流分量的调 制信号 则可以大幅度减少外界干扰 同时 红外传感器有很多优点 尺寸小 质 量轻 安装在滴斗上较简单 对辅助电路要求少 在近距离可以直接用直流发射 电路简单 性能稳定 这个方案有效简单 容易实现 故采用方案三 采用脉冲调制的红外对管发射接收来检测滴速 2 电机控制系统 点滴速度控制 模块 1 利用电机来控制调节点滴的速度有两种方案 方案一 通过电机驱动控制输液软管夹头的松紧来调节点滴的滴速 但在执行 元件的选取上要花费脑筋 虽然这种方法优点是控制较精细 调整较迅速 稳定性 也比较好 另外 在控制较慢的滴速时容易使塑料软管夹的过紧而变形 从而使液 滴由慢速向快速调整过程耗时太长 这只能用于粗调 方案二 通过电机驱动控制储液瓶升高或降低 改变 h2 来调节点滴的滴速 通过改变出口与储液瓶处的压强 这种方法简单易实现 故采用方案二 2 电机的选择 方案一 采用直流电机 方案二 采用步进电机 在较为精确的定位性能方面十分优越 方案三 采用伺服电机 在高起动转矩 大转矩 低惯量的系统中经常使用 由于直流电机上电即转动 掉电后惯性较大 停机时还会转动一定角度后才可 停下来 转矩小 无抱死功能 如果要求准确停在一个位置 其闭环算法较复杂 随着生产过程机械化 电气化和自动化的不断发展 出现了各种类型的特种电动机 这些电动机的工作原理 一般与普通的异步电动机和直流电动机的基本原理近似 但是它们在性能 结构 生产工艺上各有其特殊性 多用于自动控制过程中 步进 电机就是其中的一种 步进电机是工业过程控制及仪表中的主要控制元件之一 步进电机是一种将电 脉冲转化为角位移的执行机构 通俗一点讲 当步进驱动器接收到一个脉冲信号 它就驱动步进电机按设定的方向转动一个固定的角度 及步进角 您可以通过控 制脉冲个数来控制角位移量 从而达到准确定位的目的 同时您可以通过控制脉冲 频率来控制电机转动的速度和加速度 从而达到调速的目的 3 电机控制算法的选择 步进电机控制算法的选择直接影响到系统的性能和技术指标 在本系统的设计 中起着关 键的作用 较为可行的方案有 方案一 采用模糊控制 其优点是不需要精确知道被控对象的数学模型 而且 适用于具 有较大滞后特性的被控对象 缺点是静态误差不容易控制 方案二 采用 PI 控制 其优点是理论和技术都很成熟 在单片机上较易实现 可以达到较小的静态误差 方案三 采用模糊控制与 PI 控制结合的算法 根据题目对控制精度要求并不高 因此采用方案一 3 键盘显示单元 根据题目条件 滴速的大小要由人工设定的 滴速的设定值与调整值都可以在 键盘上显示 对于其显示有以下的两种方案 方案一 采用液晶显示屏和通用矩阵键盘 液晶显示屏 LCD 具有功耗小 轻 薄短小无辐射危险 平面直角显示以及影象稳定不闪烁 可视面积大 画面效果好 抗干扰能力强等特点 但由于只需显示三位温度值 信息量比较少 且由于液晶是 以点阵的模式显示各种符号 需要利用控制芯片创建字符库 编程工作量大 控制 器资源占用较多 其成本也偏高 方案二 采用三位 LED 七段数码管显示点滴数目 按键采用单列三按键 数码 管具有 低能耗 低损耗 低压 寿命长 耐老化 对外界环境要求较低 同时数 码管采用 BCD 编码显示数字 程序编译容易 资源占用较少 第 3 章 系统的硬件设计 3 13 1 系统硬件的基本组成部分系统硬件的基本组成部分 3 1 1 系统基本方案 根据题目要求系统可以分为以下几个模块 点滴速度测量模块 储液液面检测 模块 键盘显示模块 电机系统控制 点滴速度控制 模块 系统的基本框图如图 3 1 所示 图 3 1 系统基本框图 本题目中运用了检测技术 自动控制技术和电子技术 系统可以分为传感器检 测部分和控制部分 传感器检测部分 系统利用红外对管发射接收即光点传感器将检测到的信号转 化为控制器可以辨别的电信号 传感器检测电路包括 2 个单元电路 点滴速度测量 电路 储液检测电路 智能控制部分 系统中控制器件根据有传感器变换输出的电信号进行逻辑判断 控制点滴的速度及数码管的显示 完成了点滴装置的自动检测 自动调速 数码显 示及报警功能等各项任务 开控制部分主要包括 3 个电路 单片机控制电路 电动 机的驱动电路 数码管的动态显示电路 3 23 2 主要单元电路设计主要单元电路设计 3 2 1 点滴速度测量电路设计 采用红外对管发射接收测量点滴速度 其电路原理图如图 3 2 所示 图 3 2 点滴速度测量电路 由电路图可以看到 接收管与发射管正相对 无液滴滴下时 接收管收到信号 输出低电平 有液滴滴下时 下落的水滴对红外光有较强的漫反射 吸收及一定的 发散作用 导致接收光强的较大改变 接收管不能收到较强的信号 产生一个较长 的脉动 但是波形不是太好 需要经过一级施密特触发器整形 输出一个正向的脉 冲信号送给单片机中断口 据此就可以正确的测出液滴的滴数 即点滴的速度 滴 分 3 2 2 点滴速度控制电路设计 系统将点滴速度采集信号和储液信号进行处理后 在相应的单片机的 I O 控制 口输出对应的控制信号来驱动电动机的正反转 从而进行精确的控制 图 3 3 所示的电路为电动机的速度采集电路 在电动机上安装一个连杆 连杆 的另一头接 S1 开关 每当电动机旋转一周 四 S1 开关闭合一次 则通过单片机的 P3 2 口就可以送入一个计数信号 在单位时间内观察计数值即可的到电动机的转速 图 3 3 电机的转速采集电路 点滴的控制其实是靠单片机检测滴速 得到一个反馈量 输出一定信号驱动电 动机 控制电动机的正转或反转 进而带动储液瓶的上升或下降来调节滴斗的高度 即控制点滴的速度 电动机驱动电路就如图 3 4 示 图 3 4 路采用的是 H 型的开关驱动电路 整个的电路可以分为两级 第一级接 单片机的 I O 口 用射级跟随电路加大电流的驱动能力 第三级才是驱动电路 当 P3 0 为高电平时 Q5 导通 Q3 Q7 导通 电动机两端的电压为 5V 电动机正转 当 P3 1 为高电平时 Q6 导通 Q4 Q8 导通 电动机两端的电压为 5V 电动机反转 图 3 4 电动机驱动电路 本电路采用的是 H 型的开关驱动电路 整个的电路可以分为两级 第一级接单 片机的 I O 口 用射级跟随电路加大电流的驱动能力 第三级才是驱动电路 当 P3 0 为高电平时 Q5 导通 Q3 Q7 导通 电动机两端的电压为 5V 电动机正转 当 P3 1 为高电平时 Q6 导通 Q4 Q8 导通 电动机两端的电压为 5V 电动机反转 点滴控制靠单片机检测滴速 得到一个反馈量 输出一定信号控制电机上升或 下降调节滴斗的高度 3 2 3 键盘显示电路 由于本系统中采用动态显示方式驱动 3 个七段数码管 来显示点滴的速度 数 码管采用共阴极 由于 AT89C52 单片机每个 I O 的拉电流只有 1 2mA 所以在位码 和段码都加上了反向驱动器 键盘采用按键开关经上拉电阻分别接 P1 0 P1 1 P1 2 口上 起到确定 上调 和下调作用 每按上调和下调键 设定速度值增 1 减 1 单片机 XTAL2 XTAL1 接 12MHZ 晶振 提供系统时钟基值 另 RESET 接上电复位按键 原理图如图 3 5 图 3 5 键盘显示电路 第 4 章 系统的软件设计 4 14 1 系统的主程序设计系统的主程序设计 在系统刚开始启动时 首先是准备状态 包括一些清零程序等 然后就将设定 点滴速度和从站号 那么此时需要按下一个设定键向单片机申请中断用来来说明将 开始设定数据 如果没有键按下 则继续等待按键 设置完毕后将按确认键说明设 置完毕 液面报警是最优先级的报警 因此在设置完成后 一方面看液面是否报警 另一方面看实际点滴速度是否符合设定点滴速度 如果反常 将进行点滴速度报警 然后将实际滴速和设定滴速 通过比较两滴速的大小来调节步进电机的转向 如果 滴速小于给定值则电机正转 拉动点滴瓶上升 加快滴速 如果滴速大于给定值 则电机反转 带动点滴瓶下降 减慢滴速 如果滴速正好等于给定滴速 则电机保 持不动 若需修改点滴速度 则按下修改键重新设定 具体流程图如图 4 1 所示 Y N Y Y 开 始 显示 READY 有键按下 设定键 N 是否有报警 Y 确认键 显示当前滴速和给定 的点滴速的点滴速 判断工作方式 滴速小于给定值滴速大于给定值滴速等于给定值 电机正转电机反转电机不动作 N N 判断有无修改键按下 NY 图 4 1 系统的主程序 4 24 2 检测点滴速度子程序检测点滴速度子程序 滴速的测量是通过红外线传感器所接收到的点滴信号 通过脉冲转换电路把脉 冲送单片机的 INT0 口进行中断 用定时器 T0 来定时 用状态字寄存器标志位 PSW 5 来控制 T0 的关开 这里我们设置 PSW 5 0 时开 T0 PSW 5 1 时关 TO 当有一 滴点滴滴下时 设置 PSW 5 1 则开 T0 此时 TO 开始定时 同时把 PSW 5 设置成 0 当第二滴点滴滴下时 此时 PSW 5 0 所以关 TO 此时 可以测出定时器所定出 的时间 即为两点滴之间的间隔时间 这里需要查看 T0 溢出次数 如果 TO 溢出次 数在 06H 和 2DH 之间 则进行滴速处理程序 从而计算出点滴的速度 如果大于 2DH 则滴速作 20 滴 分钟 如果小于 06H 则滴速做 150 滴 分钟 这些都是异常现 象 其中 2DH 和 06H 可以这样计算 以 2DH 为例 我们知道 定时器的溢出次数是 指当定时器从所设定的数值开始每一微秒就会减 1 直到减到 0 为止 此时 我们 说定时器响应一次中断 即溢出一次 并在每次响应中断时 将分配单片机里面的 一个单元将自动加 1 来计数 从而计出溢出的次数 这里我们设定 T0 初值为 FFFFH 那么减到 0000H 时所用的时间为 FFFFus 化成十进制是 0 065535s 即溢出 一次需要 0 065535s 那么当点滴速度为 20 滴 分钟时 每滴将是 3s 的时间 则会 溢出 2DH 次 同理 做 150 滴 分钟时也如此 具体流程图如 4 2 所示 中断程序 Y 判断 PSW 5 1 N 开 T0关 T0 PSW 5 0 返 回 查看 T0 溢出 次数 小于 06H大于 2DH 作 20 滴处 理 作 150 滴处 理 滴速处理 程序 置 TH0 00 TL0 00H 置 PSW 5 1 图 4 2 速度控制子程序 4 34 3 点滴速度控制子程序点滴速度控制子程序 滴速的控制是通过控制步进电机的正反转来实现的 通过改变步进电机的转图 4 3 所示滴速测量程序流程图向从而改变点滴瓶的高度 即可改变点滴速度步进电 机的转向如果按给定的工作方式正序通电换相 步进电机就正转 如果按反序通电 换相 步进电机就反转 按照给定的通电换相顺序 通过单片机的 I O 口向驱动电 路发出控制脉冲 这里的步进电机工作在四相八拍方式 P2 0 P2 3 这四条 I O 线 向四相步进电动机传送控制信号 按 A AB B BC C CD D DA 次序通电为正转 按 D DC C CB B BA A AD 次序通电为反转 P2 口输出的信号中 0 代表使绕 组通电 1 代表使绕组断电 则可用 8 个控制字来对应这 8 个通电状态 如下表 4 3 所示 表 4 3 四相八拍工作方式的控制字 通电状态 P2 3 P2 2 P2 1 P2 0 控制字 A 1 1 1 0 FEH AB 1 1 0 0 FCH B 1 1 0 1 FDH BC 1 0 0 1 F9H C 1 0 1 1 FBH CD 0 0 1 1 F3H D 0 1 1 1 F7H DA 0 1 1 0 F6H 在程序中只要依次将这 8 个控制字送到 P2 口 步进电机就会转动一个齿距角 每送一个控制字 就完成一拍 步进电机就转过一个齿距角 程序如附录 C 的程序 清单 4 44 4 键盘显示子程序键盘显示子程序 由于有现成的键盘显示接口芯片 所以这里采用 8279 键盘显示电路 1 确定键值输入方式 键盘的扫描由 8279 中硬件电路自动完成 不需要用 软件实现扫描 键值输入可采用查询方式 亦可采用中断方式 采用查询方式时 在每次读键值前 先读入 8279 状态字 查看状态字中 D3 D0 位 这 4 位反映 FIFO RAM 中是否有数 是否全为 0 若有一位非 0 说明 FIFO RAM 中输入有数据 可读 出 否则 继续查询 采用中断方式时 8279 的中断请求线 IRQ 需经反相器接单片 机的 INT0 或 INT1 FIFO RAM 中一输有数据 8279 便向 CPU 申请中断 CPU 响应中 断 若中断开放 后 在中断服务程序中读取键值 这里采用查询方式 2 确定键值 如果规定扫描线 SL0 SL2 位列线 回复线 RL0 RL7 为行 线 则在数据输入格式中 D5D4D3 表示 SL0 SL2 的 8 个译码状态 D2D1D0 表示 RL0 RL7 的 8 个状态 因此 8 8 键盘的键值如图 4 4 所示 由于 64 个键盘的键值均 依次排列 所以键值也可作为键号使用 这里我们只用左下角的 4 4 键盘 基本参 数如表 4 4 表 4 4 8 8 键盘的键值与键号 07H OFH17H1FH27H2FH37H3FH 06H0EH16H1EH26H2EH36H3EH 05H0DH15H1DH25H2DH35H3DH 04HOCH14H1CH24H2CH34H3CH 03H0BH13H1BH23H2BH33H3BH 02H0AH12H1AH22H2AH32H3AH 01H09H11H19H21H29H31H39H 00H08H10H18H20H28H30H38H 3 8279 中有一个定时与控制电路 它自动完成数据的动态显示 要显示某 个字符 数据 时 只要将其字形码送入显示 RAM 中 在显示器上便可显示出相应 的字符 4 8279 的控制端口和数据端口口地址由 CS 和 A0 确定 A0 0 选择数据端 口 A0 1 选择控制端口 所有命令字写入控制端口 从控制端口读入的为状态字 键盘显示是一个完整的系统 首先对 8279 进行清零 然后按下设定键用来设定 从站号和滴速 同时送 LED 显示 等设置完成则按下确定键 从而设置结束 具体 流程图 4 5 所示 开 始 清除命令 DCH 8279 8279 清 除结束否 按下设定键 键入数值 按下确认键 否 完 成 图 4 5 键盘控制程序流程图 串口中断服务程序流程图如图 4 6 所示 清 RI 读 SBUF 34H 串口中断 0023H 保存现场 34H 右移一位 34H 计数值加 1 36H 37H 考虑低位向高位进位 置接收标志 位 00H 恢复现场 中断返回 RI 1 Y N 34H 3AH Y N 位 00H 1 发送子程序 Y N 计数值 2 34H 计数值 10H 考虑低位向高位进位 位 01H 1 N Y N Y 位 02H 1 地址比较 发送子程序 清 TI 发送计数值加 1 38H 39H 发送计数值 发送字 节数 发送计数值 0400H SBUF 恢复现场 中断返回 清相关标志位 清 P3 5 使发送无效 N Y 位 02H 1 位 02H 1 34H 0DH 34H 0AH NY 置收到 0DH 标 志 02H 1 恢复现场 中断返回 Y N 清收到 0DH 标 志 02H 0 数据校验运 算 Y N 接收完成 清相关标志 位 LRC 值比较 相 等 Y N 向主机发 已接收 信息 要求主机重发 P3 3 发一个脉 冲 恢复现场 中断返回 图 4 6 串口中断流程图 4 54 5 程序设计程序设计 RUN EQU 00H 电机转动时间 T1 Z8279EQU 0EFF1H 8279 状态 命令口地址 D8279EQU 0EFF0H 8279 数据口地址 LEDMOD EQU 00H 左边输入 八位字符显示 外部译码键扫描方式 双键互锁 LEDFEQ EQU 34H 扫描速率 LEDCLS EQU 0DFH 清除显示 RAM LEDWR0 EQU 90H 设定的将要写入的显示 RAM 地址 地址自动加 1 READKB EQU 40H 读 FIFO RAM 地址的命令字 LEDWR1 EQU 94H 设定的将要写入的显示 RAM 地址 地址自动加 1 LEDWR2 EQU 95H KEY ADDRESS1EQU 30H 存储键盘输入值的首地址 kEY ADDERSS0 EQU 34H ADDRESS EQU 35H 三十五的地址单元 ADDRESS1 EQU 3CH 标志位 0 T1 ZHI EQU 5AH 存放 T1 的计数值 非常重要 C DAEQU 39H G DAEQU 3AH WCZ EQU 03H 设定的误差值 用来控制电机的正反转 FLAG0 BIT 00H FLAG3 BIT 01H FLAG4 BIT 02H 定时器 T1 标志 FLAG1 EQU 41H FLAG2 EQU 42H SAMP SBUF0 EQU 50H SAMP SBUF1 EQU 51H SAMP SBUF2 EQU 52H ORG 0000H LJMPMAIN ORG 0003H LJMPINT0 ORG 000BH LJMPTIME ORG 001BH LJMPDELAY 10S ORG 0050H MAIN MOV R0 0FH MAIN1 MOV R1 0FH WANGSK NOP NOP DJNZ R1 WANGSK DJNZ R0 MAIN1 MOV SP 60H MOV SAMP SBUF0 00H MOV SAMP SBUF1 00H MOV SAMP SBUF2 00H MOVT1 ZHI 8CH SETB FLAG4 MOV FLAG1 0FFH 键盘标志位 MOV R0 KEY ADDRESS1 MOV R7 08H CLEAR 0 MOV R0 00H INC R0 DJNZ R7 CLEAR 0 LCALL INIT8279 初始化 8279 LCALLSHOW 显示 READY LCALL KEY D MOV TMOD 11H 定时器 0 1 都在工作方式 1 MOV TL1 RUN 定时器 1 给初值 MOV TH1 RUN MOV TL0 00H MOV TH0 00H SETBEA 中断使能 SETB ET0 SETB ET1 SETB TR1 SETB P1 1 SETB IT0 SETB PSW 5 SETB EX0 READY MOVDPTR Z8279 查询键盘状态 MOVXA DPTR ANL A 0FH 屏蔽状态字的高 4 位 查询 FIFO 是否为空 JZ CLEAR LONG5 MOV DPTR D8279 MOVX A DPTR LCALL KEY CHANGE CJNE A 0DH CLEAR LONG5 LJMP ZHOU1 CLEAR LONG5 LCALL SHOW1 LJMP READY ZHOU1 MOV R7 0FH LOOP 1 DJNZ R7 LOOP 1 T8279 LCALL INIT8279 MOV A C DA GARGON LCALL ZYHH LCALLSHOW1 显示采样值 LCALL KEY 键盘显示 CJNE A 0FH LXQ3 LJMP LXQ2 LXQ3 CJNEA 0EH LXQ2 LJMP T8279 LXQ2 LCALL SHU J LCALL S J 数据转换 LCALL PANDUAN 标志位 0 判断 MOV A ADDRESS1 CJNE A 0FFH T8279 CLEAR LONG CLR FLAG3 CLEAR LONG1 JB P1 5 NEXT0 CLR EA SETB P1 0 CLR P1 6 LJMP MAIN NEXT0 JB FLAG3 STOP1 转到电机反转程序 MA AGAIN LCALL S J 数据转换 LCALL ZF MOV A FLAG2 CJNE A 0FFH STOP1 转到反转电机程序 LCALL Z F LP3 判断正反转并起动 T1 LJMP XIANSHI 1 显示程序 STOP1 SETB P1 0 XIANSHI 1 LCALLSHOW1 显示采样值和给定值 MOV DPTR Z8279 查询键盘状态 MOVXA DPTR ANL A 0FH 屏蔽状态字的高 4 位 查询 FIFO 是否为空 JZ CLEAR LONG1 MOV DPTR D8279 MOVX A DPTR LCALL KEY CHANGE CJNE A 0EH CLEAR LONG1 LJMP T8279 初始化 8279 INIT8279 MOV DPTR Z8279 MOV A LEDCLS MOVX DPTR A LP MOV P0 0FFH MOVX A DPTR 读入状态字 JB ACC 7 LP 未完成时清除 等待 MOV A LEDMOD 置 8279 工作方式 MOVX DPTR A MOV A LEDFEQ 置键盘扫描速率 MOVX DPTR A RET 显示程序 SHOW MOV DPTR Z8279 MOV A LEDWR1 MOVX DPTR A MOV R7 04H MOV R0 kEY ADDERSS0 SHOW 1 MOV A R0 LCALL DISP INC R0 DJNZ R7 SHOW 1 RET DISP PUSHACC MOV DPTR TABLE 显示输入数据 MOVCA A DPTR MOV DPTR D8279 MOVX DPTR A POP ACC RET 显示程序 1 SHOW1 MOV DPTR Z8279 MOV A LEDWR2 MOVX DPTR A MOV R7 03H MOV R0 ADDRESS SHOW 2 MOV A R0 LCALL DISP INC R0 DJNZ R7 SHOW 2 RET袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年新疆塔城地区单招职业倾向性测试题库带答案
- 2025广东广州市越秀区矿泉街招聘党建工作指导员1人参考题库及一套答案详解
- 2026年贵州工贸职业学院单招职业适应性考试题库附答案
- 2026年鞍山职业技术学院单招职业倾向性测试题库完美版
- 2026年潍坊工商职业学院单招职业适应性考试题库必考题
- 2026年河北艺术职业学院单招职业倾向性考试必刷测试卷带答案
- 2026年安徽财贸职业学院单招职业技能考试必刷测试卷完美版
- 2025广东清远市招聘第二批事业编制高层次人才4人参考题库及答案详解参考
- 2025广西壮族自治区公共资源交易中心招聘编制外人员3人参考题库附答案详解(能力提升)
- 2026年青海卫生职业技术学院单招职业适应性考试题库完美版
- 2023年法律服务行业洞察报告及未来五至十年预测分析报告
- ESS核心销售技巧
- GilAir-Plus高低流量空气采样泵操作规程和维护程序
- 中医基础理论-暨南大学中国大学mooc课后章节答案期末考试题库2023年
- 内燃机学-西安交通大学中国大学mooc课后章节答案期末考试题库2023年
- 《为什么家庭会生病》读书笔记思维导图PPT模板下载
- 八个正确的心态
- SB/T 11016-2013足部保健按摩服务规范
- GB/T 4062-2013三氧化二锑
- DB63-T 1806-2020金属非金属露天矿山企业安全生产风险分级管控和隐患排查治理实施指南
- 江苏省南通市通州区川姜镇公开招考4名人力资源和社会保障基层公共服务平台工作人员【共500题附答案解析】模拟试卷
评论
0/150
提交评论