基于CVI可视界面的直流电机测控系统的设计论文.doc_第1页
基于CVI可视界面的直流电机测控系统的设计论文.doc_第2页
基于CVI可视界面的直流电机测控系统的设计论文.doc_第3页
基于CVI可视界面的直流电机测控系统的设计论文.doc_第4页
基于CVI可视界面的直流电机测控系统的设计论文.doc_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

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

文档简介

毕毕 业业 设设 计 论计 论 文 文 题题 目 目 基于 CVI 可视界面的直流电机 测控系统的设计 学生姓名 杨晓敏 指导教师 赵国树 二级学院 机电工程学院 专 业 电气工程及其自动化 班 级 06 电气工程及其自动化 学 号 0605120108 提交日期 2010 年 5 月 12 日 答辩日期 2010 年 5 月 15 日 金陵科技学院学士学位论文 目录 I 目 录 摘要摘要 IIIIII ABSTRACTABSTRACT IVIV 第一章第一章 设计的总体思想设计的总体思想 5 5 第二章第二章 直流电动机直流电动机 2 2 2 1 直流电机的概述 2 第三章第三章 LABWINDOWS CVILABWINDOWS CVI 的简介的简介 5 5 3 1 虚拟仪器的简介 5 3 2 虚拟仪器的结构 5 3 3 LABWINDOWS CVI 编程语言 7 第四章第四章 硬件设计硬件设计 8 8 4 1 硬件的简介 8 4 2 设计原理图各部分的说明 11 4 2 1 直流电动机正转 反转以及停转 11 4 2 2 直流电动机转速检测方法 11 4 2 3 直流电动机的控制方法 13 4 3 RS 232 通信电路 14 4 3 1 串行通信与并行通信 14 4 3 2 异步串行通信的数据传送格式 15 4 3 3 RS 232 接口电路图及其功能说明 16 第五章第五章 直流电动机的调速与检测的软件的设计直流电动机的调速与检测的软件的设计 1919 5 1 直流电动机的 PWM 程序设计 19 5 2 直流电动机的检测子程序 21 5 3 串口通信的程序 22 第六章第六章 上位机的软件设计上位机的软件设计 2525 金陵科技学院学士学位论文 目录 II 6 1 CVI 界面的设计 25 6 2 串口参数选择 25 6 4 电机的控制 29 6 5 调试好的 CVI 界面 31 结论结论 3232 参考文献参考文献 3333 致谢致谢 3535 附录附录 3636 附录一 直流电动机控制的总体原理图 36 附录二 直流电动机控制的程序 36 附录二 CVI 上位机的软件设计 40 金陵科技学院学士学位论文 摘要 III 基于 CVI 可视界面的直流电机测控系统的设计 摘要 直流电动机由于具有良好的起动 制动性能 适宜在大范围内平滑调速等特点 在许多需要调速或快速正反向的电力拖动系统中得到了广泛的应用 本设计应 用单片机 AT89S52 来实现直流电机的双向控制 转速的检测和显示 波形的 整形和利用 RS232 与计算机进行通信的过程 其中利用 Labwindows CVI 编写上 位机用户界面软件来实时的获取直流电机的转速 设计中用 protel99SE 完成电 路原理图的绘制 实现了系统硬件模块的搭建 利用 Proteus 对原理图进行仿 真 最后利用专业编程语言和 keilc 软件对设计的电路进行编程 关键词 单片机 Labwindows CVI RS232 串口通信 protel99SE keilc 金陵科技学院学士学位论文 Abstract IV CVI based visual interface of the DC Motor Control System Abstract DC motor as a good start braking performance suitable for a large range of speed and so smooth in many needed fast forward and reverse speed or power drive system has been widely used The design application MCU AT89S52 to achieve bi directional DC motor control speed detection and display waveform shaping and the use RS232 to communicate with the computer process including use of Labwindows CVI preparation of PC user interface software for real time DC motor speed Design using protel99SE complete circuit schematic drawing hardware modules to achieve system structures using Proteus schematic diagram of the simulation the final use of specialized programming languages and software design of the circuit keilc programming Keywords SCM Labwindows CVI RS232 serial communication protel99SE keilc 金陵科技学院学士学位论文 第一章 设计的总体思想 1 第一章 设计的总体思想 本设计要完成的任务是利用单片机来控制直流电动机 并设计其硬件电路 包括直流电机双向控制电路 转速检测电路 波形整形电路 转速显示电路 RS232 通信电路 其中单片机负责底层的对电机的 PWM 控制 分为正转和反转 转速分为低速 中速 高速 单片机还负责获取光电传感器检测到的转盘转速 即电机的转速 并用整形电路对波形整形 同时还利用单片机的串口与计算 机通信 在 LabWindows CVI 中编写上位机用户界面软件 向单片机发送改变转 速的命令 按照正转和反转及转速 低 中 高 来实时控制电机 并采集其 电机转速数据 采用巴特沃斯滤波器进行滤波 实时显示电机转速波形 并将 采集到的数据保存在 txt 文件中 设计结构图如图 1 所示 图1 设计的结构图 PWM 输出 89S52 单片机 功率驱动器 整形电路 显示波形 直流电机 转速的控制 光电传感器 CVI 上位机 RS232 方向的控制 金陵科技学院学士学位论文 第二章 直流电动机 2 第二章 直流电动机 2 1 直流电机的概述 在现实生活中 直流电动机较为常见 因为大部分的电动玩具中使用的都 是直流电动机 这一类直流电动机体积小 功率低 转速高 在一些比较小的 场合十分适用 但它的特性与大型直流电动机十分相似 从控制的角度来看 直流调速还是交流拖动系统的基础 早期直流电动机的控制均以模拟电路为基 础 由运算放大器 非线性集成电路以及少量的数字电路组成 控制系统的硬 件部分非常复杂 功能单一 而且系统非常不灵活 调试困难 阻碍了直流电动机控制技术 的发展和应用范围的推广 随着单片机技术的日新月异 使许多控制功能及算 法可以采用软件技术来完成 不但为直流电动机的控制提供了更大的灵活性 而且使系统能达到了更高的性能 从而大大节约了人力资源 降低了系统成本 有效地提高了工作效率 1 直流电动机的工作原理 直流电动机由转子部分和定子部分组成 转子部分由电枢和换向器组成 电枢由漆包线缠绕在特殊形状的铁氧体上 构成 换向器是电枢绕组的线圈引出端 通常情况下 直流电动机 有3个绕组 那么换向器就有3个 由于换向器的存在 使得电枢绕组内的电流在不同的磁极 下电流的方向不同 从而保证直流电动机的转子能够向一个方向旋转 定子部分由励磁和电刷 碳刷 组成 在直流电机中励磁部分大都是由永 久磁铁构成 电刷一般由铜片构成 与换向器进行滑动接触 用于将外部加载 的直流电压传送到电枢绕组中 1 直流电动机的电磁转矩 直流电动机的工作原理图如图2所示 图2 直流电动机的原理图 金陵科技学院学士学位论文 第二章 直流电动机 3 F为导体受到的电磁力 该值大小为 F Bli 式中 B为导体所在处的磁通 密度 l为导体在磁场中的长度 i为导体中流过的电流 由于电磁力的存在 使 得沿着电枢的外圆切线方向产生电磁转矩 直流电动机产生的电磁转矩作为驱 动转矩使直流电动机旋转 当直流电动机带着负载匀速旋转时 其输出转矩必定与负载转矩相等 但 直流电动机的输出转矩不是电磁转矩 因为直流电动机本身的机械摩擦 例如 轴承的摩擦 电刷和换向器的摩擦等 和电枢铁芯中的涡流 磁滞损耗都要引 起阻转矩 此转矩用T0表示 这样 直流电动机的输出转矩T2便等于电磁转矩T 减去直流电动机本身的阻转矩T0 所以 当直流电动机克服负载阻转矩TL匀速 旋转时 则有 T2 T T0 TL 表明 当直流电动机稳态运行时 其输出转矩的大小由负载阻转矩决定 实际上 直流电动机经常运行在转速变化的情况下 例如启动 停转或反 转等 以此必须考虑转速转速改变时的转矩平衡关系 当直流电动机的转速改变时 由于电动机及负载具有转动惯量 将产生惯 性转矩Tj 即 Tj Jd dt 式中 J为负载和电动机转动部分的转动惯量 即折算到电动机轴上的转动 惯量 为电动机的角速度 d dt为电动机的角加速度 这时电动机轴上的 转矩平衡方程式为 T2 TL Tj Jd dt 1 或 T2 TL Tj TL Jd dt 2 式2表明当输出转矩T2大于负载转矩TL时 d dt 0 说明电动机在加速 当输出转矩T2小于负载转矩TL时 d dt 0 说明电动机在减速 可见此式表示 转速变化时电动机轴上的转矩平衡关系 所以称为电动机的动态转矩平衡方程 式 2 电动机的特性 当直流电动机的转速N 0时 此时电动机上的电流最大 电流值的大小可以 根据式Ist Ua Ra进行计算 Ist时直流电动机的启动电流 出现N 0的情况有 两种 一种是直流电动机在启动的瞬间 另一种情况是电动机堵转 即当电动 机运行时 如果外加阻转矩过大 造成直流电动机停转的现象 这两种情况的 出现对于直流电动机来说都是比较致命的 所以在保证直流电动机能够正常启动的同时最好能降低启动电流 在直流电 动机运行过程中为了防止电动机出现堵转现象 如果有条件的话可以在电动机 金陵科技学院学士学位论文 第二章 直流电动机 4 轴上 加装飞轮装置 或者在选择电动机时 考虑好需要带动负载的大小 一般的 最好让直流电动机带动全部负载时的功率的60 80 这样既保护了直流电动机 同时效率也比较高 金陵科技学院学士学位论文 第三章 Labwindows CVI 的简介 5 第三章 Labwindows CVI 的简介 3 1 虚拟仪器的简介 虚拟仪器是计算机技术 仪器技术和通信技术相结合的产物 虚拟仪器的 目的是利用计算机强大资源使硬件技术软件化 分立元件模块化 降低程序开 发的复杂程度 增强系统的功能和灵活性 虚拟仪器基于计算机的软硬件测试平台 它可以代替传统的测量仪器 如 示波器 逻辑分析仪 信号发生器 频谱分析仪等 可集成自动控制 工业控 制系统 可自由构建专有仪器系统 它由计算机 应用软件和仪器硬件组成 虚拟仪器系统是将仪器硬件搭载到计算机平台 并辅以相应软件而构成的 虚拟仪器通过软件将计算机硬件资源与仪器硬件有机地融合为一体 从而 把计算机强大的计算处理能力和仪器硬件的测量 控制能力结合在一起 大大 降低了仪器硬件的成本 并通过软件实现对数据的显示 存储以及分析处理功 能 从发展史看 电子测量仪器经历了由模拟仪器 智能仪器到虚拟仪器三个 阶段 如果在计算机中插入数据采集卡 利用计算机高速计算能力完成仪器信 号的分析与处理 结果的输出 就可以把传统仪器的所有功能模块集成在一台 计算机上 软件称为仪器系统的关键 虚拟仪器技术的优势在于可由用户自己定义通用仪器系统 且功能灵活 很容易构建 所以应用面极为广泛 尤其在科研 开发 测量 检测 计量 控制等领域 更是不可多得优秀开发工具 虚拟仪器技术先进 符合国际上流 行的 硬件软件化 的发展趋势 它功能强大 可实现示波器 逻辑分析仪 频谱仪信号发生器等多种普通仪器全部功能 配以专用探头和软件 还可以检 测特定系统的参数 它操作灵活 完全图形化界面 它集成方便 不但可以和 高速数据采集设备构成自动测量系统 而且可以和控制设备构成自动控制系统 3 2 虚拟仪器的结构 一个典型的数据采集控制系统由传感器 信号调理电路 数据采集卡 板 计算机 控制执行设备五部分组成 一个好的数据采集产品不仅应具备良好 性能和高可靠性 还应提供高性能的驱动程序和简单易用的高层语言接口 使 用户能较快速地建立可靠的应用系统 近年来 由于多层电路板 可编程仪器 金陵科技学院学士学位论文 第三章 Labwindows CVI 的简介 6 放大器 即插即用 系统定时控制器 多数据采集板实时系统集成总线 高速 数据采集的双缓冲区以及实现数据高速传送的中断 DMA 直接存储器存取 等 技术的应用 使得最新的数据采集卡能保证仪器级的高准确度与可靠性 软件是虚拟仪器测控方案的关键 虚拟仪器的软件系统主要分为四层结构 系统管理层 测控程序层 仪器驱动层和I O接口层 I O接口驱动程序完成特定外部硬件设备的扩展 驱动和通信 驱动软件有 如下的基本功能 以特定的采样频率获取数据 在处理器运算的同时提取数据 使用编程的I O 中断和DMA传送数据 在磁盘上存取数据流 同时执行几种功能 集成一个以上的DAQ卡 同信号调理器结合在一起 虚拟仪器硬件系统包括GPIB IEE488 2 VXI 插入式数据 图像采集板 串行通信与网络等几类I O接口 虚拟仪器测试系统构成方案如图3所示 Active X DDE SQL 系统执行 测试报告 统计过程 控 制 系统管理 虚拟仪器模块 测控程序 仪器驱动软件 仪器驱动 IEE 488 2 VXI VISA DAQ 接口 IMAQ 接口 I O 接口 GPIB 仪器 串行 仪器 VXI 仪器 DAQ 仪器 IMAQ 板卡 仪器硬件 金陵科技学院学士学位论文 第三章 Labwindows CVI 的简介 7 图 3 虚拟仪器测试系统构成方案 金陵科技学院学士学位论文 第三章 Labwindows CVI 的简介 7 3 3 Labwindows CVI 编程语言 Labwindows CVI是一个完全的ANSI C开发环境 用于仪器控制 自动检测 数据处理的应用软件 它以ANSI C为核心 将功能强大 使用灵活的C 语言平 台与用于数据采集 分析和显示的测控专业工具有机结合起来 它的交互式开 发平台 交互式编程方法 丰富的功能面板和函数库大大增强了C语言的功能 为熟悉C语言的开发人员建立自动化检测系统 数据采集系统 过程控制系统等 提供了一个理想的软件开发环境 Labwindows CVI的一般特性 提供了标准函数库和交互式函数面板 利用便捷的用户界面编辑器 代码创建向导及函数库 实现可视化 用户界面的建立 显示和控制 利用向导和函数库开发IVI驱动程序和控制ActiveX服务器 提供了部分特定仪器的驱动 可创建和编辑NI DAQmx任务 金陵科技学院学士学位论文 第四章 硬件设计 8 第四章 硬件设计 4 1 硬件的简介 本设计的控制核心是单片机AT89S52 其内部结构如图4所示 图4 单片机的内部结构 AT89S52是一种低功耗 高性能COMS 8位微控制器 具有8KB系统内可编程 Flash存储器 使用Atmel公司高密度非易失性存储器技术制造 与工业80C51产 品指令和引脚完全兼容 片上Flash存储器允许程序存储器ISP可编程 亦适于 常规编程器 在单芯片上 拥有灵巧的8位CPU和可ISP编程的Flash存储器 使 得AT89S52为众多嵌入式应用系统提供高灵活 超有效的解决方案 AT89S52具有以下标准功能 8KBFlash存储器 256字节RAM 32位I O口线 看门狗定时器 2个数据指针 3个16位定时器 计数器 一个6向量2级终端结构 全双工串行口 片内晶振及时钟电路 另外 AT89S52可降至0Hz静态逻辑操作 支持两种软件可选择节点模式 空闲模式下 CPU停止工作 允许RAM 定时器 计数器 串口 中断继续工作 掉电保护模式下 RAM内容被保存 振荡器被冻 结 单片机一切工作停止 直到下一个中断或硬件复位为止 I O 存储器 EPROM RO M 定时 计数器 运算器 控制器 中断 CPU 片内振荡器 RAM SFP 并行口 存储器扩展控 制器 串行口 XTAL 金陵科技学院学士学位论文 第四章 硬件设计 9 图5 单片机的引脚图 管脚说明 VCC 供电电压 GND 接地 P0口 P0口为一个8位漏级开路双向I O口 每脚可吸收8TTL门电流 当P1口 的管脚第一次写1时 被定义为高阻输入 P0能够用于外部程序数据存储器 它可 以被定义为数据 地址的第八位 在FIASH编程时 P0 口作为原码输入口 当 FIASH进行校验时 P0输出原码 此时P0外部必须被拉高 P1口 P1口是一个内部提供上拉电阻的8位双向I O口 P1口缓冲器能接收输 出4TTL门电流 P1口管脚写入1后 被内部上拉为高 可用作输入 P1口被外部下 拉为低电平时 将输出电流 这是由于内部上拉的缘故 在FLASH编程和校验时 P1口作为第八位地址接收 P2口 P2口为一个内部上拉电阻的8位双向I O口 P2口缓冲器可接收 输出 4个TTL门电流 当P2口被写 1 时 其管脚被内部上拉电阻拉高 且作为输入 并因此作为输入时 P2口的管脚被外部拉低 将输出电流 这是由于内部上拉的 缘故 P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时 P2口 输出地址的高八位 在给出地址 1 时 它利用内部上拉优势 当对外部八位地 址数据存储器进行读写时 P2口输出其特殊功能寄存器的内容 P2口在FLASH编 程和校验时接收高八位地址信号和控制信号 P3口 P3口管脚是8个带内部上拉电阻的双向I O口 可接收输出4个TTL门 电流 当P3口写入 1 后 它们被内部上拉为高电平 并用作输入 作为输入 由于外部下拉为低电平 P3口将输出电流 ILL 这是由于上拉的缘故 P3口也可作为AT89C51的一些特殊功能口 如下表所示 P3 0 RXD 串行输入口 金陵科技学院学士学位论文 第四章 硬件设计 10 P3 1 TXD 串行输出口 P3 2 INT0 外部中断0 P3 3 INT1 外部中断1 P3 4 T0 记时器0外部输入 P3 5 T1 记时器1外部输入 P3 6 WR 外部数据存储器写选通 P3 7 RD 外部数据存储器读选通 P3口同时为闪烁编程和编程校验接收一些控制信号 RST 复位输入 ALE PROG 当访问外部存储器时 地址锁存允许的输出电 平用于锁存地址的地位字节 在FLASH编程期间 此引脚用于输入编程脉冲 ALE PROG 地址锁存允许信号端 当 89C51 上电正常工作后 ALE 引脚不 断向外输出正脉冲信号 此频率位振荡器频率 fosc 的 1 6 当 CPU 访问片外存 储器时 ALE 输出信号作为锁存低 8 位地址的控制信号 平时不访问片外存储 器时 ALE 端也以振荡频率的 1 6 固定输出正脉冲 因而 ALE 信号可以用作对 外输出时钟或定时信号 然而要注意的是 每当用作外部数据存储器时 将跳 过一个 ALE 脉冲 如想禁止 ALE 的输出可在 SFR8EH 地址上置 0 此时 ALE 只 有在执行 MOVX MOVC 指令是 ALE 才起作用 另外 该引脚被略微拉高 如果微 处理器在外部执行状态 ALE 禁止 置位无效 ALE 端的负载驱动能力为 8 个 LS 型 TTL 低功耗甚高速 TTL 负载 此引脚的第二功能 PROG 在对片内带有 4KBFLASH ROM 的 89C51 编程写入 固化程序 时 作为编程脉冲输入端 PSEN 程序存储允许输出信号端 在由外部程序存储器取指期间 每个机 器周期两次 PSEN 有效 但在访问外部数据存储器时 这两次有效的 PSEN 信号 将不出现 EA VPP 外部程序存储器地址允许输入端 固化编程电压输入端 当 EA 引脚接高电平时 CPU 只访问片内 FLASH ROM 并执行内部程序存储器中的指令 但当 PC 程序计数器 的值超过 0FFFH 4KB 时 将自动转去执行片外程序存 储 器内的程序 当输入信号 EA 引脚接低电平时 CPU 只访问片外 FLASH ROM 并执 行内部程序存储器中的指令 而不管是否有内部程序存储器 需要注意的是 如果保密位 LB1 被编程 则复位时在内部会锁存 EA 端的状态 当 EA 端保持高电平时 CPU 则执行内部程序存储器中的程序 在 FLASH ROM 编程期间 此引脚也用于施加 12V 编程允许电源 VPP XTAL1 接外部晶体和微调电容的一端 在片内 它是振荡电路反相放大器 的输入端 在采用外部时钟时 则该引脚输入外部时钟脉冲 金陵科技学院学士学位论文 第四章 硬件设计 11 XTAL2 接外部晶体和微调电容的另一端 它是振荡电路反相放大器的输出 端 振荡电路额频率就是晶体的固有频率 若需采用外部时钟电路 则该引脚 悬空 4 2 设计原理图各部分的说明 4 2 1 直流电动机正转 反转以及停转 本设计采用晶体三极管来控制直流电动机的正 反转以及停转 原理图如图6 所示 图6 直流电动机正转 反转以及停转的原理图 当PWM1为高电平 PWM2为低电平时 三极管Q2 Q3 Q6均导通 使得直流电 动机正转 同理 当PWM1为低电平 PWM2为高电平时 直流电动机反转 当PWM1和PWM2同时为低电平时 三极管Q1 Q2均能工作 电路中的其他部 分均不工作 直流电动机停转 当PWM1和PWM2同时为高电平时 三极管Q1 Q2 均不能工作 直流电机也停转 该电路板可以直接通过引线或插针的形式与单 片机相连 4 2 2 直流电动机转速检测方法 在应用直流电动机作为执行部件时 如果要很好地控制直流电动机 首先 要知道直流电动机的转速 对于转速的检测 方法有很多 常用到的传感器有 霍尔传感器 光电传感器 旋转编码器等 其中霍尔传感器是应用磁感应的方 金陵科技学院学士学位论文 第四章 硬件设计 12 式进行检测 由于其安装结构的限制 这种传感器检测的精度很低 所以常常 用在高转速并且对精度要求不高的场合 旋转编码器的检测精度非常高 通常 旋转一圈可输出几百至几千个脉冲 适用于转速较低的场合 但是这种传感器 价格较比其他传感器高很多 一般情况下不予采用 光电传感器的检测精度介 于前两种传感器之间 安装简单 价格较低 所以是设计中的首选 光电传感器有时又陈为光电开光 具有体积小 功能多 寿命长 精度高 响应速度快 检测距离远 以及抗电磁干扰能力强等优点 同时由于光电传感 器属于非接触式检测器件 对检测对象不会造成损伤 所以被应用到很多领域 中 透射式光电传感器是将砷化镓红外发光管和硅光敏三极管等 以相对的方 向装在中间带槽的支架上 当槽内无物体时 砷化镓发光管发出的光直接照在 硅光敏三极管的窗口上 从而产生一定大的电流输出 当有物体经过槽内时则 挡住光线 光敏管无输出 以此可识别物体的有无 适用于光电控制 光电计 量等电路中 可检测物体的有无 运动方向 转速等方面 利用透射式光电传感器检测的电路图如图7所示 图7 透射式光电传感器检测速度的电路图 可是当直流电动机高速旋转 并且光电码盘上的条纹或孔较多时 在示波 器上看到的波形对单片机来说 识别起来十分困难 为了能够让单片机准确识 别光电传感器输出的信号 可以在传感器的输出端连接一个具有施密特触发特 性的器件或是连接一个比较器 其原理图如图8所示 金陵科技学院学士学位论文 第四章 硬件设计 13 图8 应用74LS14为输出波形整形的电路图 4 2 3 直流电动机的控制方法 直流电动机在使用时需要在电动机的两个接线端上加载电压 电压的高低 直接影响电动机的转速 这取决于两者之间的关系 n U IR Ce 上式中 U为加载在电动机两端的直流电压 I为直流电动机的工作电流 R 为直流电动机线圈的等效内阻 Ce PN 60a 其中 P为电极的极对数 N为电 枢绕组总导体数 a为支路对数 通常表示为2a 即电刷间的并联支路数 这个 参数与电动机绕组的具体结构有关 所以Ce是一个常数由电动机本身的结构参 数有关 为每极总磁通 由于我们买到的直流电动机 其机械结构已经固定 励磁部分为永久磁铁 所以式中的R Ce和 已经固定 只能改变加载在直流电 动机两端的直流电压 所以 常见的直流电动机转速控制方法是调节直流电压 电压调节的两种方法 D A转换器输出法和PWM输出法 由于D A转换器大多 是电流输出型 需要外接运算放大器才能转换成电压 另外由于运算放大器输 出的电流有限 如果直接连接到直流电动机将会造成直流电动机的转矩过小和 运算放大器过热的现象 所以建议采用PWM输出方法 该方法可以利用单片机的一个I O引脚作为PWM的输出端 输出信号控制大 功率晶体管的开启和关闭 以控制电动机的运转和停止 当PWM的频率足够高时 由于电动机的绕组是感性负载 具有储能的作用 对PWM输出的高低电平起到了 平波的作用 在电动机的两端可以近似得到直流电压值 PWM的占空比越高 电 金陵科技学院学士学位论文 第四章 硬件设计 14 动机获得的直流电压越高 反之 PWM的占空比越低 电动机获得的直流电压越 低 PWM的周期对于控制直流电动机的转速和转动特性有十分重要的作用 当 PWM的周期较长 占空比较小时 在一个周期内加载在直流电动机两端电压的时 间为100ms 而电动机失去电压的时间为900ms 在这段时间内 电动机线圈绕 组内的电流已经释放完毕 当电动机转速较低时 线圈绕组的性质显现为阻性 感性较少 电动机在内部绕组的转动惯量下将继续向前转动 如果负载的转 矩较大 那么此时电动机的转速跌落很快 甚至出现停转的现象 只有下一个 PWM周期到来时 电动机才能重新转动起来 如此循环 当PWM的周期较短 占 空比仍然为10 时 在一个周期内直流电动机获得电压的时间为0 1ms 而失去 电压的时间为0 9ms 在这段时间内 直流电动机线圈绕组内的电流并不会释放 完毕 主要取决于绕组感性的大小 直流电动机继续转动 当下一个PWM周期 到来时 直流电动机重新获得电压 如此循环 直流电动机不再有停转的现象 4 3 RS 232 通信电路 4 3 1 串行通信与并行通信 在微型计算机系统中 MCU与外围电路通信的基本方式有两种 如图9所示 并行通信 数据的各位同时传送 串行通信 数据一位一位顺序传送 图9 MCU与外围电路通信的方式 外部RAM扩展电路 基本 I O 扩展电路 实时时钟电路 键盘电路 LCD接口电路都是采用并行通信方式 从图上可以看出 在并行通信中 数据 有多少位就需要多少条传送线 而串行通信只需要一对传送线 故串行通信 MCU MCU 或 外围 电路 D1 D2 Dn 状态 控制 D0 金陵科技学院学士学位论文 第四章 硬件设计 15 能节省传送线 特别是当数据位数很多和传送距离较远时 这一优点更加突 出 A D采样电路就是串行通信的一个应用 当然串行通信还包括许多其他的 通信形式 比如RS 232 CAN总线等 串行通信的主要缺点是数据的传送速率 比并行 通信要慢 4 3 2 异步串行通信的数据传送格式 串行通信是将构成字符的每个二进制数据位依据一定的顺序逐位传送 按照数据传送格式可以分为异步串行通信和同步串行通信 同步串行通信应 用在传输速度要求较高的场合 通信开始时需要同步信息 对收发两端时间 要求严格 这些条件局限了同步串行通信的应用 异步串行通信规定了字符数据的传送格式 即每个数据以相同的帧格式 传送 如下图所示 每一帧由起始位 数据位 奇偶校验位和停止位构成 字符数据一个接一个的传送 在发送间隙 通信线路上总是处于逻辑 1 状 态 0 起始位 第 n 1 个字符 第 n 个字符 起始位 0 空闲位空闲位 低位高位 5 8 位数据 奇偶 校验 停止 位 空闲位和起始位 当通信线上没有数据传送时就处于空闲状态 通信线 上保持逻辑电平 1 即相当于发送端不断发送空闲位 1 当发送端要 发送一个字符数据时 首先发出一个逻辑 0 信号 这个低电平就是起始位 接收端检测到这个逻辑低电平后 就开始准备接收数据位信号 所以起始位 就表示字符传送开始 起始位只有1位 数据位 紧跟在起始位后面的就是数据位 数据位长度可以是5 6 7或 8位数据 在数据传送过程中 数据从最小有效位开始传送 奇偶校验位 数据位发送完后 可以选择是否发送奇偶校验位 奇偶校 验用于差错检测 有奇校验和偶校验两种方式 奇校验是指在所有数据位和 校验位中 1 的个数为奇数 偶校验是指在所有数据位和校验位中 1 的个数为偶数 奇偶校验的方法是 如果采用奇校验 则对所有数据位 金陵科技学院学士学位论文 第四章 硬件设计 16 取异或后求反便是校验位的数值 如果采用欧校验 则对所有数据位取异或 即是校验位的数值 停止位 在奇偶校验位或数据位之后发送的是停止位 可以是1位 1位 半或2位 表示一个字符的结束 波特率 通信线路上的字符数据是按位传送的 每一位宽度 位信号持 续 时间 由数据传送速率确定 传送速率越快 每一位的宽度越短 把数据传 送速率称为波特率 其定义是 单位时间内传送的信息量 以每秒传送的位 bit 表示 单位为波特 1波特 1位 秒 1bit s 1bps 在异步串行通信中 发送端和接收端保持相同的传送波特率 相同的起 始位 奇偶位和停止位 这样收发两端才能成功地传送数据 4 3 3 RS 232 接口电路图及其功能说明 单片机上有UART 通用异步接收 发送 用于串行通信 发送时数据由 TXD端送出 接收时数据由RXD端输入 片内有两个缓冲器 一个作为发送缓 冲器 另一个作为接收缓冲器 UART是可编程的全双工串行口 这里的串行 口只提供TTL电平 可以使用驱动芯片如 MAX232 把TTL电平变成RS 232标 准接口电平 从而和通用微机通信 串行通信的RS 232接口电路 包括扩展串行通信的异步收发器以及RS 232 电平转换电路 1 MAX232片介绍 MAX232是一种把电脑的串行口RS232信号电平 10 10v 转换为单片机 所用到的TTL信号点平 0 5 的芯片 MAX232芯片是美信公司专门为电脑的 RS 232标准串口设计的接口电路 使用 5v单电源供电 内部结构基本可分三个 部分 第一部分是电荷泵电路 由1 2 3 4 5 6脚和4只电容构成 功能是产 生 12v和 12v两个电源 提供给RS 232串口电平的需要 第二部分是数据转换通道 由7 8 9 10 11 12 13 14脚构成两个数 据通道 其中13脚 R1IN 12脚 R1OUT 11脚 T1IN 14脚 T1OUT 为第 一数据通道 8脚 R2IN 9脚 R2OUT 10脚 T2IN 7脚 T2OUT 为第二数据通 道 金陵科技学院学士学位论文 第四章 硬件设计 17 TTL CMOS数据从T1IN T2IN输入转换成RS 232数据从T1OUT T2OUT送到电 脑DP9插头 DP9插头的RS 232数据从R1IN R2IN输入转换成TTL CMOS数据后从 R1OUT R2OUT输出 第三部分是供电 15脚DNG 16脚VCC 5v 其内部结构如图10所示 图10 MAX232的内部结构 MAX232的元件封装图如图11所示 图11 MAX232芯片的封装图 主要特点 1 单 5V 电源工作 金陵科技学院学士学位论文 第四章 硬件设计 18 2 LinBiCMOSTM 工艺技术 3 两个驱动器及两个接收器 4 30V 输入电平 5 低电源电流 典型值是 8mA 6 符合甚至优于 ANSI 标准 EIA TIA 232 E 及 ITU 推荐标准 V 28 7 ESD 保护大于 MIL STD 883 方 法 3015 标准的 2000V 2 RS 232 DB9 的引脚定义 DCD 载波检测 主要用于Modem通知计算机其处于在线状态 即Modem检测 到拨号音 处于在线状态 RXD 此引脚用于接收外部设备送来的数据 在你使用Modem时 你会发现 RXD指示灯在闪烁 说明RXD引脚上有数据进入 TXD 此引脚将计算机的数据发送给外部设备 在你使用Modem时 你会发现 TXD指示灯在闪烁 说明计算机正在通过TXD引脚发送数据 DTR 数据终端就绪 当此引脚高电平时 通知Modem可以进行数据传输 计 算机已经准备好 GND 信号地 此位不做过多解释 DSR 数据设备就绪 此引脚高电平时 通知计算机Modem已经准备好 可以 进行数据通讯了 RTS 请求发送 此脚由计算机来控制 用以通知Modem马上传送数据至计算 机 否则 Modem将收到的数据暂时放入缓冲区中 CTS 清除发送 此脚由Modem控制 用以通知计算机将欲传的数据送至 Modem RI Modem通知计算机有呼叫进来 是否接听呼叫由计算机决定 RS 232接口原理图如图12所示 金陵科技学院学士学位论文 第四章 硬件设计 19 图12 RS 232接口原理图 金陵科技学院学士学位论文 第五章 直流电动机的调速与检测的软件设计 19 第五章 直流电动机的调速与检测的软件的设计 本设计采用单片机对直流电动机进行控制 根据设计的直流电动机的测速 系统的硬件电路的要求 通过对系统功能的总结将系统软件程序划分为 直流 电动机控制的主程序 直流电动机转速检测子程序 直流电动机的三种速度的 控制的子程序 转速显示的子程序和串口通信的子程序 5 1 直流电动机的 PWM 程序设计 直流电机驱动使用最广泛的就是H型全桥式电路 这种驱动电路方便地实现直流 电机的三象限运行 分别对应正转 反转和停转 单片机PWM 脉冲信号的产生从程序设计上来讲 可以采用软件延时和计时器延 时两种方法 软件延时虽然理论上实现起来较容易 但占用系统资源过多 使 用并不方便 本设计应用的是软件延时的方式输出PWM 该PWM 调速器采用定时 器2中断方式产生PWM脉冲 PWM 控制子程序也就是定时器2的中断服务程序 其 程序流程图如图13所示 图13 PWM控制的框图 开始 初始化 开启定时器 2 调用 PWM 控制子程序 调用显示子程序 速度显示在 LCD 上 Yes No PWM1 0 直流电动机反转 PWM2 0 直流电动机正转 计算出电动机的转速 金陵科技学院学士学位论文 第五章 直流电动机的调速与检测的软件设计 20 其程序片段为 ifndef MOTOR PWM define MOTOR PWM define uint unsigned int define uchar unsigned char sbit PWM1 P1 0 sbit PWM2 P1 1 void Init Timer2 void RCAP2H 0 xfc 12M 1ms 16bit 自动重载 RCAP2L 0 x66 ET2 1 EA 1 TR2 1 void main void Init Timer0 timer0用来定时采样电机的速度 Initial Uart timer1用做串口通信 波特率设置9600 11 0592MHz Init Timer2 timer2产生PWM Init INT0 int0用来计数电机转速测量脉冲数 下降沿触发 InitLcd EX0 1 TR0 1 EA 1 PWM1 0 PWM2 0 while 1 ShowString 0 Line0 void Int0 ISR void interrupt 0 PulseCounter 因为电机转速慢 这里不考虑PulseCounter溢出问 题 金陵科技学院学士学位论文 第五章 直流电动机的调速与检测的软件设计 21 void Timer2 ISR void interrupt 5 using 1 TF2 0 T2中断标志位清0 if Forward Rotation Flag 1 正向转动 PWM2 0 Timer2Count 计数 if Timer2Count PWM1 ON PWM1 0 if Timer2Count PERIOD if PWM1 ON 0 PWM1 1 如果占空比D 0 保持原来状态 Timer2Count 0 else if Reverse Rotation Flag 1 反向转动 PWM1 0 Timer2Count 计数 if Timer2Count PWM2 ON PWM2 0 if Timer2Count PERIOD if PWM2 ON 0 PWM2 1 如果占空比D 0 保持原来状态 Timer2Count 0 5 2 直流电动机的检测子程序 直流电动机转速的测量有两种方法 定时法和间隔法 定时法是在一定的 时间间隔内检测脉冲的数量 即通过对发射式光电传感器的光电码盘上的孔的 数量进行测量 通过计算得出在单位时间内直流电动机转过的圈数 即可得 到转速 间隔法是检测光电码盘上孔与孔之间的间隔时间 通过这个时间可以 计算出直流电动机旋转一周需要的时间 进而得到转速 本设计采用的是定时 法 当直流电动机开始转动时 光电传感器上有四个槽 每一个槽通过时 就 金陵科技学院学士学位论文 第五章 直流电动机的调速与检测的软件设计 22 会计数 每次定时为50ms 在定时的次数到第五次时 就得到脉冲数 因为每 四个槽为一组 转速为脉冲数除以4 通常转速用转每秒表示 而前面得到的是 转每250毫秒 只要乘以4就能得到所要的转速 其程序片段为 ifndef TIMER0 define TIMER0 void Init Timer0 void TMOD 0 x01 定时器设置 1ms in 12M crystal TH0 0 x4c TL0 0 x00 定时50mS EA 0 ET0 1 TR0 0 endif void Timer0 ISR void interrupt 1 TH0 0 x4c TL0 0 x00 50ms定时 11 0592MHz Timer0Count if Timer0Count 5 250ms speed PulseCounter PulseCounter 4 4 Timer0Count 0 PulseCounter 0 5 3 串口通信的程序 当计算机和TTL电平的设备通信时 如计算机和单片机通信时 需要使用 RS 232C TTL 电平转换器件 常用的有MAX232 MAX232芯片中的两路发送接收 中任选一路作为接口 要注意其发送与接收引脚对应 否则可能对器件或计算 机串口造成永久性损坏 如选他T1IN接单片机的发送端TXD 则PC机 的RS 232的接收端RD一定要对应接T1OUT引脚 同时 R1OUT接单片机的接受端RXD引 脚 则PC机的RS 232的发送端TD一定要对应接R1IN引脚 本设计采用的是R1IN 和T1OUT这一组引脚 其程序片段为 金陵科技学院学士学位论文 第五章 直流电动机的调速与检测的软件设计 23 void UART ISR void interrupt 4 using 3 串行中断服务程序 unsigned char UartTemp 定义临时变量 if RI 一帧接收结束 硬件将RI置1 RI 0 软件将标志位清零 UartTemp SBUF 读入缓冲区的值 switch UartTemp case 0 xAA TI 1 收到要发送速度的指令 TI 1 准备发送 速度 case 0 xBB 正转命令 Forward Rotation Flag 1 Reverse Rotation Flag 0 break case 0 xCC 反转命令 Forward Rotation Flag 0 Reverse Rotation Flag 1 break case 0 xBD PWM1 ON 2 PWM2 ON 0 break 正向低速命令 case 0 xBE PWM1 ON 5 PWM2 ON 0 break 正向中速命令 case 0 xBF PWM1 ON 10 PWM2 ON 0 break 正向高速命令 case 0 xCD PWM1 ON 0 PWM2 ON 2 break 反向低速命令 case 0 xCE PWM1 ON 0 PWM2 ON 5 break 反向中速命令 case 0 xCF PWM1 ON 0 PWM2 ON 15 break 反向高速命令 case 0 xEE 停止命令 Forward Rotation Flag 0 Reverse Rotation Flag 0 PWM1 ON 0 PWM2 ON 0 break default 金陵科技学院学士学位论文 第五章 直流电动机的调速与检测的软件设计 24 if TI 如果是发送标志位 清零 TI 0 if UartTemp 0 xAA 接收到指令0 xAA 则发送速度 SBUF speed 启动发送 UartTemp 0 金陵科技学院学士学位论文 第六章 上位机的软件设计 25 第六章 上位机的软件设计 6 1 CVI 界面的设计 界面的设计如图 13 所示 图 13 CVI 界面的设计 6 2 串口参数选择 在进行 CVI 上位机的运行时 首先必须要使计算机上的端口与实验板上所 用的端口一致 所以必须选择合适的串口 也要根据不同串口选择合适的波特 率 选择你所要的奇偶校验模式 数据位数和停止位数 程序片段为 串口参数选择子程序 void SelectUartPara void int ComValue BaudValue JoValue LengthValue StopValue 选择串行口 GetCtrlVal PANEL PANEL COMSELECT switch ComValue case 1 ComSelect 1 break 金陵科技学院学士学位论文 第六章 上位机的软件设计 26 case 2 ComSelect 2 break case 3 ComSelect 3 break case 4 ComSelect 4 break case 5 ComSelect 5 break 选择波特率 GetCtrlVal PANEL PANEL BTLSELECT switch BaudValue case 1 BaudSelect 1200 break case 2 BaudSelect 2400 break case 3 BaudSelect 4800 break case 4 BaudSelect 9600 break case 5 BaudSelect 19200 break 选择奇偶校验模式 GetCtrlVal PANEL PANEL JYSELECT switch JoValue case 1 JoSelect 0 break case 2 JoSelect 1 break case 3 金陵科技学院学士学位论文 第六章 上位机的软件设计 27 JoSelect 2 break 选择数据位长度 Get

温馨提示

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

评论

0/150

提交评论