基于单片机的PWM直流调速系统设计_第1页
基于单片机的PWM直流调速系统设计_第2页
基于单片机的PWM直流调速系统设计_第3页
基于单片机的PWM直流调速系统设计_第4页
基于单片机的PWM直流调速系统设计_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

内蒙古科技大学 本科生毕业设计说明书 毕业论文 题 目 基于单片机的 PWM 直流调 速系统设计 学生姓名 杨少英 学 号 0605106422 专 业 自动化 班 级 06 4 指导教师 贾玉瑛 高级工程师 精品文档 I欢迎下载I欢迎下载 基于单片机的基于单片机的 PWMPWM 直流调速系统设计直流调速系统设计 摘要摘要 随着时代的进步和科技的发展 电机调速系统在工农业生产 交通运输以 及日常生活中起着越来越重要的作用 因此 对电机调速的研究有着积极的意 义 长期以来 直流电机被广泛应用于调速系统中 而且一直在调速领域占居主 导地位 基于单片机的直流电机调速系统硬件电路的标准化程度高 制作成本 低 且不受器件温度漂移的影响 其控制软件能够进行逻辑判断和复杂运算 系统的稳定性好 可靠性高 直流电动机具有优良的起 制动性能 宜于在广 泛范围内平滑调速 在轧钢机 矿井卷机 挖掘机 金属切削机床 造纸机 高层电梯等领域中得到广泛应用 本设计是基于单片机控制的 PWM 直流电机调速系统 系统以 AT89C52 单片 机为核心 以 2A 1000r min 小直流电机为控制对象 以 L298N 为 H 桥驱动芯 片实现速度 电流反馈双闭环 采用 PID 控制算法 调节 PWM 占空比从而控制 电机两端电压 以达到调速的目的 用 4 3 键盘输入有关控制信号及参数 可 以实现电机的启制动 正反转 速度调节 并在 4 位 LED 上实时显示输入参数 及动态转速 关键词关键词 单片机 直流电机 PWM PID 精品文档 II欢迎下载II欢迎下载 BasedBased onon SCMSCM PWMPWM dcdc speedspeed controlcontrol systemsystem designdesign AbstractAbstract With the progress of The Times and the development of science and technology motor speed system in agricultural production transportation and daily life plays a more and more important role in motor speed therefore the research has positive significance For a long time have been widely applied in dc motor control system and has been inhabited areas in speed dominant Based on SCM dc motor speed control system of high degree of standardization of hardware circuit low cost and the temperature drift Device The control software to logic and complex operation The system has good stability and reliability Dc motor with excellent braking performance and in a wide range smooth speed In the mill mine machine excavator metal cutting machine paper machine high level elevator is widely used in the fields The design is based on single chip microcomputer control system of dc motor control PWM by AT89C52 singlechip system and 1000r min small double a dc motor to control L298N H bridge to drive chip realize speed double loop current feedback PID control algorithm regulate and control PWM occupies emptiescompared to achieve both voltage motor speed Use 4 3 keyboard input signal and the relevant control parameters can realize the rev brake motor speed regulation and positive B 组只能设置为基本 I O 或 闪控式 I O 两种模式 而这些操作模式完全由控制寄存器的控制字决定 图 2 3 给出了 8255 芯片引脚结构 8255 引脚功能 RESET 复位输入线 当该输入端外接高电平时 所有内部寄存器 包括控制 寄存器 均被清除 所有 I O 口均被置成输入方式 图 2 3 8255 引脚图 CS 芯片选择信号线 当这个输入引脚为低电平时 即 CS 0 时 表示芯片被 选中 允许 8255 与 CPU 进行通讯 CS 1 时 8255 无法与 CPU 做数据传输 RD 读信号线 当这个输入引脚为低电平时 即 RD 0 且 CS 0 时 允许 8255 通过数据总线向 CPU 发送数据或状态信息 即 CPU 从 8255 读取信息或数据 WR 写入信号 当这个输入引脚为低电平时 即 WR 0 且 CS 0 时 允许 CPU 将 数据或控制字写入 8255 D0 D7 三态双向数据总线 8255 与 CPU 数据传送的通道 当 CPU 执行输入 输出指令时 通过它实现 8 位数据的读 写操作 控制字和状态信息也通过数据 总线传送 PA0 PA7 端口 A 输入输出线 一个 8 位的数据输出锁存器 缓冲器 一个 8 位的数据输入锁存器 PB0 PB7 端口 B 输入输出线 一个 8 位的 I O 锁存器 一个 8 位的输入输 精品文档 8欢迎下载8欢迎下载 出缓冲器 PC0 PC7 端口 C 输入输出线 一个 8 位的数据输出锁存器 缓冲器 一个 8 位的数据输入缓冲器 端口 C 可以通过工作方式设定而分成 2 个 4 位的端口 每个 4 位的端口包含一个 4 位的锁存器 分别与端口 A 和端口 B 配合使用 可 作为控制信号输出或状态信号输入端口 8255 有 4 个内部缓存器 分别是 A 端口缓存器 B 端口缓存器 C 端口缓存器及控制缓存器 当微电脑要读写 8255 的内部缓存器时 必须利用 A1 及 A0 指定要对那一 个暂器进行读写 动作 下表为 A1 A0 配合 RD WR 及 CS 的控制状态表 表 2 2 A1 A0 RD WR CS 操作情形 0 0 0 1 0 A 端口数据送到总 线 0 1 0 1 0 B 端口数据送到总 线 1 0 0 1 0 C 端口数据送到总 线 0 0 1 0 0 总线数据存入 A 端 口 0 1 1 0 0 总线数据存入 B 端 口 1 0 1 0 0 总线数据存入 C 端 口 1 1 1 0 0 总线数据存入控制 缓存器 1 总线呈高阻抗 1 1 0 1 0 错误操作 精品文档 9欢迎下载9欢迎下载 1 0 总线呈高阻抗 2 1 3 22 1 3 2 74HC37374HC373 简介简介 4 373 为三态输出的八 D 透明锁存器 共有 54 74S373 和 54 74LS373 两种 线路结构型式 74HC373 其主要电器特性的典型值如下 不同厂家具体值有差别 型号 tPd PD 54S373 74S373 7ns 525mW 54LS373 74LS373 17ns 120mW 373 的输出端 O0 O7 可直接与总线相连 当三态允许控制端 OE 为低电平 时 O0 O7 为正常逻辑状态 可用来驱动负载或总线 当 OE 为高电平时 O0 O7 呈高阻态 即不驱动总线 也不为总线的负载 但锁存器内部的逻辑操作不 受影响 当锁存允许端 LE 为高电平时 O 随数据 D 而变 当 LE 为低电平时 O 被锁存在已建立的数据电平 当 LE 端施密特触发器的输入滞后作用 使交流 和直流噪声抗扰度被改善 400mV 图 2 4 给出了 74HC373 芯片引脚结构 图 2 4 74HC373 引脚图 2 1 3 32 1 3 3 L298NL298N 简介简介 5 5 L298 是 SGS 公司的产品 比较常见的是 15 脚 Multiwatt 封装的 L298N 内 部同样包含 4 通道逻辑驱动电路 可以方便的驱动两个直流电机 或一个两相 步进电机 精品文档 10欢迎下载10欢迎下载 图 2 5 是 L298N 内部结构图 L298N 可接受标准 TTL 逻辑电平信号 VSS VSS 可接 4 5 7 V 电压 4 脚 VS 接电源电压 VS 电压范围 VIH 为 2 5 46 V 输出电流可达 2 5 A 可 驱动电感性负载 1 脚和 15 脚下管的发射极分别单独引出以便接入电流采样电 阻 形成电流传感信号 L298 可驱动 2 个电动机 OUT1 OUT2 和 OUT3 OUT4 之间可分别接电动机 如图 2 7 此装置我们选用驱动一台电动机 5 7 10 1 2 脚接输入控制电平 控制电机的正反转 EnA EnB 接 PWM 端 控制电机的速 度 表 2 3 是 L298N 功能逻辑图 图 2 5 表 2 3 精品文档 11欢迎下载11欢迎下载 In3 In4 的逻辑图与表 1 3 相同 由表 2 3 可知 EnA 为低电平时 电机停 止运行 当 EnA 为 PWM 时 输入电平为一高一低 电机正或反转 同为低电平 电机停止 同为高电平电机刹停 下图是其引脚图 图 2 6 精品文档 12欢迎下载12欢迎下载 图 2 7 图 2 8 为采用内部集成有两个桥式电 路的专用芯片 L298 所组成的电机驱 动电路 驱动芯片 L298 是驱动二相和四相步进电机的专用芯片 我们利用它内 部的 桥式电路来驱动直流电机 这种方法有一系列的优点 每一组 PWM 波用来 控制一个电机的速度 而另外两个 I O 口可以控制电机的正反转 控制比较简 单 电路也很简单 一个芯片内包含有 8 个功率管 这样简化了电路的复杂性 如图所示 IOB10 IOB11 控制第一个电机的方向 IOB8 输入的 PWM 控制第一个 电机的速度 IOB12 IOB13 控制第二个电机的方向 IOB9 输入的 PWM 控制第二 个电机的速度 精品文档 13欢迎下载13欢迎下载 图 2 8 2 1 3 42 1 3 4 AD574AD574 简介简介 6 6 AD574A 是美国模拟数字公司 Analog 推出的单片高速 12 位逐次比较型 A D 转换器 内置双极性电路构成的混合集成转换芯片 具有外接元件少 功 耗低 精度高等特点 并且具有自动校零和自动极性转换功能 只需外接少量 的阻容器件即可构成一个完整的 A D 转换器 AD574 是一种常用的 12 位 AD 变换芯片 也可以实现 8 位转换 有两个模 拟信号输入端 分别为 10V 输入端和 20V 输入端 各自都既允许单极性输入 也允许双极性输入 但芯片本身是单路工作 只允许一个模拟信号输入端接入 信号 它可以和 16 位 CPU 相连接 也可以和 8 位 CPU 相连接 只需要适当的改 变某些控制引脚的接法 AD574 可以通过简单的三态门 锁存器接口与微机的 系统总线相连接 也可以通过编程接口与系统总线相连接 采用查询 STS 状态 可判断变换是否完成 AD574A 主要功能特性如下 分辨率 12 位 非线性误差 小于 1 2LBS 或 1LBS 转换速率 25us 模拟电压输入范围 0 10V 和 0 20V 0 5V 和 0 10V 两档四种 电源电压 15V 和 5V 数据输出格式 12 位 8 位 芯片工作模式 全速工作模式和单一工作模式 精品文档 14欢迎下载14欢迎下载 图 2 9 AD574 引脚图 AD574A 的引脚结构如图 2 9 1 Pin1 V 5V 电源输入端 2 Pin2 12 8 数据模式选择端 通过此引脚可选择数据纵线是 12 位或 8 位输出 3 Pin3 CS 片选端 4 Pin4 A0 字节地址短周期控制端 与 端用来控制启动转换的方式和 数据输出格式 须注意的是 端 TTL 电平不能直接 5V 或 0V 连接 5 Pin5 R C 读转换数据控制端 6 Pin6 CE 使能端 7 Pin7 V 正电源输入端 输入 15V 电源 8 Pin8 REF OUT 10V 基准电源电压输出端 9 Pin9 AGND 模拟地端 10 Pin10 REF IN 基准电源电压输入端 11 Pin V 负电源输入端 输入 15V 电源 12 Pin1 V 正电源输入端 输入 15V 电源 13 Pin13 10V IN 10V 量程模拟电压输入端 14 Pin14 20V IN 20V 量程模拟电压输入端 15 Pin15 DGND 数字地端 精品文档 15欢迎下载15欢迎下载 16 Pin16 Pin27 DB0 DB11 12 条数据总线 通过这 12 条数据总线向 外输出 A D 转换数据 17 Pin28 STS 工作状态指示信号端 当 STS 1 时 表示转换器正处于 转换状态 当 STS 0 时 声明 A D 转换结束 通过此信号可以判别 A D 转换器 的工作状态 作为单片机的中断或查询信号之用 AD574 工作时序的控制功能状态表 表 2 4 2 1 3 52 1 3 5 LF398LF398 简介简介 LF398 是一种反馈型采样保持放大器 也是目前较为流行的通用型采样保 持放大器 与 LF398 结构相同的还有 LF198 LF298 等 都是由场效应管构成 具有采样速度高 保持电压下降慢和精度高等特点 当作为单一放大器时 LF398LF398 直流增益精度为 0 002 采样时间小于 6us 时 精度可达 0 01 输入偏置电压的调整只需在偏置端 2 脚 调整即可 并且在不降 低偏置电流的情况下 带宽允许 1MHz 其主要技术指标有 1 工作电压 5 18V 2 采样时间 10us 3 可与 TTL PMOS CMOS 兼容 4 当保持电容为 0 01uF 时 典型保持步长为 0 5mV 5 低输入漂移 保持状态下输入特性不变 6 在采样或保持状态时高电源抑制 下图为集成采样 保持器 LF398 引脚图 精品文档 16欢迎下载16欢迎下载 图 2 10 LF398 引脚图 2 1 3 62 1 3 6 3020T3020T 简介简介 霍尔传感器 7 是对磁敏感的传感元件 常用于开关信号采集的有 CS3020 CS3040 等 这种传感器是一个 3 端器件 外形与三极管相似 只要接 上电源 地 即可工作 输出通常是集电极开路 OC 门输出 工作电压范围 宽 使用非常方便 如图 2 11 所示是 CS3020 的外形图 将有字面对准自己 三根脚从左右 分别是 Vcc 地 输出 图 2 11 CS3020 外形图 使用霍尔传感器获得脉冲信号 其机械结构也可以做得较为简单 只要在 转轴的圆周上粘上一粒磁钢 让霍尔开关靠近磁钢 就有信号输出 转轴旋转 时 就会不断地产生脉冲信号输出 如果在圆周上粘上多粒磁钢 可以实现旋 转一周 获得多个脉冲输出 在粘磁钢时要注意 霍尔传感器对磁场方向敏感 粘之前可以先手动接近一下传感器 如果没有信号输出 可以换一个方向再试 这种传感器不怕灰尘 油污 在工业现场应用广泛 精品文档 17欢迎下载17欢迎下载 2 1 3 72 1 3 7 CS040GCS040G 简介简介 CS040G 系列霍尔电流传感器 应用霍尔效应开环原理的电流传感器 能在电隔离条件下测量直流 交流 脉冲以及各种不规则波形的电流 结构参数 mm 图 2 12 引脚说明 1 15V 2 0V 电源地 3 Vout 4 15V 表 2 5 结构参数 型号 CS010GCS020GCS030GCS040G IP N 原边额定输入电流 10203040A 精品文档 18欢迎下载18欢迎下载 IP 原边电流测量范围 0 200 400 600 80 A VS N 副边额定输出电压 1 1 V VC 电源电压 12 15 5 V IC 电流消耗 VC 15V 20mA Vd 绝缘电压 在原边与副边电路之间 2 5KV 有效值 50Hz 1 分钟 L 线性度 1 FS V0 零点失调电压 TA 25 30mV VO M 磁失调电压 IPN 0 20mV VO T 失调电压温漂 IPN 0 TA 25 85 1mV Tr 响应时间 3 s f 频带宽度 3dB DC 20 kHz TA 工作环境温度 25 85 TS 贮存环境温度 40 100 RL 负载电阻 TA 25 10K 使用说明 精品文档 19欢迎下载19欢迎下载 1 传感器按结构图说明接线 当待测电流从传感器穿芯孔中穿入 即可从 输出端测得与被测电流一一对应的电压值 注 错误的接线可能导致传感器 的损坏 2 根据用户需求定制不同额定输入电流和输出电压的传感器 3 传感器的输出幅度可根据用户需要进行适当调整 2 22 2 PWMPWM 信号发生电路设计信号发生电路设计 2 2 12 2 1 PWMPWM 的基本原理的基本原理 直流电机脉冲宽度调制 Pulse Width Modulation 简称PWM 8 8 调速产 生于20 世纪70 年代中期 最早用于自动跟踪天文望远镜 自动记录仪表等的 驱动 后来由于晶体管器件水平的提高及电路技术的发展 PWM 技术得到了高 速发展 各式各样的脉宽调速控制器 脉宽调速模块也应运而生 许多单片机也 都有了PWM输出功能 而MCS 51 系列单片机作为应用最广泛的单片机之一 却 没有PWM 输出功能 本文采用定时器配合软件的方法实现了MCS 51单片机的PWM 输出调速功能 这对精度要求不高的场合是非常实用的 理论基础 冲量相等而形状不同的窄脉冲加在具有惯性的环节上时 其效果基本相同 冲量指窄脉冲的面积 效果基本相同 是指环节的输出响应波形基本相同 低 频段非常接近 仅在高频段略有差异 图 2 13 形状不同而冲量相同的各种窄脉冲 面积等效原理 分别将如图 2 13 所示的电压窄脉冲加在一阶惯性环节 R L 电路 上 如 图 2 14a 所示 其输出电流 i t 对不同窄脉冲时的响应波形如图 2 14b 所示 精品文档 20欢迎下载20欢迎下载 从波形可以看出 在 i t 的上升段 i t 的形状也略有不同 但其下降段则几 乎完全相同 脉冲越窄 各 i t 响应波形的差异也越小 如果周期性地施加上 述脉冲 则响应 i t 也是周期性的 用傅里叶级数分解后将可看出 各 i t 在 低频段的特性将非常接近 仅在高频段有所不同 图 2 14 冲量相同的各种窄脉冲的响应波形 用一系列等幅不等宽的脉冲来代替一个正弦半波 正弦半波 N 等分 看成 N 个相连的脉冲序列 宽度相等 但幅值不等 用矩形脉冲代替 等幅 不等 宽 中点重合 面积 冲量 相等 宽度按正弦规律变化 SPWM 波形 脉冲宽度按正弦规律变化而和正弦波等效的 PWM 波形 要改变等效输出正弦波幅值 按同一比例改变各脉冲宽度即可 PWM 电流波 电流型逆变电路进行 PWM 控制 得到的就是 PWM 电流波 SPWM 波 等效正弦波形 还可以等效成其他所需波形 如等效所需非正弦 交流波形等 其基本原理和 SPWM 控制相同 也基于等效面积原理 2 2 22 2 2 PWMPWM 信号发生电路设计信号发生电路设计 采用定时器及软件编程输出 PWM 用单片机控制 H 桥芯片使之工作在占空 比可调的开关状态 精确调整电动机转速 这种电路由于工作在管子的饱和截 止模式下 效率非常高 H 型电路保证了可以简单地实现转速和方向的控制 电子开关的速度很快 稳定性也极佳 是一种广泛采用的 PWM 调速技术 本设计采用 H 桥驱动芯片 L298N 来实现 PWM 电机调速 精品文档 21欢迎下载21欢迎下载 图 2 15 用 PWM 波代替正弦半波 2 2 32 2 3 H H 桥芯片的工作原理桥芯片的工作原理 9 9 图 2 16 中所示为一个典型的直流电机控制电路 电路得名于 H 桥式驱动 电路 是因为它的形状酷似字母 H 4 个三极管组成 H 的 4 条垂直腿 而电机就 是 H 中的横杠 注意 图 2 16 及随后的两个图都只是示意图 而不是完整的电 路图 其中三极管的驱动电路没有画出来 如图 2 16 所示 H 桥式电机驱动电路包括 4 个三极管和一个电机 要使电 机运转 必须导通对角线上的一对三极管 根据不同三极管对的导通情况 电 流可能会从左至右或从右至左流过电机 从而控制电机的转向 要使电机运转 必须使对角线上的一对三极管导通 例如 如图 2 17 所示 当 Q1 管和 Q4 管导通时 电流就从电源正极经 Q1 从左至右穿过电机 然后再经 Q4 回到电源负极 按图中电流箭头所示 该流向的电流将驱动电机顺时针转动 当三极管 Q1 和 Q4 导通时 电流将从左至右流过电机 从而驱动电机按特定方 精品文档 22欢迎下载22欢迎下载 向转动 电机周围的箭头指示为顺时针方向 图 2 16 H 桥式电机驱动电路 图 2 17 H 桥电路驱动电机顺时针转动 图 2 18 所示为另一对三极管 Q2 和 Q3 导通的情况 电流将从右至左流过电 机 当三极管 Q2 和 Q3 导通时 电流将从右至左流过电机 从而驱动电机沿另 一方向转动 电机周围的箭头表示为逆时针方向 二 使能控制和方向逻辑 精品文档 23欢迎下载23欢迎下载 驱动电机时 保证 H 桥上两个同侧的三极管不会同时导通非常重要 如果 三极管 Q1 和 Q2 同时导通 那么电流就会从正极穿过两个三极管直接回到负极 此时 电路中除了三极管外没有其他任何负载 因此电路上的电流就可能达到 最大值 该电流仅受电源性能限制 甚至烧坏三极管 基于上述原因 在实际驱动电路中通常要用硬件电路方便地控制三极管的 开关 图 2 18 H 桥电路驱动电机逆时针转动 图 2 19 所示就是基于这种考虑的改进电路 它在基本 H 桥电路的基础 上增加了 4 个与门和 2 个非门 4 个与门同一个 使能 导通信号相接 这样 用这一个信号就能控制整个电路的开关 而 2 个非门通过提供一种方向输人 可以保证任何时候在 H 桥的同侧腿上都只有一个三极管能导通 与本节前面的 示意图一样 图 2 19 所示也不是一个完整的电路图 特别是图中与门和三极管 直接连接是不能正常工作的 采用以上方法 电机的运转就只需要用三个信号控制 两个方向信号和一 个使能信号 如果 DIR L 信号为 0 DIR R 信号为 1 并且使能信号是 1 那 么三极管 Q1 和 Q4 导通 电流从左至右流经电机 如图 2 20 所示 如果 DIR L 信号变为 1 而 DIR R 信号变为 0 那么 Q2 和 Q3 将导通 电流则反向 流过电机 精品文档 24欢迎下载24欢迎下载 实际使用的时候 用分立件制作 H 桥式是很麻烦的 好在现在市面上有很多封 装好的 H 桥集成电路 接上电源 电机和控制信号就可以使用了 在额定的电 压 电流内使用非常方便可靠 比如常用的 L293D L298N TA7257P SN754410 等 图 2 19 具有使能控制和方向逻辑的 H 桥电路 图 2 20 使能信号与方向信号的使用 2 32 3 主电路设计主电路设计 本设计中电机两端电枢电压由 L298 提供 通过调节 PWM 占空比来调节 L298 输出电压即电机两端电枢电压 主电路设有 H 桥型二级管电路作为保护电 路 精品文档 25欢迎下载25欢迎下载 电源经单相整流 电容滤波 稳压后提供本设计所需电源 稳压器 7805 7905 分别提供 5V 5V 电压 7815 7915 分别提供 15V 15V 电压 转速检测的传感器 电流检测的传感器都要与直流电机连接 电源部分如图 2 21 2 42 4 转速和电流的测量转速和电流的测量 本设计采用 3020T 和 CS040G 分别对电机转速和电流进行测量 3020T 其机械结构也可以做得较为简单 只要在转轴的圆周上粘上一粒磁 钢 让霍尔开关靠近磁钢 就有信号输出 转轴旋转时 就会不断地产生脉冲 信号输出 设计中采用定时器 T0 再配以软件计数器对脉冲进行计数 CS040G 应用霍尔效应开环原理的电流传感器 能在电隔离条件下测量直 流 交流 脉冲以及各种不规则波形的电流 当待测电流从传感器穿芯孔中穿 入 即可从输出端测得与被测电流一一对应的电压值 如图 2 22 图 2 21 精品文档 26欢迎下载26欢迎下载 图 2 22 2 52 5 ADAD 转换转换 由于本设计只有电流信号需要进行 AD 转换 因此采用单通道 AD 转换芯片 AD574 而电流随着电机转动方向的不同会有正负之分 因此 AD574 采用双极性 接法 AD 芯片与采样保持其的连接如下 图 2 23 精品文档 27欢迎下载27欢迎下载 2 62 6 显示与键盘电路显示与键盘电路 本设计需要 4 为 来实时显示转速值 且当有键盘按下时 要给予相 应的显示 本设计采用动态显示 动态显示方式 动态显示方式是指一位一位地轮流点亮每位显示器 称为 扫描 即每个数码管的位选被轮流选中 多个数码管公用一组段选 段选数据 仅对位选选中的数码管有效 对于每一位显示器来说 每隔一段时间点亮一次 显示器的亮度既与导通电流有关 也与点亮时间和间隔时间的比例有关 通过 调整电流和时间参数 可以既保证亮度 又保证显示 若显示器的位数不大于 8 位 则显示器的公共端只需一个 8 位 I O 口进行动态扫描 称为扫描口 控 制每位显示器所显示的字形也需一个 8 位口 称为段码输出 位共阳极 用 型三极管进行驱动 8255A 口的 PA3 到 PA0 分别控制 4 位 LED 的选通 口则进行 位笔段代码的传输 本设计采用 矩阵键盘 由 8255 的 C 口控制键盘 PC2 到 PC0 作为列 线 PC7 到 PC4 作为行线 精品文档 28欢迎下载28欢迎下载 第三章第三章 系统软件程序的设计系统软件程序的设计 3 13 1 PIDPID 控制算法原理及流程图控制算法原理及流程图 所谓增量式 PID 是指数字控制器的输出只是控制量的增量 ku 当执行机 构需要的控制量是增量 而不是位置量的绝对数值时 可以使用增量式 PID 控 制算法进行控制 增量式 PID 控制算法可以通过 式 3 1 推导出 3 1 由 式 3 1 可以得到控制器的第 k 1 个采样时刻的输出值为 3 2 将 式 3 1 与 式 3 2 相减并整理 就可以得到增量式 PID 控制算法公 式为 3 3 其中 精品文档 29欢迎下载29欢迎下载 3 4 由 式 3 3 可以看出 如果计算机控制系统采用恒定的采样周期 T 一旦 确定 A B C 只要使用前后三次测量的偏差值 就可以由 式 3 3 求出控制 量 增量式 PID 控制算法与位置式 PID 算法 式 3 1 相比 计算量小的多 因此在实际中得到广泛的应用 而位置式 PID 控制算法也可以通过增量式控制算法推出递推计算公式 3 5 上式就是目前在计算机控制中广泛应用的数字递推 PID 控制算法 物理模型 图 3 1 PID 增量式控制算法原理图 精品文档 30欢迎下载30欢迎下载 图 3 2 软件算法流程图 在实际编程时 0 1 2 可预先算出 存入预先固定的单元 设初值 e k 1 e k 2 为 0 增量式 PID 算法的优点 1 位置式算法每次输出与整个过去状态有关 计 算式中要用到过去偏差的累加值 容易产生较大的积累误差 而增量式只需计 算增量 当存在计算误差或精度不足时 对控制量计算的影响较小 3 23 2 系统中部分程序的设计系统中部分程序的设计 3 2 13 2 1 单片机资源分配单片机资源分配 系统设计内存分配表 地址功能地址功能 E0H FFH 堆栈 42H 电流给定首地址 39H 3CH 显示缓冲区 53H 电流采样首地址 3DH 置转速比例值 57H 转速采样首地址 3E 置转速积分值 5BH 中值滤波数据首地址 3FH 置电流比例值 5EH 标度变换数据地址 40H 置电流积分值 45H 转速 PID 输出首地址 精品文档 31欢迎下载31欢迎下载 41H 置转速给定首地址 47H 电流 PID 输出首地址 3 2 23 2 2 程序流程图程序流程图 主程序包括如下三个环节 实现各种初始化 包括设置堆栈指针 8255 初始化 定时器 计数器初始 化 以及开中断 定时器 计数器启动等 实现显示 按照人机对话功能显示各种不同参数 不断地进行键扫描 判断是否有键按下 如无键按下 则返回 若有键按 下 则转各键处理子程序 主程序流程图如图 3 3 系统每隔 10ms 对转速 电流采样一次 每采样三次 进行一次数据处理 即分别对转速 电流采样值进行中值滤波 标度变换 之后送显示缓存区 对 转速进行 PID 运算 输出作为电流 PID 运算的输入 电流 PID 运算的输出用来 调节 PWM 占空比 中断程序流程如图 3 4 精品文档 32欢迎下载32欢迎下载 图 3 3 主程序流程图 精品文档 33欢迎下载33欢迎下载 图 3 4 中断程序流程图 精品文档 34欢迎下载34欢迎下载 结论结论 本次设计我做的是直流电机调速 以前也接触过 是在实训的实验台上实 现 通过本次设计我了解了许多关于直流电机调速的知识 也查询了许多的资 料 并结合自己的想法完成了课题 经过学习 使我对 51 单片机有了更进一步 的了解 对一个系统的设计要如何入手有了更加深刻的体会 在整个设计过程 中 也遇到了一些问题 如 PID 算法 PWM 占空比调节等 但经过努力都一一 解决了 本设计的任务是基于单片机控制的 PWM 直流电机调速系统 系统以单片机 为核心 以小直流电机为控制对象 实现速度 电流反馈双闭环 采用 PID 控 制算法 方便的人机对话接口 用键盘输入有关控制信号及参数 可以实现电 机的启制动 正反转 速度调节 并在 LED 上实时显示输入参数及动态转速 我的设计是基于单片机控制的 PWM 直流电机调速系统 系统以 AT89C52 单 片机为核心 以 2A 1000r min 小直流电机为控制对象 以 L298N 为 H 桥驱动 芯片实现速度 电流反馈双闭环 采用 PID 控制算法 调节 PWM 占空比从而控 制电机两端电压 以达到调速的目的 用 4 3 键盘输入有关控制信号及参数 可以实现电机的启制动 正反转 速度调节 并在 4 位 LED 上实时显示输入参 数及动态转速 我用了 Protel 99 se 来绘制系统硬件电路图 用实验室现有的资源编译了 我的程序 并且通过了编译 精品文档 35欢迎下载35欢迎下载 参考文献参考文献 1 康万新 毕业设计指导及案例剖析 M 北京 清华大学出版社 2007 5 2 2 2 潘永雄 新编单片机原理与应用 M 西安 西安电子科技大学出版社 第二 版 2 7 3 郑学坚 微型计算机原理及应用 M 北京 清华大学出版社 2006 4 起止 页码 7 9 4 阎石 数字电子技术基础 M 北京 高等教育出版社 2003 12 9 9 5 孙绪才 L298N 在直流电机 PWM 调速中的应用 J 潍坊学院学报 2009 04 9 12 6 潘新民 微型计算机控制技术 M 电子工业出版社 2003 3 12 16 7 丁芝琴 基于霍尔传感器的电机测速装置的设计 J 农机化研究 2010 5 16 16 8 王兆安 电力电子技术 M 机械工业出版社 2005 7 19 21 9 陈伯时 电力拖动自动控制系统 M 上海 机械工业出版社 第三版 21 24 精品文档 36欢迎下载36欢迎下载 附录附录 T0TIMEL DATA 30H T0TIMEH DATA 31H KEYNAME DATA 32H KEYSTU DATA 33H KEYRTIME DATA 34H PORTCR DATA 35H LEDSP DATA 36H LEDBUF1 DATA 37H LEDBUF2 DATA 38H NDHZ BIT 08H BCD0 DATA 39H BCD1 DATA 3AH BCD2 DATA 3BH BCD3 DATA 3CH PZ DATA 3DH IZ DATA 3EH PI DATA 3FH II DATA 40H NRKH DATA 41H NRKL DATA 42H IRKH DATA 43H IRKL DATA 44H NUKH DATA 45H NUKL DATA 46H IUKH DATA 47H IUKL DATA 48H KP DATA 49H KI DATA 4AH RKH DATA 4BH RHL DATA 4CH MKH DATA 4DH MKL DATA 4EH EKH DATA 4FH EKL DATA 50H EEH DATA 51H EEL DATA 52H MHD EQU 3 I1 DATA 53H 精品文档 37欢迎下载37欢迎下载 I2 DATA 54H I3 DATA 55H I DATA 56H N1H DATA 57H N2H DATA 58H N3H DATA 59H NH DATA 5AH LL1 DATA 5BH LL2 DATA 5CH LL3 DATA 5DH LL DATA 5EH N1L DATA 5FH N2L DATA 60H N3 DATA 61H NL DATA 62H ORG 0000H LJMP MAIN ORG 0100H MAIN MOV R0 01H LOOPIC MOV R0 00H INC R0 CJNE R0 00H LOOPIC KAISHI MOV SP 0E0H MOV DPTR 83FCH MOV A 88H MOVX DPTR A MOV TL0 00H MOV TH0 00H MOV DPTR T0TIMEL MOV A 0F0H MOVX DPTR A MOV DPTR T0TIMEH MOV A 0D8H MOVX DPTR A MOV TL1 T0TIMEL MOV TH1 T0TIMEH MOV TMOD 14H MOV TL2 0F0H MOV TH2 0D8H MOV RCAP2H 0D8H 精品文档 38欢迎下载38欢迎下载 MOV RCAP2L 0F0H MOV T2CON 00000100B SETB ET0 SETB ET1 SETB ET2 SETB EA SETB TR0 SETB TR1 MOV R1 11111110B lcd00 MOV DPTR 83FCH MOV A R1 MOVX DPTR A MOV DPTR 83FDH MOV A 0C0H MOVX DPTR A MOV A R1 RL A JNB ACC 4 lcd00 KEYCHK MOV KEYSTU 07H MOV KEYNAME 1FH MOV DPTR 83FEH MOV A PORTCR ANL A 0F8H MOVX DPTR A MOV DPTR 83FEH MOVX A DPTR SWAP A ANL A 0FH CJNE A 0FH NEXT1 SETB C SJMP NEXT2 NEXT1 CLR C NEXT2 MOV A KEYSTU RLC A ANL A 07H MOV KEYSTU A CJNE A 2 NEXT3 ANL KEYSTU 0F8H SJMP NEXT51 NEXT3 精品文档 39欢迎下载39欢迎下载 CJNE A 4 NEXT4 SJMP NEXT52 NEXT4 CJNE A 0 NEXT5 NEXT51 MOV A KEYRTIME CJNE A 0 NEXT6 NEXT52 LCALL KEYSCAN SJMP NEXT6 NEXT5 CJNE A 6 NEXT6 ORL KEYSTU 07H NEXT6 MOV DPTR 83FEH MOV A PORTCR ORL A 07H MOVX DPTR A RET END ORG 0200H KEYSCAN MOV R7 3 MOV R1 0 MOV R3 01111111B LOOP1 MOV A R3 RL A MOV R3 A ANL A 07H MOV B A MOV DPTR 83FEH MOV A PORTCR ANL A 0F8H ORL A B MOVX DPTR A MOV DPTR 83FEH MOVX A DPTR SWAP A ANL A 0FH CJNE A 0FH NEXT1 INC R1 DJNZ R7 LOOP1 SJMP EXIT 精品文档 40欢迎下载40欢迎下载 NEXTA1 JB ACC 0 NEXTA2 MOV R2 0 SJMP NEXTA5 NEXTA2 JB ACC 1 NEXTA3 MOV R2 1 SJMP NEXTA5 NEXTA3 JB ACC 2 NEXTA4 MOV R2 2 SJMP NEXTA5 NEXTA4 MOV R2 3 NEXTA5 MOV A R1 RL A RL A ADD A R2 MOV DPTR KEYTAB MOVC A DPTR MOV KEYNAME A ORL KEYNAME 80H MOV KEYRTIME 25 MOV DPTR TAB1 MOV B 03H MUL AB JMP A DPTR EXIT RET END KEYTAB DB 10H 11H 12H 13H 0AH 01H 04H 07H 00H 02H 05H 08H ORG 0300H TAB1 LJMP KEY0 LJMP KEY1 LJMP KEY2 LJMP KEY3 LJMP KEY4 LJMP KEY5 LJMP KEY6 LJMP KEY7 精品文档 41欢迎下载41欢迎下载 LJMP KEY8 LJMP KEY9 LJMP KEYA LJMP KEYB EXIT RET END KEY0 SETB P1 1 CLR P1 2 LJMP KEYCHK KEY1 SETB P1 2 CLR P1 1 LJMP KEYCHK KEY2 CLR P1 1 CLR P1 2 LJMP KEYCHK KEY3 MOV NRKH BCD1 MOV NRKL BCD2 SWAP NRKL ORL NRKL BCD1 LJMP KEYCHK PZ MOV PZ BCD2 SWAP PZ ORL PZ BCD1 LJMP KEYCHK IZ MOV PZ BCD2 SWAP PZ ORL PZ BCD1 LJMP KEYCHK PI MOV PI BCD2 SWAP PI ORL PI BCD1 LJMP KEYCHK II MOV II BCD2 精品文档 42欢迎下载42欢迎下载 SWAP II ORL II BCD1 LJMP KEYCHK UP INC BCD LCALL LCD LJMP KEYCHK DOWN DEC BCD LCALL LCD LJMP KEYCHK YW MOV R2 11111110B RL R2 JB R2 4 YWI MOV DPTR 83FCH MOV A R2 MOVX DPTR A LJMP KEYCHK ctc1 PUSH ACC PUSH PSW clr p1 0 POP PSW POP ACC RETI CTC2 PUSH ACC PUSH PSW Clr tr0 Clr tr1 SETB p1 0 SET tr0 SETB tr1 POP PSW POP ACC AD574A AD 转换 MOV DPTR 087FdH 送端口地址 MOVX DPTR A 启动 AD574A LOOPa JB P1 7 LOOP a 检测 P1 7 口 INC DPTR 使 R C 为 1 MOVX A DPTR 读取 8 位数据 MOV I1 A 精品文档 43欢迎下载43欢迎下载 INC I1 8 位内容存入单元 MOV A TL0 RL A RL A RL A RL A MOV B 375 MUL AB MOV N1H B MOV N1L A INC N1H INC N1L NN DEC MHD LOOPM CJNE MHD 0 LOOP MOV I1 53H MOV N1H 57H MOV NIL 5FH IIII MOV LL1 I1 MOV LL2 I2 MOV LL3 I3 LCALL LB MOV I LL MOV A 05H RR A RR A RR A RR A RR A MOV B I MUL AB MOV R2 A MOV R3 B LCALLL BCDBH 精品文档 44欢迎下载44欢迎下载 LCALL LCD LCALL PID MOV UKI1 R4 MOV UKI2 R5 MOV UKI3 R6 PWM MOV A UK MOV B 0D8FH MULAB MOV T0TIMEL A MOV T0TIMEH B MOV TL1 T0TIMEL MOV TH1 TOTIMEH NNNN MOV LL1 N1H MOV LL2 N2H MOV LL3 N3H JMP LB MOV NH LL MOV A 7DH RR A RR A RR A RR A RR A MOV B N MUL AB MOV R2 A MOV R3 B LCALL BCDBH LCALL LCD LCALL PID MOV RKI1 R4 MOV RKI2 R5 MOV RKI3 R6 RET ORG 0500H 精品文档 45欢迎下载45欢迎下载 LB PUSH ACC PUSH PSW MOV A LL1 中值滤波 CJNE A LL2 LB1 LJMP LB4 LB1 JNC LB2 XCH A LL2 XCH A LL1 LB2 MOV A LL2 CJNE A LL3 LB3 LJMP LB6 LB3 JC LB4 LJMP LB6 LB4 MOV A LL1 CJNE A LL1 LB5 LJMP LB6 LB5 JC LB6 XCH A LL1 LB6 MOV LL A POP PSW POP ACC RET ORG 0600H BCDBH PUSH ACC PUSH PSW CLR F0 MOV R7 8 MOV R0 100 LOOPBH CLR C MOV A R3 SUBB A 100 ANL C F0 JC

温馨提示

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

评论

0/150

提交评论